family_gallery 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (227) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/family_gallery/groups_controller.rb +45 -2
  3. data/app/controllers/family_gallery/user_roles_controller.rb +37 -0
  4. data/app/controllers/family_gallery/user_taggings_controller.rb +10 -9
  5. data/app/controllers/family_gallery/users_controller.rb +45 -3
  6. data/app/controllers/family_gallery/welcome_controller.rb +4 -1
  7. data/app/models/family_gallery/ability.rb +13 -2
  8. data/app/models/family_gallery/group.rb +2 -0
  9. data/app/models/family_gallery/picture.rb +2 -0
  10. data/app/models/family_gallery/user.rb +1 -0
  11. data/app/models/family_gallery/user_role.rb +6 -0
  12. data/app/views/family_gallery/user_roles/_form.html.haml +3 -0
  13. data/app/views/family_gallery/user_roles/new.html.haml +3 -0
  14. data/app/views/family_gallery/users/show.html.haml +21 -0
  15. data/config/initializers/awesome_translations.rb +1 -0
  16. data/config/initializers/simple_form.rb +166 -0
  17. data/config/locales/awesome_translations/app/helpers/family_gallery/da.yml +6 -0
  18. data/config/locales/awesome_translations/app/helpers/family_gallery/en.yml +6 -0
  19. data/config/locales/awesome_translations/app/models/family_gallery/da.yml +6 -0
  20. data/config/locales/awesome_translations/app/models/family_gallery/en.yml +6 -0
  21. data/config/locales/awesome_translations/app/views/family_gallery/user_roles/da.yml +6 -0
  22. data/config/locales/awesome_translations/app/views/family_gallery/user_roles/en.yml +6 -0
  23. data/config/locales/awesome_translations/models/family_gallery__user/da.yml +7 -0
  24. data/config/locales/awesome_translations/models/family_gallery__user/en.yml +7 -0
  25. data/config/locales/simple_form.en.yml +31 -0
  26. data/config/routes.rb +4 -2
  27. data/db/plugin_migrate/20150508081950_add_user_owner_to_groups.rb +6 -0
  28. data/lib/family_gallery/version.rb +1 -1
  29. data/lib/templates/erb/scaffold/_form.html.erb +13 -0
  30. data/spec/controllers/family_gallery/groups_controller_spec.rb +66 -0
  31. data/spec/controllers/family_gallery/locales_controller_spec.rb +15 -0
  32. data/spec/controllers/family_gallery/pictures_controller_spec.rb +4 -2
  33. data/spec/controllers/family_gallery/user_roles_controller_spec.rb +37 -0
  34. data/spec/controllers/family_gallery/user_taggings_controller_spec.rb +44 -0
  35. data/spec/controllers/family_gallery/users_controller_spec.rb +67 -0
  36. data/spec/dummy/config/environments/production.rb +1 -1
  37. data/spec/dummy/config/environments/test.rb +1 -1
  38. data/spec/dummy/db/schema.rb +54 -51
  39. data/spec/dummy/log/development.log +4782 -0
  40. data/spec/dummy/log/test.log +5331 -0
  41. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/-hQRdqWQu73Yx5QiUxfYRURbqzfHDb1PE6qGmeEO9kY.cache +0 -0
  42. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/2zwTWOD1Dd_S-opzh-CmX1_fydfXvWEza9KYHrWKYkY.cache +1 -0
  43. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/3W4YnmQhJyZGtT03ZCAp5cvpoDIVzhYE-OOySbjsapM.cache +37 -0
  44. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/4H6NKxG2YddskIdf_03222wZ8kphBNjvYK6iXCB11eI.cache +1 -0
  45. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/54QJf7-lnbywCPYciET5Fdy74m4XmFU7NNcaYKrgi8Y.cache +2 -0
  46. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/7Eve6bsJd_sw7qXnaCbTujcr-UwqfYSnlDcoTl9mGu0.cache +1 -0
  47. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/7JObOpcGWt5r5Ea568fgV01Ed3fjuBlBITVPvrc8oIs.cache +0 -0
  48. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/8yJQ_Ka1A9O1RTb9-nVPpwwHeMGjnwG0pgczu_lMbk0.cache +1 -0
  49. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/9FNXvWqcBTSfSon_2U8pCSk_JDdYk6l6uAiLQXVvrCM.cache +0 -0
  50. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/9PbYLPdCxP_oX_b-QxCkVET4lbO7nF2KPia6rAfr3Ts.cache +1 -0
  51. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/AcloL6yHnBX7CKq3FN9W6CAIc9bHnT5cYYbT9pmLsxw.cache +2 -0
  52. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Ase2RYqrsQ0kXoNr1E1j2MEwz-TskbvO9IOLrEgZSL0.cache +0 -0
  53. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/BBI1gtQkrJmBf3CJ-374M44oGqVpJHgf22Rbwa_u2zg.cache +0 -0
  54. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/B_SJ67b35_bVz7ZAZfC8f7lafyhPAd-_5mqoriIyYYk.cache +2 -0
  55. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/BtXkANDk3VSuFwpmHdQbfnKVEqGoVGHkHV_4rFXYp6Q.cache +1 -0
  56. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/CBLZYr6WegdsXk9rst09TEqFulLRRVv34rZyBxwK8aI.cache +0 -0
  57. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Dq1_xO_MW2UacskEcnWB7fRcbOy68mH1nPQwIi8wYBo.cache +0 -0
  58. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/EQEMGT66vIudsh79XT-x8PVBoh4owB2NYGtn4OJRzww.cache +1 -0
  59. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/EwXlChRQzpcU12HptCvsJR_EfQioGzc6m7AnDAVMwPI.cache +0 -0
  60. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/GLtDgVmTUMo6-chqHh1ySimmdEtd9dsA0nhuoY7bzxY.cache +2 -0
  61. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/G_pGbb7858rh3p9R7pozCPHO0hKAqZASWy8H8bLJ6_4.cache +0 -0
  62. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/J8AwnZgVdY_2YOa6ENN4l8hZtj6LK_NDVaeWe9DhPgM.cache +0 -0
  63. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Kf-DnPjkjmvu-fT_zByJLtBpzTslzCno2S31xS8xV0g.cache +1 -0
  64. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Ko8Vzjv9GJnw996cHHcXEr71e9YvRqt6SwjCRRt3tgg.cache +0 -0
  65. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/KvmmgF4_oMLrlbbYNHZEQ58AT-cMOMxXUkQYXomKtHY.cache +0 -0
  66. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/MFut7RR3tu2hiErVmmSYINrcGr40XnFrPQ5TxyAEeM0.cache +0 -0
  67. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/MsSVIHis1abvfaf6VRc8sVwl9OIOuOnSPTLApLb1szQ.cache +26 -0
  68. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/My-O9yZmyHinYEYM0x0LZggXiR3okwyuADQDtiuyp9A.cache +1 -0
  69. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/NMmnYWHpTEJfb2Co4fFWb-ckZ8Q13pXTVZq-h1ai3ks.cache +0 -0
  70. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/OG-AzAgty2btZCvNBFwbES6B4QL6nWh3Jj_jIKb8P7c.cache +1 -0
  71. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ORv1F5nTty3sUqjSYnf4rZpPb_R86-ee0sjOFDp0rVE.cache +0 -0
  72. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/OjsENZSpPllinbzGj3Ep0ciCD7jYal5drMCf1BeHkaQ.cache +2 -0
  73. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/QQlNrhy9Js3uB_rSo_PlVeBQbGfXUfAJepRTHUgJdEI.cache +0 -0
  74. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/SOx2q96as0kzSLQxGFUw5apPSemYDlx6kZ6Bs_xBIQw.cache +2 -0
  75. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/TNRu3lXH9ajazn-ls77N6agT2-YAPrBRiUeM2eByrU0.cache +2 -0
  76. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/TOOITiJ4HpxXtGMd7d399TlIsjwVtcI7RcJa3uY4VHY.cache +0 -0
  77. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/TU2SJ0iFXlj_Xc78W3sY-yoMxI0LI2FkYy8-xGHirw4.cache +1 -0
  78. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/UF-PSA6IsTb86RU5b7B2UeqC63P_RirW16IGiJJfE1w.cache +1 -0
  79. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/VX22nz7EPkkv-lqD4LJ7UCrdCiVmdmIcMQ1UEvrApLc.cache +2 -0
  80. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Vure74VwhZbVg6HZlMPfBhCn9jtjfbuvxBi1ErljXVA.cache +2 -0
  81. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/W3xFppatT78R8Zaa-xYuePzMl1UEU3yzQrLrtTH3OYI.cache +0 -0
  82. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/W6GEe6xsjragJiA0CEQ8UvPvUf2ASDSDKIC340AldG0.cache +0 -0
  83. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/YpzbVFSK9wVVcwaTtVrZmBykb1LcCINHumet4i4u8_Y.cache +1 -0
  84. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ZCJHSey2jfX1Bg7QPxIrER6wYPCOd6XmH2q4-z5wL04.cache +0 -0
  85. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ZbZyURMpvUSF3E_nWseuxqin9q83ShHXU-kLUiybEmE.cache +0 -0
  86. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ZljYtWTUhhzX0dWYStfd5ZGu0TuyUQ3UrEcnPc7kenA.cache +0 -0
  87. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/_C8HSdR8bq6ow17yYRN0JX92DxWP-gU_RL0sZ_rSzlM.cache +0 -0
  88. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/_NTZYWaLn69VxNc3bKjyFMslFp96byaJnki87xlv_fc.cache +0 -0
  89. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/bBq28xeM5j70IrH9IunvD6S7CbTX_OSTXO_Z-wEw2zs.cache +0 -0
  90. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/baMRNj958ooabY74Hut8zDMSZ9Etyt7HJAgZQgPGMok.cache +1 -0
  91. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/cS9J4Z827SAl4OWYrgmzMgbCoUX64UkTICkg87HG1wA.cache +0 -0
  92. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/cTW4ExxiKScaif6-lb5OdnXFLxfpdV50HU5f0uvA7no.cache +0 -0
  93. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/dD-Q0iRHARSIzldbElnIgjIEn9xppxvLEctUCH0tg8w.cache +0 -0
  94. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/dh9_a9U18qiWcpV9Yx5NCcKmQr9ETgMYFOgLpO5aYkA.cache +1 -0
  95. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/dicwROVZEbu8y5AblmyAg91xUuMd8uGqrGtHoMJeKF8.cache +1 -0
  96. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/drwR3Ciba2VyB0azQjYLHqtmeSF11AIXVdVU13iZyLg.cache +1 -0
  97. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/eL2knZFREuZ8m_nhxo0k3BWljEPTM43lNR5VaRtolsM.cache +1 -0
  98. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/eoHlDmKTK2irlNAuaoEg11qxGfuidvkji-TMujr9DsY.cache +2 -0
  99. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/fH8aZNt8wQxn-ML4khOtvGN0jdBY0Zwq6NHO2T7Jhj0.cache +1 -0
  100. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/fXiMZGL7KjUDKrGoIw2ah2fK0cKXnzIZE17bqHO-uac.cache +1 -0
  101. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/fc0Fzd6YwzG62dl0uZLr_o7yWjW8lz-Aa_m1AlMIxLQ.cache +45 -0
  102. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/g0qJ9gwsvbCGjQHUq3AgBJ2zicAc7YFi4aPC8jiFpYI.cache +2 -0
  103. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/g8QlMs9PpeN8NF_NkRcyG1K4qFOxte6oaKZaaGliGxw.cache +2 -0
  104. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/jVsCHPCK3sdvZh1IA8ZNhj0XJPOBXIAUKs-ZEBZt2jk.cache +0 -0
  105. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/lAlebtP1k8gDXgNbPi7_3ZmqA-aBulsdkOEryRLGRcY.cache +1 -0
  106. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/m8-_FKUhLMujJ8SusNRRRiVhzFlY02drWKvwyRf9Zd4.cache +1 -0
  107. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/n8l3H2IJdBWMcK_tP7hCsHJTQ5zeaDM9aLHnX2CY37Y.cache +3 -0
  108. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/npFyVNaDh-swtdSqW3TF9WxhreMiWzyqO-pr35xPlmQ.cache +1 -0
  109. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/oPkhqvTlfd3dKFMLM1JSr6dn3KnDz9oMXeqHbmARFYo.cache +1 -0
  110. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/pfvA3haPAtjQJR6gnDGyG8zqThtKf3yjVh1GCCKwcpI.cache +0 -0
  111. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/qr9tsE4lpH7uQc6gCmw8CvFxL5QDGoRtvkv0NumsIoo.cache +5 -0
  112. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/rXlNxo1eiSuqmgQUpJIAZAaOS-3gJyofOT7NGJbqZrQ.cache +0 -0
  113. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/v9OMdsq-LrIbQoFnehOd7lTlPJRxc8P7PZ5sB1tKZ2o.cache +1 -0
  114. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/vM_7L82P-HS_agBk__BgmO0syvueAfJl0UldzluSSjQ.cache +1 -0
  115. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/w4tfk-hbGJoNzF8IVntgCOnn0yb6jaiWxG-qXa4bwcs.cache +2 -0
  116. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/x9dMYbokRbywIRg4eEe7FMEHoXPjRw6sUMfWMe_7CzQ.cache +0 -0
  117. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/zqU8o81RQqTBxt1IOXvBVyjQkBmsQwzd0s8NnIlJAVs.cache +0 -0
  118. data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ztAFgiR1-7wXLVWKs4XywPFWo2N4-l7_nuzdlkIj9RE.cache +2 -0
  119. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/-o-IBBprz9s9-rltAzVB8x4_8eEJigbRLsCNmSV_ICc.cache +0 -0
  120. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/0V0ghK3-AtDSzJgSQq-Cg4-weW2qpmwvQcMSmwh37BI.cache +1 -0
  121. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/0gNNYwnIBPipphH48SD4erjXNmtSmQrNLJLzNuz_c-8.cache +1 -0
  122. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/2H8RKUJBcpFiSBqqIOefhvJUZoDvuzxSuFaQK0eqDuo.cache +0 -0
  123. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/2zwTWOD1Dd_S-opzh-CmX1_fydfXvWEza9KYHrWKYkY.cache +1 -0
  124. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/3V-sWIRvP4Jhx_mZgxLdbm7IrLyYMgYGQFZvGPbLpb0.cache +0 -0
  125. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/3W4YnmQhJyZGtT03ZCAp5cvpoDIVzhYE-OOySbjsapM.cache +37 -0
  126. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/4SDTbACzKhs32SEozlKqqDPDCYFHjrXH7XidUEhpADU.cache +1 -0
  127. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/54QJf7-lnbywCPYciET5Fdy74m4XmFU7NNcaYKrgi8Y.cache +2 -0
  128. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/5TXJKaIpZrRB9xZpCd9rw9CtGNsQERwqU5Cjqitlv4M.cache +1 -0
  129. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/6B0nQ_UnJFE8dQWvYa5J8A7cFhs0El892lwXpyu5JtA.cache +1 -0
  130. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/6a3IhoRAUZxuBEGS8p-LpE_Tgy9EZFuO-A3HzXn52W4.cache +0 -0
  131. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/BBI1gtQkrJmBf3CJ-374M44oGqVpJHgf22Rbwa_u2zg.cache +0 -0
  132. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/B_SJ67b35_bVz7ZAZfC8f7lafyhPAd-_5mqoriIyYYk.cache +2 -0
  133. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Bryuiq6fZ0wSJCC57NMEljLXg8w0lnLjNEB9DHzCpkw.cache +1 -0
  134. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/C-Eod-J3fOVMmGIX3SV9_n7vC8BLXTEOvjC2NwBt-2Y.cache +0 -0
  135. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/ICwMeYygy6CCub8BAXuJLfFwJg61Bmbr_PhNt4Vhq4c.cache +1 -0
  136. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/IQmjCFKTbPheFk6_xCBLo7sHocNTZ6VpeBYaLgdM71I.cache +1 -0
  137. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Kf-DnPjkjmvu-fT_zByJLtBpzTslzCno2S31xS8xV0g.cache +1 -0
  138. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/KvmmgF4_oMLrlbbYNHZEQ58AT-cMOMxXUkQYXomKtHY.cache +0 -0
  139. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/MFut7RR3tu2hiErVmmSYINrcGr40XnFrPQ5TxyAEeM0.cache +0 -0
  140. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/MsSVIHis1abvfaf6VRc8sVwl9OIOuOnSPTLApLb1szQ.cache +26 -0
  141. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/N-zHZ8WVdRA65wR3RT57sS2pd-3HNf59WzBMKlbDNug.cache +0 -0
  142. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/OjsENZSpPllinbzGj3Ep0ciCD7jYal5drMCf1BeHkaQ.cache +2 -0
  143. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Q2nSqmt6DcH0h0tAffSjuA1wlKvccSAaEdT_rIJHlsc.cache +1 -0
  144. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/QvrStR3i1j8aHfZ3cSjbDz2PE8OhmBEqktkMxwbQuPg.cache +1 -0
  145. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/S796FHnthmUABzGZql4bA881lNmrpmiC8puwvsbq2nY.cache +0 -0
  146. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/SOx2q96as0kzSLQxGFUw5apPSemYDlx6kZ6Bs_xBIQw.cache +2 -0
  147. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/TNRu3lXH9ajazn-ls77N6agT2-YAPrBRiUeM2eByrU0.cache +2 -0
  148. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/TrGv38AbovT3ejol2umzRXa7pBCb3L3MN5LzvFhLQbA.cache +0 -0
  149. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/UKqisVY2cbaNVWO4s-3u4yzbL-lpph6xDQShrHSFXXw.cache +1 -0
  150. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/UmMN-oZ3n5-tmrbvpDo4OPssqaav4JxuDHI9Ma3dXGg.cache +1 -0
  151. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Vure74VwhZbVg6HZlMPfBhCn9jtjfbuvxBi1ErljXVA.cache +2 -0
  152. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/W3xFppatT78R8Zaa-xYuePzMl1UEU3yzQrLrtTH3OYI.cache +0 -0
  153. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/XE01v4f5NaneQq7m1FmPZ4-f-2fcVC1YObXCUZI0CTw.cache +1 -0
  154. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/XVZlTX7hPc5gOvs9gdeowS_dzpOesUJtObI0WFHUOb0.cache +1 -0
  155. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/ZXUtiQ0v8meOIeOKfyljADVLHRZSKKVlIy17kRlz-nA.cache +0 -0
  156. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/_C8HSdR8bq6ow17yYRN0JX92DxWP-gU_RL0sZ_rSzlM.cache +0 -0
  157. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/_GMY0JbsxLMYoWZ5mM8-mQ0ONkhDlunESsaE1tjrSYE.cache +1 -0
  158. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/a0uziDegoB2On6BnaTdY4zR9zeaEhLgl6BHYbauraUw.cache +1 -0
  159. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/ae-GcGxfVPz3K8pp-PjOcjhfC0vj3h7dTFTbHKTPCAY.cache +1 -0
  160. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/bBq28xeM5j70IrH9IunvD6S7CbTX_OSTXO_Z-wEw2zs.cache +0 -0
  161. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/csuqsRmDEoL5pkcikg3MXOdNP2jIgU92QsZOoh8-c0A.cache +0 -0
  162. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/eLcf86K3dtFSrWmxBIGS1XWQlu2aNqPazPge666S-Zo.cache +0 -0
  163. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/eoHlDmKTK2irlNAuaoEg11qxGfuidvkji-TMujr9DsY.cache +2 -0
  164. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/fDTCOONxq_Wdd1UC96tYHpj7FVlkKuExKJ8tEeU8O1c.cache +1 -0
  165. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/fH8aZNt8wQxn-ML4khOtvGN0jdBY0Zwq6NHO2T7Jhj0.cache +1 -0
  166. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/fc0Fzd6YwzG62dl0uZLr_o7yWjW8lz-Aa_m1AlMIxLQ.cache +45 -0
  167. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/g8QlMs9PpeN8NF_NkRcyG1K4qFOxte6oaKZaaGliGxw.cache +2 -0
  168. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/hM2mSsXSJDikxih_B1ryBFqOipzMhIbzzqRSgoajQv8.cache +0 -0
  169. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/iIpEhB7lFqYkQqVzA9J2-70FD-nDFz4TJvixuhe8YVs.cache +0 -0
  170. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/jVsCHPCK3sdvZh1IA8ZNhj0XJPOBXIAUKs-ZEBZt2jk.cache +0 -0
  171. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/mJPnjmwHqHROmjB73eWZty-B_WGDwqdTDE1s_9dft1w.cache +0 -0
  172. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/pfvA3haPAtjQJR6gnDGyG8zqThtKf3yjVh1GCCKwcpI.cache +0 -0
  173. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/qr9tsE4lpH7uQc6gCmw8CvFxL5QDGoRtvkv0NumsIoo.cache +5 -0
  174. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/r0vYJM-ejKpqxQteBU68lNDsqCUY8Y74hKFoGkm4WDU.cache +0 -0
  175. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/rHavE4tc78fwZ4E6YUrSU57H9t5igG1-wnAMdC5PWME.cache +1 -0
  176. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/sL-_5CFM1pqMT0tt4y1SyOmqeV2z8DJpx3CQjy70qeA.cache +0 -0
  177. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/u62VxZ2Y0rf8c9BBVkhsGtW2Cpp1jK1pS_qY3QU1g2Y.cache +1 -0
  178. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/vZaXpBsrCMK78DgtKca-V52yNTnWkBCe1U1hr5LwAZU.cache +0 -0
  179. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/vpMpCPPCHQI_3WErM74srB3yXTzmB6mnASbcEQQ8jjg.cache +1 -0
  180. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/vuTB6kAIoYc9IY1cCEWib408r-K1vB6jZdGMZRtxt_4.cache +1 -0
  181. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/x9dMYbokRbywIRg4eEe7FMEHoXPjRw6sUMfWMe_7CzQ.cache +0 -0
  182. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/yXkkzllTvHiAlfGsCGQ8eM0m8QtaMZRrXxkJkPy2ix8.cache +2 -0
  183. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/z4aTRFQJAcuQT4eIC5Z_O7nMznrMajgLSaE-KuGe3uU.cache +1 -0
  184. data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/ztAFgiR1-7wXLVWKs4XywPFWo2N4-l7_nuzdlkIj9RE.cache +2 -0
  185. data/spec/dummy/tmp/pids/server.pid +1 -0
  186. data/spec/factories/family_gallery/user_role.rb +7 -0
  187. data/spec/factories/family_gallery/user_tagging.rb +10 -0
  188. data/spec/models/family_gallery/picture_spec.rb +2 -2
  189. data/spec/test_files/0/family_gallery/pictures/000/000/001/original.jpg +0 -0
  190. data/spec/test_files/0/family_gallery/pictures/000/000/002/original.jpg +0 -0
  191. data/spec/test_files/0/family_gallery/pictures/000/000/003/original.jpg +0 -0
  192. data/spec/test_files/0/family_gallery/pictures/000/000/004/original.jpg +0 -0
  193. data/spec/test_files/0/family_gallery/pictures/000/000/005/original.jpg +0 -0
  194. data/spec/test_files/0/family_gallery/pictures/000/000/006/original.jpg +0 -0
  195. data/spec/test_files/0/family_gallery/pictures/000/000/007/original.jpg +0 -0
  196. data/spec/test_files/0/family_gallery/pictures/000/000/008/original.jpg +0 -0
  197. data/spec/test_files/0/family_gallery/pictures/000/000/009/original.jpg +0 -0
  198. data/spec/test_files/0/family_gallery/pictures/000/000/010/original.jpg +0 -0
  199. data/spec/test_files/0/family_gallery/pictures/000/000/011/original.jpg +0 -0
  200. data/spec/test_files/0/family_gallery/pictures/000/000/012/original.jpg +0 -0
  201. data/spec/test_files/0/family_gallery/pictures/000/000/013/original.jpg +0 -0
  202. data/spec/test_files/0/family_gallery/pictures/000/000/014/original.jpg +0 -0
  203. data/spec/test_files/0/family_gallery/pictures/000/000/015/original.jpg +0 -0
  204. data/spec/test_files/0/family_gallery/pictures/000/000/016/original.jpg +0 -0
  205. data/spec/test_files/0/family_gallery/pictures/000/000/017/original.jpg +0 -0
  206. data/spec/test_files/0/family_gallery/pictures/000/000/018/original.jpg +0 -0
  207. data/spec/test_files/0/family_gallery/pictures/000/000/019/original.jpg +0 -0
  208. data/spec/test_files/0/family_gallery/pictures/000/000/020/original.jpg +0 -0
  209. data/spec/test_files/0/family_gallery/pictures/000/000/021/original.jpg +0 -0
  210. data/spec/test_files/0/family_gallery/pictures/000/000/022/original.jpg +0 -0
  211. data/spec/test_files/0/family_gallery/pictures/000/000/023/original.jpg +0 -0
  212. data/spec/test_files/0/family_gallery/pictures/000/000/024/original.jpg +0 -0
  213. data/spec/test_files/0/family_gallery/pictures/000/000/025/original.jpg +0 -0
  214. data/spec/test_files/0/family_gallery/pictures/000/000/026/original.jpg +0 -0
  215. data/spec/test_files/0/family_gallery/pictures/000/000/027/original.jpg +0 -0
  216. data/spec/test_files/0/family_gallery/pictures/000/000/028/original.jpg +0 -0
  217. data/spec/test_files/0/family_gallery/pictures/000/000/029/original.jpg +0 -0
  218. data/spec/test_files/0/family_gallery/pictures/000/000/030/original.jpg +0 -0
  219. data/spec/test_files/0/family_gallery/pictures/000/000/031/original.jpg +0 -0
  220. data/spec/test_files/0/family_gallery/pictures/000/000/032/original.jpg +0 -0
  221. data/spec/test_files/0/family_gallery/pictures/000/000/033/original.jpg +0 -0
  222. data/spec/test_files/0/family_gallery/pictures/000/000/034/original.jpg +0 -0
  223. data/spec/test_files/0/family_gallery/pictures/000/000/035/original.jpg +0 -0
  224. data/spec/test_files/0/family_gallery/pictures/000/000/036/original.jpg +0 -0
  225. data/spec/test_files/0/family_gallery/pictures/000/000/037/original.jpg +0 -0
  226. data/spec/test_files/0/family_gallery/pictures/000/000/038/original.jpg +0 -0
  227. metadata +412 -12
