wobauth 3.4.4

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 (188) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +165 -0
  3. data/Rakefile +30 -0
  4. data/app/assets/javascripts/wobauth/admin.js +13 -0
  5. data/app/assets/javascripts/wobauth/authorities.js.coffee +31 -0
  6. data/app/assets/javascripts/wobauth/groups.js +2 -0
  7. data/app/assets/javascripts/wobauth/memberships.js +2 -0
  8. data/app/assets/javascripts/wobauth/roles.js +2 -0
  9. data/app/assets/stylesheets/wobauth/application.css +15 -0
  10. data/app/assets/stylesheets/wobauth/authorities.css +4 -0
  11. data/app/assets/stylesheets/wobauth/groups.css +4 -0
  12. data/app/assets/stylesheets/wobauth/memberships.css +4 -0
  13. data/app/assets/stylesheets/wobauth/roles.css +4 -0
  14. data/app/controllers/wobauth/ad_users_controller.rb +24 -0
  15. data/app/controllers/wobauth/application_controller.rb +25 -0
  16. data/app/controllers/wobauth/authorities_controller.rb +88 -0
  17. data/app/controllers/wobauth/groups/authorities_controller.rb +11 -0
  18. data/app/controllers/wobauth/groups/memberships_controller.rb +11 -0
  19. data/app/controllers/wobauth/groups_controller.rb +60 -0
  20. data/app/controllers/wobauth/login_controller.rb +10 -0
  21. data/app/controllers/wobauth/memberships_controller.rb +79 -0
  22. data/app/controllers/wobauth/registrations_controller.rb +26 -0
  23. data/app/controllers/wobauth/roles_controller.rb +30 -0
  24. data/app/controllers/wobauth/users/authorities_controller.rb +11 -0
  25. data/app/controllers/wobauth/users/memberships_controller.rb +11 -0
  26. data/app/controllers/wobauth/users_controller.rb +76 -0
  27. data/app/helpers/wobauth/ad_users_helper.rb +60 -0
  28. data/app/helpers/wobauth/application_helper.rb +53 -0
  29. data/app/helpers/wobauth/authorities_helper.rb +9 -0
  30. data/app/models/wobauth/ad_user.rb +4 -0
  31. data/app/models/wobauth/admin_ability.rb +67 -0
  32. data/app/models/wobauth/authority.rb +17 -0
  33. data/app/models/wobauth/group.rb +18 -0
  34. data/app/models/wobauth/membership.rb +11 -0
  35. data/app/models/wobauth/role.rb +19 -0
  36. data/app/models/wobauth/user.rb +11 -0
  37. data/app/services/wobauth/search_ad_user_service.rb +53 -0
  38. data/app/views/devise/registrations/edit.html.erb +25 -0
  39. data/app/views/devise/sessions/new.html.erb +17 -0
  40. data/app/views/devise/shared/_links.html.erb +0 -0
  41. data/app/views/wobauth/ad_users/index.html.erb +69 -0
  42. data/app/views/wobauth/authorities/_form.html.erb +32 -0
  43. data/app/views/wobauth/authorities/edit.html.erb +1 -0
  44. data/app/views/wobauth/authorities/index.html.erb +41 -0
  45. data/app/views/wobauth/authorities/new.html.erb +1 -0
  46. data/app/views/wobauth/authorities/show.html.erb +45 -0
  47. data/app/views/wobauth/groups/_form.html.erb +20 -0
  48. data/app/views/wobauth/groups/_group_memberships.html.erb +21 -0
  49. data/app/views/wobauth/groups/_group_roles.html.erb +23 -0
  50. data/app/views/wobauth/groups/edit.html.erb +1 -0
  51. data/app/views/wobauth/groups/index.html.erb +31 -0
  52. data/app/views/wobauth/groups/new.html.erb +1 -0
  53. data/app/views/wobauth/groups/show.html.erb +45 -0
  54. data/app/views/wobauth/memberships/_form.html.erb +20 -0
  55. data/app/views/wobauth/memberships/edit.html.erb +1 -0
  56. data/app/views/wobauth/memberships/index.html.erb +33 -0
  57. data/app/views/wobauth/memberships/new.html.erb +1 -0
  58. data/app/views/wobauth/memberships/show.html.erb +28 -0
  59. data/app/views/wobauth/roles/_role_authorities.html.erb +21 -0
  60. data/app/views/wobauth/roles/index.html.erb +26 -0
  61. data/app/views/wobauth/roles/show.html.erb +18 -0
  62. data/app/views/wobauth/shared/_accounting.html.erb +25 -0
  63. data/app/views/wobauth/shared/_admin.html.erb +13 -0
  64. data/app/views/wobauth/users/_form.html.erb +28 -0
  65. data/app/views/wobauth/users/_user_groups.html.erb +22 -0
  66. data/app/views/wobauth/users/_user_roles.html.erb +23 -0
  67. data/app/views/wobauth/users/edit.html.erb +1 -0
  68. data/app/views/wobauth/users/index.html.erb +52 -0
  69. data/app/views/wobauth/users/new.html.erb +1 -0
  70. data/app/views/wobauth/users/show.html.erb +130 -0
  71. data/config/initializers/assets.rb +1 -0
  72. data/config/initializers/devise.rb +260 -0
  73. data/config/initializers/devise_failure_app.rb +21 -0
  74. data/config/initializers/simple_form.rb +169 -0
  75. data/config/initializers/simple_form_bootstrap.rb +154 -0
  76. data/config/initializers/wobapphelpers.rb +18 -0
  77. data/config/locales/de.yml +80 -0
  78. data/config/locales/devise.de.yml +60 -0
  79. data/config/locales/devise.en.yml +59 -0
  80. data/config/locales/en.yml +27 -0
  81. data/config/locales/simple_form.en.yml +31 -0
  82. data/config/locales/wobapphelpers.de.yml +10 -0
  83. data/config/locales/wobapphelpers.en.yml +8 -0
  84. data/config/routes.rb +24 -0
  85. data/db/migrate/20140501113226_create_wobauth_roles.rb +9 -0
  86. data/db/migrate/20140501150743_create_wobauth_groups.rb +10 -0
  87. data/db/migrate/20140504124045_create_wobauth_memberships.rb +11 -0
  88. data/db/migrate/20140504143328_create_wobauth_authorities.rb +15 -0
  89. data/db/migrate/20140508120810_devise_create_wobauth_users.rb +55 -0
  90. data/db/migrate/20171231084355_additional_fields_to_wobauth_user.rb +8 -0
  91. data/lib/concerns/models/user.rb +44 -0
  92. data/lib/generators/templates/initializers/wobauth.rb +20 -0
  93. data/lib/generators/wobauth/install_generator.rb +20 -0
  94. data/lib/tasks/wobauth_tasks.rake +4 -0
  95. data/lib/templates/erb/scaffold/_form.html.erb +26 -0
  96. data/lib/templates/erb/scaffold/edit.html.erb +1 -0
  97. data/lib/templates/erb/scaffold/index.html.erb +32 -0
  98. data/lib/templates/erb/scaffold/new.html.erb +1 -0
  99. data/lib/templates/erb/scaffold/show.html.erb +15 -0
  100. data/lib/templates/rails/scaffold_controller/controller.rb +66 -0
  101. data/lib/wobauth/engine.rb +33 -0
  102. data/lib/wobauth/version.rb +4 -0
  103. data/lib/wobauth.rb +57 -0
  104. data/test/dummy/db/test.sqlite3 +0 -0
  105. data/test/dummy/db/test1.sqlite3 +0 -0
  106. data/test/dummy/log/test.log +1954 -0
  107. data/test/dummy/tmp/cache/assets/sprockets/v3.0/-6/-6x3utBDawbjV5d477TJ9PeEoQTk9Yh292Yg_8Ox16U.cache +1 -0
  108. data/test/dummy/tmp/cache/assets/sprockets/v3.0/-A/-A9u9WxFQ9YT2TSLvmYJYJf2Kg9JfDoIt6YZQRcwUHE.cache +0 -0
  109. data/test/dummy/tmp/cache/assets/sprockets/v3.0/-C/-CJCPQLf_lB4gJr983MP5sZdH3uZuYPIe-xSw4QBln4.cache +1 -0
  110. data/test/dummy/tmp/cache/assets/sprockets/v3.0/-K/-K6Cz6iJ4bgvnwN-rMFxBtyYEU6EGdLH9b4N38_GwIs.cache +1 -0
  111. data/test/dummy/tmp/cache/assets/sprockets/v3.0/-x/-xwsVQHMHEQFqvVNjKKkEiujw9_CUgnJ2Hmzampfy60.cache +1 -0
  112. data/test/dummy/tmp/cache/assets/sprockets/v3.0/2J/2JNdqFTZ9i8DAT1rZCc-Xj70u9zcQtlJoqEK68sRPVM.cache +0 -0
  113. data/test/dummy/tmp/cache/assets/sprockets/v3.0/4N/4NSPDtUmuTVU5uLI-eBtnORjzrwVgeLgrgIJh4tjWeQ.cache +1 -0
  114. data/test/dummy/tmp/cache/assets/sprockets/v3.0/4u/4uuqiFX5bLo0J5QqMPSZc642NRkdX4l-Vguvyq6Oe3U.cache +1 -0
  115. data/test/dummy/tmp/cache/assets/sprockets/v3.0/5O/5Oqd8RObzOeHuHy3NTiGE5p_ZkpftjQQgJgS_3KKdH0.cache +1 -0
  116. data/test/dummy/tmp/cache/assets/sprockets/v3.0/6U/6UZEqCkIx3XO_NjOjjWyLET2-dS4Gs_RPAB9NtA99-A.cache +0 -0
  117. data/test/dummy/tmp/cache/assets/sprockets/v3.0/76/767sF803BgrHtDgUPUUn-HN41e6fklZIQkVKyKD59P4.cache +1 -0
  118. data/test/dummy/tmp/cache/assets/sprockets/v3.0/77/77ZyE9pECDHt-19ik7nBaJXJQT-7V2UDr49kFOIO1DM.cache +1 -0
  119. data/test/dummy/tmp/cache/assets/sprockets/v3.0/7n/7nJvPEaj-WV6RCKHc3hpHsAbWek8cidSKvDKLedQpH4.cache +3 -0
  120. data/test/dummy/tmp/cache/assets/sprockets/v3.0/85/856_llbCcD4ntIG6h4uR2WQY9SrutzA-9K6xT53ZPTY.cache +0 -0
  121. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9A/9A6WX6bvqMDoyDrYrGQy2l6nf_JtHoQZsa-pEJ0FgDU.cache +0 -0
  122. data/test/dummy/tmp/cache/assets/sprockets/v3.0/BA/BABtX6k2NZISYrxZSviAXC8UIxZfRhEDDbx7dMf_ShQ.cache +1 -0
  123. data/test/dummy/tmp/cache/assets/sprockets/v3.0/D4/D4_Vl_wB6Vq8O0LvQ9iHt-YqG_c0fUR4af06OZlk10k.cache +3 -0
  124. data/test/dummy/tmp/cache/assets/sprockets/v3.0/DX/DXGc2xprS_TuG5PzNCaBHKBMWTlyrZZYA9jlvlcBn3M.cache +1 -0
  125. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ex/ExDgDLUsesHZC1FAxhQLmTyBpg6IW4gVCUB8U8Ov-X4.cache +1 -0
  126. data/test/dummy/tmp/cache/assets/sprockets/v3.0/F8/F8M6mPdg93dPiXZzHGo3Y0I42et4yc5Hr-eCfuOUeac.cache +1 -0
  127. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Hk/Hkx4xbJvgHfFgfNDKyHxertTGvARWOgVuNuGU-OWPEU.cache +0 -0
  128. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Jo/Jom6Wnb-Sd-d3W24hNHS58BHtuw5Dsm7vvWVPtLB0PA.cache +0 -0
  129. data/test/dummy/tmp/cache/assets/sprockets/v3.0/K5/K5UnItDV1g9ixIoFloUxCNirxL5UFrOT0jz1vKy5shc.cache +31 -0
  130. data/test/dummy/tmp/cache/assets/sprockets/v3.0/K6/K6geC8zADOljHu2R2-DHUgVrgGyij9e4dnxgIdEypMU.cache +2 -0
  131. data/test/dummy/tmp/cache/assets/sprockets/v3.0/KW/KWpcGMHEfc0mpysCx46leXLgyrzubUIXWouB91Ia5Ik.cache +1 -0
  132. data/test/dummy/tmp/cache/assets/sprockets/v3.0/LD/LD1fywEt5YfgacZhvpug0VXFakWRb1jidort_y8Fl00.cache +3 -0
  133. data/test/dummy/tmp/cache/assets/sprockets/v3.0/LT/LTqeGcgCnDytohL1bGvcUZdnrp6gImr9Gzgfj6sYtW4.cache +1 -0
  134. data/test/dummy/tmp/cache/assets/sprockets/v3.0/LX/LXirLCvjN2zWwKoda0ZdfOoFufIGRC9bZFKo95Kxs2w.cache +3 -0
  135. data/test/dummy/tmp/cache/assets/sprockets/v3.0/MH/MH3Sbn3D_A-k2L9Qd_MSjC2d6zv52DnzX3REO1P8n-E.cache +1 -0
  136. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Nm/NmUDbY8fbYAMYUH3HOmHzTLkeJaf-49yXUpF5TXGnYM.cache +3 -0
  137. data/test/dummy/tmp/cache/assets/sprockets/v3.0/O1/O1xVVUGePb-AZZi4nfbefQqZJEuQKvVAnHbbksdys0g.cache +0 -0
  138. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Og/Og28UaPh4fHs8CazZFMRRClJKMdtcZ6TLkcrwXO9888.cache +0 -0
  139. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Py/Py0iDud1Fnb6eLZHFV1BlJ1PKkeJS5bSVb8DL5Lyoyo.cache +2 -0
  140. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Qs/QscUYhnZ_Tw9H1UICqO4jqvLwSznyhEMlkTJRFR63Qk.cache +0 -0
  141. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Rx/RxBkonRxRoJzfP-2eiuZPIg4Wy1eaNd6MQ6N0QTzLbw.cache +1 -0
  142. data/test/dummy/tmp/cache/assets/sprockets/v3.0/S_/S_VAM9XIEPYa1eIrH2MGCvwgC6UuKNU3IsOsXYCbRfE.cache +1 -0
  143. data/test/dummy/tmp/cache/assets/sprockets/v3.0/TK/TK13HHucosr5_ne6uScM6nK6naCAYu11S4GxXyvGEA4.cache +1 -0
  144. data/test/dummy/tmp/cache/assets/sprockets/v3.0/TP/TPYDffricRYUN-8EoF99EbRAm5m9QVJ4NsV4JQHUaTU.cache +2 -0
  145. data/test/dummy/tmp/cache/assets/sprockets/v3.0/TQ/TQZclZQajgRAt0UPyDLa5SDHOXXd7nrs_Aw1guZ1EDE.cache +0 -0
  146. data/test/dummy/tmp/cache/assets/sprockets/v3.0/U-/U-j-KeDrdeyrmflpuJSSH3aH_tGth_0zwnjl9eaecCU.cache +0 -0
  147. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ui/Ui_ImrdWE848w92udaqCheUJypT-7QIicGTDDcF94ZY.cache +2 -0
  148. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Vy/VyeoEaFiHk-BFfUz0QQyO1ywWUjhhvXaWjOhrueWuz4.cache +1 -0
  149. data/test/dummy/tmp/cache/assets/sprockets/v3.0/WC/WCZBAZL9AYx33c-WzmPLL8ZaSkyPBwQEpJSzDMruSTA.cache +0 -0
  150. data/test/dummy/tmp/cache/assets/sprockets/v3.0/XG/XG-1Cxql9XcU0QzVsKfaImD2F-_fbQakmCOO1PZeiO8.cache +1 -0
  151. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Y-/Y-mfMOkq6o7o6NIVKY5m1HzoQPj6deRrSVoSnePwWDg.cache +0 -0
  152. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Z5/Z56duv_o-wQlnyich8DqrY8VfI5mRampXLuyzcCQSes.cache +0 -0
  153. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_X/_XFCt_G6l_CeYOky6Ky04YbAJMGmZ1S55wnsXuzjbFQ.cache +3 -0
  154. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_c/_cAbQgu5_t6QaopeTV6bHpVH6nABdZSHUD3dtw3TFvI.cache +1 -0
  155. data/test/dummy/tmp/cache/assets/sprockets/v3.0/aU/aUB5QePK5Y_57d0ISu6VcHykCHzl47ej-nXJSzHo7mM.cache +0 -0
  156. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ao/ao7sMvRzih2MlCNwwQnYbm-FUNM2rl1wlruiVgH8VbE.cache +0 -0
  157. data/test/dummy/tmp/cache/assets/sprockets/v3.0/b8/b8sc4SHWqZyiR9LoszM7AwU7Z9RStRdUzs5Cm4b1xi4.cache +1 -0
  158. data/test/dummy/tmp/cache/assets/sprockets/v3.0/dG/dGu-1JGz62Geuns1TpCaYbAwvwLKjSjDp_VhKV3nWOw.cache +3 -0
  159. data/test/dummy/tmp/cache/assets/sprockets/v3.0/dH/dHU4yPNGwU72V1rymqid8RLS4ole8B-9UGSJG-QyDsQ.cache +3 -0
  160. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ei/eiJS8jxPa_CT4ECt01iVkhPzc9QQShE__hFgFUVMqhc.cache +1 -0
  161. data/test/dummy/tmp/cache/assets/sprockets/v3.0/hq/hqAVf5Mc94swL5QKxbwrtNQ1F6-4shrOpiZMk60yjMM.cache +0 -0
  162. data/test/dummy/tmp/cache/assets/sprockets/v3.0/hz/hzzNh1KGk98zydo_p20ZW15iDYFoCsUZuYdK99A54Mo.cache +1 -0
  163. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ip/ip5FbXNQpdaOzVbU6_r90bYcY8R47qbE2_C79IUdlvQ.cache +1 -0
  164. data/test/dummy/tmp/cache/assets/sprockets/v3.0/je/je9xQVOnasRNd1k49Q5KJdmxQscPKO-8qeVDMmmsVrI.cache +1 -0
  165. data/test/dummy/tmp/cache/assets/sprockets/v3.0/jt/jtOzRwEskymBEhztMwmAwvXzROImYepCy7Zb25fxexQ.cache +2 -0
  166. data/test/dummy/tmp/cache/assets/sprockets/v3.0/m3/m3BDc8KCgIUXE0VeZ142byDvlbYuOEBpNW_2ucKyb3M.cache +0 -0
  167. data/test/dummy/tmp/cache/assets/sprockets/v3.0/mf/mfkdFcsUrRviUKGZkElnxw6dCyhyArAFbAVNuqQKcsE.cache +1 -0
  168. data/test/dummy/tmp/cache/assets/sprockets/v3.0/mx/mxQkXyjT__7etUOHa4WpbGL4YguqInaF8rQXNK4c6JU.cache +1 -0
  169. data/test/dummy/tmp/cache/assets/sprockets/v3.0/o4/o4yHfopv-ZxcXaMdi1_2O0CkBEWWQEd0wR0tEwKJ8s8.cache +0 -0
  170. data/test/dummy/tmp/cache/assets/sprockets/v3.0/oF/oFjp7US8e9Cu4GOLqlO_vPIaX9jYwqrYbCFq6mgaYWE.cache +1 -0
  171. data/test/dummy/tmp/cache/assets/sprockets/v3.0/op/opKuUcXieH4Q4hch708zXOG2Rud2bhIilb38wKiOdjA.cache +1 -0
  172. data/test/dummy/tmp/cache/assets/sprockets/v3.0/p4/p4U2tbFHGXaOchAVtbEfIHRvWKO2i-0nsq_4vtGNABU.cache +2 -0
  173. data/test/dummy/tmp/cache/assets/sprockets/v3.0/s4/s4jckxw_fz9fwDYqkrZPCsD7cCATrXbD5R7ducBhtoU.cache +0 -0
  174. data/test/dummy/tmp/cache/assets/sprockets/v3.0/uP/uPXk7u0shmDjGGOhtU06VSo7E81DYc2t9OGhQUvxEA0.cache +1 -0
  175. data/test/dummy/tmp/cache/assets/sprockets/v3.0/vS/vSQW3iohJ14LLnwWgoHFeHB-I3yIzLi9tLoZkUaE81M.cache +0 -0
  176. data/test/dummy/tmp/cache/assets/sprockets/v3.0/vu/vuRt78a_J3dg7DUMHX1Nx9DYLME15Z1NjQ-4V8BoNCU.cache +1 -0
  177. data/test/dummy/tmp/cache/assets/sprockets/v3.0/w6/w6Gz48zxIouRBGOu5VmTHWsL9r0M4LKp124UOJ3mZN0.cache +1 -0
  178. data/test/dummy/tmp/cache/assets/sprockets/v3.0/wj/wjsRbpDa20LzSzj66UKcgy3Wif53rLBEoeuyKIKz4pk.cache +3 -0
  179. data/test/dummy/tmp/cache/assets/sprockets/v3.0/wo/wo1g4ZKtmQmol-3MoVPFApwd5fnGEA23tCRCLuEw3D0.cache +1 -0
  180. data/test/dummy/tmp/cache/assets/sprockets/v3.0/xG/xGQ1RojQn3N9C51pkj4Flt274TjVuszRi1Puir0p6dE.cache +0 -0
  181. data/test/dummy/tmp/cache/assets/sprockets/v3.0/xN/xNqJDUb7i6VSD0HU-EV3dcNYRoz2d48cGwn1CBqLvVU.cache +1 -0
  182. data/test/dummy/tmp/cache/assets/sprockets/v3.0/y1/y1pwuOg2qdJFc_DgDEw6OIyr6GbmGpwV-p7X2sS64sU.cache +0 -0
  183. data/test/dummy/tmp/cache/assets/sprockets/v3.0/zO/zOWzdA_n0s0vjbJ6IGB8gj1-mbqzbCywIQCMLr71qDE.cache +1 -0
  184. data/test/dummy/tmp/cache/assets/sprockets/v3.0/zV/zVdKofyDUgEZzwP0GQ8q4RxOoxo-qoGazLMre0zxw9c.cache +0 -0
  185. data/test/tmp/config/initializers/wobauth.rb +15 -0
  186. data/test/tmp/config/locales/wobauth.de.yml +42 -0
  187. data/test/tmp/config/locales/wobauth.en.yml +27 -0
  188. metadata +636 -0
