bigtinker 0.97 → 0.98

Sign up to get free protection for your applications and to get access to all the features.
Files changed (184) hide show
  1. data/code/01rwdcore/01rwdcore.rb +6 -6
  2. data/code/01rwdcore/02helptexthashbegin.rb +13 -11
  3. data/code/01rwdcore/jumplinkcommand.rb +14 -4
  4. data/code/01rwdcore/openhelpwindow.rb +7 -0
  5. data/code/01rwdcore/runhelpabout.rb +6 -1
  6. data/code/01rwdcore/runtab.rb +15 -0
  7. data/code/01rwdcore/selectiontab.rb +2 -0
  8. data/code/01rwdcore/setuphelpaboutoptions.rb +2 -0
  9. data/code/01rwdcore/setuptinkerdocuments.rb +1 -0
  10. data/code/01rwdcore/test_cases.rb +100 -51
  11. data/code/01rwdcore/test_harness.rb +8 -1
  12. data/code/01rwdcore/uploadreturns.rb +3 -0
  13. data/code/dd0viewphoto/dd0viewphoto.rb +2 -0
  14. data/code/superant.com.rwdcalendar/gh9calendar.rb +40 -0
  15. data/code/superant.com.rwdcalendar/helptexthashrwdschedule.rb +14 -0
  16. data/code/superant.com.rwdcalendar/openhelpwindowrwdschedule.rb +17 -0
  17. data/code/superant.com.rwdtinkerbackwindow/changelocale.rb +84 -0
  18. data/code/superant.com.rwdtinkerbackwindow/initiateapplets.rb +0 -1
  19. data/code/superant.com.rwdtinkerbackwindow/installgemapplet.rb +2 -0
  20. data/code/superant.com.rwdtinkerbackwindow/listgemzips.rb +2 -0
  21. data/code/superant.com.rwdtinkerbackwindow/listinstalledfiles.rb +3 -1
  22. data/code/superant.com.rwdtinkerbackwindow/listzips.rb +4 -0
  23. data/code/superant.com.rwdtinkerbackwindow/loadconfigurationrecord.rb +3 -1
  24. data/code/superant.com.rwdtinkerbackwindow/openhelpwindowtinkerwin2.rb +3 -1
  25. data/code/superant.com.rwdtinkerbackwindow/showlocaleoptions.rb +9 -0
  26. data/code/superant.com.rwdtinkerbackwindow/viewappletcontents.rb +1 -0
  27. data/code/superant.com.rwdtinkerbackwindow/viewlogfile.rb +8 -5
  28. data/code/superant.com.schedule/0uninstallapplet.rb +24 -0
  29. data/code/superant.com.schedule/archiveevent.rb +14 -0
  30. data/code/superant.com.schedule/archiveicsevent.rb +14 -0
  31. data/code/superant.com.schedule/cleareventscreendisplay.rb +19 -0
  32. data/code/superant.com.schedule/deleteeventrecord.rb +19 -0
  33. data/code/superant.com.schedule/deleteicseventrecord.rb +19 -0
  34. data/code/superant.com.schedule/deleterwdscheduleupdatefiles.rb +20 -0
  35. data/code/superant.com.schedule/downloadrwdschedulefiles.rb +37 -0
  36. data/code/superant.com.schedule/exporticseventrecord.rb +97 -0
  37. data/code/{superant.com.foldeditor → superant.com.schedule}/helptexthashload.rb +2 -2
  38. data/code/superant.com.schedule/listeventdates.rb +19 -0
  39. data/code/superant.com.schedule/listicseventdates.rb +19 -0
  40. data/code/{superant.com.foldeditor → superant.com.schedule}/loadconfigurationrecord.rb +4 -4
  41. data/code/superant.com.schedule/loadconfigurationvariables.rb +14 -0
  42. data/code/superant.com.schedule/loadeventrecord.rb +38 -0
  43. data/code/superant.com.schedule/loadicseventrecord.rb +30 -0
  44. data/code/superant.com.schedule/openhelpwindowrwdschedule.rb +43 -0
  45. data/code/superant.com.schedule/renameeventdata.rb +14 -0
  46. data/code/superant.com.schedule/renameicseventdata.rb +17 -0
  47. data/code/{superant.com.foldeditor/runrwdapplet.rb → superant.com.schedule/returntomain.rb} +3 -3
  48. data/code/superant.com.schedule/runrwdscheduleicsbackwindow.rb +10 -0
  49. data/code/superant.com.schedule/runrwdschedulemenu1.rb +34 -0
  50. data/code/superant.com.schedule/runrwdschedulesyncbackwindow.rb +10 -0
  51. data/code/{superant.com.foldeditor/rwdtinkerversion.rb → superant.com.schedule/rwdversion.rb} +2 -2
  52. data/code/{superant.com.foldeditor → superant.com.schedule}/saveconfigurationrecord.rb +5 -6
  53. data/code/superant.com.schedule/saveeventrecord.rb +25 -0
  54. data/code/superant.com.schedule/saveicseventrecord.rb +98 -0
  55. data/code/superant.com.schedule/syncrwdschedule.rb +30 -0
  56. data/code/superant.com.schedule/test_cases.rb +45 -0
  57. data/code/superant.com.schedule/uploadrwdschedulefiles.rb +30 -0
  58. data/code/superant.com.schedule/viewevent.rb +20 -0
  59. data/code/superant.com.schedule/viewicsevent.rb +20 -0
  60. data/code/superant.com.schedule/viewrwdschedulesconfiguration.rb +21 -0
  61. data/code/zz0applicationend/zz0end.rb +2 -1
  62. data/configuration/bigtinker.dist +5 -2
  63. data/configuration/rwdtinker.dist +3 -3
  64. data/configuration/rwdwschedule.dist +28 -0
  65. data/configuration/tinkerwin2variables.dist +1 -1
  66. data/gui/tinkerbackwindows/superant.com.rwdschedulebackwindow/1appname.rwd +5 -0
  67. data/gui/tinkerbackwindows/superant.com.rwdschedulebackwindow/20downloadftp.rwd +45 -0
  68. data/gui/tinkerbackwindows/superant.com.rwdschedulebackwindow/67viewconfiguration.rwd +29 -0
  69. data/gui/tinkerbackwindows/superant.com.rwdschedulebackwindow/70rwddiagnostics.rwd +16 -0
  70. data/gui/tinkerbackwindows/superant.com.rwdschedulebackwindow/m01menubegin.rwd +18 -0
  71. data/gui/tinkerbackwindows/{superant.com.foldeditor/9end.rwd → superant.com.rwdschedulebackwindow/zvbackend.rwd} +6 -6
  72. data/gui/tinkerbackwindows/superant.com.rwdschedules/1appname.rwd +5 -0
  73. data/gui/tinkerbackwindows/superant.com.rwdschedules/gg0viewevent.rwd +27 -0
  74. data/gui/tinkerbackwindows/superant.com.rwdschedules/gl6editrecord.rwd +56 -0
  75. data/gui/tinkerbackwindows/superant.com.rwdschedules/gl8contactutilities.rwd +25 -0
  76. data/gui/tinkerbackwindows/superant.com.rwdschedules/hl9calendar.rwd +27 -0
  77. data/gui/tinkerbackwindows/superant.com.rwdschedules/m01menubegin.rwd +18 -0
  78. data/gui/tinkerbackwindows/{superant.com.slideshow/9end.rwd → superant.com.rwdschedules/zvbackend.rwd} +6 -6
  79. data/gui/tinkerbackwindows/superant.com.rwdschedulesback/1appname.rwd +5 -0
  80. data/gui/tinkerbackwindows/superant.com.rwdschedulesback/30viewevent.rwd +27 -0
  81. data/gui/tinkerbackwindows/superant.com.rwdschedulesback/40editrecord.rwd +49 -0
  82. data/gui/tinkerbackwindows/superant.com.rwdschedulesback/60eventicsutilities.rwd +25 -0
  83. data/gui/tinkerbackwindows/superant.com.rwdschedulesback/m01menubegin.rwd +18 -0
  84. data/gui/tinkerbackwindows/superant.com.rwdschedulesback/zvbackend.rwd +6 -0
  85. data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/70rwddiagnostics.rwd +1 -1
  86. data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/80localechanger.rwd +17 -0
  87. data/init.rb +7 -1
  88. data/installed/rwdscheduledate2.inf +6 -0
  89. data/installed/rwdwschedule.inf +20 -0
  90. data/lang/en/rwdcalendar/en.po +32 -0
  91. data/lang/en/rwdcore/en.po +31 -0
  92. data/lang/es/rwdcalendar/es.po +10 -0
  93. data/lang/es/rwdcore/es.po +27 -15
  94. data/lang/fr/rwdcalendar/fr.po +11 -0
  95. data/lang/fr/rwdcore/fr.po +4 -1
  96. data/lang/hi/rwdcalendar/hi.po +11 -0
  97. data/lang/hi/rwdcore/hi.po +39 -36
  98. data/lang/ja/rwdcalendar/ja.po +11 -0
  99. data/lang/ja/rwdcore/ja.po +3 -0
  100. data/lang/nl/rwdcalendar/nl.po +12 -0
  101. data/lang/nl/rwdcore/nl.po +4 -1
  102. data/lib/cal.rb +158 -0
  103. data/lib/icalendar.rb +18 -0
  104. data/lib/icalendar/base.rb +17 -0
  105. data/lib/icalendar/calendar.rb +44 -0
  106. data/lib/icalendar/calendar_parser.rb +237 -0
  107. data/lib/icalendar/component.rb +91 -0
  108. data/lib/icalendar/component/alarm.rb +16 -0
  109. data/lib/icalendar/component/event.rb +25 -0
  110. data/lib/icalendar/component/freebusy.rb +12 -0
  111. data/lib/icalendar/component/journal.rb +25 -0
  112. data/lib/icalendar/component/timezone.rb +26 -0
  113. data/lib/icalendar/component/todo.rb +21 -0
  114. data/lib/icalendar/helpers.rb +103 -0
  115. data/lib/icalendar/parameter.rb +25 -0
  116. data/lib/zip/ioextras.rb +43 -2
  117. data/lib/zip/stdrubyext.rb +5 -5
  118. data/lib/zip/tempfile_bugfixed.rb +2 -2
  119. data/lib/zip/zip.rb +618 -149
  120. data/lib/zip/zipfilesystem.rb +59 -8
  121. data/lib/zip/ziprequire.rb +32 -3
  122. data/rwd_files/HowTo_BigTinker.txt +15 -3
  123. data/rwd_files/HowTo_Schedule.txt +265 -0
  124. data/rwd_files/HowTo_Tinker.txt +14 -0
  125. data/rwd_files/Tinkerhelptexthash.txt +5 -2
  126. data/rwd_files/rwdapplications.html +23 -1
  127. data/rwd_files/rwdschedulehelpfiles.txt +19 -0
  128. data/rwd_files/schedules/20050120T09.ics +9 -0
  129. data/rwd_files/schedules/200505may02a.sch +4 -0
  130. data/rwd_files/schedules/Enterprise.ics +411 -0
  131. data/rwd_files/schedules/US Holidays.ics +575 -0
  132. data/rwd_files/schedules/archive/sample.archive +1 -0
  133. data/rwd_files/schedules/testics05.ics +11 -0
  134. data/rwdconfig.dist +4 -2
  135. data/{bigtinker.rb → rwdtinker.rb} +0 -0
  136. data/tests/{makedist-rwdwfoldeditor.rb → makedist-rwdwhypernote.rb} +4 -8
  137. data/tests/makedist.rb +1 -1
  138. data/updates/temp.rb +1 -0
  139. data/zips/rwdwfoldeditor-0.07.zip +0 -0
  140. data/zips/rwdwhypernote-0.16.zip +0 -0
  141. data/zips/rwdwschedule-1.07.zip +0 -0
  142. data/zips/tinkerbellw-0.04.zip +0 -0
  143. metadata +102 -54
  144. data/code/superant.com.foldeditor/0uninstallapplet.rb +0 -17
  145. data/code/superant.com.foldeditor/changehypernotename.rb +0 -21
  146. data/code/superant.com.foldeditor/chooselinkfile.rb +0 -6
  147. data/code/superant.com.foldeditor/choosenotefile.rb +0 -6
  148. data/code/superant.com.foldeditor/clearnotescreen.rb +0 -7
  149. data/code/superant.com.foldeditor/createnewnotehtml.rb +0 -31
  150. data/code/superant.com.foldeditor/hyperlinkcreatelinkfile.rb +0 -19
  151. data/code/superant.com.foldeditor/launchfoldeditorurl.rb +0 -19
  152. data/code/superant.com.foldeditor/listfoldeditorfiles.rb +0 -7
  153. data/code/superant.com.foldeditor/loadconfigurationvariables.rb +0 -14
  154. data/code/superant.com.foldeditor/loadfolddocument.rb +0 -18
  155. data/code/superant.com.foldeditor/loadnextnote.rb +0 -32
  156. data/code/superant.com.foldeditor/loadprevnote.rb +0 -32
  157. data/code/superant.com.foldeditor/loadrwdfoldeditlinkfile.rb +0 -19
  158. data/code/superant.com.foldeditor/openhelpwindowrwdhyernote.rb +0 -30
  159. data/code/superant.com.foldeditor/rwddisplayfoldlinks.rb +0 -41
  160. data/code/superant.com.foldeditor/savefoldlinkfile.rb +0 -20
  161. data/code/superant.com.foldeditor/savehtmlhypernoterecord.rb +0 -20
  162. data/configuration/rwdwfoldeditor.dist +0 -16
  163. data/gui/tinkerbackwindows/superant.com.foldeditor/10appletbegin.rwd +0 -4
  164. data/gui/tinkerbackwindows/superant.com.foldeditor/10aviewnote.rwd +0 -36
  165. data/gui/tinkerbackwindows/superant.com.foldeditor/15htmlview.rwd +0 -43
  166. data/gui/tinkerbackwindows/superant.com.foldeditor/56viewfold.rwd +0 -43
  167. data/gui/tinkerbackwindows/superant.com.foldeditor/67viewconfiguration.rwd +0 -27
  168. data/gui/tinkerbackwindows/superant.com.foldeditor/81jumplinkcommands.rwd +0 -17
  169. data/gui/tinkerbackwindows/superant.com.slideshow/10appletbegin.rwd +0 -4
  170. data/gui/tinkerbackwindows/superant.com.slideshow/11viewnamedata.rwd +0 -19
  171. data/gui/tinkerbackwindows/superant.com.slideshow/13listnamerecordfiles.rwd +0 -21
  172. data/gui/tinkerbackwindows/superant.com.slideshow/16editrecord.rwd +0 -39
  173. data/gui/tinkerbackwindows/superant.com.slideshow/17viewvcardrecord.rwd +0 -32
  174. data/gui/tinkerbackwindows/superant.com.slideshow/18contactutilities.rwd +0 -34
  175. data/gui/tinkerbackwindows/superant.com.slideshow/81jumplinkcommands.rwd +0 -17
  176. data/installed/rwdwfoldeditor.inf +0 -11
  177. data/rwd_files/HowTo_FoldEditor.txt +0 -131
  178. data/rwd_files/default.fld +0 -9
  179. data/rwd_files/rubylinks.fld +0 -6
  180. data/rwd_files/rwdfoldeditorhelpfiles.txt +0 -42
  181. data/rwd_files/rwdhypernote-0.13.fld +0 -202
  182. data/zips/rwdwfoldeditor-0.06.zip +0 -0
  183. data/zips/rwdwschedule-1.05.zip +0 -0
  184. data/zips/tinkerbellw-0.03.zip +0 -0
