your_platform 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (704) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +39 -11
  3. data/Rakefile +15 -1
  4. data/app/assets/images/file.png +0 -0
  5. data/app/assets/images/img/excel2013_file_128.png +0 -0
  6. data/app/assets/images/img/excel2013_file_bw_107.png +0 -0
  7. data/app/assets/images/img/excel2013_file_bw_semitransparent_107.png +0 -0
  8. data/app/assets/images/img/glyphicons-halflings-white.png +0 -0
  9. data/app/assets/images/img/glyphicons-halflings.png +0 -0
  10. data/app/assets/images/img/gmaps_yellow_marker.png +0 -0
  11. data/app/assets/images/img/gmaps_yellow_marker_38.png +0 -0
  12. data/app/assets/images/markdown_help.png +0 -0
  13. data/app/assets/images/your_platform/breadcrumb-sep.png +0 -0
  14. data/app/assets/javascripts/app-ng.js.coffee +5 -0
  15. data/app/assets/javascripts/attachments.js +2 -0
  16. data/app/assets/javascripts/controllers-ng/bookmark_list_controller.js.coffee +30 -0
  17. data/app/assets/javascripts/controllers-ng/box_controller.js.coffee +37 -0
  18. data/app/assets/javascripts/controllers-ng/profile_angular.js.coffee +151 -0
  19. data/app/assets/javascripts/directives-ng/box_directive.js.coffee +91 -0
  20. data/app/assets/javascripts/directives-ng/star_tool_directive.js.coffee +111 -0
  21. data/app/assets/javascripts/filters-ng/some_filter.js.coffee +0 -0
  22. data/app/assets/javascripts/jquery.appear-1.1.1.js +138 -0
  23. data/app/assets/javascripts/make-js-more-like-ruby.js.coffee +32 -0
  24. data/app/assets/javascripts/mercury.js +456 -0
  25. data/app/assets/javascripts/models-ng/bookmark.js.coffee +28 -0
  26. data/app/assets/javascripts/services-ng/current_user_bookmarks.js.coffee +39 -0
  27. data/app/assets/javascripts/your_platform.js +27 -0
  28. data/app/assets/javascripts/your_platform/address_labels.js.coffee +40 -0
  29. data/app/assets/javascripts/your_platform/attachments.js.coffee +61 -0
  30. data/app/assets/javascripts/your_platform/auto-completion.js.coffee +90 -0
  31. data/app/assets/javascripts/your_platform/best_in_place.js.coffee +8 -0
  32. data/app/assets/javascripts/your_platform/best_in_place_hyperlinks.js.coffee +25 -0
  33. data/app/assets/javascripts/your_platform/best_in_place_tab_key.js.coffee +28 -0
  34. data/app/assets/javascripts/your_platform/boxes.js.coffee +11 -0
  35. data/app/assets/javascripts/your_platform/change_password.js.coffee +22 -0
  36. data/app/assets/javascripts/your_platform/close_dropdowns.js.coffee +18 -0
  37. data/app/assets/javascripts/your_platform/copy_to_clipboard.js.coffee +6 -0
  38. data/app/assets/javascripts/your_platform/datatables.coffee +112 -0
  39. data/app/assets/javascripts/your_platform/datepicker_settings.js.coffee +16 -0
  40. data/app/assets/javascripts/your_platform/edit_tools.js.coffee +19 -0
  41. data/app/assets/javascripts/your_platform/editable_dbl_click.js.coffee +42 -0
  42. data/app/assets/javascripts/your_platform/events.js.coffee +126 -0
  43. data/app/assets/javascripts/your_platform/fix_textarea.js.coffee +11 -0
  44. data/app/assets/javascripts/your_platform/galleria.js.coffee +112 -0
  45. data/app/assets/javascripts/your_platform/groups.js.coffee +36 -0
  46. data/app/assets/javascripts/your_platform/hidden.js.coffee +5 -0
  47. data/app/assets/javascripts/your_platform/links_to_external_sites.js.coffee +12 -0
  48. data/app/assets/javascripts/your_platform/maps.js.coffee +13 -0
  49. data/app/assets/javascripts/your_platform/may_need_review.js.coffee +10 -0
  50. data/app/assets/javascripts/your_platform/navable_title_rename.js.coffee +17 -0
  51. data/app/assets/javascripts/your_platform/officers.js.coffee +35 -0
  52. data/app/assets/javascripts/your_platform/popovers.js.coffee +38 -0
  53. data/app/assets/javascripts/your_platform/posts.js.coffee +58 -0
  54. data/app/assets/javascripts/your_platform/profile_fields.js.coffee +61 -0
  55. data/app/assets/javascripts/your_platform/search.js.coffee +26 -0
  56. data/app/assets/javascripts/your_platform/tooltips.js.coffee +10 -0
  57. data/app/assets/javascripts/your_platform/turbolinks_loading_spinner.js.coffee +83 -0
  58. data/app/assets/javascripts/your_platform/user_avatars.js.coffee +33 -0
  59. data/app/assets/javascripts/your_platform/user_group_memberships.js.coffee +11 -0
  60. data/app/assets/javascripts/your_platform/user_settings.js.coffee +18 -0
  61. data/app/assets/javascripts/your_platform/users_new.js.coffee +54 -0
  62. data/app/assets/stylesheets/bootstrap_layout.css.sass +3 -0
  63. data/app/assets/stylesheets/bootstrap_layout/attachments.css.sass +3 -0
  64. data/app/assets/stylesheets/bootstrap_layout/boxes.css.sass +11 -0
  65. data/app/assets/stylesheets/bootstrap_layout/breadcrumb.css.sass +25 -0
  66. data/app/assets/stylesheets/bootstrap_layout/category_indicator.css.sass +5 -0
  67. data/app/assets/stylesheets/bootstrap_layout/footer.css.sass +14 -0
  68. data/app/assets/stylesheets/bootstrap_layout/galleria.css.sass +8 -0
  69. data/app/assets/stylesheets/bootstrap_layout/header_bar.css.sass +11 -0
  70. data/app/assets/stylesheets/bootstrap_layout/headings.css.sass +10 -0
  71. data/app/assets/stylesheets/bootstrap_layout/logged_in_bar.css.sass +40 -0
  72. data/app/assets/stylesheets/bootstrap_layout/logo.css.sass +2 -0
  73. data/app/assets/stylesheets/bootstrap_layout/modal_fix.css.sass +8 -0
  74. data/app/assets/stylesheets/bootstrap_layout/profiles.css.sass +10 -0
  75. data/app/assets/stylesheets/bootstrap_layout/session_bar.css.sass +60 -0
  76. data/app/assets/stylesheets/bootstrap_layout/stars.css.sass +4 -0
  77. data/app/assets/stylesheets/bootstrap_layout/turbolinks_progress_bar.css.sass +3 -0
  78. data/app/assets/stylesheets/bootstrap_layout/vertical_menu.css.sass +15 -0
  79. data/app/assets/stylesheets/bootstrap_setup.css.sass +4 -0
  80. data/app/assets/stylesheets/your_platform.css.sass +11 -0
  81. data/app/assets/stylesheets/your_platform/address_labels_modal.css.sass +8 -0
  82. data/app/assets/stylesheets/your_platform/attachments.css.sass +75 -0
  83. data/app/assets/stylesheets/your_platform/authorization_info.css.sass +16 -0
  84. data/app/assets/stylesheets/your_platform/auto-completion.css.sass +3 -0
  85. data/app/assets/stylesheets/your_platform/center.css.sass +14 -0
  86. data/app/assets/stylesheets/your_platform/change_password.css.sass +13 -0
  87. data/app/assets/stylesheets/your_platform/corporate_vita.css.sass +2 -0
  88. data/app/assets/stylesheets/your_platform/datatables.css.sass +23 -0
  89. data/app/assets/stylesheets/your_platform/datepicker.css.sass +2 -0
  90. data/app/assets/stylesheets/your_platform/dropdowns.css.sass +8 -0
  91. data/app/assets/stylesheets/your_platform/events.css.sass +68 -0
  92. data/app/assets/stylesheets/your_platform/forms.css.sass +25 -0
  93. data/app/assets/stylesheets/your_platform/galleria.css.sass +12 -0
  94. data/app/assets/stylesheets/your_platform/groups.css.sass +8 -0
  95. data/app/assets/stylesheets/your_platform/groups_table.css.sass +8 -0
  96. data/app/assets/stylesheets/your_platform/hidden.css.sass +3 -0
  97. data/app/assets/stylesheets/your_platform/images.css.sass +50 -0
  98. data/app/assets/stylesheets/your_platform/last_activities.css.sass +17 -0
  99. data/app/assets/stylesheets/your_platform/latest_members.css.sass +7 -0
  100. data/app/assets/stylesheets/your_platform/login.css.sass +4 -0
  101. data/app/assets/stylesheets/your_platform/maps.css.sass +22 -0
  102. data/app/assets/stylesheets/your_platform/markdown_help.css.sass +5 -0
  103. data/app/assets/stylesheets/your_platform/may_need_review.css.sass +3 -0
  104. data/app/assets/stylesheets/your_platform/pages.css.sass +12 -0
  105. data/app/assets/stylesheets/your_platform/password_strength.css.sass +73 -0
  106. data/app/assets/stylesheets/your_platform/picture_attachments.css.sass +7 -0
  107. data/app/assets/stylesheets/your_platform/popovers.css.sass +13 -0
  108. data/app/assets/stylesheets/your_platform/posts.css.sass +32 -0
  109. data/app/assets/stylesheets/your_platform/profiles.css.sass +153 -0
  110. data/app/assets/stylesheets/your_platform/search_preview.css.sass +4 -0
  111. data/app/assets/stylesheets/your_platform/star_tool.css.sass +2 -0
  112. data/app/assets/stylesheets/your_platform/tooltips.css.sass +7 -0
  113. data/app/assets/stylesheets/your_platform/turbolinks_loading_spinner.css.sass +3 -0
  114. data/app/assets/stylesheets/your_platform/user_avatars.css.sass +8 -0
  115. data/app/assets/stylesheets/your_platform/user_group_memberships.css.sass +4 -0
  116. data/app/assets/stylesheets/your_platform/vertical_nav.css.sass +7 -0
  117. data/app/controllers/activities_controller.rb +6 -0
  118. data/app/controllers/application_controller.rb +236 -0
  119. data/app/controllers/attachments_controller.rb +97 -0
  120. data/app/controllers/blog_posts_controller.rb +50 -0
  121. data/app/controllers/bookmarks_controller.rb +33 -0
  122. data/app/controllers/corporations_controller.rb +22 -0
  123. data/app/controllers/errors_controller.rb +27 -0
  124. data/app/controllers/events_controller.rb +262 -0
  125. data/app/controllers/groups_controller.rb +257 -0
  126. data/app/controllers/officers_controller.rb +28 -0
  127. data/app/controllers/pages_controller.rb +67 -0
  128. data/app/controllers/posts_controller.rb +81 -0
  129. data/app/controllers/profile_fields_controller.rb +132 -0
  130. data/app/controllers/root_controller.rb +35 -0
  131. data/app/controllers/search_controller.rb +149 -0
  132. data/app/controllers/sessions_controller.rb +21 -0
  133. data/app/controllers/setup_controller.rb +80 -0
  134. data/app/controllers/statistics_controller.rb +38 -0
  135. data/app/controllers/status_group_memberships_controller.rb +28 -0
  136. data/app/controllers/terms_of_use_controller.rb +35 -0
  137. data/app/controllers/user_accounts_controller.rb +55 -0
  138. data/app/controllers/user_group_memberships_controller.rb +75 -0
  139. data/app/controllers/user_settings_controller.rb +57 -0
  140. data/app/controllers/users_controller.rb +125 -0
  141. data/app/controllers/workflows_controller.rb +19 -0
  142. data/app/helpers/application_helper.rb +25 -0
  143. data/app/helpers/attachments_helper.rb +2 -0
  144. data/app/helpers/auto_completion_helper.rb +33 -0
  145. data/app/helpers/avatar_helper.rb +70 -0
  146. data/app/helpers/bookmarks_helper.rb +22 -0
  147. data/app/helpers/box_helper.rb +56 -0
  148. data/app/helpers/breadcrumbs_helper.rb +62 -0
  149. data/app/helpers/corporate_vita_helper.rb +34 -0
  150. data/app/helpers/events_helper.rb +28 -0
  151. data/app/helpers/flash_helper.rb +60 -0
  152. data/app/helpers/footer_helper.rb +13 -0
  153. data/app/helpers/galleria_helper.rb +13 -0
  154. data/app/helpers/groups_helper.rb +66 -0
  155. data/app/helpers/horizontal_nav_helper.rb +11 -0
  156. data/app/helpers/i18n_helper.rb +10 -0
  157. data/app/helpers/icon_helper.rb +35 -0
  158. data/app/helpers/mailer_helper.rb +7 -0
  159. data/app/helpers/map_helper.rb +26 -0
  160. data/app/helpers/markdown_helper.rb +22 -0
  161. data/app/helpers/markup_helper.rb +25 -0
  162. data/app/helpers/officers_helper.rb +13 -0
  163. data/app/helpers/password_helper.rb +23 -0
  164. data/app/helpers/profile_field_helper.rb +40 -0
  165. data/app/helpers/profile_helper.rb +69 -0
  166. data/app/helpers/quick_link_helper.rb +53 -0
  167. data/app/helpers/special_pages_helper.rb +9 -0
  168. data/app/helpers/structureable_helper.rb +11 -0
  169. data/app/helpers/sublime_helper.rb +16 -0
  170. data/app/helpers/title_helper.rb +52 -0
  171. data/app/helpers/tool_buttons_helper.rb +74 -0
  172. data/app/helpers/unicode_helper.rb +9 -0
  173. data/app/helpers/users_helper.rb +13 -0
  174. data/app/helpers/vertical_nav_helper.rb +84 -0
  175. data/app/helpers/workflows_helper.rb +37 -0
  176. data/app/mailers/event_mailer.rb +13 -0
  177. data/app/mailers/post_mailer.rb +11 -0
  178. data/app/mailers/user_account_mailer.rb +17 -0
  179. data/app/models/ability.rb +321 -0
  180. data/app/models/active_record_associations_patches.rb +26 -0
  181. data/app/models/active_record_cache_extension.rb +152 -0
  182. data/app/models/active_record_find_by_extension.rb +20 -0
  183. data/app/models/active_record_json_url_extension.rb +51 -0
  184. data/app/models/active_record_metric_events_extension.rb +22 -0
  185. data/app/models/active_record_read_only_extension.rb +35 -0
  186. data/app/models/active_record_update_attributes_bip_extension.rb +24 -0
  187. data/app/models/address_label.rb +50 -0
  188. data/app/models/app_version.rb +49 -0
  189. data/app/models/array.rb +15 -0
  190. data/app/models/attachment.rb +76 -0
  191. data/app/models/bashpass_password.rb +32 -0
  192. data/app/models/blog_post.rb +2 -0
  193. data/app/models/bookmark.rb +67 -0
  194. data/app/models/cache_additions.rb +15 -0
  195. data/app/models/cache_store_extension.rb +78 -0
  196. data/app/models/concerns/user_avatar.rb +16 -0
  197. data/app/models/concerns/user_corporations.rb +44 -0
  198. data/app/models/concerns/user_date_of_birth.rb +74 -0
  199. data/app/models/concerns/user_profile.rb +102 -0
  200. data/app/models/corporation.rb +80 -0
  201. data/app/models/dag_link.rb +29 -0
  202. data/app/models/event.rb +235 -0
  203. data/app/models/flag.rb +18 -0
  204. data/app/models/flagable.rb +62 -0
  205. data/app/models/geo_location.rb +92 -0
  206. data/app/models/group.rb +224 -0
  207. data/app/models/group_mixins/corporations.rb +141 -0
  208. data/app/models/group_mixins/developers.rb +41 -0
  209. data/app/models/group_mixins/everyone.rb +72 -0
  210. data/app/models/group_mixins/guests.rb +61 -0
  211. data/app/models/group_mixins/hidden_users.rb +43 -0
  212. data/app/models/group_mixins/import.rb +321 -0
  213. data/app/models/group_mixins/memberships.rb +207 -0
  214. data/app/models/group_mixins/officers.rb +47 -0
  215. data/app/models/group_mixins/roles.rb +41 -0
  216. data/app/models/horizontal_nav.rb +32 -0
  217. data/app/models/last_seen_activity.rb +10 -0
  218. data/app/models/list_export.rb +359 -0
  219. data/app/models/may_need_review.rb +54 -0
  220. data/app/models/metric_logger.rb +83 -0
  221. data/app/models/nav_node.rb +169 -0
  222. data/app/models/navable.rb +46 -0
  223. data/app/models/object_to_b_extension.rb +12 -0
  224. data/app/models/page.rb +212 -0
  225. data/app/models/password.rb +28 -0
  226. data/app/models/post.rb +199 -0
  227. data/app/models/profile.rb +36 -0
  228. data/app/models/profile_field.rb +196 -0
  229. data/app/models/profile_field_mixins/has_child_profile_fields.rb +114 -0
  230. data/app/models/profile_field_types/about.rb +9 -0
  231. data/app/models/profile_field_types/academic_degree.rb +10 -0
  232. data/app/models/profile_field_types/address.rb +88 -0
  233. data/app/models/profile_field_types/bank_account.rb +12 -0
  234. data/app/models/profile_field_types/competence.rb +7 -0
  235. data/app/models/profile_field_types/custom.rb +12 -0
  236. data/app/models/profile_field_types/date.rb +14 -0
  237. data/app/models/profile_field_types/description.rb +15 -0
  238. data/app/models/profile_field_types/email.rb +20 -0
  239. data/app/models/profile_field_types/employment.rb +24 -0
  240. data/app/models/profile_field_types/general.rb +9 -0
  241. data/app/models/profile_field_types/homepage.rb +19 -0
  242. data/app/models/profile_field_types/name_surrounding.rb +11 -0
  243. data/app/models/profile_field_types/organization.rb +24 -0
  244. data/app/models/profile_field_types/phone.rb +37 -0
  245. data/app/models/profile_field_types/professional_category.rb +8 -0
  246. data/app/models/profile_field_types/study.rb +18 -0
  247. data/app/models/profile_section.rb +49 -0
  248. data/app/models/profileable.rb +58 -0
  249. data/app/models/profileable_mixins/address.rb +118 -0
  250. data/app/models/relationship.rb +78 -0
  251. data/app/models/role.rb +164 -0
  252. data/app/models/setting.rb +9 -0
  253. data/app/models/status_group.rb +28 -0
  254. data/app/models/status_group_membership.rb +189 -0
  255. data/app/models/status_group_membership_info.rb +54 -0
  256. data/app/models/structureable.rb +164 -0
  257. data/app/models/structureable_mixins/has_special_groups.rb +127 -0
  258. data/app/models/structureable_mixins/roles.rb +275 -0
  259. data/app/models/user.rb +878 -0
  260. data/app/models/user_account.rb +162 -0
  261. data/app/models/user_alias.rb +112 -0
  262. data/app/models/user_group_membership.rb +300 -0
  263. data/app/models/user_group_membership_mixins/validity_range.rb +206 -0
  264. data/app/models/user_group_membership_mixins/validity_range_for_indirect_memberships.rb +160 -0
  265. data/app/models/user_mixins/identification.rb +36 -0
  266. data/app/models/user_mixins/memberships.rb +75 -0
  267. data/app/models/workflow.rb +40 -0
  268. data/app/models/workflow_kit/add_to_group_brick.rb +21 -0
  269. data/app/models/workflow_kit/destroy_account_and_end_memberships_if_needed_brick.rb +19 -0
  270. data/app/models/workflow_kit/last_membership_needs_review_brick.rb +19 -0
  271. data/app/models/workflow_kit/mark_as_deceased_brick.rb +17 -0
  272. data/app/models/workflow_kit/remove_from_group_brick.rb +27 -0
  273. data/app/models/workflow_kit/test_brick.rb +13 -0
  274. data/app/pdfs/address_labels_pdf.rb +157 -0
  275. data/app/presenters/base_presenter.rb +52 -0
  276. data/app/presenters/horizontal_nav_presenter.rb +106 -0
  277. data/app/uploaders/attachment_uploader.rb +148 -0
  278. data/app/views/activities/index.html.haml +25 -0
  279. data/app/views/attachments/_attachment.html.haml +20 -0
  280. data/app/views/attachments/_description.html.haml +11 -0
  281. data/app/views/attachments/_documents.html.haml +17 -0
  282. data/app/views/attachments/_drop_field.html.haml +46 -0
  283. data/app/views/attachments/_picture.html.haml +2 -0
  284. data/app/views/attachments/_pictures.html.haml +10 -0
  285. data/app/views/attachments/_video.html.haml +8 -0
  286. data/app/views/attachments/create.js.erb +1 -0
  287. data/app/views/attachments/destroy.js.erb +1 -0
  288. data/app/views/blog_posts/create.js.erb +17 -0
  289. data/app/views/bookmarks/_list.html.haml +7 -0
  290. data/app/views/bookmarks/update.js.erb +4 -0
  291. data/app/views/devise/mailer/reset_password_instructions.html.haml +8 -0
  292. data/app/views/devise/passwords/edit.html.haml +1 -0
  293. data/app/views/devise/passwords/new.html.haml +12 -0
  294. data/app/views/devise/registrations/edit.html.haml +1 -0
  295. data/app/views/devise/sessions/new.html.haml +14 -0
  296. data/app/views/devise/shared/_links.haml +26 -0
  297. data/app/views/errors/show.html.haml +5 -0
  298. data/app/views/errors/unauthorized.html.haml +7 -0
  299. data/app/views/event_mailer/invitation_email.html.erb +63 -0
  300. data/app/views/events/_event_details.html.haml +54 -0
  301. data/app/views/events/_events_lis.html.haml +29 -0
  302. data/app/views/events/_invitation_text.html.erb +8 -0
  303. data/app/views/events/_pictures.html.haml +5 -0
  304. data/app/views/events/_public_index.html.haml +16 -0
  305. data/app/views/events/index.html.haml +24 -0
  306. data/app/views/events/show.html.haml +50 -0
  307. data/app/views/groups/_address_labels_modal.html.haml +27 -0
  308. data/app/views/groups/_export_button.html.haml +66 -0
  309. data/app/views/groups/_group_list.html.haml +25 -0
  310. data/app/views/groups/_member_avatars.html.haml +4 -0
  311. data/app/views/groups/_member_list.html.haml +15 -0
  312. data/app/views/groups/index.html.erb +11 -0
  313. data/app/views/groups/index_mine.html.haml +7 -0
  314. data/app/views/groups/show.html.haml +79 -0
  315. data/app/views/last_seen_activities/_index.html.haml +19 -0
  316. data/app/views/layouts/_add_structureable_additions.html.haml +15 -0
  317. data/app/views/layouts/_box.html.haml +16 -0
  318. data/app/views/layouts/_help_button.html.haml +1 -0
  319. data/app/views/layouts/_role_preview_switcher.html.haml +20 -0
  320. data/app/views/layouts/_session_bar_avatar.html.haml +1 -0
  321. data/app/views/layouts/_vertical_nav.html.haml +5 -0
  322. data/app/views/layouts/bootstrap.html.haml +146 -0
  323. data/app/views/layouts/mercury.html.erb +23 -0
  324. data/app/views/officers/_history_notice.html.haml +4 -0
  325. data/app/views/officers/_officers_box.html.haml +33 -0
  326. data/app/views/officers/_officers_group_entry.html.haml +45 -0
  327. data/app/views/pages/_attachments.html.haml +21 -0
  328. data/app/views/pages/_page.html.haml +28 -0
  329. data/app/views/pages/_pictures.html.haml +2 -0
  330. data/app/views/pages/_videos.html.erb +8 -0
  331. data/app/views/pages/show.html.haml +39 -0
  332. data/app/views/post_mailer/post_email.html.erb +17 -0
  333. data/app/views/posts/_new_post_template_text.html.haml +6 -0
  334. data/app/views/posts/_post.html.haml +13 -0
  335. data/app/views/posts/_post_quote.html.haml +18 -0
  336. data/app/views/posts/_posts.html.haml +6 -0
  337. data/app/views/posts/index.html.haml +9 -0
  338. data/app/views/posts/new.html.haml +42 -0
  339. data/app/views/posts/show.html.haml +8 -0
  340. data/app/views/profile_fields/_postal_address_flag_switch.html.haml +21 -0
  341. data/app/views/profile_fields/_profile_field.html.haml +41 -0
  342. data/app/views/profile_fields/create.js.erb +26 -0
  343. data/app/views/profile_fields/destroy.js.erb +3 -0
  344. data/app/views/profiles/_add_profile_field_button.html.haml +15 -0
  345. data/app/views/profiles/_profile_section_ul.html.haml +8 -0
  346. data/app/views/profiles/_section.html.haml +28 -0
  347. data/app/views/profiles/_send_group_message_button.html.haml +4 -0
  348. data/app/views/root/_latest_members_box.html.haml +19 -0
  349. data/app/views/root/_start_page_elements.html.haml +0 -0
  350. data/app/views/root/_what_is_new.html.haml +21 -0
  351. data/app/views/search/_preview_blog_post.html.haml +1 -0
  352. data/app/views/search/_preview_corporation.html.haml +5 -0
  353. data/app/views/search/_preview_group.html.haml +4 -0
  354. data/app/views/search/_preview_page.html.haml +11 -0
  355. data/app/views/search/_preview_user.html.haml +14 -0
  356. data/app/views/search/index.html.haml +42 -0
  357. data/app/views/setup/index.html.haml +56 -0
  358. data/app/views/shared/_add_structureable.html.haml +22 -0
  359. data/app/views/shared/_authorization_info.html.haml +22 -0
  360. data/app/views/shared/_flags.html.haml +5 -0
  361. data/app/views/shared/_markdown_help.html.haml +4 -0
  362. data/app/views/shared/_search_box.html.haml +2 -0
  363. data/app/views/shared/_upcoming_events.html.haml +33 -0
  364. data/app/views/statistics/index.html.haml +16 -0
  365. data/app/views/statistics/show.html.haml +13 -0
  366. data/app/views/terms_of_use/_checkbox.html.haml +1 -0
  367. data/app/views/terms_of_use/_terms.html.haml +1 -0
  368. data/app/views/terms_of_use/index.html.haml +19 -0
  369. data/app/views/user_account_mailer/welcome_email.html.erb +32 -0
  370. data/app/views/user_accounts/_change_password.html.haml +149 -0
  371. data/app/views/user_accounts/_user_account.html.haml +39 -0
  372. data/app/views/user_group_memberships/_list_item.html.haml +9 -0
  373. data/app/views/user_group_memberships/_memberships_table.html.haml +56 -0
  374. data/app/views/user_group_memberships/_new.html.haml +18 -0
  375. data/app/views/user_group_memberships/create.js.erb +9 -0
  376. data/app/views/user_group_memberships/index.html.haml +5 -0
  377. data/app/views/user_settings/show.html.haml +36 -0
  378. data/app/views/users/_avatar.html.haml +16 -0
  379. data/app/views/users/_communication_box.html.haml +8 -0
  380. data/app/views/users/_corporate_vita.html.haml +23 -0
  381. data/app/views/users/_dead_badge.html.haml +3 -0
  382. data/app/views/users/_deceased_modal.html.haml +24 -0
  383. data/app/views/users/_hidden_badge.html.haml +4 -0
  384. data/app/views/users/_hidden_flag_switch.html.haml +20 -0
  385. data/app/views/users/_special_general_info_fields.html.haml +10 -0
  386. data/app/views/users/_user_corporation_attribute.html.haml +6 -0
  387. data/app/views/users/_user_name_attribute.html.haml +4 -0
  388. data/app/views/users/_user_title.html.haml +5 -0
  389. data/app/views/users/_workflow_triggers.html.haml +23 -0
  390. data/app/views/users/new.html.haml +55 -0
  391. data/app/views/users/show.html.haml +79 -0
  392. data/config/environment.rb +5 -0
  393. data/config/initializers/active_record_cache_extension.rb +1 -0
  394. data/config/initializers/active_record_find_by_extension.rb +1 -0
  395. data/config/initializers/active_record_flagable_extension.rb +2 -0
  396. data/config/initializers/active_record_json_url_extension.rb +1 -0
  397. data/config/initializers/active_record_may_need_review_extension.rb +2 -0
  398. data/config/initializers/active_record_metric_events_extension.rb +1 -0
  399. data/config/initializers/active_record_navable_extension.rb +6 -0
  400. data/config/initializers/active_record_profileable_extension.rb +4 -0
  401. data/config/initializers/active_record_read_only_extension.rb +1 -0
  402. data/config/initializers/active_record_structureable_extension.rb +3 -0
  403. data/config/initializers/active_record_update_attributes_bip_extension.rb +1 -0
  404. data/config/initializers/array_extension.rb +1 -0
  405. data/config/initializers/best_in_place_display_definitions.rb +31 -0
  406. data/config/initializers/cache_store_extension.rb +1 -0
  407. data/config/initializers/devise.rb +240 -0
  408. data/config/initializers/fnordmetric.rb +14 -0
  409. data/config/initializers/formtastic.rb +76 -0
  410. data/config/initializers/group_type_column_patches.rb +11 -0
  411. data/config/initializers/mime_types.rb +1 -0
  412. data/config/initializers/mini_profiler.rb +32 -0
  413. data/config/initializers/object_to_b_extension.rb +1 -0
  414. data/config/initializers/refile.rb +22 -0
  415. data/config/initializers/sidekiq.rb +12 -0
  416. data/config/locales/attachments/de.yml +33 -0
  417. data/config/locales/bookmarks/de.yml +3 -0
  418. data/config/locales/bookmarks/en.yml +3 -0
  419. data/config/locales/common_expressions/de.yml +5 -0
  420. data/config/locales/common_expressions/en.yml +5 -0
  421. data/config/locales/companies/de.yml +4 -0
  422. data/config/locales/companies/en.yml +4 -0
  423. data/config/locales/de.yml +30 -0
  424. data/config/locales/devise/de.yml +60 -0
  425. data/config/locales/devise/en.yml +62 -0
  426. data/config/locales/en.yml +25 -0
  427. data/config/locales/events/de.yml +34 -0
  428. data/config/locales/events/en.yml +34 -0
  429. data/config/locales/forms/de.yml +3 -0
  430. data/config/locales/groups/de.yml +56 -0
  431. data/config/locales/groups/en.yml +47 -0
  432. data/config/locales/officers/de.yml +10 -0
  433. data/config/locales/pages/de.yml +15 -0
  434. data/config/locales/pages/en.yml +14 -0
  435. data/config/locales/pagination/de.yml +6 -0
  436. data/config/locales/pagination/en.yml +5 -0
  437. data/config/locales/password_strength/de.yml +9 -0
  438. data/config/locales/password_strength/en.yml +9 -0
  439. data/config/locales/posts/de.yml +9 -0
  440. data/config/locales/profile_fields/de.yml +78 -0
  441. data/config/locales/profile_fields/en.yml +22 -0
  442. data/config/locales/profiles/de.yml +47 -0
  443. data/config/locales/profiles/en.yml +44 -0
  444. data/config/locales/roles/de.yml +9 -0
  445. data/config/locales/root/de.yml +3 -0
  446. data/config/locales/root/en.yml +3 -0
  447. data/config/locales/search/de.yml +11 -0
  448. data/config/locales/search/en.yml +11 -0
  449. data/config/locales/sessions/de.yml +37 -0
  450. data/config/locales/sessions/en.yml +37 -0
  451. data/config/locales/setup/de.yml +26 -0
  452. data/config/locales/setup/en.yml +26 -0
  453. data/config/locales/statistics/de.yml +6 -0
  454. data/config/locales/terms_of_use/de.yml +6 -0
  455. data/config/locales/tools/de.yml +9 -0
  456. data/config/locales/tools/en.yml +9 -0
  457. data/config/locales/user_accounts/de.yml +16 -0
  458. data/config/locales/user_accounts/en.yml +13 -0
  459. data/config/locales/user_settings/de.yml +9 -0
  460. data/config/locales/users/de.yml +82 -0
  461. data/config/locales/users/en.yml +51 -0
  462. data/config/locales/workflows/de.yml +4 -0
  463. data/config/locales/workflows/en.yml +4 -0
  464. data/config/routes.rb +104 -0
  465. data/db/migrate/20120403002734_create_users.rb +12 -0
  466. data/db/migrate/20120403011601_create_profile_fields.rb +11 -0
  467. data/db/migrate/20120403161549_remove_user_email_column.rb +5 -0
  468. data/db/migrate/20120405222050_encrypt_password.rb +8 -0
  469. data/db/migrate/20120425161138_create_dag_links.rb +14 -0
  470. data/db/migrate/20120425162644_create_pages.rb +10 -0
  471. data/db/migrate/20120426023322_create_groups.rb +9 -0
  472. data/db/migrate/20120426090436_create_nav_nodes.rb +18 -0
  473. data/db/migrate/20120427021934_create_user_accounts.rb +12 -0
  474. data/db/migrate/20120427044338_add_foreign_key_to_user_accounts.rb +7 -0
  475. data/db/migrate/20120427150156_add_group_token.rb +8 -0
  476. data/db/migrate/20120507165551_make_profile_fields_polymorphic.rb +11 -0
  477. data/db/migrate/20120508130729_add_profile_field_acts_as_tree.rb +9 -0
  478. data/db/migrate/20120508152233_change_profile_field_value_to_text.rb +9 -0
  479. data/db/migrate/20120508201550_add_group_internal_token.rb +11 -0
  480. data/db/migrate/20120511090234_create_workflows.rb +9 -0
  481. data/db/migrate/20120701115059_add_password_digest_to_user_accounts.rb +5 -0
  482. data/db/migrate/20120710193308_remove_salt_from_user_accounts.rb +5 -0
  483. data/db/migrate/20120713102445_add_deleted_at_to_dag_links.rb +5 -0
  484. data/db/migrate/20120722005022_create_workflow_kit_workflows.workflow_kit.rb +11 -0
  485. data/db/migrate/20120722005023_create_workflow_kit_steps.workflow_kit.rb +12 -0
  486. data/db/migrate/20120722005024_create_workflow_kit_parameters.workflow_kit.rb +12 -0
  487. data/db/migrate/20120723165226_add_female_to_users.rb +5 -0
  488. data/db/migrate/20120811140509_create_flags.rb +11 -0
  489. data/db/migrate/20120814100529_create_attachments.rb +13 -0
  490. data/db/migrate/20120815205610_add_content_type_and_file_size_to_attachments.rb +6 -0
  491. data/db/migrate/20130118220014_add_relationships_table_without_dag.rb +10 -0
  492. data/db/migrate/20130207214331_create_events.rb +12 -0
  493. data/db/migrate/20130208215253_create_status_group_membership_infos.rb +11 -0
  494. data/db/migrate/20130220184943_create_stars.rb +11 -0
  495. data/db/migrate/20130309193623_add_devise_to_user_accounts.rb +72 -0
  496. data/db/migrate/20130310003840_rename_stars_to_bookmarks.rb +9 -0
  497. data/db/migrate/20130310004622_fix_column_names_for_bookmarks.rb +6 -0
  498. data/db/migrate/20130313211414_create_geo_infos.rb +13 -0
  499. data/db/migrate/20130313234131_create_geo_locations.rb +16 -0
  500. data/db/migrate/20130314011638_drop_geo_infos.rb +5 -0
  501. data/db/migrate/20130315072759_add_invalid_to_geo_location.rb +5 -0
  502. data/db/migrate/20130315073149_exchange_invalid_for_queried_at_in_geo_location.rb +8 -0
  503. data/db/migrate/20130320003051_add_redirect_to_to_page.rb +5 -0
  504. data/db/migrate/20130329231657_create_posts.rb +15 -0
  505. data/db/migrate/20130404223735_add_entire_message_to_posts.rb +5 -0
  506. data/db/migrate/20130409192959_add_author_to_page.rb +5 -0
  507. data/db/migrate/20130908011215_add_type_to_pages.rb +5 -0
  508. data/db/migrate/20131115114715_validity_range_for_dag_links.rb +16 -0
  509. data/db/migrate/20140611170430_create_activities.rb +23 -0
  510. data/db/migrate/20140808223512_create_last_seen_activities.rb +12 -0
  511. data/db/migrate/20141008101744_add_location_to_events.rb +5 -0
  512. data/db/migrate/20141010130344_add_publish_on_website_to_events.rb +6 -0
  513. data/db/migrate/20141010134227_add_auth_token_to_user_accounts.rb +5 -0
  514. data/db/migrate/20141018143323_add_accepted_terms_to_users.rb +6 -0
  515. data/db/migrate/20141018221659_add_author_to_attachments.rb +5 -0
  516. data/db/migrate/20141102223954_add_body_to_groups.rb +5 -0
  517. data/db/migrate/20141110193830_create_settings.rb +17 -0
  518. data/db/migrate/20141202140522_add_indices.rb +6 -0
  519. data/db/migrate/20141209161946_add_keys.rb +20 -0
  520. data/db/migrate/20150127013809_add_incognito_to_users.rb +5 -0
  521. data/db/migrate/20150129194501_add_indices_for_polymorphic_references.rb +13 -0
  522. data/db/migrate/20150304192448_add_type_to_groups.rb +5 -0
  523. data/db/migrate/20150313221004_add_avatar_id_to_users.rb +5 -0
  524. data/lib/best_in_place/controller_extensions.rb +25 -0
  525. data/lib/best_in_place/helper.rb +127 -0
  526. data/lib/tasks/db_bootstrap.rake +37 -0
  527. data/lib/tasks/your_platform_tasks.rake +4 -0
  528. data/lib/templates/erb/scaffold/_form.html.erb +11 -0
  529. data/lib/your_platform.rb +6 -2
  530. data/lib/your_platform/engine.rb +127 -0
  531. data/lib/your_platform/version.rb +1 -1
  532. data/spec/factories/attachment.rb +12 -0
  533. data/spec/factories/blog_post.rb +10 -0
  534. data/spec/factories/company.rb +7 -0
  535. data/spec/factories/corporation.rb +20 -0
  536. data/spec/factories/event.rb +13 -0
  537. data/spec/factories/group.rb +36 -0
  538. data/spec/factories/html_email.eml +1059 -0
  539. data/spec/factories/mail_message.rb +30 -0
  540. data/spec/factories/page.rb +10 -0
  541. data/spec/factories/relationship.rb +13 -0
  542. data/spec/factories/status_group_membership.rb +21 -0
  543. data/spec/factories/user.rb +97 -0
  544. data/spec/factories/workflow.rb +44 -0
  545. data/spec/features/blog_post_spec.rb +46 -0
  546. data/spec/features/corporate_vita_events_spec.rb +114 -0
  547. data/spec/features/corporate_vita_spec.rb +258 -0
  548. data/spec/features/edit_mode_after_clicking_a_link_spec.rb +20 -0
  549. data/spec/features/events_spec.rb +356 -0
  550. data/spec/features/group_export_spec.rb +19 -0
  551. data/spec/features/group_post_spec.rb +89 -0
  552. data/spec/features/groups_of_groups_page_spec.rb +67 -0
  553. data/spec/features/groups_page_spec.rb +66 -0
  554. data/spec/features/groups_table_spec.rb +32 -0
  555. data/spec/features/help_page_spec.rb +22 -0
  556. data/spec/features/intranet_root_page_spec.rb +18 -0
  557. data/spec/features/locales_spec.rb +36 -0
  558. data/spec/features/maps_spec.rb +53 -0
  559. data/spec/features/mini_profiler_spec.rb +37 -0
  560. data/spec/features/officers_spec.rb +61 -0
  561. data/spec/features/page_redirects_spec.rb +23 -0
  562. data/spec/features/page_spec.rb +20 -0
  563. data/spec/features/postal_address_flag_spec.rb +46 -0
  564. data/spec/features/relationships_on_user_page_spec.rb +78 -0
  565. data/spec/features/review_membership_spec.rb +44 -0
  566. data/spec/features/search_field_spec.rb +121 -0
  567. data/spec/features/setup_spec.rb +63 -0
  568. data/spec/features/user_change_date_of_birth_spec.rb +26 -0
  569. data/spec/features/vertical_nav_spec.rb +27 -0
  570. data/spec/features/what_is_new_box_spec.rb +33 -0
  571. data/spec/helpers/attachments_helper_spec.rb +15 -0
  572. data/spec/models/ability_spec.rb +93 -0
  573. data/spec/models/active_record_cache_extension_spec.rb +177 -0
  574. data/spec/models/active_record_find_by_extension_spec.rb +26 -0
  575. data/spec/models/active_record_json_url_extension_spec.rb +79 -0
  576. data/spec/models/address_label_spec.rb +144 -0
  577. data/spec/models/app_version_spec.rb +38 -0
  578. data/spec/models/attachment_spec.rb +5 -0
  579. data/spec/models/bookmark_spec.rb +70 -0
  580. data/spec/models/concerns/user_corporations_spec.rb +71 -0
  581. data/spec/models/corporation_spec.rb +128 -0
  582. data/spec/models/dag_link_spec.rb +48 -0
  583. data/spec/models/event_spec.rb +267 -0
  584. data/spec/models/flag_spec.rb +20 -0
  585. data/spec/models/flagable_spec.rb +55 -0
  586. data/spec/models/geo_location_spec.rb +126 -0
  587. data/spec/models/group_mixins/corporations_spec.rb +95 -0
  588. data/spec/models/group_mixins/everyone_spec.rb +64 -0
  589. data/spec/models/group_mixins/guests_spec.rb +75 -0
  590. data/spec/models/group_mixins/hidden_users_spec.rb +21 -0
  591. data/spec/models/group_mixins/import_spec.rb +93 -0
  592. data/spec/models/group_mixins/memberships_spec.rb +303 -0
  593. data/spec/models/group_mixins/officers_spec.rb +63 -0
  594. data/spec/models/group_mixins/roles_spec.rb +46 -0
  595. data/spec/models/group_spec.rb +341 -0
  596. data/spec/models/list_export_spec.rb +155 -0
  597. data/spec/models/may_need_review_spec.rb +114 -0
  598. data/spec/models/nav_node_spec.rb +277 -0
  599. data/spec/models/navable_spec.rb +54 -0
  600. data/spec/models/page_spec.rb +185 -0
  601. data/spec/models/post_spec.rb +271 -0
  602. data/spec/models/profile_field_mixins/has_child_profile_fields_spec.rb +73 -0
  603. data/spec/models/profile_field_spec.rb +482 -0
  604. data/spec/models/profile_section_spec.rb +89 -0
  605. data/spec/models/profile_spec.rb +74 -0
  606. data/spec/models/profileable_mixins/adress_spec.rb +93 -0
  607. data/spec/models/profileable_spec.rb +152 -0
  608. data/spec/models/relationship_spec.rb +113 -0
  609. data/spec/models/status_group_membership_spec.rb +350 -0
  610. data/spec/models/status_group_spec.rb +103 -0
  611. data/spec/models/structureable_mixins/has_special_groups_spec.rb +479 -0
  612. data/spec/models/structureable_mixins/roles_spec.rb +517 -0
  613. data/spec/models/structureable_spec.rb +128 -0
  614. data/spec/models/user_account_spec.rb +142 -0
  615. data/spec/models/user_alias_spec.rb +57 -0
  616. data/spec/models/user_group_membership_mixins/validity_range_for_indirect_memberships_spec.rb +291 -0
  617. data/spec/models/user_group_membership_mixins/validity_range_spec.rb +293 -0
  618. data/spec/models/user_group_membership_spec.rb +428 -0
  619. data/spec/models/user_mixins/identification_spec.rb +27 -0
  620. data/spec/models/user_mixins/memberships_spec.rb +138 -0
  621. data/spec/models/user_spec.rb +1794 -0
  622. data/spec/old_yp_spec_helper.rb +46 -0
  623. data/spec/spec_helper.rb +350 -0
  624. data/spec/support/auto_complete.rb +22 -0
  625. data/spec/support/capybara/flash_helpers.rb +37 -0
  626. data/spec/support/capybara/profile_steps.rb +73 -0
  627. data/spec/support/capybara/session_steps.rb +53 -0
  628. data/spec/support/capybara/user_account_helpers.rb +15 -0
  629. data/spec/support/debug.rb +8 -0
  630. data/spec/support/devise-controller_macros.rb +15 -0
  631. data/spec/support/geocoder/stubs.rb +60 -0
  632. data/spec/support/press_enter.rb +15 -0
  633. data/spec/support/time_travel.rb +9 -0
  634. data/spec/support/uploads/image-upload.png +0 -0
  635. data/spec/support/uploads/pdf-upload.pdf +0 -0
  636. data/spec/support/wait_for_ajax.rb +39 -0
  637. data/spec/support/wait_for_cache.rb +7 -0
  638. data/spec/uploaders/attachment_uploader_spec.rb +47 -0
  639. data/vendor/assets/images/flags.png +0 -0
  640. data/vendor/assets/images/galleria/classic-loader.gif +0 -0
  641. data/vendor/assets/images/galleria/classic-map.png +0 -0
  642. data/vendor/assets/javascripts/best_in_place_datetime.js.coffee +45 -0
  643. data/vendor/assets/javascripts/galleria-classic.js +100 -0
  644. data/vendor/assets/javascripts/galleria.js +6919 -0
  645. data/vendor/assets/javascripts/gmaps4rails.js +2 -0
  646. data/vendor/assets/javascripts/gmaps4rails/all.js +1 -0
  647. data/vendor/assets/javascripts/gmaps4rails/base.coffee +1 -0
  648. data/vendor/assets/javascripts/gmaps4rails/base/common.coffee +43 -0
  649. data/vendor/assets/javascripts/gmaps4rails/base/configuration.coffee +7 -0
  650. data/vendor/assets/javascripts/gmaps4rails/base/gmaps.coffee +13 -0
  651. data/vendor/assets/javascripts/gmaps4rails/base/interfaces/basic_interface.coffee +15 -0
  652. data/vendor/assets/javascripts/gmaps4rails/base/interfaces/controller_interface.coffee +15 -0
  653. data/vendor/assets/javascripts/gmaps4rails/base/interfaces/map_interface.coffee +27 -0
  654. data/vendor/assets/javascripts/gmaps4rails/base/interfaces/marker_interface.coffee +15 -0
  655. data/vendor/assets/javascripts/gmaps4rails/base/main.coffee +124 -0
  656. data/vendor/assets/javascripts/gmaps4rails/base/main_controller_extensions/circle_controller.coffee +29 -0
  657. data/vendor/assets/javascripts/gmaps4rails/base/main_controller_extensions/kml_controller.coffee +5 -0
  658. data/vendor/assets/javascripts/gmaps4rails/base/main_controller_extensions/marker_controller.coffee +76 -0
  659. data/vendor/assets/javascripts/gmaps4rails/base/main_controller_extensions/polygon_controller.coffee +29 -0
  660. data/vendor/assets/javascripts/gmaps4rails/base/main_controller_extensions/polyline_controller.coffee +29 -0
  661. data/vendor/assets/javascripts/gmaps4rails/base/objects/circle.coffee +12 -0
  662. data/vendor/assets/javascripts/gmaps4rails/base/objects/kml.coffee +8 -0
  663. data/vendor/assets/javascripts/gmaps4rails/base/objects/map.coffee +62 -0
  664. data/vendor/assets/javascripts/gmaps4rails/base/objects/marker.coffee +24 -0
  665. data/vendor/assets/javascripts/gmaps4rails/base/objects/polygon.coffee +11 -0
  666. data/vendor/assets/javascripts/gmaps4rails/base/objects/polyline.coffee +11 -0
  667. data/vendor/assets/javascripts/gmaps4rails/bing.coffee +1 -0
  668. data/vendor/assets/javascripts/gmaps4rails/bing/main.coffee +29 -0
  669. data/vendor/assets/javascripts/gmaps4rails/bing/objects/map.coffee +63 -0
  670. data/vendor/assets/javascripts/gmaps4rails/bing/objects/marker.coffee +78 -0
  671. data/vendor/assets/javascripts/gmaps4rails/bing/shared.coffee +20 -0
  672. data/vendor/assets/javascripts/gmaps4rails/google.coffee +1 -0
  673. data/vendor/assets/javascripts/gmaps4rails/google/main.coffee +47 -0
  674. data/vendor/assets/javascripts/gmaps4rails/google/objects/circle.coffee +38 -0
  675. data/vendor/assets/javascripts/gmaps4rails/google/objects/kml.coffee +16 -0
  676. data/vendor/assets/javascripts/gmaps4rails/google/objects/map.coffee +71 -0
  677. data/vendor/assets/javascripts/gmaps4rails/google/objects/marker.coffee +114 -0
  678. data/vendor/assets/javascripts/gmaps4rails/google/objects/polygon.coffee +38 -0
  679. data/vendor/assets/javascripts/gmaps4rails/google/objects/polyline.coffee +49 -0
  680. data/vendor/assets/javascripts/gmaps4rails/google/shared.coffee +27 -0
  681. data/vendor/assets/javascripts/gmaps4rails/openlayers.coffee +1 -0
  682. data/vendor/assets/javascripts/gmaps4rails/openlayers/main.coffee +138 -0
  683. data/vendor/assets/javascripts/gmaps4rails/openlayers/objects/map.coffee +49 -0
  684. data/vendor/assets/javascripts/gmaps4rails/openlayers/objects/marker.coffee +68 -0
  685. data/vendor/assets/javascripts/gmaps4rails/openlayers/objects/polyline.coffee +39 -0
  686. data/vendor/assets/javascripts/gmaps4rails/openlayers/shared.coffee +19 -0
  687. data/vendor/assets/javascripts/jquery-ui-timepicker-addon.js +2223 -0
  688. data/vendor/assets/javascripts/jquery-ui-timepicker-de.js +26 -0
  689. data/vendor/assets/javascripts/jquery.ui.datepicker-de.js +23 -0
  690. data/vendor/assets/javascripts/password_strength.js +149 -0
  691. data/vendor/assets/javascripts/zxcvbn.js +43 -0
  692. data/vendor/assets/stylesheets/flags.css.scss +259 -0
  693. data/vendor/assets/stylesheets/galleria-classic.css.scss +239 -0
  694. data/vendor/assets/stylesheets/gmaps4rails.css +24 -0
  695. data/vendor/assets/stylesheets/mercury.css +24 -0
  696. data/vendor/scripts/bashpass/README.md +29 -0
  697. data/vendor/scripts/bashpass/bashpass +124 -0
  698. data/vendor/scripts/bashpass/bashpass-APACHE-LICENSE +201 -0
  699. data/vendor/scripts/bashpass/german.dic +40794 -0
  700. metadata +1540 -16
  701. data/.gitignore +0 -17
  702. data/Gemfile +0 -4
  703. data/LICENSE.txt +0 -4
  704. data/your_platform.gemspec +0 -19