@@ -0,0 +1,6 @@
1
+ ---
2
+ da:
3
+ helpers:
4
+ family_gallery:
5
+ users_helper:
6
+ no_user: ingen bruger
@@ -0,0 +1,6 @@
1
+ ---
2
+ en:
3
+ helpers:
4
+ family_gallery:
5
+ users_helper:
6
+ no_user: no user
@@ -0,0 +1,6 @@
1
+ ---
2
+ da:
3
+ models:
4
+ family_gallery:
5
+ user_role:
6
+ administrator: Administrator
@@ -0,0 +1,6 @@
1
+ ---
2
+ en:
3
+ models:
4
+ family_gallery:
5
+ user_role:
6
+ administrator: Administrator
@@ -0,0 +1,6 @@
1
+ ---
2
+ da:
3
+ family_gallery:
4
+ user_roles:
5
+ new:
6
+ new_user_role_for: New brugerrolle for %{user_name}
@@ -0,0 +1,6 @@
1
+ ---
2
+ en:
3
+ family_gallery:
4
+ user_roles:
5
+ new:
6
+ new_user_role_for: New user role for %{user_name}
@@ -16,3 +16,10 @@ da:
16
16
  pictures_tagged_on: Tagget på billeder
17
17
  user_roles: Brugerroller