@@ -0,0 +1,11 @@
1
+ # Lang file for rwdclandar - en
2
+
3
+ msgid "year"
4
+ msgstr ""
5
+
6
+ msgid "month"
7
+ msgstr ""
8
+
9
+ msgid "show_month"
10
+ msgstr ""
11
+
@@ -1,5 +1,8 @@
1
1
  # Language files for RwdTinker core
2
-
2
+
3
+ msgid "error_message_id_unknown"
4
+ msgstr ""
5
+
3
6
  msgid "applet_installed"
4
7
  msgstr ""
5
8
 
@@ -0,0 +1,11 @@
1
+ # Lang file for rwdclandar - en
2
+
3
+ msgid "year"
4
+ msgstr ""
5
+
6
+ msgid "month"
7
+ msgstr ""
8
+
9
+ msgid "show_month"
10
+ msgstr ""
11
+
@@ -1,16 +1,19 @@
1
1
  # Language files for RwdTinker core
2
-
2
+
3
+ msgid "error_message_id_unknown"
4
+ msgstr ""
5
+
3
6
  msgid "applet_installed"
4
7
  msgstr ""
5
8
 
6
9
  msgid "application_version"
7
- msgstr ""
10
+ msgstr "अनुप्रयोग"
8
11
 
9
12
  msgid "cancel"
