open_porch 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +41 -0
- data/Gemfile.lock +130 -0
- data/README.md +170 -0
- data/Rakefile +19 -0
- data/VERSION +1 -0
- data/app/controllers/admin/areas/base_controller.rb +11 -0
- data/app/controllers/admin/areas/issues_controller.rb +67 -0
- data/app/controllers/admin/areas/memberships_controller.rb +7 -0
- data/app/controllers/admin/areas/posts_controller.rb +44 -0
- data/app/controllers/admin/areas_controller.rb +89 -0
- data/app/controllers/admin/base_controller.rb +16 -0
- data/app/controllers/admin/user_activity_controller.rb +29 -0
- data/app/controllers/admin/users_controller.rb +57 -0
- data/app/controllers/application_controller.rb +15 -0
- data/app/controllers/areas/base_controller.rb +25 -0
- data/app/controllers/areas/issues_controller.rb +35 -0
- data/app/controllers/areas/posts_controller.rb +28 -0
- data/app/controllers/areas_controller.rb +30 -0
- data/app/controllers/passwords_controller.rb +42 -0
- data/app/controllers/registrations_controller.rb +42 -0
- data/app/controllers/sessions_controller.rb +33 -0
- data/app/controllers/users_controller.rb +77 -0
- data/app/helpers/open_porch_helper.rb +24 -0
- data/app/mailers/user_mailer.rb +35 -0
- data/app/models/address.rb +57 -0
- data/app/models/area.rb +171 -0
- data/app/models/area_activity.rb +24 -0
- data/app/models/email_message.rb +104 -0
- data/app/models/issue.rb +66 -0
- data/app/models/issue_number.rb +22 -0
- data/app/models/membership.rb +27 -0
- data/app/models/post.rb +64 -0
- data/app/models/session_user.rb +69 -0
- data/app/models/user.rb +140 -0
- data/app/models/user_activity.rb +31 -0
- data/app/models/user_authority_check.rb +14 -0
- data/app/views/admin/areas/_form.html.haml +8 -0
- data/app/views/admin/areas/_nav.html.haml +12 -0
- data/app/views/admin/areas/edit.html.haml +22 -0
- data/app/views/admin/areas/edit_borders.html.haml +44 -0
- data/app/views/admin/areas/index.html.haml +61 -0
- data/app/views/admin/areas/issues/_post.html.haml +15 -0
- data/app/views/admin/areas/issues/add_posts.js.rjs +3 -0
- data/app/views/admin/areas/issues/edit.html.haml +37 -0
- data/app/views/admin/areas/issues/index.html.haml +31 -0
- data/app/views/admin/areas/issues/remove_posts.js.rjs +3 -0
- data/app/views/admin/areas/issues/show.html.haml +13 -0
- data/app/views/admin/areas/memberships/index.html.haml +17 -0
- data/app/views/admin/areas/new.html.haml +6 -0
- data/app/views/admin/areas/new.js.haml +4 -0
- data/app/views/admin/areas/posts/_edit.html.haml +6 -0
- data/app/views/admin/areas/posts/_post_status.html.haml +1 -0
- data/app/views/admin/areas/posts/destroy.js.rjs +1 -0
- data/app/views/admin/areas/posts/edit.js.rjs +1 -0
- data/app/views/admin/areas/posts/show.js.rjs +1 -0
- data/app/views/admin/areas/posts/toggle_reviewed_by.js.rjs +1 -0
- data/app/views/admin/areas/posts/update.js.rjs +5 -0
- data/app/views/admin/areas/show.html.haml +5 -0
- data/app/views/admin/user_activity/show.html.haml +5 -0
- data/app/views/admin/users/_form.html.haml +21 -0
- data/app/views/admin/users/edit.html.haml +5 -0
- data/app/views/admin/users/index.html.haml +31 -0
- data/app/views/admin/users/new.html.haml +5 -0
- data/app/views/areas/issues/index.html.haml +31 -0
- data/app/views/areas/issues/show.html.haml +22 -0
- data/app/views/areas/posts/_post.html.haml +8 -0
- data/app/views/areas/posts/_posts_search_form.html.haml +8 -0
- data/app/views/areas/posts/index.html.haml +27 -0
- data/app/views/areas/posts/new.html.haml +10 -0
- data/app/views/areas/show.html.haml +47 -0
- data/app/views/layouts/_account_nav.html.haml +18 -0
- data/app/views/layouts/_flash_message.html.haml +4 -0
- data/app/views/layouts/_footer.html.haml +9 -0
- data/app/views/layouts/_head.html.haml +16 -0
- data/app/views/layouts/admin/_nav.html.haml +13 -0
- data/app/views/layouts/admin.html.haml +15 -0
- data/app/views/layouts/application.html.haml +14 -0
- data/app/views/layouts/area_editor.html.haml +11 -0
- data/app/views/passwords/edit.html.haml +9 -0
- data/app/views/passwords/new.html.haml +13 -0
- data/app/views/registrations/_address_form.html.haml +7 -0
- data/app/views/registrations/create.html.haml +49 -0
- data/app/views/registrations/index.html.haml +30 -0
- data/app/views/registrations/new.html.haml +17 -0
- data/app/views/sessions/new.html.haml +18 -0
- data/app/views/stylesheets/common.sass +239 -0
- data/app/views/stylesheets/content.sass +193 -0
- data/app/views/stylesheets/reset.sass +46 -0
- data/app/views/stylesheets/structure.sass +11 -0
- data/app/views/stylesheets/typography.sass +57 -0
- data/app/views/user_mailer/email_verification.html.erb +5 -0
- data/app/views/user_mailer/email_verification.text.erb +7 -0
- data/app/views/user_mailer/new_issue.html.erb +32 -0
- data/app/views/user_mailer/new_issue.text.erb +26 -0
- data/app/views/user_mailer/password_reset.html.erb +7 -0
- data/app/views/user_mailer/password_reset.text.erb +6 -0
- data/app/views/users/_form.html.haml +5 -0
- data/app/views/users/edit.html.haml +11 -0
- data/app/views/users/new.html.haml +41 -0
- data/app/views/users/show.html.haml +30 -0
- data/bin/open_porch_engine +135 -0
- data/config/application.rb +43 -0
- data/config/boot.rb +13 -0
- data/config/database_example.yml +59 -0
- data/config/environment.rb +5 -0
- data/config/environments/development.rb +26 -0
- data/config/environments/production.rb +49 -0
- data/config/environments/test.rb +35 -0
- data/config/initializers/backtrace_silencers.rb +7 -0
- data/config/initializers/email_regex.rb +38 -0
- data/config/initializers/geokit_config.rb +61 -0
- data/config/initializers/inflections.rb +20 -0
- data/config/initializers/meta_search.rb +7 -0
- data/config/initializers/mime_types.rb +5 -0
- data/config/initializers/open_porch.rb +41 -0
- data/config/initializers/sass.rb +1 -0
- data/config/initializers/secret_token.rb +7 -0
- data/config/initializers/session_store.rb +8 -0
- data/config/initializers/states_provinces.rb +2 -0
- data/config/initializers/will_paginate.rb +2 -0
- data/config/locales/en.yml +5 -0
- data/config/open_porch_example.yml +23 -0
- data/config/routes.rb +54 -0
- data/config/schedule.rb +9 -0
- data/config.ru +4 -0
- data/db/migrate/01_create_areas.rb +21 -0
- data/db/migrate/02_create_users.rb +28 -0
- data/db/migrate/03_create_memberships.rb +14 -0
- data/db/migrate/04_create_posts.rb +20 -0
- data/db/migrate/05_create_issue_numbers.rb +13 -0
- data/db/migrate/06_create_issues.rb +21 -0
- data/db/migrate/20110204173301_add_published_to_areas.rb +10 -0
- data/db/migrate/20110204194840_create_user_activities.rb +13 -0
- data/db/migrate/20110208163604_add_zip_to_areas.rb +11 -0
- data/db/migrate/20110209175723_add_counters_to_areas.rb +11 -0
- data/db/migrate/20110209182244_remove_subject_from_issues.rb +9 -0
- data/db/migrate/20110209190146_add_reviewer_info_to_posts.rb +9 -0
- data/db/migrate/20110215173144_add_email_validation_key_to_users.rb +13 -0
- data/db/migrate/20110215182716_remove_published_from_areas.rb +10 -0
- data/db/migrate/20110215211012_create_area_activities.rb +19 -0
- data/db/migrate/20110215213802_create_email_messages.rb +19 -0
- data/db/migrate/20110217165018_change_send_mode_to_string.rb +17 -0
- data/db/migrate/20110223160609_denormalize_user_info_in_posts.rb +19 -0
- data/db/seeds.rb +7 -0
- data/doc/README_FOR_APP +2 -0
- data/lib/generators/open_porch_generator.rb +37 -0
- data/lib/open_porch/engine.rb +20 -0
- data/lib/open_porch.rb +3 -0
- data/lib/tasks/.gitkeep +0 -0
- data/lib/tasks/open_porch.rake +10 -0
- data/lib/tasks/postageapp_tasks.rake +78 -0
- data/open_porch.gemspec +335 -0
- data/public/404.html +26 -0
- data/public/422.html +26 -0
- data/public/500.html +26 -0
- data/public/favicon.ico +0 -0
- data/public/images/icons/ajax-loader.gif +0 -0
- data/public/images/icons/calendar.png +0 -0
- data/public/images/icons/post_new.png +0 -0
- data/public/images/icons/post_reviewed.png +0 -0
- data/public/javascripts/application.js +3 -0
- data/public/javascripts/google_maps.js +153 -0
- data/public/javascripts/highcharts.js +162 -0
- data/public/javascripts/highcharts_init.js +30 -0
- data/public/javascripts/issue_edit.js +57 -0
- data/public/javascripts/jquery-ui.min.js +191 -0
- data/public/javascripts/jquery.js +154 -0
- data/public/javascripts/rails.js +137 -0
- data/public/javascripts/region_editor.js +616 -0
- data/public/javascripts/user_activity.js +29 -0
- data/public/robots.txt +5 -0
- data/public/stylesheets/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/public/stylesheets/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/public/stylesheets/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/public/stylesheets/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/public/stylesheets/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/public/stylesheets/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/public/stylesheets/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/public/stylesheets/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/public/stylesheets/images/ui-icons_222222_256x240.png +0 -0
- data/public/stylesheets/images/ui-icons_2e83ff_256x240.png +0 -0
- data/public/stylesheets/images/ui-icons_454545_256x240.png +0 -0
- data/public/stylesheets/images/ui-icons_888888_256x240.png +0 -0
- data/public/stylesheets/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/public/stylesheets/jquery-ui.css +362 -0
- data/script/rails +6 -0
- data/test/dummy/area.rb +5 -0
- data/test/dummy/area_activity.rb +7 -0
- data/test/dummy/issue.rb +4 -0
- data/test/dummy/membership.rb +4 -0
- data/test/dummy/post.rb +12 -0
- data/test/dummy/user.rb +29 -0
- data/test/dummy/user_activity.rb +11 -0
- data/test/functional/admin/areas/issues_controller_test.rb +48 -0
- data/test/functional/admin/areas/memberships_controller_test.rb +45 -0
- data/test/functional/admin/areas/posts_controller_test.rb +54 -0
- data/test/functional/admin/areas_controller_test.rb +134 -0
- data/test/functional/admin/base_controller_test.rb +8 -0
- data/test/functional/admin/user_activity_controller_test.rb +28 -0
- data/test/functional/admin/users_controller_test.rb +144 -0
- data/test/functional/areas/issues_controller_test.rb +33 -0
- data/test/functional/areas/posts_controller_test.rb +50 -0
- data/test/functional/areas_controller_test.rb +12 -0
- data/test/functional/passwords_controller_test.rb +64 -0
- data/test/functional/registrations_controller_test.rb +64 -0
- data/test/functional/sessions_controller_test.rb +120 -0
- data/test/functional/users_controller_test.rb +144 -0
- data/test/performance/browsing_test.rb +9 -0
- data/test/test_helper.rb +92 -0
- data/test/unit/address_test.rb +25 -0
- data/test/unit/area_activity_test.rb +57 -0
- data/test/unit/area_test.rb +92 -0
- data/test/unit/email_message_test.rb +8 -0
- data/test/unit/issue_number_test.rb +25 -0
- data/test/unit/issue_test.rb +154 -0
- data/test/unit/membership_test.rb +20 -0
- data/test/unit/post_test.rb +69 -0
- data/test/unit/session_user_test.rb +65 -0
- data/test/unit/user_activity_test.rb +31 -0
- data/test/unit/user_mailer_test.rb +20 -0
- data/test/unit/user_test.rb +61 -0
- data/vendor/plugins/.gitkeep +0 -0
- metadata +456 -0
@@ -0,0 +1,17 @@
|
|
1
|
+
= content_for :head do
|
2
|
+
= javascript_include_tag "http://maps.google.com/maps/api/js?sensor=false"
|
3
|
+
= javascript_include_tag 'google_maps'
|
4
|
+
|
5
|
+
|
6
|
+
= content_for :doc_ready do
|
7
|
+
initialize_gmap(document.getElementById("map_canvas"), #{@address.lat}, #{@address.lng});
|
8
|
+
add_marker(#{@address.lat}, #{@address.lng}, '#{@address.full}');
|
9
|
+
|
10
|
+
.columns
|
11
|
+
.left_column
|
12
|
+
%h2 Find your address on the map
|
13
|
+
|
14
|
+
= render :partial => 'address_form'
|
15
|
+
|
16
|
+
.right_column
|
17
|
+
#map_canvas{:style => 'width:260px; height:400px'}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
.columns
|
2
|
+
|
3
|
+
%h1 Login
|
4
|
+
|
5
|
+
.left_column
|
6
|
+
= formatted_form_for @session_user, :url => login_path do |f|
|
7
|
+
= f.text_field :email, :label => 'Email address'
|
8
|
+
= f.password_field :password
|
9
|
+
= f.check_box :remember_me, :label => 'Remember me when I come back'
|
10
|
+
= f.submit 'Log In'
|
11
|
+
|
12
|
+
.right_column
|
13
|
+
%p
|
14
|
+
Did you forget your password?
|
15
|
+
= link_to 'Recover it here.', new_password_path
|
16
|
+
%br/
|
17
|
+
Don't have an account yet?
|
18
|
+
= link_to 'Register here.', root_path
|
@@ -0,0 +1,239 @@
|
|
1
|
+
// === Columns ========================================
|
2
|
+
.columns
|
3
|
+
overflow: hidden
|
4
|
+
background: #fff
|
5
|
+
padding: 30px 40px
|
6
|
+
.left_column
|
7
|
+
float: left
|
8
|
+
width: 560px
|
9
|
+
margin-right: 40px
|
10
|
+
.right_column
|
11
|
+
float: right
|
12
|
+
width: 280px
|
13
|
+
|
14
|
+
.columns.half
|
15
|
+
.left_column
|
16
|
+
width: 420px
|
17
|
+
.right_column
|
18
|
+
width: 420px
|
19
|
+
|
20
|
+
// === Tabs ========================================
|
21
|
+
ul.tabs
|
22
|
+
overflow: hidden
|
23
|
+
font: 14px Georgia, serif
|
24
|
+
li
|
25
|
+
float: left
|
26
|
+
margin-bottom: 0px
|
27
|
+
padding: 10px 10px
|
28
|
+
margin: 5px 5px 0px 0px
|
29
|
+
background: #9f9a9f
|
30
|
+
color: #fff
|
31
|
+
a
|
32
|
+
color: #fff
|
33
|
+
li.active
|
34
|
+
margin-top: 0px
|
35
|
+
border-top: 5px solid #00AFDB
|
36
|
+
background: #fff
|
37
|
+
color: #2D212D
|
38
|
+
a
|
39
|
+
color: #2D212D
|
40
|
+
li.right
|
41
|
+
float: right
|
42
|
+
margin: 5px 0px 0px 5px
|
43
|
+
a
|
44
|
+
background: none
|
45
|
+
|
46
|
+
// === Sub nav ========================================
|
47
|
+
ul.sub_nav
|
48
|
+
overflow: hidden
|
49
|
+
li
|
50
|
+
float: left
|
51
|
+
line-height: 30px
|
52
|
+
margin-right: 10px
|
53
|
+
a
|
54
|
+
padding: 4px 5px
|
55
|
+
a.active
|
56
|
+
background-color: #00AFDB
|
57
|
+
color: #fff
|
58
|
+
|
59
|
+
ul.list
|
60
|
+
margin-bottom: 20px
|
61
|
+
line-height: 15px
|
62
|
+
clear: both
|
63
|
+
li
|
64
|
+
padding: 5px
|
65
|
+
border-top: 1px solid #a6a8ab
|
66
|
+
border-bottom: 1px solid #a6a8ab
|
67
|
+
.name
|
68
|
+
margin-bottom: 5px
|
69
|
+
h4
|
70
|
+
margin-bottom: 0px
|
71
|
+
p.meta
|
72
|
+
font-size: 10px
|
73
|
+
text-transform: uppercase
|
74
|
+
|
75
|
+
li+li
|
76
|
+
border-top: none
|
77
|
+
|
78
|
+
// === Table ========================================
|
79
|
+
table
|
80
|
+
border-bottom: 1px solid #a6a8ab
|
81
|
+
width: 100%
|
82
|
+
margin-bottom: 10px
|
83
|
+
th
|
84
|
+
border-bottom: 1px solid #a6a8ab
|
85
|
+
th, td
|
86
|
+
padding: 5px
|
87
|
+
td
|
88
|
+
vertical-align: top
|
89
|
+
border-bottom: 1px solid #ddd
|
90
|
+
td.action_link
|
91
|
+
white-space: nowrap
|
92
|
+
th.center, td.center
|
93
|
+
text-align: center
|
94
|
+
tr.important
|
95
|
+
td
|
96
|
+
background: #ddd
|
97
|
+
|
98
|
+
// === Form ========================================
|
99
|
+
form.formatted
|
100
|
+
.form_element
|
101
|
+
margin-bottom: 10px
|
102
|
+
.label
|
103
|
+
font: 10px/20px Arial, sans-serif
|
104
|
+
color: #6E666E
|
105
|
+
text-transform: uppercase
|
106
|
+
letter-spacing: 1px
|
107
|
+
margin-bottom: 5px
|
108
|
+
.errors, .description
|
109
|
+
font: 11px/20px Arial, sans-serif
|
110
|
+
letter-spacing: 1px
|
111
|
+
.errors
|
112
|
+
color: red
|
113
|
+
.description
|
114
|
+
font-style: italic
|
115
|
+
color: #6E666E
|
116
|
+
|
117
|
+
.form_element.text_field, .form_element.password_field
|
118
|
+
input
|
119
|
+
border: 1px solid #a6a8ab
|
120
|
+
padding: 5px
|
121
|
+
width: 90%
|
122
|
+
.search
|
123
|
+
width: 150px
|
124
|
+
|
125
|
+
.form_element.text_area textarea
|
126
|
+
border: 1px solid #a6a8ab
|
127
|
+
padding: 5px
|
128
|
+
width: 90%
|
129
|
+
|
130
|
+
.form_element.check_box
|
131
|
+
.value
|
132
|
+
label
|
133
|
+
padding-left: 5px
|
134
|
+
|
135
|
+
// === Form admin search========================================
|
136
|
+
|
137
|
+
.columns
|
138
|
+
.header
|
139
|
+
overflow: hidden
|
140
|
+
h2
|
141
|
+
float: left
|
142
|
+
h5
|
143
|
+
float: left
|
144
|
+
margin-left: 10px
|
145
|
+
margin-top: 12px
|
146
|
+
|
147
|
+
form.admin_search
|
148
|
+
overflow: hidden
|
149
|
+
float: right
|
150
|
+
.form_element
|
151
|
+
float: left
|
152
|
+
width: auto
|
153
|
+
margin-right: 10px
|
154
|
+
.label
|
155
|
+
margin-bottom: 0px
|
156
|
+
.value
|
157
|
+
input[type=text], input[type=date]
|
158
|
+
width: 150px
|
159
|
+
.form_element.submit_element
|
160
|
+
padding-top: 20px
|
161
|
+
width: 50px
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
// === Flash messages ========================================
|
166
|
+
.flash_wrapper
|
167
|
+
.flash_message
|
168
|
+
padding: 5px 5px
|
169
|
+
margin: -15px auto 15px auto
|
170
|
+
text-align: center
|
171
|
+
background: #fff
|
172
|
+
color: #00AFDB
|
173
|
+
.flash_message.alert
|
174
|
+
color: #c21a1a
|
175
|
+
|
176
|
+
|
177
|
+
// === Google map ========================================
|
178
|
+
#map_canvas
|
179
|
+
border: 2px solid #2D212D
|
180
|
+
margin-bottom: 10px
|
181
|
+
|
182
|
+
|
183
|
+
#user_activity
|
184
|
+
overflow: hidden
|
185
|
+
margin: 5px 0
|
186
|
+
float: right
|
187
|
+
width: 400px
|
188
|
+
font: 10px/15px Arial, sans-serif
|
189
|
+
text-align: right
|
190
|
+
.user
|
191
|
+
background: #ddd
|
192
|
+
float: right
|
193
|
+
padding: 0px 5px
|
194
|
+
margin-left: 5px
|
195
|
+
|
196
|
+
// === Pagination ========================================
|
197
|
+
.pagination
|
198
|
+
font: 13px/20px Arial, sans-serif
|
199
|
+
margin-bottom: 10px
|
200
|
+
float: right
|
201
|
+
.previous_page, .next_page
|
202
|
+
background: #ebebeb
|
203
|
+
text-transform: uppercase
|
204
|
+
font-size: 11px
|
205
|
+
span, a, em
|
206
|
+
background-color: #ebebeb
|
207
|
+
font-size: 12px
|
208
|
+
line-height: 20px
|
209
|
+
padding: 4px 10px
|
210
|
+
text-decoration: none
|
211
|
+
margin: 0
|
212
|
+
.current
|
213
|
+
background-color: #404041
|
214
|
+
color: #fff
|
215
|
+
font-style: normal
|
216
|
+
a:hover
|
217
|
+
text-decoration: underline
|
218
|
+
|
219
|
+
h2
|
220
|
+
.pagination
|
221
|
+
margin-top: 20px
|
222
|
+
|
223
|
+
.ajax-loader
|
224
|
+
width: 20px
|
225
|
+
height: 20px
|
226
|
+
background: url('/images/icons/ajax-loader.gif') no-repeat center
|
227
|
+
|
228
|
+
div.ui-datepicker
|
229
|
+
font-size: 10px
|
230
|
+
input[type=date]
|
231
|
+
background: url(/images/icons/calendar.png) no-repeat 98%
|
232
|
+
|
233
|
+
// === Ads ========================================
|
234
|
+
a.ad.current_issue
|
235
|
+
width: 140px
|
236
|
+
height: 140px
|
237
|
+
margin: 15px auto
|
238
|
+
display: block
|
239
|
+
|
@@ -0,0 +1,193 @@
|
|
1
|
+
.wrapper.registrations_index
|
2
|
+
.main_content
|
3
|
+
overflow: hidden
|
4
|
+
padding-top: 0px
|
5
|
+
.intro
|
6
|
+
float: left
|
7
|
+
width: 550px
|
8
|
+
padding-top: 80px
|
9
|
+
h5
|
10
|
+
display: inline
|
11
|
+
margin-right: 10px
|
12
|
+
h3.join
|
13
|
+
width: 100px
|
14
|
+
.columns
|
15
|
+
float: right
|
16
|
+
width: 280px
|
17
|
+
.flash_wrapper
|
18
|
+
.flash_message.alert
|
19
|
+
background: #c21a1a
|
20
|
+
color: #fff
|
21
|
+
|
22
|
+
.registrations_create
|
23
|
+
li.selected, li.hover
|
24
|
+
background: #eee
|
25
|
+
|
26
|
+
.users_show
|
27
|
+
.main_content
|
28
|
+
ul.list li
|
29
|
+
overflow: hidden
|
30
|
+
.label
|
31
|
+
float: left
|
32
|
+
width: 150px
|
33
|
+
.value
|
34
|
+
float: left
|
35
|
+
width: 300px
|
36
|
+
.list_header
|
37
|
+
overflow: hidden
|
38
|
+
h3
|
39
|
+
float: left
|
40
|
+
width: 200px
|
41
|
+
h5
|
42
|
+
float: right
|
43
|
+
width: 100px
|
44
|
+
text-align: right
|
45
|
+
|
46
|
+
.areas_show, .admin_areas_issues_show
|
47
|
+
.main_content
|
48
|
+
.stats
|
49
|
+
margin-bottom: 20px
|
50
|
+
h2, h3
|
51
|
+
margin-bottom: 0px
|
52
|
+
ul.list
|
53
|
+
padding-top: 20px
|
54
|
+
li
|
55
|
+
padding: 10px 5px
|
56
|
+
h4
|
57
|
+
margin-bottom: 0px
|
58
|
+
p.meta
|
59
|
+
text-transform: uppercase
|
60
|
+
font-size: 10px
|
61
|
+
line-height: 15px
|
62
|
+
color: #6E666E
|
63
|
+
|
64
|
+
.admin_areas_edit_borders
|
65
|
+
#map_canvas
|
66
|
+
#google_map
|
67
|
+
.editor_button
|
68
|
+
font: 12px/12px Arial,sans-serif
|
69
|
+
background: #fff
|
70
|
+
color: #000
|
71
|
+
border: solid #000 2px
|
72
|
+
margin: 5px
|
73
|
+
padding: 2px 4px
|
74
|
+
cursor: pointer
|
75
|
+
.disabled
|
76
|
+
color: #bbb
|
77
|
+
border: solid #bbb 2px
|
78
|
+
cursor: default
|
79
|
+
.flash_message
|
80
|
+
position: absolute
|
81
|
+
z-index: 100
|
82
|
+
padding: 2px 5px
|
83
|
+
margin: 5px 0px 0px 70px
|
84
|
+
font: 12px/12px Arial,sans-serif
|
85
|
+
float: none
|
86
|
+
border: solid #000 1px
|
87
|
+
background-color: #c4d2a6
|
88
|
+
color: #000
|
89
|
+
.flash_message.alert
|
90
|
+
background-color: #f2d9d9
|
91
|
+
color: #c21a1a
|
92
|
+
.region_details
|
93
|
+
position: absolute
|
94
|
+
z-index: 100
|
95
|
+
padding: 2px 5px
|
96
|
+
margin: 5px 0px 0px 200px
|
97
|
+
font: 12px/12px Arial,sans-serif
|
98
|
+
float: none
|
99
|
+
border: solid #000 1px
|
100
|
+
background-color: #a6c4d2
|
101
|
+
color: #000
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
.posts
|
106
|
+
border-bottom: 1px solid #a6a8ab
|
107
|
+
margin-bottom: 10px
|
108
|
+
.post
|
109
|
+
overflow: hidden
|
110
|
+
padding: 5px 0
|
111
|
+
.select
|
112
|
+
float: left
|
113
|
+
width: 20px
|
114
|
+
.content
|
115
|
+
float: left
|
116
|
+
width: 360px
|
117
|
+
h6
|
118
|
+
margin-bottom: 0px
|
119
|
+
.meta
|
120
|
+
font-size: 10px
|
121
|
+
text-transform: uppercase
|
122
|
+
input[type=text], textarea
|
123
|
+
width: 350px
|
124
|
+
margin-bottom: 10px
|
125
|
+
.edit_post
|
126
|
+
.ajax-loader
|
127
|
+
display: inline-block
|
128
|
+
width: 14px
|
129
|
+
height: 14px
|
130
|
+
.status
|
131
|
+
float: left
|
132
|
+
width: 40px
|
133
|
+
a
|
134
|
+
width: 20px
|
135
|
+
height: 20px
|
136
|
+
display: block
|
137
|
+
background-repeat: no-repeat
|
138
|
+
background-position: center
|
139
|
+
a.reviewed
|
140
|
+
background-image: url('/images/icons/post_reviewed.png')
|
141
|
+
a.unreviewed
|
142
|
+
background-image: url('/images/icons/post_new.png')
|
143
|
+
|
144
|
+
.header
|
145
|
+
overflow: hidden
|
146
|
+
border-bottom: 1px solid #a6a8ab
|
147
|
+
padding: 5px 0
|
148
|
+
.select
|
149
|
+
float: left
|
150
|
+
width: 20px
|
151
|
+
.text
|
152
|
+
float: left
|
153
|
+
width: 400px
|
154
|
+
font-weight: bold
|
155
|
+
|
156
|
+
.right_column
|
157
|
+
.posts
|
158
|
+
.status
|
159
|
+
cursor: move
|
160
|
+
|
161
|
+
#chart-container
|
162
|
+
margin-bottom: 20px
|
163
|
+
width: 100%
|
164
|
+
height: 200px
|
165
|
+
|
166
|
+
.area_issues_index
|
167
|
+
.left_column
|
168
|
+
ul.list li
|
169
|
+
overflow: hidden
|
170
|
+
.post
|
171
|
+
float: left
|
172
|
+
width: 270px
|
173
|
+
margin-bottom: 20px
|
174
|
+
h4
|
175
|
+
margin-bottom: 0px
|
176
|
+
p.meta
|
177
|
+
font-size: 10px
|
178
|
+
text-transform: uppercase
|
179
|
+
.right_column
|
180
|
+
.pagination
|
181
|
+
float: none
|
182
|
+
|
183
|
+
.area_issues_show
|
184
|
+
.pagination
|
185
|
+
float: none
|
186
|
+
|
187
|
+
.users_edit
|
188
|
+
.delete_account
|
189
|
+
color: #ecbdbd
|
190
|
+
a
|
191
|
+
color: #ecbdbd
|
192
|
+
a:hover
|
193
|
+
color: #cc0000
|
@@ -0,0 +1,46 @@
|
|
1
|
+
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td
|
2
|
+
margin: 0
|
3
|
+
padding: 0
|
4
|
+
|
5
|
+
table
|
6
|
+
border-collapse: collapse
|
7
|
+
border-spacing: 0
|
8
|
+
|
9
|
+
fieldset, img
|
10
|
+
border: 0
|
11
|
+
|
12
|
+
img
|
13
|
+
display: block
|
14
|
+
|
15
|
+
address, caption, cite, code, dfn, var
|
16
|
+
font-style: normal
|
17
|
+
font-weight: normal
|
18
|
+
|
19
|
+
ol, ul
|
20
|
+
list-style: none
|
21
|
+
|
22
|
+
caption, th
|
23
|
+
text-align: left
|
24
|
+
|
25
|
+
h1, h2, h3, h4, h5, h6
|
26
|
+
font-size: 100%
|
27
|
+
|
28
|
+
q:before, q:after
|
29
|
+
content: ''
|
30
|
+
|
31
|
+
abbr, acronym
|
32
|
+
border: 0
|
33
|
+
|
34
|
+
sup, sub
|
35
|
+
height: 0
|
36
|
+
line-height: 1
|
37
|
+
vertical-align: baseline
|
38
|
+
_vertical-align: bottom
|
39
|
+
position: relative
|
40
|
+
|
41
|
+
sup
|
42
|
+
bottom: 1ex
|
43
|
+
|
44
|
+
sub
|
45
|
+
top: .5ex
|
46
|
+
left: -0.25em
|
@@ -0,0 +1,57 @@
|
|
1
|
+
a
|
2
|
+
color: #00AFDB
|
3
|
+
text-decoration: none
|
4
|
+
a:hover
|
5
|
+
text-decoration: underline
|
6
|
+
|
7
|
+
h1
|
8
|
+
font: 50px/55px Georgia, serif
|
9
|
+
color: #2D212D
|
10
|
+
em
|
11
|
+
font-style: italic
|
12
|
+
h2
|
13
|
+
font: 35px/38px Georgia, serif
|
14
|
+
color: #2D212D
|
15
|
+
h3
|
16
|
+
font: 20px/28px Georgia, serif
|
17
|
+
color: #6E666E
|
18
|
+
text-transform: none
|
19
|
+
em
|
20
|
+
font-style: italic
|
21
|
+
strong
|
22
|
+
font-weight: normal
|
23
|
+
color: #2D212D
|
24
|
+
|
25
|
+
h4
|
26
|
+
font: 15px/20px Georgia, serif
|
27
|
+
color: #2D212D
|
28
|
+
|
29
|
+
h5
|
30
|
+
font: bold 13px/20px Arial, sans-serif
|
31
|
+
color: #fff
|
32
|
+
a
|
33
|
+
text-decoration: none
|
34
|
+
background-color: #00AFDB
|
35
|
+
padding: 4px 5px
|
36
|
+
color: #fff
|
37
|
+
a.active
|
38
|
+
background-color: #2D212D
|
39
|
+
|
40
|
+
h1,h2
|
41
|
+
margin-bottom: 20px
|
42
|
+
h3,h4,h5
|
43
|
+
margin-bottom: 10px
|
44
|
+
|
45
|
+
p+p
|
46
|
+
margin-top: 10px
|
47
|
+
|
48
|
+
p, ul, table, .posts
|
49
|
+
font: 13px/20px Arial, sans-serif
|
50
|
+
color: #2D212D
|
51
|
+
|
52
|
+
|
53
|
+
label
|
54
|
+
font: 10px/20px Arial, sans-serif
|
55
|
+
color: #6E666E
|
56
|
+
text-transform: uppercase
|
57
|
+
letter-spacing: 1px
|
@@ -0,0 +1,32 @@
|
|
1
|
+
<p>To POST your message, email to <%= mail_to(@issue.area.email) %></p>
|
2
|
+
|
3
|
+
|
4
|
+
<h2><%= "#{@issue.area.name} NEIGHBORHOOD FORUM NO.#{@issue.number}".upcase %></h2>
|
5
|
+
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
<% @issue.posts.order(:position).each do |post| %>
|
10
|
+
<h3><%=post.title %></h3>
|
11
|
+
<p class="author">
|
12
|
+
By
|
13
|
+
<strong><%= post.user_first_name%> <%= post.user_last_name%>, <%=post.user_address %></strong>
|
14
|
+
</p>
|
15
|
+
|
16
|
+
<% end %>
|
17
|
+
|
18
|
+
|
19
|
+
<% @issue.posts.order(:position).each do |post| %>
|
20
|
+
<br/>
|
21
|
+
<hr/>
|
22
|
+
<br/>
|
23
|
+
<h3><%= post.title %></h3>
|
24
|
+
<p class="author">
|
25
|
+
By
|
26
|
+
<strong><%= post.user_first_name%> <%= post.user_last_name%>, <%=post.user_address %>, <%= mail_to(post.user_email) %></strong>
|
27
|
+
<br/>
|
28
|
+
<%= post.created_at.to_date.to_s(:long)%>
|
29
|
+
<br/>Post your note to neighbors: <%= mail_to(@issue.area.email) %>
|
30
|
+
</p>
|
31
|
+
<%= simple_format(auto_link(post.content)) %>
|
32
|
+
<% end %>
|
@@ -0,0 +1,26 @@
|
|
1
|
+
To POST your message, email to <%= mail_to(@issue.area.email) %>
|
2
|
+
|
3
|
+
<%= "#{@issue.area.name} NEIGHBORHOOD FORUM NO.#{@issue.number}".upcase %>
|
4
|
+
|
5
|
+
|
6
|
+
<% @issue.posts.order(:position).each do |post| %>
|
7
|
+
<%=post.title.upcase %>
|
8
|
+
By <%= post.user_first_name%> <%= post.user_last_name%>, <%=post.user_address %>
|
9
|
+
|
10
|
+
<% end %>
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
<% @issue.posts.order(:position).each do |post| %>
|
15
|
+
---------------------------------------------
|
16
|
+
|
17
|
+
|
18
|
+
<%= post.title.upcase %>
|
19
|
+
By <%= post.user_first_name%> <%= post.user_last_name%>, <%=post.user_address %>, <%=post.user_email %>
|
20
|
+
<%= post.created_at.to_date.to_s(:long) %>
|
21
|
+
Post your note to neighbors: <%= mail_to(@issue.area.email) %>
|
22
|
+
|
23
|
+
<%= post.content %>
|
24
|
+
|
25
|
+
<% end %>
|
26
|
+
|
@@ -0,0 +1,7 @@
|
|
1
|
+
<p>Hi <%= @user.first_name %></p>
|
2
|
+
|
3
|
+
<p>A new password was requested for this email address.</p>
|
4
|
+
|
5
|
+
<p>Please ignore this if you think this email is sent to you in error.</p>
|
6
|
+
|
7
|
+
<h2><%= link_to 'Reset your password', edit_password_url(:id => @user.perishable_token) %></h2
|
@@ -0,0 +1,11 @@
|
|
1
|
+
= render :partial => 'layouts/account_nav'
|
2
|
+
|
3
|
+
.columns
|
4
|
+
.left_column
|
5
|
+
%h2 Edit your details
|
6
|
+
= formatted_form_for @user, :url => user_path do |f|
|
7
|
+
= render :partial => 'form', :locals => {:f => f}
|
8
|
+
= f.submit 'Save', :cancel_url => link_to('cancel', user_path(@user))
|
9
|
+
.right_column
|
10
|
+
.delete_account
|
11
|
+
= link_to 'Click here if you wish to delete your account.', user_path, :method => :delete, :confirm => "Are you sure you want to delete your account? This action is irreversible."
|