radiant-event_calendar-extension 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (106) hide show
  1. data/.gitmodules +0 -0
  2. data/README.md +198 -0
  3. data/Rakefile +139 -0
  4. data/VERSION +1 -0
  5. data/app/controllers/admin/calendars_controller.rb +18 -0
  6. data/app/controllers/admin/event_venues_controller.rb +3 -0
  7. data/app/controllers/admin/events_controller.rb +9 -0
  8. data/app/controllers/admin/icals_controller.rb +26 -0
  9. data/app/controllers/events_controller.rb +201 -0
  10. data/app/models/calendar.rb +57 -0
  11. data/app/models/event.rb +409 -0
  12. data/app/models/event_calendar_page.rb +138 -0
  13. data/app/models/event_occurrence.rb +89 -0
  14. data/app/models/event_recurrence_rule.rb +85 -0
  15. data/app/models/event_venue.rb +17 -0
  16. data/app/models/ical.rb +132 -0
  17. data/app/views/admin/calendars/_actions.html.haml +6 -0
  18. data/app/views/admin/calendars/_form.html.haml +56 -0
  19. data/app/views/admin/calendars/edit.html.haml +11 -0
  20. data/app/views/admin/calendars/help.html.erb +22 -0
  21. data/app/views/admin/calendars/index.html.haml +60 -0
  22. data/app/views/admin/calendars/new.html.haml +10 -0
  23. data/app/views/admin/calendars/show.html.haml +36 -0
  24. data/app/views/admin/event_venues/_event_venue.html.haml +18 -0
  25. data/app/views/admin/event_venues/_form.html.haml +44 -0
  26. data/app/views/admin/event_venues/edit.html.haml +32 -0
  27. data/app/views/admin/event_venues/index.html.haml +33 -0
  28. data/app/views/admin/event_venues/new.html.haml +32 -0
  29. data/app/views/admin/event_venues/remove.html.haml +17 -0
  30. data/app/views/admin/events/_event.html.haml +47 -0
  31. data/app/views/admin/events/_form.html.haml +116 -0
  32. data/app/views/admin/events/_list_head.html.haml +18 -0
  33. data/app/views/admin/events/edit.html.haml +6 -0
  34. data/app/views/admin/events/index.html.haml +23 -0
  35. data/app/views/admin/events/new.html.haml +6 -0
  36. data/app/views/admin/events/remove.html.haml +17 -0
  37. data/app/views/admin/icals/refresh.html.haml +11 -0
  38. data/app/views/admin/icals/refresh_all.html.haml +0 -0
  39. data/app/views/events/_defacet.html.haml +2 -0
  40. data/app/views/events/_event.html.haml +29 -0
  41. data/app/views/events/_event_postscript.html.haml +0 -0
  42. data/app/views/events/_faceting.html.haml +27 -0
  43. data/app/views/events/_minicalendar.html.haml +49 -0
  44. data/app/views/events/_other_page_parts.html.haml +0 -0
  45. data/app/views/events/_views.html.haml +6 -0
  46. data/app/views/events/index.html.haml +56 -0
  47. data/app/views/events/index.ics.erb +7 -0
  48. data/app/views/events/index.rss.builder +20 -0
  49. data/config/routes.rb +13 -0
  50. data/db/migrate/001_create_calendar_and_events.rb +21 -0
  51. data/db/migrate/002_calendar_add_ical_url.rb +9 -0
  52. data/db/migrate/003_add_calendar_category.rb +9 -0
  53. data/db/migrate/004_add_slug.rb +9 -0
  54. data/db/migrate/005_add_subscription_refresh_history.rb +11 -0
  55. data/db/migrate/006_create_icals.rb +13 -0
  56. data/db/migrate/007_move_subscriptions_to_ical.rb +15 -0
  57. data/db/migrate/008_clean_out_calendar.rb +12 -0
  58. data/db/migrate/009_basic_authentication.rb +12 -0
  59. data/db/migrate/010_refresh_interval.rb +9 -0
  60. data/db/migrate/011_more_properties.rb +8 -0
  61. data/db/migrate/20090818133511_simpler_ical_columns.rb +17 -0
  62. data/db/migrate/20090819130919_ownership.rb +17 -0
  63. data/db/migrate/20090820073805_site_scope.rb +13 -0
  64. data/db/migrate/20091118100725_event_status.rb +9 -0
  65. data/db/migrate/20100216080944_more_event_data.rb +31 -0
  66. data/db/migrate/20100218131410_recurrence_parts.rb +19 -0
  67. data/db/migrate/20100219102227_venues_and_categories.rb +23 -0
  68. data/db/migrate/20100221180539_recurrence_rules.rb +34 -0
  69. data/db/migrate/20100222182112_occurrences.rb +13 -0
  70. data/event_calendar_extension.rb +32 -0
  71. data/lib/calendar_period.rb +151 -0
  72. data/lib/event_calendar_admin_ui.rb +78 -0
  73. data/lib/event_calendar_tags.rb +1021 -0
  74. data/lib/event_search.rb +22 -0
  75. data/lib/event_statuses.rb +24 -0
  76. data/lib/tasks/event_calendar_extension_tasks.rake +29 -0
  77. data/pkg/radiant-event_calendar-extension-1.0.0.gem +0 -0
  78. data/public/icals/blank +0 -0
  79. data/public/images/admin/calendar.png +0 -0
  80. data/public/images/event_calendar/calendarlinkbg.png +0 -0
  81. data/public/images/event_calendar/event_shadow.png +0 -0
  82. data/public/images/event_calendar/ical16.png +0 -0
  83. data/public/images/event_calendar/maplinkbg.png +0 -0
  84. data/public/images/event_calendar/one_event.png +0 -0
  85. data/public/images/event_calendar/several_events.png +0 -0
  86. data/public/javascripts/admin/event_calendar.js +240 -0
  87. data/public/stylesheets/sass/admin/event_calendar.sass +266 -0
  88. data/public/stylesheets/sass/admin/modules/_grid.sass +56 -0
  89. data/public/stylesheets/sass/constants.sass +80 -0
  90. data/public/stylesheets/sass/event_calendar.sass +203 -0
  91. data/radiant-event_calendar-extension.gemspec +166 -0
  92. data/spec/datasets/calendar_events_dataset.rb +43 -0
  93. data/spec/datasets/calendar_pages_dataset.rb +8 -0
  94. data/spec/datasets/calendar_sites_dataset.rb +6 -0
  95. data/spec/datasets/calendars_dataset.rb +34 -0
  96. data/spec/datasets/recurrence_dataset.rb +7 -0
  97. data/spec/files/dummy.ics +59 -0
  98. data/spec/files/ny.ics +36 -0
  99. data/spec/lib/event_calendar_page_spec.rb +24 -0
  100. data/spec/models/calendar_spec.rb +11 -0
  101. data/spec/models/event_spec.rb +98 -0
  102. data/spec/models/ical_spec.rb +63 -0
  103. data/spec/models/recurrence_rule_spec.rb +82 -0
  104. data/spec/spec.opts +6 -0
  105. data/spec/spec_helper.rb +36 -0
  106. metadata +238 -0