10
13
  msgstr '"रद्द करें"'
11
14
 
12
15
  msgid "clickfor_version"
13
- msgstr ""
16
+ msgstr "संस्करण"
14
17
 
15
18
  msgid "clickbelowtoviewlistof_zip"
16
19
  msgstr ""
@@ -29,7 +32,7 @@ msgid "file_name"
29
32
  msgstr '"नाम फ़ाइल"'
30
33
 
31
34
  msgid "fill_record"
32
- msgstr ""
35
+ msgstr "भरें"
33
36
 
34
37
  msgid "help"
35
38
  msgstr '"मदद"'
@@ -38,35 +41,35 @@ msgid "file_name"
38
41
  msgstr '"मदद परिचय"'
39
42
 
40
43
  msgid "install_applet"
41
- msgstr ""
44
+ msgstr "प्लग-इन"
42
45
 
43
46
  msgid "jumptoapplication_location"
44
47
  msgstr ""
45
48
 
46
49
  msgid "list_applets"
47
- msgstr ""
50
+ msgstr "सूची प्लग-इन"
48
51
 
49
52
  msgid "listappletsinthegem_directory"
50
- msgstr ""
53
+ msgstr "सूची प्लग-इन"
51
54
 
52
55
  msgid "listappletsavailablefor_installation"
