jinda 0.7.7.2 → 0.7.7.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (232) hide show
  1. checksums.yaml +4 -4
  2. data/app/config/routes.rb +44 -0
  3. data/lib/generators/jinda/templates/README.md +3 -1
  4. data/lib/generators/jinda/templates/app/assets/stylesheets/application.css.scss +2 -2
  5. data/lib/generators/jinda/templates/app/assets/stylesheets/jinda_jqm.css.scss +32 -0
  6. data/lib/jinda/version.rb +1 -1
  7. data/test/dummy/Dockerfile +28 -0
  8. data/test/dummy/Gemfile +102 -0
  9. data/test/dummy/Gemfile.lock +514 -0
  10. data/test/dummy/Guardfile +96 -0
  11. data/test/dummy/{db/development.sqlite3 → README.md} +0 -0
  12. data/test/dummy/Rakefile +1 -1
  13. data/test/dummy/app/assets/config/manifest.js +2 -1
  14. data/test/dummy/app/assets/config/manifest.js-rails +2 -0
  15. data/test/dummy/app/{javascript/packs → assets/javascripts}/application.js +4 -4
  16. data/test/dummy/app/assets/stylesheets/application.scss +23 -0
  17. data/test/dummy/app/assets/stylesheets/jinda.scss +253 -0
  18. data/test/dummy/app/controllers/adminltes_controller.rb +2 -0
  19. data/test/dummy/app/controllers/admins_controller.rb +6 -0
  20. data/test/dummy/app/controllers/api/v1/notes_controller.rb +81 -0
  21. data/test/dummy/app/controllers/application_controller.rb +39 -0
  22. data/test/dummy/app/controllers/application_controller.rb.bak +2 -0
  23. data/test/dummy/app/controllers/articles_controller.rb +110 -0
  24. data/test/dummy/app/controllers/comments_controller.rb +31 -0
  25. data/test/dummy/app/controllers/docs_controller.rb +56 -0
  26. data/test/dummy/app/controllers/identities_controller.rb +5 -0
  27. data/test/dummy/app/controllers/notes_controller.rb +84 -0
  28. data/test/dummy/app/controllers/password_resets.rb +28 -0
  29. data/test/dummy/app/controllers/password_resets_controller.rb +34 -0
  30. data/test/dummy/app/controllers/sessions_controller.rb +44 -0
  31. data/test/dummy/app/controllers/sitemap_controller.rb +12 -0
  32. data/test/dummy/app/controllers/users_controller.rb +35 -0
  33. data/test/dummy/app/helpers/admins_helper.rb +2 -0
  34. data/test/dummy/app/helpers/application_helper.rb +31 -0
  35. data/test/dummy/app/helpers/application_helper.rb.bak +2 -0
  36. data/test/dummy/app/helpers/articles_helper.rb +2 -0
  37. data/test/dummy/app/helpers/basic_helper.rb +2 -0
  38. data/test/dummy/app/helpers/comments_helper.rb +2 -0
  39. data/test/dummy/app/helpers/ctrs_helper.rb +2 -0
  40. data/test/dummy/app/helpers/devs_helper.rb +2 -0
  41. data/test/dummy/app/helpers/pictures_helper.rb +2 -0
  42. data/test/dummy/app/helpers/sitemap_helper.rb +2 -0
  43. data/test/dummy/app/helpers/users_helper.rb +2 -0
  44. data/test/dummy/app/jinda/index.mm +486 -0
  45. data/test/dummy/app/jinda/template/index.mm +366 -0
  46. data/test/dummy/app/jinda/template/linkview.haml +21 -0
  47. data/test/dummy/app/jinda/template/view.html.erb +34 -0
  48. data/test/dummy/app/mailers/jinda_mailer.rb +7 -0
  49. data/test/dummy/app/mailers/note_mailer.rb +10 -0
  50. data/test/dummy/app/mailers/user_mailer.rb +15 -0
  51. data/test/dummy/app/models/address.rb +14 -0
  52. data/test/dummy/app/models/article.rb +14 -0
  53. data/test/dummy/app/models/comment.rb +14 -0
  54. data/test/dummy/app/models/identity.rb +18 -0
  55. data/test/dummy/app/models/jinda/doc.rb +36 -0
  56. data/test/dummy/app/models/jinda/module.rb +11 -0
  57. data/test/dummy/app/models/jinda/notice.rb +14 -0
  58. data/test/dummy/app/models/jinda/role.rb +8 -0
  59. data/test/dummy/app/models/jinda/runseq.rb +24 -0
  60. data/test/dummy/app/models/jinda/service.rb +17 -0
  61. data/test/dummy/app/models/jinda/xmain.rb +38 -0
  62. data/test/dummy/app/models/note.rb +22 -0
  63. data/test/dummy/app/models/param.rb +41 -0
  64. data/test/dummy/app/models/person.rb +14 -0
  65. data/test/dummy/app/models/user.rb +66 -0
  66. data/test/dummy/app/views/adminbsbs/content.haml +241 -0
  67. data/test/dummy/app/views/adminltes/dashboard1.haml +461 -0
  68. data/test/dummy/app/views/adminltes/dashboard2.haml +656 -0
  69. data/test/dummy/app/views/admins/edit_role/edit_role.html.erb +7 -0
  70. data/test/dummy/app/views/admins/edit_role/select_user.html.erb +4 -0
  71. data/test/dummy/app/views/api/v1/note.haml +0 -0
  72. data/test/dummy/app/views/articles/_report.haml +35 -0
  73. data/test/dummy/app/views/articles/edit.haml +23 -0
  74. data/test/dummy/app/views/articles/edit_article/edit_article.html.erb +15 -0
  75. data/test/dummy/app/views/articles/edit_article/select_article.html.erb +12 -0
  76. data/test/dummy/app/views/articles/index.haml +5 -0
  77. data/test/dummy/app/views/articles/my.haml +5 -0
  78. data/test/dummy/app/views/articles/new_article/form_article.html.erb +16 -0
  79. data/test/dummy/app/views/articles/show.html.haml +58 -0
  80. data/test/dummy/app/views/articles/xedit_article/edit_article.html.erb +13 -0
  81. data/test/dummy/app/views/ctrs/vfolder1/viewfile1.html.erb +23 -0
  82. data/test/dummy/app/views/ctrs/vfolder1/viewfile2.html.erb +23 -0
  83. data/test/dummy/app/views/ctrs/vfolder2/viewfile2.html.erb +23 -0
  84. data/test/dummy/app/views/custom/_adsense.haml +6 -0
  85. data/test/dummy/app/views/docs/doc_edit/doc_edit.html.erb +21 -0
  86. data/test/dummy/app/views/docs/doc_edit/doc_select.html.erb +14 -0
  87. data/test/dummy/app/views/docs/doc_new/doc_form.html.erb +32 -0
  88. data/test/dummy/app/views/docs/doc_new/doc_form.md +36 -0
  89. data/test/dummy/app/views/docs/doc_xedit/doc_edit.html.erb +21 -0
  90. data/test/dummy/app/views/docs/edit/select_note.html.erb +14 -0
  91. data/test/dummy/app/views/docs/index.haml +21 -0
  92. data/test/dummy/app/views/docs/my.haml +27 -0
  93. data/test/dummy/app/views/identities/new-bak.html.haml +32 -0
  94. data/test/dummy/app/views/identities/new.html.haml +45 -0
  95. data/test/dummy/app/views/jinda/_activity.md +10 -0
  96. data/test/dummy/app/views/jinda/_menu.haml +27 -0
  97. data/test/dummy/app/views/jinda/_menu_mm.haml +44 -0
  98. data/test/dummy/app/views/jinda/_model.md +5 -0
  99. data/test/dummy/app/views/jinda/_modul.md +9 -0
  100. data/test/dummy/app/views/jinda/_pending_home.haml +5 -0
  101. data/test/dummy/app/views/jinda/_pending_page.haml +24 -0
  102. data/test/dummy/app/views/jinda/_service.md +24 -0
  103. data/test/dummy/app/views/jinda/_static.haml +13 -0
  104. data/test/dummy/app/views/jinda/doc-thai.md +37 -0
  105. data/test/dummy/app/views/jinda/doc.md +36 -0
  106. data/test/dummy/app/views/jinda/error_logs.haml +22 -0
  107. data/test/dummy/app/views/jinda/feed.rss.builder +27 -0
  108. data/test/dummy/app/views/jinda/help.haml +20 -0
  109. data/test/dummy/app/views/jinda/index.html.haml +53 -0
  110. data/test/dummy/app/views/jinda/logs.haml +22 -0
  111. data/test/dummy/app/views/jinda/notice_logs.haml +18 -0
  112. data/test/dummy/app/views/jinda/pending.haml +1 -0
  113. data/test/dummy/app/views/jinda/run_form.haml +42 -0
  114. data/test/dummy/app/views/jinda/run_output.haml +38 -0
  115. data/test/dummy/app/views/jinda/search.haml +20 -0
  116. data/test/dummy/app/views/jinda/status.haml +61 -0
  117. data/test/dummy/app/views/jinda_mailer/gmail.html.erb +9 -0
  118. data/test/dummy/app/views/layouts/_head.html.erb +10 -0
  119. data/test/dummy/app/views/layouts/_meta_tag.html.erb +19 -0
  120. data/test/dummy/app/views/layouts/application.haml +51 -0
  121. data/test/dummy/app/views/layouts/application.haml.bak +4 -0
  122. data/test/dummy/app/views/layouts/{application.html.erb → application.html.erb.bak} +2 -1
  123. data/test/dummy/app/views/layouts/bsb/_footer.haml +7 -0
  124. data/test/dummy/app/views/layouts/bsb/_header.haml +147 -0
  125. data/test/dummy/app/views/layouts/bsb/_menu.haml +47 -0
  126. data/test/dummy/app/views/layouts/bsb/_menu_mm.haml +34 -0
  127. data/test/dummy/app/views/layouts/bsb/_rightbar.haml +123 -0
  128. data/test/dummy/app/views/layouts/bsb/_sidebar.haml +155 -0
  129. data/test/dummy/app/views/layouts/bsb/application.haml-bsb +47 -0
  130. data/test/dummy/app/views/layouts/gmail.html.erb +9 -0
  131. data/test/dummy/app/views/layouts/jqm/_full.haml +33 -0
  132. data/test/dummy/app/views/layouts/jqm/_page.haml +16 -0
  133. data/test/dummy/app/views/layouts/jqm/application.haml-jqm +4 -0
  134. data/test/dummy/app/views/layouts/lte/_flash.haml +9 -0
  135. data/test/dummy/app/views/layouts/lte/_footer.haml +7 -0
  136. data/test/dummy/app/views/layouts/lte/_header.haml +111 -0
  137. data/test/dummy/app/views/layouts/lte/_menu.haml +42 -0
  138. data/test/dummy/app/views/layouts/lte/_menu_mm.haml +36 -0
  139. data/test/dummy/app/views/layouts/lte/_rightbar.haml +123 -0
  140. data/test/dummy/app/views/layouts/lte/_sidebar.haml +154 -0
  141. data/test/dummy/app/views/layouts/mailer.html.haml +3 -0
  142. data/test/dummy/app/views/layouts/mailer.text.haml +1 -0
  143. data/test/dummy/app/views/layouts/mobile.html.erb +13 -0
  144. data/test/dummy/app/views/layouts/mobilejq.html.erb +31 -0
  145. data/test/dummy/app/views/layouts/print.html.erb +22 -0
  146. data/test/dummy/app/views/layouts/utf8.html.erb +22 -0
  147. data/test/dummy/app/views/note_mailer/gmail.html.haml +7 -0
  148. data/test/dummy/app/views/note_mailer/gmail.text.haml +8 -0
  149. data/test/dummy/app/views/notes/delete/select_note.html.erb +14 -0
  150. data/test/dummy/app/views/notes/edit/edit_note.html.erb +10 -0
  151. data/test/dummy/app/views/notes/edit/select_note.html.erb +14 -0
  152. data/test/dummy/app/views/notes/index.haml +71 -0
  153. data/test/dummy/app/views/notes/mail/display_mail.html.erb +20 -0
  154. data/test/dummy/app/views/notes/mail/select_note.html.erb +19 -0
  155. data/test/dummy/app/views/notes/mail/show.html.haml +13 -0
  156. data/test/dummy/app/views/notes/my.haml +21 -0
  157. data/test/dummy/app/views/notes/new/new_note.html.erb +13 -0
  158. data/test/dummy/app/views/notes/show.haml +10 -0
  159. data/test/dummy/app/views/notes/xedit/edit_note.html.erb +10 -0
  160. data/test/dummy/app/views/password_resets/edit.html.erb +21 -0
  161. data/test/dummy/app/views/password_resets/new.html.haml +11 -0
  162. data/test/dummy/app/views/sessions/new-bak.html.haml +22 -0
  163. data/test/dummy/app/views/sessions/new.html.haml +35 -0
  164. data/test/dummy/app/views/sitemap/index.xml.haml +10 -0
  165. data/test/dummy/app/views/user_mailer/password_reset.html.haml +3 -0
  166. data/test/dummy/app/views/user_mailer/password_reset.text.erb +3 -0
  167. data/test/dummy/app/views/user_mailer/password_reset.text.haml +3 -0
  168. data/test/dummy/app/views/users/index.haml +13 -0
  169. data/test/dummy/app/views/users/pwd/enter.html.erb +6 -0
  170. data/test/dummy/app/views/users/user/enter_user.html.erb +10 -0
  171. data/test/dummy/bin/rails +3 -3
  172. data/test/dummy/bin/rake +2 -2
  173. data/test/dummy/bin/setup +9 -17
  174. data/test/dummy/config/application.rb +51 -9
  175. data/test/dummy/config/boot.rb +3 -4
  176. data/test/dummy/config/cloudinary.yml +9 -0
  177. data/test/dummy/config/credentials.yml.enc +1 -0
  178. data/test/dummy/config/environment.rb +7 -1
  179. data/test/dummy/config/environments/development.rb +20 -20
  180. data/test/dummy/config/environments/production.rb +16 -40
  181. data/test/dummy/config/environments/test.rb +19 -11
  182. data/test/dummy/config/initializers/assets.rb +1 -1
  183. data/test/dummy/config/initializers/content_security_policy.rb +21 -24
  184. data/test/dummy/config/initializers/filter_parameter_logging.rb +6 -2
  185. data/test/dummy/config/initializers/fix_mongoid_generator.rb-org +14 -0
  186. data/test/dummy/config/initializers/inflections.rb +4 -4
  187. data/test/dummy/config/initializers/jinda.rb +14 -0
  188. data/test/dummy/config/initializers/mongoid.rb +10 -0
  189. data/test/dummy/config/initializers/omniauth.rb +17 -0
  190. data/test/dummy/config/initializers/permissions_policy.rb +11 -0
  191. data/test/dummy/config/locales/en.yml +3 -3
  192. data/test/dummy/config/mongoid.yml +182 -0
  193. data/test/dummy/config/mongoid.yml-docker +182 -0
  194. data/test/dummy/config/mongoid.yml-localhost +182 -0
  195. data/test/dummy/config/puma.rb +7 -2
  196. data/test/dummy/config/routes.rb +5 -1
  197. data/test/dummy/config.ru +2 -1
  198. data/test/dummy/db/seeds.rb +6 -0
  199. data/test/dummy/docker-compose.yml +21 -0
  200. data/test/dummy/dot/dot.env +2 -0
  201. data/test/dummy/entrypoint.sh +13 -0
  202. data/test/dummy/log/development.log +2329 -6
  203. data/test/dummy/public/robots.txt +1 -0
  204. data/test/dummy/spec/controllers/api/v1_get_index_spec.rb +23 -0
  205. data/test/dummy/spec/controllers/api/v1_get_my_spec.rb +14 -0
  206. data/test/dummy/spec/controllers/api/v1_post_spec.rb +19 -0
  207. data/test/dummy/spec/controllers/sessions_controller_spec.rb +98 -0
  208. data/test/dummy/spec/features/userlogins_spec.rb +23 -0
  209. data/test/dummy/spec/mailers/note_spec.rb +24 -0
  210. data/test/dummy/spec/mailers/previews/note_preview.rb +9 -0
  211. data/test/dummy/spec/models/note_spec.rb +41 -0
  212. data/test/dummy/spec/models/user_spec.rb +12 -0
  213. data/test/dummy/spec/rails_helper.rb +42 -0
  214. data/test/dummy/spec/spec_helper.rb +80 -0
  215. data/test/dummy/spec/support/authentication_helper.rb +20 -0
  216. data/test/dummy/spec/support/databasecleaner.rb +13 -0
  217. data/test/dummy/spec/support/factory_bot.rb +12 -0
  218. data/test/dummy/spec/support/omniauth_macros.rb +38 -0
  219. data/test/dummy/spec/support/request_spec_helper.rb +8 -0
  220. data/test/dummy/spec/views/articles/_article.html.erb_spec.rbx +14 -0
  221. data/test/dummy/tmp/development_secret.txt +1 -1
  222. metadata +197 -16
  223. data/test/dummy/app/assets/stylesheets/application.css +0 -15
  224. data/test/dummy/app/models/application_record.rb +0 -3
  225. data/test/dummy/config/database.yml +0 -25
  226. data/test/dummy/config/initializers/application_controller_renderer.rb +0 -8
  227. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -7
  228. data/test/dummy/config/initializers/cookies_serializer.rb +0 -5
  229. data/test/dummy/config/initializers/mime_types.rb +0 -4
  230. data/test/dummy/config/initializers/wrap_parameters.rb +0 -14
  231. data/test/dummy/config/spring.rb +0 -6
  232. data/test/dummy/config/storage.yml +0 -34
