OSDN Git Service

管理画面の日付検索をjavascrptのカレンダーで
[elecoma/elecoma.git] / public / javascripts / calendar / lang_ja.js
1 (function() {\r
2    ProtoCalendar.LangFile['ja'] = {\r
3      HOUR_MINUTE_ERROR: '時間が無効です。',\r
4      NO_DATE_ERROR: '日を選択して下さい。',\r
5      OK_LABEL: 'OK',\r
6      DEFAULT_FORMAT: 'yyyy/mm/dd',\r
7      LABEL_FORMAT: 'yyyy年mm月dd日 ddddi',\r
8      MONTH_ABBRS: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],\r
9      WEEKDAY_ABBRS: ['日','月','火','水','木','金','土'],\r
10      WEEKDAY_NAMES: ['日曜日','月曜日','火曜日','水曜日','木曜日','金曜日','土曜日'],\r
11      YEAR_LABEL: '年',\r
12      MONTH_LABEL: '月',\r
13      YEAR_AND_MONTH: true,\r
14      today: '今日',\r
15      tomorrow: '明日',\r
16      yesterday: '昨日',\r
17 \r
18      parseDate: function(inputValue) {\r
19        if (inputValue == '一昨日') {\r
20          var d = new Date();\r
21          d.setDate(d.getDate() - 2);\r
22          return d;\r
23        } else if (inputValue == '明後日') {\r
24          var d = new Date();\r
25          d.setDate(d.getDate() + 2);\r
26          return d;\r
27        }\r
28      },\r
29 \r
30      getHolidays:   function(calendar) {\r
31        var year = calendar.getYear();\r
32        var month = calendar.getMonth();\r
33        var lastDay = calendar.getNumDayOfMonth();\r
34 \r
35        var temp;\r
36        if (year < 2000) {\r
37          temp = 2213;\r
38        } else {\r
39          temp = 2089;\r
40        }\r
41        var springDay = Math.floor((31 * year + temp)/128) - Math.floor(year/4) + Math.floor(year/100);\r
42 \r
43        if (year < 2000) {\r
44          temp = 2525;\r
45        } else {\r
46          temp = 2395;\r
47        }\r
48        var autumnDay =  Math.floor((31 * year + temp)/128) - Math.floor(year/4) + Math.floor(year/100);\r
49 \r
50        var holidays = [];\r
51        var mondayIndex = 0;\r
52        for(var day = 1; day <= lastDay; day++) {\r
53          var dayOfWeek = new Date(year, month, day).getDay();\r
54          holidays[day] = 0;\r
55 \r
56          if (dayOfWeek == ProtoCalendar.MONDAY) {\r
57            ++mondayIndex;\r
58          }\r
59         \r
60          /*祝日は削除するためにコメントアウト Edit by ymatsumoto\r
61          if (day == 1 && month == ProtoCalendar.JAN && 1949 <= year) {\r
62            holidays[day] = '元旦';\r
63          } else if (day == 15 && month == ProtoCalendar.JAN && 1949 <= year && year < 2000) {\r
64            holidays[day] = '成人の日';\r
65          } else if (dayOfWeek == ProtoCalendar.MONDAY && mondayIndex == 2 && month == 0 && 2000 <= year) {\r
66            holidays[day] = '成人の日';\r
67          } else if (day == 11 && month == ProtoCalendar.FEB && 1967 <= year) {\r
68            holidays[day] = '建国記念の日';\r
69          } else if (day == springDay && month == ProtoCalendar.MAR) {\r
70            holidays[day] = '春分の日';\r
71          } else if (day == 29 && month == ProtoCalendar.APR && 1989 <= year && year < 2007) {\r
72            holidays[day] = 'みどりの日';\r
73          } else if (day == 29 && month == ProtoCalendar.APR && 1949 <= year && year < 1989) {\r
74            holidays[day] = '天皇誕生日';\r
75          } else if (day == 4 && month == ProtoCalendar.MAY && 2007 <= year) {\r
76            holidays[day] = 'みどりの日';\r
77          } else if (day == 29 && month == ProtoCalendar.APR && 2007 <= year){\r
78            holidays[day] = '昭和の日';\r
79          } else if (day == 3 && month == ProtoCalendar.MAY && 1949 <= year) {\r
80            holidays[day] = '憲法記念日';\r
81          } else if (day == 4 && month == ProtoCalendar.MAY && 1986 <= year && year < 2007) {\r
82            holidays[day] = '国民の休日';\r
83          } else if (day == 5 && month == ProtoCalendar.MAY && 1949 <= year) {\r
84            holidays[day] = 'こどもの日';\r
85          } else if (day == 20 && month == ProtoCalendar.JULY && 1996 <= year && year < 2003) {\r
86            holidays[day] = '海の日';\r
87          } else if (mondayIndex == 3 && month == ProtoCalendar.JULY && dayOfWeek == ProtoCalendar.MONDAY && 2003 <= year) {\r
88            holidays[day] = '海の日';\r
89          } else if (day == 15 && month == ProtoCalendar.SEPT && 1966 <= year && year < 2003) {\r
90            holidays[day] = '敬老の日';\r
91          } else if (mondayIndex == 3 && month == ProtoCalendar.SEPT && dayOfWeek == ProtoCalendar.MONDAY && 2003 <= year) {\r
92            holidays[day] = '敬老の日';\r
93          } else if (autumnDay == day && month == ProtoCalendar.SEPT) {\r
94            holidays[day] = '秋分の日';\r
95          } else if (day == 10 && month == ProtoCalendar.OCT && 1966 <= year && year < 2001) {\r
96            holidays[day] = '体育の日';\r
97          } else if (mondayIndex == 2 && month == ProtoCalendar.OCT && dayOfWeek == ProtoCalendar.MONDAY && 2000 <= year) {\r
98            holidays[day] = '体育の日';\r
99          } else if (day == 3 && month == ProtoCalendar.NOV && 1948 <= year) {\r
100            holidays[day] = '文化の日';\r
101          } else if (day == 23 && month == ProtoCalendar.NOV && 1948 <= year) {\r
102            holidays[day] = '勤労感謝の日';\r
103          } else if (day == 23 && month == ProtoCalendar.DEC && 1989 <= year) {\r
104            holidays[day] = '天皇誕生日';\r
105          }\r
106        }\r
107        var hasHoliday = year > 1973 || year == 1973 && month > ProtoCalendar.APR;\r
108        var hasKokuminHoliday = year >= 1988;\r
109        var oldRule = hasHoliday && year < 2006;\r
110        var curRule = hasHoliday && year >= 2006;\r
111        for(var day = 1; day <= lastDay; day++) {\r
112          var dayOfWeek = new Date(year, month, day).getDay();\r
113          if (hasHoliday) {\r
114            if (dayOfWeek == ProtoCalendar.SUNDAY && holidays[day]) {\r
115              var next = day + 1;\r
116              if (oldRule) {\r
117                 if (holidays[next]) continue;\r
118              } else if (curRule) {\r
119                for (; holidays[next]; next += 1) { }\r
120              }\r
121              holidays[next] = '振替休日';\r
122            \r
123            } else if (hasKokuminHoliday && holidays[day - 1] && holidays[day + 1] && !holidays[day]) {\r
124              holidays[day] = '国民の休日';\r
125            }\r
126           }*/\r
127        }\r
128        calendar.holidays = holidays;\r
129      }\r
130    };\r
131 \r
132  })();\r