53
- msgstr ""
56
+ msgstr "सूची प्लग-इन"
54
57
 
55
58
  msgid "list_files"
56
- msgstr ""
59
+ msgstr "सूची फ़ाइल"
57
60
 
58
- msgid "list_installed_gems "
59
- msgstr ""
61
+ msgid "list_installed_gems"
62
+ msgstr "सूची"
60
63
 
61
64
  msgid "list_photos"
62
- msgstr ""
65
+ msgstr "सूची तस्वीर"
63
66
 
64
67
  msgid "list_zips"
65
- msgstr ""
68
+ msgstr "सूची"
66
69
 
67
70
  msgid "listzipdirappletsavailable"
68
- msgstr ""
69
-
71
+ msgstr "सूची"
72
+
70
73
  msgid "menu_panel"
71
74
  msgstr ""
72
75
 
@@ -74,25 +77,25 @@ msgid "file_name"
74
77
  msgstr ""
75
78
 
76
79
  msgid "next"
77
- msgstr ""
80
+ msgstr "अग्रेषित कर"
78
81
 
79
82
  msgid "open"
80
- msgstr ""
83
+ msgstr "खोलें"
81
84
 
82
85
  msgid "open_document"
83
- msgstr ""
86
+ msgstr "खोलें दस्तावेज़"
84
87
 
