momentJS 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,120 @@
1
+ (function($) {
2
+ $.moment = $.moment || {}
3
+ $.moment = {
4
+ options: {}
5
+ }
6
+ $.fn.moment = function(lang) {
7
+ var $this = $(this),
8
+ options = $.extend({}, $.moment.options, { lang:lang });
9
+ if(!$this.data('moment')) {
10
+ $this.data('moment', new Moment($(this), options));
11
+ }
12
+ return $this.data('moment');
13
+ }
14
+ function Moment($div, options) {
15
+ var $selector;
16
+ this.find = function($div, selector) {
17
+ $selector = $div.find(selector);
18
+ return this;
19
+ }
20
+ this.format = function() {
21
+ if($selector) {
22
+ var self = this;
23
+ this._each(function() {
24
+ var $this = $(this),
25
+ $tag = $this.children(':first'),
26
+ is_update = false;
27
+ dates = $this.html().split('<')[0].split(' — ');
28
+ if(dates.length == 1) {
29
+ dates = self.calendar(dates[0]);
30
+ if(dates) {
31
+ $this.html(dates);
32
+ is_update = true;
33
+ }
34
+ } else {
35
+ var period;
36
+ is_update = true;
37
+ dates[0] = moment(dates[0]);
38
+ dates[1] = moment(dates[1]);
39
+ period = " (" + dates[0].from(dates[1], true) + ")";
40
+ dates[0] = dates[0].format('ll');
41
+ dates[1] = dates[1].format('ll');
42
+ if(dates[0] == dates[1]) {
43
+ $this.html(dates[0] + period);
44
+ } else {
45
+ $this.html(dates[0] + "~ " + dates[1] + period);
46
+ }
47
+ }
48
+ if(is_update && $tag.size()) {
49
+ $this.append($tag);
50
+ }
51
+ });
52
+ }
53
+ }
54
+ this.calendar = function(data) {
55
+ if($selector) {
56
+ this._each(this.calendar);
57
+ } else {
58
+ var oTime;
59
+ switch(typeof data) {
60
+ case "string": oTime = moment(data); break;
61
+ case "object": oTime = moment(data.html()); break;
62
+ case "number": oTime = moment($(this).html()); break;
63
+ }
64
+ if(oTime && oTime.isValid()) {
65
+ switch(typeof data) {
66
+ case "string": return oTime.calendar();
67
+ case "object": data.html(oTime.calendar()); return true;
68
+ case "number": $(this).html(oTime.calendar()); return true;
69
+ }
70
+ }
71
+ }
72
+ }
73
+ this.month = function(data) {
74
+ if($selector) {
75
+ this._each(this.month);
76
+ } else {
77
+ var oTime;
78
+ switch(typeof data) {
79
+ case "string": oTime = moment(data); break;
80
+ case "object": oTime = moment(data.html()); break;
81
+ case "number": oTime = moment($(this).html()); break;
82
+ }
83
+ if(oTime && oTime.isValid()) {
84
+ switch(typeof data) {
85
+ case "string": return oTime.format('MMM');
86
+ case "object": data.html(oTime.format('MMM')); return true;
87
+ case "number": $(this).html(oTime.format('MMM')); return true;
88
+ }
89
+ }
90
+ }
91
+ }
92
+ this.timeago = function(data) {
93
+ if($selector) {
94
+ this._each(this.timeago);
95
+ } else {
96
+ var oTime;
97
+ switch(typeof data) {
98
+ case "string": oTime = moment(data); break;
99
+ case "object": oTime = moment(data.html()); break;
100
+ case "number": oTime = moment($(this).html()); break;
101
+ }
102
+ if(oTime && oTime.isValid()) {
103
+ switch(typeof data) {
104
+ case "string": return oTime.fromNow();
105
+ case "object": data.html(oTime.fromNow()); return true;
106
+ case "number": $(this).html(oTime.fromNow()); return true;
107
+ }
108
+ }
109
+ }
110
+ }
111
+ this._each = function(func) {
112
+ var list = $selector;
113
+ $selector = null;
114
+ list.each(func);
115
+ }
116
+ if(options.lang) {
117
+ moment.lang(options.lang);
118
+ }
119
+ }
120
+ }(jQuery));
@@ -0,0 +1,85 @@
1
+ !function(){
2
+ function e(moment) {
3
+ moment.lang( "cn", {
4
+ months: "一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),
5
+ monthsShort: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),
6
+ weekdays: "星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),
7
+ weekdaysShort: "周日_周一_周二_周三_周四_周五_周六".split("_"),
8
+ weekdaysMin: "日_一_二_三_四_五_六月".split("_"),
9
+ longDateFormat:{
10
+ LT: "Ah:mm",
11
+ L: "YYYY年MMMD日",
12
+ LL: "YYYY年MMMD日",
13
+ LLL: "YYYY年MMMD日 LT",
14
+ LLLL: "YYYY年MMMD日 LT",
15
+ l: "YYYY年MMMD日",
16
+ ll: "YYYY年MMMD日",
17
+ lll: "YYYY年MMMD日 LT",
18
+ llll: "YYYY年MMMD日 LT (dddd)"
19
+ },
20
+ meridiem: function(hour, minute) {
21
+ if (hour < 1 && minute < 30) {
22
+ return "深夜";
23
+ } else if (hour < 4 && minute < 30) {
24
+ return "淩晨";
25
+ } else if (hour < 6) {
26
+ return "清晨";
27
+ } else if (hour < 9) {
28
+ return "早上";
29
+ } else if (hour < 11) {
30
+ return "上午"
31
+ } else if (hour < 13) {
32
+ return "中午";
33
+ } else if (hour < 16 && minute < 30) {
34
+ return "下午";
35
+ } else if (hour < 19) {
36
+ return "黄昏";
37
+ } else if (hour < 23) {
38
+ return "晚上";
39
+ } else {
40
+ return "深夜";
41
+ }
42
+ },
43
+ calendar: {
44
+ sameDay: "[今天] LT",
45
+ nextDay: "[明天] LT",
46
+ nextWeek: "[下]dddd LT",
47
+ lastDay: "[昨天] LT",
48
+ lastWeek: "[上]dddd LT",
49
+ sameElse: "L"
50
+ },
51
+ ordinal: function(num, token){
52
+ switch(token){
53
+ case"d":
54
+ case"D":
55
+ case"DDD":
56
+ return num + "日";
57
+ case"M":
58
+ return num + "月";
59
+ case"w":
60
+ case"W":
61
+ return num + "周";
62
+ default:
63
+ return num;
64
+ }
65
+ },
66
+ relativeTime: {
67
+ future: "%s内",
68
+ past: "%s前",
69
+ s: "几秒",
70
+ m: "1分钟",
71
+ mm: "%d分钟",
72
+ h: "1小时",
73
+ hh: "%d小时",
74
+ d: "1天",
75
+ dd: "%d天",
76
+ M: "1个月",
77
+ MM: "%d个月",
78
+ y: "1年",
79
+ yy: "%d年"
80
+ }
81
+ })
82
+ }
83
+ "function"==typeof define&&define.amd&&define(["moment"],e),
84
+ "undefined"!=typeof window&&window.moment&&e(window.moment)
85
+ }();
@@ -0,0 +1,85 @@
1
+ !function(){
2
+ function e(moment) {
3
+ moment.lang( "hk", {
4
+ months: "一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),
5
+ monthsShort: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),
6
+ weekdays: "禮拜日_禮拜一_禮拜二_禮拜三_禮拜四_禮拜五_禮拜六".split("_"),
7
+ weekdaysShort: "週日_週一_週二_週三_週四_週五_週六".split("_"),
8
+ weekdaysMin: "日_一_二_三_四_五_六月".split("_"),
9
+ longDateFormat:{
10
+ LT: "Ah:mm",
11
+ L: "YYYY年MMMD日",
12
+ LL: "YYYY年MMMD日",
13
+ LLL: "YYYY年MMMD日 LT",
14
+ LLLL: "YYYY年MMMD日 LT",
15
+ l: "YYYY年MMMD日",
16
+ ll: "YYYY年MMMD日",
17
+ lll: "YYYY年MMMD日 LT",
18
+ llll: "YYYY年MMMD日 LT (dddd)"
19
+ },
20
+ meridiem: function(hour, minute) {
21
+ if (hour < 1 && minute < 30) {
22
+ return "深夜";
23
+ } else if (hour < 4 && minute < 30) {
24
+ return "凌晨";
25
+ } else if (hour < 6) {
26
+ return "清晨";
27
+ } else if (hour < 9) {
28
+ return "早上";
29
+ } else if (hour < 11) {
30
+ return "上午"
31
+ } else if (hour < 13) {
32
+ return "中午";
33
+ } else if (hour < 16 && minute < 30) {
34
+ return "下午";
35
+ } else if (hour < 19) {
36
+ return "黄昏";
37
+ } else if (hour < 23) {
38
+ return "晚上";
39
+ } else {
40
+ return "深夜";
41
+ }
42
+ },
43
+ calendar: {
44
+ sameDay: "[今日] LT",
45
+ nextDay: "[聽日] LT",
46
+ nextWeek: "[下個]dddd LT",
47
+ lastDay: "[琴日] LT",
48
+ lastWeek: "[上個]dddd LT",
49
+ sameElse: "L"
50
+ },
51
+ ordinal: function(num, token){
52
+ switch(token){
53
+ case"d":
54
+ case"D":
55
+ case"DDD":
56
+ return num + "日";
57
+ case"M":
58
+ return num + "月";
59
+ case"w":
60
+ case"W":
61
+ return num + "週";
62
+ default:
63
+ return num;
64
+ }
65
+ },
66
+ relativeTime: {
67
+ future: "%s内",
68
+ past: "%s前",
69
+ s: "幾秒",
70
+ m: "1分鐘",
71
+ mm: "%d分鐘",
72
+ h: "1個鐘",
73
+ hh: "%d個鐘",
74
+ d: "1日",
75
+ dd: "%d日",
76
+ M: "1個月",
77
+ MM: "%d個月",
78
+ y: "1年",
79
+ yy: "%d年"
80
+ }
81
+ })
82
+ }
83
+ "function"==typeof define&&define.amd&&define(["moment"],e),
84
+ "undefined"!=typeof window&&window.moment&&e(window.moment)
85
+ }();
@@ -0,0 +1,85 @@
1
+ !function(){
2
+ function e(moment) {
3
+ moment.lang( "tw", {
4
+ months: "一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),
5
+ monthsShort: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),
6
+ weekdays: "星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),
7
+ weekdaysShort: "週日_週一_週二_週三_週四_週五_週六".split("_"),
8
+ weekdaysMin: "日_一_二_三_四_五_六月".split("_"),
9
+ longDateFormat:{
10
+ LT: "Ah:mm",
11
+ L: "YYYY年MMMD日",
12
+ LL: "YYYY年MMMD日",
13
+ LLL: "YYYY年MMMD日 LT",
14
+ LLLL: "YYYY年MMMD日 LT",
15
+ l: "YYYY年MMMD日",
16
+ ll: "YYYY年MMMD日",
17
+ lll: "YYYY年MMMD日 LT",
18
+ llll: "YYYY年MMMD日 LT (dddd)"
19
+ },
20
+ meridiem: function(hour, minute) {
21
+ if (hour < 1 && minute < 30) {
22
+ return "深夜";
23
+ } else if (hour < 4 && minute < 30) {
24
+ return "凌晨";
25
+ } else if (hour < 6) {
26
+ return "清晨";
27
+ } else if (hour < 9) {
28
+ return "早上";
29
+ } else if (hour < 11) {
30
+ return "上午"
31
+ } else if (hour < 13) {
32
+ return "中午";
33
+ } else if (hour < 16 && minute < 30) {
34
+ return "下午";
35
+ } else if (hour < 19) {
36
+ return "黄昏";
37
+ } else if (hour < 23) {
38
+ return "晚上";
39
+ } else {
40
+ return "深夜";
41
+ }
42
+ },
43
+ calendar: {
44
+ sameDay: "[今天] LT",
45
+ nextDay: "[明天] LT",
46
+ nextWeek: "[下]dddd LT",
47
+ lastDay: "[昨天] LT",
48
+ lastWeek: "[上]dddd LT",
49
+ sameElse: "L"
50
+ },
51
+ ordinal: function(num, token){
52
+ switch(token){
53
+ case"d":
54
+ case"D":
55
+ case"DDD":
56
+ return num + "日";
57
+ case"M":
58
+ return num + "月";
59
+ case"w":
60
+ case"W":
61
+ return num + "週";
62
+ default:
63
+ return num;
64
+ }
65
+ },
66
+ relativeTime: {
67
+ future: "%s内",
68
+ past: "%s前",
69
+ s: "幾秒",
70
+ m: "1分鐘",
71
+ mm: "%d分鐘",
72
+ h: "1小時",
73
+ hh: "%d小時",
74
+ d: "1天",
75
+ dd: "%d天",
76
+ M: "1個月",
77
+ MM: "%d個月",
78
+ y: "1年",
79
+ yy: "%d年"
80
+ }
81
+ })
82
+ }
83
+ "function"==typeof define&&define.amd&&define(["moment"],e),
84
+ "undefined"!=typeof window&&window.moment&&e(window.moment)
85
+ }();
metadata ADDED
@@ -0,0 +1,85 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: momentJS
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.1
5
+ platform: ruby
6
+ authors:
7
+ - stillnaughty
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-09-13 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ! '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description: Rails asset gems for momentJS
42
+ email:
43
+ - ying@stillnaughty.com
44
+ executables: []
45
+ extensions: []
46
+ extra_rdoc_files: []
47
+ files:
48
+ - .gitignore
49
+ - Gemfile
50
+ - LICENSE.txt
51
+ - README.md
52
+ - Rakefile
53
+ - lib/momentJS.rb
54
+ - lib/momentJS/engine.rb
55
+ - lib/momentJS/version.rb
56
+ - momentJS.gemspec
57
+ - vendor/assets/javascripts/moment.js
58
+ - vendor/assets/javascripts/moment.plugin.js
59
+ - vendor/assets/javascripts/moment/cn.js
60
+ - vendor/assets/javascripts/moment/hk.js
61
+ - vendor/assets/javascripts/moment/tw.js
62
+ homepage: ''
63
+ licenses: []
64
+ metadata: {}
65
+ post_install_message:
66
+ rdoc_options: []
67
+ require_paths:
68
+ - lib
69
+ required_ruby_version: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - ! '>='
72
+ - !ruby/object:Gem::Version
73
+ version: '0'
74
+ required_rubygems_version: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - ! '>='
77
+ - !ruby/object:Gem::Version
78
+ version: '0'
79
+ requirements: []
80
+ rubyforge_project:
81
+ rubygems_version: 2.1.2
82
+ signing_key:
83
+ specification_version: 4
84
+ summary: Rails asset gems for the customized momentJS based on v2.1.0
85
+ test_files: []