summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorczaks <marcin@6irc.net>2014-02-23 17:58:16 +0100
committerczaks <marcin@6irc.net>2014-02-23 17:58:16 +0100
commit63b9c4db5ffb7a493b5b081ef634d8b4f3a7b5ca (patch)
treed7a0edd2b801764016763d734971e798da3117ce
parent2a546e5b2d1b293bc4d53d510a35d8751aa7607d (diff)
local-time.js now supports custom time formats. idea by copypaste
-rw-r--r--js/local-time.js29
-rw-r--r--templates/main.js6
2 files changed, 27 insertions, 8 deletions
diff --git a/js/local-time.js b/js/local-time.js
index c4eecfd9..e6b3495d 100644
--- a/js/local-time.js
+++ b/js/local-time.js
@@ -8,6 +8,7 @@
*
* Usage:
* // $config['additional_javascript'][] = 'js/jquery.min.js';
+ * // $config['additional_javascript'][] = 'js/strftime.min.js';
* $config['additional_javascript'][] = 'js/local-time.js';
*
*/
@@ -24,6 +25,27 @@ onready(function(){
return [Math.pow(10, count - num.toString().length), num].join('').substr(1);
};
+ var datelocale =
+ { days: [_('Sunday'), _('Monday'), _('Tuesday'), _('Wednesday'), _('Thursday'), _('Friday'), _('Saturday')]
+ , shortDays: [_("Sun"), _("Mon"), _("Tue"), _("Wed"), _("Thu"), _("Fri"), _("Sat")]
+ , months: [_('January'), _('February'), _('March'), _('April'), _('May'), _('June'), _('July'), _('August'), _('September'), _('October'), _('November'), _('December')]
+ , shortMonths: [_('Jan'), _('Feb'), _('Mar'), _('Apr'), _('May'), _('Jun'), _('Jul'), _('Aug'), _('Sep'), _('Oct'), _('Nov'), _('Dec')]
+ , AM: _('AM')
+ , PM: _('PM')
+ , am: _('am')
+ , pm: _('pm')
+ };
+ var dateformat = (typeof strftime === 'undefined') ? function(t) {
+ return zeropad(t.getMonth() + 1, 2) + "/" + zeropad(t.getDate(), 2) + "/" + t.getFullYear().toString().substring(2) +
+ " (" + [_("Sun"), _("Mon"), _("Tue"), _("Wed"), _("Thu"), _("Fri"), _("Sat"), _("Sun")][t.getDay()] + ") " +
+ // time
+ zeropad(t.getHours(), 2) + ":" + zeropad(t.getMinutes(), 2) + ":" + zeropad(t.getSeconds(), 2);
+
+ } : function(t) {
+ // post_date is defined in templates/main.js
+ return strftime(window.post_date, t, datelocale);
+ };
+
var do_localtime = function(elem) {
var times = elem.getElementsByTagName('time');
@@ -35,12 +57,7 @@ onready(function(){
times[i].setAttribute('data-local', 'true');
- times[i].innerHTML =
- // date
- zeropad(t.getMonth() + 1, 2) + "/" + zeropad(t.getDate(), 2) + "/" + t.getFullYear().toString().substring(2) +
- " (" + [_("Sun"), _("Mon"), _("Tue"), _("Wed"), _("Thu"), _("Fri"), _("Sat"), _("Sun")][t.getDay()] + ") " +
- // time
- zeropad(t.getHours(), 2) + ":" + zeropad(t.getMinutes(), 2) + ":" + zeropad(t.getSeconds(), 2);
+ times[i].innerHTML = dateformat(t);
};
};
diff --git a/templates/main.js b/templates/main.js
index 54018e37..7796565c 100644
--- a/templates/main.js
+++ b/templates/main.js
@@ -288,10 +288,12 @@ function ready() {
}
}
-onready(init);
-
{% endraw %}
+var post_date = "{{ config.post_date }}";
+
+onready(init);
+
{% if config.google_analytics %}{% raw %}
var _gaq = _gaq || [];_gaq.push(['_setAccount', '{% endraw %}{{ config.google_analytics }}{% raw %}']);{% endraw %}{% if config.google_analytics_domain %}{% raw %}_gaq.push(['_setDomainName', '{% endraw %}{{ config.google_analytics_domain }}{% raw %}']){% endraw %}{% endif %}{% if not config.google_analytics_domain %}{% raw %}_gaq.push(['_setDomainName', 'none']){% endraw %}{% endif %}{% raw %};_gaq.push(['_trackPageview']);(function() {var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;ga.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'stats.g.doubleclick.net/dc.js';var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);})();{% endraw %}{% endif %}