85
88
  msgid "openselectedhelp_about"
86
89
  msgstr ""
87
90
 
88
91
  msgid "reload_variables"
89
- msgstr ""
92
+ msgstr "फिर लोड करें"
90
93
 
91
94
  msgid "remove_applet"
92
95
  msgstr ""
93
96
 
94
97
  msgid "return"
95
- msgstr ""
98
+ msgstr "पीछे"
96
99
 
97
100
  msgid "rwdtinker_window_2"
98
101
  msgstr ""
@@ -110,19 +113,19 @@ msgstr ""
110
113
  msgstr ""
111
114
 
112
115
  msgid "showjump_links"
113
- msgstr ""
116
+ msgstr "प्रदर्शित करें"
114
117
 
115
118
  msgid "showdocument_list"
116
- msgstr ""
119
+ msgstr "प्रदर्शित करें दस्तावेज़ "
117
120
 
118
121
  msgid "showhelpabout_links"
119
- msgstr ""
122
+ msgstr "प्रदर्शित करें मदद परिचय"
120
123
 
121
124
  msgid "save"
122
- msgstr ""
125
+ msgstr "सहेजें"
123
126
 
124
127
  msgid "save_changes"
125
- msgstr ""
128
+ msgstr "सहेजें परिवर्तन"
126
129
 
