help_engine 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/MIT-LICENSE +20 -0
- data/README.rdoc +129 -0
- data/Rakefile +37 -0
- data/app/assets/javascripts/help_engine/application.js +13 -0
- data/app/assets/javascripts/help_engine/help_pages.js +2 -0
- data/app/assets/stylesheets/help_engine/application.css +15 -0
- data/app/assets/stylesheets/help_engine/help_pages.css +4 -0
- data/app/controllers/help_engine/application_controller.rb +4 -0
- data/app/controllers/help_engine/help_pages_controller.rb +62 -0
- data/app/helpers/help_engine/application_helper.rb +4 -0
- data/app/helpers/help_engine/help_pages_helper.rb +4 -0
- data/app/models/help_engine/help_page.rb +26 -0
- data/app/views/help_engine/help_pages/_form.html.erb +43 -0
- data/app/views/help_engine/help_pages/edit.html.erb +8 -0
- data/app/views/help_engine/help_pages/index.html.erb +21 -0
- data/app/views/help_engine/help_pages/new.html.erb +7 -0
- data/app/views/help_engine/help_pages/show.html.erb +16 -0
- data/app/views/layouts/help_engine/application.html.erb +14 -0
- data/config/routes.rb +6 -0
- data/db/migrate/20150728142457_create_help_engine_help_pages.rb +11 -0
- data/db/migrate/20150729102332_add_author_to_help_pages.rb +6 -0
- data/lib/help_engine.rb +4 -0
- data/lib/help_engine/engine.rb +6 -0
- data/lib/help_engine/version.rb +9 -0
- data/lib/tasks/help_engine_tasks.rake +4 -0
- data/test/controllers/help_engine/help_pages_controller_test.rb +51 -0
- data/test/dummy/README.rdoc +28 -0
- data/test/dummy/Rakefile +6 -0
- data/test/dummy/app/assets/javascripts/application.js +15 -0
- data/test/dummy/app/assets/javascripts/home.js +2 -0
- data/test/dummy/app/assets/stylesheets/application.css +15 -0
- data/test/dummy/app/assets/stylesheets/help_pages.css +20 -0
- data/test/dummy/app/assets/stylesheets/home.css +4 -0
- data/test/dummy/app/controllers/application_controller.rb +5 -0
- data/test/dummy/app/controllers/home_controller.rb +4 -0
- data/test/dummy/app/helpers/application_helper.rb +2 -0
- data/test/dummy/app/helpers/home_helper.rb +2 -0
- data/test/dummy/app/models/user.rb +5 -0
- data/test/dummy/app/views/home/index.html.erb +12 -0
- data/test/dummy/app/views/layouts/application.html.erb +14 -0
- data/test/dummy/app/views/layouts/help_engine/application.html.erb +18 -0
- data/test/dummy/bin/bundle +3 -0
- data/test/dummy/bin/rails +4 -0
- data/test/dummy/bin/rake +4 -0
- data/test/dummy/bin/setup +29 -0
- data/test/dummy/config.ru +4 -0
- data/test/dummy/config/application.rb +26 -0
- data/test/dummy/config/boot.rb +5 -0
- data/test/dummy/config/database.yml +25 -0
- data/test/dummy/config/environment.rb +5 -0
- data/test/dummy/config/environments/development.rb +41 -0
- data/test/dummy/config/environments/production.rb +79 -0
- data/test/dummy/config/environments/test.rb +42 -0
- data/test/dummy/config/initializers/assets.rb +11 -0
- data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
- data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/test/dummy/config/initializers/inflections.rb +16 -0
- data/test/dummy/config/initializers/mime_types.rb +4 -0
- data/test/dummy/config/initializers/session_store.rb +3 -0
- data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/test/dummy/config/locales/en.yml +23 -0
- data/test/dummy/config/routes.rb +7 -0
- data/test/dummy/config/secrets.yml +22 -0
- data/test/dummy/db/development.sqlite3 +0 -0
- data/test/dummy/db/migrate/20150729103806_create_users.rb +9 -0
- data/test/dummy/db/schema.rb +35 -0
- data/test/dummy/db/test.sqlite3 +0 -0
- data/test/dummy/log/development.log +2577 -0
- data/test/dummy/log/test.log +4807 -0
- data/test/dummy/public/404.html +67 -0
- data/test/dummy/public/422.html +67 -0
- data/test/dummy/public/500.html +66 -0
- data/test/dummy/public/favicon.ico +0 -0
- data/test/dummy/test/controllers/home_controller_test.rb +9 -0
- data/test/dummy/test/models/user_test.rb +9 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-Nb4-glReZdOKM_Esl7KrX92gAxxwYEv8r--wpZ2AnA.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-RR_kQxJmSk1g8TuaR2k4oANAObXi9ihZHDzUmFOX9Q.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-SrnqbERIC3yCdUkYkP-rPk7YYSdasLVe5vPA-vjtg0.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-k8puMC5Eqq6HNuUcyMyC9b78TTRu36rmHqsWorU0Rg.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-pRet6NBrdPzO2QxMHMOcMoELMzGgToR9sQNAmznfB4.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0-wSSu36D6YrVvOEj8KTvT9NZVstyzMsss71WxcWE60.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0bBd9lLlffpC5NrKPStP2gtkZFCZeDyYK_870IBS5SM.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/10wTpXRpIK4-8G3BjoDc0_xGhrrRPOHP0-o9bRTX6p4.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/1_xxc9tRuRrqPRzlqPnAoeQ5-8rHxUmAoMmAEeQiIpo.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/1nDlh0ykt8Un7ek3I2DnMcQQhsWf60Qcl8ow8vHoEHw.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/2BtI15iY6obksxZAGwKu_op6HNJtOhFF2aZvua1k9Cg.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/2djTcaWqFaQvR0HOvOw9uoO7_DFJJpA_FnuDOdOimmE.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/3TfD7ggCUdf1U6vk_vfAMl4rhie387905faEZ-rhzxk.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/3TxoC4FlqW4lpUG06QUzYHcwAOwojOnV4ogODWK87KY.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/4BsnUTinY20xJE6EFwVUWY5D3idM3ZN3zhvMUwLTmzw.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/4MEISqDP9AuOkU4GwbUg6iyvTE8ygI74ogDCjkGoR8w.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/4ZwzEDZKiwYjFWukk0vJIHEbxea9ighL5FM8Rtg6oLc.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/5-X-YnySPf01eBTwek6E3a7QtAmUsMIm8aTSRyhYlYM.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/5MYrDqzNBlq_JRGZzXuyY00F2Wc43q7gIMDTx6bttz4.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/5MuSqebc80HX46DcID0bPxVZZ42bwO4v4WfhuNh255U.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/6Qyv1ZFaOcMRDd8UXRKi1x9_0Bu5ChywyzqekVjU8Wg.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/6ebKLq_GMaP1oFAYPCwdeADib3Uw9-nGNqxEpdCeBIU.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/7ezy78ekarp49sWLRBkvH9uT4JPg_-CtTwYoWI8w7GI.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/85aWm6sGrUUerMv2-j2cG91tNv3c9wsC76lcdF-syYI.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/8j4_9U3kUmOrYQ7Tx4MFN2kQwmFaOcGuH5axXdNN1Rw.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9331DNeUloM2h0916fHV3fO2Ifqk-X7g0XUckf0SPIc.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9H4RyRYnQcPWacSEHsYjkhaE_mkO0HnegiC1CxLtt_A.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9MMsnVuoBXcTv6IQiV-mPN9uamLm08vRYlJaxhYvqTU.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9RauYKcVeOYCaLLYxxQrIHbZmlOdarost3wpQjnHtvI.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9pfGliw2FZwEqbhVshzHoNhTfQ2hEIOCuABOjgmk8gg.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/A1Bb1d6kchtoem2iyBnxBRo2uSaZH41uPTk0cWoO4us.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/A41MT8xWUFUMbKAP5IBvFZPFxSOy1FSR52U0Ktn9iEk.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/AEYT92WiWCWnqMEKRJPXHrEC7l3FxAqj4dFeiUefPsU.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/BAR5AVm4w0xcnQnlvdPY4i69kq_v6TMQNdSFbHVO7XA.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Bp0DK6a8wU14_66pgM08FDTiEd6sb7ok66GKNK060Jo.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/CBKqi865QK6HEAe65svLVGpw8xmoNy_2JRbquR0hcJI.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/CvFDw1yH4H0djF_P-YoONcq5hRuAzx9pt3EoTs8TPSc.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/CycC8E9Nl8m3jFr_n0WQsIKUpcD1x9DyIJZR9YZxqZo.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/DGLzz83PV8JVIe-BNCaxduT-qYwbcY2ew6taWisVmyA.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/DZsqP2fG66FVJ9wACqzE6GRdEIWFU4cU4wUqxCU1zYo.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/DtMSdtj9n2ytUFD3eJvg8HlYO7qtOAS6W8z3GofBjd4.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/DvUSkkPQMvL1zbjDlHbdiM8hyjNarRqgPeaxOKQ-HLU.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/E4ps_R4XOwRWjpyl2V3QgwJ-aMh9ZSE1mPOwhTcG5zc.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/EeS3BFGFUeQO5qckSqB1dHwRwKJEdjZdJdO7dkhJbys.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ExxhUhA_vbDgLz2_zm67qEg9MVnXrMK5lHlXNcosJSE.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/FENM70mwHD12tlpTOl-rJOMGVx0RIRGKJ43eoHpJKgo.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/FMmFnmqmpxwGkxKK2lZ1my5bm3fG-YcaE3WFsCT2-zU.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Fzye4VhJ6oTXduFYFOZxRMjeUwRT6k3ITuqdgnUlK_s.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/GgRnRvCy7r7DbhcdWa4Vgbwm6NO0TH6h7SWBAajGGuM.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/GwFMPQD-mpnVD8XDSKLYxiH9FkFTkU-Vq3g_HDL3TlY.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/HD4BLfAwO5nwHYONRfQ9g6BHotw8zrMBmejMD7LM6CA.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/HF7sO3rKF1kYr62za8FhiMHUy5xn-NVWZZ9Yc3PhJUY.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/I9qCp4PmRBzDH2-zCGniLq23anE0q3TPqxz9KKohfHg.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/IOY-FXTXyAAWf-j7hGKCa7alYl3iH-RfAKQW6WNCQlg.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Idsm4w6u3zo8zdP5-1h6STs7F57b3lkeiPYSth33WtQ.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/IjlhS97MX3BYWw2zAgOaKiWjPLJUKSmoQUR5y-V0EIo.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/JH_9SiwprSalodbxuZDN1nm0f2sqb8LcXAxwbDaM2SQ.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/JRTp5o-2OLdgSf98RfB6ncFrr1PD4prDvoH2qZ6Cq2o.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/JlhpehI1KNUzskYuR9aSN8xfHovA4iKoVx6BgwkKuiU.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/KFlrgefvmmJ6s-sUxrVgQBpf26Zlwj2ZogFfmnNgRwI.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/KOGWaPIWpqLN-H2rR-73N8VcvpdOw3oSFq_HYivvqMw.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/KZGKo3_Ux0XnCZFDkMycBhf6j-wzqvH0Ys9XGOs9Qjc.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/L1OB9MCMq8NyBSHIl846wLHe7PAca78GXxaeaSIwYOk.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Lch11aVa7EVBPeHjQ0EQWVaMX2r0WzrcXwk6K9lbQ88.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/LcvBwyVWxnfbdE97Htj4w4SPhxLkbg813H6mtTPvIbg.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/M1PC1qa68zhJ1Q7pqHL3-yTu0gMQPirKybzrY2UBVr0.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/M7Xa9LBFtGAlgUb6Q8mPF2LPXAd--dGDvGVQA6LOL6k.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/M7gh2NlRVfGTxBrZi-1yaDdvr5y9fDb3D8fiNrzPaL8.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MQxwmzY47y51HIaJJqT4PR8jjfGacV0JzDeMyZ-dhdI.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MSNOSPCypCKz0zgpfKanvRFBvymb6o47iY3hPNo84Dg.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MWrFZxIQI7bA-Ozd3k87Zk5hhVBpCoYoQtdAXxGqFxs.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Mb6TBKH27Qpq8cxbnJU9cUtct_O4qLFK0kW-l6gA0xQ.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MtNORCmZF38gLTPApAu-rMwhHyo3urZjJekQWrYXW_U.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Mw2RiLPFUHhY-c2C5q8Qj9TFJkzaxYpJyyvMrLWi3mo.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/NM_SZTEvLjOBXcUZ8v5Lc_-6rSO9gWrr5BcTib0YK58.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/NRdeCMKMfp51PHF9NoC3CLtcqt71XCP7xncuLANrQLo.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/NauBwmu3NDN391OwfpI6htxUdkYQTsl8jYfiFEzNtgs.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Nd1g7HF7QpmY6CJh8VR5uLbiL293rHFeMC9WViilfQ0.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/O-t6Ggj54B2qkRhh1UMw6ZTd4rSUbduRM9SgZ0Yufq4.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ODM1A0-MTQZVePxRPmlxnwYfsALTxYwTwqC6PZEL3Yc.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Oiz-vHY3zrmg7XihrDI8C7noKItrw4j-FojzjwLFtTg.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/OwWFiU8nu0cyFo-qlZVbwtt4aqDFz2YY0vxAx3SdHgo.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/P4tpW6voOWJN13IMYPV8BBcLb72dRL_oAnqtvMD6noM.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/PC2ixqxq-lebKpZkX6uvl7j2JbYofNZu3aZu8bJXazA.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/PbjhPnVxp2FymXtEbSopxzJW24ZBb8v8dfP0GF8cs3w.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/PhIruj_HREkekapCGv-Ymdy4fnGt_SBsNaJ-wR_Qx54.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/QBBPmCl_6JNM_Y5k_ujXJZNA1E589Ur5Luf6AsyQieI.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/QDAxf5JNyFd7ih2W6fGiB6N8YTs5O9W3U9-lVxNwv1g.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/QHCbzhO15ATU0NuZmkLpExRZ2wpi9ztEMRjMoz9V0_A.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/QK3bZcd-qzW-01w1uj3PAmvefd5pYkD9vfU59Yf_VmA.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Qh5AIYThgPQl0gPfMFhAo9KfuSevsNudEJAvyEFt8ew.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/REY5IzKwDFZscj7cqC7HI6VXQ3k7ieBpk9yZf3K69cE.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RQCa4tO2WXNmk0f_HEYQxgGScUSVxDx2Dbt0aUobbFA.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RnNZ-GVb5UaUqjPyexe8APGVCj11NS3ZlsMLjGIsTak.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Rno-aq0MC3-qdT_XOMgydcIVTn3yRBlaTjLs_Eahw5E.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RxCAisceBtWwHnx94h1xl_FRFVjk_ALZHbuC_pMcKY0.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Sk0BOffT2A-aKDBwfROvAhqgoNwcMhz-aR-7-xWGCqQ.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/T8xX--TijEeVuS4vsG8a4_VLKUmMPz8gwspwrT39iIY.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/TDa2enNs4phk4vgd7U9eQ44EtsH9iQOP4OMXS0_6p6w.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/TQdtMRNwWOXYBcACj1cNfCnaWdkOOKwH02sIY6AyI4g.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/TgngM2fqhT7BBipJtIQDv9iGcIkIZ9pdhG7IzWNhDdA.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/U-txrV0CTBAuDhviFEz3zd3oxqxQaS7mK8W9mp4Mz2w.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/U2IPuMvgFxaOgEbp7r-EGN_MX60Z09FG8IDOc33XnI8.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/U3zSnR8VhP_2qPfLexPdXVZ4afUNHX5_5vY68omY5wk.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/UtRWeM1x-3QwudOxpG1qbMG8l_5Y-vvbBOI7VgtDgzk.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/V2FIUY59Yxsb0NO5ix_ilKfhKkPE_vWE96YYPukXNTo.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/VDQBTPkN-ZyEOinFwsghasae4a5wWFKPQqIMit3SNKk.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/VE6y9lGSVXFe-LzmlSZTLpG1jPuTY2h56WJB_r1w--U.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/VPe4_OC_7A1qIRTwC3X1ZYpQa6B9Uuy8HLhWbsFQ3aM.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/VT-NSsaMUAEM1SI0lxmreA2QbB_T1hAdWEAQX8y06KQ.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/VXh2hNNorD83XwRzrNTliFpnTCfQWx6a9pfpoSNJlyY.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/W7cEJ0L-lIA_Iu3G6Rdji3Ua-VTp1kI-Pluh2XsZLCM.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/WCl46w9VIXhadqORL1t7hAn4Ec5Gifv-27kzOlVkE-s.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/WIMN8AIbUCT--KnKwRLSZru3_NWleSPvgVeknrhhntY.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/WOikv3V-OnDxVe19Z5QYg928sMi_arKEpDbLF_R-baA.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/XBuebWu06BPBrs9UmgEwYyKqfzuuJIdcwY_aFtOthPo.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/XVvEqq8PZcKciXp7XXR5yeIJD1nVSWH0ZDXxzoyImIs.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Y3Oo3YLpvKbuAo9kgfwexh8PshAPo4pRDD1uOfFKwVw.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/YNxv-6FPDnTHBcleGVvnjo2tt1RbVsFh0flNZc1iUF0.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ZvQlqydPyQ3NgGJxrmV8ct_VPWQJhZWC0AOWRHFlrQE.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/_8dVD0cWSRaWZvF1hlj4hnt-5m-ef9B4VR0g601NNSM.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/_X37QmnQjXiS_ciF3Tv2OPlEYqJ5CONpe1MusaBPlrs.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/_ud6IsnSMUB7AFlxdL2wfFHt9e27OFaMT8w4Hhi8s3s.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/_unkFsywRc1IQUNrgmuli0vO85WUBKIwVdjsgg3CttE.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/aAS-OSOt39twsAhZ99wbPW-VePQx8y73lyDfzesjyOA.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/aSpwDIPZvLCzgg6eQ6CBYrPcWfZQj1hExnj2bZuRS7o.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/b3ykymahF_f-VnArN5YR4ABhdb1nhYlFC14vUDfQyrA.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cPmlWj7lvZ6UJv565rT9Yf4p2itgp68b8AUm5FzTZLA.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/caBfnmAR3oO1yjmya7RGKBYDp8FbJ98vbE6oujzfmdo.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/crsxC4Ikcv-LjlOk6kbrvpFX_kwS6L_ZuCFfmtcqJ3g.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/dam4xeft-4pxJur4mOVZyEr00BbD3P2fZlJJLDBCW4k.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/deW3RdnDWk7eKNfNaPTndnMBS-C5Uejme5QbIwV_DFE.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/eSSl4nM-pHeKRM49gXvzCz6G_Z3s6sO0NuSasWl_guU.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/efpqwE725HhsNQs_pImHXdYWLBRkpKccWFxah3Mgrg8.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/exTl_KFHjcHI_yZnLurj8IX2Wf5aU4fF8KuQS_zwRlU.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/fA2p2ZvO4FoVN_JiRuXgn1QjTTnyXth5bSywCqDC3D4.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/fvqqXy74j0pkvDiYupbSywtHJb8Zaj2no2awsxmN080.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/gKweYCa8rcDoyO2NEl9sWZQTaBMPxyS0N3GlCKJH-dk.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/gkZuJaPRfMY67pzHWGAvS8fY3A_8Wy6lHAt8jZjc-RA.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/gvLDa5XGwSj3L5oZiQ94ZsnwY5CHS8qX2BliHyhUXGo.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/hPff0eEhvhdthhYgdHy3lzeNZ6cvhDzQo423PYr9pOo.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/i6wcQuMV92ZYfW22B1MudB23VrRPGzXB_F93-__pDTk.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/iEkuA2D_doNDfSkOynSJxE4hcKEv4n-ubxiW85zYBkM.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/io9mD7x5wFh97DDeLqB6z8G306olUZC0ZQ84iHMZAro.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/jPX_s7R9Y9Tx62x3BSdnJgcc2fuTlxZfIsf5VIy56bQ.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/k0Wj-zYEFyY7FYmy76a8cDpFBOZUzOoWtpTt-tpk3cg.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/k1-xgyd9Qgfi9ud2kiflYrHmX9WeP8hRdLKnL5WRtzc.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/k1VysugytfQfsmfyfuBdbNu-StUicfHR62A7geolXjo.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/kUCHSLInGsexuLlZ_wAg4HlaEc0PpVNedulsjuAR9xk.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/lQq-Tpm4qUuP2cNQrF1kJQlcYyp-4DkSbPyywRjB7EU.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/lSKeX0hb4g_BdOr5mS-N-GPWK-bOfUDKaUxwWPY4Bnc.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/l_NttTk8glBXTbELzF22gXG3O2as7dW3WK01jezGSi8.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/le3lWrLzZBtpidZgBJKf3dYop_ZfPcqZRVBw8zNID_E.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/lmI9T0rmkVx-nfDZzH3otGBc8XDUulhF6_IBVDwLR6s.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/lpZxgXXOQ-_cQ5QAkazer4uKIN29hyUzK819qscqy9c.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/meGcwF7aSx0DI6roHb64NuIydoA0sBf1--7fMIvPMIk.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/mfRvZs-7xZ4l5rmcRPsx_2PrIt8yy8x07EX1svQggmw.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ms6DIHGMHdSmp2E3Qag2dM3nEpuraKkYPXOer9VqeiI.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nNH1DxPzbNldMpL9AoZLagNwZMzBWDtBijp2oRde3qU.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ogryVIUzLqai9RFlk_9f1BHE2jaT5pCkuzPJc6HUi14.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/oohjElyBvDP5_IEsAmTkOGRy8zPR8t9y0Mt4Lfz7wCc.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/p2-oKPIsNm7gfEoPR3fSemp4FHNzmkBlKDKtI-c-RbU.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/q45JteXUa8iW35xv164yY8EGpnSDDrPoqUTf9ok5SAM.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/qxVZ61uwoSYgk5oQil9oJsK_mW-4Iu0OyzLaowE9QY4.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/rEIAYiWN0KehRrvEQ21kF8WGbaXAUfFveeU_-PA_P80.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/rokmpmn65Y0E8f0mS7tpUGqZH_-nDqKwXJaJrT2QzXM.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/rvK0pxfJz2x0qVixalWGBt6eImJsXUWsyUikhjFwKhg.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/s7fQQ43jB6mjRFIz15dLVI3dEYE5iV_2wC-UKE7Eqbs.cache +2 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/sDa1E7GLMXpwYf2zCQHKEtZ1J69eLwo4h3-zjmuK6O0.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/sZ8K3Y4HlxDnWUkSuBm9Y9-kgjgQ5mhoXULi0qwyppI.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/sw2BwHXpuM7qfRX9jfeVnZE92JprkTSjQVC2fOVpx6k.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/t3BapNcJdpGFBCR0zx51zIOCZxbgUFoPVSyOLEvzKF8.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/taFCQLLdXXCgg5G2PJmmJw7WAy_kOhjGK7xdFqDe4RU.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ttACw2Hkiu3aMFohPEpPkoV3CC-NCHbL_9r9IgM9J6w.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/unaOvA_qtYauqiV5Bz8XK5Rq37dpo4i60tq1Yrw25YA.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vBU_oQb5K0cQryFOvHBC4U1ktEYub1O9QU6Ch6NnbL0.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vEdmkyFUgEwIqJIci63zqfK3YYu_WUeZMJ7g69NUZvI.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/wED6wq_166nc6Y6_JqRlmSW-u8U6OvHA9JOi0cjtAVk.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/xJxbntYgnCUF_3FJ6ax-Md8iE3aMxqFpUqxSKjKTFzc.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/xm4ynjEHIwAlkT7UWVtq5abB7ymHiphYNIwSFCuNA-0.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/y6y7_CdSNWHZxnMgfTQXFRfIBVBHsnRwQKYbyytK4eA.cache +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/yQsm0KL_rBq3n-Zpk60cYbU-qKLDl_4VxoBLJEw9JP4.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/yUZ4CZcVHpXC6prvIuccXFjhVLQnNeAge7fwOyVHkiA.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/yscXmDNt87n8gaZAGLo4Eggj3ta6wm-d9CGzb8Coj4c.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/yvg4LuqachT4wmGP6bfmq070O1S-5_jKMGPQ5YcWBbI.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/z18bIGxlzN8ON488PL1F3wh_NWsD4egV63lcn_YzZDI.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/zMheImdnv7QXtIkUnaLRmGRbBT2xLdUXqdkIY7Yovzg.cache +1 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/zc02B6j1sJ4uh9IrrDXOJM1tqG243hIUwDGp9Ejketw.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/-SrnqbERIC3yCdUkYkP-rPk7YYSdasLVe5vPA-vjtg0.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0-wSSu36D6YrVvOEj8KTvT9NZVstyzMsss71WxcWE60.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/15KZXWmY-aFT8cfE5uPBBSNKqH13bGGNJNXxDE0V-WA.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/19SfRzGsjgrb5Xcr8FDkrPLF9E73cgBrQ-_dgZx6fLQ.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/2HeIUhXyK0DMffcAADE4tUx4tIptmnFpNf-xPnhUTsA.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/2Wv7aG9_L8ihkDwzJutxgUNL1oQbvEm9vFNZCqf0o0Q.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/2eCAcwlE8cvpvDwGOR0y3RdwFxG-Uo9FPJ-XveNx9O0.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/4Ba7mPK3joTmHTnH7ZwaxeAwKpG_ahrqJEycH0L3dKU.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/4E9yI-01GR8FocF_RPq7jPb_r6v5OJzBIQ6ndSZY6Ac.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5MYrDqzNBlq_JRGZzXuyY00F2Wc43q7gIMDTx6bttz4.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5eqR7HQXbdX7FZOCiKXGizHkkiUThEXNzi-mss2oyU8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5rCRVAkiUUcxvARZIYiC73ML6sRwDjoJUN7qrt5mEf0.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/7X9WxqLdRdr5WA434P8ZsB-6b5uRrFpb3yzvnKhVObM.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/89kpDv8soAyWeuOO2i-QTOu2O530SFQepqyPkngtTuY.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/8cpYQaSX4IrLGgqAE90uP3m7DwF4ttXHLvXh1b1TflA.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/9RauYKcVeOYCaLLYxxQrIHbZmlOdarost3wpQjnHtvI.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/9g6uuOnPA6ZFbDsmFpjGovay8vCHBnegImxETwz9YrQ.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/A41MT8xWUFUMbKAP5IBvFZPFxSOy1FSR52U0Ktn9iEk.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/A_Mgj2T1HUV28jFN8rT-rLYGJ13jDCyg0svfAlyKEL4.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/BAR5AVm4w0xcnQnlvdPY4i69kq_v6TMQNdSFbHVO7XA.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/BrQRHDuvOBGooyPjkGrxctLYGOrn4uT7PhMJButdA8Y.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/C0ko33oWWmWdbhO1CNTtbwZOPFCKmKzFjbGdDkiv4FU.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/CkaXMc3KAzjZwVE5P18M2IZuY0mr-S9xOy_JLF1O34A.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/CvFDw1yH4H0djF_P-YoONcq5hRuAzx9pt3EoTs8TPSc.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/DtMSdtj9n2ytUFD3eJvg8HlYO7qtOAS6W8z3GofBjd4.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ExLV9IbvCa6biJfZc9kz8aUGf1omcv9BT-Iv6ENlEGY.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ExxhUhA_vbDgLz2_zm67qEg9MVnXrMK5lHlXNcosJSE.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Fzye4VhJ6oTXduFYFOZxRMjeUwRT6k3ITuqdgnUlK_s.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Hm48qbwMCX51daTUhsKKI2IcZkyUDS_5Pmns086ZT1Q.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/IlEZID7P7ZVuy7SK_GL5_Vy8EjZsJ7t74fPKxJuDutE.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/JCbwFtZjWws4K6hFGdKhaCexIEvC_lrd39Z5meCKA_4.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/KFlrgefvmmJ6s-sUxrVgQBpf26Zlwj2ZogFfmnNgRwI.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/KZGKo3_Ux0XnCZFDkMycBhf6j-wzqvH0Ys9XGOs9Qjc.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Kfo91zwBZGXKtgASjSHe5avxDfcqZLqIfHlO72uPr3w.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/LnUMPDCEx2BPZ8zzIkuHYj9iMha9lAhsPqhj_kv_jf8.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/M1PC1qa68zhJ1Q7pqHL3-yTu0gMQPirKybzrY2UBVr0.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/M7Xa9LBFtGAlgUb6Q8mPF2LPXAd--dGDvGVQA6LOL6k.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/MRYSMH-zr35cGm9bC22ILGGASlskif4O8H4Gz_5lyzE.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Mw2RiLPFUHhY-c2C5q8Qj9TFJkzaxYpJyyvMrLWi3mo.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/NauBwmu3NDN391OwfpI6htxUdkYQTsl8jYfiFEzNtgs.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/NlIm1jpBl1-zaQ8sM07bAjuXYLGZ2S4fvhBjV-XXkz8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ODM1A0-MTQZVePxRPmlxnwYfsALTxYwTwqC6PZEL3Yc.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/Q-6S0HsMGmjZNY5_x9vDBghdsqjDW3aGZYaiBW5m4Bs.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/QBBPmCl_6JNM_Y5k_ujXJZNA1E589Ur5Luf6AsyQieI.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/QHCbzhO15ATU0NuZmkLpExRZ2wpi9ztEMRjMoz9V0_A.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/QK3bZcd-qzW-01w1uj3PAmvefd5pYkD9vfU59Yf_VmA.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/R1scqanKcVlkycl6Ouf-cwXlvjbLhRhGPWjUnMa-vp8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/R5KbPrgxlHuiTZST-jImOtLLQ8gbmpwq0zyoWDcTS6Q.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/R94VaxbcphivWsNPXAgGs5TU8bWoqQbMII8hrluLWms.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/VE6y9lGSVXFe-LzmlSZTLpG1jPuTY2h56WJB_r1w--U.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/VT-NSsaMUAEM1SI0lxmreA2QbB_T1hAdWEAQX8y06KQ.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/VXh2hNNorD83XwRzrNTliFpnTCfQWx6a9pfpoSNJlyY.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/VsTsAUxhiLZLSntLPFPbDvJdIYb8o-dPZqhkr99XSYk.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/W7cEJ0L-lIA_Iu3G6Rdji3Ua-VTp1kI-Pluh2XsZLCM.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/XGaYTcjNgGZSAJGgrLPQyRdz3qdvyNEF_8HfEAwmzPE.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/XVvEqq8PZcKciXp7XXR5yeIJD1nVSWH0ZDXxzoyImIs.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/YU9fg437IkM6XV3YEBoys93u9NOibdIVqrrUaacwyw4.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_unkFsywRc1IQUNrgmuli0vO85WUBKIwVdjsgg3CttE.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/arfkUa3-jw-eyzFARfHPs1UYXp9wmKNBkpRjv37CRCk.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/cJZIaZpFuXo9qi32ptFX8Ss5L5z2Axl5le0zXSuI7mk.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/deW3RdnDWk7eKNfNaPTndnMBS-C5Uejme5QbIwV_DFE.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/eKzSAPFYMTJJtBbGDkJei1j7L5vNaiON8INcPFVdtgs.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/eYJHHT__uUteoXFycfhwbI379K3REk9_GIgo6d02V3s.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/eZtGavcNvUqfmdk2R0dC7AU3Vc1tGebNxzUAKBxwlHI.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/fA2p2ZvO4FoVN_JiRuXgn1QjTTnyXth5bSywCqDC3D4.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/h6F9AxKDVkyCZGxugKy7naZ0mSN4zCKqZGyhYvkqvQU.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/hPff0eEhvhdthhYgdHy3lzeNZ6cvhDzQo423PYr9pOo.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/hWCg1mj3atfnDkt5IvVEvThxTFWzFGtCQ_-Li5lRa2o.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/haN4fq20PpOYrqUohWsod0JUPP6Os71uWf5YvzgFuGk.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/hn-w50jMEFbicW2Dp1j8GpI5KROTaVD3-Gk5RO7RQ5U.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/jPX_s7R9Y9Tx62x3BSdnJgcc2fuTlxZfIsf5VIy56bQ.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/jjHhKuJevYo-yUT02KoCUaJxJXjLUGTVmTsQcCu-tnY.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/kDg9RVyEG2VdVnmrBA-4FBymSjozt3wmfJHEY9CtNuE.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/lmI9T0rmkVx-nfDZzH3otGBc8XDUulhF6_IBVDwLR6s.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/mfRvZs-7xZ4l5rmcRPsx_2PrIt8yy8x07EX1svQggmw.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/miVimTZst4AsQUnGPqQ4U_HhGQ3neDeqOc8mTlPMOSo.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/nG4rxs0eE1H1baY8Du2oF_6fHSdSkIA8WGbIMWMItEU.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/nY_Jhgy8H2zwL-Lxrq3qvmsk0YxD4lcT4hpAgokGk7M.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/nnOpP4k0oge6JPLffQyVmZo96WTW7hvAHXBKJSY3KNs.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/o5ED8HllG3WPFxZ6UstTTnbEYPEvLp1jSyLgvv-tX2A.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/oDOPnEj390MR1YfEG5hRpFKsbG0q4pZw9UxFrWbtJC0.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/onaBeYoPVo3S1NObk2-D9McYV83G--hm2Z84ffBGsAk.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/qahjSYirnViO_FGaTIlSRf68AaJ5EKPiicR8jqOsTnA.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/qukp9m9UACC7bt1fblHjnUVzjRuEC5s5lME7DL7haus.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/rokmpmn65Y0E8f0mS7tpUGqZH_-nDqKwXJaJrT2QzXM.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/sDa1E7GLMXpwYf2zCQHKEtZ1J69eLwo4h3-zjmuK6O0.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/sZ8K3Y4HlxDnWUkSuBm9Y9-kgjgQ5mhoXULi0qwyppI.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/sn1vZfiFbyTKg-DbUM9t6sLWO49lvFCZwPzvxm8St_A.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/t3BapNcJdpGFBCR0zx51zIOCZxbgUFoPVSyOLEvzKF8.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ufxRCcZC9kt2qFaJ8uLYuvX1jgB7y-YDJPTvHNGuwm4.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/us2Iwpcxj7LfGKRzLKyxfupmLdKUWAG1mcl9Ulwm7A8.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/v7lRu7Js_JTOZwjKgRbeBiSu34ulax99MVSrCA6SOHU.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/vYnhEbN8-BdUD2XzMVhMqScK6TVOwS4eT0kghnhH_ZQ.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/vrIw1vVDqnPzKkn-IXRGcJN8dvx6T5-9E1C10JUEH2k.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/wEcmLRb1qcqdz7D6e56ZiMOLC0X-ggwLg7fl9mnETuc.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/wSzzwAXupe0710Y82LeeVjn_1YUz8F000DY4S3CmJJ4.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/x2yFC1uGoElRMUUlSOTjQMwSl8GLJlTh0wcG46KzQe0.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/x4rxavGlxT8kesLmEtzUCiDIMvukTK9J1e-ZBO-nqUI.cache +2 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/xdiJDFIdWaEcnza9i90UZEeHDeQiz7ywIUtqgmZNtI4.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yAAuhzCCQwkAAR3dnO84iMkr-0se8_Afon-ii9rMuVo.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yB7SzMJ_6r-Nl4tA0jmdlA_uD6xoDb64BJ90T-WdvOY.cache +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yEsz8DwMrWdZDKbJlq_O2KhEy2ZQ2cIvCx_gJiCk19E.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yfGyup3QG8xweHxeY1UPc2tpAW3R1aPfVaOCN9qukvI.cache +1 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/yhAoTeN7DlVlFdOvIrxUuYqaIBMGctZfcKloHqiYm04.cache +1 -0
- data/test/fixtures/help_engine/help_pages.yml +20 -0
- data/test/fixtures/users.yml +5 -0
- data/test/help_engine_test.rb +7 -0
- data/test/integration/navigation_test.rb +10 -0
- data/test/models/help_engine/help_page_test.rb +21 -0
- data/test/test_helper.rb +33 -0
- metadata +852 -0
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
ZDk2OTg5NWE0YTJlYWVjMTkzZGZhYzMzNGU5OTNmMTQ3MzlmMTRmZQ==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
N2JhYzZlMWI0MTMxMDAzYmMxYTE1NzFjM2Q4YmQ4NzVkN2NiOTAxNA==
|
7
|
+
SHA512:
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
Y2E2YjcyYjU3MTA0MjhlYjMzMWIzOThkMjkwN2NhMDM1NzMxYTk4N2JkYWQ3
|
10
|
+
NmUzMjBiNjE3YzkwYjU5MDNhOWMwNGFjZTk2OTZiYjA2MTc0MGI5NTRiMzUx
|
11
|
+
Y2UyZTA1YWJjMzFmMzFkNGI1OGEzMzczZjJiZmM1M2E4NDkyMzk=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
ZDFmYzUxNjJjY2EwYThjNGFkODEzMDc5M2FiZDA0YTgyZTQ0Yjc5ZDUwNTJi
|
14
|
+
MmYyYjg4Zjk0NzI4OTQxNjQ3OGFjMTI5ZTY2NThjMGU4MzA3MmYwYWY5M2Ez
|
15
|
+
MGNkMTFkYzEzZWYwMDhkNTJmMDdkYzY3MzdjZjJkZDJhZGIwMTk=
|
data/MIT-LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright 2015 Rob Nichols and Warwickshire Count Council
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.rdoc
ADDED
@@ -0,0 +1,129 @@
|
|
1
|
+
= Help Engine
|
2
|
+
|
3
|
+
A basic system to add help pages to a Rails application.
|
4
|
+
|
5
|
+
I often find myself tacking a simple help system on to rails apps. They
|
6
|
+
are usually very simple, and allow users to add and modify the content. As
|
7
|
+
I do it so often, I thought I'd bundle it all into a gem so that I can make
|
8
|
+
the process even simpler.
|
9
|
+
|
10
|
+
== Installation
|
11
|
+
|
12
|
+
First add the gem to the host app's Gemfile:
|
13
|
+
|
14
|
+
gem 'help_engine'
|
15
|
+
|
16
|
+
Then mount the engine via config/routes.rb:
|
17
|
+
|
18
|
+
mount HelpEngine::Engine => "help"
|
19
|
+
|
20
|
+
== Usage
|
21
|
+
|
22
|
+
Each help page has a unique slug that is used to generate unique meaningful
|
23
|
+
urls. So if a help page is named "Foo Bar", it will have a slug 'foo-bar' and
|
24
|
+
the page's url will be help/pages/foo-bar.
|
25
|
+
|
26
|
+
To add a link to a particular help page, use the slug to identify the page:
|
27
|
+
|
28
|
+
<%= link_to 'help on Foo Bar', help_engine.help_page_path('foo-bar') %>
|
29
|
+
|
30
|
+
To add a link to the help index:
|
31
|
+
|
32
|
+
<%= link_to 'Help', help_engine.root_path %>
|
33
|
+
|
34
|
+
On this page links are provided to each of the existing help pages, and there
|
35
|
+
is also a link to create a new help page. See the Overriding Help Engine
|
36
|
+
behaviour section below regarding added access control to help pages.
|
37
|
+
|
38
|
+
== Content
|
39
|
+
|
40
|
+
Markdown is used to define the content of help pages. The mark down used is
|
41
|
+
as defined here:
|
42
|
+
|
43
|
+
http://daringfireball.net/projects/markdown/basics
|
44
|
+
|
45
|
+
Markdown is used as it's easy to create well styled content without having to
|
46
|
+
sanitise users' input.
|
47
|
+
|
48
|
+
== Dummy app
|
49
|
+
|
50
|
+
A dummy app is provided as part of this engine (test/dummy). This provides
|
51
|
+
an example of how the engine can be used.
|
52
|
+
|
53
|
+
== Author
|
54
|
+
|
55
|
+
Each help_page has an author polymorphic relationship. So an user can be
|
56
|
+
associated to a help_page with:
|
57
|
+
|
58
|
+
help_page.author = user
|
59
|
+
|
60
|
+
A has_many method can be added to an author class such as User, like this:
|
61
|
+
|
62
|
+
class User < ActiveRecord::Base
|
63
|
+
|
64
|
+
has_many :help_pages, as: :author, class_name: 'HelpEngine::HelpPage'
|
65
|
+
|
66
|
+
...
|
67
|
+
end
|
68
|
+
|
69
|
+
To store an author's identity on help page creation, the help pages controller
|
70
|
+
will need to be overwritten.
|
71
|
+
|
72
|
+
== Overriding Help Engine behaviour
|
73
|
+
|
74
|
+
=== Overriding controllers
|
75
|
+
As with most rails engines, you can override the Help Engine behaviour by adding
|
76
|
+
matching objects in the host app. So for example, if you want to override how
|
77
|
+
the HelpEngine::HelpPagesController behaves (to add access control for example),
|
78
|
+
add your own controller code at the host app's:
|
79
|
+
|
80
|
+
app/controllers/help_engine/help_pages_controller.rb
|
81
|
+
|
82
|
+
For example, if Devise is installed, you may do something like this (at
|
83
|
+
app/controllers/help_engine/help_pages_controller):
|
84
|
+
|
85
|
+
class HelpEngine::HelpPagesController < ApplicationController
|
86
|
+
|
87
|
+
before_action :authenticate_user!, except: [:index, :show]
|
88
|
+
|
89
|
+
def create
|
90
|
+
@help_page = HelpPage.new(help_page_params)
|
91
|
+
@help_page.author = current_user
|
92
|
+
|
93
|
+
if @help_page.save
|
94
|
+
redirect_to @help_page, notice: 'Help page was successfully created.'
|
95
|
+
else
|
96
|
+
render :new
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|
100
|
+
end
|
101
|
+
|
102
|
+
=== Overriding views
|
103
|
+
HelpEngine views can be overridden in the same way. For example, in the dummy
|
104
|
+
app the help_engine layout has been overridden so that bootstrap styling can be
|
105
|
+
applied to the help pages. see:
|
106
|
+
|
107
|
+
test/dummy/app/views/layouts/help_engine/application.html.erb
|
108
|
+
|
109
|
+
This change has also modified where the CSS for these pages reside. For example,
|
110
|
+
the textarea styling for the help_page content in the dummy app is defined at:
|
111
|
+
|
112
|
+
test/dummy/assets/stylesheets/help_pages.css
|
113
|
+
|
114
|
+
== Deletion and JavaScript
|
115
|
+
|
116
|
+
For the help page delete button to work, the JavaScript environment must be
|
117
|
+
correctly set up in the host application. In the dummy app this is done by
|
118
|
+
using the 'jquery-rails' gem and enabling jquery in the asset pipeline by
|
119
|
+
adding these two lines to app/asserts/javascripts/application.js :
|
120
|
+
|
121
|
+
//= require jquery
|
122
|
+
//= require jquery_ujs
|
123
|
+
|
124
|
+
This could be fixed by setting up jquery in the engine, but having had
|
125
|
+
problems in the past with rails engines' jquery configuration clashing
|
126
|
+
with the host app's jquery configuration, I don't think this is best
|
127
|
+
practice. For those interested:
|
128
|
+
|
129
|
+
http://stackoverflow.com/questions/8788304/activeadmin-stops-my-jquery-working
|
data/Rakefile
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
begin
|
2
|
+
require 'bundler/setup'
|
3
|
+
rescue LoadError
|
4
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
5
|
+
end
|
6
|
+
|
7
|
+
require 'rdoc/task'
|
8
|
+
|
9
|
+
RDoc::Task.new(:rdoc) do |rdoc|
|
10
|
+
rdoc.rdoc_dir = 'rdoc'
|
11
|
+
rdoc.title = 'HelpEngine'
|
12
|
+
rdoc.options << '--line-numbers'
|
13
|
+
rdoc.rdoc_files.include('README.rdoc')
|
14
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
15
|
+
end
|
16
|
+
|
17
|
+
APP_RAKEFILE = File.expand_path("../test/dummy/Rakefile", __FILE__)
|
18
|
+
load 'rails/tasks/engine.rake'
|
19
|
+
|
20
|
+
|
21
|
+
load 'rails/tasks/statistics.rake'
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
Bundler::GemHelper.install_tasks
|
26
|
+
|
27
|
+
require 'rake/testtask'
|
28
|
+
|
29
|
+
Rake::TestTask.new(:test) do |t|
|
30
|
+
t.libs << 'lib'
|
31
|
+
t.libs << 'test'
|
32
|
+
t.pattern = 'test/**/*_test.rb'
|
33
|
+
t.verbose = false
|
34
|
+
end
|
35
|
+
|
36
|
+
|
37
|
+
task default: :test
|
@@ -0,0 +1,13 @@
|
|
1
|
+
// This is a manifest file that'll be compiled into application.js, which will include all the files
|
2
|
+
// listed below.
|
3
|
+
//
|
4
|
+
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
|
5
|
+
// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
|
6
|
+
//
|
7
|
+
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
|
8
|
+
// compiled file.
|
9
|
+
//
|
10
|
+
// Read Sprockets README (https://github.com/sstephenson/sprockets#sprockets-directives) for details
|
11
|
+
// about supported directives.
|
12
|
+
//
|
13
|
+
//= require_tree .
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/*
|
2
|
+
* This is a manifest file that'll be compiled into application.css, which will include all the files
|
3
|
+
* listed below.
|
4
|
+
*
|
5
|
+
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
|
6
|
+
* or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
|
7
|
+
*
|
8
|
+
* You're free to add application-wide styles to this file and they'll appear at the bottom of the
|
9
|
+
* compiled file so the styles you add here take precedence over styles defined in any styles
|
10
|
+
* defined in the other CSS/SCSS files in this directory. It is generally better to create a new
|
11
|
+
* file per style scope.
|
12
|
+
*
|
13
|
+
*= require_tree .
|
14
|
+
*= require_self
|
15
|
+
*/
|
@@ -0,0 +1,62 @@
|
|
1
|
+
require_dependency "help_engine/application_controller"
|
2
|
+
|
3
|
+
module HelpEngine
|
4
|
+
class HelpPagesController < ApplicationController
|
5
|
+
before_action :set_help_page, only: [:show, :edit, :update, :destroy]
|
6
|
+
|
7
|
+
# GET /help_pages
|
8
|
+
def index
|
9
|
+
@help_pages = HelpPage.all
|
10
|
+
end
|
11
|
+
|
12
|
+
# GET /help_pages/1
|
13
|
+
def show
|
14
|
+
end
|
15
|
+
|
16
|
+
# GET /help_pages/new
|
17
|
+
def new
|
18
|
+
@help_page = HelpPage.new
|
19
|
+
end
|
20
|
+
|
21
|
+
# GET /help_pages/1/edit
|
22
|
+
def edit
|
23
|
+
end
|
24
|
+
|
25
|
+
# POST /help_pages
|
26
|
+
def create
|
27
|
+
@help_page = HelpPage.new(help_page_params)
|
28
|
+
|
29
|
+
if @help_page.save
|
30
|
+
redirect_to @help_page, notice: 'Help page was successfully created.'
|
31
|
+
else
|
32
|
+
render :new
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
# PATCH/PUT /help_pages/1
|
37
|
+
def update
|
38
|
+
if @help_page.update(help_page_params)
|
39
|
+
redirect_to @help_page, notice: 'Help page was successfully updated.'
|
40
|
+
else
|
41
|
+
render :edit
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
# DELETE /help_pages/1
|
46
|
+
def destroy
|
47
|
+
@help_page.destroy
|
48
|
+
redirect_to help_pages_url, notice: 'Help page was successfully destroyed.'
|
49
|
+
end
|
50
|
+
|
51
|
+
private
|
52
|
+
# Use callbacks to share common setup or constraints between actions.
|
53
|
+
def set_help_page
|
54
|
+
@help_page = HelpPage.friendly.find(params[:id])
|
55
|
+
end
|
56
|
+
|
57
|
+
# Only allow a trusted parameter "white list" through.
|
58
|
+
def help_page_params
|
59
|
+
params.require(:help_page).permit(:name, :slug, :content)
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require 'github/markdown'
|
2
|
+
require 'friendly_id'
|
3
|
+
module HelpEngine
|
4
|
+
class HelpPage < ActiveRecord::Base
|
5
|
+
|
6
|
+
extend FriendlyId
|
7
|
+
friendly_id :name, use: :slugged
|
8
|
+
|
9
|
+
belongs_to :author, polymorphic: true
|
10
|
+
|
11
|
+
validates :name, :content, presence: true
|
12
|
+
|
13
|
+
def to_html
|
14
|
+
markdown.render content
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.markdown_parser
|
18
|
+
@markdown_parser ||= GitHub::Markdown
|
19
|
+
end
|
20
|
+
|
21
|
+
def markdown
|
22
|
+
self.class.markdown_parser
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
<%= form_for(@help_page) do |f| %>
|
2
|
+
<% if @help_page.errors.any? %>
|
3
|
+
<div id="error_explanation">
|
4
|
+
<h2><%= pluralize(@help_page.errors.count, "error") %> prohibited this help_page from being saved:</h2>
|
5
|
+
|
6
|
+
<ul>
|
7
|
+
<% @help_page.errors.full_messages.each do |message| %>
|
8
|
+
<li><%= message %></li>
|
9
|
+
<% end %>
|
10
|
+
</ul>
|
11
|
+
</div>
|
12
|
+
<% end %>
|
13
|
+
|
14
|
+
<div class="field">
|
15
|
+
<%= f.label :name %><br>
|
16
|
+
<%= f.text_field :name %>
|
17
|
+
</div>
|
18
|
+
<p>
|
19
|
+
The name is used to describe the page in the help page index, and to generate
|
20
|
+
the string used to give the page an unique url (the "slug").
|
21
|
+
<% if @help_page.persisted? %>
|
22
|
+
The slug for this page is <em><%= @help_page.slug %></em>.
|
23
|
+
<% else %>
|
24
|
+
That is, creating a page named "Foo bar" will create the slug "foo-bar" and
|
25
|
+
the url for the help page will end: /foo-bar.
|
26
|
+
<% end %>
|
27
|
+
</p>
|
28
|
+
|
29
|
+
<div class="field">
|
30
|
+
<%= f.label :content %><br>
|
31
|
+
<%= f.text_area :content %>
|
32
|
+
</div>
|
33
|
+
|
34
|
+
<p>
|
35
|
+
Content should be entered using Markdown. The Markdown syntax is described
|
36
|
+
<%= link_to 'here', 'http://daringfireball.net/projects/markdown/basics', target: '_blank' %>.
|
37
|
+
This content will form the main output when displaying the help page.
|
38
|
+
</p>
|
39
|
+
|
40
|
+
<div class="actions">
|
41
|
+
<%= f.submit class: 'btn btn-warning' %>
|
42
|
+
</div>
|
43
|
+
<% end %>
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<h1>Help Pages</h1>
|
2
|
+
|
3
|
+
<%= link_to 'New Help page', new_help_page_path, class: 'btn btn-primary' %>
|
4
|
+
|
5
|
+
<section class="help_pages">
|
6
|
+
<% if @help_pages.present? %>
|
7
|
+
|
8
|
+
<ul>
|
9
|
+
<% @help_pages.each do |help_page| %>
|
10
|
+
<li><%= link_to help_page.name, help_page %></li>
|
11
|
+
<% end %>
|
12
|
+
</tbody>
|
13
|
+
</table>
|
14
|
+
|
15
|
+
<% else %>
|
16
|
+
|
17
|
+
<h2>No help pages</h2>
|
18
|
+
<p>The first help page is yet to be added</p>
|
19
|
+
|
20
|
+
<% end %>
|
21
|
+
</section>
|
@@ -0,0 +1,16 @@
|
|
1
|
+
<article class="help_page">
|
2
|
+
|
3
|
+
<div class="content">
|
4
|
+
<%= @help_page.to_html.html_safe %>
|
5
|
+
</div>
|
6
|
+
|
7
|
+
<%= link_to 'List', help_pages_path, class: 'btn btn-primary' %>
|
8
|
+
<%= link_to 'Edit', edit_help_page_path(@help_page), class: 'btn btn-warning' %>
|
9
|
+
<%= link_to(
|
10
|
+
'Delete',
|
11
|
+
@help_page,
|
12
|
+
method: :delete, data: { confirm: 'Are you sure?' },
|
13
|
+
class: 'btn btn-danger'
|
14
|
+
)
|
15
|
+
%>
|
16
|
+
</article>
|