18
18
  uploaded_pictures: Uploadede billeder
19
+ id: ID
20
+ owned_groups: Ejede grupper
21
+ user_taggings: Brugertags
22
+ user_taggings_created: Oprettede brugertags
23
+ confirmed_at: Bekræftet d.
24
+ confirmation_sent_at: Bekræftelsesmail sendt d.
25
+ locked_at: Låst d.
@@ -16,3 +16,10 @@ en:
16
16
  pictures_tagged_on: Tagged on pictures
17
17
  user_roles: User roles
18
18
  uploaded_pictures: Uploaded pictures
19
+ id: ID
20
+ owned_groups: Owned groups
21
+ user_taggings: User taggings
22
+ user_taggings_created: Created user taggings
23
+ confirmed_at: Confirmed at
24
+ confirmation_sent_at: Confirmation mail sent at
25
+ locked_at: Locked at
@@ -0,0 +1,31 @@
1
+ en:
2
+ simple_form:
3
+ "yes": 'Yes'
4
+ "no": 'No'
5
+ required:
6
+ text: 'required'
7
+ mark: '*'
8
+ # You can uncomment the line below if you need to overwrite the whole required html.
9
+ # When using html, text and mark won't be used.
10
+ # html: '<abbr title="required">*</abbr>'
11
+ error_notification:
12
+ default_message: "Please review the problems below:"
13
+ # Examples
14
+ # labels:
15
+ # defaults:
16
+ # password: 'Password'
17
+ # user:
18
+ # new:
19
+ # email: 'E-mail to sign in.'
20
+ # edit:
21
+ # email: 'E-mail.'
22
+ # hints:
23
+ # defaults:
24
+ # username: 'User name to sign in.'
25
+ # password: 'No special characters, please.'
26
+ # include_blanks:
27
+ # defaults:
28
+ # age: 'Rather not say'
29
+ # prompts:
30
+ # defaults:
31
+ # age: 'Select your age'
data/config/routes.rb CHANGED
@@ -12,10 +12,12 @@ FamilyGallery::Engine.routes.draw do
12
12
  resources :locales, only: :create