127
130
  msgid "selection_panel"
128
131
  msgstr ""
@@ -137,34 +140,34 @@ msgid "tinkerback_window"
137
140
  msgstr ""
138
141
 
139
142
  msgid "viewapplet_contents"
140
- msgstr ""
143
+ msgstr "प्रदर्शित करें plugin contents"
141
144
 
142
145
  msgid "viewalreadyinstalled_applications"
143
- msgstr ""
146
+ msgstr "प्रदर्शित करें already installed applications"
144
147
 
145
148
  msgid "viewinstalled_text"
146
- msgstr "View Install Text"
149
+ msgstr "प्रदर्शित करें installed text"
147
150
 
148
151
  msgid "view_platform"
149
- msgstr "view platform"
152
+ msgstr "प्रदर्शित करें platform"
150
153
 
151
154
  msgid "viewplatform_information"
152
- msgstr "View Platform Information"
155
+ msgstr "प्रदर्शित करें platform information"
153
156
 
154
157
  msgid "viewlogger_information"
155
- msgstr ""
158
+ msgstr "प्रदर्शित करें logger information"
156
159
 
157
160
  msgid "view_event"
158
- msgstr ""
161
+ msgstr "प्रदर्शित करें event"
159
162
 
160
163
  msgid "viewinstall_text"
161
- msgstr ""
164
+ msgstr "प्रदर्शित करें install text"
162
165
 
163
166
  msgid "viewlistinstall_files"
164
- msgstr ""
167
+ msgstr "प्रदर्शित करें install files"
165
168
 
166
169
  msgid "view_photo"
167
- msgstr "View Photo"
170
+ msgstr "तस्वीर"
168
171
 
169
172
  msgid "window"
170
- msgstr "Window"
173
+ msgstr "खिड़की"
@@ -0,0 +1,11 @@
1
+ # Lang file for rwdclandar - en
2
+
3
+ msgid "year"
4
+ msgstr ""
5
+
6
+ msgid "month"
7
+ msgstr ""
8
+
9
+ msgid "show_month"
10
+ msgstr ""
11
+
@@ -1,5 +1,8 @@
1
1
  # English Language files for RwdTinker core
2
2
 
3
+ msgid "error_message_id_unknown"
4
+ msgstr ""
5
+
3
6
  msgid "applet_installed"
4
7
  msgstr ""
5
8
 
