community_engine 2.0.0.beta1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +15 -0
- data/.gitmodules +0 -0
- data/.travis.yml +9 -0
- data/CHANGELOG +118 -0
- data/Gemfile +3 -0
- data/LICENSE +30 -0
- data/README.markdown +188 -0
- data/Rakefile +54 -0
- data/UPGRADING.markdown +93 -0
- data/about.yml +7 -0
- data/app/assets/images/auth/facebook_32.png +0 -0
- data/app/assets/images/auth/facebook_64.png +0 -0
- data/app/assets/images/auth/google_32.png +0 -0
- data/app/assets/images/auth/google_64.png +0 -0
- data/app/assets/images/auth/linked_in_32.png +0 -0
- data/app/assets/images/auth/linked_in_64.png +0 -0
- data/app/assets/images/auth/open_id_32.png +0 -0
- data/app/assets/images/auth/remove.png +0 -0
- data/app/assets/images/auth/twitter_32.png +0 -0
- data/app/assets/images/auth/twitter_64.png +0 -0
- 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/icon_missing_medium.gif +0 -0
- data/app/assets/images/icon_missing_thumb.gif +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/ical.gif +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/spinner.gif +0 -0
- data/app/assets/images/spinner_black.gif +0 -0
- data/app/assets/images/spinner_bounce.gif +0 -0
- data/app/assets/images/swf/choose.png +0 -0
- data/app/assets/images/swf/line_grapher.swf +0 -0
- data/app/assets/images/swf/swfupload.swf +0 -0
- data/app/assets/images/thumb.gif +0 -0
- data/app/assets/javascripts/builder.js +136 -0
- data/app/assets/javascripts/calendarview.js +839 -0
- data/app/assets/javascripts/community_engine.js +20 -0
- data/app/assets/javascripts/cropper.css +182 -0
- data/app/assets/javascripts/cropper.js +566 -0
- data/app/assets/javascripts/forum.js +73 -0
- data/app/assets/javascripts/lightbox.js +151 -0
- data/app/assets/javascripts/prototip-min.js +27 -0
- data/app/assets/javascripts/rails.js +202 -0
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/css/advimage.css +84 -0
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/editor_plugin.js +52 -0
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/editor_plugin_src.js +45 -0
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/image.htm +180 -0
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/img/sample.gif +0 -0
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/js/functions.js +508 -0
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/langs/en.js +3 -0
- data/app/assets/javascripts/tinymce/plugins/curblyadvimage/langs/en_dlg.js +43 -0
- data/app/assets/stylesheets/community_engine.css +6 -0
- data/app/assets/stylesheets/forum.css +605 -0
- data/app/assets/stylesheets/lightbox.css +38 -0
- data/app/assets/stylesheets/prototip.css +73 -0
- data/app/assets/stylesheets/reset-fonts-grids.css +8 -0
- data/app/assets/stylesheets/screen.css +977 -0
- data/app/controllers/activities_controller.rb +38 -0
- data/app/controllers/admin_controller.rb +80 -0
- data/app/controllers/ads_controller.rb +85 -0
- data/app/controllers/albums_controller.rb +106 -0
- data/app/controllers/authorizations_controller.rb +41 -0
- data/app/controllers/base_controller.rb +151 -0
- data/app/controllers/categories_controller.rb +118 -0
- data/app/controllers/clippings_controller.rb +192 -0
- data/app/controllers/comment_sweeper.rb +35 -0
- data/app/controllers/comments_controller.rb +179 -0
- data/app/controllers/event_sweeper.rb +24 -0
- data/app/controllers/events_controller.rb +173 -0
- data/app/controllers/favorite_sweeper.rb +29 -0
- data/app/controllers/favorites_controller.rb +36 -0
- data/app/controllers/forums_controller.rb +71 -0
- data/app/controllers/friendships_controller.rb +126 -0
- data/app/controllers/homepage_features_controller.rb +68 -0
- data/app/controllers/invitations_controller.rb +46 -0
- data/app/controllers/messages_controller.rb +95 -0
- data/app/controllers/metro_areas_controller.rb +68 -0
- data/app/controllers/moderators_controller.rb +26 -0
- data/app/controllers/monitorships_controller.rb +20 -0
- data/app/controllers/page_sweeper.rb +33 -0
- data/app/controllers/pages_controller.rb +70 -0
- data/app/controllers/password_resets_controller.rb +52 -0
- data/app/controllers/photo_manager_controller.rb +11 -0
- data/app/controllers/photos_controller.rb +189 -0
- data/app/controllers/post_sweeper.rb +36 -0
- data/app/controllers/posts_controller.rb +252 -0
- data/app/controllers/rsvps_controller.rb +77 -0
- data/app/controllers/sb_posts_controller.rb +149 -0
- data/app/controllers/sessions_controller.rb +34 -0
- data/app/controllers/sitemap_controller.rb +21 -0
- data/app/controllers/statistics_controller.rb +34 -0
- data/app/controllers/taggable_sweeper.rb +38 -0
- data/app/controllers/tags_controller.rb +104 -0
- data/app/controllers/theme_controller.rb +60 -0
- data/app/controllers/topics_controller.rb +122 -0
- data/app/controllers/users_controller.rb +426 -0
- data/app/controllers/vote_sweeper.rb +16 -0
- data/app/controllers/votes_controller.rb +24 -0
- data/app/helpers/base_helper.rb +290 -0
- data/app/helpers/forums_helper.rb +31 -0
- data/app/helpers/friendships_helper.rb +16 -0
- data/app/helpers/monitorships_helper.rb +2 -0
- data/app/helpers/posts_helper.rb +17 -0
- data/app/helpers/sitemap_helper.rb +7 -0
- data/app/helpers/users_helper.rb +6 -0
- data/app/models/ad.rb +43 -0
- data/app/models/album.rb +12 -0
- data/app/models/asset.rb +3 -0
- data/app/models/authorization.rb +60 -0
- data/app/models/category.rb +20 -0
- data/app/models/choice.rb +13 -0
- data/app/models/clipping.rb +78 -0
- data/app/models/clipping_image.rb +9 -0
- data/app/models/comment.rb +122 -0
- data/app/models/country.rb +24 -0
- data/app/models/event.rb +61 -0
- data/app/models/facebook_profile.rb +32 -0
- data/app/models/facebook_publisher.rb +45 -0
- data/app/models/favorite.rb +47 -0
- data/app/models/forum.rb +22 -0
- data/app/models/friendship.rb +64 -0
- data/app/models/friendship_status.rb +3 -0
- data/app/models/homepage_feature.rb +15 -0
- data/app/models/invitation.rb +36 -0
- data/app/models/message.rb +84 -0
- data/app/models/message_thread.rb +33 -0
- data/app/models/metro_area.rb +16 -0
- data/app/models/moderatorship.rb +8 -0
- data/app/models/monitorship.rb +6 -0
- data/app/models/page.rb +8 -0
- data/app/models/photo.rb +83 -0
- data/app/models/poll.rb +39 -0
- data/app/models/post.rb +201 -0
- data/app/models/role.rb +5 -0
- data/app/models/rsvp.rb +24 -0
- data/app/models/sb_post.rb +67 -0
- data/app/models/state.rb +4 -0
- data/app/models/topic.rb +72 -0
- data/app/models/twitter_profile.rb +20 -0
- data/app/models/user.rb +483 -0
- data/app/models/user_notifier.rb +140 -0
- data/app/models/user_session.rb +14 -0
- data/app/models/vote.rb +19 -0
- data/app/views/activities/_activity.html.haml +56 -0
- data/app/views/activities/_icon.html.haml +14 -0
- data/app/views/activities/_unhandled_item.html.haml +1 -0
- data/app/views/activities/destroy.js.rjs +1 -0
- data/app/views/activities/index.html.haml +16 -0
- data/app/views/activities/network.html.haml +14 -0
- data/app/views/admin/comments.html.haml +71 -0
- data/app/views/admin/events.html.haml +33 -0
- data/app/views/admin/messages.html.haml +4 -0
- data/app/views/admin/users.html.haml +69 -0
- data/app/views/ads/edit.html.haml +46 -0
- data/app/views/ads/index.html.haml +43 -0
- data/app/views/ads/new.html.haml +44 -0
- data/app/views/ads/show.html.haml +36 -0
- data/app/views/albums/_form.html.haml +14 -0
- data/app/views/albums/edit.html.haml +16 -0
- data/app/views/albums/new.html.haml +15 -0
- data/app/views/albums/show.html.haml +32 -0
- data/app/views/base/_homepage_banner_message.html.haml +19 -0
- data/app/views/base/advertise.html.haml +8 -0
- data/app/views/base/plaxo.html.haml +5 -0
- data/app/views/base/site_index.html.haml +35 -0
- data/app/views/categories/_tips.html.haml +11 -0
- data/app/views/categories/edit.html.haml +34 -0
- data/app/views/categories/index.html.haml +30 -0
- data/app/views/categories/new.html.haml +9 -0
- data/app/views/categories/show.html.haml +45 -0
- data/app/views/clippings/_clipping.html.haml +18 -0
- data/app/views/clippings/_images.html.haml +3 -0
- data/app/views/clippings/_meta.html.haml +26 -0
- data/app/views/clippings/edit.html.haml +26 -0
- data/app/views/clippings/index.html.haml +35 -0
- data/app/views/clippings/load_images_from_uri.js.rjs +1 -0
- data/app/views/clippings/new.html.haml +29 -0
- data/app/views/clippings/new_clipping.html.haml +91 -0
- data/app/views/clippings/show.html.haml +56 -0
- data/app/views/clippings/site_index.html.haml +34 -0
- data/app/views/comments/_comment.html.haml +42 -0
- data/app/views/comments/_comment_form.html.haml +50 -0
- data/app/views/comments/_edit_form.html.haml +29 -0
- data/app/views/comments/create.js.rjs +20 -0
- data/app/views/comments/edit.js.rjs +7 -0
- data/app/views/comments/index.html.haml +23 -0
- data/app/views/comments/update.js.rjs +9 -0
- data/app/views/events/_event.html.haml +32 -0
- data/app/views/events/_subscribe.html.haml +7 -0
- data/app/views/events/edit.html.haml +34 -0
- data/app/views/events/index.html.haml +22 -0
- data/app/views/events/new.html.haml +32 -0
- data/app/views/events/show.html.haml +29 -0
- data/app/views/facebook/_fb_require.html.haml +11 -0
- data/app/views/favorites/_favorite.html.haml +5 -0
- data/app/views/favorites/create.js.rjs +17 -0
- data/app/views/favorites/destroy.js.rjs +14 -0
- data/app/views/favorites/index.html.haml +10 -0
- data/app/views/favorites/show.html.haml +13 -0
- data/app/views/forums/_form.html.haml +21 -0
- data/app/views/forums/edit.html.haml +11 -0
- data/app/views/forums/index.html.haml +70 -0
- data/app/views/forums/new.html.haml +9 -0
- data/app/views/forums/show.html.haml +85 -0
- data/app/views/friendships/_friendship.html.haml +16 -0
- data/app/views/friendships/_friendships.html.erb +14 -0
- data/app/views/friendships/accepted.html.haml +13 -0
- data/app/views/friendships/denied.html.haml +8 -0
- data/app/views/friendships/index.html.erb +3 -0
- data/app/views/friendships/index.xml.builder +29 -0
- data/app/views/friendships/pending.html.haml +7 -0
- data/app/views/friendships/show.html.haml +12 -0
- data/app/views/homepage_features/edit.html.haml +31 -0
- data/app/views/homepage_features/index.html.haml +30 -0
- data/app/views/homepage_features/new.html.haml +30 -0
- data/app/views/homepage_features/show.html.haml +29 -0
- data/app/views/invitations/index.html.erb +16 -0
- data/app/views/invitations/new.html.haml +33 -0
- data/app/views/layouts/application.html.haml +59 -0
- data/app/views/messages/_form.html.haml +24 -0
- data/app/views/messages/_inbox.html.haml +41 -0
- data/app/views/messages/_sent.html.haml +34 -0
- data/app/views/messages/_sidebar_nav.html.haml +9 -0
- data/app/views/messages/index.html.haml +8 -0
- data/app/views/messages/new.html.haml +10 -0
- data/app/views/messages/show.html.haml +40 -0
- data/app/views/metro_areas/edit.html.haml +16 -0
- data/app/views/metro_areas/index.html.haml +28 -0
- data/app/views/metro_areas/new.html.haml +16 -0
- data/app/views/metro_areas/show.html.haml +22 -0
- data/app/views/moderators/_toggle.html.erb +14 -0
- data/app/views/moderators/create.js.rjs +5 -0
- data/app/views/moderators/destroy.js.rjs +1 -0
- data/app/views/monitorships/create.js.rjs +4 -0
- data/app/views/monitorships/destroy.js.rjs +4 -0
- data/app/views/pages/_form.html.haml +25 -0
- data/app/views/pages/edit.html.haml +16 -0
- data/app/views/pages/edit.html.haml~ +16 -0
- data/app/views/pages/index.html.haml +34 -0
- data/app/views/pages/index.html.haml~ +28 -0
- data/app/views/pages/new.html.haml +14 -0
- data/app/views/pages/show.html.haml +8 -0
- data/app/views/pages/show.html.haml~ +6 -0
- data/app/views/password_resets/edit.html.haml +16 -0
- data/app/views/password_resets/new.html.haml +13 -0
- data/app/views/photo_manager/index.html.haml +49 -0
- data/app/views/photos/_manage_photos.html.haml +14 -0
- data/app/views/photos/_show_image_list.html.haml +24 -0
- data/app/views/photos/edit.html.haml +39 -0
- data/app/views/photos/index.html.haml +28 -0
- data/app/views/photos/index.xml.builder +9 -0
- data/app/views/photos/manage_photos.js.rjs +5 -0
- data/app/views/photos/new.html.haml +51 -0
- data/app/views/photos/recent.html.haml +8 -0
- data/app/views/photos/show.html.haml +53 -0
- data/app/views/polls/_edit.html.haml +15 -0
- data/app/views/polls/_excerpt.html.haml +4 -0
- data/app/views/polls/_new.html.haml +10 -0
- data/app/views/polls/_poll_ui.html.haml +37 -0
- data/app/views/polls/_polls_sidebar.html.haml +8 -0
- data/app/views/posts/_author_profile.html.haml +21 -0
- data/app/views/posts/_favorited_post.html.haml +10 -0
- data/app/views/posts/_post.html.haml +29 -0
- data/app/views/posts/_send_to_friend.html.erb +29 -0
- data/app/views/posts/_sidebar_post.html.haml +1 -0
- data/app/views/posts/edit.html.haml +48 -0
- data/app/views/posts/featured.html.haml +19 -0
- data/app/views/posts/index.html.haml +23 -0
- data/app/views/posts/manage.html.haml +66 -0
- data/app/views/posts/new.html.haml +67 -0
- data/app/views/posts/popular.html.haml +35 -0
- data/app/views/posts/preview.html.haml +27 -0
- data/app/views/posts/recent.html.haml +29 -0
- data/app/views/posts/show.html.haml +85 -0
- data/app/views/rsvps/edit.html.haml +9 -0
- data/app/views/rsvps/new.html.haml +9 -0
- data/app/views/sb_posts/_dummy_forum_post.html.erb +13 -0
- data/app/views/sb_posts/_edit.html.erb +31 -0
- data/app/views/sb_posts/_post.xml.builder +10 -0
- data/app/views/sb_posts/_reply_form.html.haml +37 -0
- data/app/views/sb_posts/_sb_post.html.haml +34 -0
- data/app/views/sb_posts/create.js.rjs +16 -0
- data/app/views/sb_posts/edit.html.erb +13 -0
- data/app/views/sb_posts/edit.js.rjs +6 -0
- data/app/views/sb_posts/index.html.haml +55 -0
- data/app/views/sb_posts/index.xml.builder +20 -0
- data/app/views/sb_posts/monitored.html.erb +55 -0
- data/app/views/sb_posts/monitored.xml.builder +15 -0
- data/app/views/sb_posts/update.js.rjs +5 -0
- data/app/views/sessions/new.html.haml +27 -0
- data/app/views/shared/_admin_nav.html.haml +19 -0
- data/app/views/shared/_bio_help.html.haml +4 -0
- data/app/views/shared/_box.html.haml +3 -0
- data/app/views/shared/_contact.html.haml +5 -0
- data/app/views/shared/_explore.html.haml +9 -0
- data/app/views/shared/_footer_content.html.haml +13 -0
- data/app/views/shared/_header.html.haml +42 -0
- data/app/views/shared/_location_chooser.html.haml +21 -0
- data/app/views/shared/_login_sidebar.html.haml +14 -0
- data/app/views/shared/_messages.html.haml +8 -0
- data/app/views/shared/_scripts_and_styles.html.haml +12 -0
- data/app/views/shared/_user_menu.html.haml +21 -0
- data/app/views/sitemap/index.html.haml +21 -0
- data/app/views/sitemap/index.xml.builder +28 -0
- data/app/views/statistics/activities.xml.builder +33 -0
- data/app/views/statistics/index.html.haml +56 -0
- data/app/views/tags/edit.html.haml +19 -0
- data/app/views/tags/index.html.haml +25 -0
- data/app/views/tags/manage.html.haml +37 -0
- data/app/views/tags/show.html.haml +65 -0
- data/app/views/topics/_form.html.haml +28 -0
- data/app/views/topics/_recent_topics_sidebar.haml +22 -0
- data/app/views/topics/edit.html.haml +10 -0
- data/app/views/topics/new.html.haml +21 -0
- data/app/views/topics/show.html.haml +107 -0
- data/app/views/topics/show.xml.builder +15 -0
- data/app/views/user_notifier/activation.text.erb +11 -0
- data/app/views/user_notifier/comment_notice.text.erb +8 -0
- data/app/views/user_notifier/follow_up_comment_notice.text.erb +15 -0
- data/app/views/user_notifier/follow_up_comment_notice_anonymous.text.erb +18 -0
- data/app/views/user_notifier/forgot_username.text.erb +8 -0
- data/app/views/user_notifier/friendship_accepted.text.erb +8 -0
- data/app/views/user_notifier/friendship_request.text.erb +8 -0
- data/app/views/user_notifier/message_notification.text.erb +14 -0
- data/app/views/user_notifier/new_forum_post_notice.text.erb +14 -0
- data/app/views/user_notifier/password_reset_instructions.text.erb +10 -0
- data/app/views/user_notifier/post_recommendation.text.erb +32 -0
- data/app/views/user_notifier/signup_invitation.text.erb +14 -0
- data/app/views/user_notifier/signup_notification.text.erb +16 -0
- data/app/views/users/_dashboard_nav.html.haml +40 -0
- data/app/views/users/_omniauth_connect.html.haml +21 -0
- data/app/views/users/_profile_completeness.html.haml +21 -0
- data/app/views/users/_profile_user_info_sidebar.html.haml +50 -0
- data/app/views/users/_search_options.html.haml +10 -0
- data/app/views/users/_sidebar_user.html.haml +8 -0
- data/app/views/users/_user.html.haml +31 -0
- data/app/views/users/crop_profile_photo.html.haml +40 -0
- data/app/views/users/dashboard.html.haml +44 -0
- data/app/views/users/edit.html.haml +75 -0
- data/app/views/users/edit_account.html.haml +64 -0
- data/app/views/users/forgot_username.html.haml +13 -0
- data/app/views/users/index.html.haml +18 -0
- data/app/views/users/invite.html.haml +31 -0
- data/app/views/users/new.html.haml +54 -0
- data/app/views/users/resend_activation.html.haml +13 -0
- data/app/views/users/show.html.haml +103 -0
- data/app/views/users/signup_completed.html.haml +8 -0
- data/app/views/users/statistics.html.haml +28 -0
- data/app/views/users/upload_profile_photo.html.haml +15 -0
- data/app/views/users/welcome_about.html.haml +66 -0
- data/app/views/users/welcome_invite.html.haml +33 -0
- data/app/views/users/welcome_photo.html.haml +29 -0
- data/app/views/votes/create.js.rjs +6 -0
- data/community_engine.gemspec +55 -0
- data/config/application_config.rb +162 -0
- data/config/initializers/cropper.rb +19 -0
- data/config/initializers/mce_options.rb +40 -0
- data/config/initializers/recaptcha_constants.rb +6 -0
- data/config/initializers/white_list.rb +7 -0
- data/config/locales/de-DE.yml +1271 -0
- data/config/locales/en.yml +1658 -0
- data/config/locales/es-AR.yml +758 -0
- data/config/locales/es-ES.yml +340 -0
- data/config/locales/es-MX.yml +672 -0
- data/config/locales/fr-FR.yml +1509 -0
- data/config/locales/ja-JP.yml +1321 -0
- data/config/locales/ru-RU.yml +97 -0
- data/config/locales/sr-CP.yml +89 -0
- data/config/locales/sv-SE.yml +1320 -0
- data/config/routes.rb +242 -0
- data/db/migrate/001_create_users.rb +26 -0
- data/db/migrate/002_add_activation_code_to_user.rb +11 -0
- data/db/migrate/003_create_photos.rb +22 -0
- data/db/migrate/004_add_tag_support.rb +21 -0
- data/db/migrate/005_create_friendships.rb +14 -0
- data/db/migrate/006_add_comments_tables.rb +18 -0
- data/db/migrate/007_create_friendship_statuses.rb +13 -0
- data/db/migrate/008_add_friendship_statuses.rb +14 -0
- data/db/migrate/009_create_clippings.rb +16 -0
- data/db/migrate/010_create_invitations.rb +14 -0
- data/db/migrate/011_create_homepage_features.rb +22 -0
- data/db/migrate/012_create_posts.rb +19 -0
- data/db/migrate/013_create_states.rb +13 -0
- data/db/migrate/014_add_states.rb +11 -0
- data/db/migrate/015_create_metro_areas.rb +15 -0
- data/db/migrate/016_add_metro_areas.rb +295 -0
- data/db/migrate/017_add_sessions_table.rb +20 -0
- data/db/migrate/018_create_categories.rb +11 -0
- data/db/migrate/019_change_comment_to_text_field.rb +10 -0
- data/db/migrate/020_create_login_slug.rb +9 -0
- data/db/migrate/021_add_category_names.rb +8 -0
- data/db/migrate/023_add_denied_friendship_status.rb +13 -0
- data/db/migrate/024_add_notification_preferences.rb +13 -0
- data/db/migrate/025_create_countries.rb +11 -0
- data/db/migrate/026_add_countries.rb +230 -0
- data/db/migrate/027_add_us_to_existing_metro_areas.rb +9 -0
- data/db/migrate/028_add_country_id_to_users.rb +9 -0
- data/db/migrate/029_add_us_to_users_with_states.rb +14 -0
- data/db/migrate/030_add_users_counter_cache.rb +9 -0
- data/db/migrate/031_news_to_talk.rb +10 -0
- data/db/migrate/033_featured_users.rb +9 -0
- data/db/migrate/034_add_last_login.rb +9 -0
- data/db/migrate/035_track_emailed.rb +9 -0
- data/db/migrate/036_create_skills.rb +11 -0
- data/db/migrate/037_create_offerings.rb +12 -0
- data/db/migrate/038_add_zag_to_users.rb +13 -0
- data/db/migrate/039_create_activities_table.rb +17 -0
- data/db/migrate/040_add_category_tips.rb +9 -0
- data/db/migrate/041_create_events_table.rb +19 -0
- data/db/migrate/042_add_privacy_to_users.rb +10 -0
- data/db/migrate/043_sql_session_store_setup.rb +39 -0
- data/db/migrate/044_category_improvements.rb +11 -0
- data/db/migrate/045_adding_indexes.rb +39 -0
- data/db/migrate/046_adding_ads.rb +20 -0
- data/db/migrate/047_add_polls.rb +30 -0
- data/db/migrate/049_add_activities_count.rb +9 -0
- data/db/migrate/050_create_initial_schema.rb +73 -0
- data/db/migrate/051_add_audience_limitation_to_ads.rb +9 -0
- data/db/migrate/052_create_assets.rb +21 -0
- data/db/migrate/053_create_favoritables.rb +23 -0
- data/db/migrate/054_add_published_as_to_posts.rb +13 -0
- data/db/migrate/055_add_published_at_to_posts.rb +15 -0
- data/db/migrate/056_create_roles.rb +28 -0
- data/db/migrate/057_add_more_indexes.rb +19 -0
- data/db/migrate/058_add_anonymous_commenting_fields.rb +15 -0
- data/db/migrate/059_create_messages.rb +16 -0
- data/db/migrate/060_still_more_indexes.rb +19 -0
- data/db/migrate/061_postgres_compatibility_changes.rb +9 -0
- data/db/migrate/062_add_notify_to_comments.rb +11 -0
- data/db/migrate/063_create_albums.rb +15 -0
- data/db/migrate/064_add_album_id_to_photos.rb +9 -0
- data/db/migrate/065_add_view_count_to_albums.rb +9 -0
- data/db/migrate/066_add_view_count_to_photos.rb +9 -0
- data/db/migrate/067_create_static_pages.rb +22 -0
- data/db/migrate/068_create_rsvps.rb +13 -0
- data/db/migrate/069_create_pages.rb +29 -0
- data/db/migrate/070_add_pages.rb +11 -0
- data/db/migrate/071_authlogic_compatibility_changes.rb +43 -0
- data/db/migrate/072_add_allow_rsvp_to_events.rb +9 -0
- data/db/migrate/073_add_taggings_count_to_tags.rb +9 -0
- data/db/migrate/074_add_threading_to_messages.rb +19 -0
- data/db/migrate/075_add_anonymous_forum_posting.rb +16 -0
- data/db/migrate/076_add_comment_notification_toggle.rb +9 -0
- data/db/migrate/077_paperclip_changes.rb +36 -0
- data/db/migrate/078_create_authorizations.rb +20 -0
- data/db/migrate/079_create_slugs.rb +18 -0
- data/db/sample/users.rb +55 -0
- data/generators/ce_plugin/USAGE +7 -0
- data/generators/ce_plugin/ce_plugin_generator.rb +25 -0
- data/generators/ce_plugin/templates/README +13 -0
- data/generators/ce_plugin/templates/desert_routes.rb +3 -0
- data/generators/ce_plugin/templates/init.rb +8 -0
- data/generators/ce_plugin/templates/plugin.rb +1 -0
- data/generators/plugin_migration/plugin_migration_generator.rb +101 -0
- data/generators/plugin_migration/templates/plugin_migration.erb +13 -0
- data/lang/TRANSLATION.markdown +32 -0
- data/lib/community_engine/authenticated_system.rb +167 -0
- data/lib/community_engine/authenticated_test_helper.rb +113 -0
- data/lib/community_engine/community_engine_sha1_crypto_method.rb +12 -0
- data/lib/community_engine/engine.rb +39 -0
- data/lib/community_engine/engines_extensions.rb +7 -0
- data/lib/community_engine/i18n_extensions.rb +31 -0
- data/lib/community_engine/localized_application.rb +83 -0
- data/lib/community_engine/rails_asset_extensions.rb +131 -0
- data/lib/community_engine/url_upload.rb +15 -0
- data/lib/community_engine/version.rb +10 -0
- data/lib/community_engine/viewable.rb +12 -0
- data/lib/community_engine.rb +34 -0
- data/lib/tag_hacks.rb +24 -0
- data/lib/tasks/community_engine_tasks.rake +87 -0
- data/public/favicon.ico +0 -0
- data/sample_files/s3.yml +17 -0
- data/test/fixtures/ads.yml +13 -0
- data/test/fixtures/albums.yml +16 -0
- data/test/fixtures/categories.yml +16 -0
- data/test/fixtures/clippings.yml +15 -0
- data/test/fixtures/comments.yml +55 -0
- data/test/fixtures/countries.yml +13 -0
- data/test/fixtures/events.yml +61 -0
- data/test/fixtures/files/Granite.bmp +0 -0
- data/test/fixtures/files/library.jpg +0 -0
- data/test/fixtures/forums.yml +10 -0
- data/test/fixtures/friendship_statuses.yml +10 -0
- data/test/fixtures/friendships.yml +15 -0
- data/test/fixtures/homepage_features.yml +13 -0
- data/test/fixtures/invitations.yml +5 -0
- data/test/fixtures/messages.yml +24 -0
- data/test/fixtures/metro_areas.yml +24 -0
- data/test/fixtures/moderatorships.yml +4 -0
- data/test/fixtures/monitorships.yml +10 -0
- data/test/fixtures/pages.yml +26 -0
- data/test/fixtures/photos.yml +29 -0
- data/test/fixtures/posts.yml +49 -0
- data/test/fixtures/roles.yml +9 -0
- data/test/fixtures/rsvps.yml +7 -0
- data/test/fixtures/sb_posts.yml +90 -0
- data/test/fixtures/states.yml +7 -0
- data/test/fixtures/taggings.yml +15 -0
- data/test/fixtures/tags.yml +11 -0
- data/test/fixtures/topics.yml +63 -0
- data/test/fixtures/users.yml +222 -0
- data/test/functional/activities_controller_test.rb +62 -0
- data/test/functional/admin_controller_test.rb +60 -0
- data/test/functional/ads_controller_test.rb +51 -0
- data/test/functional/albums_controller_test.rb +120 -0
- data/test/functional/base_controller_test.rb +27 -0
- data/test/functional/categories_controller_test.rb +51 -0
- data/test/functional/clippings_controller_test.rb +123 -0
- data/test/functional/comments_controller_test.rb +215 -0
- data/test/functional/events_controller_test.rb +104 -0
- data/test/functional/favorites_controller_test.rb +53 -0
- data/test/functional/forums_controller_test.rb +95 -0
- data/test/functional/friendships_controller_test.rb +98 -0
- data/test/functional/homepage_features_controller_test.rb +69 -0
- data/test/functional/invitations_controller_test.rb +45 -0
- data/test/functional/messages_controller_test.rb +154 -0
- data/test/functional/metro_areas_controller_test.rb +63 -0
- data/test/functional/moderators_controller_test.rb +22 -0
- data/test/functional/monitorships_controller_test.rb +72 -0
- data/test/functional/pages_controller_test.rb +95 -0
- data/test/functional/password_reset_controller_test.rb +34 -0
- data/test/functional/photo_manager_controller_test.rb +21 -0
- data/test/functional/photos_controller_test.rb +203 -0
- data/test/functional/posts_controller_test.rb +224 -0
- data/test/functional/rsvps_controller_test.rb +92 -0
- data/test/functional/sb_posts_controller_test.rb +193 -0
- data/test/functional/sessions_controller_test.rb +55 -0
- data/test/functional/sitemap_controller_test.rb +9 -0
- data/test/functional/statistics_controller_test.rb +18 -0
- data/test/functional/tags_controller_test.rb +52 -0
- data/test/functional/theme_controller_test.rb +11 -0
- data/test/functional/topics_controller_test.rb +201 -0
- data/test/functional/users_controller_test.rb +460 -0
- data/test/functional/votes_controller_test.rb +27 -0
- data/test/test_helper.rb +103 -0
- data/test/testapp/.gitignore +4 -0
- data/test/testapp/README +256 -0
- data/test/testapp/Rakefile +7 -0
- data/test/testapp/app/controllers/application_controller.rb +3 -0
- data/test/testapp/app/helpers/application_helper.rb +2 -0
- data/test/testapp/config/application.rb +45 -0
- data/test/testapp/config/application_config.rb +1 -0
- data/test/testapp/config/boot.rb +10 -0
- data/test/testapp/config/database.yml +22 -0
- data/test/testapp/config/environment.rb +6 -0
- data/test/testapp/config/environments/development.rb +25 -0
- data/test/testapp/config/environments/production.rb +49 -0
- data/test/testapp/config/environments/test.rb +35 -0
- data/test/testapp/config/initializers/backtrace_silencers.rb +7 -0
- data/test/testapp/config/initializers/inflections.rb +10 -0
- data/test/testapp/config/initializers/mime_types.rb +5 -0
- data/test/testapp/config/initializers/secret_token.rb +7 -0
- data/test/testapp/config/initializers/session_store.rb +8 -0
- data/test/testapp/config/locales/en.yml +5 -0
- data/test/testapp/config/routes.rb +3 -0
- data/test/testapp/config.ru +4 -0
- data/test/testapp/db/schema.rb +456 -0
- data/test/testapp/db/seeds.rb +7 -0
- data/test/testapp/doc/README_FOR_APP +2 -0
- data/test/testapp/lib/tasks/.gitkeep +0 -0
- data/test/testapp/public/404.html +26 -0
- data/test/testapp/public/422.html +26 -0
- data/test/testapp/public/500.html +26 -0
- data/test/testapp/public/favicon.ico +0 -0
- data/test/testapp/public/images/rails.png +0 -0
- data/test/testapp/public/robots.txt +5 -0
- data/test/testapp/script/rails +6 -0
- data/test/testapp/test/performance/browsing_test.rb +9 -0
- data/test/testapp/test/test_helper.rb +13 -0
- data/test/testapp/vendor/plugins/.gitkeep +0 -0
- data/test/unit/ad_test.rb +34 -0
- data/test/unit/asset_test.rb +15 -0
- data/test/unit/authorization_test.rb +55 -0
- data/test/unit/category_test.rb +22 -0
- data/test/unit/choice_test.rb +9 -0
- data/test/unit/clipping_image_test.rb +17 -0
- data/test/unit/clipping_test.rb +52 -0
- data/test/unit/comment_test.rb +107 -0
- data/test/unit/country_test.rb +15 -0
- data/test/unit/event_test.rb +75 -0
- data/test/unit/favorite_test.rb +71 -0
- data/test/unit/forum_test.rb +23 -0
- data/test/unit/friendship_status_test.rb +10 -0
- data/test/unit/friendship_test.rb +38 -0
- data/test/unit/homepage_feature_test.rb +10 -0
- data/test/unit/invitation_test.rb +27 -0
- data/test/unit/message_test.rb +49 -0
- data/test/unit/message_thread_test.rb +80 -0
- data/test/unit/metro_area_test.rb +10 -0
- data/test/unit/moderatorship_test.rb +30 -0
- data/test/unit/monitorships_test.rb +38 -0
- data/test/unit/page_test.rb +25 -0
- data/test/unit/photo_test.rb +42 -0
- data/test/unit/poll_test.rb +25 -0
- data/test/unit/post_test.rb +212 -0
- data/test/unit/rsvp_test.rb +33 -0
- data/test/unit/sb_post_test.rb +152 -0
- data/test/unit/state_test.rb +10 -0
- data/test/unit/tag_test.rb +22 -0
- data/test/unit/topic_test.rb +111 -0
- data/test/unit/user_notifier_test.rb +108 -0
- data/test/unit/user_test.rb +259 -0
- data/test/unit/vote_test.rb +9 -0
- data/vendor/plugins/activity_tracker/README +4 -0
- data/vendor/plugins/activity_tracker/Rakefile +22 -0
- data/vendor/plugins/activity_tracker/generators/activity_migration/USAGE +13 -0
- data/vendor/plugins/activity_tracker/generators/activity_migration/activity_migration_generator.rb +11 -0
- data/vendor/plugins/activity_tracker/generators/activity_migration/templates/migration.rb +17 -0
- data/vendor/plugins/activity_tracker/init.rb +1 -0
- data/vendor/plugins/activity_tracker/install.rb +1 -0
- data/vendor/plugins/activity_tracker/lib/activity.rb +40 -0
- data/vendor/plugins/activity_tracker/lib/activity_tracker.rb +80 -0
- data/vendor/plugins/activity_tracker/tasks/activity_tracker_tasks.rake +4 -0
- data/vendor/plugins/activity_tracker/test/abstract_unit.rb +47 -0
- data/vendor/plugins/activity_tracker/test/activity_tracker_test.rb +48 -0
- data/vendor/plugins/activity_tracker/test/database.yml +18 -0
- data/vendor/plugins/activity_tracker/test/debug.log +3329 -0
- data/vendor/plugins/activity_tracker/test/fixtures/test_post.rb +5 -0
- data/vendor/plugins/activity_tracker/test/fixtures/test_posts.yml +3 -0
- data/vendor/plugins/activity_tracker/test/fixtures/test_user.rb +4 -0
- data/vendor/plugins/activity_tracker/test/fixtures/test_users.yml +6 -0
- data/vendor/plugins/activity_tracker/test/schema.rb +21 -0
- data/vendor/plugins/activity_tracker/uninstall.rb +1 -0
- data/vendor/plugins/acts_as_list/README +23 -0
- data/vendor/plugins/acts_as_list/init.rb +3 -0
- data/vendor/plugins/acts_as_list/lib/active_record/acts/list.rb +256 -0
- data/vendor/plugins/acts_as_list/test/list_test.rb +332 -0
- data/vendor/plugins/acts_as_publishable/README +3 -0
- data/vendor/plugins/acts_as_publishable/Rakefile +22 -0
- data/vendor/plugins/acts_as_publishable/generators/publishing/publishing_generator.rb +34 -0
- data/vendor/plugins/acts_as_publishable/generators/publishing/templates/migration.rb +13 -0
- data/vendor/plugins/acts_as_publishable/init.rb +3 -0
- data/vendor/plugins/acts_as_publishable/install.rb +3 -0
- data/vendor/plugins/acts_as_publishable/lib/acts_as_publishable.rb +81 -0
- data/vendor/plugins/acts_as_publishable/test/acts_as_publishable_test.rb +8 -0
- data/vendor/plugins/acts_as_publishable/uninstall.rb +1 -0
- data/vendor/plugins/auto_complete/README +23 -0
- data/vendor/plugins/auto_complete/Rakefile +22 -0
- data/vendor/plugins/auto_complete/init.rb +2 -0
- data/vendor/plugins/auto_complete/lib/auto_complete.rb +47 -0
- data/vendor/plugins/auto_complete/lib/auto_complete_macros_helper.rb +143 -0
- data/vendor/plugins/auto_complete/test/auto_complete_test.rb +67 -0
- data/vendor/plugins/enumerations_mixin/LICENSE +20 -0
- data/vendor/plugins/enumerations_mixin/README_ENUMERATIONS +163 -0
- data/vendor/plugins/enumerations_mixin/init.rb +21 -0
- data/vendor/plugins/enumerations_mixin/lib/active_record/acts/enumerated.rb +177 -0
- data/vendor/plugins/enumerations_mixin/lib/active_record/aggregations/has_enumerated.rb +60 -0
- data/vendor/plugins/enumerations_mixin/lib/active_record/virtual_enumerations.rb +68 -0
- data/vendor/plugins/enumerations_mixin/virtual_enumerations_sample.rb +76 -0
- data/vendor/plugins/prototype_legacy_helper/README.markdown +13 -0
- data/vendor/plugins/prototype_legacy_helper/init.rb +1 -0
- data/vendor/plugins/prototype_legacy_helper/lib/prototype_legacy_helper.rb +432 -0
- data/vendor/plugins/prototype_legacy_helper/test/test_prototype_helper.rb +297 -0
- data/vendor/plugins/resource_feeder/README +4 -0
- data/vendor/plugins/resource_feeder/Rakefile +22 -0
- data/vendor/plugins/resource_feeder/init.rb +2 -0
- data/vendor/plugins/resource_feeder/lib/resource_feeder/atom.rb +71 -0
- data/vendor/plugins/resource_feeder/lib/resource_feeder/rss.rb +71 -0
- data/vendor/plugins/resource_feeder/lib/resource_feeder.rb +2 -0
- data/vendor/plugins/resource_feeder/test/atom_feed_test.rb +85 -0
- data/vendor/plugins/resource_feeder/test/rss_feed_test.rb +61 -0
- data/vendor/plugins/resource_feeder/test/test_helper.rb +60 -0
- data/vendor/plugins/respond_to_parent/MIT-LICENSE +20 -0
- data/vendor/plugins/respond_to_parent/README +47 -0
- data/vendor/plugins/respond_to_parent/Rakefile +22 -0
- data/vendor/plugins/respond_to_parent/init.rb +1 -0
- data/vendor/plugins/respond_to_parent/install.rb +1 -0
- data/vendor/plugins/respond_to_parent/lib/responds_to_parent.rb +70 -0
- data/vendor/plugins/respond_to_parent/test/responds_to_parent_test.rb +10 -0
- data/vendor/plugins/respond_to_parent/test/test_helper.rb +6 -0
- data/vendor/plugins/respond_to_parent/uninstall.rb +1 -0
- data/vendor/plugins/tiny_mce/CHANGELOG_PLUGIN.rdoc +91 -0
- data/vendor/plugins/tiny_mce/CHANGELOG_TINYMCE +1226 -0
- data/vendor/plugins/tiny_mce/DEV_UPGRADE_NOTES.rdoc +12 -0
- data/vendor/plugins/tiny_mce/init.rb +2 -0
- data/vendor/plugins/tiny_mce/install.rb +18 -0
- data/vendor/plugins/tiny_mce/lib/tiny_mce/base.rb +33 -0
- data/vendor/plugins/tiny_mce/lib/tiny_mce/configuration.rb +114 -0
- data/vendor/plugins/tiny_mce/lib/tiny_mce/exceptions.rb +14 -0
- data/vendor/plugins/tiny_mce/lib/tiny_mce/helpers.rb +43 -0
- data/vendor/plugins/tiny_mce/lib/tiny_mce/railtie.rb +13 -0
- data/vendor/plugins/tiny_mce/lib/tiny_mce/spell_checker.rb +67 -0
- data/vendor/plugins/tiny_mce/lib/tiny_mce/valid_tinymce_langs.yml +25 -0
- data/vendor/plugins/tiny_mce/lib/tiny_mce/valid_tinymce_options.yml +167 -0
- data/vendor/plugins/tiny_mce/lib/tiny_mce.rb +24 -0
- data/vendor/plugins/white_list/README +35 -0
- data/vendor/plugins/white_list/Rakefile +22 -0
- data/vendor/plugins/white_list/init.rb +35 -0
- data/vendor/plugins/white_list/lib/white_list_helper.rb +61 -0
- data/vendor/plugins/white_list/test/white_list_test.rb +120 -0
- metadata +1073 -0
data/.gitignore
ADDED
data/.gitmodules
ADDED
File without changes
|
data/.travis.yml
ADDED
data/CHANGELOG
ADDED
@@ -0,0 +1,118 @@
|
|
1
|
+
= TODO
|
2
|
+
# * replace paginating find with will paginate
|
3
|
+
# * replace att_fu with paperclip
|
4
|
+
# * fix boot;
|
5
|
+
# * recaptcha constants
|
6
|
+
# * rip out beta mode and teaser stuff
|
7
|
+
# * clean up routes
|
8
|
+
# * take out vendors/offerings stuff
|
9
|
+
# * take out ez where
|
10
|
+
# * remote_form_for is gone (use dynamic_form gem/prototype legacy helper)
|
11
|
+
# * finding transparently by login is broken (fixed using friendly_id)
|
12
|
+
# * can't dup nilclass error in Rails timezone conversion (fixed with a little patch, should get fixed in a new version of Rails)
|
13
|
+
# * tinymce isn't working
|
14
|
+
# * fix responds-to-parent
|
15
|
+
# * replace white_list with something (sanitize?) (preserve stuff from white list initializer)
|
16
|
+
# * fix rakismet initializer
|
17
|
+
# * configure configatron from ruby, not yaml
|
18
|
+
|
19
|
+
* mce_opts initializer
|
20
|
+
* replace old multiple uploader
|
21
|
+
* fix photo uploading from welcome_photo page
|
22
|
+
* add back searching to users index
|
23
|
+
* remove all the theming stuff
|
24
|
+
* replace setup template with something else more sensible
|
25
|
+
* allow overriding initializers, autoloading assets, etc
|
26
|
+
* remove stylesheet customization
|
27
|
+
* use aato instead of aatos (and fix pg problems)
|
28
|
+
* authlogic has problems: not sure it's recording last_login magic columns, investigate
|
29
|
+
* Bug in rails fixtures.rb on 849 - use fixtures_path.to_s.size instead
|
30
|
+
* swap jquery for prototype
|
31
|
+
* photo cropping is not working
|
32
|
+
* fix commentable routing (path prefix)
|
33
|
+
* use Sanitize or Loofah gem
|
34
|
+
|
35
|
+
=2.0.0.pre
|
36
|
+
* Rails 3.1.0.beta1 compatibility
|
37
|
+
|
38
|
+
=1.9.9
|
39
|
+
|
40
|
+
* Rails 3.1 compatibility
|
41
|
+
* Ruby 1.9.2 compatibility
|
42
|
+
* Use Paperclip instead of attachment_fu
|
43
|
+
* Add Omniauth
|
44
|
+
* Remove lots of old, unused featured (contests, skills, offerings, etc.)
|
45
|
+
|
46
|
+
=1.2.1
|
47
|
+
* Anonymous forum replies
|
48
|
+
* Turn comment notifications on or off by post
|
49
|
+
* Allow admins/mods to edit comments (they can already delete them)
|
50
|
+
* Fix security vulnerability in AuthenticatedSystem
|
51
|
+
|
52
|
+
=1.2.0
|
53
|
+
* Threaded private messages
|
54
|
+
* Clear cache link in admin dashboard
|
55
|
+
* Add support for using rakismet gem to check comments for spam (see README for instructions)
|
56
|
+
|
57
|
+
=1.1.0
|
58
|
+
* fixed time_ago formatting problem on user/index
|
59
|
+
* user Authlogic's perishable token for doing password resets (instead of sending them a password)
|
60
|
+
|
61
|
+
|
62
|
+
= 1.0.4.2
|
63
|
+
* Rails 2.3.4 compatibility (all tests pass, Takk)
|
64
|
+
* Add searchlogic gem dependency (searchlogic is awesome, will be using it more in the future, currently just using on admin_controller#comments)
|
65
|
+
* Add searchlogic to manage tags page, add taggings_count to tags (new migration)
|
66
|
+
|
67
|
+
= 1.0.4
|
68
|
+
* Changes to Japanese language translations
|
69
|
+
* Use authlogic instead of restful_authentication (augthlogic gem now required, new migrations required) (thanks jnimety!)
|
70
|
+
* Big overhaul of i18n by sdecleire, more international-friendly translation tokens. `en` is now the default locale (instead of `en-US`)
|
71
|
+
|
72
|
+
|
73
|
+
= 1.0.3
|
74
|
+
* complete private messages integration, allow sending messages to multiple recipients
|
75
|
+
* upgrades to Event functionality, including RSVPs (eksatx)
|
76
|
+
* Photo albums, Static pages and messages controller tests (juafrlo, eksatx)
|
77
|
+
* calendar_date_select, icalendar gems now required
|
78
|
+
* added ability to unsubscribe from comment notifications for anonymous comments
|
79
|
+
* ical format output for Events to allow subscriptions
|
80
|
+
|
81
|
+
= 1.0.2
|
82
|
+
* Rails 2.3 compatibility
|
83
|
+
* RedCloth no longer required
|
84
|
+
* fixed swfupload to work with 2.3 and use Rack middleware
|
85
|
+
* use Desert plugin for code mixing and plugin migrations instead of Engines
|
86
|
+
* allow moderators/activity owners to delete activities
|
87
|
+
* only track login activity once per day
|
88
|
+
* allow anonymous commenters to choose whether they want to receive follow-up comment notices by e-mail
|
89
|
+
* refactor views to use 'box' helper for logical content modules, allowing better flexibility when trying to customize layouts
|
90
|
+
|
91
|
+
= 1.0.1
|
92
|
+
* fixed error when cropping photos using file system storage
|
93
|
+
* fixed error on messages#delete
|
94
|
+
|
95
|
+
|
96
|
+
= 1.0.0
|
97
|
+
* postgres compatibility (thanks Johannes)
|
98
|
+
* Some SEO improvements to page titles and urls for showing tags
|
99
|
+
* Fixed a security vulnerability
|
100
|
+
* updated to newest attachment_fu plugin (note new cropping in geometry strings for photo in application.yml)
|
101
|
+
- this attachment fu requires ImageMagick 6.4 or greater
|
102
|
+
* updated swfupload to fix flash 10 compatibility
|
103
|
+
* added ability to crop profile photo to better fit dimensions (/username/crop_profile_photo)
|
104
|
+
* updated TinyMCE scripts
|
105
|
+
* updated to newest Prototype and scriptaculous, and removed unused javascript files
|
106
|
+
|
107
|
+
= 0.10.8
|
108
|
+
|
109
|
+
* Updating CE for Rails 2.2.2 compatibility
|
110
|
+
* Removed Globalite in favor of Rails' native I18n API. Ce localization should work without modification
|
111
|
+
* renamed dozens of files to use Rails 2.0 conventions (ie. .html.haml)
|
112
|
+
* updated truncate calls to use new options hash format
|
113
|
+
|
114
|
+
|
115
|
+
= 0.10.7
|
116
|
+
|
117
|
+
* Updating CE to be compatible with Rails 2.1.2
|
118
|
+
* Lots of il8n refactoring, mainly using symbol tokens instead of string for localization in views.
|
data/Gemfile
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
The "CommunityEngine" plugin is distributed under the MIT license (which
|
2
|
+
is the same license that Ruby on Rails is distributed under). This license
|
3
|
+
does not include any code found in the "community_engine/plugins" directory. Those plugins
|
4
|
+
are each licensed individually and their licenses should be reviewed before
|
5
|
+
you use this application. Most plugins are also licensed under the MIT
|
6
|
+
license, but some may not be. If a plugin does not
|
7
|
+
have a license, due diligence should be taken to find the license on the
|
8
|
+
plugin's website.
|
9
|
+
|
10
|
+
|
11
|
+
The MIT license:
|
12
|
+
Copyright (c) 2011 Curbly, LLC
|
13
|
+
|
14
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
15
|
+
of this software and associated documentation files (the "Software"), to deal
|
16
|
+
in the Software without restriction, including without limitation the rights
|
17
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
18
|
+
copies of the Software, and to permit persons to whom the Software is
|
19
|
+
furnished to do so, subject to the following conditions:
|
20
|
+
|
21
|
+
The above copyright notice and this permission notice shall be included in
|
22
|
+
all copies or substantial portions of the Software.
|
23
|
+
|
24
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
25
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
26
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
27
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
28
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
29
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
30
|
+
THE SOFTWARE.
|
data/README.markdown
ADDED
@@ -0,0 +1,188 @@
|
|
1
|
+
** Using Rails 2.x? You want the [master branch](https://github.com/bborn/communityengine)
|
2
|
+
|
3
|
+
CommunityEngine [![Build Status](https://secure.travis-ci.org/bborn/communityengine.png)](http://travis-ci.org/bborn/communityengine)
|
4
|
+
|
5
|
+
Information at: [http://www.communityengine.org](http://www.communityengine.org)
|
6
|
+
|
7
|
+
Requirements:
|
8
|
+
|
9
|
+
- RAILS VERSION 3.1.2
|
10
|
+
|
11
|
+
Getting CommunityEngine Running
|
12
|
+
--------------------------------
|
13
|
+
|
14
|
+
1. Copy the following into your `Gemfile`:
|
15
|
+
|
16
|
+
gem 'community_engine', '2.0.0.beta1', :git => 'https://github.com/bborn/communityengine.git', :branch => 'rails3'
|
17
|
+
|
18
|
+
2. From your app's root directory run:
|
19
|
+
|
20
|
+
$ bundle install --binstubs
|
21
|
+
$ bin/rake community_engine:install:migrations
|
22
|
+
$ bin/rake db:migrate
|
23
|
+
|
24
|
+
3. Add a file called `application_config.rb` to your `config` directory. In it put (at least):
|
25
|
+
|
26
|
+
configatron.community_name = "Your Application Name"
|
27
|
+
# See CE's application_config.rb to see all the other configuration options available
|
28
|
+
|
29
|
+
4. Mount CommunityEngine in your `config/routes.rb` file:
|
30
|
+
|
31
|
+
mount CommunityEngine::Engine => "/"
|
32
|
+
|
33
|
+
5. Delete the default `views/layouts/application.html.erb` that Rails created for you. Delete `public/index.html` if you haven't already.
|
34
|
+
|
35
|
+
6. Start your server!
|
36
|
+
|
37
|
+
$ bin/rails server
|
38
|
+
|
39
|
+
Optional Configuration
|
40
|
+
======================
|
41
|
+
|
42
|
+
To override the default configuration, create an `application_config.rb` file in `Rails.root/config`
|
43
|
+
|
44
|
+
The application configuration defined in this file overrides the one defined in the [CommunityEngine gem](https://github.com/bborn/communityengine/blob/rails3/config/application_config.rb)
|
45
|
+
|
46
|
+
This is where you can change commonly used configuration variables, like `configatron.community_name`, etc.
|
47
|
+
|
48
|
+
|
49
|
+
OmniAuth Configuration:
|
50
|
+
=======================
|
51
|
+
|
52
|
+
You can allow users to sign up and log in using their accounts from other social networks (like Facbeook, Twitter, LinkedIn, etc.). To do so, just add an initializer in your app's `config/initializers` directory called `omniauth.rb`. In it, put:
|
53
|
+
|
54
|
+
Rails.application.config.middleware.use OmniAuth::Builder do
|
55
|
+
provider :twitter, 'CONSUMER_KEY', 'CONSUMER_SECRET'
|
56
|
+
provider :facebook, 'APP_ID', 'APP_SECRET'
|
57
|
+
provider :linked_in, 'CONSUMER_KEY', 'CONSUMER_SECRET'
|
58
|
+
end
|
59
|
+
|
60
|
+
See the [OmniAuth Github repository](https://github.com/intridea/omniauth) for more information and configuration options.
|
61
|
+
|
62
|
+
|
63
|
+
Photo Uploading
|
64
|
+
---------------
|
65
|
+
|
66
|
+
By default CommunityEngine uses the filesystem to store photos.
|
67
|
+
|
68
|
+
To use Amazon S3 as the backend for your file uploads,you'll need to add a file called `s3.yml` to the application's root config directory (examples are in `/community_engine/sample_files`).
|
69
|
+
|
70
|
+
You'll need to change your configuration in your `application_config.rb` to tell CommunityEngine to use s3 as the photo backend. For more, see the Paperclip documentation on S3 storage for uploads: https://github.com/thoughtbot/paperclip/blob/master/lib/paperclip/storage/s3.rb
|
71
|
+
|
72
|
+
Finally, you'll need an S3 account for S3 photo uploading.
|
73
|
+
|
74
|
+
|
75
|
+
|
76
|
+
Roles
|
77
|
+
------
|
78
|
+
|
79
|
+
CommunityEngine Users have a Role (by default, it's admin, moderator, or member)
|
80
|
+
|
81
|
+
Once logged in as an admin, you'll be able to toggle other users between moderator and member (just go to their profile page and look on the sidebar.)
|
82
|
+
|
83
|
+
Admins and moderators can edit and delete other users posts.
|
84
|
+
|
85
|
+
There is a rake task to make an existing user into an admin:
|
86
|
+
|
87
|
+
rake community_engine:make_admin email=user@foo.com
|
88
|
+
|
89
|
+
(Pass in the e-mail of the user you'd like to make an admin)
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
Localization
|
94
|
+
------------
|
95
|
+
|
96
|
+
Localization is done via Rails native I18n API. We've added some extensions to String and Symbol to let them respond to the `.l` method. That allows for a look up of the symbol (or a symbolized version of the string).
|
97
|
+
|
98
|
+
For complex strings with substitutions, Symbols respond to the `.l` method with a hash passed as an argument, for example:
|
99
|
+
|
100
|
+
:welcome.l :name => current_user.name
|
101
|
+
|
102
|
+
And in your language file you'd have:
|
103
|
+
|
104
|
+
welcome: "Welcome {{name}}"
|
105
|
+
|
106
|
+
To customize the language, or add a new language create a new yaml file in `Rails.root/config/locales`. The name of the file should be `LANG-LOCALE.yml` (`e.g. en-US.yml` or `es-PR`). The language only file (`es.yml`) will support all locales.
|
107
|
+
|
108
|
+
|
109
|
+
Spam Control
|
110
|
+
------------
|
111
|
+
|
112
|
+
Spam sucks. Most likely, you'll need to implement some custom solution to control spam on your site, but CE offers a few tools to help with the basics.
|
113
|
+
|
114
|
+
ReCaptcha: to allow non-logged-in commenting and use [ReCaptcha](http://recaptcha.net/) to ensure robots aren't submitting comments to your site, just add the following lines to your `application_config.rb`:
|
115
|
+
|
116
|
+
:allow_anonymous_commenting => true,
|
117
|
+
:recaptcha_pub_key => YOUR_PUBLIC_KEY,
|
118
|
+
:recaptcha_priv_key => YOUR_PRIVATE_KEY
|
119
|
+
|
120
|
+
You can also require ReCaptcha on signup (to prevent automated signups) by adding this in your `application_config.rb` (you'll still need to add your ReCaptcha keys):
|
121
|
+
|
122
|
+
:require_captcha_on_signup => true
|
123
|
+
|
124
|
+
Akismet: Unfortunately, bots aren't the only ones submitting spam; humans do it too. [Akismet](http://akismet.com/) is a great collaborative spam filter from the makers of Wordpress, and you can use it to check for spam comments by adding one line to your `application_config.rb`:
|
125
|
+
|
126
|
+
:akismet_key => YOUR_KEY
|
127
|
+
|
128
|
+
|
129
|
+
Integrating with Your Application & Overriding CE
|
130
|
+
-------------------------------------------------
|
131
|
+
|
132
|
+
To make a controller from your application use CE's layout and inherit CE's helper methods, make it inherit from `BaseController`. For example:
|
133
|
+
|
134
|
+
class RecipesController < BaseController
|
135
|
+
|
136
|
+
before_filter :login_required
|
137
|
+
|
138
|
+
uses_tiny_mce do
|
139
|
+
{:only => [:show], :options => configatron.default_mce_options}
|
140
|
+
end
|
141
|
+
|
142
|
+
end
|
143
|
+
|
144
|
+
To override or modify a controller, helper, or model from CE, you can use the `require_from_ce` helper method. For example, to override a method in CE's `User` model, create `app/models/user.rb`:
|
145
|
+
|
146
|
+
class User < ActiveRecordBase
|
147
|
+
require_from_ce('models/user')
|
148
|
+
|
149
|
+
#add a new association
|
150
|
+
has_many :recipes
|
151
|
+
|
152
|
+
#override an existing method
|
153
|
+
def display_name
|
154
|
+
login.capitalize
|
155
|
+
end
|
156
|
+
|
157
|
+
end
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
|
162
|
+
Other notes
|
163
|
+
-----------
|
164
|
+
|
165
|
+
Any views you create in your app directory will override those in CommunityEngine
|
166
|
+
For example, you could create `Rails.root/app/views/layouts/application.html.haml` and have that include your own stylesheets, etc.
|
167
|
+
|
168
|
+
|
169
|
+
Contributors - Thanks! :)
|
170
|
+
-------------------------
|
171
|
+
|
172
|
+
- Bryan Kearney - localization
|
173
|
+
- Alex Nesbitt - forgot password bugs
|
174
|
+
- Alejandro Raiczyk - Spanish localization
|
175
|
+
- [Fritz Thielemann](http://github.com/fritzek) - German localization, il8n
|
176
|
+
- [Oleg Ivanov](http://github.com/morhekil) - `acts_as_taggable_on_steroids`
|
177
|
+
- David Fugere - French localization
|
178
|
+
- Barry Paul - routes refactoring
|
179
|
+
- [Andrei Erdoss](http://github.com/cauta) localization
|
180
|
+
- [Errol Siegel](http://github.com/eksatx) simple private messages integration, documentation help
|
181
|
+
- Carl Fyffe - documentation, misc.
|
182
|
+
- [Juan de Frías](http://github.com/juafrlo) static pages, photo albums, message_controller tests
|
183
|
+
- [Joel Nimety](http://github.com/jnimety) authlogic authentication
|
184
|
+
- [Stephane Decleire](http://github.com/sdecleire) i18n, fr-FR locale
|
185
|
+
|
186
|
+
|
187
|
+
|
188
|
+
Bug tracking is via [GitHub Issues](https://github.com/bborn/communityengine/issues)
|
data/Rakefile
ADDED
@@ -0,0 +1,54 @@
|
|
1
|
+
#!/usr/bin/env rake
|
2
|
+
begin
|
3
|
+
require 'bundler/setup'
|
4
|
+
rescue LoadError
|
5
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
6
|
+
end
|
7
|
+
|
8
|
+
APP_RAKEFILE = File.expand_path("../test/testapp/Rakefile", __FILE__)
|
9
|
+
puts APP_RAKEFILE
|
10
|
+
load 'rails/tasks/engine.rake'
|
11
|
+
|
12
|
+
require 'rake/testtask'
|
13
|
+
task :default => :test
|
14
|
+
|
15
|
+
desc 'Runs test:units, test:functionals'
|
16
|
+
task :test do
|
17
|
+
tests_to_run = %w(test:units test:functionals)
|
18
|
+
errors = tests_to_run.collect do |task|
|
19
|
+
begin
|
20
|
+
Rake::Task[task].invoke
|
21
|
+
nil
|
22
|
+
rescue => e
|
23
|
+
task
|
24
|
+
end
|
25
|
+
end.compact
|
26
|
+
abort "Errors running #{errors * ', '}!" if errors.any?
|
27
|
+
end
|
28
|
+
|
29
|
+
namespace :test do
|
30
|
+
|
31
|
+
Rake::TestTask.new(:functionals) do |t|
|
32
|
+
t.libs << "lib"
|
33
|
+
t.libs << "test"
|
34
|
+
t.pattern = 'test/functional/**/*_test.rb'
|
35
|
+
t.verbose = true
|
36
|
+
end
|
37
|
+
|
38
|
+
Rake::TestTask.new(:units) do |t|
|
39
|
+
t.libs << "lib"
|
40
|
+
t.libs << "test"
|
41
|
+
t.pattern = 'test/unit/**/*_test.rb'
|
42
|
+
t.verbose = true
|
43
|
+
end
|
44
|
+
|
45
|
+
end
|
46
|
+
|
47
|
+
|
48
|
+
task :build do
|
49
|
+
system "gem build community_engine.gemspec"
|
50
|
+
end
|
51
|
+
|
52
|
+
task :release => :build do
|
53
|
+
system "gem push community_engine-#{CommunityEngine::Version::STRING}.gem"
|
54
|
+
end
|
data/UPGRADING.markdown
ADDED
@@ -0,0 +1,93 @@
|
|
1
|
+
Upgrading to v1.2.1
|
2
|
+
===================
|
3
|
+
Run `ruby script/generate plugin_migration`
|
4
|
+
Run `rake db:migrate`
|
5
|
+
Run `rake test && rake community_engine:test`
|
6
|
+
|
7
|
+
|
8
|
+
Upgrading to v1.2.0
|
9
|
+
===================
|
10
|
+
Run `ruby script/generate plugin_migration`
|
11
|
+
Run `rake db:migrate`
|
12
|
+
Run `rake test && rake community_engine:test`
|
13
|
+
To migrate existing private messages to the new threaded message format, run `rake community_engine:add_threads_to_existing_messages` on your production server (CAREFUL: make backups first!)
|
14
|
+
|
15
|
+
|
16
|
+
Upgrading to v1.1.0
|
17
|
+
=====================
|
18
|
+
Run `ruby script/generate plugin_migration`
|
19
|
+
Run `rake db:migrate`
|
20
|
+
Run `rake test && rake community_engine:test`
|
21
|
+
|
22
|
+
|
23
|
+
Upgrading to v1.0.4.2
|
24
|
+
=====================
|
25
|
+
Run `rake gems:install`
|
26
|
+
Run `ruby script/generate plugin_migration`
|
27
|
+
Run `rake db:migrate`
|
28
|
+
Run `rake test && rake community_engine:test`
|
29
|
+
That's it!
|
30
|
+
|
31
|
+
Note: this version adds a counter_cache to taggings, so you may need to update the counter on your existing tags by doing something like:
|
32
|
+
|
33
|
+
Tag.all.each do |tag|
|
34
|
+
Tag.update_counters tag.id, :taggings_count => tag.taggings.length
|
35
|
+
end
|
36
|
+
|
37
|
+
If you have many tags, this could take a while, though.
|
38
|
+
|
39
|
+
Upgrading to v1.0.4
|
40
|
+
===================
|
41
|
+
Run `ruby script/generate plugin_migration`
|
42
|
+
Make sure you have the following in your `environment.rb`:
|
43
|
+
|
44
|
+
config.gem 'authlogic'
|
45
|
+
config.gem 'icalendar'
|
46
|
+
config.gem 'calendar_date_select'
|
47
|
+
|
48
|
+
Run `rake db:migrate`
|
49
|
+
That's it!
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
Upgrading v1.0.2
|
54
|
+
================
|
55
|
+
|
56
|
+
Beginning with CE v.1.0.2, we have started using the Desert gem instead of the Engines plugin. Desert does many of the things the Engines plugin did, but also allows model code mixing. Also, in light of Engine's inclusion into Rails core, it appeared many of the features CE loves about Engines (plugin migrations, asset helpers, code mixing) were going to be dropped.
|
57
|
+
|
58
|
+
Upgrading an Engines-based CE app to use the new Desert-based CE is easy:
|
59
|
+
|
60
|
+
1. Modify your environment.rb as indicated in **step #6** of README.markdown.
|
61
|
+
|
62
|
+
2. Delete the engines plugin directory (`rm -rf vendor/plugins/engines`). If you had submoduled it, make sure to delete the submodule info as well:
|
63
|
+
|
64
|
+
Delete the relevant line from the .gitmodules file.
|
65
|
+
Delete the relevant section from .git/config.
|
66
|
+
Run git rm --cached vendor/plugins/engines (no trailing slash).
|
67
|
+
Run rm -rf vendor/plugins/engines
|
68
|
+
Commit your changes
|
69
|
+
|
70
|
+
|
71
|
+
2. run `rake:rails:update` (coming from anything < Rails 2.3)
|
72
|
+
|
73
|
+
3. Update your app's `test_helper.rb`, replacing `Test::Unit::TestCase` with `ActiveSupport::TestCase`
|
74
|
+
|
75
|
+
4. `rake test` && `rake community_engine:test`
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
Notes
|
80
|
+
=====
|
81
|
+
If you have old migrations from the Engines-based CE, you may experience some problems if you try to migrate your db from version 0. That's because the old plugin migrations used the `Engines.plugins["community_engine"].migrate(version_number)` format. You'll need to replace all those with `migrate_plugin(:community_engine, version_number)`.
|
82
|
+
|
83
|
+
Here's a regex that might help you in doing that:
|
84
|
+
|
85
|
+
Find:
|
86
|
+
|
87
|
+
(Engines|Rails)\.plugins\[\"community_engine\"\]\.migrate\(([0-9]+)\)
|
88
|
+
|
89
|
+
Replace:
|
90
|
+
|
91
|
+
migrate_plugin(:community_engine, $2)
|
92
|
+
|
93
|
+
Also, you need to run `rake community_engine:db:migrate:upgrade_desert_plugin_migrations` before you migrate any _new_ CE migrations, to ensure your plugin migrations are listed in the correct table. Please note that you'll have to do this (carefully, and with backups) in production as well. Please post any questions to the CE Google Group.
|
data/about.yml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
author: Bruno Bornsztein
|
2
|
+
email: bruno.bornsztein@gmail.com
|
3
|
+
homepage: http://www.missingmethod.com
|
4
|
+
summary: A social networking engine
|
5
|
+
description: Adds basic social networking capabilities to your existing application, including users, blogs, photos, clippings, favorites, and more.
|
6
|
+
license: MIT
|
7
|
+
version: 2.0.0.beta
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|