13
13
 
14
14
  resources :pictures do
15
- resources :user_taggings
15
+ resources :user_taggings, only: [:new, :create, :destroy]
16
16
  end
17
17
 
18
- resources :users
18
+ resources :users do
19
+ resources :user_roles, only: [:new, :create, :destroy]
20
+ end
19
21
 
20
22
  root "welcome#index"
21
23
  end
@@ -0,0 +1,6 @@
1
+ class AddUserOwnerToGroups < ActiveRecord::Migration
2
+ def change
3
+ add_column :family_gallery_groups, :user_owner_id, :integer, after: :id
4
+ add_index :family_gallery_groups, :user_owner_id
5
+ end
6
+ end
@@ -1,3 +1,3 @@
1
1
  module FamilyGallery
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
@@ -0,0 +1,13 @@
1
+ <%%= simple_form_for(@<%= singular_table_name %>) do |f| %>
2
+ <%%= f.error_notification %>
3
+
4
+ <div class="form-inputs">
5
+ <%- attributes.each do |attribute| -%>
6
+ <%%= f.<%= attribute.reference? ? :association : :input %> :<%= attribute.name %> %>
7
+ <%- end -%>
8
+ </div>
9
+
10
+ <div class="form-actions">
11
+ <%%= f.button :submit %>
12
+ </div>
13
+ <%% end %>
@@ -0,0 +1,66 @@
1
+ require 'spec_helper'
2
+
3
+ describe FamilyGallery::GroupsController do
4
+ let(:group) { create :group, user_owner: user }
5
+ let(:user) { create :user }
6
+ let(:valid_params) do
7
+ {
8
+ name: Forgery::LoremIpsum.words(2)
9
+ }
10
+ end
11
+
12
+ render_views
13
+
14
+ routes { FamilyGallery::Engine.routes }
15
+
16
+ before do
17
+ sign_in user
18
+ end
19
+
20
+ it '#index' do
21
+ group
22
+ get :index
23
+ expect(assigns(:groups)).to eq [group]
24
+ end
25
+
26
+ it '#show' do
27
+ get :show, id: group.id
28
+ expect(response).to be_success
29
+ end
30
+
31
+ it '#new' do
32
+ get :new
33
+ expect(response).to be_success
34
+ end
35
+
36
+ it '#create' do
37
+ post :create, group: valid_params
38
+
39
+ created_group = assigns(:group)
40
+ expect(created_group).to be_valid
41
+
42
+ expect(response).to redirect_to created_group
43
+ end
44
+
45
+ it '#edit' do
46
+ get :edit, id: group.id
47
+ expect(response).to be_success
48
+ end
49
+
50
+ it '#update' do
51
+ put :update, id: group.id, group: valid_params
52
+
53
+ updated_group = assigns(:group)
54
+ expect(updated_group).to be_valid
55
+
56
+ expect(response).to redirect_to updated_group
57
+ end
58
+
59
+ it '#destroy' do
60
+ delete :destroy, id: group.id
61
+
62
+ expect { group.reload }.to raise_error(ActiveRecord::RecordNotFound)
63
+
64
+ expect(response).to redirect_to groups_url
65
+ end
66
+ end
@@ -0,0 +1,15 @@
1
+ require 'spec_helper'
2
+
3
+ describe FamilyGallery::LocalesController do
4
+ render_views
5
+
6
+ routes { FamilyGallery::Engine.routes }
7
+
8
+ it '#create' do
9
+ post :create, locale: "da"
10
+
11
+ expect(I18n.locale).to eq :da
12
+
13
+ expect(response.body.to_s).to eq JSON.dump(success: true)
14
+ end
15
+ end
@@ -1,15 +1,17 @@
1
- require "spec_helper"
1
+ require 'spec_helper'
2
2
 
