ckeditor 4.1.3 → 4.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +6 -3
- data/README.md +19 -4
- data/app/controllers/ckeditor/application_controller.rb +16 -3
- data/app/controllers/ckeditor/attachment_files_controller.rb +2 -1
- data/app/controllers/ckeditor/pictures_controller.rb +1 -0
- data/app/views/ckeditor/attachment_files/index.html.erb +3 -3
- data/app/views/ckeditor/pictures/index.html.erb +3 -3
- data/config/locales/bg.ckeditor.yml +9 -0
- data/lib/ckeditor.rb +1 -0
- data/lib/ckeditor/backend/refile.rb +37 -0
- data/lib/ckeditor/version.rb +2 -2
- data/lib/generators/ckeditor/install_generator.rb +1 -1
- data/lib/generators/ckeditor/templates/active_record/paperclip/migration.rb +6 -6
- data/lib/generators/ckeditor/templates/active_record/refile/ckeditor/asset.rb +4 -0
- data/lib/generators/ckeditor/templates/active_record/refile/ckeditor/attachment_file.rb +7 -0
- data/lib/generators/ckeditor/templates/active_record/refile/ckeditor/picture.rb +11 -0
- data/lib/generators/ckeditor/templates/active_record/refile/migration.rb +28 -0
- data/lib/generators/ckeditor/templates/base/carrierwave/uploaders/ckeditor_attachment_file_uploader.rb +2 -0
- data/lib/generators/ckeditor/templates/mongoid/paperclip/ckeditor/attachment_file.rb +3 -2
- data/lib/generators/ckeditor/templates/mongoid/paperclip/ckeditor/picture.rb +1 -0
- data/test/controllers/attachment_files_controller_test.rb +2 -2
- data/test/controllers/pictures_controller_test.rb +3 -4
- data/test/dummy/app/assets/javascripts/application.js +0 -1
- data/test/dummy/app/controllers/application_controller.rb +0 -1
- data/test/dummy/config/application.rb +15 -15
- data/test/dummy/config/environments/test.rb +7 -5
- data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
- data/test/dummy/config/mongoid.yml +135 -1
- data/test/dummy/config/routes.rb +3 -3
- data/test/dummy/config/secrets.yml +8 -0
- data/test/dummy/db/migrate/20110623120047_create_posts.rb +1 -1
- data/test/dummy/public/ckeditor_assets/pictures/1/content_rails.png +0 -0
- data/test/dummy/public/ckeditor_assets/pictures/1/thumb_rails.png +0 -0
- data/test/dummy/public/uploads/ckeditor/pictures/1/content_rails.png +0 -0
- data/test/dummy/public/uploads/ckeditor/pictures/1/thumb_rails.png +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-0Y-vQc-dw9zaOiErb8JYgzQpBOUAaq8VZfSb_B5uOQ.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-k2ceiYVxflNoEAtFxeEWv9Ecy2cNuTqd9QO8J2LFFI.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0-nVb5C-srtRW9wBTIumvWabGBWRvKrMX8k2gHRKBEc.cache +3 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0TeBLRJBt5AY1R_9_YvwizgVdiVFr9obHQX9T2JJXYY.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0gteurGVDGNybQsttOfx70JelPiMhhp0sfbVpMCoKVA.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/14o8wfYikHox1V9PLOkTJd_gFot4QGvT4Oxte5dagT8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/1RjBkUtSSJ0czpw2jEvJnzZb8UgBlhReBXrJYGzRGIc.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/2BwStbUd8hkvmDo-A2dgfnCU1Eo5AkrqSob3dFCUHSk.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/2MhIU_lvo21gLxdRnq-5Ldpe5eHFiXhZpGLVfJkDfcI.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/2V2KeQdoBlV0rLlISqEJDrJ97oDZQiTE7R-ZOCyauGo.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/39xDaOT14BiF2cxW6hjvTEbj903YVOibx3VAS9uEuWs.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/3nCZbb60C_6YI9UvS642pxaYQqdckytk3fp1ldAA7iA.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/49yQrlnOi2Kuy3tHFt4vyAS12yZ4DkAW4F0avumN-yw.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5LavcpLZRcp9souD61BhjMIKbgzU55AvWtC5OfCSl7g.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5qvl1xv6xbLMAtf9bqjctlSCIR4Tj67ESZYBqE66fQA.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5vp_cFU5qxEWabXeh_HdI5aMG1DRHnDU9kR5jAqP09A.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5zlPCfSeywcBTmY3oBPLS97NIL5tkD93yvg50CcZc04.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/71o4CtPTq04uaH5_IOUcd1pNo0-1LVDxRFtoEW-nOUQ.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/78OiF_HrrpuJTY8E5qiNd5hUlJAQaUqzkhyhlneXpcU.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/7FUTcI0wn8UJIH_pZqulmls5bnrpxu50ePfLUhMp95w.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/81kvnJovSQxP2ZM-xzpZLLv2IHeVM7ha5llouWjjwBc.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/8HdqiylEMTPnfT9MaRcNNv_CA-6G8yinlqjnfHCae88.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/8ONsU0EApatFYthtOESLAL3fEqnlJMpnRDhQ8reG_pE.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/8YAFtXnZka4mTfUiJxb_f04jOe09gJ-RpSZN5xio3fQ.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/8pFjReg2diktzxf0U0_jeeQLusbUJEuQsv2dlF7O2hg.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/8r6babHS4r_9ZvYRqcb6aA_uz65pqw7bVd3NGZh3XT4.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/8saYVO6AAHOVSC6TSo0C1w3h0XPAdwzHsdQGxrvX8G4.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/8va6UMhyR4ruPya60966MNt6fvWIP41TuxjCiG7ydCw.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Ax9QPLC0qXXveae7t3SOaZULv9EYwdBkCwFfkaH9VnU.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/BJ8Mk866ftpyikOsaXi29LeYUwB4xaatng00-odHqME.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/BgMX0FOKeGNg4_KL5fb2XNegaQDK9zoe0rOVSqLU_E8.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/BxvYpCRYc84XAZfYwhnscWL_mj5AkgwdyhxDlqWYgOo.cache +3 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/CFyaFRUs5segvJJ4Pvvev1TteL03An0__I8bi_Xhhs4.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/CRIed9PBQBHNz6FKlweqZlUjAVxAH-VBfkK5wwwQEHc.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/CakpZZ9SuJAwUroPa5BaEmkX5aRksbjT1-bmY_eqjho.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/DmmfrCpXtt74Hr6NO54lxyOCDv6klnDyBqeDFR7oDU8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/FjUzJf55l2UaFfP4zLxARdoyp6b2pBfhz561dtSh5Gw.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/FkUfNz2E8J0c4-kGKZrGVv92Pha9p5kq6szdo6-4Kt8.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/G4foX2yq0V02b-Ih-8DhAMK-oQRVNIkeCHU-MhW2uh8.cache +3 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/GD3iw0i03xwdkdB2QXLnze85fZFoqPOhmNUBT39fca8.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/GJr61rDs4z0CSHE_aIuwpZZxhOxjFVwABpR40j0TU1w.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Go_7YjF7I2eckeksi7R-htWrvhioQvQtYZqqY2jnphE.cache +3 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/HEWr77QBGH1SEklgBDa3j629YB0dfctyHcx7K3j_ZC4.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/HLZVkYhmCs2CHkjE8Iveysh2Q1UlqwPh4wYcOxoLksM.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Hdi_eLbEw8u3jpacFQQh9lE5QOpFyYctWRS3jOICvcI.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Hggw-nF9j-Q61HMYWQboVpjrPbWZ6G19Uvm0pE-51yI.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/HoSg9oCPwQcfkLFJlCessuspLF6k7qj1FIzNmRoL88I.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/IDXO8fw5XDjRCXFEFC2x4lLWGhJQ1mwKJnU-7sCmgrc.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/IJ7EzirFP-sDfyzAFAE0pr6ZzmDL4nXbf2k_4vw4mBU.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ILPnojTJilpP1qpFuNuOK87zfPc2yAC-NT36NhF1FH8.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/IbIkbEyH5s0h8zx9uvumgSCdXC-ncVMX2t0YQ1YwtvY.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Jd_a5bM1gGsRsffw4J-c_UBl2lpkBDd1-8iLVrdXCCo.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/KUGxwHyjAFYjSJhwiFU650v2wkI0An2pIFmHZ89dLl8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/L-hMRET_edoZ6AgpgYdonFFrrQi7zsnzT8hyNUqZhnM.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LGPZAyasRiMoIe4DEPKj7JFsci5GW0ZYgqU074tf8qQ.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LPPtVgJtfm_ULmd4M3jaW3eByyOG1D-qBYGZdk3oSV0.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LSXVZ1FbLAneulgCx2vkVRfsVtVJVClowFacY6pQK8Q.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LcV-msujwPXuxo0JTjVfjlmHs5xWCHahhC0qo3srW9M.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LdgHMMZTjkE4pcCQ-hbiuCU6Zv2KCc2FnlDxCpEd7ok.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/MEJnMJGC09t5i0dzOS_JDyynBeQqsEBxsFtJO37jvf4.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/MehGhEriVD9h2Kq2MfFUlZxDV1GGjzsRwJy_MujM5m4.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/MhnIdqtiBPl6raYueaaWF7U8ZIuecPQp258x_jzhK7Y.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/NzTnQGtAtK3Z2I-VUAgrh68ok8aBZ2Loll5OmjsLxG8.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/O7bDh7zkz5faPYa-5k6Esl4kg9CFQ7AGqLOCxaSfKbE.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/O8c6B6sJ59vMs36SumOSPin6nx0z-aYas0y4-Z3U2aY.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/OZ31QErgDuYochQqmXTE5zIOeffwrOeeeLNUFb-5K5A.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/PLRTC7g_FEOjmiSZuUzr0Iab02WEC2Vquy6ty-YAkOg.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/PZ21rPa1Kew_vu-0G3ou4gfG8TW7xylpX7Z_jnHTfTs.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/R2uA_gWGbEyijQ2UVkp9tI60Tv2zaRGjW3Y2uzWo2-g.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/RZ8BGWVhUVx7OCCGLwMGCiFgXl9GHqWjxFMAcpITklo.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/RoIZ_pmGxz9EZljdV0DoCa63FiYEkqf_CvAQR1W4dCU.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/SGbZBJWTmkKGC8aOKMkk0NVj4mll6H2qDWXcVeTyFzw.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/SMQbikaY4w6nvDJMVTShitUtBKpQsA8TwPMEWRfdHsU.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/SUIjKRsKsZ6fIh1oMcVY3H_Y_Jm4zZ4z4Xm6S_mCikE.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/TFeKke1btqecZ0RSPFBWYr9BbHrDb5gixbYDlSpMk1s.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/UacTFEFghBhPBOhzBP1D1hcM2OdE6kgugENRwyqPYnM.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/UdGFj1HoQH-aci9i_OoT7YLpiyt9QlhPL2sYz69MEUI.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/V9MD11lVEIdK1OWezE5enOkHjJ5C4Cp_N3Ok20Amde0.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/WwzjG1S3dvuKTQ7JiupfnHjfy4YQGqDGgPNJxwvInPw.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Wyn1Pb6G1RTu_DaF8Qpb_WsLzlLBWyWi4NyeruJcuc0.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/X5azf6_FmteeCaFbxE0rI-VMJ-4iIjsmOWq9V_uFXro.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/XAXwggeh70K42e0HUTCsY14pUzdbil89rfWaxiaGF6c.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/XITOxBqavaIlb4Req17IUqaijAplwMaBYp0NYhxbKKA.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/XVq4MFgP5Hfb77rjShN7fw2u9LzOwiQpJuZbv2PHwzw.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/XaYvxVSL64gpbMv-awGmW6Hc5RBIEETt3_GB0nTh4Oc.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/YRsdPo9IrHqYzWu1LvtaLwecg83iBanTwJM_Bi5CElI.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/YSvrRPH9R98gVzvCOIbDv5IZsMKU0f8XK51iaHmmJX8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/YWwMy7R7-dBq3nxOH_EUlbvTStdMr7lBSfNDV-zkZRo.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Yi793a7Kj3TQnx3hdNhpLw75Xs113kigdjf2Tib1t1I.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/YklK3WNa0R7ygdPxV_dae1q2rWpbiVbMwu3A2v3UeUc.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Zq1z9kkx7G9iuZnbDnJEeKTWWWf9Xa0esvxBHSYFKZU.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_MfvL8NorafgJAol1M1eGm0_4uzfEBzDOz_m8VnMZFM.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_YezP5ov0Fq-Sc3WgLqExVuVboCV8Kd8-UbFc0ZJDJk.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_mtQRsKsEtXAQjj6vEjajfW8QhCcgvdclweu2u9Gf0E.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_vE-nQwSeBss38Vsqzn9t7VNTD85zKq6sI6fz65s74I.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/a8v06Vi1UlkOSRs4Jh11Zi0ExXKmNvgTBtizGr-kt4M.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/aDMK5MBFio51Cr_wxdbGs9UeaYatB_rT697gi4sgwaM.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/cxcngs379-6NvK_TuZwjQEkHl2Nr7o4qQN0CNhhVK4I.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/dNoqnYZWN64iITIyf6tTYzG8WK99yQAs7Cm3bh79DnQ.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/e0ok2aiRTjboJdHti5amtWeBazo7dx25bDo9yFntIXE.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/eSk1MSIpJhm2Q12X8KMELyWhuzt8zJBrUtWVSW2AVns.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/epXaK3wPsvy0aV261B8om3gQI9JlTgtNTfi1Z7v3IwE.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/fq-PvWIYW-sWicdU23r3_X_avMz4emoyMNUP7En_mL8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/hg341qJNkq22m2uKCr-lsT306eYlTGJYrLL7d8VWCWY.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/iB6bvPTNICniMePEdHuaSYQddp1YqafiDOWaa3DUQjQ.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/iSM9MWyXvtjT9bTZ312mmYX1NRiWoplVhvxixu23zGs.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/iUTx-68oBjdV-UogR3LmT-OerR3XtauIaT7ngGnlL74.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ic_gESTL4Etn4r3BigdhhuWjyluRYrTkmuOdy__4-Bw.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/imVheMULs0MQlP8J2ijBSgecRODLQ2YnEwglZ1M3qCM.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/itMNbKL1MUFa62qMrBZHTUWSQeDOYdInFiGH8fV4a4c.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/j-As9bJDWqxsjl3pHYdB-hEALUxUhOrb69-7s3ISiSo.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/jTDMfP0pLgRfNwQ0uL74f9dlbIlyBRAHu8yqmbZdVLE.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/jqYmAqX4FUYP3Ry0jXypmNSeL8HOrACL74idAeOImBE.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/k10DZTO7DmCfDfZD9nK20MucJiiEbd3-3SvuAQ8bzv8.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/kfeoEvDASHBDJcxJnzLkYaPM366XGgwfhCLow8UGOIw.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/kl7-0Yma4mjpRGT6bDrwv-IHb4W2d2ywSsPPzmk6T7I.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/l06Hk7w2ocXpCiccSIvTJM-ScX62rMmKLRtJPtW1Kic.cache +3 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/l0TStYUsHGBjzGMmco3XmqYzKhpRfmg9W7NOoybBJNs.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/l3yl25uTwaeilx-JgQlxQ3g-db4-gsVLDfLKQPWo2Vo.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/lwfzuqXzR9WyRWKkz1A5muFTgJxkwhGybCv78MJQS58.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/m07a1qwffv5G_DMkrNssAQIsYGT5gVr3UyOW4G5FQ0U.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/m23zjhoiiBDtiNm2lX75UI5-gEklV8K-8zvKZg_B59A.cache +3 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/mKozxCgkK_hR0I2x2Nsgh3VxWJpsefS-s68uDAmgOs8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/msW1PnhVnj0GTdazbGV4Du62Ut46dxuXtUFr15Q2KOY.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/nQ50t77SW8yPN2EYCW74lTBJ-lQ6rR7v71Okgri7B_s.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/nuKbm3BaJfyZXqdgaVZHrimohsanGSGF6-_4xoSGnMc.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/o7XBUXFGuziP7bmBEMVCPBFgBIGBmiTESQIxNi9rN_0.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/oGAiUvi6nEsz2ZD5bb7Jj0xiFT-mCuoVD_2mJN96p_4.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/oIvexiDUQ-zd7AuyJfTYG3_zYhx-crmQkN5kW8aKbh8.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/pQpWQ11qGcxCSKd07Vvs7auMG4oNZX3BQJc1-MgzO1s.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/pbee6iWbGkbTxVif73OALAIB1AVmw9ZAvXZUTQqQj2o.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/phLZY4afQWdHSOlqJtfXufP3FITNqFOYzDcuhm2DhV4.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/pm5ShQUP4E_ytop4tbTjQ3GTSJfpw02c7OLPCLz2nfk.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/pv5Hag7uPBVc1jj2GyLrK_SqSZ-SHCPTZWYjWwVBs-4.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/pyoJ_VJjY6hCuc3Lkt82xWmM_J83UIYZ-3aorkgk_u4.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/qBHDxDlWzSlvT2lkJIMHpSkAxMgkJBj3ZWw5I23PRIQ.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/r0fNUwJhElPvj77P1E5kCDBkJfTfOegg4jjdZUlhHO0.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/rB8QiXtSQroYazT2MrfyRfHZTdSt6Q4FFxMCd3I4VLI.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/rGBxKAZk7Y-vsRnznBZf0qb6LknnDV4QYFpDXLT4cy0.cache +3 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/s5XGVdxMj8h2jxFMGj9n6tBfObK9S4Ne2m30--s0i7A.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/tThpXLk09nL8LDEIBTbNKc9XVGL6gPWa1FayPV3Jli4.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/tr7_mh5QiZWLO3Wy7Eo3Q1LuZhc2OwtVjLcjOUsvk0I.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/u_ek7iHpwVCBW1BUOb4K-uLo7cXcU5eRwsT-qckkq0M.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ugdWH4Ocyu32M1SlaKuM-rvJeKl_ghTMapdPgCU-SAI.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/v0NBD2ZZDEtgaCrCM2JbrK0aMu-qX_1JzDwKsWvD7G8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/vRTQBKrkZoDg_4peZIMosrKr4zDnchWaYeBJ6p74_s4.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/vbqjs5vgOmqaG3EZMnLlLvW8mZ2GalJLicTDbsPazEo.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/vjXv721ZTqHupPUKEIpVjSfAuWd_p6SNXjGuvzq_fvc.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/vuUCLqoDpaMhKKnH8x-SOKbg4CqbKjTo3Osi-wSo_fM.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/w_h4ujhyriVHeCUV8xALHDo0y2sJ9XgiUlul978H9CU.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/wnvJ74QIdj8tSD10cXmY9KyXCpaQIv0FfZJWw-EudW8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xOQnZNHJO9_q2sHm7AQTDx4NQN2XLEnDANqT7Ex2bjE.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xPMfTXGxxCCgIip6XsG-paelKjnDzbpAYugLmUfykPs.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xjAkyfasppYPOB-QzxE6GAr68G6pRv-ekOXdz1hSjBQ.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/y8PyGKJItT_bRI6REb0yE9j7cKbyslsSBb0bXIuVHwI.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yhgcsQ2_7LajcspRdOzKtCKowIKXSjHlW70Cji9BmZA.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/zyJjkJcnq5xt2d1yDEPVpbl6BAa34JqbE4J5tviiW3c.cache +1 -0
- data/test/dummy/tmp/uploads/store/5bf040f83097246b6b046811f3e998d4674de157a8c9786deb2ac41926b2 +1 -0
- data/test/dummy/tmp/uploads/store/dee5d97f52d0f76ecc98e04691a536a71d39459a60236912fc1a73bc3cb3 +1 -0
- data/test/functional/posts_controller_test.rb +6 -6
- data/test/generators/install_generator_test.rb +14 -0
- data/test/models/attachment_file_test.rb +1 -1
- data/test/test_helper.rb +3 -5
- data/vendor/assets/javascripts/ckeditor/CHANGES.md +53 -0
- data/vendor/assets/javascripts/ckeditor/LICENSE.md +4 -0
- data/vendor/assets/javascripts/ckeditor/adapters/jquery.js +4 -4
- data/vendor/assets/javascripts/ckeditor/ckeditor.js +975 -972
- data/vendor/assets/javascripts/ckeditor/lang/ku.js +1 -1
- data/vendor/assets/javascripts/ckeditor/lang/nb.js +1 -1
- data/vendor/assets/javascripts/ckeditor/lang/ug.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +4 -4
- data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js +4 -3
- data/vendor/assets/javascripts/ckeditor/plugins/about/dialogs/about.js +3 -3
- data/vendor/assets/javascripts/ckeditor/plugins/clipboard/dialogs/paste.js +6 -6
- data/vendor/assets/javascripts/ckeditor/plugins/colordialog/dialogs/colordialog.js +9 -9
- data/vendor/assets/javascripts/ckeditor/plugins/div/dialogs/div.js +8 -8
- data/vendor/assets/javascripts/ckeditor/plugins/find/dialogs/find.js +15 -15
- data/vendor/assets/javascripts/ckeditor/plugins/flash/dialogs/flash.js +13 -13
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/checkbox.js +2 -2
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/hiddenfield.js +2 -2
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/radio.js +4 -4
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/select.js +14 -14
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/textarea.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/textfield.js +3 -3
- data/vendor/assets/javascripts/ckeditor/plugins/forms/images/hiddenfield.gif +0 -0
- data/vendor/assets/javascripts/ckeditor/plugins/icons.png +0 -0
- data/vendor/assets/javascripts/ckeditor/plugins/iframe/dialogs/iframe.js +2 -2
- data/vendor/assets/javascripts/ckeditor/plugins/image/dialogs/image.js +39 -38
- data/vendor/assets/javascripts/ckeditor/plugins/image/images/noimage.png +0 -0
- data/vendor/assets/javascripts/ckeditor/plugins/link/dialogs/anchor.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/link/dialogs/link.js +19 -19
- data/vendor/assets/javascripts/ckeditor/plugins/liststyle/dialogs/liststyle.js +6 -6
- data/vendor/assets/javascripts/ckeditor/plugins/pagebreak/images/pagebreak.gif +0 -0
- data/vendor/assets/javascripts/ckeditor/plugins/pastefromword/filter/default.js +28 -28
- data/vendor/assets/javascripts/ckeditor/plugins/scayt/dialogs/options.js +18 -17
- data/vendor/assets/javascripts/ckeditor/plugins/smiley/dialogs/smiley.js +7 -6
- data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/fr.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/specialchar.js +9 -9
- data/vendor/assets/javascripts/ckeditor/plugins/table/dialogs/table.js +16 -16
- data/vendor/assets/javascripts/ckeditor/plugins/tabletools/dialogs/tableCell.js +11 -11
- data/vendor/assets/javascripts/ckeditor/plugins/templates/dialogs/templates.js +6 -6
- data/vendor/assets/javascripts/ckeditor/plugins/templates/templates/default.js +3 -2
- data/vendor/assets/javascripts/ckeditor/plugins/wsc/dialogs/wsc.js +85 -85
- data/vendor/assets/javascripts/ckeditor/plugins/wsc/dialogs/wsc_ie.js +6 -6
- data/vendor/assets/javascripts/ckeditor/skins/moono/icons.png +0 -0
- data/vendor/assets/javascripts/ckeditor/skins/moono/readme.md +1 -3
- metadata +330 -18
- data/test/dummy/config/initializers/secret_token.rb +0 -7
- data/test/dummy/log/test.log +0 -1238
- data/test/support/controller_hooks.rb +0 -27
- data/test/tmp/app/models/ckeditor/asset.rb +0 -5
- data/test/tmp/app/models/ckeditor/attachment_file.rb +0 -12
- data/test/tmp/app/models/ckeditor/picture.rb +0 -13
- data/test/tmp/config/initializers/ckeditor.rb +0 -39
- data/test/tmp/config/routes.rb +0 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a5ab3c91e941e56450800b6c991093bc7a7e75a8
|
4
|
+
data.tar.gz: 31ad06d98d3826df129a979b4aad38b54e0ddab0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bb2b5f55f0c149b1f1f2c4cc9d2981c3865c734e36caa5821337701d279ee7f40f1791958adbeca284d01a809e27054fb32fb4ba8d276cea674b7fcc8e836c08
|
7
|
+
data.tar.gz: fbf129a97fd6d13ab530e00b3802a4bdcac85e594cee449caf8a09bd7de74572395d502818b4d87743b229653826054b2e3984aa158a3ff883b013ebd4286c16
|
data/Gemfile
CHANGED
@@ -2,7 +2,7 @@ source "http://rubygems.org"
|
|
2
2
|
|
3
3
|
gemspec
|
4
4
|
|
5
|
-
gem "rails", "
|
5
|
+
gem "rails", "4.2.4"
|
6
6
|
|
7
7
|
platforms :mri_18 do
|
8
8
|
group :test do
|
@@ -19,19 +19,22 @@ platforms :ruby do
|
|
19
19
|
end
|
20
20
|
|
21
21
|
group :development, :test do
|
22
|
+
gem 'jquery-rails', '~> 4.0.4'
|
22
23
|
gem "capybara", ">= 0.4.0"
|
23
24
|
gem "mynyml-redgreen", "~> 0.7.1", :require => 'redgreen'
|
24
25
|
end
|
25
26
|
|
26
27
|
group :active_record do
|
27
|
-
gem 'paperclip'
|
28
|
+
gem 'paperclip'
|
28
29
|
gem "carrierwave"
|
29
30
|
gem "dragonfly"
|
30
31
|
gem "mini_magick"
|
32
|
+
gem "refile", require: "refile/rails"
|
33
|
+
gem "refile-mini_magick"
|
31
34
|
end
|
32
35
|
|
33
36
|
group :mongoid do
|
34
|
-
gem
|
37
|
+
gem 'mongoid', '~> 5.0.0'
|
35
38
|
gem "bson_ext"
|
36
39
|
gem 'mongoid-paperclip', :require => 'mongoid_paperclip'
|
37
40
|
gem 'carrierwave-mongoid', :require => 'carrierwave/mongoid'
|
data/README.md
CHANGED
@@ -1,11 +1,14 @@
|
|
1
1
|
# Ckeditor
|
2
2
|
|
3
|
+
[![Build Status](https://semaphoreci.com/api/v1/projects/9c3e4e36-9716-4362-aaa5-ef9644c72313/565007/badge.svg)](https://semaphoreci.com/igor-galeta/ckeditor)
|
4
|
+
[![Code Climate](https://codeclimate.com/github/galetahub/ckeditor/badges/gpa.svg)](https://codeclimate.com/github/galetahub/ckeditor)
|
5
|
+
|
3
6
|
CKEditor is a WYSIWYG text editor designed to simplify web content creation. It brings common word processing features directly to your web pages. Enhance your website experience with our community maintained editor.
|
4
7
|
[ckeditor.com](http://ckeditor.com/)
|
5
8
|
|
6
9
|
## Features
|
7
10
|
|
8
|
-
* Ckeditor version 4.4
|
11
|
+
* Ckeditor version 4.5.4 (full 06 Oct 2015)
|
9
12
|
* Rails 4 integration
|
10
13
|
* Files browser
|
11
14
|
* HTML5 file uploader
|
@@ -61,6 +64,16 @@ gem 'mini_magick'
|
|
61
64
|
rails generate ckeditor:install --orm=active_record --backend=carrierwave
|
62
65
|
```
|
63
66
|
|
67
|
+
#### ActiveRecord + refile
|
68
|
+
|
69
|
+
```
|
70
|
+
gem 'refile', require: "refile/rails"
|
71
|
+
gem 'refile-mini_magick'
|
72
|
+
|
73
|
+
rails generate ckeditor:install --orm=active_record --backend=refile
|
74
|
+
```
|
75
|
+
|
76
|
+
|
64
77
|
#### ActiveRecord + dragonfly
|
65
78
|
|
66
79
|
Requires Dragonfly 1.0 or greater.
|
@@ -146,7 +159,7 @@ Adding a custom toolbar:
|
|
146
159
|
|
147
160
|
CKEDITOR.editorConfig = function (config) {
|
148
161
|
// ... other configuration ...
|
149
|
-
|
162
|
+
|
150
163
|
config.toolbar_mini = [
|
151
164
|
["Bold", "Italic", "Underline", "Strike", "-", "Subscript", "Superscript"],
|
152
165
|
];
|
@@ -291,9 +304,11 @@ en:
|
|
291
304
|
## Tests
|
292
305
|
|
293
306
|
```bash
|
294
|
-
$> rake test
|
295
|
-
$> rake test CKEDITOR_ORM=mongoid
|
307
|
+
$> rake test CKEDITOR_BACKEND=paperclip
|
296
308
|
$> rake test CKEDITOR_BACKEND=carrierwave
|
309
|
+
$> rake test CKEDITOR_BACKEND=refile
|
310
|
+
$> rake test CKEDITOR_BACKEND=dragonfly
|
311
|
+
$> rake test CKEDITOR_ORM=mongoid
|
297
312
|
|
298
313
|
$> rake test:controllers
|
299
314
|
$> rake test:generators
|
@@ -8,13 +8,19 @@ class Ckeditor::ApplicationController < ApplicationController
|
|
8
8
|
protected
|
9
9
|
|
10
10
|
def respond_with_asset(asset)
|
11
|
-
file = params[:CKEditor].blank? ? params[:qqfile] : params[:upload]
|
11
|
+
file = (params[:CKEditor].blank? && params[:responseType] != 'json') ? params[:qqfile] : params[:upload]
|
12
12
|
asset.data = Ckeditor::Http.normalize_param(file, request)
|
13
13
|
|
14
14
|
callback = ckeditor_before_create_asset(asset)
|
15
15
|
|
16
16
|
if callback && asset.save
|
17
|
-
if params[:
|
17
|
+
if params[:responseType] == 'json'
|
18
|
+
render json: {
|
19
|
+
"uploaded" => 1,
|
20
|
+
"fileName" => asset.filename,
|
21
|
+
"url" => asset.url
|
22
|
+
}.to_json
|
23
|
+
elsif params[:CKEditor].blank?
|
18
24
|
render :json => asset.to_json(:only=>[:id, :type])
|
19
25
|
else
|
20
26
|
render :text => %Q"<script type='text/javascript'>
|
@@ -22,7 +28,14 @@ class Ckeditor::ApplicationController < ApplicationController
|
|
22
28
|
</script>"
|
23
29
|
end
|
24
30
|
else
|
25
|
-
if params[:
|
31
|
+
if params[:responseType] == 'json'
|
32
|
+
render json: {
|
33
|
+
"uploaded" => 0,
|
34
|
+
"error" => {
|
35
|
+
"message" => "Upload failed"
|
36
|
+
}
|
37
|
+
}.to_json
|
38
|
+
elsif params[:CKEditor].blank?
|
26
39
|
render :nothing => true, :format => :json
|
27
40
|
else
|
28
41
|
render :text => %Q"<script type='text/javascript'>
|
@@ -1,5 +1,6 @@
|
|
1
1
|
class Ckeditor::AttachmentFilesController < Ckeditor::ApplicationController
|
2
|
-
|
2
|
+
skip_before_action :verify_authenticity_token, only: :create
|
3
|
+
|
3
4
|
def index
|
4
5
|
@attachments = Ckeditor.attachment_file_adapter.find_all(ckeditor_attachment_files_scope)
|
5
6
|
@attachments = Ckeditor::Paginatable.new(@attachments).page(params[:page])
|
@@ -4,14 +4,14 @@
|
|
4
4
|
<%= link_to I18n.t(:upload, :scope => [:ckeditor, :buttons]), 'javascript:void(0)', :class => "add" %>
|
5
5
|
</div>
|
6
6
|
</div>
|
7
|
-
|
7
|
+
|
8
8
|
<div class="fileupload-list">
|
9
|
-
<%= render :partial => 'ckeditor/shared/asset', :collection => @attachments.scoped %>
|
9
|
+
<%= render :partial => 'ckeditor/shared/asset', :collection => @attachments.scoped %>
|
10
10
|
</div>
|
11
11
|
|
12
12
|
<% unless @attachments.last_page? %>
|
13
13
|
<div class="pagination">
|
14
|
-
<%= link_to I18n.t("ckeditor.buttons.next"), params.merge(:page => @attachments.next_page), :class => "next", :rel => "next" %>
|
14
|
+
<%= link_to I18n.t("ckeditor.buttons.next"), ckeditor.attachment_files_path(params.merge(:page => @attachments.next_page)), :class => "next", :rel => "next" %>
|
15
15
|
</div>
|
16
16
|
<% end -%>
|
17
17
|
|
@@ -4,14 +4,14 @@
|
|
4
4
|
<%= link_to I18n.t(:upload, :scope => [:ckeditor, :buttons]), 'javascript:void(0)', :class => "add" %>
|
5
5
|
</div>
|
6
6
|
</div>
|
7
|
-
|
7
|
+
|
8
8
|
<div class="fileupload-list" data-endless="true">
|
9
|
-
<%= render :partial => 'ckeditor/shared/asset', :collection => @pictures.scoped %>
|
9
|
+
<%= render :partial => 'ckeditor/shared/asset', :collection => @pictures.scoped %>
|
10
10
|
</div>
|
11
11
|
|
12
12
|
<% unless @pictures.last_page? %>
|
13
13
|
<div class="pagination">
|
14
|
-
<%= link_to I18n.t("ckeditor.buttons.next"), params.merge(:page => @pictures.next_page), :class => "next", :rel => "next" %>
|
14
|
+
<%= link_to I18n.t("ckeditor.buttons.next"), ckeditor.pictures_path(params.merge(:page => @pictures.next_page)), :class => "next", :rel => "next" %>
|
15
15
|
</div>
|
16
16
|
<% end -%>
|
17
17
|
|
data/lib/ckeditor.rb
CHANGED
@@ -24,6 +24,7 @@ module Ckeditor
|
|
24
24
|
autoload :Paperclip, 'ckeditor/backend/paperclip'
|
25
25
|
autoload :CarrierWave, 'ckeditor/backend/carrierwave'
|
26
26
|
autoload :Dragonfly, 'ckeditor/backend/dragonfly'
|
27
|
+
autoload :Refile, 'ckeditor/backend/refile'
|
27
28
|
end
|
28
29
|
|
29
30
|
IMAGE_TYPES = %w(image/jpeg image/png image/gif image/jpg image/pjpeg image/tiff image/x-png)
|
@@ -0,0 +1,37 @@
|
|
1
|
+
module Ckeditor
|
2
|
+
module Backend
|
3
|
+
module Refile
|
4
|
+
extend ActiveSupport::Concern
|
5
|
+
|
6
|
+
included do
|
7
|
+
validates :data, presence: true
|
8
|
+
delegate :rewind, :download, :to_io, :exists?, :delete, :size, :close, :eof?, :read, to: :data
|
9
|
+
alias_attribute :data_file_name, :data_filename
|
10
|
+
alias_attribute :data_file_size, :data_size
|
11
|
+
end
|
12
|
+
|
13
|
+
class_methods do
|
14
|
+
def attachment_file_types
|
15
|
+
@attachment_file_types ||= Ckeditor.attachment_file_types.map(&:to_s)
|
16
|
+
end
|
17
|
+
|
18
|
+
def image_file_types
|
19
|
+
@image_file_types ||= Ckeditor.image_file_types.map(&:to_s)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
def url(*attrs)
|
24
|
+
::Refile.attachment_url(self, :data, *attrs)
|
25
|
+
end
|
26
|
+
|
27
|
+
def read_dimensions
|
28
|
+
if model.image? && model.has_dimensions?
|
29
|
+
magick = MiniMagick::Image.open(model.to_io)
|
30
|
+
model.width = magick.width
|
31
|
+
model.height = magick.height
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
data/lib/ckeditor/version.rb
CHANGED
@@ -13,7 +13,7 @@ module Ckeditor
|
|
13
13
|
:desc => "Backend processor for upload support"
|
14
14
|
|
15
15
|
class_option :backend, :type => :string, :default => 'paperclip',
|
16
|
-
:desc => "paperclip (default), carrierwave, or dragonfly"
|
16
|
+
:desc => "paperclip (default), carrierwave, refile or dragonfly"
|
17
17
|
|
18
18
|
def self.source_root
|
19
19
|
@source_root ||= File.expand_path(File.join(File.dirname(__FILE__), 'templates'))
|
@@ -1,23 +1,23 @@
|
|
1
1
|
class CreateCkeditorAssets < ActiveRecord::Migration
|
2
2
|
def self.up
|
3
3
|
create_table :ckeditor_assets do |t|
|
4
|
-
t.string :data_file_name, :
|
4
|
+
t.string :data_file_name, null: false
|
5
5
|
t.string :data_content_type
|
6
6
|
t.integer :data_file_size
|
7
7
|
|
8
8
|
t.integer :assetable_id
|
9
|
-
t.string :assetable_type, :
|
10
|
-
t.string :type, :
|
9
|
+
t.string :assetable_type, limit: 30
|
10
|
+
t.string :type, limit: 30
|
11
11
|
|
12
12
|
# Uncomment it to save images dimensions, if your need it
|
13
13
|
t.integer :width
|
14
14
|
t.integer :height
|
15
15
|
|
16
|
-
t.timestamps
|
16
|
+
t.timestamps null: false
|
17
17
|
end
|
18
18
|
|
19
|
-
add_index
|
20
|
-
add_index
|
19
|
+
add_index :ckeditor_assets, ["assetable_type", "type", "assetable_id"], name: "idx_ckeditor_assetable_type"
|
20
|
+
add_index :ckeditor_assets, ["assetable_type", "assetable_id"], name: "idx_ckeditor_assetable"
|
21
21
|
end
|
22
22
|
|
23
23
|
def self.down
|
@@ -0,0 +1,28 @@
|
|
1
|
+
class CreateCkeditorAssets < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :ckeditor_assets do |t|
|
4
|
+
t.string :data_id, :null => false
|
5
|
+
t.string :data_filename, :null => false
|
6
|
+
t.integer :data_size
|
7
|
+
t.string :data_content_type
|
8
|
+
|
9
|
+
|
10
|
+
t.integer :assetable_id
|
11
|
+
t.string :assetable_type, :limit => 30
|
12
|
+
t.string :type, :limit => 30
|
13
|
+
|
14
|
+
# Uncomment it to save images dimensions, if your need it
|
15
|
+
t.integer :width
|
16
|
+
t.integer :height
|
17
|
+
|
18
|
+
t.timestamps
|
19
|
+
end
|
20
|
+
|
21
|
+
add_index "ckeditor_assets", ["assetable_type", "type", "assetable_id"], :name => "idx_ckeditor_assetable_type"
|
22
|
+
add_index "ckeditor_assets", ["assetable_type", "assetable_id"], :name => "idx_ckeditor_assetable"
|
23
|
+
end
|
24
|
+
|
25
|
+
def self.down
|
26
|
+
drop_table :ckeditor_assets
|
27
|
+
end
|
28
|
+
end
|
@@ -2,9 +2,10 @@ class Ckeditor::AttachmentFile < Ckeditor::Asset
|
|
2
2
|
has_mongoid_attached_file :data,
|
3
3
|
:url => "/ckeditor_assets/attachments/:id/:filename",
|
4
4
|
:path => ":rails_root/public/ckeditor_assets/attachments/:id/:filename"
|
5
|
-
|
5
|
+
|
6
|
+
validates_attachment_presence :data
|
6
7
|
validates_attachment_size :data, :less_than => 100.megabytes
|
7
|
-
|
8
|
+
do_not_validate_attachment_file_type :data
|
8
9
|
|
9
10
|
def url_thumb
|
10
11
|
@url_thumb ||= Ckeditor::Utils.filethumb(filename)
|
@@ -4,10 +4,10 @@ class AttachmentFilesControllerTest < ActionController::TestCase
|
|
4
4
|
tests Ckeditor::AttachmentFilesController
|
5
5
|
|
6
6
|
include RawPost
|
7
|
-
include ControllerHooks
|
8
7
|
|
9
8
|
def setup
|
10
9
|
@attachment = fixture_file_upload('files/rails.tar.gz', 'application/x-gzip')
|
10
|
+
@routes = Ckeditor::Engine.routes
|
11
11
|
end
|
12
12
|
|
13
13
|
def teardown
|
@@ -47,7 +47,7 @@ class AttachmentFilesControllerTest < ActionController::TestCase
|
|
47
47
|
|
48
48
|
test "invalid params for create action" do
|
49
49
|
assert_no_difference 'Ckeditor::AttachmentFile.count' do
|
50
|
-
post :create, :qqfile => nil
|
50
|
+
post :create, :qqfile => nil, :format => :html
|
51
51
|
end
|
52
52
|
end
|
53
53
|
|
@@ -4,11 +4,10 @@ class PicturesControllerTest < ActionController::TestCase
|
|
4
4
|
tests Ckeditor::PicturesController
|
5
5
|
|
6
6
|
include RawPost
|
7
|
-
|
8
|
-
include ControllerHooks
|
9
|
-
|
7
|
+
|
10
8
|
def setup
|
11
9
|
@image = fixture_file_upload('files/rails.png', 'image/png')
|
10
|
+
@routes = Ckeditor::Engine.routes
|
12
11
|
end
|
13
12
|
|
14
13
|
def teardown
|
@@ -48,7 +47,7 @@ class PicturesControllerTest < ActionController::TestCase
|
|
48
47
|
|
49
48
|
test "invalid params for create action" do
|
50
49
|
assert_no_difference 'Ckeditor::Picture.count' do
|
51
|
-
post :create, :qqfile => nil
|
50
|
+
post :create, :qqfile => nil, :format => :html
|
52
51
|
end
|
53
52
|
end
|
54
53
|
|