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.
- checksums.yaml +4 -4
- data/app/controllers/family_gallery/groups_controller.rb +45 -2
- data/app/controllers/family_gallery/user_roles_controller.rb +37 -0
- data/app/controllers/family_gallery/user_taggings_controller.rb +10 -9
- data/app/controllers/family_gallery/users_controller.rb +45 -3
- data/app/controllers/family_gallery/welcome_controller.rb +4 -1
- data/app/models/family_gallery/ability.rb +13 -2
- data/app/models/family_gallery/group.rb +2 -0
- data/app/models/family_gallery/picture.rb +2 -0
- data/app/models/family_gallery/user.rb +1 -0
- data/app/models/family_gallery/user_role.rb +6 -0
- data/app/views/family_gallery/user_roles/_form.html.haml +3 -0
- data/app/views/family_gallery/user_roles/new.html.haml +3 -0
- data/app/views/family_gallery/users/show.html.haml +21 -0
- data/config/initializers/awesome_translations.rb +1 -0
- data/config/initializers/simple_form.rb +166 -0
- data/config/locales/awesome_translations/app/helpers/family_gallery/da.yml +6 -0
- data/config/locales/awesome_translations/app/helpers/family_gallery/en.yml +6 -0
- data/config/locales/awesome_translations/app/models/family_gallery/da.yml +6 -0
- data/config/locales/awesome_translations/app/models/family_gallery/en.yml +6 -0
- data/config/locales/awesome_translations/app/views/family_gallery/user_roles/da.yml +6 -0
- data/config/locales/awesome_translations/app/views/family_gallery/user_roles/en.yml +6 -0
- data/config/locales/awesome_translations/models/family_gallery__user/da.yml +7 -0
- data/config/locales/awesome_translations/models/family_gallery__user/en.yml +7 -0
- data/config/locales/simple_form.en.yml +31 -0
- data/config/routes.rb +4 -2
- data/db/plugin_migrate/20150508081950_add_user_owner_to_groups.rb +6 -0
- data/lib/family_gallery/version.rb +1 -1
- data/lib/templates/erb/scaffold/_form.html.erb +13 -0
- data/spec/controllers/family_gallery/groups_controller_spec.rb +66 -0
- data/spec/controllers/family_gallery/locales_controller_spec.rb +15 -0
- data/spec/controllers/family_gallery/pictures_controller_spec.rb +4 -2
- data/spec/controllers/family_gallery/user_roles_controller_spec.rb +37 -0
- data/spec/controllers/family_gallery/user_taggings_controller_spec.rb +44 -0
- data/spec/controllers/family_gallery/users_controller_spec.rb +67 -0
- data/spec/dummy/config/environments/production.rb +1 -1
- data/spec/dummy/config/environments/test.rb +1 -1
- data/spec/dummy/db/schema.rb +54 -51
- data/spec/dummy/log/development.log +4782 -0
- data/spec/dummy/log/test.log +5331 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/-hQRdqWQu73Yx5QiUxfYRURbqzfHDb1PE6qGmeEO9kY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/2zwTWOD1Dd_S-opzh-CmX1_fydfXvWEza9KYHrWKYkY.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/3W4YnmQhJyZGtT03ZCAp5cvpoDIVzhYE-OOySbjsapM.cache +37 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/4H6NKxG2YddskIdf_03222wZ8kphBNjvYK6iXCB11eI.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/54QJf7-lnbywCPYciET5Fdy74m4XmFU7NNcaYKrgi8Y.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/7Eve6bsJd_sw7qXnaCbTujcr-UwqfYSnlDcoTl9mGu0.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/7JObOpcGWt5r5Ea568fgV01Ed3fjuBlBITVPvrc8oIs.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/8yJQ_Ka1A9O1RTb9-nVPpwwHeMGjnwG0pgczu_lMbk0.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/9FNXvWqcBTSfSon_2U8pCSk_JDdYk6l6uAiLQXVvrCM.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/9PbYLPdCxP_oX_b-QxCkVET4lbO7nF2KPia6rAfr3Ts.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/AcloL6yHnBX7CKq3FN9W6CAIc9bHnT5cYYbT9pmLsxw.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Ase2RYqrsQ0kXoNr1E1j2MEwz-TskbvO9IOLrEgZSL0.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/BBI1gtQkrJmBf3CJ-374M44oGqVpJHgf22Rbwa_u2zg.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/B_SJ67b35_bVz7ZAZfC8f7lafyhPAd-_5mqoriIyYYk.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/BtXkANDk3VSuFwpmHdQbfnKVEqGoVGHkHV_4rFXYp6Q.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/CBLZYr6WegdsXk9rst09TEqFulLRRVv34rZyBxwK8aI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Dq1_xO_MW2UacskEcnWB7fRcbOy68mH1nPQwIi8wYBo.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/EQEMGT66vIudsh79XT-x8PVBoh4owB2NYGtn4OJRzww.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/EwXlChRQzpcU12HptCvsJR_EfQioGzc6m7AnDAVMwPI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/GLtDgVmTUMo6-chqHh1ySimmdEtd9dsA0nhuoY7bzxY.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/G_pGbb7858rh3p9R7pozCPHO0hKAqZASWy8H8bLJ6_4.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/J8AwnZgVdY_2YOa6ENN4l8hZtj6LK_NDVaeWe9DhPgM.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Kf-DnPjkjmvu-fT_zByJLtBpzTslzCno2S31xS8xV0g.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Ko8Vzjv9GJnw996cHHcXEr71e9YvRqt6SwjCRRt3tgg.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/KvmmgF4_oMLrlbbYNHZEQ58AT-cMOMxXUkQYXomKtHY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/MFut7RR3tu2hiErVmmSYINrcGr40XnFrPQ5TxyAEeM0.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/MsSVIHis1abvfaf6VRc8sVwl9OIOuOnSPTLApLb1szQ.cache +26 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/My-O9yZmyHinYEYM0x0LZggXiR3okwyuADQDtiuyp9A.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/NMmnYWHpTEJfb2Co4fFWb-ckZ8Q13pXTVZq-h1ai3ks.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/OG-AzAgty2btZCvNBFwbES6B4QL6nWh3Jj_jIKb8P7c.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ORv1F5nTty3sUqjSYnf4rZpPb_R86-ee0sjOFDp0rVE.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/OjsENZSpPllinbzGj3Ep0ciCD7jYal5drMCf1BeHkaQ.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/QQlNrhy9Js3uB_rSo_PlVeBQbGfXUfAJepRTHUgJdEI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/SOx2q96as0kzSLQxGFUw5apPSemYDlx6kZ6Bs_xBIQw.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/TNRu3lXH9ajazn-ls77N6agT2-YAPrBRiUeM2eByrU0.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/TOOITiJ4HpxXtGMd7d399TlIsjwVtcI7RcJa3uY4VHY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/TU2SJ0iFXlj_Xc78W3sY-yoMxI0LI2FkYy8-xGHirw4.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/UF-PSA6IsTb86RU5b7B2UeqC63P_RirW16IGiJJfE1w.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/VX22nz7EPkkv-lqD4LJ7UCrdCiVmdmIcMQ1UEvrApLc.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/Vure74VwhZbVg6HZlMPfBhCn9jtjfbuvxBi1ErljXVA.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/W3xFppatT78R8Zaa-xYuePzMl1UEU3yzQrLrtTH3OYI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/W6GEe6xsjragJiA0CEQ8UvPvUf2ASDSDKIC340AldG0.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/YpzbVFSK9wVVcwaTtVrZmBykb1LcCINHumet4i4u8_Y.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ZCJHSey2jfX1Bg7QPxIrER6wYPCOd6XmH2q4-z5wL04.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ZbZyURMpvUSF3E_nWseuxqin9q83ShHXU-kLUiybEmE.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ZljYtWTUhhzX0dWYStfd5ZGu0TuyUQ3UrEcnPc7kenA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/_C8HSdR8bq6ow17yYRN0JX92DxWP-gU_RL0sZ_rSzlM.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/_NTZYWaLn69VxNc3bKjyFMslFp96byaJnki87xlv_fc.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/bBq28xeM5j70IrH9IunvD6S7CbTX_OSTXO_Z-wEw2zs.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/baMRNj958ooabY74Hut8zDMSZ9Etyt7HJAgZQgPGMok.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/cS9J4Z827SAl4OWYrgmzMgbCoUX64UkTICkg87HG1wA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/cTW4ExxiKScaif6-lb5OdnXFLxfpdV50HU5f0uvA7no.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/dD-Q0iRHARSIzldbElnIgjIEn9xppxvLEctUCH0tg8w.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/dh9_a9U18qiWcpV9Yx5NCcKmQr9ETgMYFOgLpO5aYkA.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/dicwROVZEbu8y5AblmyAg91xUuMd8uGqrGtHoMJeKF8.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/drwR3Ciba2VyB0azQjYLHqtmeSF11AIXVdVU13iZyLg.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/eL2knZFREuZ8m_nhxo0k3BWljEPTM43lNR5VaRtolsM.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/eoHlDmKTK2irlNAuaoEg11qxGfuidvkji-TMujr9DsY.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/fH8aZNt8wQxn-ML4khOtvGN0jdBY0Zwq6NHO2T7Jhj0.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/fXiMZGL7KjUDKrGoIw2ah2fK0cKXnzIZE17bqHO-uac.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/fc0Fzd6YwzG62dl0uZLr_o7yWjW8lz-Aa_m1AlMIxLQ.cache +45 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/g0qJ9gwsvbCGjQHUq3AgBJ2zicAc7YFi4aPC8jiFpYI.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/g8QlMs9PpeN8NF_NkRcyG1K4qFOxte6oaKZaaGliGxw.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/jVsCHPCK3sdvZh1IA8ZNhj0XJPOBXIAUKs-ZEBZt2jk.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/lAlebtP1k8gDXgNbPi7_3ZmqA-aBulsdkOEryRLGRcY.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/m8-_FKUhLMujJ8SusNRRRiVhzFlY02drWKvwyRf9Zd4.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/n8l3H2IJdBWMcK_tP7hCsHJTQ5zeaDM9aLHnX2CY37Y.cache +3 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/npFyVNaDh-swtdSqW3TF9WxhreMiWzyqO-pr35xPlmQ.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/oPkhqvTlfd3dKFMLM1JSr6dn3KnDz9oMXeqHbmARFYo.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/pfvA3haPAtjQJR6gnDGyG8zqThtKf3yjVh1GCCKwcpI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/qr9tsE4lpH7uQc6gCmw8CvFxL5QDGoRtvkv0NumsIoo.cache +5 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/rXlNxo1eiSuqmgQUpJIAZAaOS-3gJyofOT7NGJbqZrQ.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/v9OMdsq-LrIbQoFnehOd7lTlPJRxc8P7PZ5sB1tKZ2o.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/vM_7L82P-HS_agBk__BgmO0syvueAfJl0UldzluSSjQ.cache +1 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/w4tfk-hbGJoNzF8IVntgCOnn0yb6jaiWxG-qXa4bwcs.cache +2 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/x9dMYbokRbywIRg4eEe7FMEHoXPjRw6sUMfWMe_7CzQ.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/zqU8o81RQqTBxt1IOXvBVyjQkBmsQwzd0s8NnIlJAVs.cache +0 -0
- data/spec/dummy/tmp/cache/assets/development/sprockets/v3.0/ztAFgiR1-7wXLVWKs4XywPFWo2N4-l7_nuzdlkIj9RE.cache +2 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/-o-IBBprz9s9-rltAzVB8x4_8eEJigbRLsCNmSV_ICc.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/0V0ghK3-AtDSzJgSQq-Cg4-weW2qpmwvQcMSmwh37BI.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/0gNNYwnIBPipphH48SD4erjXNmtSmQrNLJLzNuz_c-8.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/2H8RKUJBcpFiSBqqIOefhvJUZoDvuzxSuFaQK0eqDuo.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/2zwTWOD1Dd_S-opzh-CmX1_fydfXvWEza9KYHrWKYkY.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/3V-sWIRvP4Jhx_mZgxLdbm7IrLyYMgYGQFZvGPbLpb0.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/3W4YnmQhJyZGtT03ZCAp5cvpoDIVzhYE-OOySbjsapM.cache +37 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/4SDTbACzKhs32SEozlKqqDPDCYFHjrXH7XidUEhpADU.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/54QJf7-lnbywCPYciET5Fdy74m4XmFU7NNcaYKrgi8Y.cache +2 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/5TXJKaIpZrRB9xZpCd9rw9CtGNsQERwqU5Cjqitlv4M.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/6B0nQ_UnJFE8dQWvYa5J8A7cFhs0El892lwXpyu5JtA.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/6a3IhoRAUZxuBEGS8p-LpE_Tgy9EZFuO-A3HzXn52W4.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/BBI1gtQkrJmBf3CJ-374M44oGqVpJHgf22Rbwa_u2zg.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/B_SJ67b35_bVz7ZAZfC8f7lafyhPAd-_5mqoriIyYYk.cache +2 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Bryuiq6fZ0wSJCC57NMEljLXg8w0lnLjNEB9DHzCpkw.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/C-Eod-J3fOVMmGIX3SV9_n7vC8BLXTEOvjC2NwBt-2Y.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/ICwMeYygy6CCub8BAXuJLfFwJg61Bmbr_PhNt4Vhq4c.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/IQmjCFKTbPheFk6_xCBLo7sHocNTZ6VpeBYaLgdM71I.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Kf-DnPjkjmvu-fT_zByJLtBpzTslzCno2S31xS8xV0g.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/KvmmgF4_oMLrlbbYNHZEQ58AT-cMOMxXUkQYXomKtHY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/MFut7RR3tu2hiErVmmSYINrcGr40XnFrPQ5TxyAEeM0.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/MsSVIHis1abvfaf6VRc8sVwl9OIOuOnSPTLApLb1szQ.cache +26 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/N-zHZ8WVdRA65wR3RT57sS2pd-3HNf59WzBMKlbDNug.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/OjsENZSpPllinbzGj3Ep0ciCD7jYal5drMCf1BeHkaQ.cache +2 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Q2nSqmt6DcH0h0tAffSjuA1wlKvccSAaEdT_rIJHlsc.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/QvrStR3i1j8aHfZ3cSjbDz2PE8OhmBEqktkMxwbQuPg.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/S796FHnthmUABzGZql4bA881lNmrpmiC8puwvsbq2nY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/SOx2q96as0kzSLQxGFUw5apPSemYDlx6kZ6Bs_xBIQw.cache +2 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/TNRu3lXH9ajazn-ls77N6agT2-YAPrBRiUeM2eByrU0.cache +2 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/TrGv38AbovT3ejol2umzRXa7pBCb3L3MN5LzvFhLQbA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/UKqisVY2cbaNVWO4s-3u4yzbL-lpph6xDQShrHSFXXw.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/UmMN-oZ3n5-tmrbvpDo4OPssqaav4JxuDHI9Ma3dXGg.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Vure74VwhZbVg6HZlMPfBhCn9jtjfbuvxBi1ErljXVA.cache +2 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/W3xFppatT78R8Zaa-xYuePzMl1UEU3yzQrLrtTH3OYI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/XE01v4f5NaneQq7m1FmPZ4-f-2fcVC1YObXCUZI0CTw.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/XVZlTX7hPc5gOvs9gdeowS_dzpOesUJtObI0WFHUOb0.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/ZXUtiQ0v8meOIeOKfyljADVLHRZSKKVlIy17kRlz-nA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/_C8HSdR8bq6ow17yYRN0JX92DxWP-gU_RL0sZ_rSzlM.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/_GMY0JbsxLMYoWZ5mM8-mQ0ONkhDlunESsaE1tjrSYE.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/a0uziDegoB2On6BnaTdY4zR9zeaEhLgl6BHYbauraUw.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/ae-GcGxfVPz3K8pp-PjOcjhfC0vj3h7dTFTbHKTPCAY.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/bBq28xeM5j70IrH9IunvD6S7CbTX_OSTXO_Z-wEw2zs.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/csuqsRmDEoL5pkcikg3MXOdNP2jIgU92QsZOoh8-c0A.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/eLcf86K3dtFSrWmxBIGS1XWQlu2aNqPazPge666S-Zo.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/eoHlDmKTK2irlNAuaoEg11qxGfuidvkji-TMujr9DsY.cache +2 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/fDTCOONxq_Wdd1UC96tYHpj7FVlkKuExKJ8tEeU8O1c.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/fH8aZNt8wQxn-ML4khOtvGN0jdBY0Zwq6NHO2T7Jhj0.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/fc0Fzd6YwzG62dl0uZLr_o7yWjW8lz-Aa_m1AlMIxLQ.cache +45 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/g8QlMs9PpeN8NF_NkRcyG1K4qFOxte6oaKZaaGliGxw.cache +2 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/hM2mSsXSJDikxih_B1ryBFqOipzMhIbzzqRSgoajQv8.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/iIpEhB7lFqYkQqVzA9J2-70FD-nDFz4TJvixuhe8YVs.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/jVsCHPCK3sdvZh1IA8ZNhj0XJPOBXIAUKs-ZEBZt2jk.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/mJPnjmwHqHROmjB73eWZty-B_WGDwqdTDE1s_9dft1w.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/pfvA3haPAtjQJR6gnDGyG8zqThtKf3yjVh1GCCKwcpI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/qr9tsE4lpH7uQc6gCmw8CvFxL5QDGoRtvkv0NumsIoo.cache +5 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/r0vYJM-ejKpqxQteBU68lNDsqCUY8Y74hKFoGkm4WDU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/rHavE4tc78fwZ4E6YUrSU57H9t5igG1-wnAMdC5PWME.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/sL-_5CFM1pqMT0tt4y1SyOmqeV2z8DJpx3CQjy70qeA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/u62VxZ2Y0rf8c9BBVkhsGtW2Cpp1jK1pS_qY3QU1g2Y.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/vZaXpBsrCMK78DgtKca-V52yNTnWkBCe1U1hr5LwAZU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/vpMpCPPCHQI_3WErM74srB3yXTzmB6mnASbcEQQ8jjg.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/vuTB6kAIoYc9IY1cCEWib408r-K1vB6jZdGMZRtxt_4.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/x9dMYbokRbywIRg4eEe7FMEHoXPjRw6sUMfWMe_7CzQ.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/yXkkzllTvHiAlfGsCGQ8eM0m8QtaMZRrXxkJkPy2ix8.cache +2 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/z4aTRFQJAcuQT4eIC5Z_O7nMznrMajgLSaE-KuGe3uU.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/ztAFgiR1-7wXLVWKs4XywPFWo2N4-l7_nuzdlkIj9RE.cache +2 -0
- data/spec/dummy/tmp/pids/server.pid +1 -0
- data/spec/factories/family_gallery/user_role.rb +7 -0
- data/spec/factories/family_gallery/user_tagging.rb +10 -0
- data/spec/models/family_gallery/picture_spec.rb +2 -2
- data/spec/test_files/0/family_gallery/pictures/000/000/001/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/002/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/003/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/004/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/005/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/006/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/007/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/008/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/009/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/010/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/011/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/012/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/013/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/014/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/015/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/016/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/017/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/018/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/019/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/020/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/021/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/022/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/023/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/024/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/025/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/026/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/027/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/028/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/029/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/030/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/031/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/032/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/033/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/034/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/035/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/036/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/037/original.jpg +0 -0
- data/spec/test_files/0/family_gallery/pictures/000/000/038/original.jpg +0 -0
- metadata +412 -12
@@ -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,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
|
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,
|
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.
|
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.
|
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.
|
data/spec/dummy/db/schema.rb
CHANGED
@@ -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:
|
14
|
+
ActiveRecord::Schema.define(version: 20150508081950) do
|
15
15
|
|
16
|
-
create_table "family_gallery_group_picture_links", force:
|
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:
|
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:
|
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
|
-
|
45
|
-
|
46
|
-
|
47
|
-
t.
|
48
|
-
t.
|
49
|
-
t.
|
50
|
-
t.
|
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:
|
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",
|
63
|
-
t.decimal "longitude",
|
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:
|
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:
|
89
|
-
t.integer "picture_id"
|
90
|
-
t.integer "user_id"
|
91
|
-
t.integer "tagged_by_id"
|
92
|
-
t.decimal "position_top",
|
93
|
-
t.decimal "position_left",
|
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:
|
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"
|