3
3
  describe FamilyGallery::PicturesController do
4
4
  let(:group) { create :group }
5
5
  let(:admin) { create :admin }
6
6
 
7
+ routes { FamilyGallery::Engine.routes }
8
+
7
9
  before do
8
10
  sign_in admin
9
11
  end
10
12
 
11
13
  it "#create" do
12
- post :create, use_route: :family_gallery, picture: {title: "Test title", description: "Test test", image: fixture_file_upload("#{Rails.root}/../../spec/test_pictures/sigrid.jpg", "image/jpeg")}, group_id: group.id
14
+ post :create, picture: {title: "Test title", description: "Test test", image: fixture_file_upload(Rails.root.join('..', '..', 'spec', 'test_pictures', 'sigrid.jpg'), "image/jpeg")}, group_id: group.id
13
15
  last_picture = assigns(:picture)
14
16
  last_picture.errors.to_a.should eq []
15
17
  response.should redirect_to last_picture
@@ -0,0 +1,37 @@
1
+ require 'spec_helper'
2
+
3
+ describe FamilyGallery::UserRolesController do
4
+ let(:admin) { create :admin }
5
+ let(:user) { create :user }
6
+ let(:user_role) { create :user_role, user: user }
7
+ let(:valid_params) do
8
+ {
9
+ role: 'administrator'
10
+ }
11
+ end
12
+
13
+ routes { FamilyGallery::Engine.routes }
14
+
15
+ render_views
16
+
17
+ before do
18
+ sign_in admin
19
+ end
20
+
21
+ it '#new' do
22
+ get :new, user_id: user.id
23
+ expect(response).to be_success
24
+ end
25
+
26
+ it '#create' do
27
+ post :create, user_id: user.id, user_role: valid_params
28
+ expect(response).to redirect_to user_url(user)
29
+ end
30
+
31
+ it '#destroy' do
32
+ delete :destroy, user_id: user.id, id: user_role.id
33
+
34
+ expect { user_role.reload }.to raise_error(ActiveRecord::RecordNotFound)
35
+ expect(response).to redirect_to user_url(user)
36
+ end
37
+ end
@@ -0,0 +1,44 @@
1
+ require 'spec_helper'
2
+
3
+ describe FamilyGallery::UserTaggingsController do
4
+ let(:user) { create :user }
5
+ let(:picture) { create :picture, user_owner: user }
6
+ let(:user_tagging) { create :user_tagging, picture: picture, user: user }
7
+ let(:valid_params) do
8
+ {
9
+ user_id: user.id,
10
+ position_top: 10,
11
+ position_left: 15
12
+ }
13
+ end
14
+
15
+ render_views
16
+
17
+ routes { FamilyGallery::Engine.routes }
18
+
19
+ before do
20
+ sign_in user
21
+ end
22
+
23
+ it '#new' do
24
+ get :new, picture_id: picture.id
25
+ expect(response).to be_success
26
+ end
27
+
28
+ it '#create' do
29
+ post :create, picture_id: picture.id, user_tagging: valid_params
30
+
31
+ created_tagging = assigns(:user_tagging)
32
+ expect(created_tagging).to be_valid
33
+
34
+ expect(response).to redirect_to picture
35
+ end
36
+
37
+ it '#destroy' do
38
+ delete :destroy, picture_id: picture.id, id: user_tagging.id
39
+
40
+ expect { user_tagging.reload }.to raise_error(ActiveRecord::RecordNotFound)
41
+
42
+ expect(response).to redirect_to picture
43
+ end
44
+ end
@@ -0,0 +1,67 @@
1
+ require 'spec_helper'
2
+
3
+ describe FamilyGallery::UsersController do
4
+ let(:admin) { create :admin }
5
+ let(:user) { create :user }
6
+ let(:valid_params) do
7
+ {
8
+ first_name: Forgery::Name.first_name,
9
+ last_name: Forgery::Name.last_name,
10
+ email: Forgery::Internet.email_address
11
+ }
12
+ end
13
+
14
+ routes { FamilyGallery::Engine.routes }
15
+
16
+ render_views
17
+
18
+ before do
19
+ sign_in admin
20
+ end
21
+
22
+ it '#index' do
23
+ get :index
24
+ expect(assigns(:users)).to eq [admin]
25
+ expect(response).to be_success
26
+ end
27
+
28
+ it '#show' do
29
+ get :show, id: user.id
30
+ expect(response).to be_success
31
+ end
32
+
33
+ it '#new' do
34
+ get :new
35
+ expect(response).to be_success
36
+ end
37
+
38
+ it '#create' do
39
+ post :create, user: valid_params
40
+
41
+ created_user = assigns(:user)
42
+
43
+ expect(created_user).to be_valid
44
+ expect(response).to redirect_to user_url(created_user)
45
+ end
46
+
47
+ it '#edit' do
48
+ get :edit, id: user.id
49
+ expect(response).to be_success
50
+ end
51
+
52
+ it '#update' do
53
+ patch :update, id: user.id, user: valid_params
54
+
55
+ user_updated = assigns(:user)
56
+ expect(user_updated).to be_valid
57
+
58
+ expect(response).to redirect_to user_url(user)
59
+ end
60
+
61
+ it '#destroy' do
62
+ delete :destroy, id: user.id
63
+
64
+ expect { user.reload }.to raise_error(ActiveRecord::RecordNotFound)
65
+ expect(response).to redirect_to users_url
66
+ end
67
+ end
@@ -20,7 +20,7 @@ Dummy::Application.configure do
20
20
  # config.action_dispatch.rack_cache = true
