Utente:MauroBot/BotCancellazioni/dateFunctions.js/sandbox.js
Questa pagina definisce alcuni parametri di aspetto e comportamento generale di tutte le pagine. Per personalizzarli vedi Aiuto:Stile utente.
Nota: dopo aver salvato è necessario pulire la cache del proprio browser per vedere i cambiamenti (per le pagine globali è comunque necessario attendere qualche minuto). Per Mozilla / Firefox / Safari: fare clic su Ricarica tenendo premuto il tasto delle maiuscole, oppure premere Ctrl-F5 o Ctrl-R (Command-R su Mac); per Chrome: premere Ctrl-Shift-R (Command-Shift-R su un Mac); per Konqueror: premere il pulsante Ricarica o il tasto F5; per Opera può essere necessario svuotare completamente la cache dal menù Strumenti → Preferenze; per Internet Explorer: mantenere premuto il tasto Ctrl mentre si preme il pulsante Aggiorna o premere Ctrl-F5.
'use strict';
var DelBot = DelBot || {};
/**
* Convert a month name to a month number (0-11)
*
* @param monthName {string} e.g. 'gennaio'
* @return {int} e.g. 0
*/
DelBot.monthName2MonthNumber = function ( monthName ) {
switch( monthName ) {
case 'gennaio': return 0;
case 'febbraio': return 1;
case 'marzo': return 2;
case 'aprile': return 3;
case 'maggio': return 4;
case 'giugno': return 5;
case 'luglio': return 6;
case 'agosto': return 7;
case 'settembre': return 8;
case 'ottobre': return 9;
case 'novembre': return 10;
case 'dicembre': return 11;
}
throw 'unexpected month name';
};
/**
* Convert a month number (0-11) to a month name
*
* @param monthNumber {int} e.g. 0
* @return {string} e.g. 'gennaio'
*/
DelBot.monthNumber2MonthName = function ( monthNumber ) {
switch( monthNumber ) {
case 0: return 'gennaio';
case 1: return 'febbraio';
case 2: return 'marzo';
case 3: return 'aprile';
case 4: return 'maggio';
case 5: return 'giugno';
case 6: return 'luglio';
case 7: return 'agosto';
case 8: return 'settembre';
case 9: return 'ottobre';
case 10: return 'novembre';
case 11: return 'dicembre';
}
throw 'unexpected month number';
};
/**
* Convert a category name to a Date object
*
* @param date {string} e.g. '4 aprile 2013'
* @return {Date}
*/
DelBot.categoryName2Date = function ( categoryName ) {
var parts = categoryName.split( ' ' );
if( 3 !== parts.length ) {
throw 'unexpected category name';
}
var d = parseInt( parts[ 0 ] ),
m = DelBot.monthName2MonthNumber( parts[ 1 ] ),
y = parseInt( parts[ 2 ] );
return new Date( y, m, d );
};
/**
* Convert a Date object to a category name
*
* @param date {Date}
* @return {string} e.g. '4 aprile 2013'
*/
DelBot.date2CategoryName = function ( date ) {
return date.getDate() + ' ' + this.monthNumber2MonthName( date.getMonth() ) + ' ' + date.getFullYear();
};
/**
*
* Convert a Date object to a log formatted date
*
* It's used in the log and in the count tables
*
* @param date {Date}
* @return {string} e.g. '2013 aprile 4'
*/
DelBot.date2LogFormat = function ( date ) {
return date.getFullYear() + ' ' + this.monthNumber2MonthName( date.getMonth() ) + ' ' + date.getDate();
};
/**
* Convert a timestamp to a Date object
*
* @param timestamp {string} Unix timestamp e.g. '20131224112565'
* @return {Date}
*/
DelBot.timestamp2Date = function ( timestamp ) {
var y = parseInt( timestamp.substr( 0, 4 ) ),
m = parseInt( timestamp.substr( 4, 2 ) ),
d = parseInt( timestamp.substr( 6, 2 ) ),
h = parseInt( timestamp.substr( 8, 2 ) ),
i = parseInt( timestamp.substr( 10, 2 ) ),
s = parseInt( timestamp.substr( 12, 2 ) );
return new Date( y, m, d, h, i, s );
};