community_engine 2.3.2 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +13 -5
- data/.travis.yml +5 -4
- data/CHANGELOG +43 -5
- data/Gemfile +1 -16
- data/README.markdown +22 -19
- data/UPGRADING.markdown +10 -0
- data/about.yml +1 -1
- data/app/assets/javascripts/community_engine.js +187 -18
- data/app/assets/javascripts/cropper.js +86 -565
- data/app/assets/javascripts/forum.js +26 -71
- data/app/assets/javascripts/jquery.migrate.js +521 -0
- data/app/assets/stylesheets/_colors.css.scss +100 -0
- data/app/assets/stylesheets/_font.css.scss +17 -0
- data/app/assets/stylesheets/_forms.css.scss +20 -0
- data/app/assets/stylesheets/_forum.css.scss +0 -0
- data/app/assets/stylesheets/_grid.css.scss +7 -0
- data/app/assets/stylesheets/_layers.css.scss +7 -0
- data/app/assets/stylesheets/_layout.css.scss +28 -0
- data/app/assets/stylesheets/community_engine.css.scss +18 -0
- data/app/assets/stylesheets/cropper.css +6 -182
- data/app/controllers/activities_controller.rb +10 -10
- data/app/controllers/admin_controller.rb +23 -23
- data/app/controllers/ads_controller.rb +16 -5
- data/app/controllers/albums_controller.rb +11 -5
- data/app/controllers/base_controller.rb +5 -8
- data/app/controllers/categories_controller.rb +31 -31
- data/app/controllers/clippings_controller.rb +18 -12
- data/app/controllers/comments_controller.rb +17 -8
- data/app/controllers/events_controller.rb +25 -21
- data/app/controllers/favorites_controller.rb +12 -12
- data/app/controllers/forums_controller.rb +20 -9
- data/app/controllers/friendships_controller.rb +41 -48
- data/app/controllers/homepage_features_controller.rb +11 -5
- data/app/controllers/invitations_controller.rb +15 -9
- data/app/controllers/messages_controller.rb +25 -19
- data/app/controllers/metro_areas_controller.rb +9 -3
- data/app/controllers/moderators_controller.rb +1 -1
- data/app/controllers/monitorships_controller.rb +2 -2
- data/app/controllers/pages_controller.rb +16 -4
- data/app/controllers/password_resets_controller.rb +0 -1
- data/app/controllers/photos_controller.rb +32 -30
- data/app/controllers/posts_controller.rb +33 -17
- data/app/controllers/rsvps_controller.rb +8 -4
- data/app/controllers/sb_posts_controller.rb +22 -18
- data/app/controllers/sessions_controller.rb +2 -1
- data/app/controllers/sitemap_controller.rb +8 -8
- data/app/controllers/statistics_controller.rb +9 -8
- data/app/controllers/tags_controller.rb +26 -24
- data/app/controllers/topics_controller.rb +10 -6
- data/app/controllers/users_controller.rb +63 -34
- data/app/helpers/base_helper.rb +119 -29
- data/app/helpers/friendships_helper.rb +3 -3
- data/app/helpers/posts_helper.rb +5 -7
- data/app/models/acts_as_taggable_on/tag.rb +12 -13
- data/app/models/ad.rb +2 -5
- data/app/models/album.rb +0 -2
- data/app/models/category.rb +6 -7
- data/app/models/clipping.rb +2 -5
- data/app/models/clipping_image.rb +5 -5
- data/app/models/comment.rb +4 -5
- data/app/models/country.rb +2 -4
- data/app/models/event.rb +1 -2
- data/app/models/favorite.rb +5 -10
- data/app/models/forum.rb +0 -2
- data/app/models/friendship.rb +3 -5
- data/app/models/friendship_status.rb +0 -2
- data/app/models/homepage_feature.rb +4 -6
- data/app/models/invitation.rb +6 -8
- data/app/models/message.rb +25 -26
- data/app/models/message_thread.rb +1 -1
- data/app/models/metro_area.rb +0 -2
- data/app/models/page.rb +0 -2
- data/app/models/photo.rb +8 -8
- data/app/models/poll.rb +7 -9
- data/app/models/post.rb +11 -15
- data/app/models/role.rb +1 -2
- data/app/models/rsvp.rb +0 -3
- data/app/models/sb_post.rb +14 -9
- data/app/models/state.rb +0 -2
- data/app/models/topic.rb +5 -6
- data/app/models/user.rb +50 -63
- data/app/models/vote.rb +1 -1
- data/app/views/activities/_activity.html.haml +9 -9
- data/app/views/activities/destroy.js.erb +1 -0
- data/app/views/activities/index.html.haml +13 -13
- data/app/views/activities/network.html.haml +10 -13
- data/app/views/admin/comments.html.haml +48 -70
- data/app/views/admin/events.html.haml +20 -27
- data/app/views/admin/messages.html.haml +2 -3
- data/app/views/admin/update.js.erb +1 -0
- data/app/views/admin/users.html.haml +51 -66
- data/app/views/ads/_form.html.haml +21 -0
- data/app/views/ads/edit.html.haml +6 -46
- data/app/views/ads/index.html.haml +25 -39
- data/app/views/ads/new.html.haml +4 -43
- data/app/views/ads/show.html.haml +18 -35
- data/app/views/albums/_form.html.haml +17 -12
- data/app/views/albums/edit.html.haml +12 -14
- data/app/views/albums/new.html.haml +8 -13
- data/app/views/albums/show.html.haml +25 -32
- data/app/views/base/_homepage_banner_message.html.haml +5 -19
- data/app/views/base/advertise.html.haml +5 -8
- data/app/views/base/site_index.html.haml +25 -27
- data/app/views/categories/_form.html.haml +8 -0
- data/app/views/categories/_menu_item.html.haml +13 -0
- data/app/views/categories/_tips.html.haml +2 -2
- data/app/views/categories/edit.html.haml +3 -33
- data/app/views/categories/index.html.haml +18 -28
- data/app/views/categories/new.html.haml +3 -8
- data/app/views/categories/show.html.haml +33 -36
- data/app/views/clippings/_clipping.html.haml +10 -17
- data/app/views/clippings/_favorite.html.haml +14 -0
- data/app/views/clippings/_form.html.haml +15 -0
- data/app/views/clippings/_images.html.haml +1 -1
- data/app/views/clippings/_menu_item.html.haml +6 -0
- data/app/views/clippings/edit.html.haml +12 -23
- data/app/views/clippings/index.html.haml +29 -30
- data/app/views/clippings/load_images_from_uri.js.erb +1 -0
- data/app/views/clippings/new.html.haml +9 -26
- data/app/views/clippings/new_clipping.html.haml +30 -77
- data/app/views/clippings/show.html.haml +48 -53
- data/app/views/clippings/site_index.html.haml +19 -32
- data/app/views/comments/_comment.html.haml +40 -40
- data/app/views/comments/_comment_form.html.haml +22 -46
- data/app/views/comments/_edit_form.html.haml +13 -28
- data/app/views/comments/create.js.erb +25 -0
- data/app/views/comments/destroy.js.erb +3 -0
- data/app/views/comments/edit.js.erb +11 -0
- data/app/views/comments/index.html.haml +12 -22
- data/app/views/comments/update.js.erb +14 -0
- data/app/views/events/_event.html.haml +26 -24
- data/app/views/events/_form.html.haml +18 -0
- data/app/views/events/_menu_item.html.haml +6 -0
- data/app/views/events/_subscribe.html.haml +1 -1
- data/app/views/events/edit.html.haml +7 -32
- data/app/views/events/index.html.haml +11 -19
- data/app/views/events/new.html.haml +2 -31
- data/app/views/events/show.html.haml +54 -24
- data/app/views/favorites/create.js.erb +10 -0
- data/app/views/favorites/destroy.js.erb +6 -0
- data/app/views/favorites/index.html.haml +6 -8
- data/app/views/forums/_form.html.haml +10 -20
- data/app/views/forums/_menu_item.html.haml +6 -0
- data/app/views/forums/edit.html.haml +8 -10
- data/app/views/forums/index.html.haml +56 -64
- data/app/views/forums/new.html.haml +5 -8
- data/app/views/forums/show.html.haml +65 -72
- data/app/views/friendships/_friendship.html.haml +14 -16
- data/app/views/friendships/accepted.html.haml +7 -11
- data/app/views/friendships/create.js.haml +1 -0
- data/app/views/friendships/denied.html.haml +4 -8
- data/app/views/friendships/pending.html.haml +4 -6
- data/app/views/friendships/show.html.haml +10 -11
- data/app/views/homepage_features/_form.html.haml +6 -0
- data/app/views/homepage_features/edit.html.haml +5 -30
- data/app/views/homepage_features/index.html.haml +22 -28
- data/app/views/homepage_features/new.html.haml +2 -30
- data/app/views/homepage_features/show.html.haml +27 -29
- data/app/views/invitations/index.html.haml +8 -0
- data/app/views/invitations/new.html.haml +21 -30
- data/app/views/kaminari/bootstrap/_first_page.html.erb +13 -0
- data/app/views/kaminari/bootstrap/_gap.html.erb +8 -0
- data/app/views/kaminari/bootstrap/_last_page.html.erb +13 -0
- data/app/views/kaminari/bootstrap/_next_page.html.erb +13 -0
- data/app/views/kaminari/bootstrap/_page.html.erb +12 -0
- data/app/views/kaminari/bootstrap/_paginator.html.erb +25 -0
- data/app/views/kaminari/bootstrap/_prev_page.html.erb +13 -0
- data/app/views/layouts/application.html.haml +26 -37
- data/app/views/messages/_form.html.haml +6 -12
- data/app/views/messages/_inbox.html.haml +34 -39
- data/app/views/messages/_menu_item.html.haml +11 -0
- data/app/views/messages/_sent.html.haml +22 -33
- data/app/views/messages/_sidebar_nav.html.haml +12 -9
- data/app/views/messages/index.html.haml +2 -2
- data/app/views/messages/new.html.haml +2 -9
- data/app/views/messages/show.html.haml +28 -36
- data/app/views/metro_areas/_form.html.haml +6 -0
- data/app/views/metro_areas/edit.html.haml +6 -14
- data/app/views/metro_areas/index.html.haml +19 -26
- data/app/views/metro_areas/new.html.haml +4 -14
- data/app/views/metro_areas/show.html.haml +13 -21
- data/app/views/moderators/_toggle.html.haml +6 -0
- data/app/views/moderators/create.js.erb +5 -0
- data/app/views/moderators/destroy.js.erb +1 -0
- data/app/views/monitorships/create.js.erb +1 -0
- data/app/views/monitorships/destroy.js.erb +1 -0
- data/app/views/pages/_form.html.haml +16 -23
- data/app/views/pages/edit.html.haml +2 -14
- data/app/views/pages/index.html.haml +32 -32
- data/app/views/pages/new.html.haml +5 -12
- data/app/views/pages/show.html.haml +4 -8
- data/app/views/password_resets/edit.html.haml +6 -14
- data/app/views/password_resets/new.html.haml +7 -11
- data/app/views/photo_manager/index.html.haml +45 -43
- data/app/views/photos/_form.html.haml +24 -0
- data/app/views/photos/_manage_photos.html.haml +14 -6
- data/app/views/photos/_show_image_list.html.haml +2 -2
- data/app/views/photos/create.js.erb +1 -0
- data/app/views/photos/edit.html.haml +10 -38
- data/app/views/photos/index.html.haml +20 -20
- data/app/views/photos/manage_photos.js.erb +5 -0
- data/app/views/photos/new.html.haml +11 -49
- data/app/views/photos/recent.html.haml +6 -6
- data/app/views/photos/show.html.haml +48 -52
- data/app/views/polls/_edit.html.haml +6 -10
- data/app/views/polls/_excerpt.html.haml +3 -4
- data/app/views/polls/_new.html.haml +10 -9
- data/app/views/polls/_poll_ui.html.haml +30 -34
- data/app/views/posts/_author_profile.html.haml +12 -11
- data/app/views/posts/_favorited_post.html.haml +8 -10
- data/app/views/posts/_form.html.haml +40 -0
- data/app/views/posts/_menu_item.html.haml +6 -0
- data/app/views/posts/_post.html.haml +27 -24
- data/app/views/posts/_send_to_friend.html.haml +26 -0
- data/app/views/posts/edit.html.haml +11 -48
- data/app/views/posts/featured.html.haml +7 -12
- data/app/views/posts/index.html.haml +14 -18
- data/app/views/posts/manage.html.haml +44 -59
- data/app/views/posts/new.html.haml +9 -64
- data/app/views/posts/popular.html.haml +25 -30
- data/app/views/posts/preview.html.haml +27 -26
- data/app/views/posts/recent.html.haml +20 -27
- data/app/views/posts/send_to_friend.js.erb +3 -0
- data/app/views/posts/show.html.haml +67 -76
- data/app/views/rsvps/_form.html.haml +3 -0
- data/app/views/rsvps/edit.html.haml +3 -9
- data/app/views/rsvps/new.html.haml +3 -9
- data/app/views/sb_posts/_dummy_forum_post.html.haml +13 -0
- data/app/views/sb_posts/_edit.html.haml +6 -0
- data/app/views/sb_posts/_edit_script.js.erb +14 -0
- data/app/views/sb_posts/_reply_form.html.haml +14 -35
- data/app/views/sb_posts/_reply_script.js.erb +13 -0
- data/app/views/sb_posts/_sb_post.html.haml +31 -33
- data/app/views/sb_posts/create.js.erb +30 -0
- data/app/views/sb_posts/destroy.js.erb +2 -0
- data/app/views/sb_posts/edit.html.erb +4 -4
- data/app/views/sb_posts/edit.js.erb +14 -0
- data/app/views/sb_posts/index.html.haml +3 -16
- data/app/views/sb_posts/monitored.html.erb +3 -9
- data/app/views/sb_posts/update.js.erb +11 -0
- data/app/views/sessions/_menu_item.html.haml +28 -0
- data/app/views/sessions/new.html.haml +19 -24
- data/app/views/shared/_add_friend_link.html.haml +9 -0
- data/app/views/shared/_admin_nav.html.haml +6 -8
- data/app/views/shared/_contact.html.haml +1 -1
- data/app/views/shared/_end_javascript.html.haml +4 -4
- data/app/views/shared/_explore.html.haml +7 -6
- data/app/views/shared/_footer_content.html.haml +12 -10
- data/app/views/shared/_footer_links.html.haml +18 -0
- data/app/views/shared/_friend_link.html.haml +25 -0
- data/app/views/shared/_header.html.haml +22 -42
- data/app/views/shared/_jumbotron.html.haml +3 -0
- data/app/views/shared/_load_tinymce.js.erb +15 -0
- data/app/views/shared/_location_chooser.html.haml +26 -17
- data/app/views/shared/_login_sidebar.html.haml +6 -5
- data/app/views/shared/_messages.html.haml +6 -8
- data/app/views/shared/_scripts_and_styles.html.haml +1 -2
- data/app/views/shared/_sidebar.html.haml +1 -0
- data/app/views/shared/_tag_auto_complete.html.haml +19 -0
- data/app/views/shared/_widget.html.haml +3 -0
- data/app/views/sitemap/index.html.haml +15 -20
- data/app/views/statistics/index.html.haml +32 -40
- data/app/views/tags/edit.html.haml +12 -19
- data/app/views/tags/index.html.haml +16 -25
- data/app/views/tags/manage.html.haml +24 -33
- data/app/views/tags/show.html.haml +52 -58
- data/app/views/topics/_form.html.haml +23 -25
- data/app/views/topics/_recent_topics_sidebar.haml +1 -1
- data/app/views/topics/edit.html.haml +7 -9
- data/app/views/topics/new.html.haml +6 -21
- data/app/views/topics/show.html.haml +48 -106
- data/app/views/user_notifier/follow_up_comment_notice.text.erb +1 -1
- data/app/views/user_notifier/message_notification.text.erb +1 -1
- data/app/views/user_notifier/new_forum_post_notice.text.erb +1 -1
- data/app/views/users/_dashboard_nav.html.haml +36 -39
- data/app/views/users/_menu_item.html.haml +6 -0
- data/app/views/users/_omniauth_connect.html.haml +4 -4
- data/app/views/users/_profile_completeness.html.haml +3 -3
- data/app/views/users/_profile_user_info_sidebar.html.haml +40 -43
- data/app/views/users/_search_options.html.haml +9 -7
- data/app/views/users/_sidebar_user.html.haml +1 -1
- data/app/views/users/_user.html.haml +27 -28
- data/app/views/users/crop_profile_photo.html.haml +30 -37
- data/app/views/users/dashboard.html.haml +37 -41
- data/app/views/users/edit.html.haml +53 -71
- data/app/views/users/edit_account.html.haml +44 -64
- data/app/views/users/forgot_username.html.haml +6 -12
- data/app/views/users/index.html.haml +4 -14
- data/app/views/users/invite.html.haml +14 -25
- data/app/views/users/new.html.haml +27 -48
- data/app/views/users/resend_activation.html.haml +7 -12
- data/app/views/users/show.html.haml +88 -90
- data/app/views/users/signup_completed.html.haml +7 -7
- data/app/views/users/statistics.html.haml +17 -18
- data/app/views/users/update.js.erb +1 -0
- data/app/views/users/upload_profile_photo.html.haml +10 -15
- data/app/views/users/welcome_about.html.haml +54 -61
- data/app/views/users/welcome_invite.html.haml +16 -25
- data/app/views/users/welcome_photo.html.haml +18 -27
- data/app/views/votes/create.js.erb +5 -0
- data/community_engine.gemspec +49 -41
- data/config/application_config.rb +13 -16
- data/config/initializers/mce_options.rb +9 -32
- data/config/initializers/recaptcha_constants.rb +2 -2
- data/config/locales/de-DE.yml +1 -17
- data/config/locales/en.yml +18 -32
- data/config/locales/es-AR.yml +2 -14
- data/config/locales/es-ES.yml +0 -6
- data/config/locales/es-MX.yml +1 -9
- data/config/locales/fr-FR.yml +3 -17
- data/config/locales/ja-JP.yml +2 -18
- data/config/locales/ru-RU.yml +3 -21
- data/config/locales/sr-CP.yml +0 -4
- data/config/locales/sv-SE.yml +3 -20
- data/config/routes.rb +37 -42
- data/db/migrate/016_add_metro_areas.rb +2 -2
- data/db/migrate/039_create_activities_table.rb +2 -2
- data/db/migrate/056_create_roles.rb +8 -6
- data/db/migrate/069_create_pages.rb +3 -3
- data/db/migrate/081_upgrade_to_friendly_id_5x.rb +25 -0
- data/db/migrate/082_upgrade_to_acts_as_commentable_4x.rb +29 -0
- data/lib/activity_tracker.rb +3 -0
- data/{vendor/plugins/activity_tracker/lib → lib/activity_tracker}/activity.rb +6 -6
- data/{vendor/plugins/activity_tracker/lib → lib/activity_tracker}/activity_tracker.rb +0 -0
- data/{vendor/plugins/acts_as_publishable/init.rb → lib/acts_as_publishable.rb} +1 -1
- data/{vendor/plugins/acts_as_publishable/lib → lib/acts_as_publishable}/acts_as_publishable.rb +3 -3
- data/lib/community_engine.rb +31 -9
- data/lib/community_engine/engine.rb +17 -1
- data/lib/community_engine/engines_extensions.rb +1 -3
- data/lib/community_engine/version.rb +3 -3
- data/{config/initializers → lib/paperclip_processors}/cropper.rb +3 -3
- data/lib/resource_feeder.rb +3 -0
- data/{vendor/plugins/resource_feeder/lib → lib}/resource_feeder/atom.rb +0 -0
- data/{vendor/plugins/resource_feeder/lib → lib}/resource_feeder/rss.rb +0 -0
- data/{vendor/plugins/white_list/init.rb → lib/white_list.rb} +1 -1
- data/{vendor/plugins/white_list/lib → lib/white_list}/white_list_helper.rb +0 -0
- data/test/fixtures/messages.yml +2 -2
- data/test/functional/admin_controller_test.rb +11 -11
- data/test/functional/ads_controller_test.rb +11 -11
- data/test/functional/albums_controller_test.rb +4 -4
- data/test/functional/categories_controller_test.rb +4 -4
- data/test/functional/clippings_controller_test.rb +4 -4
- data/test/functional/comments_controller_test.rb +20 -16
- data/test/functional/events_controller_test.rb +6 -6
- data/test/functional/forums_controller_test.rb +8 -8
- data/test/functional/friendships_controller_test.rb +13 -18
- data/test/functional/homepage_features_controller_test.rb +5 -5
- data/test/functional/messages_controller_test.rb +6 -2
- data/test/functional/metro_areas_controller_test.rb +7 -7
- data/test/functional/moderators_controller_test.rb +1 -1
- data/test/functional/pages_controller_test.rb +2 -2
- data/test/functional/password_reset_controller_test.rb +2 -2
- data/test/functional/photos_controller_test.rb +16 -15
- data/test/functional/posts_controller_test.rb +4 -4
- data/test/functional/rsvps_controller_test.rb +6 -6
- data/test/functional/sb_posts_controller_test.rb +53 -50
- data/test/functional/sessions_controller_test.rb +4 -1
- data/test/functional/tags_controller_test.rb +1 -1
- data/test/functional/topics_controller_test.rb +10 -10
- data/test/functional/users_controller_test.rb +32 -19
- data/test/functional/votes_controller_test.rb +1 -1
- data/test/test_helper.rb +3 -1
- data/test/testapp/config/application.rb +1 -9
- data/test/testapp/config/environments/development.rb +1 -2
- data/test/testapp/config/environments/production.rb +2 -0
- data/test/testapp/config/environments/test.rb +1 -2
- data/test/testapp/config/initializers/omniauth.rb +3 -3
- data/test/testapp/config/initializers/secret_token.rb +1 -0
- data/test/testapp/db/schema.rb +143 -152
- data/test/unit/category_test.rb +2 -2
- data/test/unit/comment_test.rb +64 -53
- data/test/unit/event_test.rb +4 -4
- data/test/unit/forum_test.rb +1 -1
- data/test/unit/message_test.rb +7 -1
- data/test/unit/page_test.rb +2 -2
- data/test/unit/post_test.rb +47 -47
- data/test/unit/sb_post_test.rb +24 -20
- data/test/unit/topic_test.rb +7 -6
- data/test/unit/user_test.rb +75 -52
- data/vendor/assets/javascripts/.gitkeep +0 -0
- data/vendor/assets/javascripts/jcrop/jquery.Jcrop.js +1699 -0
- data/vendor/assets/javascripts/jcrop/jquery.color.js +661 -0
- data/vendor/assets/javascripts/tag-it/tag-it.js +597 -0
- data/vendor/assets/stylesheets/.gitkeep +0 -0
- data/vendor/assets/stylesheets/jcrop/Jcrop.gif +0 -0
- data/vendor/assets/stylesheets/jcrop/jquery.Jcrop.min.css +28 -0
- data/vendor/assets/stylesheets/tag-it/tag-it.css +69 -0
- data/vendor/assets/stylesheets/tag-it/tagit.ui-zendesk.css +107 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/acts_as_publishable/README +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/acts_as_publishable/Rakefile +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/acts_as_publishable/generators/publishing/publishing_generator.rb +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/acts_as_publishable/generators/publishing/templates/migration.rb +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/acts_as_publishable/install.rb +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/acts_as_publishable/test/acts_as_publishable_test.rb +0 -0
- data/vendor/{plugins/activity_tracker → converted2.3plugins_to_lib_leftovers/acts_as_publishable}/uninstall.rb +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/resource_feeder/README +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/resource_feeder/Rakefile +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/resource_feeder/test/atom_feed_test.rb +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/resource_feeder/test/rss_feed_test.rb +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/resource_feeder/test/test_helper.rb +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/white_list/README +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/white_list/Rakefile +0 -0
- data/vendor/{plugins → converted2.3plugins_to_lib_leftovers}/white_list/test/white_list_test.rb +0 -0
- metadata +348 -302
- data/app/assets/images/bg_h6btn.gif +0 -0
- data/app/assets/images/bg_navbar.gif +0 -0
- data/app/assets/images/clearbits/bg_rounded.gif +0 -0
- data/app/assets/images/clearbits/comment.gif +0 -0
- data/app/assets/images/clearbits/lock.gif +0 -0
- data/app/assets/images/clearbits/smile.gif +0 -0
- data/app/assets/images/close.gif +0 -0
- data/app/assets/images/cropper/marqueeHoriz.gif +0 -0
- data/app/assets/images/cropper/marqueeVert.gif +0 -0
- data/app/assets/images/feed.png +0 -0
- data/app/assets/images/icons/31.png +0 -0
- data/app/assets/images/icons/52.png +0 -0
- data/app/assets/images/icons/accept.png +0 -0
- data/app/assets/images/icons/activity_default.png +0 -0
- data/app/assets/images/icons/add.png +0 -0
- data/app/assets/images/icons/book.png +0 -0
- data/app/assets/images/icons/bullet_arrow_down.png +0 -0
- data/app/assets/images/icons/bullet_arrow_down_50.png +0 -0
- data/app/assets/images/icons/clipping.png +0 -0
- data/app/assets/images/icons/comment.png +0 -0
- data/app/assets/images/icons/comments.png +0 -0
- data/app/assets/images/icons/date.png +0 -0
- data/app/assets/images/icons/delete.png +0 -0
- data/app/assets/images/icons/email.png +0 -0
- data/app/assets/images/icons/email_edit.png +0 -0
- data/app/assets/images/icons/email_go.png +0 -0
- data/app/assets/images/icons/email_open.png +0 -0
- data/app/assets/images/icons/group_go.png +0 -0
- data/app/assets/images/icons/heart.png +0 -0
- data/app/assets/images/icons/heart_add.png +0 -0
- data/app/assets/images/icons/heart_off.png +0 -0
- data/app/assets/images/icons/page_white.png +0 -0
- data/app/assets/images/icons/page_white_magnify.png +0 -0
- data/app/assets/images/icons/picture.png +0 -0
- data/app/assets/images/icons/poll.png +0 -0
- data/app/assets/images/icons/post.png +0 -0
- data/app/assets/images/icons/printer.png +0 -0
- data/app/assets/images/icons/rss.png +0 -0
- data/app/assets/images/icons/slides.png +0 -0
- data/app/assets/images/icons/tag_blue.png +0 -0
- data/app/assets/images/icons/user.png +0 -0
- data/app/assets/images/icons/user_add.png +0 -0
- data/app/assets/images/icons/user_edit.png +0 -0
- data/app/assets/images/icons/user_go.png +0 -0
- data/app/assets/images/icons/vote.png +0 -0
- data/app/assets/images/icons/world.png +0 -0
- data/app/assets/images/icons/wrench.png +0 -0
- data/app/assets/images/logo.gif +0 -0
- data/app/assets/images/reply_background.png +0 -0
- data/app/assets/images/search.gif +0 -0
- data/app/assets/images/thumb.gif +0 -0
- data/app/assets/javascripts/builder.js +0 -136
- data/app/assets/javascripts/calendarview.js +0 -839
- data/app/assets/javascripts/lightbox.js +0 -151
- data/app/assets/javascripts/prototip-min.js +0 -27
- data/app/assets/javascripts/rails.js +0 -202
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/css/advimage.css +0 -84
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/editor_plugin.js +0 -52
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/editor_plugin_src.js +0 -45
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/image.htm +0 -180
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/img/sample.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/js/functions.js +0 -508
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/langs/en.js +0 -3
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/langs/en_dlg.js +0 -43
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/editor_plugin.js +0 -8
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/editor_plugin_src.js +0 -1001
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress10.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress11.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress12.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress2.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress3.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress4.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress5.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress6.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress7.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress8.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/progress9.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/restore.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/images/restore.png +0 -0
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/langs/da.js +0 -5
- data/app/assets/javascripts/tinymce/plugins/tinyautosave/langs/en.js +0 -5
- data/app/assets/stylesheets/community_engine.css +0 -6
- data/app/assets/stylesheets/forum.css +0 -605
- data/app/assets/stylesheets/prototip.css +0 -73
- data/app/assets/stylesheets/reset-fonts-grids.css +0 -8
- data/app/assets/stylesheets/screen.css +0 -977
- data/app/helpers/monitorships_helper.rb +0 -2
- data/app/views/activities/_icon.html.haml +0 -14
- data/app/views/activities/destroy.js.rjs +0 -1
- data/app/views/clippings/_meta.html.haml +0 -26
- data/app/views/clippings/load_images_from_uri.js.rjs +0 -1
- data/app/views/comments/create.js.rjs +0 -20
- data/app/views/comments/edit.js.rjs +0 -7
- data/app/views/comments/update.js.rjs +0 -9
- data/app/views/favorites/create.js.rjs +0 -17
- data/app/views/favorites/destroy.js.rjs +0 -14
- data/app/views/favorites/show.html.haml +0 -13
- data/app/views/friendships/_friendships.html.erb +0 -14
- data/app/views/friendships/index.html.erb +0 -3
- data/app/views/friendships/index.xml.builder +0 -29
- data/app/views/invitations/index.html.erb +0 -16
- data/app/views/moderators/_toggle.html.erb +0 -14
- data/app/views/moderators/create.js.rjs +0 -5
- data/app/views/moderators/destroy.js.rjs +0 -1
- data/app/views/monitorships/create.js.rjs +0 -4
- data/app/views/monitorships/destroy.js.rjs +0 -4
- data/app/views/photos/manage_photos.js.rjs +0 -5
- data/app/views/polls/_polls_sidebar.html.haml +0 -8
- data/app/views/posts/_send_to_friend.html.erb +0 -29
- data/app/views/sb_posts/_dummy_forum_post.html.erb +0 -13
- data/app/views/sb_posts/_edit.html.erb +0 -31
- data/app/views/sb_posts/create.js.rjs +0 -16
- data/app/views/sb_posts/edit.js.rjs +0 -6
- data/app/views/sb_posts/update.js.rjs +0 -5
- data/app/views/shared/_user_menu.html.haml +0 -21
- data/app/views/votes/create.js.rjs +0 -6
- data/db/migrate/090_add_comment_role.rb +0 -15
- data/vendor/plugins/activity_tracker/README +0 -4
- data/vendor/plugins/activity_tracker/Rakefile +0 -22
- data/vendor/plugins/activity_tracker/generators/activity_migration/USAGE +0 -13
- data/vendor/plugins/activity_tracker/generators/activity_migration/activity_migration_generator.rb +0 -11
- data/vendor/plugins/activity_tracker/generators/activity_migration/templates/migration.rb +0 -17
- data/vendor/plugins/activity_tracker/init.rb +0 -1
- data/vendor/plugins/activity_tracker/install.rb +0 -1
- data/vendor/plugins/activity_tracker/tasks/activity_tracker_tasks.rake +0 -4
- data/vendor/plugins/activity_tracker/test/abstract_unit.rb +0 -47
- data/vendor/plugins/activity_tracker/test/activity_tracker_test.rb +0 -48
- data/vendor/plugins/activity_tracker/test/database.yml +0 -18
- data/vendor/plugins/activity_tracker/test/debug.log +0 -3329
- data/vendor/plugins/activity_tracker/test/fixtures/test_post.rb +0 -5
- data/vendor/plugins/activity_tracker/test/fixtures/test_posts.yml +0 -3
- data/vendor/plugins/activity_tracker/test/fixtures/test_user.rb +0 -4
- data/vendor/plugins/activity_tracker/test/fixtures/test_users.yml +0 -6
- data/vendor/plugins/activity_tracker/test/schema.rb +0 -21
- data/vendor/plugins/acts_as_list/README +0 -23
- data/vendor/plugins/acts_as_list/init.rb +0 -3
- data/vendor/plugins/acts_as_list/lib/active_record/acts/list.rb +0 -256
- data/vendor/plugins/acts_as_list/test/list_test.rb +0 -332
- data/vendor/plugins/acts_as_publishable/uninstall.rb +0 -1
- data/vendor/plugins/auto_complete/README +0 -23
- data/vendor/plugins/auto_complete/Rakefile +0 -22
- data/vendor/plugins/auto_complete/init.rb +0 -2
- data/vendor/plugins/auto_complete/lib/auto_complete.rb +0 -47
- data/vendor/plugins/auto_complete/lib/auto_complete_macros_helper.rb +0 -143
- data/vendor/plugins/auto_complete/test/auto_complete_test.rb +0 -67
- data/vendor/plugins/enumerations_mixin/.gitignore +0 -1
- data/vendor/plugins/enumerations_mixin/Gemfile +0 -1
- data/vendor/plugins/enumerations_mixin/LICENSE +0 -20
- data/vendor/plugins/enumerations_mixin/README.md +0 -120
- data/vendor/plugins/enumerations_mixin/README_ENUMERATIONS +0 -163
- data/vendor/plugins/enumerations_mixin/Rakefile +0 -14
- data/vendor/plugins/enumerations_mixin/VERSION +0 -1
- data/vendor/plugins/enumerations_mixin/enumerations_mixin.gemspec +0 -44
- data/vendor/plugins/enumerations_mixin/examples/virtual_enumerations_sample.rb +0 -76
- data/vendor/plugins/enumerations_mixin/init.rb +0 -21
- data/vendor/plugins/enumerations_mixin/lib/active_record/acts/enumerated.rb +0 -180
- data/vendor/plugins/enumerations_mixin/lib/active_record/aggregations/has_enumerated.rb +0 -60
- data/vendor/plugins/enumerations_mixin/lib/active_record/virtual_enumerations.rb +0 -68
- data/vendor/plugins/enumerations_mixin/lib/enumerations_mixin.rb +0 -12
- data/vendor/plugins/enumerations_mixin/virtual_enumerations_sample.rb +0 -76
- data/vendor/plugins/prototype_legacy_helper/README.markdown +0 -13
- data/vendor/plugins/prototype_legacy_helper/init.rb +0 -1
- data/vendor/plugins/prototype_legacy_helper/lib/prototype_legacy_helper.rb +0 -432
- data/vendor/plugins/prototype_legacy_helper/test/test_prototype_helper.rb +0 -297
- data/vendor/plugins/resource_feeder/init.rb +0 -2
- data/vendor/plugins/resource_feeder/lib/resource_feeder.rb +0 -2
- data/vendor/plugins/respond_to_parent/MIT-LICENSE +0 -20
- data/vendor/plugins/respond_to_parent/README +0 -47
- data/vendor/plugins/respond_to_parent/Rakefile +0 -22
- data/vendor/plugins/respond_to_parent/init.rb +0 -1
- data/vendor/plugins/respond_to_parent/install.rb +0 -1
- data/vendor/plugins/respond_to_parent/lib/responds_to_parent.rb +0 -70
- data/vendor/plugins/respond_to_parent/test/responds_to_parent_test.rb +0 -10
- data/vendor/plugins/respond_to_parent/test/test_helper.rb +0 -6
- data/vendor/plugins/respond_to_parent/uninstall.rb +0 -1
data/test/unit/category_test.rb
CHANGED
@@ -2,7 +2,7 @@ require 'test_helper'
|
|
2
2
|
|
3
3
|
class CategoryTest < ActiveSupport::TestCase
|
4
4
|
fixtures :categories, :posts
|
5
|
-
|
5
|
+
|
6
6
|
def test_should_display_new_post_text
|
7
7
|
c = categories(:questions)
|
8
8
|
c.new_post_text = "Ask a question"
|
@@ -11,4 +11,4 @@ class CategoryTest < ActiveSupport::TestCase
|
|
11
11
|
end
|
12
12
|
|
13
13
|
|
14
|
-
end
|
14
|
+
end
|
data/test/unit/comment_test.rb
CHANGED
@@ -16,54 +16,58 @@ class CommentTest < ActiveSupport::TestCase
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def test_should_be_created_anonymously
|
19
|
-
configatron.
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
19
|
+
configatron.temp do
|
20
|
+
configatron.allow_anonymous_commenting = true
|
21
|
+
assert_difference Comment, :count, 1 do
|
22
|
+
comment = users(:quentin).comments.create!(
|
23
|
+
:comment => 'foo',
|
24
|
+
:author_email => 'bar@foo.com',
|
25
|
+
:author_ip => '123.123.123',
|
26
|
+
:recipient => users(:quentin)
|
27
|
+
)
|
28
|
+
end
|
27
29
|
end
|
28
|
-
configatron.allow_anonymous_commenting = false
|
29
30
|
end
|
30
31
|
|
31
32
|
def test_should_notify_previous_anonymous_commenter
|
32
|
-
configatron.
|
33
|
-
|
34
|
-
|
33
|
+
configatron.temp do
|
34
|
+
configatron.allow_anonymous_commenting = true
|
35
|
+
users(:quentin).comments.create!(:comment => 'foo', :author_email => 'bruno@foo.com', :author_ip => '123.123.123', :recipient => users(:quentin))
|
36
|
+
users(:quentin).comments.create!(:comment => 'bar', :author_email => 'bruno@foo.com', :author_ip => '123.123.123', :recipient => users(:quentin))
|
35
37
|
|
36
|
-
|
38
|
+
comment = users(:quentin).comments.create!(:comment => 'bar', :author_email => 'alicia@foo.com', :author_ip => '123.123.123', :recipient => users(:quentin))
|
37
39
|
|
38
|
-
|
39
|
-
|
40
|
+
assert_difference ActionMailer::Base.deliveries, :length, 1 do
|
41
|
+
comment.notify_previous_anonymous_commenters
|
42
|
+
end
|
40
43
|
end
|
41
|
-
configatron.allow_anonymous_commenting = false
|
42
44
|
end
|
43
45
|
|
44
46
|
def test_should_not_notify_previous_anonymous_commenter_if_self
|
45
|
-
configatron.
|
46
|
-
|
47
|
-
|
47
|
+
configatron.temp do
|
48
|
+
configatron.allow_anonymous_commenting = true
|
49
|
+
users(:quentin).comments.create!(:comment => 'foo', :author_email => 'bruno@foo.com', :author_ip => '123.123.123', :recipient => users(:quentin))
|
50
|
+
users(:quentin).comments.create!(:comment => 'bar', :author_email => 'bruno@foo.com', :author_ip => '123.123.123', :recipient => users(:quentin))
|
48
51
|
|
49
|
-
|
52
|
+
comment = users(:quentin).comments.create!(:comment => 'bar', :author_email => 'bruno@foo.com', :author_ip => '123.123.123', :recipient => users(:quentin))
|
50
53
|
|
51
|
-
|
52
|
-
|
54
|
+
assert_difference ActionMailer::Base.deliveries, :length, 0 do
|
55
|
+
comment.notify_previous_anonymous_commenters
|
56
|
+
end
|
53
57
|
end
|
54
|
-
configatron.allow_anonymous_commenting = nil
|
55
58
|
end
|
56
59
|
|
57
60
|
def test_should_not_notify_previous_anonymous_commenter_if_notify_by_email_is_false
|
58
|
-
configatron.
|
59
|
-
|
61
|
+
configatron.temp do
|
62
|
+
configatron.allow_anonymous_commenting = true
|
63
|
+
users(:quentin).comments.create!(:comment => 'foo', :author_email => 'bruno@foo.com', :author_ip => '123.123.123', :recipient => users(:quentin), :notify_by_email => false)
|
60
64
|
|
61
|
-
|
65
|
+
comment = users(:quentin).comments.create!(:comment => 'bar', :author_email => 'alicia@foo.com', :author_ip => '123.123.123', :recipient => users(:quentin))
|
62
66
|
|
63
|
-
|
64
|
-
|
67
|
+
assert_difference ActionMailer::Base.deliveries, :length, 0 do
|
68
|
+
comment.notify_previous_anonymous_commenters
|
69
|
+
end
|
65
70
|
end
|
66
|
-
configatron.allow_anonymous_commenting = false
|
67
71
|
end
|
68
72
|
|
69
73
|
def test_should_not_be_created_anonymously
|
@@ -79,16 +83,19 @@ class CommentTest < ActiveSupport::TestCase
|
|
79
83
|
end
|
80
84
|
|
81
85
|
def test_should_unsubscribe_notifications
|
82
|
-
configatron.
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
86
|
+
configatron.temp do
|
87
|
+
configatron.allow_anonymous_commenting = true
|
88
|
+
first_comment = users(:quentin).comments.create!(:comment => 'foo', :author_email => 'alicia@foo.com', :author_ip => '123.123.123', :recipient => users(:quentin), :notify_by_email => true)
|
89
|
+
comment = users(:quentin).comments.create!(:comment => 'bar', :author_email => 'alicia@foo.com', :author_ip => '123.123.123', :recipient => users(:quentin), :notify_by_email => true)
|
90
|
+
assert_equal first_comment.notify_by_email, true
|
91
|
+
assert_equal comment.notify_by_email, true
|
92
|
+
|
93
|
+
configatron.allow_anonymous_commenting = false
|
94
|
+
|
95
|
+
comment.unsubscribe_notifications('alicia@foo.com')
|
96
|
+
assert comment.reload.notify_by_email.eql?(false)
|
97
|
+
assert first_comment.reload.notify_by_email.eql?(false)
|
98
|
+
end
|
92
99
|
end
|
93
100
|
|
94
101
|
def test_should_not_notify_of_comments_on_post_with_send_notifications_off
|
@@ -113,30 +120,34 @@ class CommentTest < ActiveSupport::TestCase
|
|
113
120
|
post = posts(:funny_post)
|
114
121
|
|
115
122
|
Comment.any_instance.stubs(:spam?).returns(true)
|
116
|
-
configatron.stubs(:akismet_key).returns('1234')
|
117
|
-
|
118
|
-
comment = post.comments.create!(:comment => 'foo', :user => users(:aaron), :recipient => users(:quentin))
|
119
123
|
|
120
|
-
|
124
|
+
configatron.temp do
|
125
|
+
configatron.akismet_key = '1234'
|
126
|
+
comment = post.comments.create!(:comment => 'foo', :user => users(:aaron), :recipient => users(:quentin))
|
127
|
+
assert_equal 'pending', comment.role
|
128
|
+
end
|
121
129
|
end
|
122
130
|
|
123
131
|
def test_spam_comment_notification_handling
|
124
132
|
post = posts(:funny_post)
|
125
133
|
|
126
134
|
Comment.any_instance.stubs(:spam?).returns(true)
|
127
|
-
configatron.stubs(:akismet_key).returns('1234')
|
128
135
|
|
129
|
-
|
136
|
+
configatron.temp do
|
137
|
+
configatron.akismet_key = '1234'
|
138
|
+
comment = post.comments.new(:comment => 'foo', :user => users(:aaron), :recipient => users(:quentin))
|
130
139
|
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
140
|
+
#no notifications for pending comments
|
141
|
+
assert_no_difference ActionMailer::Base.deliveries, :length do
|
142
|
+
comment.save!
|
143
|
+
end
|
135
144
|
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
145
|
+
Comment.any_instance.stubs(:spam?).returns(false)
|
146
|
+
|
147
|
+
comment.role = 'published'
|
148
|
+
assert_difference ActionMailer::Base.deliveries, :length, 1 do
|
149
|
+
comment.save!
|
150
|
+
end
|
140
151
|
end
|
141
152
|
end
|
142
153
|
|
data/test/unit/event_test.rb
CHANGED
@@ -37,25 +37,25 @@ class EventTest < ActiveSupport::TestCase
|
|
37
37
|
end
|
38
38
|
|
39
39
|
def test_upcoming_event_scope_should_only_find_future_events
|
40
|
-
future_events = Event.upcoming.
|
40
|
+
future_events = Event.upcoming.to_a
|
41
41
|
assert_equal future_events.size, 3
|
42
42
|
future_events.each {|e| assert e.end_time > Time.now}
|
43
43
|
end
|
44
44
|
|
45
45
|
def test_past_event_scope_should_only_find_old_events
|
46
|
-
past_events = Event.past.
|
46
|
+
past_events = Event.past.to_a
|
47
47
|
assert_equal past_events.size, 3
|
48
48
|
past_events.each {|e| assert e.end_time <= Time.now}
|
49
49
|
end
|
50
50
|
|
51
51
|
def test_upcoming_events_shown_asc_order
|
52
|
-
future_events = Event.upcoming.
|
52
|
+
future_events = Event.upcoming.to_a
|
53
53
|
assert_equal future_events.first, events(:future_event)
|
54
54
|
assert_equal future_events.second, events(:further_future_event)
|
55
55
|
end
|
56
56
|
|
57
57
|
def test_past_events_shown_desc_order
|
58
|
-
future_events = Event.past.
|
58
|
+
future_events = Event.past.to_a
|
59
59
|
assert_equal future_events.first, events(:past_event)
|
60
60
|
assert_equal future_events.second, events(:cool_event)
|
61
61
|
assert_equal future_events.third, events(:further_past_event)
|
data/test/unit/forum_test.rb
CHANGED
@@ -4,7 +4,7 @@ class ForumTest < ActiveSupport::TestCase
|
|
4
4
|
fixtures :all
|
5
5
|
|
6
6
|
def test_should_list_only_top_level_topics
|
7
|
-
assert_equal [topics(:sticky), topics(:il8n), topics(:ponies), topics(:pdi)], forums(:rails).topics.order('sticky DESC, created_at DESC').
|
7
|
+
assert_equal [topics(:sticky), topics(:il8n), topics(:ponies), topics(:pdi)], forums(:rails).topics.order('sticky DESC, created_at DESC').to_a
|
8
8
|
end
|
9
9
|
|
10
10
|
def test_should_find_first_recent_post
|
data/test/unit/message_test.rb
CHANGED
@@ -12,7 +12,13 @@ class MessageTest < ActiveSupport::TestCase
|
|
12
12
|
message = Message.create!(:sender => users(:quentin), :recipient => users(:aaron), :body => 'hey aaron', :subject => 'Hello friend!')
|
13
13
|
end
|
14
14
|
end
|
15
|
-
|
15
|
+
|
16
|
+
def test_should_be_received
|
17
|
+
assert_difference users(:aaron).received_messages, :count, 1 do
|
18
|
+
Message.create!(:sender => users(:quentin), :recipient => users(:aaron), :body => 'hey aaron', :subject => 'Hello friend!')
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
16
22
|
def test_should_be_invalid_without_subject
|
17
23
|
m = Message.new(:subject => nil)
|
18
24
|
assert !m.valid?
|
data/test/unit/page_test.rb
CHANGED
@@ -7,7 +7,7 @@ class PageTest < ActiveSupport::TestCase
|
|
7
7
|
def test_should_find_including_unpublished
|
8
8
|
page = pages(:draft_page)
|
9
9
|
page.save_as_draft
|
10
|
-
assert Page.unscoped.
|
10
|
+
assert Page.unscoped.to_a.include?(page)
|
11
11
|
end
|
12
12
|
|
13
13
|
def test_default_find_should_not_find_drafts
|
@@ -19,7 +19,7 @@ class PageTest < ActiveSupport::TestCase
|
|
19
19
|
def test_default_find_should_find_published
|
20
20
|
page = pages(:custom_page)
|
21
21
|
page.save
|
22
|
-
assert Page.
|
22
|
+
assert Page.all.include?(page)
|
23
23
|
end
|
24
24
|
|
25
25
|
end
|
data/test/unit/post_test.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
require 'hpricot'
|
3
|
-
|
3
|
+
|
4
4
|
class PostTest < ActiveSupport::TestCase
|
5
5
|
fixtures :all
|
6
6
|
|
@@ -12,15 +12,15 @@ class PostTest < ActiveSupport::TestCase
|
|
12
12
|
post = posts(:funny_post)
|
13
13
|
post.save_as_draft
|
14
14
|
assert Post.unscoped.find(post.id)
|
15
|
-
assert Post.unscoped.
|
15
|
+
assert Post.unscoped.to_a.include?(post)
|
16
16
|
end
|
17
|
-
|
17
|
+
|
18
18
|
def test_default_find_should_not_find_drafts
|
19
19
|
post = posts(:funny_post)
|
20
20
|
post.save_as_draft
|
21
|
-
assert !Post.
|
21
|
+
assert !Post.all.include?(post)
|
22
22
|
end
|
23
|
-
|
23
|
+
|
24
24
|
def test_should_find_recent
|
25
25
|
posts = Post.find_recent(:limit => 3)
|
26
26
|
assert_equal posts.size, 3
|
@@ -34,22 +34,22 @@ class PostTest < ActiveSupport::TestCase
|
|
34
34
|
posts = Post.find_popular(:limit => 3, :since => 1.days)
|
35
35
|
assert_equal posts.size, 0
|
36
36
|
end
|
37
|
-
|
37
|
+
|
38
38
|
def test_should_display_name
|
39
39
|
post = posts(:funny_post)
|
40
40
|
assert_equal post.display_title, "HOW TO: Building communities is all about love."
|
41
41
|
end
|
42
|
-
|
42
|
+
|
43
43
|
def test_should_find_previous_post
|
44
44
|
previous = posts(:not_funny_post).previous_post
|
45
45
|
assert_equal previous, posts(:funny_post)
|
46
46
|
end
|
47
|
-
|
47
|
+
|
48
48
|
def test_should_find_next_post
|
49
49
|
next_post = posts(:funny_post).next_post
|
50
50
|
assert_equal next_post, posts(:not_funny_post)
|
51
51
|
end
|
52
|
-
|
52
|
+
|
53
53
|
def test_should_track_post_activity
|
54
54
|
assert_difference Activity, :count, 1 do
|
55
55
|
post = Post.new(:title => 'testing activity tracking', :raw_post => 'will this work?', :published_as => 'live')
|
@@ -57,15 +57,15 @@ class PostTest < ActiveSupport::TestCase
|
|
57
57
|
post.save!
|
58
58
|
end
|
59
59
|
end
|
60
|
-
|
60
|
+
|
61
61
|
def test_should_not_track_draft_post_activity
|
62
62
|
assert_no_difference Activity, :count do
|
63
63
|
post = Post.new(:title => 'testing activity tracking', :raw_post => 'will this work?', :published_as => 'draft')
|
64
64
|
post.user = users(:quentin)
|
65
65
|
post.save!
|
66
66
|
end
|
67
|
-
end
|
68
|
-
|
67
|
+
end
|
68
|
+
|
69
69
|
def test_should_delete_post_activity
|
70
70
|
post = Post.new(:title => 'testing activity tracking', :raw_post => 'will this work?', :published_as => 'live')
|
71
71
|
post.user = users(:quentin)
|
@@ -75,12 +75,12 @@ class PostTest < ActiveSupport::TestCase
|
|
75
75
|
post.destroy
|
76
76
|
end
|
77
77
|
end
|
78
|
-
|
79
|
-
|
78
|
+
|
79
|
+
|
80
80
|
# def test_link_for_rss
|
81
81
|
# assert_equal posts(:funny_post).link_for_rss, "http://localhost:3000/quentin/posts/1-This-is-really-good-stuff"
|
82
82
|
# end
|
83
|
-
|
83
|
+
|
84
84
|
def test_create_poll
|
85
85
|
assert_difference Poll, :count, 1 do
|
86
86
|
assert_difference Choice, :count, 3 do
|
@@ -88,54 +88,54 @@ class PostTest < ActiveSupport::TestCase
|
|
88
88
|
end
|
89
89
|
end
|
90
90
|
end
|
91
|
-
|
91
|
+
|
92
92
|
def test_should_not_add_empty_poll
|
93
93
|
assert_no_difference Poll, :count do
|
94
94
|
assert_no_difference Choice, :count do
|
95
95
|
posts(:funny_post).create_poll({:question => 'Who can have a great time?'}, ['only one choice'])
|
96
96
|
end
|
97
|
-
end
|
97
|
+
end
|
98
98
|
end
|
99
|
-
|
99
|
+
|
100
100
|
def test_should_not_create_poll_with_no_choices
|
101
101
|
assert_no_difference Poll, :count do
|
102
102
|
assert_no_difference Choice, :count do
|
103
103
|
posts(:funny_post).create_poll({:question => 'Who can have a great time?'}, [])
|
104
104
|
end
|
105
|
-
end
|
105
|
+
end
|
106
106
|
end
|
107
|
-
|
107
|
+
|
108
108
|
def test_update_poll
|
109
109
|
assert posts(:not_funny_post).create_poll({:question => 'Who can have a great time?'}, ['I can', 'You can', 'No one can'])
|
110
|
-
|
110
|
+
|
111
111
|
assert posts(:not_funny_post).update_poll({:question => 'Who can have a terrible time?'}, ['Foo', 'Bar'])
|
112
|
-
|
113
|
-
assert_equal 'Who can have a terrible time?', posts(:not_funny_post).poll.question
|
112
|
+
|
113
|
+
assert_equal 'Who can have a terrible time?', posts(:not_funny_post).poll.question
|
114
114
|
assert_equal 'Foo', posts(:not_funny_post).poll.choices.first.description
|
115
115
|
assert_equal 'Bar', posts(:not_funny_post).poll.choices.last.description
|
116
116
|
end
|
117
|
-
|
117
|
+
|
118
118
|
def test_update_poll_with_no_choices_should_delete_poll
|
119
119
|
assert posts(:funny_post).create_poll({:question => 'Who can have a great time?'}, ['I can', 'You can', 'No one can'])
|
120
120
|
|
121
121
|
assert_difference Poll, :count, -1 do
|
122
122
|
assert posts(:funny_post).update_poll({:question => 'Who can have a terrible time?'}, [])
|
123
123
|
end
|
124
|
-
end
|
125
|
-
|
124
|
+
end
|
125
|
+
|
126
126
|
def test_should_find_most_commented
|
127
127
|
assert_equal posts(:funny_post).id, Post.find_most_commented.first.id
|
128
|
-
assert_equal posts(:apt_post).id, Post.find_most_commented.last.id
|
128
|
+
assert_equal posts(:apt_post).id, Post.find_most_commented.last.id
|
129
129
|
end
|
130
130
|
|
131
131
|
def test_find_recent
|
132
132
|
assert Post.find_recent(:limit => 30)
|
133
133
|
end
|
134
|
-
|
134
|
+
|
135
135
|
def test_image_for_excerpt_for_post_with_no_image_returns_avatar_url
|
136
136
|
assert_equal posts(:funny_post).user.avatar_photo_url(:medium), posts(:funny_post).image_for_excerpt
|
137
137
|
end
|
138
|
-
|
138
|
+
|
139
139
|
def test_has_been_favorited_by_user
|
140
140
|
post = posts(:funny_post)
|
141
141
|
assert !post.has_been_favorited_by(users(:quentin))
|
@@ -143,30 +143,30 @@ class PostTest < ActiveSupport::TestCase
|
|
143
143
|
favorite = Favorite.new(:ip_address => '1.1.1.1', :favoritable => post )
|
144
144
|
favorite.user = users(:quentin)
|
145
145
|
favorite.save
|
146
|
-
|
147
|
-
assert post.has_been_favorited_by(users(:quentin))
|
146
|
+
|
147
|
+
assert post.has_been_favorited_by(users(:quentin))
|
148
148
|
end
|
149
|
-
|
149
|
+
|
150
150
|
def test_should_set_published_at_date_when_first_published
|
151
151
|
post = users(:quentin).posts.new(:raw_post => 'Blog post message', :title => 'Title')
|
152
152
|
assert !post.published_at
|
153
153
|
post.save!
|
154
|
-
|
154
|
+
|
155
155
|
post.published_as = 'live'
|
156
156
|
post.save
|
157
157
|
assert post.published_at
|
158
158
|
end
|
159
|
-
|
160
|
-
def test_should_not_set_published_at_if_republishing
|
159
|
+
|
160
|
+
def test_should_not_set_published_at_if_republishing
|
161
161
|
post = users(:quentin).posts.create!(:raw_post => 'Blog post message', :title => 'Title')
|
162
162
|
post.save_as_live #publish
|
163
163
|
published_at = post.published_at
|
164
|
-
|
164
|
+
|
165
165
|
post.save_as_draft #unpublish
|
166
166
|
post.save_as_live #publish again
|
167
167
|
assert_equal post.published_at, published_at
|
168
168
|
end
|
169
|
-
|
169
|
+
|
170
170
|
def test_should_show_published_at_display
|
171
171
|
post = posts(:funny_post)
|
172
172
|
assert_equal post.published_at_display, I18n.l(post.published_at, :format => :published_date)
|
@@ -177,36 +177,36 @@ class PostTest < ActiveSupport::TestCase
|
|
177
177
|
post.save_as_draft
|
178
178
|
assert_equal post.published_at_display, 'Draft'
|
179
179
|
end
|
180
|
-
|
180
|
+
|
181
181
|
def test_should_not_notify_for_posts_without_comment_notification_on
|
182
182
|
post = posts(:funny_post)
|
183
183
|
post.send_comment_notifications = false
|
184
184
|
post.save!
|
185
|
-
|
186
|
-
assert_difference ActionMailer::Base.deliveries, :length, 0 do
|
185
|
+
|
186
|
+
assert_difference ActionMailer::Base.deliveries, :length, 0 do
|
187
187
|
comment = post.comments.create!(:comment => 'foo', :user => users(:aaron))
|
188
|
-
comment.send_notifications
|
188
|
+
comment.send_notifications
|
189
189
|
end
|
190
|
-
|
190
|
+
|
191
191
|
end
|
192
192
|
|
193
193
|
test "should find related" do
|
194
194
|
p1 = posts(:funny_post)
|
195
195
|
p2 = posts(:not_funny_post)
|
196
|
-
|
196
|
+
|
197
197
|
p1.tag_list = 'tag1, tag2'
|
198
198
|
p1.save!
|
199
199
|
p2.tag_list = 'tag2, tag3'
|
200
200
|
p2.save!
|
201
|
-
|
201
|
+
|
202
202
|
assert Post.find_related_to(p1).include?(p2)
|
203
203
|
|
204
204
|
p2.tag_list = 'tag3, tag4'
|
205
205
|
p2.save!
|
206
206
|
|
207
|
-
assert !Post.find_related_to(p1).include?(p2)
|
207
|
+
assert !Post.find_related_to(p1).include?(p2)
|
208
|
+
|
208
209
|
|
209
|
-
|
210
210
|
end
|
211
|
-
|
211
|
+
|
212
212
|
end
|