Skip to content

Instantly share code, notes, and snippets.

@Alfreddd
Created October 17, 2013 10:33
Show Gist options
  • Save Alfreddd/7022662 to your computer and use it in GitHub Desktop.
Save Alfreddd/7022662 to your computer and use it in GitHub Desktop.
detect client timezone
//********* Timezone calculation
var localTimezone = function(){
var timezone = ""
var d = new Date;
var offset = d.getTimezoneOffset()
timezone = (offset > 0) ? "-" : "+"
offset = offset / 60 * (-100)
var paddedOffset = pad(""+offset,4,'0');
return timezone + paddedOffset
}
var strRepeat = function(str, qty){
if (qty < 1) return '';
var result = '';
while (qty > 0) {
if (qty & 1) result += str;
qty >>= 1, str += str;
}
return result;
};
var pad = function(str, length, padStr, type) {
str = str == null ? '' : String(str);
length = ~~length;
var padlen = 0;
if (!padStr)
padStr = ' ';
else if (padStr.length > 1)
padStr = padStr.charAt(0);
switch(type) {
case 'right':
padlen = length - str.length;
return str + strRepeat(padStr, padlen);
case 'both':
padlen = length - str.length;
return strRepeat(padStr, Math.ceil(padlen/2)) + str
+ strRepeat(padStr, Math.floor(padlen/2));
default: // 'left'
padlen = length - str.length;
return strRepeat(padStr, padlen) + str;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment