mindapp2 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.travis.yml +5 -0
  4. data/CODE_OF_CONDUCT.md +74 -0
  5. data/Gemfile +4 -0
  6. data/LICENSE.txt +21 -0
  7. data/README.md +43 -0
  8. data/Rakefile +1 -0
  9. data/bin/console +14 -0
  10. data/bin/setup +8 -0
  11. data/lib/generators/mindapp/USAGE +8 -0
  12. data/lib/generators/mindapp/install_generator.rb +179 -0
  13. data/lib/generators/mindapp/mongoid_generator.rb +30 -0
  14. data/lib/generators/mindapp/templates/app/assets/config/manifest.js +3 -0
  15. data/lib/generators/mindapp/templates/app/assets/images/.keep +0 -0
  16. data/lib/generators/mindapp/templates/app/assets/images/4dcity-old.ico +0 -0
  17. data/lib/generators/mindapp/templates/app/assets/images/4dcity.ico +0 -0
  18. data/lib/generators/mindapp/templates/app/assets/images/account.png +0 -0
  19. data/lib/generators/mindapp/templates/app/assets/images/add.png +0 -0
  20. data/lib/generators/mindapp/templates/app/assets/images/ajax-loader-circle.gif +0 -0
  21. data/lib/generators/mindapp/templates/app/assets/images/ajax-loader.gif +0 -0
  22. data/lib/generators/mindapp/templates/app/assets/images/anchor.png +0 -0
  23. data/lib/generators/mindapp/templates/app/assets/images/application_double.png +0 -0
  24. data/lib/generators/mindapp/templates/app/assets/images/application_form_edit.png +0 -0
  25. data/lib/generators/mindapp/templates/app/assets/images/arrow_left.png +0 -0
  26. data/lib/generators/mindapp/templates/app/assets/images/arrow_right.png +0 -0
  27. data/lib/generators/mindapp/templates/app/assets/images/arrow_turn_left.png +0 -0
  28. data/lib/generators/mindapp/templates/app/assets/images/arrow_turn_right.png +0 -0
  29. data/lib/generators/mindapp/templates/app/assets/images/calendar.png +0 -0
  30. data/lib/generators/mindapp/templates/app/assets/images/cancel.png +0 -0
  31. data/lib/generators/mindapp/templates/app/assets/images/chart_bar.png +0 -0
  32. data/lib/generators/mindapp/templates/app/assets/images/clock.png +0 -0
  33. data/lib/generators/mindapp/templates/app/assets/images/cog.png +0 -0
  34. data/lib/generators/mindapp/templates/app/assets/images/control_fastforward.png +0 -0
  35. data/lib/generators/mindapp/templates/app/assets/images/control_play.png +0 -0
  36. data/lib/generators/mindapp/templates/app/assets/images/cross.png +0 -0
  37. data/lib/generators/mindapp/templates/app/assets/images/delete.png +0 -0
  38. data/lib/generators/mindapp/templates/app/assets/images/external-link.png +0 -0
  39. data/lib/generators/mindapp/templates/app/assets/images/facebooksmall.png +0 -0
  40. data/lib/generators/mindapp/templates/app/assets/images/favicon.ico +0 -0
  41. data/lib/generators/mindapp/templates/app/assets/images/freemind(mm).png +0 -0
  42. data/lib/generators/mindapp/templates/app/assets/images/help.png +0 -0
  43. data/lib/generators/mindapp/templates/app/assets/images/highway-menu.png +0 -0
  44. data/lib/generators/mindapp/templates/app/assets/images/highway.png +0 -0
  45. data/lib/generators/mindapp/templates/app/assets/images/house.png +0 -0
  46. data/lib/generators/mindapp/templates/app/assets/images/icons-18-black.png +0 -0
  47. data/lib/generators/mindapp/templates/app/assets/images/icons-18-white.png +0 -0
  48. data/lib/generators/mindapp/templates/app/assets/images/icons-36-black.png +0 -0
  49. data/lib/generators/mindapp/templates/app/assets/images/icons-36-white.png +0 -0
  50. data/lib/generators/mindapp/templates/app/assets/images/logo.png +0 -0
  51. data/lib/generators/mindapp/templates/app/assets/images/logo_mindapp.png +0 -0
  52. data/lib/generators/mindapp/templates/app/assets/images/logout.png +0 -0
  53. data/lib/generators/mindapp/templates/app/assets/images/mylogo.png +0 -0
  54. data/lib/generators/mindapp/templates/app/assets/images/new.gif +0 -0
  55. data/lib/generators/mindapp/templates/app/assets/images/new.png +0 -0
  56. data/lib/generators/mindapp/templates/app/assets/images/page.png +0 -0
  57. data/lib/generators/mindapp/templates/app/assets/images/page_attach.png +0 -0
  58. data/lib/generators/mindapp/templates/app/assets/images/page_green.png +0 -0
  59. data/lib/generators/mindapp/templates/app/assets/images/page_output.png +0 -0
  60. data/lib/generators/mindapp/templates/app/assets/images/page_pdf.png +0 -0
  61. data/lib/generators/mindapp/templates/app/assets/images/pencil.png +0 -0
  62. data/lib/generators/mindapp/templates/app/assets/images/printer.png +0 -0
  63. data/lib/generators/mindapp/templates/app/assets/images/refresh.png +0 -0
  64. data/lib/generators/mindapp/templates/app/assets/images/report.png +0 -0
  65. data/lib/generators/mindapp/templates/app/assets/images/rssmall.png +0 -0
  66. data/lib/generators/mindapp/templates/app/assets/images/tick.png +0 -0
  67. data/lib/generators/mindapp/templates/app/assets/images/twittersmall.png +0 -0
  68. data/lib/generators/mindapp/templates/app/assets/images/user.png +0 -0
  69. data/lib/generators/mindapp/templates/app/assets/images/view_code.png +0 -0
  70. data/lib/generators/mindapp/templates/app/assets/javascripts/admins.js.coffee +3 -0
  71. data/lib/generators/mindapp/templates/app/assets/javascripts/application.js +25 -0
  72. data/lib/generators/mindapp/templates/app/assets/javascripts/application.js.bak +20 -0
  73. data/lib/generators/mindapp/templates/app/assets/javascripts/articles.coffee +3 -0
  74. data/lib/generators/mindapp/templates/app/assets/javascripts/basic.coffee +3 -0
  75. data/lib/generators/mindapp/templates/app/assets/javascripts/cable.js +13 -0
  76. data/lib/generators/mindapp/templates/app/assets/javascripts/channels/.keep +0 -0
  77. data/lib/generators/mindapp/templates/app/assets/javascripts/comments.coffee +3 -0
  78. data/lib/generators/mindapp/templates/app/assets/javascripts/ctrs.coffee +3 -0
  79. data/lib/generators/mindapp/templates/app/assets/javascripts/devs.js.coffee +3 -0
  80. data/lib/generators/mindapp/templates/app/assets/javascripts/disable_enter_key.js +10 -0
  81. data/lib/generators/mindapp/templates/app/assets/javascripts/iscroll-wrapper.js +32 -0
  82. data/lib/generators/mindapp/templates/app/assets/javascripts/iscroll.js +1084 -0
  83. data/lib/generators/mindapp/templates/app/assets/javascripts/jquery.mobile-1.2.1.js +9272 -0
  84. data/lib/generators/mindapp/templates/app/assets/javascripts/jquery.mobile.datebox.js +1772 -0
  85. data/lib/generators/mindapp/templates/app/assets/javascripts/jquery.mobile.splitview.js +695 -0
  86. data/lib/generators/mindapp/templates/app/assets/javascripts/mindapp.js +14 -0
  87. data/lib/generators/mindapp/templates/app/assets/javascripts/pictures.coffee +3 -0
  88. data/lib/generators/mindapp/templates/app/assets/javascripts/sitemap.coffee +3 -0
  89. data/lib/generators/mindapp/templates/app/assets/javascripts/users.js.coffee +3 -0
  90. data/lib/generators/mindapp/templates/app/assets/stylesheets/admins.scss +3 -0
  91. data/lib/generators/mindapp/templates/app/assets/stylesheets/application.css.bak +15 -0
  92. data/lib/generators/mindapp/templates/app/assets/stylesheets/application.scss +31 -0
  93. data/lib/generators/mindapp/templates/app/assets/stylesheets/articles.scss +60 -0
  94. data/lib/generators/mindapp/templates/app/assets/stylesheets/basic.scss +3 -0
  95. data/lib/generators/mindapp/templates/app/assets/stylesheets/comments.scss +3 -0
  96. data/lib/generators/mindapp/templates/app/assets/stylesheets/ctrs.scss +3 -0
  97. data/lib/generators/mindapp/templates/app/assets/stylesheets/devs.scss +3 -0
  98. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/sarabun.eot +0 -0
  99. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/sarabun.ttf +0 -0
  100. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/sarabun.woff +0 -0
  101. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/sarabun_bold.ttf +0 -0
  102. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/sarabun_bolditalic.ttf +0 -0
  103. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/sarabun_italic.ttf +0 -0
  104. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew-webfont.eot +0 -0
  105. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew-webfont.ttf +0 -0
  106. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew-webfont.woff +0 -0
  107. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew.css +47 -0
  108. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew_bold-webfont.eot +0 -0
  109. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew_bold-webfont.ttf +0 -0
  110. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew_bold-webfont.woff +0 -0
  111. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew_bolditalic-webfont.eot +0 -0
  112. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew_bolditalic-webfont.ttf +0 -0
  113. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew_bolditalic-webfont.woff +0 -0
  114. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew_italic-webfont.eot +0 -0
  115. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew_italic-webfont.ttf +0 -0
  116. data/lib/generators/mindapp/templates/app/assets/stylesheets/fonts/thsarabunnew_italic-webfont.woff +0 -0
  117. data/lib/generators/mindapp/templates/app/assets/stylesheets/images/ajax-loader.gif +0 -0
  118. data/lib/generators/mindapp/templates/app/assets/stylesheets/images/button_black.png +0 -0
  119. data/lib/generators/mindapp/templates/app/assets/stylesheets/images/button_blue.png +0 -0
  120. data/lib/generators/mindapp/templates/app/assets/stylesheets/images/button_red.png +0 -0
  121. data/lib/generators/mindapp/templates/app/assets/stylesheets/images/icons-18-black.png +0 -0
  122. data/lib/generators/mindapp/templates/app/assets/stylesheets/images/icons-18-white.png +0 -0
  123. data/lib/generators/mindapp/templates/app/assets/stylesheets/images/icons-36-black.png +0 -0
  124. data/lib/generators/mindapp/templates/app/assets/stylesheets/images/icons-36-white.png +0 -0
  125. data/lib/generators/mindapp/templates/app/assets/stylesheets/indicator.gif +0 -0
  126. data/lib/generators/mindapp/templates/app/assets/stylesheets/jquery.mobile-1.2.1.css +2339 -0
  127. data/lib/generators/mindapp/templates/app/assets/stylesheets/jquery.mobile.datebox.css +65 -0
  128. data/lib/generators/mindapp/templates/app/assets/stylesheets/jquery.mobile.grids.collapsible.css +122 -0
  129. data/lib/generators/mindapp/templates/app/assets/stylesheets/jquery.mobile.splitview.css +128 -0
  130. data/lib/generators/mindapp/templates/app/assets/stylesheets/kul-4.2.css +1516 -0
  131. data/lib/generators/mindapp/templates/app/assets/stylesheets/kul-4.2.min.css +11 -0
  132. data/lib/generators/mindapp/templates/app/assets/stylesheets/mindapp.css +138 -0
  133. data/lib/generators/mindapp/templates/app/assets/stylesheets/pictures.scss +3 -0
  134. data/lib/generators/mindapp/templates/app/assets/stylesheets/rouge.css.erb +11 -0
  135. data/lib/generators/mindapp/templates/app/assets/stylesheets/sarabun.css +37 -0
  136. data/lib/generators/mindapp/templates/app/assets/stylesheets/sitemap.scss +3 -0
  137. data/lib/generators/mindapp/templates/app/assets/stylesheets/users.scss +3 -0
  138. data/lib/generators/mindapp/templates/app/channels/application_cable/channel.rb +4 -0
  139. data/lib/generators/mindapp/templates/app/channels/application_cable/connection.rb +4 -0
  140. data/lib/generators/mindapp/templates/app/controllers/admins_controller.rb +6 -0
  141. data/lib/generators/mindapp/templates/app/controllers/application_controller.rb +41 -0
  142. data/lib/generators/mindapp/templates/app/controllers/articles_controller.rb +67 -0
  143. data/lib/generators/mindapp/templates/app/controllers/comments_controller.rb +17 -0
  144. data/lib/generators/mindapp/templates/app/controllers/concerns/.keep +0 -0
  145. data/lib/generators/mindapp/templates/app/controllers/ctrs_controller.rb +2 -0
  146. data/lib/generators/mindapp/templates/app/controllers/devs_controller.rb +2 -0
  147. data/lib/generators/mindapp/templates/app/controllers/identities_controller.rb +5 -0
  148. data/lib/generators/mindapp/templates/app/controllers/mindapp_controller.rb +501 -0
  149. data/lib/generators/mindapp/templates/app/controllers/sessions_controller.rb +30 -0
  150. data/lib/generators/mindapp/templates/app/controllers/sitemap_controller.rb +12 -0
  151. data/lib/generators/mindapp/templates/app/controllers/users_controller.rb +25 -0
  152. data/lib/generators/mindapp/templates/app/helpers/admins_helper.rb +2 -0
  153. data/lib/generators/mindapp/templates/app/helpers/application_helper.rb +33 -0
  154. data/lib/generators/mindapp/templates/app/helpers/articles_helper.rb +2 -0
  155. data/lib/generators/mindapp/templates/app/helpers/basic_helper.rb +2 -0
  156. data/lib/generators/mindapp/templates/app/helpers/comments_helper.rb +2 -0
  157. data/lib/generators/mindapp/templates/app/helpers/ctrs_helper.rb +2 -0
  158. data/lib/generators/mindapp/templates/app/helpers/devs_helper.rb +2 -0
  159. data/lib/generators/mindapp/templates/app/helpers/pictures_helper.rb +2 -0
  160. data/lib/generators/mindapp/templates/app/helpers/sitemap_helper.rb +2 -0
  161. data/lib/generators/mindapp/templates/app/helpers/users_helper.rb +2 -0
  162. data/lib/generators/mindapp/templates/app/jobs/application_job.rb +2 -0
  163. data/lib/generators/mindapp/templates/app/mailers/application_mailer.rb +4 -0
  164. data/lib/generators/mindapp/templates/app/mailers/mindapp_mailer.rb +7 -0
  165. data/lib/generators/mindapp/templates/app/mindapp/index.mm +188 -0
  166. data/lib/generators/mindapp/templates/app/mindapp/template/view.html.erb +23 -0
  167. data/lib/generators/mindapp/templates/app/models/.gitkeep +0 -0
  168. data/lib/generators/mindapp/templates/app/models/address.rb +14 -0
  169. data/lib/generators/mindapp/templates/app/models/article.rb +14 -0
  170. data/lib/generators/mindapp/templates/app/models/ckeditor/asset.rb +5 -0
  171. data/lib/generators/mindapp/templates/app/models/ckeditor/attachment_file.rb +13 -0
  172. data/lib/generators/mindapp/templates/app/models/ckeditor/picture.rb +14 -0
  173. data/lib/generators/mindapp/templates/app/models/comment.rb +11 -0
  174. data/lib/generators/mindapp/templates/app/models/concerns/.keep +0 -0
  175. data/lib/generators/mindapp/templates/app/models/identity.rb +14 -0
  176. data/lib/generators/mindapp/templates/app/models/mindapp/doc.rb +31 -0
  177. data/lib/generators/mindapp/templates/app/models/mindapp/module.rb +11 -0
  178. data/lib/generators/mindapp/templates/app/models/mindapp/notice.rb +14 -0
  179. data/lib/generators/mindapp/templates/app/models/mindapp/role.rb +8 -0
  180. data/lib/generators/mindapp/templates/app/models/mindapp/runseq.rb +24 -0
  181. data/lib/generators/mindapp/templates/app/models/mindapp/service.rb +17 -0
  182. data/lib/generators/mindapp/templates/app/models/mindapp/xmain.rb +38 -0
  183. data/lib/generators/mindapp/templates/app/models/param.rb +41 -0
  184. data/lib/generators/mindapp/templates/app/models/person.rb +14 -0
  185. data/lib/generators/mindapp/templates/app/models/user.rb +30 -0
  186. data/lib/generators/mindapp/templates/app/views/admins/edit_role/edit_role.html.erb +7 -0
  187. data/lib/generators/mindapp/templates/app/views/admins/edit_role/select_user.html.erb +4 -0
  188. data/lib/generators/mindapp/templates/app/views/articles/edit.haml +12 -0
  189. data/lib/generators/mindapp/templates/app/views/articles/edit_article/edit_article.html.erb +13 -0
  190. data/lib/generators/mindapp/templates/app/views/articles/edit_article/select_article.html.erb +12 -0
  191. data/lib/generators/mindapp/templates/app/views/articles/index.haml +23 -0
  192. data/lib/generators/mindapp/templates/app/views/articles/my.haml +21 -0
  193. data/lib/generators/mindapp/templates/app/views/articles/new_article/form_article.html.erb +14 -0
  194. data/lib/generators/mindapp/templates/app/views/articles/show.html.haml +27 -0
  195. data/lib/generators/mindapp/templates/app/views/articles/xedit_article/edit_article.html.erb +13 -0
  196. data/lib/generators/mindapp/templates/app/views/articles/xedit_article/xedit_article.html.erb +11 -0
  197. data/lib/generators/mindapp/templates/app/views/ctrs/vfolder1/viewfile1.html.erb +23 -0
  198. data/lib/generators/mindapp/templates/app/views/ctrs/vfolder1/viewfile2.html.erb +23 -0
  199. data/lib/generators/mindapp/templates/app/views/ctrs/vfolder2/viewfile2.html.erb +23 -0
  200. data/lib/generators/mindapp/templates/app/views/identities/new.html.erb +30 -0
  201. data/lib/generators/mindapp/templates/app/views/layouts/_full.haml +39 -0
  202. data/lib/generators/mindapp/templates/app/views/layouts/_head.html.erb +13 -0
  203. data/lib/generators/mindapp/templates/app/views/layouts/_meta_tags.html.erb +5 -0
  204. data/lib/generators/mindapp/templates/app/views/layouts/_metatag.html.erb +19 -0
  205. data/lib/generators/mindapp/templates/app/views/layouts/_page.haml +16 -0
  206. data/lib/generators/mindapp/templates/app/views/layouts/_top.html.erb +10 -0
  207. data/lib/generators/mindapp/templates/app/views/layouts/application.haml +4 -0
  208. data/lib/generators/mindapp/templates/app/views/layouts/application.html.erb.bak +14 -0
  209. data/lib/generators/mindapp/templates/app/views/layouts/gmail.html.erb +9 -0
  210. data/lib/generators/mindapp/templates/app/views/layouts/mailer.html.erb +13 -0
  211. data/lib/generators/mindapp/templates/app/views/layouts/mailer.text.erb +1 -0
  212. data/lib/generators/mindapp/templates/app/views/layouts/mobile.html.erb +13 -0
  213. data/lib/generators/mindapp/templates/app/views/layouts/mobilejq.html.erb +31 -0
  214. data/lib/generators/mindapp/templates/app/views/layouts/print.html.erb +22 -0
  215. data/lib/generators/mindapp/templates/app/views/layouts/utf8.html.erb +22 -0
  216. data/lib/generators/mindapp/templates/app/views/mindapp/_activity.md +10 -0
  217. data/lib/generators/mindapp/templates/app/views/mindapp/_menu.haml +25 -0
  218. data/lib/generators/mindapp/templates/app/views/mindapp/_menu_mm.haml +29 -0
  219. data/lib/generators/mindapp/templates/app/views/mindapp/_model.md +5 -0
  220. data/lib/generators/mindapp/templates/app/views/mindapp/_modul.md +9 -0
  221. data/lib/generators/mindapp/templates/app/views/mindapp/_pending_home.haml +5 -0
  222. data/lib/generators/mindapp/templates/app/views/mindapp/_pending_page.haml +24 -0
  223. data/lib/generators/mindapp/templates/app/views/mindapp/_service.md +24 -0
  224. data/lib/generators/mindapp/templates/app/views/mindapp/_static.haml +23 -0
  225. data/lib/generators/mindapp/templates/app/views/mindapp/doc.md +37 -0
  226. data/lib/generators/mindapp/templates/app/views/mindapp/error_logs.haml +22 -0
  227. data/lib/generators/mindapp/templates/app/views/mindapp/feed.rss.builder +27 -0
  228. data/lib/generators/mindapp/templates/app/views/mindapp/help.haml +20 -0
  229. data/lib/generators/mindapp/templates/app/views/mindapp/index.html.haml +21 -0
  230. data/lib/generators/mindapp/templates/app/views/mindapp/logs.haml +22 -0
  231. data/lib/generators/mindapp/templates/app/views/mindapp/pending.haml +1 -0
  232. data/lib/generators/mindapp/templates/app/views/mindapp/run_form.haml +37 -0
  233. data/lib/generators/mindapp/templates/app/views/mindapp/run_output.haml +38 -0
  234. data/lib/generators/mindapp/templates/app/views/mindapp/search.haml +20 -0
  235. data/lib/generators/mindapp/templates/app/views/mindapp/status.haml +61 -0
  236. data/lib/generators/mindapp/templates/app/views/mindapp_mailer/gmail.html.erb +9 -0
  237. data/lib/generators/mindapp/templates/app/views/sessions/new.html.erb +11 -0
  238. data/lib/generators/mindapp/templates/app/views/sitemap/index.xml.haml +10 -0
  239. data/lib/generators/mindapp/templates/app/views/users/index.haml +13 -0
  240. data/lib/generators/mindapp/templates/app/views/users/pwd/enter.html.erb +6 -0
  241. data/lib/generators/mindapp/templates/app/views/users/user/enter_user.html.erb +8 -0
  242. data/lib/generators/mindapp/templates/cloudinary.yml +9 -0
  243. data/lib/generators/mindapp/templates/mindapp.yml +10 -0
  244. data/lib/generators/mindapp/templates/public/404.html +67 -0
  245. data/lib/generators/mindapp/templates/public/422.html +67 -0
  246. data/lib/generators/mindapp/templates/public/500.html +66 -0
  247. data/lib/generators/mindapp/templates/public/assets/images/logo.png +0 -0
  248. data/lib/generators/mindapp/templates/public/favicon.ico +0 -0
  249. data/lib/generators/mindapp/templates/public/robots.txt +3 -0
  250. data/lib/generators/mindapp/templates/seeds.rb +6 -0
  251. data/lib/generators/mindapp/templates/spec/controllers/admins_controller_spec.rb +5 -0
  252. data/lib/generators/mindapp/templates/spec/controllers/devs_controller_spec.rb +5 -0
  253. data/lib/generators/mindapp/templates/spec/controllers/users_controller_spec.rb +5 -0
  254. data/lib/generators/mindapp/templates/spec/helpers/admins_helper_spec.rb +15 -0
  255. data/lib/generators/mindapp/templates/spec/helpers/devs_helper_spec.rb +15 -0
  256. data/lib/generators/mindapp/templates/spec/helpers/users_helper_spec.rb +15 -0
  257. data/lib/generators/mindapp/templates/spec/spec_helper.rb +38 -0
  258. data/lib/mindapp/helpers.rb +509 -0
  259. data/lib/mindapp/railtie.rb +18 -0
  260. data/lib/mindapp/version.rb +3 -0
  261. data/lib/mindapp.rb +6 -0
  262. data/lib/tasks/mindapp.rake +202 -0
  263. data/mindapp.gemspec +27 -0
  264. metadata +349 -0
@@ -0,0 +1,188 @@
1
+ <map version="1.0.1">
2
+ <!-- To view this file, download free mind mapping software FreeMind from http://freemind.sourceforge.net -->
3
+ <node CREATED="1273819432637" ID="ID_1098419600" MODIFIED="1334737006485" TEXT="Mindapp">
4
+ <node CREATED="1273819462973" ID="ID_282419531" MODIFIED="1493705904561" POSITION="right" TEXT="services">
5
+ <node CREATED="1275756501221" ID="ID_1720745721" MODIFIED="1493707490078" TEXT="users:User">
6
+ <node CREATED="1278491598711" ID="ID_1662699954" MODIFIED="1494393920347" TEXT="role:m"/>
7
+ <node CREATED="1279700865182" ID="ID_1266797279" MODIFIED="1357798847781" TEXT="link:info: /users"/>
8
+ <node CREATED="1319015338880" ID="ID_189841353" MODIFIED="1330477824203" TEXT="link:pending tasks: /mindapp/pending"/>
9
+ <node CREATED="1275905802131" ID="ID_154000410" MODIFIED="1355422418892" TEXT="user:edit">
10
+ <node CREATED="1275756515843" ID="ID_1108188320" MODIFIED="1330477833918" TEXT="enter_user:edit">
11
+ <icon BUILTIN="attach"/>
12
+ <node CREATED="1282816887988" ID="ID_1767357871" MODIFIED="1282817769412" TEXT="rule:login? &amp;&amp; own_xmain?"/>
13
+ </node>
14
+ <node CREATED="1275756530989" ID="ID_1221806432" MODIFIED="1282822205361" TEXT="update_user">
15
+ <icon BUILTIN="bookmark"/>
16
+ </node>
17
+ </node>
18
+ <node CREATED="1275756504750" ID="ID_1382277695" MODIFIED="1355422424108" TEXT="pwd:change password">
19
+ <node CREATED="1275756515843" ID="ID_1559014937" MODIFIED="1330477842311" TEXT="enter: edit">
20
+ <icon BUILTIN="attach"/>
21
+ <node CREATED="1282816887988" ID="ID_2948144" MODIFIED="1282817769412" TEXT="rule:login? &amp;&amp; own_xmain?"/>
22
+ </node>
23
+ <node CREATED="1275756530989" ID="ID_1566171053" MODIFIED="1275756553762" TEXT="change_password">
24
+ <icon BUILTIN="bookmark"/>
25
+ </node>
26
+ </node>
27
+ </node>
28
+ <node CREATED="1275752678377" ID="ID_1348489452" MODIFIED="1494393447789" TEXT="admins:Admin">
29
+ <node CREATED="1275752688167" ID="ID_229996461" MODIFIED="1275752690948" TEXT="role:a"/>
30
+ <node CREATED="1282722836614" ID="ID_1213363124" MODIFIED="1330477902602" TEXT="edit_role:edit user role">
31
+ <node CREATED="1282722862918" ID="ID_1190117882" MODIFIED="1330477922159" TEXT="select_user:select user">
32
+ <icon BUILTIN="attach"/>
33
+ <node CREATED="1282722901932" ID="ID_1859523490" MODIFIED="1282722903469" TEXT="role:a"/>
34
+ </node>
35
+ <node CREATED="1282722868801" ID="ID_1325872490" MODIFIED="1330477926538" TEXT="edit_role:edit role">
36
+ <icon BUILTIN="attach"/>
37
+ <node CREATED="1282722901932" ID="ID_1992100954" MODIFIED="1282722903469" TEXT="role:a"/>
38
+ </node>
39
+ <node CREATED="1282722907306" ID="ID_1709875397" MODIFIED="1282722922669" TEXT="update_role">
40
+ <icon BUILTIN="bookmark"/>
41
+ </node>
42
+ </node>
43
+ <node CREATED="1273913393454" ID="ID_1088166839" MODIFIED="1355422465435" TEXT="link: pending tasks: /mindapp/pending"/>
44
+ <node CREATED="1275790679363" ID="ID_829325467" MODIFIED="1355422470135" TEXT="link: logs: /mindapp/logs"/>
45
+ </node>
46
+ <node CREATED="1273706796854" ID="ID_1003882979" MODIFIED="1494393450847" TEXT="devs: Developer">
47
+ <node CREATED="1275373154914" ID="ID_340725299" MODIFIED="1275373158632" TEXT="role:d"/>
48
+ <node CREATED="1275788317299" ID="ID_716276608" MODIFIED="1359019912446" TEXT="link: error_logs: /mindapp/error_logs"/>
49
+ </node>
50
+ <node CREATED="1489875563330" ID="ID_1495015891" MODIFIED="1494393457245" TEXT="ctrs: ctrs&amp; Menu">
51
+ <node CREATED="1489875583646" ID="ID_1796125628" MODIFIED="1494393464288" TEXT="role:a"/>
52
+ <node CREATED="1275905802131" ID="ID_1960607342" MODIFIED="1489938927874" TEXT="vfolder1:Sub Menu 1">
53
+ <node CREATED="1275756515843" ID="ID_328242903" MODIFIED="1489939229748" TEXT="viewfile1: Title 1">
54
+ <icon BUILTIN="attach"/>
55
+ <node CREATED="1282816887988" ID="ID_1479413309" MODIFIED="1282817769412" TEXT="rule:login? &amp;&amp; own_xmain?"/>
56
+ </node>
57
+ <node CREATED="1275756515843" ID="ID_1316819449" MODIFIED="1490683859703" TEXT="viewfile2: Title 2">
58
+ <icon BUILTIN="attach"/>
59
+ <node CREATED="1282816887988" ID="ID_1510989172" MODIFIED="1282817769412" TEXT="rule:login? &amp;&amp; own_xmain?"/>
60
+ </node>
61
+ <node CREATED="1275756530989" ID="ID_171099141" MODIFIED="1489939276491" TEXT="update_viewfile1">
62
+ <icon BUILTIN="bookmark"/>
63
+ </node>
64
+ </node>
65
+ <node CREATED="1275756504750" ID="ID_914236141" MODIFIED="1489939000929" TEXT="vfolder2:Title 2">
66
+ <node CREATED="1275756515843" ID="ID_1222970183" MODIFIED="1489939293714" TEXT="viewfile2: Title 2">
67
+ <icon BUILTIN="attach"/>
68
+ <node CREATED="1282816887988" ID="ID_1312913420" MODIFIED="1282817769412" TEXT="rule:login? &amp;&amp; own_xmain?"/>
69
+ </node>
70
+ </node>
71
+ </node>
72
+ <node CREATED="1493393619430" ID="ID_328863650" MODIFIED="1493393639913" TEXT="articles: Article">
73
+ <node CREATED="1493419096527" ID="ID_1521905276" MODIFIED="1493478060121" TEXT="link: All Articles: /articles"/>
74
+ <node CREATED="1493489768542" ID="ID_1376361427" MODIFIED="1493768994418" TEXT="link: My article: /articles/my">
75
+ <node CREATED="1493490295677" ID="ID_628476988" MODIFIED="1493490302239" TEXT="role:m"/>
76
+ </node>
77
+ <node CREATED="1493419257021" ID="ID_1355420049" MODIFIED="1493489729876" TEXT="new_article: New Article">
78
+ <node CREATED="1493419299004" ID="ID_1468250197" MODIFIED="1493419428686" TEXT="form_article: New Article">
79
+ <icon BUILTIN="attach"/>
80
+ <node CREATED="1493479075294" ID="ID_1145618514" MODIFIED="1493479079687" TEXT="role:m"/>
81
+ </node>
82
+ <node CREATED="1493419491125" ID="ID_1687683396" MODIFIED="1493483244848" TEXT="create: Create Article">
83
+ <icon BUILTIN="bookmark"/>
84
+ </node>
85
+ </node>
86
+ <node CREATED="1493419562726" ID="ID_922854639" MODIFIED="1493490306480" TEXT="edit_article: Edit Article">
87
+ <node CREATED="1493419577933" ID="ID_938626803" MODIFIED="1493419763293" TEXT="select_article: Select Article">
88
+ <icon BUILTIN="attach"/>
89
+ <node CREATED="1493479602815" ID="ID_753056881" MODIFIED="1493479606921" TEXT="role:m"/>
90
+ </node>
91
+ <node CREATED="1493419612720" ID="ID_661682947" MODIFIED="1493524438941" TEXT="edit_article: Edit Article">
92
+ <icon BUILTIN="attach"/>
93
+ <node CREATED="1493479557266" ID="ID_1681993437" MODIFIED="1493479561055" TEXT="role:m"/>
94
+ </node>
95
+ <node CREATED="1493419735921" ID="ID_1575963748" MODIFIED="1493489477505" TEXT="update: Update Article">
96
+ <icon BUILTIN="bookmark"/>
97
+ </node>
98
+ </node>
99
+ <node CREATED="1495246388313" ID="ID_1861034169" MODIFIED="1495262793752" TEXT="xedit_article: xEdit Article">
100
+ <node CREATED="1495246432533" ID="ID_91386173" MODIFIED="1495267233398" TEXT="edit_article: Edit Article">
101
+ <icon BUILTIN="attach"/>
102
+ <node CREATED="1495246517185" ID="ID_1224073606" MODIFIED="1495246522964" TEXT="role:m"/>
103
+ </node>
104
+ <node CREATED="1495246466176" ID="ID_1635586443" MODIFIED="1495266959360" TEXT="update: Update Article">
105
+ <icon BUILTIN="bookmark"/>
106
+ </node>
107
+ </node>
108
+ </node>
109
+ <node CREATED="1493664700564" ID="ID_704959130" MODIFIED="1493664709009" TEXT="comments: Comment">
110
+ <node CREATED="1493665155709" ID="ID_1973520751" MODIFIED="1493665186791" TEXT="new_comment: New Comment">
111
+ <node CREATED="1493665192413" ID="ID_345629058" MODIFIED="1493665226422" TEXT="create">
112
+ <icon BUILTIN="bookmark"/>
113
+ <node CREATED="1493665231940" ID="ID_1645532530" MODIFIED="1493665237018" TEXT="role:m"/>
114
+ </node>
115
+ </node>
116
+ <node CREATED="1494393494180" ID="ID_1101205873" MODIFIED="1495275996686" TEXT="role:m"/>
117
+ </node>
118
+ <node CREATED="1494172726642" ID="ID_925257043" MODIFIED="1494172755433" TEXT="sitemap: Sitemap">
119
+ <node CREATED="1494172758253" ID="ID_961056168" MODIFIED="1494172797972" TEXT="sitemap: Sitemap"/>
120
+ <node CREATED="1494393494180" ID="ID_242460166" MODIFIED="1494393504971" TEXT="role:a"/>
121
+ </node>
122
+ </node>
123
+ <node CREATED="1273819465949" FOLDED="true" ID="ID_855471610" MODIFIED="1493768913078" POSITION="right" TEXT="roles">
124
+ <node CREATED="1273819847470" ID="ID_1681080231" MODIFIED="1330477307826" TEXT="m: member"/>
125
+ <node CREATED="1273819855875" ID="ID_1429503284" MODIFIED="1330477311102" TEXT="a: admin"/>
126
+ <node CREATED="1273819859775" ID="ID_568365839" MODIFIED="1330477315009" TEXT="d: developer"/>
127
+ </node>
128
+ <node CREATED="1273819456867" ID="ID_1677010054" MODIFIED="1493418874718" POSITION="left" TEXT="models">
129
+ <node CREATED="1292122118499" FOLDED="true" ID="ID_1957754752" MODIFIED="1493705885123" TEXT="person">
130
+ <node CREATED="1292122135809" ID="ID_1617970069" MODIFIED="1332878659106" TEXT="fname"/>
131
+ <node CREATED="1292122150362" ID="ID_1200135538" MODIFIED="1332878662388" TEXT="lname"/>
132
+ <node CREATED="1332876694150" ID="ID_1770958985" MODIFIED="1332876730552" TEXT="sex: integer">
133
+ <node CREATED="1332878665790" ID="ID_793089342" MODIFIED="1332878668499" TEXT="1: male"/>
134
+ <node CREATED="1332878669085" ID="ID_1796007763" MODIFIED="1332878673144" TEXT="2: female"/>
135
+ </node>
136
+ <node CREATED="1292123322429" ID="ID_1509464300" MODIFIED="1332878620176" TEXT="belongs_to :address">
137
+ <icon BUILTIN="edit"/>
138
+ </node>
139
+ <node CREATED="1292122156430" ID="ID_604231613" MODIFIED="1292122161324" TEXT="dob: date"/>
140
+ <node CREATED="1286576968143" ID="ID_936807610" MODIFIED="1332878681362" TEXT="phone"/>
141
+ <node CREATED="1290823140269" ID="ID_1957301629" MODIFIED="1332878684453" TEXT="photo"/>
142
+ </node>
143
+ <node CREATED="1292122236285" FOLDED="true" ID="ID_959987887" MODIFIED="1493768919147" TEXT="address">
144
+ <node CREATED="1292122254622" ID="ID_430517150" MODIFIED="1355422372241" TEXT="address_street"/>
145
+ <node CREATED="1355422373525" ID="ID_1797865138" MODIFIED="1355422378352" TEXT="city"/>
146
+ <node CREATED="1355422378959" ID="ID_1964490487" MODIFIED="1355422380765" TEXT="state"/>
147
+ <node CREATED="1355422381231" ID="ID_1226075540" MODIFIED="1355422382748" TEXT="zip"/>
148
+ <node CREATED="1332876680122" ID="ID_65427990" MODIFIED="1332876682148" TEXT="phone"/>
149
+ <node CREATED="1292243471343" ID="ID_1859608350" MODIFIED="1310195256623" TEXT="lat: float"/>
150
+ <node CREATED="1292243477436" ID="ID_48497260" MODIFIED="1310195262534" TEXT="lng: float"/>
151
+ </node>
152
+ <node CREATED="1493418879485" ID="ID_1995497233" MODIFIED="1493718770637" TEXT="article">
153
+ <node CREATED="1493418891110" ID="ID_364756011" MODIFIED="1493418905253" TEXT="title"/>
154
+ <node CREATED="1493418906868" ID="ID_1676483995" MODIFIED="1493418911919" TEXT="text"/>
155
+ <node CREATED="1493487131376" ID="ID_1334057464" MODIFIED="1493487186856" TEXT="belongs_to :user">
156
+ <icon BUILTIN="edit"/>
157
+ </node>
158
+ <node CREATED="1493705838166" ID="ID_408271104" MODIFIED="1493705877062" TEXT="has_many :comments">
159
+ <icon BUILTIN="edit"/>
160
+ </node>
161
+ <node CREATED="1493718773517" ID="ID_944554146" MODIFIED="1493718808965" TEXT="validates :title, :text, :user_id, presence: true">
162
+ <icon BUILTIN="edit"/>
163
+ </node>
164
+ <node CREATED="1494181636998" ID="ID_229502630" MODIFIED="1494181660419" TEXT="body"/>
165
+ <node CREATED="1497913676275" ID="ID_404103076" MODIFIED="1497913685065" TEXT="keywords"/>
166
+ </node>
167
+ <node CREATED="1493418915637" ID="ID_429078131" MODIFIED="1493418930081" TEXT="comment">
168
+ <node CREATED="1493418939760" ID="ID_1251093062" MODIFIED="1493418943423" TEXT="body"/>
169
+ <node CREATED="1493418945686" ID="ID_911071644" MODIFIED="1493418986711" TEXT="belongs_to :article">
170
+ <icon BUILTIN="edit"/>
171
+ </node>
172
+ <node CREATED="1493643129947" ID="ID_588013696" MODIFIED="1493643146424" TEXT="belongs_to :user">
173
+ <icon BUILTIN="edit"/>
174
+ </node>
175
+ <node CREATED="1493718512191" ID="ID_173203253" MODIFIED="1493718583874" TEXT="validates :body, :user_id, :article_id, presence: true">
176
+ <icon BUILTIN="edit"/>
177
+ </node>
178
+ </node>
179
+ <node CREATED="1494040082403" ID="ID_864577403" MODIFIED="1494040090700" TEXT="picture">
180
+ <node CREATED="1494040091583" ID="ID_679208099" MODIFIED="1494040119098" TEXT="picture"/>
181
+ <node CREATED="1494040120208" ID="ID_1266154874" MODIFIED="1494040125130" TEXT="description"/>
182
+ <node CREATED="1493487131376" ID="ID_1422817360" MODIFIED="1493487186856" TEXT="belongs_to :user">
183
+ <icon BUILTIN="edit"/>
184
+ </node>
185
+ </node>
186
+ </node>
187
+ </node>
188
+ </map>
@@ -0,0 +1,23 @@
1
+ <%#
2
+ doc = Doc.new :issue_on=> Date.today, :process_at => Time.now
3
+ %>
4
+ <%#= fields_for doc do |f| %>
5
+ <%#= f.label :rnum, "Reference number" %>
6
+ <%#= f.text_field :rnum %>
7
+ <!--div>
8
+ <%#= f.label :confidential, "Confidentiality" , :class=>"ui-input-text" %>
9
+ <%#= f.select :confidential, [['normal',0],['secret',1],['top secret',2]],{},"data-native-menu"=>"false" %>
10
+ </div-->
11
+ <%#= f.label :issue_on, "Dated" %>
12
+ <%#= f.date_field :issue_on, "blackDays"=>[0,6] %>
13
+ <%#= f.label :summary, "Summary" %>
14
+ <%#= f.text_area :summary, :cols=>50, :rows=>6 %>
15
+ <%#= f.label :dscan, "Attached document" %>
16
+ <%#= f.file_field :dscan %>
17
+ <%# end %>
18
+ <%#= label_tag :hotel, "Ungroup field" %>
19
+ <%#= text_field_tag :hotel %>
20
+ <!--div>
21
+ <%#= label_tag :done1, "Logic field", :class=>"ui-input-text" %>
22
+ <%#= select_tag :done1, options_for_select([['Yes', 'y'], ['No', 'n']],'y'), 'data-role'=>"slider" %>
23
+ </div-->
@@ -0,0 +1,14 @@
1
+ # encoding: utf-8
2
+ class Address
3
+ include Mongoid::Document
4
+ # mindapp begin
5
+ include Mongoid::Timestamps
6
+ field :address_street, :type => String
7
+ field :city, :type => String
8
+ field :state, :type => String
9
+ field :zip, :type => String
10
+ field :phone, :type => String
11
+ field :lat, :type => Float
12
+ field :lng, :type => Float
13
+ # mindapp end
14
+ end
@@ -0,0 +1,14 @@
1
+ # encoding: utf-8
2
+ class Article
3
+ include Mongoid::Document
4
+ # mindapp begin
5
+ include Mongoid::Timestamps
6
+ field :title, :type => String
7
+ field :text, :type => String
8
+ belongs_to :user
9
+ has_many :comments
10
+ validates :title, :text, :user_id, presence: true
11
+ field :body, :type => String
12
+ field :keywords, :type => String
13
+ # mindapp end
14
+ end
@@ -0,0 +1,5 @@
1
+ class Ckeditor::Asset
2
+ include Ckeditor::Orm::Mongoid::AssetBase
3
+ include Mongoid::Paperclip
4
+ include Ckeditor::Backend::Paperclip
5
+ end
@@ -0,0 +1,13 @@
1
+ class Ckeditor::AttachmentFile < Ckeditor::Asset
2
+ has_mongoid_attached_file :data,
3
+ url: '/ckeditor_assets/attachments/:id/:filename',
4
+ path: ':rails_root/public/ckeditor_assets/attachments/:id/:filename'
5
+
6
+ validates_attachment_presence :data
7
+ validates_attachment_size :data, less_than: 100.megabytes
8
+ do_not_validate_attachment_file_type :data
9
+
10
+ def url_thumb
11
+ @url_thumb ||= Ckeditor::Utils.filethumb(filename)
12
+ end
13
+ end
@@ -0,0 +1,14 @@
1
+ class Ckeditor::Picture < Ckeditor::Asset
2
+ has_mongoid_attached_file :data,
3
+ url: '/ckeditor_assets/pictures/:id/:style_:basename.:extension',
4
+ path: ':rails_root/public/ckeditor_assets/pictures/:id/:style_:basename.:extension',
5
+ styles: { content: '800>', thumb: '118x100#' }
6
+
7
+ validates_attachment_size :data, less_than: 2.megabytes
8
+ validates_attachment_presence :data
9
+ validates_attachment_content_type :data, content_type: /\Aimage/
10
+
11
+ def url_content
12
+ url(:content)
13
+ end
14
+ end
@@ -0,0 +1,11 @@
1
+ # encoding: utf-8
2
+ class Comment
3
+ include Mongoid::Document
4
+ # mindapp begin
5
+ include Mongoid::Timestamps
6
+ field :body, :type => String
7
+ belongs_to :article
8
+ belongs_to :user
9
+ validates :body, :user_id, :article_id, presence: true
10
+ # mindapp end
11
+ end
@@ -0,0 +1,14 @@
1
+ class Identity
2
+ include Mongoid::Document
3
+ include OmniAuth::Identity::Models::Mongoid
4
+ self.auth_key 'code'
5
+
6
+ field :code, :type => String
7
+ field :email, :type => String
8
+ field :password_digest, :type => String
9
+
10
+ validates_presence_of :code
11
+ validates_uniqueness_of :code
12
+ validates_uniqueness_of :email
13
+ # validates_format_of :email, :with => /^[-a-z0-9_+\.]+\@([-a-z0-9]+\.)+[a-z0-9]{2,4}$/i
14
+ end
@@ -0,0 +1,31 @@
1
+ # -*- encoding : utf-8 -*-
2
+ class Mindapp::Doc
3
+ include Mongoid::Document
4
+ include Mongoid::Timestamps
5
+ field :name, :type => String
6
+ field :filename, :type => String
7
+ field :content_type, :type => String
8
+ field :data_text, :type => String
9
+ field :url, :type => String
10
+ field :basename, :type => String
11
+ field :cloudinary, :type => Boolean
12
+ belongs_to :xmain, :class_name => "Mindapp::Xmain"
13
+ belongs_to :runseq, :class_name => "Mindapp::Runseq"
14
+ belongs_to :user
15
+ belongs_to :service, :class_name => "Mindapp::Service"
16
+ field :ip, :type => String
17
+ field :demontrate, :type => Boolean
18
+ field :ma_secured, :type => Boolean
19
+
20
+ def self.search(q, page, per_page=PER_PAGE)
21
+ paginate :per_page=>per_page, :page => page, :conditions =>
22
+ ["content_type=? AND data_text LIKE ? AND (ma_secured=? OR ma_user_id=?)",
23
+ "output", "%#{q}%", false, session[:user_id] ],
24
+ :order=>'ma_xmain_id DESC', :select=>'DISTINCT ma_xmain_id'
25
+ end
26
+ def self.search_ma_secured(q, page, per_page=PER_PAGE)
27
+ paginate :per_page=>per_page, :page => page, :conditions =>
28
+ ["content_type=? AND data_text LIKE ?", "output", "%#{q}%" ],
29
+ :order=>'ma_xmain_id DESC', :select=>'DISTINCT ma_xmain_id'
30
+ end
31
+ end
@@ -0,0 +1,11 @@
1
+ # -*- encoding : utf-8 -*-
2
+ class Mindapp::Module
3
+ include Mongoid::Document
4
+ field :uid, :type => String
5
+ field :code, :type => String
6
+ field :name, :type => String
7
+ field :role, :type => String
8
+ field :seq, :type => Integer
9
+
10
+ has_many :services, :class_name => "Mindapp::Service"
11
+ end
@@ -0,0 +1,14 @@
1
+ # -*- encoding : utf-8 -*-
2
+ class Mindapp::Notice
3
+ include Mongoid::Document
4
+ include Mongoid::Timestamps
5
+ field :message, :type => String
6
+ field :unread, :type => Boolean
7
+ field :ip, :type => String
8
+ belongs_to :user
9
+
10
+ def self.recent(user_id, ip)
11
+ where(unread: true, ip: ip).last
12
+ # where(unread: true, user_id: user_id, ip: ip).last
13
+ end
14
+ end
@@ -0,0 +1,8 @@
1
+ # -*- encoding : utf-8 -*-
2
+ class Mindapp::Role
3
+ include Mongoid::Document
4
+ include Mongoid::Timestamps
5
+ field :code, :type => String
6
+ field :name, :type => String
7
+ belongs_to :user
8
+ end
@@ -0,0 +1,24 @@
1
+ # -*- encoding : utf-8 -*-
2
+ class Mindapp::Runseq
3
+ include Mongoid::Document
4
+ include Mongoid::Timestamps
5
+ belongs_to :user
6
+ belongs_to :xmain, :class_name => "Mindapp::Xmain"
7
+
8
+ field :action, :type => String
9
+ field :status, :type => String
10
+ field :code, :type => String
11
+ field :name, :type => String
12
+ field :role, :type => String
13
+ field :rule, :type => String
14
+ field :rstep, :type => Integer
15
+ field :form_step, :type => Integer
16
+ field :start, :type => DateTime
17
+ field :stop, :type => DateTime
18
+ field :end, :type => Boolean
19
+ field :xml, :type => String
20
+ field :ip, :type => String
21
+
22
+ scope :form_action, ->{where(:action.in=> ['form','output','pdf'])}
23
+
24
+ end
@@ -0,0 +1,17 @@
1
+ # -*- encoding : utf-8 -*-
2
+ class Mindapp::Service
3
+ include Mongoid::Document
4
+ field :uid, :type => String
5
+ field :module_code, :type => String
6
+ field :code, :type => String
7
+ field :name, :type => String
8
+ field :xml, :type => String
9
+ field :role, :type => String
10
+ field :rule, :type => String
11
+ field :seq, :type => Integer
12
+ field :list, :type => Boolean
13
+ field :ma_secured, :type => Boolean
14
+ field :confirm, :type => Boolean
15
+
16
+ belongs_to :module, :class_name => "Mindapp::Module"
17
+ end
@@ -0,0 +1,38 @@
1
+ # -*- encoding : utf-8 -*-
2
+ class Mindapp::Xmain
3
+ include Mongoid::Document
4
+ field :xid, :type => String
5
+ # Mindapp begin
6
+ include Mongoid::Timestamps
7
+ belongs_to :service, :class_name => "Mindapp::Service"
8
+ field :start, :type => DateTime
9
+ field :stop, :type => DateTime
10
+ field :name, :type => String
11
+ field :ip, :type => String
12
+ field :status, :type => String
13
+ belongs_to :user
14
+ field :xvars, :type => Hash
15
+ field :current_runseq, :type => String
16
+ # Mindapp end
17
+
18
+ has_many :runseqs, :class_name => "Mindapp::Runseq"
19
+ has_many :docs, :class_name => "Mindapp::Doc"
20
+ before_create :assign_xid
21
+
22
+
23
+ # number of xmains on the specified date
24
+ def self.get(xid)
25
+ find_by(xid:xid)
26
+ end
27
+ def assign_xid
28
+ self.xid = Param.gen(:xid)
29
+ end
30
+ def self.number(d)
31
+ all(:conditions=>['DATE(created_at) =?', d.to_date]).count
32
+ end
33
+ def self.search(q, page, per_page=10)
34
+ paginate :per_page=>per_page, :page => page, :conditions =>
35
+ ["LOWER(xvars) LIKE ?", "%#{q}%" ],
36
+ :order=>'created_at DESC'
37
+ end
38
+ end
@@ -0,0 +1,41 @@
1
+ # encoding: utf-8
2
+ class Param
3
+ include Mongoid::Document
4
+ validates_uniqueness_of :code
5
+ # mindapp begin
6
+ include Mongoid::Timestamps
7
+ field :code, :type => String
8
+ field :pid, :type => String
9
+ field :yearly, :type => Boolean
10
+ field :description, :type => String
11
+ # mindapp end
12
+
13
+ def self.get(code)
14
+ p= where(:code=> code).first
15
+ p.pid
16
+ end
17
+ def self.set(code, pid)
18
+ p= where(:code=> code).first
19
+ p.pid = pid.to_s
20
+ p.save
21
+ end
22
+ def self.gen(code)
23
+ p= where(:code=> code).first
24
+ unless p
25
+ p= self.create! :code => code, :pid => '0', :yearly => false, :description => 'auto'
26
+ end
27
+ if p.yearly
28
+ num, year = p.pid.split('/')
29
+ y_now = (Time.now.year.to_i) -1957
30
+ if year.to_i==y_now
31
+ p.pid = "#{num.to_i+1}/#{y_now}"
32
+ else # new year, restart counter
33
+ p.pid = "1/#{y_now}"
34
+ end
35
+ else
36
+ p.pid = (p.pid.to_i+1).to_s
37
+ end
38
+ p.save
39
+ return p.pid
40
+ end
41
+ end
@@ -0,0 +1,14 @@
1
+ # encoding: utf-8
2
+ class Person
3
+ include Mongoid::Document
4
+ # mindapp begin
5
+ include Mongoid::Timestamps
6
+ field :fname, :type => String
7
+ field :lname, :type => String
8
+ field :sex, :type => Integer
9
+ belongs_to :address
10
+ field :dob, :type => Date
11
+ field :phone, :type => String
12
+ field :photo, :type => String
13
+ # mindapp end
14
+ end
@@ -0,0 +1,30 @@
1
+ class User
2
+ include Mongoid::Document
3
+ field :provider, :type => String
4
+ field :uid, :type => String
5
+ field :code, :type => String
6
+ field :email, :type => String
7
+ field :role, :type => String
8
+ belongs_to :identity, :polymorphic => true, :optional => true
9
+ has_many :xmains, :class_name => "Mindapp::Xmain"
10
+
11
+ def has_role(role1)
12
+ return role.upcase.split(',').include?(role1.upcase)
13
+ end
14
+ def self.from_omniauth(auth)
15
+ where(:provider=> auth["provider"], :uid=> auth["uid"]).first || create_with_omniauth(auth)
16
+ end
17
+ def self.create_with_omniauth(auth)
18
+ identity = Identity.find auth.uid
19
+ create! do |user|
20
+ user.provider = auth.provider
21
+ user.uid = auth.uid
22
+ user.code = identity.code
23
+ user.email = identity.email
24
+ user.role = "M"
25
+ end
26
+ end
27
+ def secured?
28
+ role.upcase.split(',').include?(ma_secured_ROLE)
29
+ end
30
+ end
@@ -0,0 +1,7 @@
1
+ <%
2
+ user = User.find_by :code=> $xvars["select_user"]["code"]
3
+ %>
4
+ Role codes seperated by comma
5
+ <p>
6
+ <%= label_tag :role, "Role" %>
7
+ <%= text_field_tag :role, user.role %>
@@ -0,0 +1,4 @@
1
+ <div class="field" data-role="fieldcontain">
2
+ <%= label_tag :code, 'User code' %>
3
+ <%= select_tag :code, options_from_collection_for_select(User.all.asc(:code), :code, :code), "data-native-menu"=>"false" %>
4
+ </div>
@@ -0,0 +1,12 @@
1
+
2
+ %h1= @article.title
3
+ %h1= title 'Member Login'
4
+ .content= @article.text
5
+ %div= markdown(@article.body)
6
+
7
+ = form_for @article, url: "/mindapp/init?s=articles:edit_article" do |f|
8
+ = f.label :title, "Title"
9
+ = f.text_field :title
10
+ = f.label :body, "Body Content"
11
+ = f.cktext_area :body, rows: 10
12
+ = f.submit
@@ -0,0 +1,13 @@
1
+ <%
2
+ article = Article.find_by :id=> $xvars["select_article"]["title"]
3
+ %>
4
+ <%= fields_for article do |f| %>
5
+ <%= f.label :title, "Title" %>
6
+ <%= f.text_field :title %>
7
+ <%= f.label :text, "Text" %>
8
+ <%= f.text_field :text %>
9
+ <%= f.label :text, "Keywords" %>
10
+ <%= f.text_field :keywords %>
11
+ <%= f.label :body, "Body Content" %>
12
+ <%= f.cktext_area :body %>
13
+ <% end %>
@@ -0,0 +1,12 @@
1
+ <%
2
+ if current_user.role.upcase.split(',').include?("A")
3
+ article = Article.all.desc(:created_at)
4
+ else
5
+ article = Article.where(user: current_user).desc(:created_at)
6
+ end
7
+ %>
8
+ <div class="field" data-role="fieldcontain">
9
+ <%= label_tag :title, 'Article title' %>
10
+ <%= select_tag :title, options_from_collection_for_select(article, :id, :title), "data-native-menu"=>"false" %>
11
+ </div>
12
+
@@ -0,0 +1,23 @@
1
+ - @title= "All Articles"
2
+ = paginate @articles
3
+ %table{:id=>"pending-table", :width=>"100%"}
4
+ %tr{:style=>"color:black; background-color:#97BF60;"}
5
+ %th User
6
+ %th Title
7
+ %th Description
8
+ %th Created
9
+ %th Updated
10
+ %th Delete
11
+ - @articles.each do |article|
12
+ %tr
13
+ %td= article.user.code if article.user
14
+ %td= link_to article.title, :controller=>"articles", :action=>"show", :id=>article.id
15
+ %td= article.text
16
+ %td= article.created_at
17
+ %td= article.updated_at
18
+ %td(align='center')
19
+ - next unless login?
20
+ - unless current_user.role.upcase.split(',').include?("A")
21
+ - next unless article.user
22
+ - next unless current_user == article.user
23
+ = link_to image_tag('delete.png', style:'border:none; float:none;'), "#", :onclick=>"if (confirm('Please Confirm')) {location.hash='/articles/destroy/#{article.id}';}"