droom 0.4.3 → 0.5.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/app/assets/images/droom/admin_menu.png +0 -0
- data/app/assets/images/droom/applications_menu.png +0 -0
- data/app/assets/images/droom/arrows_small.png +0 -0
- data/app/assets/images/droom/config_menu.png +0 -0
- data/app/assets/images/droom/dropdown.png +0 -0
- data/app/assets/images/droom/menu/asterisk.png +0 -0
- data/app/assets/images/droom/{smalladd.png → menu/smalladd.png} +0 -0
- data/app/assets/images/droom/{small_asterisk.png → menu/smallasterisk.png} +0 -0
- data/app/assets/images/droom/{smalldelete.png → menu/smalldelete.png} +0 -0
- data/app/assets/images/droom/{smalldownload.png → menu/smalldownload.png} +0 -0
- data/app/assets/images/droom/{smalledit.png → menu/smalledit.png} +0 -0
- data/app/assets/images/droom/message.png +0 -0
- data/app/assets/images/droom/missing/scrap.jpg +0 -0
- data/app/assets/images/droom/missing/scrap.png +0 -0
- data/app/assets/images/droom/missing/thumb.png +0 -0
- data/app/assets/images/droom/missing/user.png +0 -0
- data/app/assets/images/droom/object_icons.png +0 -0
- data/app/assets/images/droom/panel/add.png +0 -0
- data/app/assets/images/droom/panel/edit.png +0 -0
- data/app/assets/images/droom/panel/manage.png +0 -0
- data/app/assets/images/droom/pointer_upwards.png +0 -0
- data/app/assets/images/droom/search_menu.png +0 -0
- data/app/assets/images/droom/setter.png +0 -0
- data/app/assets/images/droom/small_icons.png +0 -0
- data/app/assets/images/droom/stream/closer.png +0 -0
- data/app/assets/images/droom/stream/next.png +0 -0
- data/app/assets/images/droom/stream/prev.png +0 -0
- data/app/assets/images/droom/stream/previous.png +0 -0
- data/app/assets/images/droom/subscribe.png +0 -0
- data/app/assets/javascripts/droom.js.coffee +23 -13
- data/app/assets/javascripts/droom/actions.js.coffee +104 -10
- data/app/assets/javascripts/droom/ajax.js.coffee +36 -24
- data/app/assets/javascripts/droom/extensions.js.coffee +13 -0
- data/app/assets/javascripts/droom/lib/jquery.datepicker.js +1026 -0
- data/app/assets/javascripts/droom/lib/jquery.deserialize.js +142 -0
- data/app/assets/javascripts/droom/lib/jquery_ujs.js +416 -0
- data/app/assets/javascripts/droom/lib/swipe.js +568 -0
- data/app/assets/javascripts/droom/lib/underscore.js +1276 -0
- data/app/assets/javascripts/droom/popups.js.coffee +98 -37
- data/app/assets/javascripts/droom/stream.js.coffee +119 -77
- data/app/assets/javascripts/droom/utilities.js.coffee +25 -3
- data/app/assets/javascripts/droom/widgets.js.coffee +318 -253
- data/app/assets/stylesheets/droom.css.sass +482 -955
- data/app/assets/stylesheets/droom/_mixins.css.sass +12 -42
- data/app/assets/stylesheets/droom/_popups.css.sass +28 -11
- data/app/assets/stylesheets/droom/_stream.css.sass +375 -0
- data/app/assets/stylesheets/droom/_toolbar.css.sass +0 -6
- data/app/assets/stylesheets/droom/_variables.css.sass +4 -2
- data/app/controllers/droom/agenda_categories_controller.rb +6 -14
- data/app/controllers/droom/api/api_controller.rb +56 -0
- data/app/controllers/droom/api/events_controller.rb +74 -0
- data/app/controllers/droom/api/users_controller.rb +92 -0
- data/app/controllers/droom/api/venues_controller.rb +71 -0
- data/app/controllers/droom/calendars_controller.rb +4 -10
- data/app/controllers/droom/{user_confirmations_controller.rb → confirmations_controller.rb} +8 -7
- data/app/controllers/droom/dashboard_controller.rb +2 -19
- data/app/controllers/droom/documents_controller.rb +12 -60
- data/app/controllers/droom/dropbox_tokens_controller.rb +3 -4
- data/app/controllers/droom/engine_controller.rb +39 -11
- data/app/controllers/droom/events_controller.rb +62 -84
- data/app/controllers/droom/folders_controller.rb +30 -40
- data/app/controllers/droom/group_invitations_controller.rb +6 -23
- data/app/controllers/droom/group_permissions_controller.rb +26 -0
- data/app/controllers/droom/groups_controller.rb +10 -14
- data/app/controllers/droom/invitations_controller.rb +7 -25
- data/app/controllers/droom/memberships_controller.rb +13 -18
- data/app/controllers/droom/organisations_controller.rb +6 -25
- data/app/controllers/droom/permissions_controller.rb +50 -0
- data/app/controllers/droom/preferences_controller.rb +9 -10
- data/app/controllers/droom/scraps_controller.rb +23 -26
- data/app/controllers/droom/services_controller.rb +50 -0
- data/app/controllers/droom/suggestions_controller.rb +6 -4
- data/app/controllers/droom/users/confirmations_controller.rb +24 -0
- data/app/controllers/droom/users/passwords_controller.rb +39 -0
- data/app/controllers/droom/users/sessions_controller.rb +7 -0
- data/app/controllers/droom/users_controller.rb +60 -38
- data/app/controllers/droom/venues_controller.rb +8 -15
- data/app/controllers/droom/youtube_controller.rb +1 -1
- data/app/helpers/droom/droom_helper.rb +22 -17
- data/app/models/droom/ability.rb +81 -0
- data/app/models/droom/agenda_category.rb +0 -1
- data/app/models/droom/calendar.rb +12 -7
- data/app/models/droom/category.rb +4 -10
- data/app/models/droom/concerns/slugged.rb +21 -0
- data/app/models/droom/document.rb +15 -17
- data/app/models/droom/dropbox_document.rb +3 -6
- data/app/models/droom/dropbox_token.rb +2 -3
- data/app/models/droom/event.rb +117 -163
- data/app/models/droom/event_type.rb +25 -0
- data/app/models/droom/folder.rb +36 -48
- data/app/models/droom/group.rb +35 -27
- data/app/models/droom/group_invitation.rb +7 -10
- data/app/models/droom/group_permission.rb +29 -0
- data/app/models/droom/invitation.rb +14 -23
- data/app/models/droom/mailing_list_membership.rb +0 -1
- data/app/models/droom/membership.rb +32 -31
- data/app/models/droom/organisation.rb +6 -3
- data/app/models/droom/permission.rb +19 -0
- data/app/models/droom/personal_folder.rb +9 -21
- data/app/models/droom/preference.rb +1 -2
- data/app/models/droom/scrap.rb +31 -26
- data/app/models/droom/service.rb +31 -0
- data/app/models/droom/tag.rb +10 -9
- data/app/models/droom/tagging.rb +1 -1
- data/app/models/droom/user.rb +453 -130
- data/app/models/droom/user_permission.rb +8 -0
- data/app/models/droom/venue.rb +21 -32
- data/app/serializers/droom/user_serializer.rb +45 -0
- data/app/serializers/droom/venue_serializer.rb +5 -0
- data/app/views/droom/dashboard/_documents.html.haml +1 -1
- data/app/views/droom/dashboard/_folders.html.haml +1 -1
- data/app/views/droom/dashboard/_future_events.html.haml +10 -8
- data/app/views/droom/dashboard/_groups.html.haml +1 -1
- data/app/views/droom/dashboard/_past_events.haml +19 -12
- data/app/views/droom/dashboard/_stream.html.haml +2 -2
- data/app/views/droom/{users/_extra_columns.html.haml → dashboard/_welcome.html.haml} +0 -0
- data/app/views/droom/dashboard/index.html.haml +3 -0
- data/app/views/droom/documents/_document.html.haml +0 -2
- data/app/views/droom/documents/_documents.html.haml +1 -1
- data/app/views/droom/documents/_documents_list.html.haml +1 -1
- data/app/views/droom/documents/_documents_table.html.haml +1 -1
- data/app/views/droom/documents/_form.html.haml +8 -5
- data/app/views/droom/documents/_listing.html.haml +4 -2
- data/app/views/droom/documents/index.html.haml +13 -7
- data/app/views/droom/documents/new.html.haml +1 -4
- data/app/views/droom/events/_action_menu.html.haml +2 -2
- data/app/views/droom/events/_attachments.html.haml +8 -0
- data/app/views/droom/events/_calendar.html.haml +4 -8
- data/app/views/droom/events/_event.html.haml +44 -63
- data/app/views/droom/events/_event_line.html.haml +1 -1
- data/app/views/droom/events/_events.html.haml +18 -2
- data/app/views/droom/events/_form.html.haml +26 -19
- data/app/views/droom/events/_invitations.html.haml +7 -3
- data/app/views/droom/events/_scrap_events.html.haml +8 -0
- data/app/views/droom/events/_suggested.html.haml +4 -1
- data/app/views/droom/events/calendar.html.haml +8 -0
- data/app/views/droom/events/index.html.haml +24 -26
- data/app/views/droom/events/show.html.haml +6 -6
- data/app/views/droom/folders/_contents.html.haml +34 -4
- data/app/views/droom/folders/_folder.html.haml +7 -2
- data/app/views/droom/folders/_form.html.haml +11 -8
- data/app/views/droom/folders/index.html.haml +19 -22
- data/app/views/droom/group_invitations/_attending_groups.html.haml +1 -1
- data/app/views/droom/group_permissions/_toggle.html.haml +18 -0
- data/app/views/droom/groups/_action_menu.haml +0 -2
- data/app/views/droom/groups/_created.html.haml +0 -1
- data/app/views/droom/groups/_form.html.haml +3 -0
- data/app/views/droom/groups/_group.html.haml +10 -8
- data/app/views/droom/groups/_groups.html.haml +1 -1
- data/app/views/droom/groups/_search_result.html.haml +1 -1
- data/app/views/droom/groups/_suggested.html.haml +1 -1
- data/app/views/droom/groups/index.html.haml +15 -16
- data/app/views/droom/invitations/_form.html.haml +1 -1
- data/app/views/droom/invitations/_invitation.html.haml +1 -1
- data/app/views/droom/invitations/_invitations.html.haml +4 -4
- data/app/views/droom/memberships/_button.html.haml +5 -5
- data/app/views/droom/memberships/_form.html.haml +26 -7
- data/app/views/droom/memberships/_member.html.haml +1 -1
- data/app/views/droom/memberships/{_membership_toggle.html.haml → _toggle.html.haml} +4 -4
- data/app/views/droom/memberships/index.html.haml +9 -0
- data/app/views/droom/organisations/_action_menu.html.haml +1 -1
- data/app/views/droom/organisations/_organisation.html.haml +2 -2
- data/app/views/droom/organisations/_suggested.html.haml +1 -1
- data/app/views/droom/organisations/index.html.haml +11 -11
- data/app/views/droom/panels/_admin.html.haml +2 -2
- data/app/views/droom/panels/_configuration.html.haml +28 -0
- data/app/views/droom/panels/_devices.html.haml +2 -4
- data/app/views/droom/panels/_search.html.haml +9 -0
- data/app/views/droom/permissions/_action_menu.html.haml +10 -0
- data/app/views/droom/permissions/_created.html.haml +3 -0
- data/app/views/droom/permissions/_form.html.haml +17 -0
- data/app/views/droom/permissions/edit.html.haml +7 -0
- data/app/views/droom/permissions/new.html.haml +8 -0
- data/app/views/droom/permissions/show.html.haml +4 -0
- data/app/views/droom/preferences/_checkbox.html.haml +4 -2
- data/app/views/droom/scraps/_caption.html.haml +0 -2
- data/app/views/droom/scraps/_credit.html.haml +1 -1
- data/app/views/droom/scraps/_form.html.haml +68 -69
- data/app/views/droom/scraps/_preload.html.haml +4 -0
- data/app/views/droom/scraps/_stream.html.haml +11 -3
- data/app/views/droom/scraps/_thumb.html.haml +33 -1
- data/app/views/droom/scraps/edit.html.haml +6 -1
- data/app/views/droom/scraps/full/_document.html.haml +4 -3
- data/app/views/droom/scraps/full/_event.html.haml +17 -16
- data/app/views/droom/scraps/full/_image.html.haml +1 -2
- data/app/views/droom/scraps/full/_link.html.haml +4 -3
- data/app/views/droom/scraps/full/_quote.html.haml +4 -7
- data/app/views/droom/scraps/full/_text.html.haml +3 -2
- data/app/views/droom/scraps/full/_video.html.haml +2 -2
- data/app/views/droom/scraps/new.html.haml +6 -1
- data/app/views/droom/scraps/show.html.haml +4 -3
- data/app/views/droom/services/_action_menu.html.haml +12 -0
- data/app/views/droom/services/_created.html.haml +3 -0
- data/app/views/droom/services/_form.html.haml +18 -0
- data/app/views/droom/services/_services.html.haml +44 -0
- data/app/views/droom/services/edit.html.haml +7 -0
- data/app/views/droom/services/index.html.haml +5 -0
- data/app/views/droom/{people → services}/new.html.haml +4 -3
- data/app/views/droom/services/show.html.haml +4 -0
- data/app/views/droom/shared/_controls.html.haml +2 -2
- data/app/views/droom/shared/_navigation.html.haml +2 -2
- data/app/views/droom/shared/_toolbar.html.haml +1 -1
- data/app/views/droom/suggestions/index.html.haml +1 -0
- data/app/views/droom/users/_action_menu.html.haml +21 -0
- data/app/views/droom/users/_suggested.html.haml +14 -0
- data/app/views/droom/users/_user.html.haml +2 -2
- data/app/views/droom/users/_users.html.haml +7 -0
- data/app/views/droom/users/_users_table.html.haml +21 -22
- data/app/views/droom/users/admin.html.haml +10 -0
- data/app/views/droom/users/confirmations/_after_confirmation.html.haml +2 -0
- data/app/views/droom/users/confirmations/_password_required.html.haml +30 -0
- data/app/views/droom/users/confirmations/failure.en.html.haml +22 -0
- data/app/views/droom/users/confirmations/show.html.haml +13 -0
- data/app/views/droom/users/edit.html.haml +2 -10
- data/app/views/droom/users/edit/_details.html.haml +13 -0
- data/app/views/droom/users/edit/_memberships.html.haml +13 -0
- data/app/views/droom/users/edit/_password_fields.html.haml +16 -0
- data/app/views/droom/users/edit/_preferences.html.haml +37 -0
- data/app/views/droom/users/edit/_profile.html.haml +26 -0
- data/app/views/droom/users/edit/_user_fields.html.haml +66 -0
- data/app/views/droom/users/index.html.haml +6 -32
- data/app/views/droom/users/new.html.haml +3 -0
- data/app/views/droom/users/passwords/completed.html.haml +13 -0
- data/app/views/{devise → droom/users}/passwords/edit.html.haml +10 -4
- data/app/views/{devise → droom/users}/passwords/new.html.haml +4 -3
- data/app/views/droom/users/passwords/show.html.haml +6 -0
- data/app/views/droom/users/show.html.haml +2 -0
- data/app/views/droom/users/show/_listed.html.haml +46 -0
- data/app/views/droom/users/show/_profile.html.haml +33 -0
- data/app/views/droom/users/show/_tabled.html.haml +28 -0
- data/config/initializers/chronic.rb +2 -0
- data/config/initializers/devise.rb +35 -2
- data/config/initializers/paperclip.rb +11 -6
- data/config/locales/devise.en.yml +1 -1
- data/config/locales/en.yml +198 -103
- data/config/routes.rb +37 -45
- data/db/migrate/20130207123614_stream.rb +5 -1
- data/db/migrate/20130225095328_create_droom_calendars.rb +0 -1
- data/db/migrate/20130627065459_permissions.rb +34 -0
- data/db/migrate/20130627071938_users_take_over.rb +38 -0
- data/db/migrate/20130627073759_user_properties.rb +34 -0
- data/db/migrate/20130627080021_no_more_people.rb +11 -0
- data/db/migrate/20130701122935_directory_groups.rb +8 -0
- data/db/migrate/20130701123152_remove_old_access_control.rb +16 -0
- data/db/migrate/20130729102857_more_scrap_data.rb +12 -0
- data/db/migrate/20130904080340_international_names.rb +17 -0
- data/db/migrate/20130904080341_honours.rb +5 -0
- data/db/migrate/20131124082222_simple_addresses.rb +25 -0
- data/db/migrate/20131201093351_event_time_zone.rb +5 -0
- data/db/migrate/20131217060311_session_revocable.rb +5 -0
- data/db/migrate/20131219180311_event_types.rb +15 -0
- data/lib/devise/strategies/cookie_authenticatable.rb +46 -0
- data/lib/droom.rb +48 -33
- data/lib/droom/auth_cookie.rb +82 -0
- data/lib/droom/cropper.rb +24 -0
- data/lib/droom/engine.rb +20 -2
- data/lib/droom/folders.rb +6 -6
- data/lib/droom/lazy_hash.rb +11 -1
- data/lib/droom/monkeys.rb +6 -6
- data/lib/droom/taggability.rb +1 -1
- data/lib/droom/validators.rb +1 -1
- data/lib/droom/version.rb +1 -1
- data/lib/generators/droom/install/templates/droom_initializer.rb +10 -2
- data/lib/paperclip/geometry_transformation.rb +80 -0
- data/lib/paperclip/validators/attachment_height_validator.rb +89 -0
- data/lib/paperclip/validators/attachment_width_validator.rb +89 -0
- data/lib/paperclip_processors/offset_thumbnail.rb +85 -0
- data/spec/dummy/config/application.rb +0 -7
- data/spec/dummy/config/environments/development.rb +1 -10
- data/spec/dummy/config/environments/production.rb +1 -0
- data/spec/dummy/config/environments/test.rb +2 -7
- data/spec/dummy/db/migrate/20130130120631_folder_ancestry_to_parents.droom.rb +1 -1
- data/spec/dummy/db/migrate/20130724124758_dropbox_tokens.droom.rb +10 -0
- data/spec/dummy/db/migrate/20130724124759_preference_uuids.droom.rb +6 -0
- data/spec/dummy/db/migrate/20130724124760_stream.droom.rb +14 -0
- data/spec/dummy/db/migrate/20130724124761_access_token_secret.droom.rb +6 -0
- data/spec/dummy/db/migrate/20130724124762_person_image.droom.rb +10 -0
- data/spec/dummy/db/migrate/20130724124763_devise_confirmable.droom.rb +14 -0
- data/spec/dummy/db/migrate/20130724124764_create_droom_calendars.droom.rb +20 -0
- data/spec/dummy/db/migrate/20130724124765_give_scraps_document.droom.rb +6 -0
- data/spec/dummy/db/migrate/20130724124766_privateness.droom.rb +10 -0
- data/spec/dummy/db/migrate/20130724124767_store_metadata.droom.rb +6 -0
- data/spec/dummy/db/migrate/20130724124768_folders_nicely.droom.rb +7 -0
- data/spec/dummy/db/migrate/20130724124769_niceties.droom.rb +8 -0
- data/spec/dummy/db/migrate/20130724124770_create_droom_dropbox_documents.droom.rb +12 -0
- data/spec/dummy/db/migrate/20130724124771_dropbox_documents_changed.droom.rb +6 -0
- data/spec/dummy/db/migrate/20130724124772_user_titles.droom.rb +6 -0
- data/spec/dummy/db/migrate/20130724124773_permissions.droom.rb +35 -0
- data/spec/dummy/db/migrate/20130724124774_users_take_over.droom.rb +39 -0
- data/spec/dummy/db/migrate/20130724124775_user_properties.droom.rb +35 -0
- data/spec/dummy/db/migrate/20130724124776_no_more_people.droom.rb +12 -0
- data/spec/dummy/db/migrate/20130724124777_directory_groups.droom.rb +9 -0
- data/spec/dummy/db/migrate/20130724124778_remove_old_access_control.droom.rb +17 -0
- data/spec/dummy/db/schema.rb +217 -140
- data/spec/factories/documents.rb +0 -5
- data/spec/factories/events.rb +0 -9
- data/spec/factories/user.rb +4 -2
- data/spec/lib/droom/folders_spec.rb +8 -8
- data/spec/models/droom/document_spec.rb +6 -43
- data/spec/models/droom/event_spec.rb +0 -34
- data/spec/models/droom/mailing_list_membership_spec.rb +4 -4
- data/spec/models/droom/membership_spec.rb +2 -2
- data/spec/spec_helper.rb +1 -10
- metadata +322 -282
- data/app/assets/images/droom/Untitled-1.png +0 -0
- data/app/assets/images/droom/asterisk.png +0 -0
- data/app/assets/images/droom/smallmanage.png +0 -0
- data/app/assets/javascripts/droom/lib/kalendae.js +0 -1692
- data/app/assets/stylesheets/lib/_kalendae.css.sass +0 -139
- data/app/controllers/droom/pages_controller.rb +0 -61
- data/app/controllers/droom/people_controller.rb +0 -111
- data/app/models/droom/document_attachment.rb +0 -37
- data/app/models/droom/page.rb +0 -26
- data/app/models/droom/person.rb +0 -309
- data/app/models/droom/recurrence_rule.rb +0 -82
- data/app/models/droom/user_action_observer.rb +0 -12
- data/app/views/devise/confirmations/failure.en.html.haml +0 -20
- data/app/views/devise/confirmations/show.html.haml +0 -19
- data/app/views/droom/confirmations/show.html.haml +0 -40
- data/app/views/droom/documents/_document_line.html.haml +0 -2
- data/app/views/droom/events/_created.html.haml +0 -2
- data/app/views/droom/folders/_attachments.html.haml +0 -3
- data/app/views/droom/pages/_contents.html.haml +0 -10
- data/app/views/droom/pages/_form.html.haml +0 -36
- data/app/views/droom/pages/_full_page.html.haml +0 -17
- data/app/views/droom/pages/_page.html.haml +0 -5
- data/app/views/droom/pages/_pages.html.haml +0 -2
- data/app/views/droom/pages/admin.html.haml +0 -24
- data/app/views/droom/pages/edit.html.haml +0 -1
- data/app/views/droom/pages/index.html.haml +0 -10
- data/app/views/droom/pages/new.html.haml +0 -4
- data/app/views/droom/pages/show.html.haml +0 -5
- data/app/views/droom/panels/_account.html.haml +0 -16
- data/app/views/droom/panels/_readers.html.haml +0 -18
- data/app/views/droom/panels/_suggestions.html.haml +0 -15
- data/app/views/droom/people/_action_menu.html.haml +0 -22
- data/app/views/droom/people/_created.html.haml +0 -6
- data/app/views/droom/people/_form.html.haml +0 -66
- data/app/views/droom/people/_listing.html.haml +0 -19
- data/app/views/droom/people/_memberships.html.haml +0 -24
- data/app/views/droom/people/_people.html.haml +0 -5
- data/app/views/droom/people/_person.html.haml +0 -32
- data/app/views/droom/people/_search_result.html.haml +0 -14
- data/app/views/droom/people/_suggested.html.haml +0 -14
- data/app/views/droom/people/edit.html.haml +0 -9
- data/app/views/droom/people/index.html.haml +0 -8
- data/app/views/droom/people/show.html.haml +0 -31
- data/app/views/droom/scraps/_heading.html.haml +0 -16
- data/app/views/droom/scraps/thumbs/_document.html.haml +0 -9
- data/app/views/droom/scraps/thumbs/_event.html.haml +0 -17
- data/app/views/droom/scraps/thumbs/_image.html.haml +0 -6
- data/app/views/droom/scraps/thumbs/_link.html.haml +0 -10
- data/app/views/droom/scraps/thumbs/_quote.html.haml +0 -8
- data/app/views/droom/scraps/thumbs/_text.html.haml +0 -8
- data/app/views/droom/scraps/thumbs/_video.html.haml +0 -6
- data/app/views/droom/users/_extra_columns_header.html.haml +0 -0
- data/app/views/droom/users/_extra_columns_note.html.haml +0 -0
- data/app/views/droom/users/_form.html.haml +0 -14
- data/app/views/droom/users/_password_fields.html.haml +0 -15
- data/app/views/droom/users/_user_or_person.html.haml +0 -72
- data/app/views/kaminari/_paginator.html.haml +0 -16
- data/lib/droom/dav_resource.rb +0 -36
- data/lib/droom/model_helpers.rb +0 -25
- data/lib/droom/routing.rb +0 -13
- data/spec/datasets/calendar_events_dataset.rb +0 -44
- data/spec/datasets/calendar_pages_dataset.rb +0 -8
- data/spec/datasets/calendar_sites_dataset.rb +0 -6
- data/spec/datasets/calendars_dataset.rb +0 -34
- data/spec/datasets/documents_dataset.rb +0 -28
- data/spec/datasets/recurrence_dataset.rb +0 -7
- data/spec/dummy/config/sunspot.yml +0 -17
- data/spec/dummy/log/dav.log +0 -1
- data/spec/dummy/log/development.log +0 -2
- data/spec/dummy/log/test.log +0 -1
- data/spec/dummy/solr/conf/admin-extra.html +0 -31
- data/spec/dummy/solr/conf/elevate.xml +0 -36
- data/spec/dummy/solr/conf/mapping-ISOLatin1Accent.txt +0 -246
- data/spec/dummy/solr/conf/protwords.txt +0 -21
- data/spec/dummy/solr/conf/schema.xml +0 -238
- data/spec/dummy/solr/conf/scripts.conf +0 -24
- data/spec/dummy/solr/conf/solrconfig.xml +0 -934
- data/spec/dummy/solr/conf/spellings.txt +0 -2
- data/spec/dummy/solr/conf/stopwords.txt +0 -58
- data/spec/dummy/solr/conf/synonyms.txt +0 -31
- data/spec/dummy/solr/data/development/index/segments.gen +0 -0
- data/spec/dummy/solr/data/development/index/segments_1 +0 -0
- data/spec/dummy/solr/data/development/spellchecker/segments.gen +0 -0
- data/spec/dummy/solr/data/development/spellchecker/segments_1 +0 -0
- data/spec/dummy/solr/data/test/index/segments.gen +0 -0
- data/spec/dummy/solr/data/test/index/segments_3nu +0 -0
- data/spec/dummy/solr/data/test/spellchecker/segments.gen +0 -0
- data/spec/dummy/solr/data/test/spellchecker/segments_1 +0 -0
- data/spec/factories/recurrence_rules.rb +0 -25
- data/spec/models/droom/person_spec.rb +0 -72
- data/spec/models/droom/recurrence_rule_spec.rb +0 -81
data/config/routes.rb
CHANGED
@@ -1,35 +1,44 @@
|
|
1
1
|
Droom::Engine.routes.draw do
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
), :anchor => false, :constraints => { :subdomain => Droom.dav_subdomain }
|
2
|
+
root to: "dashboard#index", as: :dashboard
|
3
|
+
|
4
|
+
get '/help/:slug' => 'pages#show', as: 'help_page'
|
5
|
+
get '/help' => 'pages#index', as: 'help'
|
6
|
+
get '/videos.:format' => 'youtube#index', as: "videos"
|
7
|
+
get '/videos/:yt_id.:format' => 'youtube#show', as: "video"
|
9
8
|
|
10
|
-
|
9
|
+
match '/suggestions' => 'suggestions#index', as: "suggestions", via: [:get, :options]
|
10
|
+
match '/suggestions/:type' => 'suggestions#index', via: [:get, :options]
|
11
11
|
|
12
|
+
namespace :api, defaults: {format: 'json'}, constraints: {format: /(json|xml)/} do
|
13
|
+
get '/authenticate/:tok' => 'users#authenticate', as: 'authenticate'
|
14
|
+
get '/deauthenticate/:tok' => 'users#deauthenticate', as: 'deauthenticate'
|
15
|
+
resources :users
|
16
|
+
resources :events
|
17
|
+
resources :venues
|
18
|
+
end
|
19
|
+
|
20
|
+
devise_for :users, class_name: 'Droom::User', module: :devise, controllers: {confirmations: 'droom/users/confirmations', sessions: 'droom/users/sessions', passwords: 'droom/users/passwords'}
|
21
|
+
|
12
22
|
# intermediate confirmation step to allow invitation without setting a password
|
13
23
|
devise_scope :user do
|
14
|
-
get "/users/:id/welcome/:confirmation_token" => "
|
15
|
-
|
24
|
+
get "/users/:id/welcome/:confirmation_token" => "users/confirmations#show", as: :welcome
|
25
|
+
patch "/users/:id/confirm" => "users/confirmations#update", as: :confirm_password
|
26
|
+
get "/users/passwords/show" => "users/passwords#show", as: :show_confirmation
|
27
|
+
get "/users/passwords/completed" => "users/passwords#completed", as: :complete_confirmation
|
28
|
+
end
|
29
|
+
|
30
|
+
resources :services do
|
31
|
+
resources :permissions
|
16
32
|
end
|
17
|
-
|
18
33
|
|
19
|
-
resources :users
|
20
34
|
resources :documents
|
21
35
|
resources :preferences
|
22
|
-
resources :calendars
|
23
36
|
resources :invitations
|
24
37
|
resources :memberships
|
25
|
-
|
26
|
-
resources :scraps do
|
27
|
-
collection do
|
28
|
-
match "feed/:auth_token.:format" => "scraps#index", :as => :feed
|
29
|
-
end
|
30
|
-
end
|
38
|
+
resources :scraps
|
31
39
|
|
32
40
|
resources :events do
|
41
|
+
get "calendar", on: :collection
|
33
42
|
resources :invitations do
|
34
43
|
member do
|
35
44
|
put :accept
|
@@ -40,52 +49,35 @@ Droom::Engine.routes.draw do
|
|
40
49
|
resources :group_invitations
|
41
50
|
resources :documents
|
42
51
|
resources :agenda_categories
|
43
|
-
collection do
|
44
|
-
get "calendar"
|
45
|
-
match "feed/:auth_token.:format" => "events#feed", :as => :feed
|
46
|
-
end
|
47
52
|
end
|
48
53
|
|
49
|
-
resources :documents#, :
|
54
|
+
resources :documents#, only: [:index, :show]
|
50
55
|
resources :folders do
|
51
|
-
get "dropbox", :
|
56
|
+
get "dropbox", on: :member, as: :dropbox
|
52
57
|
resources :documents
|
53
58
|
resources :folders
|
54
59
|
end
|
55
60
|
|
56
61
|
resources :organisations do
|
57
|
-
resources :
|
62
|
+
resources :users
|
58
63
|
end
|
59
64
|
|
60
|
-
resources :
|
61
|
-
get "
|
62
|
-
|
63
|
-
|
64
|
-
match "feed/:auth_token.:format" => "events#index", :as => :feed
|
65
|
-
end
|
66
|
-
end
|
65
|
+
resources :users do
|
66
|
+
get "preferences", on: :member, as: :preferences
|
67
|
+
get "admin", on: :collection
|
68
|
+
resources :events
|
67
69
|
end
|
68
70
|
|
69
71
|
resources :groups do
|
70
72
|
resources :memberships
|
71
|
-
resources :
|
73
|
+
resources :group_permissions
|
72
74
|
end
|
73
75
|
|
74
76
|
resources :venues
|
75
77
|
resources :pages
|
76
78
|
|
77
79
|
resources :dropbox_tokens do
|
78
|
-
get "/register", :
|
80
|
+
get "/register", on: :collection, action: :create
|
79
81
|
end
|
80
|
-
|
81
|
-
|
82
|
-
match '/help/:slug', :to => 'pages#show', :as => 'help_page'
|
83
|
-
match '/help', :to => 'pages#index', :as => 'help'
|
84
|
-
|
85
|
-
match '/videos.:format', :to => 'youtube#index', :as => "videos"
|
86
|
-
match '/videos/:yt_id.:format', :to => 'youtube#show', :as => "video"
|
87
|
-
match '/suggestions.:format', :to => 'suggestions#index', :as => "suggestions", :defaults => {:format => 'json'}
|
88
|
-
match '/suggestions/:type.:format', :to => 'suggestions#index', :defaults => {:format => 'json'}
|
89
82
|
|
90
|
-
root :to => "dashboard#index", :as => :dashboard
|
91
83
|
end
|
@@ -3,7 +3,11 @@ class Stream < ActiveRecord::Migration
|
|
3
3
|
create_table :droom_scraps do |t|
|
4
4
|
t.string :name
|
5
5
|
t.text :body
|
6
|
-
t.
|
6
|
+
t.attachment :image
|
7
|
+
t.integer :image_offset_top
|
8
|
+
t.integer :image_offset_left
|
9
|
+
t.integer :image_scale_width
|
10
|
+
t.integer :image_scale_height
|
7
11
|
t.integer :created_by_id
|
8
12
|
t.string :scraptype
|
9
13
|
t.string :note
|
@@ -0,0 +1,34 @@
|
|
1
|
+
class Permissions < ActiveRecord::Migration
|
2
|
+
|
3
|
+
def change
|
4
|
+
create_table :droom_services do |t|
|
5
|
+
t.string :name
|
6
|
+
t.string :slug
|
7
|
+
t.string :url
|
8
|
+
t.text :description
|
9
|
+
end
|
10
|
+
|
11
|
+
create_table :droom_permissions do |t|
|
12
|
+
t.integer :service_id
|
13
|
+
t.string :name
|
14
|
+
t.string :slug
|
15
|
+
t.text :description
|
16
|
+
t.integer :position
|
17
|
+
t.timestamps
|
18
|
+
end
|
19
|
+
|
20
|
+
create_table :droom_group_permissions do |t|
|
21
|
+
t.integer :group_id
|
22
|
+
t.integer :permission_id
|
23
|
+
t.timestamps
|
24
|
+
end
|
25
|
+
|
26
|
+
create_table :droom_user_permissions do |t|
|
27
|
+
t.integer :user_id
|
28
|
+
t.integer :group_permission_id
|
29
|
+
t.integer :permission_id
|
30
|
+
t.timestamps
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
class UsersTakeOver < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
add_column :droom_invitations, :user_id, :integer
|
4
|
+
add_column :droom_memberships, :user_id, :integer
|
5
|
+
add_column :droom_personal_folders, :user_id, :integer
|
6
|
+
add_column :droom_dropbox_documents, :user_id, :integer
|
7
|
+
|
8
|
+
add_index :droom_invitations, :user_id
|
9
|
+
add_index :droom_memberships, :user_id
|
10
|
+
add_index :droom_personal_folders, :user_id
|
11
|
+
add_index :droom_dropbox_documents, :user_id
|
12
|
+
|
13
|
+
user_ids_by_person = Droom::Person.all.each_with_object({}) do |person, carrier|
|
14
|
+
carrier[person.id] = person.user.id if person.user
|
15
|
+
end
|
16
|
+
|
17
|
+
Droom::Invitation.reset_column_information
|
18
|
+
Droom::Invitation.all.each do |inv|
|
19
|
+
inv.update_column :user_id, user_ids_by_person[inv.person_id]
|
20
|
+
end
|
21
|
+
|
22
|
+
Droom::Membership.reset_column_information
|
23
|
+
Droom::Membership.all.each do |mem|
|
24
|
+
mem.update_column :user_id, user_ids_by_person[mem.person_id]
|
25
|
+
end
|
26
|
+
|
27
|
+
Droom::PersonalFolder.reset_column_information
|
28
|
+
Droom::PersonalFolder.all.each do |pf|
|
29
|
+
pf.update_column :user_id, user_ids_by_person[pf.person_id]
|
30
|
+
end
|
31
|
+
|
32
|
+
Droom::DropboxDocument.reset_column_information
|
33
|
+
Droom::DropboxDocument.all.each do |dd|
|
34
|
+
dd.update_column :user_id, user_ids_by_person[dd.person_id]
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
class UserProperties < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
add_column :droom_users, :uid, :string
|
4
|
+
add_column :droom_users, :organisation_id, :integer
|
5
|
+
add_column :droom_users, :phone, :string
|
6
|
+
add_column :droom_users, :description, :text
|
7
|
+
add_column :droom_users, :post_line1, :string
|
8
|
+
add_column :droom_users, :post_line2, :string
|
9
|
+
add_column :droom_users, :post_city, :string
|
10
|
+
add_column :droom_users, :post_region, :string
|
11
|
+
add_column :droom_users, :post_country, :string
|
12
|
+
add_column :droom_users, :post_code, :string
|
13
|
+
add_column :droom_users, :mobile, :string
|
14
|
+
add_column :droom_users, :dob, :datetime
|
15
|
+
add_column :droom_users, :private, :boolean
|
16
|
+
add_column :droom_users, :public, :boolean
|
17
|
+
add_column :droom_users, :female, :boolean
|
18
|
+
add_attachment :droom_users, :image
|
19
|
+
add_column :droom_users, :image_offset_top, :integer
|
20
|
+
add_column :droom_users, :image_offset_left, :integer
|
21
|
+
add_column :droom_users, :image_scale_width, :integer
|
22
|
+
add_column :droom_users, :image_scale_height, :integer
|
23
|
+
|
24
|
+
Droom::User.reset_column_information
|
25
|
+
Droom::Person.all.each do |p|
|
26
|
+
if u = Droom::User.find(p.user_id)
|
27
|
+
u.update_attributes p.attributes.slice(*%w{organisation_id phone description description post_line1 post_line2 post_city post_region post_country post_code mobile image})
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
|
@@ -0,0 +1,11 @@
|
|
1
|
+
class NoMorePeople < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
remove_column :droom_invitations, :person_id
|
4
|
+
remove_column :droom_memberships, :person_id
|
5
|
+
remove_column :droom_personal_folders, :person_id
|
6
|
+
remove_column :droom_dropbox_documents, :person_id
|
7
|
+
|
8
|
+
drop_table :droom_people
|
9
|
+
drop_table :droom_personal_documents
|
10
|
+
end
|
11
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
class RemoveOldAccessControl < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
remove_column :droom_groups, :private
|
4
|
+
remove_column :droom_groups, :public
|
5
|
+
remove_column :droom_groups, :privileged
|
6
|
+
|
7
|
+
remove_column :droom_events, :private
|
8
|
+
remove_column :droom_events, :public
|
9
|
+
|
10
|
+
remove_column :droom_users, :private
|
11
|
+
remove_column :droom_users, :public
|
12
|
+
|
13
|
+
remove_column :droom_documents, :private
|
14
|
+
remove_column :droom_documents, :public
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
class MoreScrapData < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
add_column :droom_scraps, :youtube_id, :string
|
4
|
+
add_column :droom_scraps, :url, :string
|
5
|
+
|
6
|
+
Droom::Scrap.reset_column_information
|
7
|
+
Droom::Scrap.videos.each do |scrap|
|
8
|
+
scrap.update_column(:youtube_id, scrap.body)
|
9
|
+
scrap.update_column(:body, "")
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
class InternationalNames < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
rename_column :droom_users, :name, :family_name
|
4
|
+
rename_column :droom_users, :forename, :given_name
|
5
|
+
add_column :droom_users, :chinese_name, :string
|
6
|
+
add_column :droom_users, :gender, :string, limit: 1
|
7
|
+
|
8
|
+
Droom::User.reset_column_information
|
9
|
+
Droom::User.all.each do |u|
|
10
|
+
unless u.given_name?
|
11
|
+
names = u.family_name.split(/\s+/)
|
12
|
+
surname = names.pop
|
13
|
+
u.update_attributes(family_name: surname, given_name: names.join(' '))
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
class SimpleAddresses < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
add_column :droom_venues, :address, :text
|
4
|
+
add_column :droom_venues, :slug, :string
|
5
|
+
add_column :droom_users, :address, :text
|
6
|
+
add_column :droom_venues, :country_code, :string
|
7
|
+
add_column :droom_users, :country_code, :string
|
8
|
+
|
9
|
+
remove_column :droom_users, :post_line1
|
10
|
+
remove_column :droom_users, :post_line2
|
11
|
+
remove_column :droom_users, :post_city
|
12
|
+
remove_column :droom_users, :post_region
|
13
|
+
remove_column :droom_users, :post_country
|
14
|
+
|
15
|
+
Droom::Venue.reset_column_information
|
16
|
+
Droom::Venue.each do |venue|
|
17
|
+
if venue.respond_to?(:postal_address)
|
18
|
+
venue.address = venue.postal_address.to_s
|
19
|
+
end
|
20
|
+
# also sets slug
|
21
|
+
venue.save
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
class EventTypes < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
|
4
|
+
create_table :droom_event_types do |t|
|
5
|
+
t.string :name
|
6
|
+
t.string :slug
|
7
|
+
t.text :description
|
8
|
+
t.timestamps
|
9
|
+
end
|
10
|
+
|
11
|
+
add_column :droom_events, :event_type_id, :integer
|
12
|
+
add_index :droom_events, :event_type_id
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
require 'devise'
|
2
|
+
|
3
|
+
module Devise
|
4
|
+
module Strategies
|
5
|
+
class CookieAuthenticatable < ::Devise::Strategies::Authenticatable
|
6
|
+
|
7
|
+
def valid?
|
8
|
+
cookie.valid?
|
9
|
+
end
|
10
|
+
|
11
|
+
def authenticate!
|
12
|
+
if fresh? && resource && validate(resource)
|
13
|
+
success!(resource)
|
14
|
+
else
|
15
|
+
pass
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
private
|
20
|
+
|
21
|
+
def cookie
|
22
|
+
@cookie ||= Droom::AuthCookie.new(cookies)
|
23
|
+
end
|
24
|
+
|
25
|
+
def fresh?
|
26
|
+
cookie.set_since?(Time.now - Settings.auth.cookie_period.hours)
|
27
|
+
end
|
28
|
+
|
29
|
+
def resource
|
30
|
+
# returns nil when user is missing.
|
31
|
+
@resource ||= mapping.to.where(:authentication_token => cookie.token).first
|
32
|
+
end
|
33
|
+
|
34
|
+
def pass
|
35
|
+
cookie.unset
|
36
|
+
super
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
module Models
|
42
|
+
module CookieAuthenticatable
|
43
|
+
# I'm sure this is configurable away, but who can find that sort of thing in devise?
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
data/lib/droom.rb
CHANGED
@@ -1,18 +1,17 @@
|
|
1
|
-
require 'dav4rack'
|
2
|
-
require 'dav4rack/resources/file_resource'
|
3
1
|
require "droom/monkeys"
|
2
|
+
require "droom/cropper"
|
4
3
|
require "droom/lazy_hash"
|
5
|
-
require "droom/model_helpers"
|
6
4
|
require "droom/renderers"
|
7
5
|
require "droom/engine"
|
6
|
+
require "droom/auth_cookie"
|
8
7
|
require "droom/validators"
|
9
|
-
require "droom/dav_resource"
|
10
8
|
require "droom/searchability"
|
11
9
|
require "droom/taggability"
|
12
10
|
require "droom/folders"
|
13
11
|
require "snail"
|
12
|
+
require "youtube_it"
|
14
13
|
|
15
|
-
module Droom
|
14
|
+
module Droom
|
16
15
|
# Droom configuration is handled by accessors on the Droom base module.
|
17
16
|
# Boolean items also offer the interrogative form.
|
18
17
|
|
@@ -22,6 +21,7 @@ module Droom
|
|
22
21
|
:searchable_classes,
|
23
22
|
:yt_client,
|
24
23
|
:layout,
|
24
|
+
:devise_layout,
|
25
25
|
:email_layout,
|
26
26
|
:email_host,
|
27
27
|
:email_from,
|
@@ -31,20 +31,18 @@ module Droom
|
|
31
31
|
:margin_dashboard_modules,
|
32
32
|
:panels,
|
33
33
|
:scrap_types,
|
34
|
-
:
|
35
|
-
:
|
36
|
-
:use_forenames,
|
34
|
+
:default_scrap_type,
|
35
|
+
:use_chinese_names,
|
37
36
|
:use_biogs,
|
38
37
|
:use_separate_mobile_number,
|
39
38
|
:use_titles,
|
39
|
+
:use_honours,
|
40
40
|
:use_organisations,
|
41
41
|
:enable_mailing_lists,
|
42
42
|
:mailman_table_name,
|
43
43
|
:mailing_lists_active_by_default,
|
44
44
|
:mailing_lists_digest_by_default,
|
45
45
|
:show_venue_map,
|
46
|
-
:default_document_private,
|
47
|
-
:default_event_private,
|
48
46
|
:dropbox_app_key,
|
49
47
|
:dropbox_app_secret,
|
50
48
|
:dropbox_app_name,
|
@@ -53,10 +51,14 @@ module Droom
|
|
53
51
|
:required_calendar_names,
|
54
52
|
:stream_shared,
|
55
53
|
:aws_bucket_name,
|
56
|
-
:
|
57
|
-
:
|
54
|
+
:all_events_public,
|
55
|
+
:all_documents_public,
|
56
|
+
:password_pattern,
|
57
|
+
:separate_calendars,
|
58
|
+
:second_time_zone
|
58
59
|
|
59
60
|
class DroomError < StandardError; end
|
61
|
+
class AuthRequired < DroomError; end
|
60
62
|
class PermissionDenied < DroomError; end
|
61
63
|
|
62
64
|
class << self
|
@@ -65,7 +67,11 @@ module Droom
|
|
65
67
|
end
|
66
68
|
|
67
69
|
def layout
|
68
|
-
@@layout ||= "
|
70
|
+
@@layout ||= "application"
|
71
|
+
end
|
72
|
+
|
73
|
+
def devise_layout
|
74
|
+
@@devise_layout ||= "application"
|
69
75
|
end
|
70
76
|
|
71
77
|
def email_host
|
@@ -73,7 +79,7 @@ module Droom
|
|
73
79
|
end
|
74
80
|
|
75
81
|
def email_layout
|
76
|
-
@@email_layout ||= "
|
82
|
+
@@email_layout ||= "email"
|
77
83
|
end
|
78
84
|
|
79
85
|
def email_from
|
@@ -113,31 +119,29 @@ module Droom
|
|
113
119
|
end
|
114
120
|
|
115
121
|
def panels
|
116
|
-
@@panels ||= %w{
|
122
|
+
@@panels ||= %w{configuration search admin}
|
117
123
|
end
|
118
124
|
|
119
125
|
def scrap_types
|
120
126
|
@@scrap_types ||= %w{image video text quote link event document}
|
121
127
|
end
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
@@dav_root ||= "webdav"
|
126
|
-
end
|
127
|
-
|
128
|
-
# subdomain constraint applied when routing to dav.
|
129
|
-
def dav_subdomain
|
130
|
-
@@dav_subdomain ||= /dav/
|
128
|
+
|
129
|
+
def default_scrap_type
|
130
|
+
@@default_scrap_type ||= 'text'
|
131
131
|
end
|
132
132
|
|
133
|
-
def
|
134
|
-
!!@@
|
133
|
+
def use_chinese_names?
|
134
|
+
!!@@use_chinese_names
|
135
135
|
end
|
136
136
|
|
137
137
|
def use_titles?
|
138
138
|
!!@@use_titles
|
139
139
|
end
|
140
140
|
|
141
|
+
def use_honours?
|
142
|
+
!!@@use_honours
|
143
|
+
end
|
144
|
+
|
141
145
|
def use_biogs?
|
142
146
|
!!@@use_biogs
|
143
147
|
end
|
@@ -161,6 +165,14 @@ module Droom
|
|
161
165
|
def calendar_closed?
|
162
166
|
!!@@calendar_closed
|
163
167
|
end
|
168
|
+
|
169
|
+
def all_events_public?
|
170
|
+
!!@@all_events_public
|
171
|
+
end
|
172
|
+
|
173
|
+
def all_documents_public?
|
174
|
+
!!@@all_documents_public
|
175
|
+
end
|
164
176
|
|
165
177
|
def dropbox_app_name
|
166
178
|
@@dropbox_app_name ||= 'droom'
|
@@ -185,7 +197,7 @@ module Droom
|
|
185
197
|
def suggestible_classes
|
186
198
|
@@suggestible_classes ||= {
|
187
199
|
"event" => "Droom::Event",
|
188
|
-
"
|
200
|
+
"user" => "Droom::User",
|
189
201
|
"document" => "Droom::Document",
|
190
202
|
"group" => "Droom::Group",
|
191
203
|
"venue" => "Droom::Venue"
|
@@ -193,7 +205,7 @@ module Droom
|
|
193
205
|
end
|
194
206
|
|
195
207
|
def add_suggestible_class(label, klass=nil)
|
196
|
-
klass ||= label.
|
208
|
+
klass ||= label.camelize
|
197
209
|
suggestible_classes[label] = klass.to_s
|
198
210
|
end
|
199
211
|
|
@@ -213,6 +225,14 @@ module Droom
|
|
213
225
|
@@required_calendar_names ||= %w{main stream}
|
214
226
|
end
|
215
227
|
|
228
|
+
def separate_calendars?
|
229
|
+
!!@@separate_calendars
|
230
|
+
end
|
231
|
+
|
232
|
+
def second_time_zone?
|
233
|
+
!!@@second_time_zone
|
234
|
+
end
|
235
|
+
|
216
236
|
def password_pattern
|
217
237
|
@@password_pattern ||= ".{6,}"
|
218
238
|
end
|
@@ -232,11 +252,6 @@ module Droom
|
|
232
252
|
:dropbox => {
|
233
253
|
:strategy => "clicked",
|
234
254
|
:events? => true,
|
235
|
-
},
|
236
|
-
:dav => {
|
237
|
-
:enabled? => false,
|
238
|
-
:strategy => "clicked",
|
239
|
-
:everything? => false,
|
240
255
|
}
|
241
256
|
})
|
242
257
|
end
|