User:Gary/functions.js

function addClass(element, className) {	classes = element.className.split(' '); classes.push(className); classes = classes.join(' '); element.className = classes; }

function capitalize(string) {	return string.charAt(0).toUpperCase + string.slice(1); }

function convertTimestampToDate(timestamp) {	var matches = timestamp.match(/(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})Z/); var origToday = new Date; today = new Date(origToday.getFullYear, origToday.getMonth, origToday.getDate); var origThen = new Date; origThen.setUTCFullYear(matches[1]); origThen.setUTCMonth(matches[2] - 1); origThen.setUTCDate(matches[3]); origThen.setUTCHours(matches[4]); origThen.setUTCMinutes(matches[5]); origThen.setUTCSeconds(matches[6]); return origThen; }

function convertToKB(bytes) {	return (bytes / 1024).toFixed(0) + ' kB'; }

function convertToOrdinal(number) {	mod = number % 10; switch (mod) {		case 1: ordinal = 'st'; break; case 2: ordinal = 'nd'; break; case 3: ordinal = 'rd'; break; case 0: default: ordinal = 'th'; }	return number + ordinal; }

function formatJSON(obj) {	if (!obj['query'] || !obj['query']['pages']) return false; var vars = []; vars['pages'] = obj['query']['pages']; vars['page'] = []; for (var i in vars['pages']) vars['page'].push(i); if (vars['page'].length != 1) return false; vars['page'] = obj['query']['pages'][vars['page'][0]]; vars['pageName'] = vars['page']['title'].replace(/ /g, '_'); if (vars['page']['revisions']) {		vars['firstRevision'] = vars['page']['revisions'][0]; vars['revisions'] = vars['page']['revisions']; }	return vars; }

function hasClass(element, className) {	if (!element || !element.className) return false; var classes = element.className.split(' '); for (var i = 0; i < classes.length; i++) {		if (classes[i] == className) return true; }	return false; }

function isUnsafe {	if (typeof(unsafeWindow) != 'undefined') return true; else return false; }

function pluralize(word, count, plural) {	if (plural == null) plural = word + 's';

return (count == 1 ? word : plural); }

function trim(stringToTrim) {	return stringToTrim.replace(/^\s+|\s+$/g, ''); }