@@ -0,0 +1,56 @@
1
+ !width = 100%
2
+ !grid = 12
3
+ !margin = 1%
4
+ !box = !width / !grid
5
+
6
+ =grid(!count)
7
+ :width = (!count * !box) - (2 * !margin)
8
+ :display inline
9
+ :float left
10
+ :position relative
11
+ :margin-left = !margin
12
+ :margin-right = !margin
13
+ =prefix(!count)
14
+ :padding-left = !count * !box
15
+ =suffix(!count)
16
+ :padding-right = !count * !box
17
+ =push(!count)
18
+ :left = !count * !box
19
+ =pull(!count)
20
+ :left = !count * !box * -1
21
+ =flush_left
22
+ :margin-left 0
23
+ =flush_right
24
+ :margin-right 0
25
+ =flush
26
+ :margin-left 0
27
+ :margin-right 0
28
+ =clear
29
+ :clear left
30
+
31
+ .container_#{!grid}
32
+ :width = !width
33
+ :position relative
34
+ :margin-left auto
35
+ :margin-right auto
36
+ :overflow hidden
37
+ @for !marker from 1 through !grid
38
+ .grid_#{!marker}
39
+ +grid(!marker)
40
+ .prefix_#{!marker}
41
+ +prefix(!marker)
42
+ .suffix_#{!marker}
43
+ +suffix(!marker)
44
+ .push_#{!marker}
45
+ +push(!marker)
46
+ .pull_#{!marker}
47
+ +pull(!marker)
48
+ .flush_left, .alpha
49
+ +flush_left
50
+ .flush_right, .omega
51
+ +flush_right
52
+ .flush
53
+ +flush
54
+ .row, .newline
55
+ +clear
56
+
@@ -0,0 +1,80 @@
1
+ // layout
2
+
3
+ !width = 960px
4
+ !grid = 12
5
+ !margin = 10px
6
+ !box = !width / !grid
7
+
8
+ =grid(!count)
9
+ :width = (!count * !box) - (2 * !margin)
10
+ :display inline
11
+ :float left
12
+ :position relative
13
+ :margin-left = !margin
14
+ :margin-right = !margin
15
+ =prefix(!count)
16
+ :padding-left = !count * !box
17
+ =suffix(!count)
18
+ :padding-right = !count * !box
19
+ =push(!count)
20
+ :left = !count * !box
21
+ =pull(!count)
22
+ :left = !count * !box * -1
23
+ =flush
24
+ :margin-left 0
25
+ =flush_right
26
+ :margin-right 0
27
+ =snug
28
+ :margin-left 0
29
+ :margin-right 0
30
+ =clearfix
31
+
32
+ =newline
33
+ :clear left
34
+
35
+ // decoration
36
+
37
+ !page = #f6f6f4
38
+ !darkpage = #efefeb
39
+ !text = #616265
40
+ !pale = #7f8082
41
+ !paler = #a2a3a1
42
+ !verypale = #C5C5C0
43
+ !link = #9d313d
44
+ !hover = #c93f4e
45
+ !input = #005b7f
46
+ !problem = #d1005d
47
+ !shadow = #878786
48
+
49
+ =bodyfonts
50
+ :font-family Georgia, serif
51
+ :line-height 1.6
52
+ =headerfonts
53
+ :font-family 'Adobe Garamond Pro', Georgia, serif
54
+ :font-weight lighter
55
+ :line-height 1.05
56
+ :letter-spacing -0.03em
57
+ =functionalfonts
58
+ :font-family helvetica, arial, sans-serif
59
+ :letter-spacing -0.03em
60
+ =smallfonts
61
+ :font-size 80%
62
+ :font-style italic
63
+ =standard_block
64
+ :position relative
65
+ :overflow hidden
66
+ =inputfonts
67
+ :font-family 'Adobe Garamond Pro', Georgia, serif
68
+ :font-weight lighter
69
+ =rounded(!radius = 3px)
70
+ //:-moz-border-radius = !radius
71
+ //:-webkit-border-radius = !radius
72
+ =shadowed
73
+ :-webkit-box-shadow 1px 1px 3px #{!shadow}
74
+ :-moz-box-shadow 1px 1px 3px #{!shadow}
75
+ =deepshadow
76
+ :-webkit-box-shadow 1px 5px 11px #{!shadow}
77
+ :-moz-box-shadow 1px 5px 11px #{!shadow}
78
+ =blurred(!color=!paler)
79
+ :text-shadow #{!color} 0 0 2px
80
+
@@ -0,0 +1,203 @@
1
+ !page = #fff
2
+ !text = #000
3
+ !pale = #999
4
+ !paler = #ccc
5
+ !verypale = #eee
6
+ !link = #900
7
+ !hover = #c00
8
+
9
+ =functionalfonts
10
+ :font-family helvetica, arial, sans-serif
11
+ :letter-spacing -0.03em
12
+ =blurred(!color=!verypale)
13
+ :text-shadow #{!color} 0 0 2px
14
+
15
+ #events
16
+ .event
17
+ :position relative
18
+ :margin-bottom 20px
19
+ .dateholder
20
+ :position absolute
21
+ :left 15px
22
+ :top 2px
23
+ :padding 5px 5px 0 5px
24
+ :border 0
25
+ +functionalfonts
26
+ :text-align center
27
+ :line-height 1.05
28
+ :background-color = !page
29
+ :border
30
+ :style solid
31
+ :width 1px
32
+ :color = !verypale
33
+ span.month, span.dow
34
+ :display block
35
+ :font-weight lighter
36
+ :font-size 80%
37
+ :text-transform uppercase
38
+ span.day, span.dom
39
+ :display block
40
+ :font-weight bold
41
+ :font-size 160%
42
+ .detail
43
+ h3
44
+ :margin 0
45
+ :font-size 180%
46
+ p
47
+ :margin-top 0
48
+ :font-size 90%
49
+ :line-height 1.4
50
+ p.venue
51
+ :font-style italic
52
+ :margin-bottom 6px
53
+ p.description
54
+ :margin-bottom 16px
55
+
56
+ #continuing
57
+ h3
58
+ +functionalfonts
59
+ :font-weight bold
60
+ :font-size 1.2em
61
+ :margin-bottom 0
62
+ ul
63
+ +functionalfonts
64
+ :font-size 90%
65
+ :line-height 1.2
66
+ :padding-left 0
67
+ li
68
+ :margin-top 10px
69
+ :font-style normal
70
+ a.title
71
+ :font-weight bold
72
+ span.detail
73
+ :font-size 80%
74
+
75
+ #faceting
76
+ a.defilter
77
+ :padding-left 14px
78
+ :background transparent url(/images/furniture/detag.png) no-repeat top left
79
+ :color #c00
80
+
81
+ table.minimonth
82
+ +functionalfonts
83
+ :font-size 80%
84
+ :font-style normal
85
+ :border-collapse collapse
86
+ :border
87
+ :style solid
88
+ :width 1px
89
+ :color = !verypale
90
+ :color = !text
91
+ :margin 5px 0
92
+ a
93
+ :display block
94
+ :color = !link
95
+ :font-weight lighter
96
+ :text-decoration none
97
+ a:hover
98
+ :background-color = !hover
99
+ :color = !page
100
+ th, td
101
+ :font-weight normal
102
+ :border
103
+ :style solid
104
+ :width 1px
105
+ :color = !verypale
106
+ :vertical-align top
107
+ :text-align center
108
+ :height 30px
109
+ :width 28px
110
+ :line-height 30px
111
+ :padding 0
112
+ :overflow hidden
113
+ th.month_link
114
+ :font-size 120%
115
+ th.day_name
116
+ :color = !verypale
117
+ td.other_month
118
+ :color = !pale
119
+ a
120
+ :color = !pale
121
+ a:hover
122
+ :color = !page
123
+ td.today
124
+ :background-color = !page
125
+ td.eventful
126
+ td.uneventful
127
+ +blurred
128
+ :color = !verypale
129
+ td.today
130
+ :font-weight bold
131
+ td.past
132
+ :opacity 0.75
133
+
134
+ p.help
135
+ +functionalfonts
136
+ :color = !pale
137
+ :font-size 80%
138
+
139
+ #view_control
140
+ p
141
+ +functionalfonts
142
+ :color = !paler
143
+ :margin 0 0 10px 0
144
+ :line-height 30px
145
+ :height 25px
146
+ :overflow hidden
147
+ :font
148
+ :size 80%
149
+ a
150
+ :color = !pale
151
+ :padding-top 4px
152
+ a.fg
153
+ :color = !text
154
+ a:hover
155
+ :color = !hover
156
+ p.views
157
+ :font-size 100%
158
+ a.map
159
+ :padding 7px 3px 3px 17px
160
+ :background transparent url(/images/event_calendar/maplinkbg.png) no-repeat top left
161
+ a.calendar
162
+ :padding 7px 3px 3px 20px
163
+ :background transparent url(/images/event_calendar/calendarlinkbg.png) no-repeat top left
164
+ p.feeds
165
+ a.rss, a.ical
166
+ :padding 3px 3px 3px 17px
167
+ :height 24px
168
+ a.rss
169
+ :background transparent url(/images/icons/rss.png) no-repeat top left
170
+ a.ical
171
+ :background transparent url(/images/icons/ical.png) no-repeat top left
172
+
173
+ div.pagination
174
+ +functionalfonts
175
+ :color = !text
176
+ :line-height 2
177
+ :margin-top 50px
178
+ :margin-bottom 20px
179
+ a, span.current, span.disabled
180
+ :padding 6px 7px 3px 7px
181
+ :border
182
+ :style solid
183
+ :width 1px
184
+ :color = !link
185
+ a:hover
186
+ :border-color = !hover
187
+ .next_page, .prev_page
188
+ span.current
189
+ :color = !text
190
+ :font-weight bold
191
+ :border-color = !text
192
+ span.separator
193
+ :visibility hidden
194
+ span.disabled
195
+ :display none
196
+ :color = !verypale
197
+ :border-color = !verypale
198
+ +blurred
199
+ span.summary
200
+ :padding 6px
201
+ :font-size 75%
202
+ :color = !verypale
203
+ :margin-left 10px
@@ -0,0 +1,166 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{radiant-event_calendar-extension}
8
+ s.version = "1.0.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["spanner"]
12
+ s.date = %q{2010-09-10}
13
+ s.description = %q{An event calendar extension that administers events locally or draws them from any ical or CalDAV publishers (Google Calendar, .Mac, Darwin Calendar Server, etc.)}
14
+ s.email = %q{will@spanner.org}
15
+ s.extra_rdoc_files = [
16
+ "README.md"
17
+ ]
18
+ s.files = [
19
+ ".gitmodules",
20
+ "README.md",
21
+ "Rakefile",
22
+ "VERSION",
23
+ "app/controllers/admin/calendars_controller.rb",
24
+ "app/controllers/admin/event_venues_controller.rb",
25
+ "app/controllers/admin/events_controller.rb",
26
+ "app/controllers/admin/icals_controller.rb",
27
+ "app/controllers/events_controller.rb",
28
+ "app/models/calendar.rb",
29
+ "app/models/event.rb",
30
+ "app/models/event_calendar_page.rb",
31
+ "app/models/event_occurrence.rb",
32
+ "app/models/event_recurrence_rule.rb",
33
+ "app/models/event_venue.rb",
34
+ "app/models/ical.rb",
35
+ "app/views/admin/calendars/_actions.html.haml",
36
+ "app/views/admin/calendars/_form.html.haml",
37
+ "app/views/admin/calendars/edit.html.haml",
38
+ "app/views/admin/calendars/help.html.erb",
39
+ "app/views/admin/calendars/index.html.haml",
40
+ "app/views/admin/calendars/new.html.haml",
41
+ "app/views/admin/calendars/show.html.haml",
42
+ "app/views/admin/event_venues/_event_venue.html.haml",
43
+ "app/views/admin/event_venues/_form.html.haml",
44
+ "app/views/admin/event_venues/edit.html.haml",
45
+ "app/views/admin/event_venues/index.html.haml",
46
+ "app/views/admin/event_venues/new.html.haml",
47
+ "app/views/admin/event_venues/remove.html.haml",
48
+ "app/views/admin/events/_event.html.haml",
49
+ "app/views/admin/events/_form.html.haml",
50
+ "app/views/admin/events/_list_head.html.haml",
51
+ "app/views/admin/events/edit.html.haml",
52
+ "app/views/admin/events/index.html.haml",
53
+ "app/views/admin/events/new.html.haml",
54
+ "app/views/admin/events/remove.html.haml",
55
+ "app/views/admin/icals/refresh.html.haml",
56
+ "app/views/admin/icals/refresh_all.html.haml",
57
+ "app/views/events/_defacet.html.haml",
58
+ "app/views/events/_event.html.haml",
59
+ "app/views/events/_event_postscript.html.haml",
60
+ "app/views/events/_faceting.html.haml",
61
+ "app/views/events/_minicalendar.html.haml",
62
+ "app/views/events/_other_page_parts.html.haml",
63
+ "app/views/events/_views.html.haml",
64
+ "app/views/events/index.html.haml",
65
+ "app/views/events/index.ics.erb",
66
+ "app/views/events/index.rss.builder",
67
+ "config/routes.rb",
68
+ "db/migrate/001_create_calendar_and_events.rb",
69
+ "db/migrate/002_calendar_add_ical_url.rb",
70
+ "db/migrate/003_add_calendar_category.rb",
71
+ "db/migrate/004_add_slug.rb",
72
+ "db/migrate/005_add_subscription_refresh_history.rb",
73
+ "db/migrate/006_create_icals.rb",
74
+ "db/migrate/007_move_subscriptions_to_ical.rb",
75
+ "db/migrate/008_clean_out_calendar.rb",
76
+ "db/migrate/009_basic_authentication.rb",
77
+ "db/migrate/010_refresh_interval.rb",
78
+ "db/migrate/011_more_properties.rb",
79
+ "db/migrate/20090818133511_simpler_ical_columns.rb",
80
+ "db/migrate/20090819130919_ownership.rb",
81
+ "db/migrate/20090820073805_site_scope.rb",
82
+ "db/migrate/20091118100725_event_status.rb",
83
+ "db/migrate/20100216080944_more_event_data.rb",
84
+ "db/migrate/20100218131410_recurrence_parts.rb",
85
+ "db/migrate/20100219102227_venues_and_categories.rb",
86
+ "db/migrate/20100221180539_recurrence_rules.rb",
87
+ "db/migrate/20100222182112_occurrences.rb",
88
+ "event_calendar_extension.rb",
89
+ "lib/calendar_period.rb",
90
+ "lib/event_calendar_admin_ui.rb",
91
+ "lib/event_calendar_tags.rb",
92
+ "lib/event_search.rb",
93
+ "lib/event_statuses.rb",
94
+ "lib/tasks/event_calendar_extension_tasks.rake",
95
+ "pkg/radiant-event_calendar-extension-1.0.0.gem",
96
+ "public/icals/blank",
97
+ "public/images/admin/calendar.png",
98
+ "public/images/event_calendar/calendarlinkbg.png",
99
+ "public/images/event_calendar/event_shadow.png",
100
+ "public/images/event_calendar/ical16.png",
101
+ "public/images/event_calendar/maplinkbg.png",
102
+ "public/images/event_calendar/one_event.png",
103
+ "public/images/event_calendar/several_events.png",
104
+ "public/javascripts/admin/event_calendar.js",
105
+ "public/stylesheets/sass/admin/event_calendar.sass",
106
+ "public/stylesheets/sass/admin/modules/_grid.sass",
107
+ "public/stylesheets/sass/constants.sass",
108
+ "public/stylesheets/sass/event_calendar.sass",
109
+ "radiant-event_calendar-extension.gemspec",
110
+ "spec/datasets/calendar_events_dataset.rb",
111
+ "spec/datasets/calendar_pages_dataset.rb",
112
+ "spec/datasets/calendar_sites_dataset.rb",
113
+ "spec/datasets/calendars_dataset.rb",
114
+ "spec/datasets/recurrence_dataset.rb",
115
+ "spec/files/dummy.ics",
116
+ "spec/files/ny.ics",
117
+ "spec/lib/event_calendar_page_spec.rb",
118
+ "spec/models/calendar_spec.rb",
119
+ "spec/models/event_spec.rb",
120
+ "spec/models/ical_spec.rb",
121
+ "spec/models/recurrence_rule_spec.rb",
122
+ "spec/spec.opts",
123
+ "spec/spec_helper.rb"
124
+ ]
125
+ s.homepage = %q{http://github.com/radiant/radiant-event_calendar-extension}
126
+ s.rdoc_options = ["--charset=UTF-8"]
127
+ s.require_paths = ["lib"]
128
+ s.rubygems_version = %q{1.3.7}
129
+ s.summary = %q{Event Calendar Extension for Radiant CMS}
130
+ s.test_files = [
131
+ "spec/datasets/calendar_events_dataset.rb",
132
+ "spec/datasets/calendar_pages_dataset.rb",
133
+ "spec/datasets/calendar_sites_dataset.rb",
134
+ "spec/datasets/calendars_dataset.rb",
135
+ "spec/datasets/recurrence_dataset.rb",
136
+ "spec/lib/event_calendar_page_spec.rb",
137
+ "spec/models/calendar_spec.rb",
138
+ "spec/models/event_spec.rb",
139
+ "spec/models/ical_spec.rb",
140
+ "spec/models/recurrence_rule_spec.rb",
141
+ "spec/spec_helper.rb"
142
+ ]
143
+
144
+ if s.respond_to? :specification_version then
145
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
146
+ s.specification_version = 3
147
+
148
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
149
+ s.add_runtime_dependency(%q<radiant>, [">= 0.9.0"])
150
+ s.add_runtime_dependency(%q<ri_cal>, [">= 0"])
151
+ s.add_runtime_dependency(%q<chronic>, [">= 0"])
152
+ s.add_runtime_dependency(%q<uuidtools>, [">= 0"])
153
+ else
154
+ s.add_dependency(%q<radiant>, [">= 0.9.0"])
155
+ s.add_dependency(%q<ri_cal>, [">= 0"])
156
+ s.add_dependency(%q<chronic>, [">= 0"])
157
+ s.add_dependency(%q<uuidtools>, [">= 0"])
158
+ end
159
+ else
160
+ s.add_dependency(%q<radiant>, [">= 0.9.0"])
161
+ s.add_dependency(%q<ri_cal>, [">= 0"])
162
+ s.add_dependency(%q<chronic>, [">= 0"])
163
+ s.add_dependency(%q<uuidtools>, [">= 0"])
164
+ end
165
+ end
166
+