@@ -0,0 +1,12 @@
1
+ # Lang file for rwdclandar - nl
2
+
3
+ msgid "year"
4
+ msgstr "Jaar:"
5
+
6
+ msgid "month"
7
+ msgstr "Maand:"
8
+
9
+ msgid "show_month"
10
+ msgstr '"Zie Maand"'
11
+
12
+
@@ -1,4 +1,7 @@
1
- # English Language files for RwdTinker core
1
+ # Language files for RwdTinker core
2
+
3
+ msgid "error_message_id_unknown"
4
+ msgstr ""
2
5
 
3
6
  msgid "applet_installed"
4
7
  msgstr "Applet geinstalleerd"
data/lib/cal.rb ADDED
@@ -0,0 +1,158 @@
1
+ #! /usr/bin/env ruby
2
+
3
+ # cal.rb: Written by Tadayoshi Funaba 1998-2004
4
+ # $Id: cal.rb,v 2.8 2004-09-25 12:50:10+09 tadf Exp $
5
+
6
+ require 'date'
7
+
8
+ class Cal
9
+
10
+ START =
11
+ {
12
+ 'cn' => true, # China
13
+ 'de' => 2342032, # Germany (protestant states)
14
+ 'dk' => 2342032, # Denmark
15
+ 'en' => 2361222, # English
16
+ 'es' => 2299161, # Spain
17
+ 'fi' => 2361390, # Finland
18
+ 'fr' => 2299227, # France
19
+ 'gb' => 2361222, # United Kingdom
20
+ 'gr' => 2423868, # Greece
21
+ 'hu' => 2301004, # Hungary
22
+ 'it' => 2299161, # Italy
23
+ 'jp' => true, # Japan
24
+ 'no' => 2342032, # Norway
25
+ 'nl' => 2361222,
26
+ 'pl' => 2299161, # Poland
27
+ 'pt' => 2299161, # Portugal
28
+ 'ru' => 2421639, # Russia
29
+ 'se' => 2361390, # Sweden
30
+ 'us' => 2361222, # United States
31
+ 'os' => false, # (old style)
32
+ 'ns' => true # (new style)
33
+ }
34
+
35
+ DEFAULT_START = 'gb'
36
+
37
+ def initialize
38
+ opt_j; opt_m; opt_t; opt_y; opt_c
39
+ end
40
+
41
+ def opt_j(flag=false) @opt_j = flag end
42
+ def opt_m(flag=false) @opt_m = flag end
43
+ def opt_t(flag=false) @opt_t = flag end
44
+ def opt_y(flag=false) @opt_y = flag end
45
+
46
+ def opt_c(arg=DEFAULT_START) @start = START[arg] end
47
+
48
+ def set_params
49
+ @dw = if @opt_j then 3 else 2 end
50
+ @mw = (@dw + 1) * 7 - 1
51
+ @mn = if @opt_j then 2 else 3 end
52
+ @tw = (@mw + 2) * @mn - 2
53
+ @k = if @opt_m then 1 else 0 end
54
+ @da = if @opt_j then :yday else :mday end
55
+ end
56
+
57
+
58
+
59
+ def nl_pict(y, m)
60
+ d = (1..31).detect{|d| Date.valid_date?(y, m, d, @start)}
61
+ fi = Date.new(y, m, d, @start)
62
+ fi -= (fi.jd - @k + 1) % 7
63
+
64
+ ve = (fi..fi + 6).collect{|cu|
65
+ %w(zo ma di wo do vr za)[cu.wday]
66
+ }
67
+ ve += (fi..fi + 41).collect{|cu|
68
+ if cu.mon == m then cu.send(@da) end.to_s
69
+ }
70
+
71
+ ve = ve.collect{|e| e.rjust(@dw)}
72
+
73
+ gr = group(ve, 7)
74
+ gr = trans(gr) if @opt_t
75
+ ta = gr.collect{|xs| xs.join(' ')}
76
+
77
+ ca = %w(januari februari maart april mei juni juli
78
+ augustus september oktober november december)[m - 1]
79
+ ca = ca + ' ' + y.to_s if not @opt_y
80
+ ca = ca.center(@mw)
81
+
82
+ ta.unshift(ca)
83
+ end
84
+
85
+
86
+ def en_pict(y, m)
87
+ d = (1..31).detect{|d| Date.valid_date?(y, m, d, @start)}
88
+ fi = Date.new(y, m, d, @start)
89
+ fi -= (fi.jd - @k + 1) % 7
90
+
91
+ ve = (fi..fi + 6).collect{|cu|
92
+ %w(Su Mo Tu We Th Fr Sa)[cu.wday]
93
+ }
94
+ ve += (fi..fi + 41).collect{|cu|
95
+ if cu.mon == m then cu.send(@da) end.to_s
96
+ }
97
+
98
+ ve = ve.collect{|e| e.rjust(@dw)}
99
+
100
+ gr = group(ve, 7)
101
+ gr = trans(gr) if @opt_t
102
+ ta = gr.collect{|xs| xs.join(' ')}
103
+
104
+ ca = %w(January February March April May June July
105
+ August September October November December)[m - 1]
106
+ ca = ca + ' ' + y.to_s if not @opt_y
107
+ ca = ca #.center(@mw)
108
+
109
+ ta.unshift(ca)
110
+ end
111
+
112
+ def group(xs, n)
113
+ (0..xs.size / n - 1).collect{|i| xs[i * n, n]}
114
+ end
115
+
116
+ def trans(xs)
117
+ (0..xs[0].size - 1).collect{|i| xs.collect{|x| x[i]}}
118
+ end
119
+
120
+ def stack(xs)
121
+ if xs.empty? then [] else xs[0] + stack(xs[1..-1]) end
122
+ end
123
+
124
+ def block(xs, n)
125
+ stack(group(xs, n).collect{|ys| trans(ys).collect{|zs| zs.join(' ')}})
126
+ end
127
+
128
+ def unlines(xs)
129
+ xs.collect{|x| x + "\n"}.join
130
+ end
131
+
132
+ def monthly(y, m)
133
+ if $lang == "nl"
134
+ return nl_pict(y,m)
135
+ end
136
+ return en_pict(y,m)
137
+ #unlines(pict(y, m))
138
+ end
139
+
140
+ def addmon(y, m, n)
141
+ y, m = (y * 12 + (m - 1) + n).divmod(12)
142
+ return y, m + 1
143
+ end
144
+
145
+ def yearly(y)
146
+ y.to_s.center(@tw) + "\n\n" +
147
+ unlines(block((0..11).collect{|n| pict(*addmon(y, 1, n))}, @mn)) + "\n"
148
+ end
149
+
150
+ def print(y, m)
151
+ set_params
152
+ if @opt_y then yearly(y) else monthly(y, m) end
153
+ end
154
+
155
+ end
156
+
157
+
158
+
data/lib/icalendar.rb ADDED
@@ -0,0 +1,18 @@
1
+ $:.unshift(File.dirname(__FILE__))
2
+
3
+ # Base classes and mixin modules
4
+ require 'icalendar/base'
5
+ require 'icalendar/component'
6
+ require 'icalendar/helpers'
7
+
8
+ # Calendar and components
9
+ require 'icalendar/calendar'
10
+ require 'icalendar/component/event'
11
+ require 'icalendar/component/journal'
12
+ require 'icalendar/component/todo'
13
+ require 'icalendar/component/freebusy'
14
+ require 'icalendar/component/timezone'
15
+ require 'icalendar/component/alarm'
16
+
17
+ # Calendar parser
18
+ require 'icalendar/calendar_parser'
@@ -0,0 +1,17 @@
1
+ require 'logger'
2
+
3
+ module Icalendar #:nodoc:
4
+ class IcalendarError < StandardError #:nodoc:
5
+ end
6
+
7
+ class InvalidComponentClass < IcalendarError
8
+ end
9
+
10
+ class InvalidPropertyValue < IcalendarError
11
+ end
12
+
13
+ class Base
14
+ @@logger = Logger.new(STDOUT)
15
+ @@logger.level = Logger::INFO
16
+ end
17
+ end