/* 　 */

// the official steam time is the "pacific time"

function skin_clock_getCurrentTimezone() {
	// get current timezone
	var local = new Date();
	var utc = new Date(Date.UTC(local.getFullYear(), local.getMonth(), local.getDate(), local.getHours(), local.getMinutes(), local.getSeconds(), local.getMilliseconds()));
	return (utc.getTime() - local.getTime());
}
function skin_clock_formatNum(num, keta) {
	var src = new String(num);
	var cnt = keta - src.length;
	if (cnt <= 0) return src;
	while (cnt-- > 0) src = '0' + src; return src;
}
function skin_clock_dateToString(obj) {
	if (!obj) { return ''; }
	var ret = '';
	return skin_clock_formatNum(obj.getFullYear(), 4) + '-' + 
			skin_clock_formatNum(obj.getMonth() + 1, 2) + '-' + 
			skin_clock_formatNum(obj.getDate(), 2) + ' ' + 
			skin_clock_formatNum(obj.getHours(), 2) + ':' + 
			skin_clock_formatNum(obj.getMinutes(), 2) + ':' + 
			skin_clock_formatNum(obj.getSeconds(), 2);
}
function skin_clock_update() {
	var utc_time = new Date(new Date().getTime() - skin_clock['td_current']).getTime();
	var jst = new Date(utc_time + skin_clock['td_jst']);
	var pt = new Date(utc_time + skin_clock['td_pt']);

	skin_clock['target_div'].innerHTML = '日本標準時: <span>' + skin_clock_dateToString(jst) + ' JST</span><br />' + 'Steam 公式時刻: <span>' + skin_clock_dateToString(pt) + ' ' + skin_clock['td_pt_str'] + '</span>';
}

addDOMReadyFunc(function() {
	skin_clock['td_current'] = skin_clock_getCurrentTimezone();
	if (skin_clock['td_pt'] == -25200000) skin_clock['td_pt_str'] = 'PDT';
	else skin_clock['td_pt_str'] = 'PST';
	skin_clock['target_div'] = document.getElementById('skin-clock');
	if (skin_clock['target_div']) {
		skin_clock_update();
		window.setInterval('skin_clock_update()', 950);
	}
});