21
21
 
22
22
  # Disable Rails's static asset server (Apache or nginx will already do this).
23
- config.serve_static_assets = false
23
+ config.serve_static_files = false
24
24
 
25
25
  # Compress JavaScripts and CSS.
26
26
  config.assets.js_compressor = :uglifier
@@ -13,7 +13,7 @@ Dummy::Application.configure do
13
13
  config.eager_load = false
14
14
 
15
15
  # Configure static asset server for tests with Cache-Control for performance.
16
- config.serve_static_assets = true
16
+ config.serve_static_files = true
17
17
  config.static_cache_control = "public, max-age=3600"
18
18
 
19
19
  # Show full error reports and disable caching.
@@ -11,11 +11,11 @@
11
11
  #
12
12
  # It's strongly recommended that you check this file into your version control system.
13
13
 
14
- ActiveRecord::Schema.define(version: 20150301144620) do
14
+ ActiveRecord::Schema.define(version: 20150508081950) do
15
15
 
16
- create_table "family_gallery_group_picture_links", force: true do |t|
17
- t.integer "group_id"
18
- t.integer "picture_id"
16
+ create_table "family_gallery_group_picture_links", force: :cascade do |t|
17
+ t.integer "group_id", limit: 4
18
+ t.integer "picture_id", limit: 4
19
19
  t.datetime "created_at"
