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, '');}