@@ -0,0 +1,22 @@
1
+ - # Button to add structureables under a parent structureable.
2
+ - #
3
+ - # locals:
4
+ - # - parent
5
+ - # - parent_id
6
+ - # - parent_type
7
+ - #
8
+
9
+ %div.btn-group.add-structureable
10
+ %a.btn.btn-default.dropdown-toggle(data-toggle="dropdown" href="#")
11
+ = icon :plus
12
+ = I18n.t(:add)
13
+ %span.caret
14
+ %ul.dropdown-menu
15
+ - if can? :create_page_for, parent
16
+ %li
17
+ = link_to I18n.t(:page), pages_path(parent_id: parent_id, parent_type: parent_type), method: :post
18
+ - if can? :create_group_for, parent
19
+ %li
20
+ = link_to I18n.t(:group), groups_path(parent_id: parent_id, parent_type: parent_type), method: :post
21
+
22
+ = render partial: 'layouts/add_structureable_additions', locals: {parent: parent}
@@ -0,0 +1,22 @@
1
+ - # locals:
2
+ - # - subject: officers
3
+ - # - icon: lock, ok-sign
4
+ - # - navable - the currently viewed object
5
+
6
+ - subject ||= ''
7
+ - icon ||= 'unlock-alt'
8
+ - navable ||= nil
9
+
10
+ - if subject.present?
11
+
12
+ .alert.alert-info.authorization_info
13
+ = icon(icon)
14
+
15
+ - if subject == 'foo'
16
+ %ul.authorization_info
17
+ %li Collect authorization info here.
18
+ %li Or override the file in the application code.
19
+
20
+ - if subject == 'event'
21
+ %strong Öffentliche Veranstaltung
22
+ Jede Person mit Benutzerkonto kann diese Veranstaltung sehen und ihr als Teilnehmer beitreten.
@@ -0,0 +1,5 @@
1
+ / Displays flags for the given flagable.
2
+
3
+ - for flag in flagable.flags do
4
+ %span.label.label-info
5
+ = flag.to_s
@@ -0,0 +1,4 @@
1
+ %div.markdown_help.right
2
+ %a.markdown_help.has_popover.stay_open{href: '#', data: {placement: 'bottom', title: 'Hilfe zur Formatierung: Markdown-Syntax' + '<a href="#" type="button" class="close close_popover">&times;</a>', html: true, content: image_tag('markdown_help.png', width: '526') }}
3
+ = icon 'question-sign'
4
+ Hilfe zur Formatierung
@@ -0,0 +1,2 @@
1
+ = form_tag search_path, :method => 'get', :class => "navbar-form navbar-search", role: 'search' do
2
+ = search_field_tag :query, params[ :query ], :class => "search-query form-control", :placeholder => I18n.t(:find), :title => t(:type_query_and_press_enter), data: {placement: 'bottom', preview_url: search_preview_path(format: 'json')}
@@ -0,0 +1,33 @@
1
+ - # locals:
2
+ - events ||= []
3
+ - force_show ||= false
4
+ - #
5
+ - # helper methods:
6
+ - # EventsHelper#group_to_create_the_event_in
7
+
8
+ - if events.count > 0 || force_show
9
+ %h1.upcoming_events=t :events
10
+ %div
11
+ %span.ics_abo_buttons
12
+ - if @group
13
+ %a.has_tooltip#ics_abo{href: group_events_url(group_id: @group.id, format: 'ics', protocol: 'webcal', token: current_user.account.auth_token), title: "Kalender-Abo (ICS, iCal): Veranstaltungen von '#{@group.name}' im Kalender auf dem eigenen Rechner abonnieren.", data: {placement: 'top'}}
14
+ = icon :calendar
15
+ - else
16
+ %a.btn.btn-default.has_tooltip#ics_abo{href: events_url(format: 'ics', protocol: 'webcal', token: current_user.account.auth_token), title: "Veranstaltungen, die mich betreffen, im Kalender auf dem eigenen Rechner abonnieren. Der Kalender wird dann automatisch auf dem Laufenden gehalten. (Empfohlen.)", data: {placement: 'top'}}
17
+ = icon :calendar
18
+ Kalender-Abo!
19
+ %ul.upcoming_events
20
+ = render partial: 'events/events_lis', locals: {events: events}
21
+ %table.events_footer
22
+ %td.show_all
23
+ - if @group
24
+ = link_to t(:show_all), group_events_path(group_id: @group.id)
25
+ - else
26
+ = link_to t(:show_all), events_path
27
+ %td.create_event
28
+ - if group_to_create_the_event_for && can?(:create_event, group_to_create_the_event_for)
29
+ %a.btn.btn-default.btn-small#create_event{href: events_path(group_id: group_to_create_the_event_for.id, format: 'json')}
30
+ = icon :plus
31
+ =t :add_event_for
32
+ = surround "'", "'" do
33
+ = group_to_create_the_event_for.name
@@ -0,0 +1,16 @@
1
+ - set_title t :statistics
2
+
3
+ %h1.statistics=t :statistics
4
+ %div
5
+
6
+ - @list_presets.each do |list_preset|
7
+
8
+ %h1=t list_preset
9
+ %div
10
+ %p.explanation=t "#{list_preset}_explanation"
11
+
12
+ %p.buttons
13
+ = link_to "#{t list_preset} anzeigen", statistics_path(list: list_preset), class: 'btn btn-primary'
14
+ = link_to statistics_path(list: list_preset, format: 'csv'), class: 'btn btn-default' do
15
+ = icon 'list-alt'
16
+ Als CSV-Tabelle herunterladen
@@ -0,0 +1,13 @@
1
+ - set_title t @list_preset
2
+
3
+ %p= link_to "Zurück zur Statistik-Übersicht", statistics_index_path
4
+
5
+ %h1.statistics=t @list_preset
6
+ %div
7
+ %p.explanation=t "#{@list_preset}_explanation"
8
+
9
+ = link_to statistics_path(list: @list_preset, format: 'csv'), class: 'btn btn-default right' do
10
+ = icon 'list-alt'
11
+ Als CSV-Tabelle herunterladen
12
+
13
+ = @list_export.to_html
@@ -0,0 +1 @@
1
+ = t :i_accept_these_terms
@@ -0,0 +1 @@
1
+ I'm a good person!
@@ -0,0 +1,19 @@
1
+ %h1.terms_of_use=t :terms_of_use
2
+ %div
3
+ = form_tag terms_path(redirect_after: params[:redirect_after]), method: 'post' do
4
+ .terms
5
+ = render partial: 'terms'
6
+ .accept
7
+ %label{for: 'accept'}
8
+ - if not current_user.accepted_terms?(@current_terms_stamp)
9
+ %input{type: 'checkbox', value: 'agreed', name: 'accept', id: 'accept'}
10
+ = render partial: 'checkbox'
11
+
12
+ - if current_user.accepted_terms?(@current_terms_stamp)
13
+ .accepted_at.alert.alert-success
14
+ Du hast diese Bedingungen am
15
+ = l current_user.accepted_terms_at
16
+ akzeptiert.
17
+ - else
18
+ .submit
19
+ = submit_tag t(:confirm), class: 'btn btn-primary'
@@ -0,0 +1,32 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta content='text/html; charset=UTF-8' http-equiv='Content-Type' />
5
+ </head>
6
+ <body style="font-family: Helvetica; line-height: 150%">
7
+
8
+ <%= link_to root_url do %>
9
+ <%= image_tag 'logo.png', align: 'right' %>
10
+ <% end %><br />
11
+
12
+ <h3><%=t :welcome_to_the_new_intranet_platform %></h3>
13
+
14
+ <p><%=t :good_day %> <%= @mr_or_mrs %> <%= @user.last_name%>,</p>
15
+
16
+ <p><%=t :with_this_email_you_get_your_account_data %></p>
17
+
18
+ <p><table>
19
+ <tr><th align="left"><%=t :url %>:</th><td><%= link_to(root_url, root_url) %></td></tr>
20
+ <tr><th align="left"><%=t :login_name %>:</th><td><%= @user.alias %></td></tr>
21
+ <tr><th align="left"><%=t :password %>:</th><td><%= @password %></td></tr>
22
+ </table></p>
23
+
24
+ <hr />
25
+
26
+ <p>
27
+ <%=t :this_message_has_been_generated_automatically %><br />
28
+ <%= link_to(root_url, root_url) %>
29
+ </p>
30
+
31
+ </body>
32
+ </html>
@@ -0,0 +1,149 @@
1
+ - # This renders a page to change the user's password.
2
+ - #
3
+ - # Locals:
4
+ - # - user_account
5
+ - # - require_current_password, default: true
6
+ - #
7
+ - user_account.present? || raise('no user_account given when rendering user_accounts/change_password partial.')
8
+ - require_current_password = true unless defined? require_current_password
9
+
10
+ - set_title t :change_password
11
+
12
+ - form_url = require_current_password ? registration_path('user_account') : password_path('user_account')
13
+
14
+ = form_for(user_account, :as => 'user_account', :url => form_url, :html => { :method => :put }) do |f|
15
+
16
+ - if not require_current_password
17
+ = f.hidden_field :reset_password_token
18
+
19
+ - if devise_error_messages!.length > 0 or (devise_mapping.confirmable? && user_account.pending_reconfirmation?)
20
+ .alert.alert-danger
21
+ = devise_error_messages!
22
+ - if devise_mapping.confirmable? && user_account.pending_reconfirmation?
23
+ %div Currently waiting confirmation for: = user_account.unconfirmed_email
24
+
25
+ .row
26
+ .col-md-8
27
+ %h1 Welches Passwort soll ich wählen?
28
+ %div
29
+ %p Denken Sie an eine Situation, an die Sie sich erinnern ider die Sie sich gut merken können. Entnehmen Sie vier Schlagworte und verbinden Sie sie zu einem Passwort.
30
+ %p
31
+ %strong Gutes Passwort:
32
+ %code.has_tooltip{title: 'Die vier Begriffe zusammen ergeben das gute Passwort!'}
33
+ %span.password_component abend
34
+ %span.password_component lustig
35
+ %span.password_component bowle
36
+ %span.password_component lecker
37
+ (Man braucht mehrere Jahre zum Knacken. Die Leerzeichen können Sie weglassen.)
38
+ %p
39
+ %strong Schlechtes Passwort:
40
+ %code
41
+ %strike.has_tooltip{title: 'Für diejenigen, die diese Seite nur überfliegen, haben wir das schlechte Passwort vorsorglich durchgestrichen.', data: {placement: 'bottom'}} p4ssw0rt!
42
+ (Man braucht 27 Sekunden zum Knacken.)
43
+ %p
44
+ Achten Sie bitte darauf, dass Sie
45
+ %strong für jeden Dienst ein eigenes Passwort
46
+ verwenden.
47
+ Wenn der Zugang zu einem System geknackt wird, sind dann die übrigen Dienste nach wie vor sicher.
48
+ Sie können entweder händisch ein Passwort-Buch führen oder ein Schlüsselbund-Programm verwenden.
49
+ %p
50
+ %span.pro_tipp_trigger
51
+ %strong Pro-Tipp:
52
+ Moderne Browser haben eine Schlüsselbund-Verwaltung,
53
+ %span.pro_tipp_body
54
+ die Ihre Passwörter auch verschlüsselt zwischen Ihren Geräten synchronisieren. Die dürfen Sie ruhig benutzen und sich vom Browser ein Passwort vorschlagen lassen. Dann müssen Sie sich für die Plattform kein Passwort merken. Achten Sie nur darauf, dass die "Master-Passwörter" für Ihren Schlüsselbund und Ihren Computer gut genug sind.
55
+
56
+ .col-md-4
57
+ %h1.right Weitere Informationen
58
+ %div
59
+ %ol
60
+ %li
61
+ %p
62
+ %a{href: 'https://xkcd.com/936'} xkcd-Comic zum Thema Passwort-Stärke
63
+ (englischsprachig)
64
+ %li
65
+ %p
66
+ %a{href: 'https://www.bsi-fuer-buerger.de/BSIFB/DE/MeinPC/Passwoerter/passwoerter.html'} Empfehlungen des Bundesamtes für Sicherheit in der Informationstechnik (BSI)
67
+ %p
68
+ Lesenswert sind die Hinweise zum Umgang mit Passwörtern.
69
+ Deren Empfehlungen zur Passwort-Wahl sind aber ein bisschen veraltet.
70
+ %li
71
+ %p
72
+ %strong
73
+ %a{href: '#generated_passwords'} Zufällig generierte Beispiel-Passwörter
74
+ haben wir weiter unten für Sie zusammengestellt.
75
+
76
+ .row
77
+ .col-md-12
78
+ - if require_current_password
79
+ %h1.current_password Bisheriges Passwort
80
+ %div
81
+ Aus Sicherheitsgründen fragen wir hier nocheinmal Ihr
82
+ %strong bisheriges Passwort
83
+ ab:
84
+ = f.label :current_password, "Bisheriges Passwort"
85
+ %span.input-group
86
+ %span.input-group-addon= icon :key
87
+ = f.password_field :current_password, class: 'form-control', placeholder: 'Bisheriges Passwort', autofocus: true
88
+ %p.right
89
+ = link_to 'Ich habe mein bisheriges Passwort vergessen. Ich benötige ein neues Passwort per E-Mail.', forgot_password_user_path(user_account.user), method: :put, class: 'send_me_a_new_password_via_email'
90
+
91
+ %h1.change_password Neues Passwort
92
+ %div
93
+
94
+ = f.label :password, t(:new_password)
95
+ %span.input-group
96
+ %span.input-group-addon= icon :key
97
+ = f.password_field :password, :autocomplete => "off", class: 'form-control', placeholder: 'Neues Passwort hier eingeben'
98
+ %span.input-group-addon= password_strength_container
99
+
100
+ = f.label :password_confirmation, "Neues Passwort bestätigen"
101
+ %span.input-group
102
+ %span.input-group-addon= icon :key
103
+ = f.password_field :password_confirmation, class: 'form-control', placeholder: 'Neues Passwort nocheinmal eingeben'
104
+
105
+ %h1.confirm_password_change Bestätigen
106
+ %div
107
+
108
+ %span.input-group
109
+ %span.input-group-addon
110
+ %input(id="user_account_agreement" type="checkbox")
111
+ %span.input-group-addon
112
+ = f.label(:agreement, t(:i_agree_i_do_not_use_the_same_password_on_other_services))
113
+
114
+ %p Bitte ignorieren Sie diese Pflicht nicht. Sie schützen damit auch die Daten der übrigen Benutzer dieser Software.
115
+ %span.input-group-addon
116
+ .thanks.hidden Danke!
117
+
118
+ %p Bitte klicken Sie nun auf den folgenden blauen Bestätigen-Knopf, um die Änderung Ihres Passwortes einzuleiten.
119
+ %p= f.submit t(:submit_changed_password), class: 'btn btn-primary btn-large confirm right'
120
+
121
+ %h1
122
+ %a{name: 'generated_passwords'} Generierte Passwörter
123
+ %div
124
+ %h2 pwgen
125
+ Hier eine Auswahl mittels
126
+ %a{href: 'http://derpi.tuwien.ac.at/cgi-bin/man/man2html?pwgen+1'} pwgen
127
+ phonetisch generierter Passwörter.
128
+ - pwgen_command = "pwgen 24 --num-passwords=48 -C"
129
+ %p~ ("<pre><code>" + "$ #{pwgen_command}\n\n" + `#{pwgen_command}` + "</code></pre>").html_safe
130
+
131
+ %h2 bashpass
132
+ Hier eine Auswahl mittels
133
+ %a{href: 'https://github.com/fiedl/your_platform/tree/master/vendor/scripts/bashpass'} bashpass
134
+ generierter Passwörter in Anlehnung an die unten stehende Karikatur.
135
+ %p~ ("<pre><code>" + "$ #{BashpassPassword.bashpass_command}\n\n" + 24.times.collect { BashpassPassword.new }.join("\n") + "</code></pre>").html_safe
136
+
137
+ %h1 Karikatur
138
+ %div
139
+ %a{href: 'https://xkcd.com/936'}
140
+ = image_tag 'http://imgs.xkcd.com/comics/password_strength.png'
141
+
142
+ %h1 Hinweise zur Verschlüsselung
143
+ %div
144
+ %p
145
+ Die Passwörter werden auf der Plattform in einer degenerierten Form
146
+ = "(#{link_to 'bcrypt', 'http://de.wikipedia.org/wiki/Bcrypt'})".html_safe
147
+ gespeichert, sodass sie von niemandem ausgelesen werden können.
148
+ %p
149
+ Bitte achten Sie aber darauf, dass Sie Ihr Passwort niemals an andere Personen weitergeben, auch nicht zur Hilfestellung bei der Arbeit mit der Plattform!
@@ -0,0 +1,39 @@
1
+ %dl
2
+ %dt
3
+ Identifikation möglich mit folgenden Daten:
4
+ %dd
5
+ %dl
6
+ - # User.attributes_used_for_identification
7
+ %span
8
+ %dt= t :alias
9
+ %dd= best_in_place_if can?(:change_alias, @user), @user, :alias
10
+ %span
11
+ %dt= t :name
12
+ %dd= @user.name
13
+ %span
14
+ %dt= t :email
15
+ %dd= @user.email
16
+
17
+ .show_only_in_edit_mode
18
+ %dl
19
+ - if can? :update, @user
20
+ %dt
21
+ Zugang zur Plattform
22
+ %dd
23
+ = "Der Zugang zur Plattform (Benutzerkonto) wurde erstellt am #{localize(@user.account.created_at)}. Die Zugangsdaten wurden zuletzt am #{localize(@user.account.updated_at)} geändert."
24
+ %dt
25
+ = t('password') + ':'
26
+ - if @user == current_user
27
+ %dd.change_password
28
+ %p= link_to t(:change_password), edit_registration_path, :class => 'btn btn-success'
29
+ - if can? :manage, @user
30
+ %dd.request_new_password
31
+ %p= button_to t(:send_new_password), forgot_password_user_path(@user.id), method: :put, :class => 'btn btn-success'
32
+ %dt
33
+ Zugang zur Plattform sperren:
34
+ %dd.lock_account
35
+ = button_to "Benutzerkonto sperren", user_account_path(@user.account.id), :method => :delete, :class => 'btn btn-danger'
36
+ %p
37
+ Dies sperrt den Zugang zur Plattform für
38
+ = "#{link_to @user.title, @user}.".html_safe
39
+ Alle Daten bleiben erhalten.
@@ -0,0 +1,9 @@
1
+ - # locals: (user_group_membership) or (user, group)
2
+ - user ||= user_group_membership.user
3
+ - group ||= user_group_membership.group
4
+ %li
5
+ = link_to user do
6
+ = render partial: 'users/user_title', locals: {user: user}
7
+ -# - if can? :manage, user
8
+ -# %span.show_only_in_edit_mode
9
+ -# = workflow_execution_links_for( group: group, user: user )
@@ -0,0 +1,56 @@
1
+ - # Locals:
2
+ - # - memberships
3
+
4
+ .alert.alert-warning
5
+ %p
6
+ %strong Besondere Sorgfalt geboten:
7
+ Die Mitgliedschaftszeiträume der direkten Mitgliedschaften können durch Klick auf das Datum bearbeitet werden. Hierbei wird allerdings keinerlei Prüfung der Plausibilität vorgenommen, sondern direkt die Datenbank bearbeitet. Bitte äußerste Vorsicht walten lassen.
8
+ %p
9
+ Abgeleitete Informationen werden erst nach einem Neuladen angezeigt. Abgeleitete Informationen, z.B. Aktivitätszahlen, können mit (wenigen Minuten) Verzögerung angezeigt werden.
10
+
11
+ %table.datatable.memberships
12
+ %thead
13
+ %tr
14
+ %th Id
15
+ %th Gruppe
16
+ %th Pfad
17
+ %th Mitglied seit
18
+ %th Mitglied bis
19
+ %th Direkte Mitgliedschaft
20
+ %th Löschen
21
+ %tbody
22
+ - memberships.each do |membership|
23
+ %tr{class: ((membership.group && membership.currently_valid?) ? "currently_valid" : "currently_invalid")}
24
+ %td.copy-to-clipboard{title: "UserGroupMembership.now_and_in_the_past.find(#{membership.id})"}= membership.id
25
+ %td
26
+ - if membership.group
27
+ = link_to membership.group.name, membership.group
28
+ - else
29
+ .alert.alert-danger
30
+ %strong GRUPPE FEHLT!
31
+ (Datenfehler)
32
+ %td
33
+ - if membership.group
34
+ %ul
35
+ - membership.group.nav_node.ancestor_navables.each do |ancestor|
36
+ %li= link_to ancestor.title, ancestor
37
+ %td
38
+ - if membership.group
39
+ - if membership.direct?
40
+ = best_in_place membership, :valid_from_localized_date
41
+ - else
42
+ = localize(membership.valid_from.to_date) if membership.valid_from
43
+ - else
44
+ = localize(membership.read_attribute(:valid_from).to_date) if membership.read_attribute(:valid_from)
45
+ %td
46
+ - if membership.group
47
+ - if membership.direct?
48
+ = best_in_place membership, :valid_to_localized_date
49
+ - else
50
+ = localize(membership.valid_to.to_date) if membership.valid_to
51
+ - else
52
+ = localize(membership.read_attribute(:valid_to).to_date) if membership.read_attribute(:valid_to)
53
+ %td= membership.direct? ? "<strong>direkt</strong>".html_safe : "count: #{membership.count}"
54
+ %td
55
+ - if membership.destroyable? and can?(:destroy, membership)
56
+ = remove_button membership, show_only_in_edit_mode: false, confirm: "Dies löscht den Eintrag unwiderbringlich! Dies soll nicht dazu verwendet werden, um eine Mitgliedschaft zu beenden, sondern NUR, WENN es sich um einen FEHLERHAFTEN EINTRAG handelt. Soll der Eintrag wirklich gelöscht werden?"