20
20
  t.datetime "updated_at"
21
21
  end
@@ -24,48 +24,51 @@ ActiveRecord::Schema.define(version: 20150301144620) do
24
24
  add_index "family_gallery_group_picture_links", ["group_id"], name: "index_family_gallery_group_picture_links_on_group_id", using: :btree
25
25
  add_index "family_gallery_group_picture_links", ["picture_id"], name: "index_family_gallery_group_picture_links_on_picture_id", using: :btree
26
26
 
27
- create_table "family_gallery_group_translations", force: true do |t|
28
- t.integer "family_gallery_group_id", null: false
29
- t.string "locale", null: false
30
- t.datetime "created_at"
31
- t.datetime "updated_at"
32
- t.string "name"
33
- t.text "description"
27
+ create_table "family_gallery_group_translations", force: :cascade do |t|
28
+ t.integer "family_gallery_group_id", limit: 4, null: false
29
+ t.string "locale", limit: 255, null: false
30
+ t.datetime "created_at", null: false
31
+ t.datetime "updated_at", null: false
32
+ t.string "name", limit: 255
33
+ t.text "description", limit: 65535
34
34
  end
35
35
 
36
36
  add_index "family_gallery_group_translations", ["family_gallery_group_id"], name: "index_c7c2d0e178c1bd38d1d9010438b10c5b4240a1db", using: :btree
37
37
  add_index "family_gallery_group_translations", ["locale"], name: "index_family_gallery_group_translations_on_locale", using: :btree
38
38
 
39
- create_table "family_gallery_groups", force: true do |t|
39
+ create_table "family_gallery_groups", force: :cascade do |t|
40
+ t.integer "user_owner_id", limit: 4
40
41
  t.datetime "created_at"
41
42
  t.datetime "updated_at"
42
43
  end
43
44
 
