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,65 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class SessionUserTest < ActiveSupport::TestCase
|
4
|
+
|
5
|
+
def test_create_defaults
|
6
|
+
session_user = SessionUser.new(
|
7
|
+
:email => 'test@test.com',
|
8
|
+
:password => 'password'
|
9
|
+
)
|
10
|
+
assert session_user.valid?
|
11
|
+
assert_equal session_user.email, 'test@test.com'
|
12
|
+
assert_equal session_user.password, 'password'
|
13
|
+
assert_nil session_user.user
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_create_requirements
|
17
|
+
session_user = SessionUser.new
|
18
|
+
assert !session_user.valid?
|
19
|
+
assert_errors_on session_user, :email, :password
|
20
|
+
assert session_user.errors[:email].include?("Please enter your email address")
|
21
|
+
assert session_user.errors[:email].include?("The email address you entered is not valid")
|
22
|
+
assert session_user.errors[:email].include?("The email address you entered is to short")
|
23
|
+
assert session_user.errors[:password].include?("Please choose a password")
|
24
|
+
assert session_user.errors[:password].include?("The password you entered is too short (minimum is 4 characters)")
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_successful_authentication
|
28
|
+
user = a User
|
29
|
+
user.update_attribute(:verified_at, Time.now)
|
30
|
+
assert user.is_verified?
|
31
|
+
|
32
|
+
session_user = SessionUser.create(
|
33
|
+
:email => user.email,
|
34
|
+
:password => user.password
|
35
|
+
)
|
36
|
+
assert session_user.valid?
|
37
|
+
assert_equal session_user.email, user.email
|
38
|
+
assert_equal session_user.password, user.password
|
39
|
+
assert_equal session_user.user, user
|
40
|
+
end
|
41
|
+
|
42
|
+
def test_failed_authentication
|
43
|
+
user = a User
|
44
|
+
session_user = SessionUser.create(
|
45
|
+
:email => user.email,
|
46
|
+
:password => '-bugus-'
|
47
|
+
)
|
48
|
+
assert session_user.valid?
|
49
|
+
assert_equal session_user.email, user.email
|
50
|
+
assert_equal session_user.password, '-bugus-'
|
51
|
+
assert_nil session_user.user
|
52
|
+
end
|
53
|
+
|
54
|
+
def test_unverified_email
|
55
|
+
user = a User
|
56
|
+
assert !user.is_verified?
|
57
|
+
|
58
|
+
session_user = SessionUser.create(
|
59
|
+
:email => user.email,
|
60
|
+
:password => user.password
|
61
|
+
)
|
62
|
+
assert_errors_on session_user, :email
|
63
|
+
assert session_user.errors[:email].include?("This email address needs to be verified before you can login. <a href='/resend-email-verification/#{session_user.user.email_verification_key}'>Resend verification</a>")
|
64
|
+
end
|
65
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class UserActivityTest < ActiveSupport::TestCase
|
4
|
+
|
5
|
+
def test_create_dummy
|
6
|
+
user_activity = a UserActivity
|
7
|
+
assert_created user_activity
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_create_requirements
|
11
|
+
user_activity = UserActivity.create
|
12
|
+
assert_errors_on user_activity, :name, :url
|
13
|
+
assert user_activity.errors[:name]
|
14
|
+
assert user_activity.errors[:url]
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_active_for_page_scope
|
18
|
+
assert_equal [], UserActivity.active_for_page('Test User1', '/admin/users')
|
19
|
+
u1 = UserActivity.find_or_create_by_name_and_url(:name => 'Test User1', :url => '/admin/users')
|
20
|
+
u2 = UserActivity.find_or_create_by_name_and_url(:name => 'Test User2', :url => '/admin/users')
|
21
|
+
assert_equal [u2], UserActivity.active_for_page('Test User1', '/admin/users')
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_set_expiration!
|
25
|
+
user_activity = a UserActivity
|
26
|
+
assert_not_nil user_activity.expires_at
|
27
|
+
user_activity.set_expiration!
|
28
|
+
assert (user_activity.expires_at > Time.now)
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class UserMailerTest < ActionMailer::TestCase
|
4
|
+
|
5
|
+
def test_password_reset
|
6
|
+
user = a User
|
7
|
+
user.reset_perishable_token!
|
8
|
+
assert_emails 1 do
|
9
|
+
response = UserMailer.password_reset(user).deliver.first
|
10
|
+
|
11
|
+
assert_equal "You have requested a new password", response.headers[:subject]
|
12
|
+
assert_equal 2, response.arguments['content'].length
|
13
|
+
response.arguments['content'].each do |content_type, body|
|
14
|
+
assert_match /#{user.perishable_token}/, body
|
15
|
+
end
|
16
|
+
assert_equal user.email, response.to[0]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class UserTest < ActiveSupport::TestCase
|
4
|
+
|
5
|
+
def test_create_defaults
|
6
|
+
user = User.new(
|
7
|
+
:email => 'user@example.com',
|
8
|
+
:password => 'tester',
|
9
|
+
:password_confirmation => 'tester',
|
10
|
+
:address => 'street 1',
|
11
|
+
:city => 'Burlington',
|
12
|
+
:state => 'Vermont',
|
13
|
+
:first_name => 'John',
|
14
|
+
:last_name => 'Tester'
|
15
|
+
)
|
16
|
+
user.save
|
17
|
+
assert_created user
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_create_requirements
|
21
|
+
user = User.create
|
22
|
+
|
23
|
+
assert_errors_on user, :email, :password, :address, :city, :state, :first_name, :last_name
|
24
|
+
assert user.errors[:email].include?("Please enter your email address")
|
25
|
+
assert user.errors[:email].include?("The email address you entered is not valid")
|
26
|
+
assert user.errors[:email].include?("The email address you entered is to short")
|
27
|
+
assert user.errors[:password].include?("Please choose a password")
|
28
|
+
assert user.errors[:password].include?("The password you entered is too short (minimum is 4 characters)")
|
29
|
+
assert user.errors[:address].include?("Please enter your full address")
|
30
|
+
assert user.errors[:city].include?("Please enter your full address")
|
31
|
+
assert user.errors[:state].include?("Please enter your full address")
|
32
|
+
assert user.is_regular_user?
|
33
|
+
end
|
34
|
+
|
35
|
+
def test_create_dummy
|
36
|
+
user = a User
|
37
|
+
assert_created user
|
38
|
+
end
|
39
|
+
|
40
|
+
def test_cascade_deletions
|
41
|
+
user = a User
|
42
|
+
assert_created user
|
43
|
+
membership = user.memberships.create_dummy
|
44
|
+
assert_created membership
|
45
|
+
post = user.posts.create_dummy
|
46
|
+
assert_created post
|
47
|
+
assert_difference ['User.count', 'Membership.count'], -1 do
|
48
|
+
assert_no_difference 'Post.count' do
|
49
|
+
user.destroy
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
def test_member_of?
|
55
|
+
user = a User
|
56
|
+
assert_created user
|
57
|
+
membership = user.memberships.create_dummy
|
58
|
+
assert user.member_of?(membership.area)
|
59
|
+
end
|
60
|
+
|
61
|
+
end
|
File without changes
|
metadata
ADDED
@@ -0,0 +1,456 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: open_porch
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease:
|
5
|
+
version: 0.5.0
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- The Working Group Inc
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
|
13
|
+
date: 2011-03-22 00:00:00 -06:00
|
14
|
+
default_executable: open_porch_engine
|
15
|
+
dependencies:
|
16
|
+
- !ruby/object:Gem::Dependency
|
17
|
+
name: rails
|
18
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
19
|
+
none: false
|
20
|
+
requirements:
|
21
|
+
- - ">="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 3.0.4
|
24
|
+
type: :runtime
|
25
|
+
prerelease: false
|
26
|
+
version_requirements: *id001
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: pg
|
29
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
30
|
+
none: false
|
31
|
+
requirements:
|
32
|
+
- - "="
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: 0.10.1
|
35
|
+
type: :runtime
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: *id002
|
38
|
+
- !ruby/object:Gem::Dependency
|
39
|
+
name: haml
|
40
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - "="
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 3.0.25
|
46
|
+
type: :runtime
|
47
|
+
prerelease: false
|
48
|
+
version_requirements: *id003
|
49
|
+
- !ruby/object:Gem::Dependency
|
50
|
+
name: spatial_adapter
|
51
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
52
|
+
none: false
|
53
|
+
requirements:
|
54
|
+
- - "="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: 1.2.0
|
57
|
+
type: :runtime
|
58
|
+
prerelease: false
|
59
|
+
version_requirements: *id004
|
60
|
+
- !ruby/object:Gem::Dependency
|
61
|
+
name: wristband
|
62
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
63
|
+
none: false
|
64
|
+
requirements:
|
65
|
+
- - ">="
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: 1.0.4
|
68
|
+
type: :runtime
|
69
|
+
prerelease: false
|
70
|
+
version_requirements: *id005
|
71
|
+
- !ruby/object:Gem::Dependency
|
72
|
+
name: formatted_form
|
73
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
74
|
+
none: false
|
75
|
+
requirements:
|
76
|
+
- - ">="
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
version: 1.0.1
|
79
|
+
type: :runtime
|
80
|
+
prerelease: false
|
81
|
+
version_requirements: *id006
|
82
|
+
- !ruby/object:Gem::Dependency
|
83
|
+
name: geokit
|
84
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
85
|
+
none: false
|
86
|
+
requirements:
|
87
|
+
- - "="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 1.5.0
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: *id007
|
93
|
+
- !ruby/object:Gem::Dependency
|
94
|
+
name: active_link_to
|
95
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
96
|
+
none: false
|
97
|
+
requirements:
|
98
|
+
- - "="
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: 0.0.6
|
101
|
+
type: :runtime
|
102
|
+
prerelease: false
|
103
|
+
version_requirements: *id008
|
104
|
+
- !ruby/object:Gem::Dependency
|
105
|
+
name: meta_where
|
106
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
107
|
+
none: false
|
108
|
+
requirements:
|
109
|
+
- - "="
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: 1.0.1
|
112
|
+
type: :runtime
|
113
|
+
prerelease: false
|
114
|
+
version_requirements: *id009
|
115
|
+
- !ruby/object:Gem::Dependency
|
116
|
+
name: meta_search
|
117
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
118
|
+
none: false
|
119
|
+
requirements:
|
120
|
+
- - "="
|
121
|
+
- !ruby/object:Gem::Version
|
122
|
+
version: 1.0.1
|
123
|
+
type: :runtime
|
124
|
+
prerelease: false
|
125
|
+
version_requirements: *id010
|
126
|
+
- !ruby/object:Gem::Dependency
|
127
|
+
name: will_paginate
|
128
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
130
|
+
requirements:
|
131
|
+
- - ~>
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: 3.0.pre2
|
134
|
+
type: :runtime
|
135
|
+
prerelease: false
|
136
|
+
version_requirements: *id011
|
137
|
+
- !ruby/object:Gem::Dependency
|
138
|
+
name: whenever
|
139
|
+
requirement: &id012 !ruby/object:Gem::Requirement
|
140
|
+
none: false
|
141
|
+
requirements:
|
142
|
+
- - "="
|
143
|
+
- !ruby/object:Gem::Version
|
144
|
+
version: 0.6.2
|
145
|
+
type: :runtime
|
146
|
+
prerelease: false
|
147
|
+
version_requirements: *id012
|
148
|
+
- !ruby/object:Gem::Dependency
|
149
|
+
name: postageapp
|
150
|
+
requirement: &id013 !ruby/object:Gem::Requirement
|
151
|
+
none: false
|
152
|
+
requirements:
|
153
|
+
- - ">="
|
154
|
+
- !ruby/object:Gem::Version
|
155
|
+
version: "0"
|
156
|
+
type: :runtime
|
157
|
+
prerelease: false
|
158
|
+
version_requirements: *id013
|
159
|
+
description: ""
|
160
|
+
email: jack@theworkinggroup.ca
|
161
|
+
executables:
|
162
|
+
- open_porch_engine
|
163
|
+
extensions: []
|
164
|
+
|
165
|
+
extra_rdoc_files:
|
166
|
+
- README.md
|
167
|
+
files:
|
168
|
+
- Gemfile
|
169
|
+
- Gemfile.lock
|
170
|
+
- README.md
|
171
|
+
- Rakefile
|
172
|
+
- VERSION
|
173
|
+
- app/controllers/admin/areas/base_controller.rb
|
174
|
+
- app/controllers/admin/areas/issues_controller.rb
|
175
|
+
- app/controllers/admin/areas/memberships_controller.rb
|
176
|
+
- app/controllers/admin/areas/posts_controller.rb
|
177
|
+
- app/controllers/admin/areas_controller.rb
|
178
|
+
- app/controllers/admin/base_controller.rb
|
179
|
+
- app/controllers/admin/user_activity_controller.rb
|
180
|
+
- app/controllers/admin/users_controller.rb
|
181
|
+
- app/controllers/application_controller.rb
|
182
|
+
- app/controllers/areas/base_controller.rb
|
183
|
+
- app/controllers/areas/issues_controller.rb
|
184
|
+
- app/controllers/areas/posts_controller.rb
|
185
|
+
- app/controllers/areas_controller.rb
|
186
|
+
- app/controllers/passwords_controller.rb
|
187
|
+
- app/controllers/registrations_controller.rb
|
188
|
+
- app/controllers/sessions_controller.rb
|
189
|
+
- app/controllers/users_controller.rb
|
190
|
+
- app/helpers/open_porch_helper.rb
|
191
|
+
- app/mailers/user_mailer.rb
|
192
|
+
- app/models/address.rb
|
193
|
+
- app/models/area.rb
|
194
|
+
- app/models/area_activity.rb
|
195
|
+
- app/models/email_message.rb
|
196
|
+
- app/models/issue.rb
|
197
|
+
- app/models/issue_number.rb
|
198
|
+
- app/models/membership.rb
|
199
|
+
- app/models/post.rb
|
200
|
+
- app/models/session_user.rb
|
201
|
+
- app/models/user.rb
|
202
|
+
- app/models/user_activity.rb
|
203
|
+
- app/models/user_authority_check.rb
|
204
|
+
- app/views/admin/areas/_form.html.haml
|
205
|
+
- app/views/admin/areas/_nav.html.haml
|
206
|
+
- app/views/admin/areas/edit.html.haml
|
207
|
+
- app/views/admin/areas/edit_borders.html.haml
|
208
|
+
- app/views/admin/areas/index.html.haml
|
209
|
+
- app/views/admin/areas/issues/_post.html.haml
|
210
|
+
- app/views/admin/areas/issues/add_posts.js.rjs
|
211
|
+
- app/views/admin/areas/issues/edit.html.haml
|
212
|
+
- app/views/admin/areas/issues/index.html.haml
|
213
|
+
- app/views/admin/areas/issues/remove_posts.js.rjs
|
214
|
+
- app/views/admin/areas/issues/show.html.haml
|
215
|
+
- app/views/admin/areas/memberships/index.html.haml
|
216
|
+
- app/views/admin/areas/new.html.haml
|
217
|
+
- app/views/admin/areas/new.js.haml
|
218
|
+
- app/views/admin/areas/posts/_edit.html.haml
|
219
|
+
- app/views/admin/areas/posts/_post_status.html.haml
|
220
|
+
- app/views/admin/areas/posts/destroy.js.rjs
|
221
|
+
- app/views/admin/areas/posts/edit.js.rjs
|
222
|
+
- app/views/admin/areas/posts/show.js.rjs
|
223
|
+
- app/views/admin/areas/posts/toggle_reviewed_by.js.rjs
|
224
|
+
- app/views/admin/areas/posts/update.js.rjs
|
225
|
+
- app/views/admin/areas/show.html.haml
|
226
|
+
- app/views/admin/user_activity/show.html.haml
|
227
|
+
- app/views/admin/users/_form.html.haml
|
228
|
+
- app/views/admin/users/edit.html.haml
|
229
|
+
- app/views/admin/users/index.html.haml
|
230
|
+
- app/views/admin/users/new.html.haml
|
231
|
+
- app/views/areas/issues/index.html.haml
|
232
|
+
- app/views/areas/issues/show.html.haml
|
233
|
+
- app/views/areas/posts/_post.html.haml
|
234
|
+
- app/views/areas/posts/_posts_search_form.html.haml
|
235
|
+
- app/views/areas/posts/index.html.haml
|
236
|
+
- app/views/areas/posts/new.html.haml
|
237
|
+
- app/views/areas/show.html.haml
|
238
|
+
- app/views/layouts/_account_nav.html.haml
|
239
|
+
- app/views/layouts/_flash_message.html.haml
|
240
|
+
- app/views/layouts/_footer.html.haml
|
241
|
+
- app/views/layouts/_head.html.haml
|
242
|
+
- app/views/layouts/admin.html.haml
|
243
|
+
- app/views/layouts/admin/_nav.html.haml
|
244
|
+
- app/views/layouts/application.html.haml
|
245
|
+
- app/views/layouts/area_editor.html.haml
|
246
|
+
- app/views/passwords/edit.html.haml
|
247
|
+
- app/views/passwords/new.html.haml
|
248
|
+
- app/views/registrations/_address_form.html.haml
|
249
|
+
- app/views/registrations/create.html.haml
|
250
|
+
- app/views/registrations/index.html.haml
|
251
|
+
- app/views/registrations/new.html.haml
|
252
|
+
- app/views/sessions/new.html.haml
|
253
|
+
- app/views/stylesheets/common.sass
|
254
|
+
- app/views/stylesheets/content.sass
|
255
|
+
- app/views/stylesheets/reset.sass
|
256
|
+
- app/views/stylesheets/structure.sass
|
257
|
+
- app/views/stylesheets/typography.sass
|
258
|
+
- app/views/user_mailer/email_verification.html.erb
|
259
|
+
- app/views/user_mailer/email_verification.text.erb
|
260
|
+
- app/views/user_mailer/new_issue.html.erb
|
261
|
+
- app/views/user_mailer/new_issue.text.erb
|
262
|
+
- app/views/user_mailer/password_reset.html.erb
|
263
|
+
- app/views/user_mailer/password_reset.text.erb
|
264
|
+
- app/views/users/_form.html.haml
|
265
|
+
- app/views/users/edit.html.haml
|
266
|
+
- app/views/users/new.html.haml
|
267
|
+
- app/views/users/show.html.haml
|
268
|
+
- bin/open_porch_engine
|
269
|
+
- config.ru
|
270
|
+
- config/application.rb
|
271
|
+
- config/boot.rb
|
272
|
+
- config/database_example.yml
|
273
|
+
- config/environment.rb
|
274
|
+
- config/environments/development.rb
|
275
|
+
- config/environments/production.rb
|
276
|
+
- config/environments/test.rb
|
277
|
+
- config/initializers/backtrace_silencers.rb
|
278
|
+
- config/initializers/email_regex.rb
|
279
|
+
- config/initializers/geokit_config.rb
|
280
|
+
- config/initializers/inflections.rb
|
281
|
+
- config/initializers/meta_search.rb
|
282
|
+
- config/initializers/mime_types.rb
|
283
|
+
- config/initializers/open_porch.rb
|
284
|
+
- config/initializers/sass.rb
|
285
|
+
- config/initializers/secret_token.rb
|
286
|
+
- config/initializers/session_store.rb
|
287
|
+
- config/initializers/states_provinces.rb
|
288
|
+
- config/initializers/will_paginate.rb
|
289
|
+
- config/locales/en.yml
|
290
|
+
- config/open_porch_example.yml
|
291
|
+
- config/routes.rb
|
292
|
+
- config/schedule.rb
|
293
|
+
- db/migrate/01_create_areas.rb
|
294
|
+
- db/migrate/02_create_users.rb
|
295
|
+
- db/migrate/03_create_memberships.rb
|
296
|
+
- db/migrate/04_create_posts.rb
|
297
|
+
- db/migrate/05_create_issue_numbers.rb
|
298
|
+
- db/migrate/06_create_issues.rb
|
299
|
+
- db/migrate/20110204173301_add_published_to_areas.rb
|
300
|
+
- db/migrate/20110204194840_create_user_activities.rb
|
301
|
+
- db/migrate/20110208163604_add_zip_to_areas.rb
|
302
|
+
- db/migrate/20110209175723_add_counters_to_areas.rb
|
303
|
+
- db/migrate/20110209182244_remove_subject_from_issues.rb
|
304
|
+
- db/migrate/20110209190146_add_reviewer_info_to_posts.rb
|
305
|
+
- db/migrate/20110215173144_add_email_validation_key_to_users.rb
|
306
|
+
- db/migrate/20110215182716_remove_published_from_areas.rb
|
307
|
+
- db/migrate/20110215211012_create_area_activities.rb
|
308
|
+
- db/migrate/20110215213802_create_email_messages.rb
|
309
|
+
- db/migrate/20110217165018_change_send_mode_to_string.rb
|
310
|
+
- db/migrate/20110223160609_denormalize_user_info_in_posts.rb
|
311
|
+
- db/seeds.rb
|
312
|
+
- doc/README_FOR_APP
|
313
|
+
- lib/generators/open_porch_generator.rb
|
314
|
+
- lib/open_porch.rb
|
315
|
+
- lib/open_porch/engine.rb
|
316
|
+
- lib/tasks/.gitkeep
|
317
|
+
- lib/tasks/open_porch.rake
|
318
|
+
- lib/tasks/postageapp_tasks.rake
|
319
|
+
- open_porch.gemspec
|
320
|
+
- public/404.html
|
321
|
+
- public/422.html
|
322
|
+
- public/500.html
|
323
|
+
- public/favicon.ico
|
324
|
+
- public/images/icons/ajax-loader.gif
|
325
|
+
- public/images/icons/calendar.png
|
326
|
+
- public/images/icons/post_new.png
|
327
|
+
- public/images/icons/post_reviewed.png
|
328
|
+
- public/javascripts/application.js
|
329
|
+
- public/javascripts/google_maps.js
|
330
|
+
- public/javascripts/highcharts.js
|
331
|
+
- public/javascripts/highcharts_init.js
|
332
|
+
- public/javascripts/issue_edit.js
|
333
|
+
- public/javascripts/jquery-ui.min.js
|
334
|
+
- public/javascripts/jquery.js
|
335
|
+
- public/javascripts/rails.js
|
336
|
+
- public/javascripts/region_editor.js
|
337
|
+
- public/javascripts/user_activity.js
|
338
|
+
- public/robots.txt
|
339
|
+
- public/stylesheets/images/ui-bg_flat_0_aaaaaa_40x100.png
|
340
|
+
- public/stylesheets/images/ui-bg_flat_75_ffffff_40x100.png
|
341
|
+
- public/stylesheets/images/ui-bg_glass_55_fbf9ee_1x400.png
|
342
|
+
- public/stylesheets/images/ui-bg_glass_65_ffffff_1x400.png
|
343
|
+
- public/stylesheets/images/ui-bg_glass_75_dadada_1x400.png
|
344
|
+
- public/stylesheets/images/ui-bg_glass_75_e6e6e6_1x400.png
|
345
|
+
- public/stylesheets/images/ui-bg_glass_95_fef1ec_1x400.png
|
346
|
+
- public/stylesheets/images/ui-bg_highlight-soft_75_cccccc_1x100.png
|
347
|
+
- public/stylesheets/images/ui-icons_222222_256x240.png
|
348
|
+
- public/stylesheets/images/ui-icons_2e83ff_256x240.png
|
349
|
+
- public/stylesheets/images/ui-icons_454545_256x240.png
|
350
|
+
- public/stylesheets/images/ui-icons_888888_256x240.png
|
351
|
+
- public/stylesheets/images/ui-icons_cd0a0a_256x240.png
|
352
|
+
- public/stylesheets/jquery-ui.css
|
353
|
+
- script/rails
|
354
|
+
- test/dummy/area.rb
|
355
|
+
- test/dummy/area_activity.rb
|
356
|
+
- test/dummy/issue.rb
|
357
|
+
- test/dummy/membership.rb
|
358
|
+
- test/dummy/post.rb
|
359
|
+
- test/dummy/user.rb
|
360
|
+
- test/dummy/user_activity.rb
|
361
|
+
- test/functional/admin/areas/issues_controller_test.rb
|
362
|
+
- test/functional/admin/areas/memberships_controller_test.rb
|
363
|
+
- test/functional/admin/areas/posts_controller_test.rb
|
364
|
+
- test/functional/admin/areas_controller_test.rb
|
365
|
+
- test/functional/admin/base_controller_test.rb
|
366
|
+
- test/functional/admin/user_activity_controller_test.rb
|
367
|
+
- test/functional/admin/users_controller_test.rb
|
368
|
+
- test/functional/areas/issues_controller_test.rb
|
369
|
+
- test/functional/areas/posts_controller_test.rb
|
370
|
+
- test/functional/areas_controller_test.rb
|
371
|
+
- test/functional/passwords_controller_test.rb
|
372
|
+
- test/functional/registrations_controller_test.rb
|
373
|
+
- test/functional/sessions_controller_test.rb
|
374
|
+
- test/functional/users_controller_test.rb
|
375
|
+
- test/performance/browsing_test.rb
|
376
|
+
- test/test_helper.rb
|
377
|
+
- test/unit/address_test.rb
|
378
|
+
- test/unit/area_activity_test.rb
|
379
|
+
- test/unit/area_test.rb
|
380
|
+
- test/unit/email_message_test.rb
|
381
|
+
- test/unit/issue_number_test.rb
|
382
|
+
- test/unit/issue_test.rb
|
383
|
+
- test/unit/membership_test.rb
|
384
|
+
- test/unit/post_test.rb
|
385
|
+
- test/unit/session_user_test.rb
|
386
|
+
- test/unit/user_activity_test.rb
|
387
|
+
- test/unit/user_mailer_test.rb
|
388
|
+
- test/unit/user_test.rb
|
389
|
+
- vendor/plugins/.gitkeep
|
390
|
+
has_rdoc: true
|
391
|
+
homepage: http://github.com/FrontPorchForum/open_porch
|
392
|
+
licenses:
|
393
|
+
- MIT
|
394
|
+
post_install_message:
|
395
|
+
rdoc_options: []
|
396
|
+
|
397
|
+
require_paths:
|
398
|
+
- lib
|
399
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
400
|
+
none: false
|
401
|
+
requirements:
|
402
|
+
- - ">="
|
403
|
+
- !ruby/object:Gem::Version
|
404
|
+
hash: 3613787567784704505
|
405
|
+
segments:
|
406
|
+
- 0
|
407
|
+
version: "0"
|
408
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
409
|
+
none: false
|
410
|
+
requirements:
|
411
|
+
- - ">="
|
412
|
+
- !ruby/object:Gem::Version
|
413
|
+
version: "0"
|
414
|
+
requirements: []
|
415
|
+
|
416
|
+
rubyforge_project:
|
417
|
+
rubygems_version: 1.5.2
|
418
|
+
signing_key:
|
419
|
+
specification_version: 3
|
420
|
+
summary: Open Porch is Rails Engine
|
421
|
+
test_files:
|
422
|
+
- test/dummy/area.rb
|
423
|
+
- test/dummy/area_activity.rb
|
424
|
+
- test/dummy/issue.rb
|
425
|
+
- test/dummy/membership.rb
|
426
|
+
- test/dummy/post.rb
|
427
|
+
- test/dummy/user.rb
|
428
|
+
- test/dummy/user_activity.rb
|
429
|
+
- test/functional/admin/areas/issues_controller_test.rb
|
430
|
+
- test/functional/admin/areas/memberships_controller_test.rb
|
431
|
+
- test/functional/admin/areas/posts_controller_test.rb
|
432
|
+
- test/functional/admin/areas_controller_test.rb
|
433
|
+
- test/functional/admin/base_controller_test.rb
|
434
|
+
- test/functional/admin/user_activity_controller_test.rb
|
435
|
+
- test/functional/admin/users_controller_test.rb
|
436
|
+
- test/functional/areas/issues_controller_test.rb
|
437
|
+
- test/functional/areas/posts_controller_test.rb
|
438
|
+
- test/functional/areas_controller_test.rb
|
439
|
+
- test/functional/passwords_controller_test.rb
|
440
|
+
- test/functional/registrations_controller_test.rb
|
441
|
+
- test/functional/sessions_controller_test.rb
|
442
|
+
- test/functional/users_controller_test.rb
|
443
|
+
- test/performance/browsing_test.rb
|
444
|
+
- test/test_helper.rb
|
445
|
+
- test/unit/address_test.rb
|
446
|
+
- test/unit/area_activity_test.rb
|
447
|
+
- test/unit/area_test.rb
|
448
|
+
- test/unit/email_message_test.rb
|
449
|
+
- test/unit/issue_number_test.rb
|
450
|
+
- test/unit/issue_test.rb
|
451
|
+
- test/unit/membership_test.rb
|
452
|
+
- test/unit/post_test.rb
|
453
|
+
- test/unit/session_user_test.rb
|
454
|
+
- test/unit/user_activity_test.rb
|
455
|
+
- test/unit/user_mailer_test.rb
|
456
|
+
- test/unit/user_test.rb
|