@@ -0,0 +1,20 @@
1
+ <div class="container">
2
+ <%= simple_form_for([wobauth, @group],
3
+ html: { class: 'form-horizontal card' }) do |f| %>
4
+
5
+ <div class="card-header">
6
+ <%= form_legend %>
7
+ </div>
8
+
9
+ <div class="card-body">
10
+ <%= f.input :name
11
+ %>
12
+ <%= f.input :description
13
+ %>
14
+
15
+ <%= f.button :submit, class: 'btn btn-primary' %>
16
+ <%= cancel_button %>
17
+ </div>
18
+ </div>
19
+ <% end %>
20
+ </div>
@@ -0,0 +1,21 @@
1
+ <table class="table table-bordered table-sm autowidth">
2
+ <thead>
3
+ <tr>
4
+ <th><%= t('attributes.user') %> </th>
5
+ <th><%= t('attributes.auto') %> </th>
6
+ <th></th>
7
+ </tr>
8
+ </thead>
9
+ <tbody>
10
+ <% group.memberships.each do |membership| %>
11
+ <%= content_tag_for(:tr, membership) do %>
12
+ <td><%= link_to membership.user, wobauth.user_path(membership.user) %></td>
13
+ <td><%= membership.auto %></td>
14
+ <td class="nowrap">
15
+ <%= edit_link([wobauth, membership.group, membership]) %>
16
+ <%= delete_link([wobauth, membership.group, membership]) %>
17
+ </td>
18
+ <% end %>
19
+ <% end %>
20
+ </tbody>
21
+ </table>
@@ -0,0 +1,23 @@
1
+ <table class="table table-bordered table-sm autowidth">
2
+ <thead>
3
+ <tr>
4
+ <th><%= t('attributes.role') %></th>
5
+ <th><%= t('attributes.authorized_for') %></th>
6
+ <th><%= t('attributes.authorized_for_type') %></th>
7
+ <th></th>
8
+ </tr>
9
+ </thead>
10
+ <tbody>
11
+ <% group.authorities.each do |authority| %>
12
+ <%= content_tag_for(:tr, authority) do %>
13
+ <td><%= link_to authority.role, wobauth.role_path(authority.role) %></td>
14
+ <td><%= authorized_for_link(authority.authorized_for) %></td>
15
+ <td><%= authority.authorized_for_type %></td>
16
+ <td class="nowrap">
17
+ <%= edit_link([wobauth, authority.authorizable, authority]) %>
18
+ <%= delete_link([wobauth, authority.authorizable, authority]) %>
19
+ </td>
20
+ <% end %>
21
+ <% end %>
22
+ </tbody>
23
+ </table>
@@ -0,0 +1 @@
1
+ <%= render 'form' %>
@@ -0,0 +1,31 @@
1
+ <h1><%= t('controller.wobauth/groups') %></h1>
2
+
3
+ <%= content_tag :table, id: :wobauth_groups, role: :wobauth_datatable,
4
+ class: "table table-bordered table-striped dataTable" do %>
5
+ <thead>
6
+ <tr>
7
+ <th><%= t('attributes.name') %></th>
8
+ <th><%= t('attributes.description') %></th>
9
+ <th><%= t('wobauth.action') %></th>
10
+ </tr>
11
+ </thead>
12
+ <tbody>
13
+
14
+ <% @groups.each do |group| %>
15
+ <%= content_tag_for(:tr, group) do %>
16
+ <td><%= group.name %></td>
17
+ <td><%= group.description %></td>
18
+ <td class="nowrap">
19
+ <%= show_link [wobauth, group] %>
20
+ <%= edit_link [wobauth, group] %>
21
+ <%= delete_link [wobauth, group] %>
22
+ </td>
23
+ <% end %>
24
+ <% end %>
25
+ </tbody>
26
+ <% end %>
27
+
28
+ <br />
29
+
30
+ <%= back_link %>
31
+ <%= new_link [wobauth, Wobauth::Group] %>
@@ -0,0 +1 @@
1
+ <%= render 'form' %>
@@ -0,0 +1,45 @@
1
+ <div class="card">
2
+ <div class="card-header">
3
+ <h4><%= t('attributes.group')%>: <%= @group.name %></h4>
4
+ </div>
5
+ <div class="card-body">
6
+ <div class="card-text">
7
+ <%= t('attributes.description')%>: <%= @group.description %></p>
8
+ </div>
9
+
10
+ <div role="toolbar">
11
+ <%= back_link %>
12
+ <%= edit_link([wobauth, @group]) %>
13
+ <%= delete_link([wobauth, @group]) %>
14
+ <%= new_link [wobauth, Wobauth::Group] %>
15
+ </div>
16
+ </div>
17
+ </div>
18
+
19
+ <br />
20
+
21
+ <div class="card">
22
+ <div class="card-header">
23
+ <h4><%= t('controller.wobauth/authorities') %></h4>
24
+ </div>
25
+ <div class="card-body">
26
+ <div id="group_roles">
27
+ <%= render partial: 'group_roles', locals: {group: @group} %>
28
+ </div>
29
+ <%= new_link([wobauth, @group, Wobauth::Authority], group_id: @group.to_param) %>
30
+ </div>
31
+ </div>
32
+
33
+ <br />
34
+
35
+ <div class="card">
36
+ <div class="card-header">
37
+ <h4><%= t('controller.wobauth/users') %></h4>
38
+ </div>
39
+ <div class="card-body">
40
+ <div id="group_memberships">
41
+ <%= render partial: 'group_memberships', locals: {group: @group} %>
42
+ </div>
43
+ <%= new_link([wobauth, @group, Wobauth::Membership], group_id: @group.to_param) %>
44
+ </div>
45
+ </div>
@@ -0,0 +1,20 @@
1
+ <div class="container">
2
+ <%= simple_form_for([wobauth, @membershipable, @membership],
3
+ html: { class: 'form-horizontal card' }
4
+ ) do |f| %>
5
+
6
+ <div class="card-header">
7
+ <%= form_legend %>
8
+ </div>
9
+
10
+ <div class="card-body">
11
+ <%= f.association :user
12
+ %>
13
+ <%= f.association :group
14
+ %>
15
+
16
+ <%= f.button :submit, class: 'btn btn-primary' %>
17
+ <%= cancel_button %>
18
+ </div>
19
+ <% end %>
20
+ </div>
@@ -0,0 +1 @@
1
+ <%= render 'form' %>
@@ -0,0 +1,33 @@
1
+ <h1><%= t('controller.wobauth/memberships') %></h1>
2
+
3
+ <%= content_tag :table, id: :wobauth_memberships, role: :wobauth_datatable,
4
+ class: "table table-bordered table-striped dataTable" do %>
5
+ <thead>
6
+ <tr>
7
+ <th><%= t('attributes.user') %></th>
8
+ <th><%= t('attributes.group') %></th>
9
+ <th><%= t('attributes.auto') %></th>
10
+ <th><%= t('wobauth.action') %></th>
11
+ </tr>
12
+ </thead>
13
+ <tbody>
14
+
15
+ <% @memberships.each do |membership| %>
16
+ <%= content_tag_for(:tr, membership) do %>
17
+ <td><%= membership.user %></td>
18
+ <td><%= membership.group %></td>
19
+ <td><%= membership.auto %></td>
20
+ <td class="nowrap">
21
+ <%= show_link [wobauth, membership] %>
22
+ <%= edit_link [wobauth, membership] %>
23
+ <%= delete_link [wobauth, membership] %>
24
+ </td>
25
+ <% end %>
26
+ <% end %>
27
+ </tbody>
28
+ <% end %>
29
+
30
+ <br />
31
+
32
+ <%= back_link %>
33
+ <%= new_link [wobauth, Wobauth::Membership] %>
@@ -0,0 +1 @@
1
+ <%= render 'form' %>
@@ -0,0 +1,28 @@
1
+ <div class="card">
2
+ <div class="card-header">
3
+ <h4><%= t('attributes.membership') %></h4>
4
+ </div>
5
+ <div class="card-body">
6
+ <table class="table table-bordered table-hover autowidth">
7
+ <tr>
8
+ <th><%= t('attributes.user')%>:</th>
9
+ <td><%= @membership.user %></td>
10
+ </tr>
11
+ <tr>
12
+ <th><%= t('attributes.group')%>:</th>
13
+ <td><%= @membership.group %></td>
14
+ </tr>
15
+ <tr>
16
+ <th><%= t('attributes.auto')%>:</th>
17
+ <td><%= @membership.auto %></td>
18
+ </tr>
19
+ </table>
20
+
21
+ <div role="toolbar">
22
+ <%= back_link %>
23
+ <%= edit_link([wobauth, @membership]) %>
24
+ <%= delete_link([wobauth, @membership]) %>
25
+ <%= new_link [wobauth, Wobauth::Membership] %>
26
+ </div>
27
+ </div>
28
+ </div>
@@ -0,0 +1,21 @@
1
+ <%= content_tag :table, id: :wobauth_role_authorities, role: :wobauth_datatable,
2
+ class: "table table-sm table-bordered dataTable" do %>
3
+ <thead>
4
+ <tr>
5
+ <th><%= t('attributes.user') %></th>
6
+ <th><%= t('attributes.authorizable_type') %></th>
7
+ <th><%= t('attributes.authorized_for') %></th>
8
+ <th><%= t('attributes.authorized_for_type') %></th>
9
+ </tr>
10
+ </thead>
11
+ <tbody>
12
+ <% authorities.valid(Date.today).each do |authority| %>
13
+ <%= content_tag_for(:tr, authority) do %>
14
+ <td><%= link_to authority.authorizable, polymorphic_path([wobauth, authority.authorizable]) %></td>
15
+ <td><%= authority.authorizable_type %></td>
16
+ <td><%= authorized_for_link(authority.authorized_for) %></td>
17
+ <td><%= authority.authorized_for_type %></td>
18
+ <% end %>
19
+ <% end %>
20
+ </tbody>
21
+ <% end %>
@@ -0,0 +1,26 @@
1
+ <h1><%= t('controller.wobauth/roles') %></h1>
2
+
3
+ <%= content_tag :table, id: :wobauth_roles, role: :wobauth_datatable,
4
+ class: "table table-bordered table-striped dataTable" do %>
5
+ <thead>
6
+ <tr>
7
+ <th><%= t('attributes.name') %></th>
8
+ <th><%= t('wobauth.action') %></th>
9
+ </tr>
10
+ </thead>
11
+ <tbody>
12
+
13
+ <% @roles.each do |role| %>
14
+ <%= content_tag_for(:tr, role) do %>
15
+ <td><%= role.name %></td>
16
+ <td class="nowrap">
17
+ <%= show_link [wobauth, role] %>
18
+ </td>
19
+ <% end %>
20
+ <% end %>
21
+ </tbody>
22
+ <% end %>
23
+
24
+ <br />
25
+
26
+ <%= back_link %>
@@ -0,0 +1,18 @@
1
+ <div class="card">
2
+ <div class="card-header">
3
+ <h4><%= t('attributes.role')%>: <%= @role.name %></h4>
4
+ </div>
5
+ <div class="card-body">
6
+ <h4 class="card-title"> <%= t('attributes.members')%> </h4>
7
+
8
+ <div id="role_authorities">
9
+ <%= render :partial => 'role_authorities',
10
+ :locals => {:authorities => @role.authorities} %>
11
+ </div>
12
+
13
+ <div role="toolbar">
14
+ <%= back_link %>
15
+ </div>
16
+ </div>
17
+ </div>
18
+
@@ -0,0 +1,25 @@
1
+ <ul class="navbar-nav float-right">
2
+ <li class="nav-item dropdown">
3
+ <a href="#" class="nav-link dropdown-toggle" role="button" id="accountNavDropdown" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
4
+ <% if user_signed_in? %>
5
+ Account
6
+ <% else %>
7
+ Login
8
+ <% end %>
9
+ </a>
10
+ <div class="dropdown-menu dropdown-menu-right" aria-labelledby="accountNavDropdown">
11
+ <% unless user_signed_in? %>
12
+ <% if Wobauth.remote_authentication? %>
13
+ <%= link_to "Single-Sign-On", wobauth.login_path, class: "dropdown-item" -%>
14
+ <% end %>
15
+ <%= link_to "Login-Formular", wobauth.new_user_session_path, class: "dropdown-item" -%>
16
+ <% else %>
17
+ <%= link_to "Ausloggen", wobauth.destroy_user_session_path, method: :delete, class: "dropdown-item" %>
18
+ <% if Wobauth::User.devise_modules.include?(:registerable) %>
19
+ <div class="dropdown-divider"></div>
20
+ <%= link_to "Mein Profil", wobauth.edit_user_registration_path, class: "dropdown-item" %>
21
+ <% end %>
22
+ <% end %>
23
+ </div>
24
+ </li>
25
+ </ul>
@@ -0,0 +1,13 @@
1
+ <% if Wobauth::AdminAbility.new(current_user).can? :navigate, Wobauth::User %>
2
+ <ul class="navbar-nav float-left">
3
+ <li class="nav-item dropdown <%= admin_active_class %>">
4
+ <a href="#" class="nav-link dropdown-toggle" role="button" id="adminNavDropdown" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
5
+ Admin</a>
6
+ <div class="dropdown-menu" aria-labelledby="adminNavDropdown">
7
+ <% ['users', 'groups', 'memberships', 'roles', 'authorities'].each do |ctrlr| %>
8
+ <%=link_to t('controller.wobauth/' + ctrlr), wobauth.send("#{ctrlr}_path"), class: "dropdown-item"%>
9
+ <% end %>
10
+ </div>
11
+ </li>
12
+ </ul>
13
+ <% end %>
@@ -0,0 +1,28 @@
1
+ <div class="container">
2
+ <%= simple_form_for([wobauth, @user],
3
+ html: { class: 'form-horizontal card' }
4
+ ) do |f| %>
5
+
6
+ <div class="card-header">
7
+ <%= form_legend %>
8
+ </div>
9
+
10
+ <div class="card-body">
11
+ <%= f.input :username %>
12
+ <%= f.input :sn %>
13
+ <%= f.input :givenname %>
14
+ <%= f.input :title %>
15
+ <%= f.input :displayname %>
16
+ <%= f.input :telephone %>
17
+ <%= f.input :email %>
18
+ <%= f.input :position %>
19
+ <%= f.input :department %>
20
+ <%= f.input :company %>
21
+ <%= f.input :password %>
22
+ <%= f.input :password_confirmation %>
23
+
24
+ <%= f.button :submit, class: 'btn btn-primary' %>
25
+ <%= cancel_button %>
26
+ </div>
27
+ <% end %>
28
+ </div>
@@ -0,0 +1,22 @@
1
+ <table class="table table-bordered table-sm autowidth">
2
+ <thead>
3
+ <tr>
4
+ <th><%= t('attributes.group') %> </th>
5
+ <th><%= t('attributes.auto') %> </th>
6
+ <th></th>
7
+ </tr>
8
+ </thead>
9
+ <tbody>
10
+ <% user.memberships.each do |membership| %>
11
+ <%= content_tag_for(:tr, membership) do %>
12
+ <td><%= link_to membership.group, wobauth.group_path(membership.group) %></td>
13
+
14
+ <td><%= membership.auto %></td>
15
+ <td class="nowrap">
16
+ <%= edit_link([wobauth, membership.user, membership]) %>
17
+ <%= delete_link([wobauth, membership.user, membership]) %>
18
+ </td>
19
+ <% end %>
20
+ <% end %>
21
+ </tbody>
22
+ </table>
@@ -0,0 +1,23 @@
1
+ <table class="table table-bordered table-sm autowidth">
2
+ <thead>
3
+ <tr>
4
+ <th><%= t('attributes.role') %></th>
5
+ <th><%= t('attributes.authorized_for') %></th>
6
+ <th><%= t('attributes.authorized_for_type') %></th>
7
+ <th></th>
8
+ </tr>
9
+ </thead>
10
+ <tbody>
11
+ <% user.authorities.each do |authority| %>
12
+ <%= content_tag_for(:tr, authority) do %>
13
+ <td><%= link_to authority.role, wobauth.role_path(authority.role) %></td>
14
+ <td><%= authorized_for_link(authority.authorized_for) %></td>
15
+ <td><%= authority.authorized_for_type %></td>
16
+ <td class="nowrap">
17
+ <%= edit_link([wobauth, authority.authorizable, authority], remote: false) %>
18
+ <%= delete_link([wobauth, authority.authorizable, authority], remote: false) %>
19
+ </td>
20
+ <% end %>
21
+ <% end %>
22
+ </tbody>
23
+ </table>
@@ -0,0 +1 @@
1
+ <%= render 'form' %>
@@ -0,0 +1,52 @@
1
+ <h1><%= t('controller.wobauth/users') %></h1>
2
+
3
+ <%= content_tag :table, id: :wobauth_users, role: :wobauth_datatable,
4
+ class: "table table-bordered table-striped dataTable" do %>
5
+ <thead>
6
+ <tr>
7
+ <th><%= t('attributes.name') %></th>
8
+ <th class="notvisible"><%= t('attributes.sn') %></th>
9
+ <th class="notvisible"><%= t('attributes.givenname') %></th>
10
+ <th class="notvisible"><%= t('attributes.title') %></th>
11
+ <th><%= t('attributes.username') %></th>
12
+ <th><%= t('attributes.telephone') %></th>
13
+ <th><%= t('attributes.email') %></th>
14
+ <th class="notvisible"><%= t('attributes.position') %></th>
15
+ <th class="notvisible"><%= t('attributes.department') %></th>
16
+ <th class="notvisible"><%= t('attributes.company') %></th>
17
+ <th><%= t('attributes.current_sign_in_at') %></th>
18
+ <th class="notvisible"><%= t('attributes.sign_in_count') %></th>
19
+ <th><%= t('wobauth.action')%></th>
20
+ </tr>
21
+ </thead>
22
+ <tbody>
23
+
24
+ <% @users.each do |user| %>
25
+ <%= content_tag_for(:tr, user) do %>
26
+ <td><%= user %></td>
27
+ <td><%= user.sn %></td>
28
+ <td><%= user.givenname %></td>
29
+ <td><%= user.title %></td>
30
+ <td><%= user.username %></td>
31
+ <td><%= user.telephone %></td>
32
+ <td><%= user.email %></td>
33
+ <td><%= user.position %></td>
34
+ <td><%= user.department %></td>
35
+ <td><%= user.company %></td>
36
+ <td><%= user.current_sign_in_at.try(:to_date) %></td>
37
+ <td><%= user.sign_in_count %></td>
38
+ <td class="nowrap">
39
+ <%= show_link [wobauth, user] %>
40
+ <%= edit_link [wobauth, user] %>
41
+ <%= delete_link [wobauth, user] %>
42
+ </td>
43
+ <% end %>
44
+ <% end %>
45
+ </tbody>
46
+ <% end %>
47
+
48
+ <br />
49
+
50
+ <%= back_link %>
51
+ <%= new_link [wobauth, Wobauth::User] %>
52
+ <%= link_to t('wobauth.new_user_from_ad'), wobauth.ad_users_path, class: 'btn btn-secondary' %>
@@ -0,0 +1 @@
1
+ <%= render 'form' %>
@@ -0,0 +1,130 @@
1
+ <div class="card">
2
+ <div class="card-header">
3
+ <h4><%= t('attributes.user') %>: <%= @user.username %></h4>
4
+ </div>
5
+ <div class="card-body">
6
+ <div class="row">
7
+ <div class="col-sm-6">
8
+ <table class="table table-bordered table-hover autowidth">
9
+ <tr>
10
+ <th><%= t('attributes.username')%>:</th>
11
+ <td><%= @user.username %></td>
12
+ </tr>
13
+ <tr>
14
+ <th><%= t('attributes.name')%>:</th>
15
+ <td><%= @user %></td>
16
+ </tr>
17
+ <tr>
18
+ <th><%= t('attributes.sn')%>:</th>
19
+ <td><%= @user.sn %></td>
20
+ </tr>
21
+ <tr>
22
+ <th><%= t('attributes.givenname')%>:</th>
23
+ <td><%= @user.givenname %></td>
24
+ </tr>
25
+ <tr>
26
+ <th><%= t('attributes.title')%>:</th>
27
+ <td><%= @user.title %></td>
28
+ </tr>
29
+ <tr>
30
+ <th><%= t('attributes.displayname')%>:</th>
31
+ <td><%= @user.displayname %></td>
32
+ </tr>
33
+ <tr>
34
+ <th><%= t('attributes.telephone')%>:</th>
35
+ <td><%= @user.telephone %></td>
36
+ </tr>
37
+ <tr>
38
+ <th><%= t('attributes.email')%>:</th>
39
+ <td><%= @user.email %></td>
40
+ </tr>
41
+ <tr>
42
+ <th><%= t('attributes.position')%>:</th>
43
+ <td><%= @user.position %></td>
44
+ </tr>
45
+ <tr>
46
+ <th><%= t('attributes.department')%>:</th>
47
+ <td><%= @user.department %></td>
48
+ </tr>
49
+ <tr>
50
+ <th><%= t('attributes.company')%>:</th>
51
+ <td><%= @user.company %></td>
52
+ </tr>
53
+ </table>
54
+ </div>
55
+ <div class="col-sm-6">
56
+ <table class="table table-bordered table-hover autowidth">
57
+ <tr>
58
+ <th><%= t('attributes.userprincipalname')%>:</th>
59
+ <td><%= @user.userprincipalname %></td>
60
+ </tr>
61
+ <tr>
62
+ <th><%= t('attributes.active_directory_guid')%>:</th>
63
+ <td><%= @user.active_directory_guid %></td>
64
+ </tr>
65
+ <tr>
66
+ <th><%= t('attributes.current_sign_in_at')%>:</th>
67
+ <td><%= @user.current_sign_in_at %></td>
68
+ </tr>
69
+ <tr>
70
+ <th><%= t('attributes.current_sign_in_ip')%>:</th>
71
+ <td><%= @user.current_sign_in_ip %></td>
72
+ </tr>
73
+ <tr>
74
+ <th><%= t('attributes.last_sign_in_at')%>:</th>
75
+ <td><%= @user.last_sign_in_at %></td>
76
+ </tr>
77
+ <tr>
78
+ <th><%= t('attributes.last_sign_in_ip')%>:</th>
79
+ <td><%= @user.last_sign_in_ip %></td>
80
+ </tr>
81
+ <tr>
82
+ <th><%= t('attributes.sign_in_count')%>:</th>
83
+ <td><%= @user.sign_in_count %></td>
84
+ </tr>
85
+ <tr>
86
+ <th><%= t('attributes.gruppen')%>:</th>
87
+ <td colspan="3"><%= @user.gruppen %></td>
88
+ </tr>
89
+ </table>
90
+ </div>
91
+ </div>
92
+ <div role="toolbar">
93
+ <%= back_link %>
94
+ <%= edit_link([wobauth, @user]) %>
95
+ <%= delete_link([wobauth, @user]) %>
96
+ <%= new_link [wobauth, Wobauth::User] %>
97
+ <%= link_to t('wobauth.new_user_from_ad'), wobauth.ad_users_path, class: 'btn btn-secondary' %>
98
+ </div>
99
+
100
+ </div>
101
+ </div>
102
+
103
+ <br/>
104
+
105
+ <div class="card">
106
+ <div class="card-header">
107
+ <h4><%= t('controller.wobauth/authorities') %></h4>
108
+ </div>
109
+ <div class="card-body">
110
+ <div id="user_roles">
111
+ <%= render partial: 'user_roles', locals: {user: @user} %>
112
+ </div>
113
+ <%= new_link([wobauth, @user, Wobauth::Authority]) %>
114
+ </div>
115
+ </div>
116
+
117
+ <br/>
118
+
119
+ <div class="card">
120
+ <div class="card-header">
121
+ <h4><%= t('controller.wobauth/groups') %></h4>
122
+ </div>
123
+ <div class="card-body">
124
+ <div id="user_groups">
125
+ <%= render partial: 'user_groups', locals: {user: @user} %>
126
+ </div>
127
+ <%= new_link([wobauth, @user, Wobauth::Membership]) %>
128
+ </div>
129
+ </div>
130
+
@@ -0,0 +1 @@
1
+ Rails.application.config.assets.paths << Rails.root.join('node_modules')