44
- create_table "family_gallery_picture_translations", force: true do |t|
45
- t.integer "family_gallery_picture_id", null: false
46
- t.string "locale", null: false
47
- t.datetime "created_at"
48
- t.datetime "updated_at"
49
- t.string "title"
50
- t.text "description"
45
+ add_index "family_gallery_groups", ["user_owner_id"], name: "index_family_gallery_groups_on_user_owner_id", using: :btree
46
+
47
+ create_table "family_gallery_picture_translations", force: :cascade do |t|
48
+ t.integer "family_gallery_picture_id", limit: 4, null: false
49
+ t.string "locale", limit: 255, null: false
50
+ t.datetime "created_at", null: false
51
+ t.datetime "updated_at", null: false
52
+ t.string "title", limit: 255
53
+ t.text "description", limit: 65535
51
54
  end
52
55
 
53
56
  add_index "family_gallery_picture_translations", ["family_gallery_picture_id"], name: "index_832f502cff7d47b4d637c290646c30a7e18d7e2f", using: :btree
54
57
  add_index "family_gallery_picture_translations", ["locale"], name: "index_family_gallery_picture_translations_on_locale", using: :btree
55
58
 
56
- create_table "family_gallery_pictures", force: true do |t|
57
- t.integer "user_owner_id"
58
- t.integer "user_uploaded_id"
59
+ create_table "family_gallery_pictures", force: :cascade do |t|
60
+ t.integer "user_owner_id", limit: 4
61
+ t.integer "user_uploaded_id", limit: 4
59
62
  t.datetime "taken_at"
60
- t.integer "width"
61
- t.integer "height"
62
- t.decimal "latitude", precision: 12, scale: 3
63
- t.decimal "longitude", precision: 12, scale: 3
63
+ t.integer "width", limit: 4
64
+ t.integer "height", limit: 4
65
+ t.decimal "latitude", precision: 10, scale: 8
66
+ t.decimal "longitude", precision: 10, scale: 8
64
67
  t.datetime "created_at"
65
68
  t.datetime "updated_at"
66
- t.string "image_file_name"
67
- t.string "image_content_type"
68
- t.integer "image_file_size"
69
+ t.string "image_file_name", limit: 255
70
+ t.string "image_content_type", limit: 255
71
+ t.integer "image_file_size", limit: 4
69
72
  t.datetime "image_updated_at"
70
73
  end
71
74
 
@@ -75,9 +78,9 @@ ActiveRecord::Schema.define(version: 20150301144620) do
75
78
  add_index "family_gallery_pictures", ["user_owner_id"], name: "index_family_gallery_pictures_on_user_owner_id", using: :btree
76
79
  add_index "family_gallery_pictures", ["user_uploaded_id"], name: "index_family_gallery_pictures_on_user_uploaded_id", using: :btree
77
80
 
78
- create_table "family_gallery_user_roles", force: true do |t|
79
- t.integer "user_id"
80
- t.string "role"
81
+ create_table "family_gallery_user_roles", force: :cascade do |t|
82
+ t.integer "user_id", limit: 4
83
+ t.string "role", limit: 255
81
84
  t.datetime "created_at"
82
85
  t.datetime "updated_at"
83
86
  end
@@ -85,12 +88,12 @@ ActiveRecord::Schema.define(version: 20150301144620) do
85
88
  add_index "family_gallery_user_roles", ["user_id", "role"], name: "index_family_gallery_user_roles_on_user_id_and_role", unique: true, using: :btree
86
89
  add_index "family_gallery_user_roles", ["user_id"], name: "index_family_gallery_user_roles_on_user_id", using: :btree
87
90
 
88
- create_table "family_gallery_user_taggings", force: true do |t|
89
- t.integer "picture_id"
90
- t.integer "user_id"
91
- t.integer "tagged_by_id"
92
- t.decimal "position_top", precision: 10, scale: 2
93
- t.decimal "position_left", precision: 10, scale: 2
91
+ create_table "family_gallery_user_taggings", force: :cascade do |t|
92
+ t.integer "picture_id", limit: 4
93
+ t.integer "user_id", limit: 4
94
+ t.integer "tagged_by_id", limit: 4
95
+ t.decimal "position_top", precision: 10, scale: 2
96
+ t.decimal "position_left", precision: 10, scale: 2
94
97
  t.datetime "created_at"
95
98
  t.datetime "updated_at"
96
99
  end
@@ -99,25 +102,25 @@ ActiveRecord::Schema.define(version: 20150301144620) do
99
102
  add_index "family_gallery_user_taggings", ["tagged_by_id"], name: "index_family_gallery_user_taggings_on_tagged_by_id", using: :btree
100
103
  add_index "family_gallery_user_taggings", ["user_id"], name: "index_family_gallery_user_taggings_on_user_id", using: :btree
101
104
 
102
- create_table "family_gallery_users", force: true do |t|
103
- t.string "first_name"
104
- t.string "last_name"
105
- t.string "email", default: "", null: false
106
- t.string "encrypted_password", default: "", null: false
107
- t.string "reset_password_token"
105
+ create_table "family_gallery_users", force: :cascade do |t|
106
+ t.string "first_name", limit: 255
107
+ t.string "last_name", limit: 255
108
+ t.string "email", limit: 255, default: "", null: false
109
+ t.string "encrypted_password", limit: 255, default: "", null: false
110
+ t.string "reset_password_token", limit: 255
108
111
  t.datetime "reset_password_sent_at"
109
112
  t.datetime "remember_created_at"
110
- t.integer "sign_in_count", default: 0, null: false
113
+ t.integer "sign_in_count", limit: 4, default: 0, null: false
111
114
  t.datetime "current_sign_in_at"
112
115
  t.datetime "last_sign_in_at"
113
- t.string "current_sign_in_ip"
114
- t.string "last_sign_in_ip"
115
- t.string "confirmation_token"
116
+ t.string "current_sign_in_ip", limit: 255
117
+ t.string "last_sign_in_ip", limit: 255
118
+ t.string "confirmation_token", limit: 255
116
119
  t.datetime "confirmed_at"
117
120
  t.datetime "confirmation_sent_at"
118
- t.string "unconfirmed_email"
119
- t.integer "failed_attempts", default: 0, null: false
120
- t.string "unlock_token"
121
+ t.string "unconfirmed_email", limit: 255
122
+ t.integer "failed_attempts", limit: 4, default: 0, null: false
123
+ t.string "unlock_token", limit: 255
121
124
  t.datetime "locked_at"
122
125
  t.datetime "created_at"
123
126
  t.datetime "updated_at"