@@ -0,0 +1,5 @@
1
+ #pending{"data-role" => "page"}
2
+ %div{"data-role" => "header" , "data-backbtn"=>"false"}
3
+ %h1 Pending Tasks
4
+ %div{"data-role" => "content"}
5
+ = render :partial => "pending_page", :locals=>{:xmains=>@xmains}
@@ -0,0 +1,24 @@
1
+ - @xmains= xmains
2
+ %table{:id=>"pending-table", :width=>"100%"}
3
+ %tr{:style=>"color:white; background-color:#97BF60;"}
4
+ %th id
5
+ %th task
6
+ %th step
7
+ %th starter
8
+ %th begin
9
+ %th cancel
10
+ - @xmains.each do |xmain|
11
+ - @xmain= xmain
12
+ - next unless xmain.current_runseq
13
+ - @runseq= Jinda::Runseq.find(xmain.current_runseq)
14
+ - next unless @runseq
15
+ - next unless %w(form output pdf).include?(@runseq.action)
16
+ - next if @xmain.runseqs.first==@xmain.current_runseq && @xmain.user!=current_ma_user
17
+ - next unless authorize?
18
+ %tr
19
+ %td= link_to xmain.xid, :controller=>"jinda", :action=>"run", :id=>xmain.id
20
+ %td= link_to xmain.name, :controller=>"jinda", :action=>"run", :id=>xmain.id
21
+ %td= @runseq.name
22
+ %td{:align=>'center'}= xmain.user.try :code
23
+ %td= xmain.start.strftime("%c")
24
+ %td(align='center')= link_to image_tag('delete.png', style:'border:none; float:none;'), "#", :onclick=>"if (confirm('Please Confirm')) {location.hash='/jinda/cancel/#{xmain.id}';}"
@@ -0,0 +1,24 @@
1
+ <%- d= Nokogiri::XML(service.xml) %>
2
+ <%- if service.code=="link" %>
3
+ #### งาน<%= service.name.split(':')[0] %>
4
+ <%- if !(d/'node/node').blank? && (d/'node/node')[0]['TEXT'] %>
5
+ <%= uncomment (d/'node/node')[0]['TEXT'] %>
6
+ <%- end %>
7
+ <%- else %>
8
+ #### งาน<%= service.name %>
9
+ <%- md_file= "#{Rails.root}/app/views/#{service.module.code}/#{service.code}.md" %>
10
+
11
+ <%= File.read md_file if File.exist?(md_file) %>
12
+ <%- j= 1 %>
13
+ <%- (d/'/node/node').each do |activity| %>
14
+ <%- next unless (activity/'icon')[0] %>
15
+ <%- action= freemind2action((activity/'icon')[0]['BUILTIN']) %>
16
+ <%- next unless (action=='form') %>
17
+ <%= render :partial=>'jinda/activity.md', :locals=>{:activity=>activity, :j=>j, :service=>service} %>
18
+ <%- j= j + 1 %>
19
+ <%- end %>
20
+ <%- end %>
21
+
22
+ <!--%= #code_div File.read(model_file) %-->
23
+
24
+ <!--%= # code_div model.camelize.constantize.columns.to_yaml %-->
@@ -0,0 +1,13 @@
1
+ #search{"data-role" => "page"}
2
+ %div{"data-role" => "header", "data-backbtn" => "false"}
3
+ %h1 Search
4
+ %div{"data-role" => "content"}
5
+ - form_tag({:controller=>"jinda", :action=>"search"}, :method => "get" ) do
6
+ = text_field_tag :q, "", :type=>"search", :required=>true, :placeholder=>"key word", :onkeypress=>"$('input').unbind('keypress');"
7
+ = submit_tag "Search", "data-inline"=>"true"
8
+ - form_tag({:controller=>"jinda", :action=>"status"}, :method => "get" ) do
9
+ = text_field_tag :id, nil, :required=>true, :placeholder=>"task number", :onkeypress=>"$('input').unbind('keypress');"
10
+ = submit_tag "Status", "data-inline"=>"true"
11
+ = link_to "Pending Tasks", "#", :onclick=>"location.hash='/jinda/pending'", "data-role"=>"button"
12
+ = link_to "Refresh", "#", :onclick=>"window.location.replace('/')", "data-role"=>"button"
13
+ = link_to "About", "#", :onclick=>"location.hash='#about'", "data-role"=>"button"
@@ -0,0 +1,37 @@
1
+ <style>code { font-size: 0.8em;}</style>
2
+
3
+ <%= File.read('README.md') %>
4
+
5
+ ***
6
+
7
+ # คู่มือการใช้งาน
8
+
9
+ <%= render :partial=>'jinda/modul.md', :collection=> Jinda::Module.all.asc(:seq) %>
10
+
11
+ ***
12
+
13
+ # คู่มือผู้ดูแลระบบ
14
+
15
+ ## โครงสร้างข้อมูล
16
+
17
+ <%- models= @app.elements["//node[@TEXT='models']"] %>
18
+
19
+ <%= render :partial=>'jinda/model.md', :collection=> models.map {|m| m.attributes["TEXT"] } %>
20
+
21
+ ***
22
+
23
+ # ภาคผนวก
24
+
25
+ ## markdown
26
+
27
+ คู่มือนี้จัดทำขึ้นโดยอัตโนมัติจาก mind map และส่วนต่างๆ ของรหัสโปรแกรม
28
+ ผู้เกี่ยวข้องสามารถเขียนวิธีการใช้งานได้อย่างอิสระ โดยใช้คำสั่ง
29
+ <a href="http://daringfireball.net/projects/markdown/syntax" target="_blank">markdown</a>
30
+ ในการเขียนคู่มือประกอบเข้ากับส่วนต่างๆของระบบงาน ดังต่อไปนี้
31
+
32
+ * คำอธิบายระบบในภาพรวม อยู่ในไฟล์ `README.md`
33
+ * คำอธิบายระบบงาน อยู่ในไฟล์ `app/controllers/<ระบบงาน>.md`
34
+ * คำอธิบายงาน อยู่ในไฟล์ `app/views/<ระบบงาน>/<งาน>.md`
35
+ * คำอธิบายงานของ link สร้างเป็นกิ่งลูกต่อจาก link นั้น
36
+ * คำอธิบายขั้นตอน อยู่ในไฟล์ `app/views/<ระบบงาน>/<งาน>/<ขั้นตอน>.md`
37
+ * ตัวอย่างหน้าจอ อยู่ในไฟล์ `app/views/<ระบบงาน>/<งาน>/<ขั้นตอน>.png`
@@ -0,0 +1,36 @@
1
+ <style>code { font-size: 0.8em;}</style>
2
+
3
+ <%= File.read('README.md') %>
4
+
5
+ ***
6
+
7
+ # Help (UNDER CONSTRUCTION: DUI)
8
+
9
+ <%= render :partial=>'jinda/modul.md', :collection=> Jinda::Module.all.asc(:seq) %>
10
+
11
+ ***
12
+
13
+ # Admin
14
+
15
+ ## Data Structure
16
+
17
+ <%- models= @app.elements["//node[@TEXT='models']"] %>
18
+
19
+ <%= render :partial=>'jinda/model.md', :collection=> models.map {|m| m.attributes["TEXT"] } %>
20
+
21
+ ***
22
+
23
+ # Contents
24
+
25
+ ## markdown
26
+
27
+ This document created and edited with
28
+ <a href="http://daringfireball.net/projects/markdown/syntax" target="_blank">markdown</a>
29
+
30
+ Contents:
31
+
32
+ * Requirement at `README.md`
33
+ * Controller Help at `app/controllers/system.md`
34
+ * Project at `app/views/project/<งาน>.md`
35
+ *
36
+ *
@@ -0,0 +1,22 @@
1
+ - @title= "Error Logs"
2
+ = paginate @xmains
3
+ %table{:id=>"pending-table", :width=>"100%"}
4
+ %tr{:style=>"color:white; background-color:#97BF60;"}
5
+ %th id
6
+ %th task
7
+ %th step
8
+ %th starter
9
+ %th begin
10
+ %th message
11
+ - @xmains.each do |xmain|
12
+ - @xmain= xmain
13
+ - next unless xmain.current_runseq
14
+ - @runseq= Jinda::Runseq.find(xmain.current_runseq)
15
+ - next unless @runseq
16
+ %tr
17
+ %td(style='vertical-align:top;')= xmain.xid
18
+ %td(style='vertical-align:top;')= xmain.name
19
+ %td(style='vertical-align:top;')= @runseq.name
20
+ %td(align="center" style='vertical-align:top;')= xmain.user.try :code
21
+ %td(style='vertical-align:top;')= xmain.start.strftime("%c")
22
+ %td(style="vertical-align:top;width:40%")= truncate(xmain.xvars["error"], :length=> 100)
@@ -0,0 +1,27 @@
1
+ xml.instruct! # <?xml version="1.0" encoding="UTF-8"?>
2
+ xml.comment! "a comment" # <!-- a comment -->
3
+ xml.feed "xmlns" => "http://www.w3.org/2005/Atom" do
4
+ xml.title "My Atom Feed"
5
+ # xml.subtitle h(@feed.subtitle), "type" => 'html'
6
+ xml.link url_for( :only_path => false,
7
+ :controller => 'main',
8
+ :action => 'atom' )
9
+ xml.updated Time.now.iso8601
10
+ xml.author do
11
+ xml.name "Jens-Christian Fischer"
12
+ xml.email "jcfischer@gmail.com"
13
+ end
14
+ @waypoints.each do |entry|
15
+ xml.entry do
16
+ xml.code entry.code
17
+ xml.title entry.name
18
+ xml.link "href" => url_for( :only_path => false,
19
+ :controller => 'entries',
20
+ :action => 'show',
21
+ :id => entry )
22
+ xml.id entry.uid
23
+ xml.updated entry.updated_at.iso8601
24
+ xml.summary h(entry.description)
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,20 @@
1
+ %div(style="text-align:center")
2
+ = image_tag "logo_jinda.png"
3
+ %h2 การติดตั้ง
4
+ %ul
5
+ %li
6
+ ติดตั้ง Google Chrome โดยดาวน์โหลดจาก
7
+ = link_to "https://www.google.com/chrome", "https://www.google.com/chrome", :target=>"_blank"
8
+ %li etc.
9
+ %h2 การใช้งาน
10
+ %ul
11
+ %li aaa
12
+ %li
13
+ bbb
14
+ %ul
15
+ %li bb1
16
+ %li bb2
17
+ %h2 ผู้ดูแลระบบ
18
+ %ul
19
+ %li การทำสำรองข้อมูล
20
+ %li การบูรณาการข้อมูลกลาง
@@ -0,0 +1,53 @@
1
+ .content-header
2
+ %div(style="text-align:center")
3
+ = image_tag "logo_jinda.png"
4
+ %ol.breadcrumb
5
+ %li.fa.fa-dashboard
6
+ Dashboard
7
+ .content
8
+ %div.row::before
9
+ %div.col-lg-4.col-md-4.col-xs-12
10
+ %div.small-box.bg-aqua
11
+ %div.inner
12
+ %b Current gems version found:
13
+ %ul
14
+ %li Ruby Version #{RUBY_VERSION }
15
+ %li Rails Version #{Rails.version }
16
+ %li gem jinda #{Gem.loaded_specs['jinda'].version}
17
+ %div.col-lg-4.col-md-4.col-xs-12
18
+ %div.small-box.bg-green
19
+ %div.inner
20
+ %b Recently tested with:
21
+ %ul
22
+ %li Rubygems 2.7.1
23
+ %li Rails 6.1.0
24
+ %div.col-lg-4.col-md-4.col-xs-12
25
+ %div.small-box.bg-yellow
26
+ %div.inner
27
+ %b Create New Rails:
28
+ %ul
29
+ %li rails new YOURAPP --skip-test-unit --skip-bundle --skip-active-record --skip-javascript --skip-turbolinks
30
+ %li (rails new YOURAPP -BOTJ)
31
+ %div.col-lg-6.col-md-12.col-xs-12
32
+ %div.small-box.bg-red
33
+ %div.inner
34
+ %b Installation
35
+ %ul
36
+ %li add gem 'jinda' # to Gemfile then $ bundle
37
+ %li rails generate jinda:install, then bundle
38
+ %li rails generate jinda:config
39
+ %li rails jinda:seed, will create initial user:password admin:secret
40
+ %li when update app/jinda/index.mm, run rake jinda:update
41
+ %div.col-lg-6.col-md-12.col-xs-12
42
+ %div.small-box.bg-blue
43
+ %div.inner
44
+ %b Option: Themes available: Jinda_adminbsb, Jinda_adminlte
45
+ %ul
46
+ %li To install gem 'jinda_adminlte'
47
+ %li Install
48
+ %li gem 'jinda_adminlte'
49
+ %li Then
50
+ %li $ bundle
51
+ %li $ rails generate jinda_adminlte:install
52
+
53
+
@@ -0,0 +1,22 @@
1
+ - @title= "Jinda Logs"
2
+ = paginate @xmains
3
+ %table{:id=>"pending-table", :width=>"100%"}
4
+ %tr{:style=>"color:white; background-color:#97BF60;"}
5
+ %th id
6
+ %th task
7
+ %th step
8
+ %th starter
9
+ %th begin
10
+ %th status
11
+ - @xmains.each do |xmain|
12
+ - @xmain= xmain
13
+ - next unless xmain.current_runseq
14
+ - @runseq= Jinda::Runseq.find(xmain.current_runseq)
15
+ - next unless @runseq
16
+ %tr
17
+ %td= link_to xmain.xid, "/jinda/status?xid=#{xmain.xid}"
18
+ %td= xmain.name
19
+ %td= @runseq.name
20
+ %td(align="center")= xmain.user.try :code
21
+ %td= xmain.start.strftime("%c")
22
+ %td(align="center")= status_icon(xmain.status)
@@ -0,0 +1,18 @@
1
+ - @title= "Notice Error Logs"
2
+ = paginate @notices
3
+ %table{:id=>"pending-table", :width=>"100%"}
4
+ %tr{:style=>"color:white; background-color:#97BF60;"}
5
+ %th created
6
+ %th user
7
+ %th message
8
+ - @notices.each do |notice|
9
+ - @notice= notice
10
+ - current_notice = @notice.id
11
+ - #current_notice_user = @notice.user
12
+ - notice_user = (User.find @notice.user ? notice.user : 0)
13
+ - (notice_user_name = notice_user.code) if notice_user
14
+
15
+ %tr
16
+ %td(style='vertical-align:top;')= notice.created_at
17
+ %td(style='vertical-align:top;')= notice_user_name
18
+ %td(style='vertical-align:top;')= notice.message
@@ -0,0 +1 @@
1
+ = render :partial=>"pending_page", :locals=>{:xmains=>@xmains}
@@ -0,0 +1,42 @@
1
+ .container
2
+ .head
3
+ = step(@runseq.form_step, @xvars['total_form_steps'])
4
+ %p
5
+ - user = current_ma_user || User.new
6
+ - form_class = 'formtastic'
7
+ - next_step = 'end_form'
8
+ - if @help
9
+ %div(data-role="collapsible" data-theme="e" data-content-theme="c" data-mini="true")
10
+ %h3 Help
11
+ %p= markdown(@help)
12
+ = form_tag({ :action => next_step } , {:multipart => true, :onSubmit=>'return validate()', :class=>form_class, "data-ajax"=>"#{ajax?(@ui)}"}) do
13
+ = hidden_field_tag 'xmain_id', @xmain.id
14
+ = hidden_field_tag 'ajax', ajax?(@ui)
15
+ = hidden_field_tag 'runseq_id', @runseq.id
16
+ = hidden_field_tag 'step', @xvars[:current_step]
17
+ %div(data-role="fieldcontain")
18
+ = render :inline=> @ui
19
+ %p
20
+ = submit_tag NEXT
21
+ %p
22
+ :javascript
23
+ $(function() {
24
+ $('.required').append('<span style="color:red"> *</span>');
25
+ $('.refresh').append(" <img src='/images/refresh.png'/>");
26
+ $("input").keypress(function (evt) {
27
+ //Deterime where our character code is coming from within the event
28
+ var charCode = evt.charCode || evt.keyCode;
29
+ if (charCode == 13) { //Enter key's keycode
30
+ alert("Please click the button");
31
+ return false;
32
+ }
33
+ });
34
+ });
35
+ $( document ).one( "pagechange", function(){
36
+ $('input[type="file"]').textinput({theme: 'c'});
37
+ });
38
+
39
+ function validate() {
40
+ // alert("Validate");
41
+ }
42
+
@@ -0,0 +1,38 @@
1
+ .head
2
+ - @title= @xmain.name
3
+ = step(@runseq.form_step, @xvars['total_form_steps'])
4
+ #title(style='text-align:right;')= "click '#{@runseq.name}' to print"
5
+ %p
6
+ =javascript_include_tag "disable_enter_key"
7
+ = form_tag({ :action => 'end_output' } , {:multipart => true, :onKeyPress=>'return disableEnterKey(event)', :class=>'formtastic'}) do
8
+ = hidden_field_tag 'xmain_id', @xmain.id
9
+ = hidden_field_tag 'runseq_id', @runseq.id
10
+ = hidden_field_tag 'step', @xvars[:current_step]
11
+ #output_link
12
+ = link_to @runseq.name, url_for(:controller=>'jinda', :action=>'document', :id=>@doc.id), :target=>'_blank'
13
+ %p
14
+ .label
15
+ = image_tag "cog.png"
16
+ = t "documents"
17
+ %table{:width=>"100%"}
18
+ %tr{:style=>"color:white; background-color:#6A6A6A;"}
19
+ %th= t "id"
20
+ %th= t "document"
21
+ %th= t "file name"
22
+ %th= t "user"
23
+ %th= "date"
24
+ - @xmain.docs.each do |doc|
25
+ - next unless doc.ma_display
26
+ %tr
27
+ %td= doc.id
28
+ %td
29
+ - if doc.content_type=='output'
30
+ = image_tag 'page_output.png'
31
+ - else
32
+ = image_tag 'page_attach.png'
33
+ = link_to_blank align_text(doc.name), :controller=>"jinda", :action=>:document, :id=>doc.id
34
+ %td= doc.filename
35
+ %td= doc.user.code
36
+ %td= doc.updated_at
37
+ = submit_tag @message
38
+ %p
@@ -0,0 +1,20 @@
1
+ /%h3= "Search #{@q}"
2
+ = will_paginate @docs, :class=>'flickr_pagination', :params=>{:q=>@q}
3
+ /= will_paginate @xmains, :class=>'flickr_pagination', :params=>{:q=>@q}
4
+
5
+ %table{:width=>"100%"}
6
+ %tr{:style=>"color:white; background-color:#6A6A6A; text-shadow:none;"}
7
+ %th id
8
+ %th task
9
+ %th starter
10
+ %th begin
11
+ %th end
12
+ %th status
13
+ - @xmains.each do |xmain|
14
+ %tr
15
+ %td= link_to xmain.id, :action=>"status", :id=>xmain.id
16
+ %td= link_to xmain.name, :action=>"status", :id=>xmain.id
17
+ %td{:align=>'center'}= xmain.ma_user.full_name
18
+ %td= date_thai xmain.start, :date_only=>true
19
+ %td= xmain.stop ? date_thai(xmain.stop, :date_only=>true) : '&nbsp;'
20
+ %td(align='center')= status_icon xmain
@@ -0,0 +1,61 @@
1
+ %table{:width=>"100%"}
2
+ %tr{:style=>"color:white; background-color:#6A6A6A;"}
3
+ %th Status
4
+ %th Step
5
+ %th Starter
6
+ %th Begin
7
+ %th End
8
+ - @xmain.runseqs.form_action.each do |r|
9
+ %tr
10
+ - if @xmain.status=='X'
11
+ %td{:align=>'center'}= image_tag 'cancel.png'
12
+ - else
13
+ %td{:align=>'center'}= status_icon(r.status)
14
+ %td= r.name
15
+ %td{:align=>'center'}
16
+ - if r.role.blank? && @xvars[:action]
17
+ - u = @xvars[:action][:assign].blank? ? '&nbsp;' : User.find(@xvars[:action][:assign]).full_name
18
+ = u
19
+ - if @xvars[:action][:final]=='n'
20
+ %td{:align=>'center'} -
21
+ %td{:align=>'center'} -
22
+ - else
23
+ - if r.start
24
+ %td= r.start.strftime('%c')
25
+ - else
26
+ %td{:align=>'center'} -
27
+ - if r.stop
28
+ %td= r.stop.strftime('%c')
29
+ - else
30
+ %td{:align=>'center'} -
31
+ - else
32
+ = role_name r.role
33
+ - if r.start
34
+ %td= r.start.strftime('%c')
35
+ - else
36
+ %td{:align=>'center'} -
37
+ - if r.stop
38
+ %td= r.stop.strftime('%c')
39
+ - else
40
+ %td{:align=>'center'} -
41
+ .label
42
+ = image_tag "cog.png"
43
+ Document
44
+ %table{:width=>"100%"}
45
+ %tr{:style=>"color:white; background-color:#6A6A6A;"}
46
+ %th Document
47
+ %th Name
48
+ %th User
49
+ %th Date
50
+ - @xmain.docs.each do |doc|
51
+ - next unless doc.display
52
+ %tr
53
+ %td
54
+ - if doc.content_type=='output'
55
+ = image_tag 'page_output.png'
56
+ - else
57
+ = image_tag 'page_attach.png'
58
+ = link_to align_text(doc.name), "/engine/document/#{doc.id}", :target=>'_blank'
59
+ %td= doc.filename
60
+ %td= doc.user.try(:full_name)
61
+ %td= doc.created_at.strftime('%c')
@@ -0,0 +1,9 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
5
+ </head>
6
+ <body>
7
+ <%= raw @ui %>
8
+ </body>
9
+ </html>
@@ -0,0 +1,10 @@
1
+ <head>
2
+ <%= favicon_link_tag %>
3
+ <meta name="description" content="Jinda" />
4
+ <%= stylesheet_link_tag "application", media: "all", "data-turbolinks-track":"reload" %>
5
+ <%= javascript_include_tag "application", "data-turbolinks-track": "reload" %>
6
+ <%= stylesheet_link_tag "jinda", "sarabun" %>
7
+ <script src = "https://ajax.aspnetcdn.com/ajax/jquery.validate/1.12.0/jquery.validate.js" ></script>
8
+ <%= csrf_meta_tags %>
9
+ <%= display_meta_tags %>
10
+ </head>
@@ -0,0 +1,19 @@
1
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
2
+ <meta name="robots" content="follow, all" />
3
+ <meta name="language" content="en, th" />
4
+ <meta name="viewport" content="width=device-width, minimum-scale=1, maximum-scale=1, initial-scale=1">
5
+ <title>
6
+ <% if content_for?(:title) %>
7
+ <%= content_for(:title) %>
8
+ <% else %>
9
+ Jinda | Tools for | Ruby on Rails
10
+ <% end %>
11
+ </title>
12
+
13
+ <% if content_for :meta_description %>
14
+ <meta name="description" content="<%= content_for :meta_description %>" />
15
+ <% else %>
16
+ <meta name="description" content="Jinda Tools to create visual programming using mindmap" />
17
+ <% end %>
18
+
19
+ <meta name="keywords" content="Jinda, Rails, ruby" />
@@ -0,0 +1,51 @@
1
+ %html
2
+ %head
3
+ %meta{:content => "text/html; charset=UTF-8", "http-equiv" => "Content-Type"}/
4
+ = csrf_meta_tags
5
+ /%link{:href => "https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic", :rel => "stylesheet"}/
6
+ %title Jinda AdminLTE 2 | Starter
7
+ = stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload'
8
+ = javascript_include_tag "application", 'data-turbolinks-track': 'reload'
9
+ /
10
+ BODY TAG OPTIONS:
11
+ \=================
12
+ Apply one or more of the following classes to get the
13
+ desired effect
14
+ |---------------------------------------------------------|
15
+ | SKINS | skin-blue |
16
+ | | skin-black |
17
+ | | skin-purple |
18
+ | | skin-yellow |
19
+ | | skin-red |
20
+ | | skin-green |
21
+ |---------------------------------------------------------|
22
+ |LAYOUT OPTIONS | fixed |
23
+ | | layout-boxed |
24
+ | | layout-top-nav |
25
+ | | sidebar-collapse |
26
+ | | sidebar-mini |
27
+ |---------------------------------------------------------|
28
+
29
+ %body.hold-transition.skin-yellow.sidebar-mini
30
+ .wrapper
31
+ = render "layouts/lte/header"
32
+ = render "layouts/lte/sidebar"
33
+ .content-wrapper
34
+ %h3.box-title
35
+ = @page_title
36
+ = render 'layouts/lte/flash'
37
+ .label-warning
38
+ #flashes
39
+ - if flash[:notice]
40
+ %p#flash_notice.messages.notice= flash[:notice]
41
+ = javascript_tag "$('#flash_notice').effect('highlight',{},1000);"
42
+ - if flash[:error] || flash[:errors]
43
+ %p#flash_errors.messages.errors= flash[:error] || flash[:errors]
44
+ = javascript_tag "$('#flash_errors').effect('highlight',{},1000);"
45
+ - flash[:error] = flash[:errors] = flash[:notice] = nil
46
+ = yield
47
+ = render 'layouts/lte/footer'
48
+ .control-sidebar-bg
49
+ / REQUIRED JS SCRIPTS
50
+ / jQuery 3
51
+
@@ -0,0 +1,4 @@
1
+ - if request.accept=="text/html, */*; q=0.01"
2
+ = render "layouts/jqm/page"
3
+ - else
4
+ = render "layouts/jqm/full"
@@ -2,10 +2,11 @@
2
2
  <html>
3
3
  <head>
4
4
  <title>Dummy</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
5
6
  <%= csrf_meta_tags %>
6
7
  <%= csp_meta_tag %>
7
8
 
8
- <%= stylesheet_link_tag 'application', media: 'all' %>
9
+ <%= stylesheet_link_tag "application" %>
9
10
  </head>
10
11
 
11
12
  <body>
@@ -0,0 +1,7 @@
1
+ %footer.main-footer
2
+ .pull-right.hidden-xs
3
+ AdminBSB Themes
4
+ %strong
5
+ Copyright © 2017
6
+ %a{:href => "#"} Company
7
+ All rights reserved.