jinda 0.6.4 → 0.7.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 (224) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/app/assets/config/manifest.js +4 -0
  4. data/{lib/generators/jinda/templates/app → app}/assets/images/4dcity-old.ico +0 -0
  5. data/{lib/generators/jinda/templates/app → app}/assets/images/4dcity.ico +0 -0
  6. data/{lib/generators/jinda/templates/app → app}/assets/images/account.png +0 -0
  7. data/{lib/generators/jinda/templates/app → app}/assets/images/add.png +0 -0
  8. data/{lib/generators/jinda/templates/app → app}/assets/images/ajax-loader-circle.gif +0 -0
  9. data/{lib/generators/jinda/templates/app → app}/assets/images/ajax-loader.gif +0 -0
  10. data/{lib/generators/jinda/templates/app → app}/assets/images/anchor.png +0 -0
  11. data/{lib/generators/jinda/templates/app → app}/assets/images/application_double.png +0 -0
  12. data/{lib/generators/jinda/templates/app → app}/assets/images/application_form_edit.png +0 -0
  13. data/{lib/generators/jinda/templates/app → app}/assets/images/arrow_left.png +0 -0
  14. data/{lib/generators/jinda/templates/app → app}/assets/images/arrow_right.png +0 -0
  15. data/{lib/generators/jinda/templates/app → app}/assets/images/arrow_turn_left.png +0 -0
  16. data/{lib/generators/jinda/templates/app → app}/assets/images/arrow_turn_right.png +0 -0
  17. data/{lib/generators/jinda/templates/app → app}/assets/images/calendar.png +0 -0
  18. data/{lib/generators/jinda/templates/app → app}/assets/images/cancel.png +0 -0
  19. data/{lib/generators/jinda/templates/app → app}/assets/images/chart_bar.png +0 -0
  20. data/{lib/generators/jinda/templates/app → app}/assets/images/clock.png +0 -0
  21. data/{lib/generators/jinda/templates/app → app}/assets/images/cog.png +0 -0
  22. data/{lib/generators/jinda/templates/app → app}/assets/images/control_fastforward.png +0 -0
  23. data/{lib/generators/jinda/templates/app → app}/assets/images/control_play.png +0 -0
  24. data/{lib/generators/jinda/templates/app → app}/assets/images/cross.png +0 -0
  25. data/{lib/generators/jinda/templates/app → app}/assets/images/delete.png +0 -0
  26. data/{lib/generators/jinda/templates/app → app}/assets/images/external-link.png +0 -0
  27. data/{lib/generators/jinda/templates/app → app}/assets/images/facebook-continue-button.png +0 -0
  28. data/{lib/generators/jinda/templates/app → app}/assets/images/facebooksmall.png +0 -0
  29. data/{lib/generators/jinda/templates/app → app}/assets/images/favicon.ico +0 -0
  30. data/{lib/generators/jinda/templates/app → app}/assets/images/freemind(mm).png +0 -0
  31. data/{lib/generators/jinda/templates/app → app}/assets/images/google-continue-button.png +0 -0
  32. data/{lib/generators/jinda/templates/app → app}/assets/images/help.png +0 -0
  33. data/{lib/generators/jinda/templates/app → app}/assets/images/highway-menu.png +0 -0
  34. data/{lib/generators/jinda/templates/app → app}/assets/images/highway.png +0 -0
  35. data/{lib/generators/jinda/templates/app → app}/assets/images/house.png +0 -0
  36. data/{lib/generators/jinda/templates/app → app}/assets/images/icons-18-black.png +0 -0
  37. data/{lib/generators/jinda/templates/app → app}/assets/images/icons-18-white.png +0 -0
  38. data/{lib/generators/jinda/templates/app → app}/assets/images/icons-36-black.png +0 -0
  39. data/{lib/generators/jinda/templates/app → app}/assets/images/icons-36-white.png +0 -0
  40. data/{lib/generators/jinda/templates/app → app}/assets/images/logo.png +0 -0
  41. data/{lib/generators/jinda/templates/app → app}/assets/images/logo_jinda.png +0 -0
  42. data/{lib/generators/jinda/templates/app → app}/assets/images/logout.png +0 -0
  43. data/{lib/generators/jinda/templates/app → app}/assets/images/new.gif +0 -0
  44. data/{lib/generators/jinda/templates/app → app}/assets/images/new.png +0 -0
  45. data/{lib/generators/jinda/templates/app → app}/assets/images/page.png +0 -0
  46. data/{lib/generators/jinda/templates/app → app}/assets/images/page_attach.png +0 -0
  47. data/{lib/generators/jinda/templates/app → app}/assets/images/page_green.png +0 -0
  48. data/{lib/generators/jinda/templates/app → app}/assets/images/page_output.png +0 -0
  49. data/{lib/generators/jinda/templates/app → app}/assets/images/page_pdf.png +0 -0
  50. data/{lib/generators/jinda/templates/app → app}/assets/images/pencil.png +0 -0
  51. data/{lib/generators/jinda/templates/app → app}/assets/images/printer.png +0 -0
  52. data/{lib/generators/jinda/templates/app → app}/assets/images/refresh.png +0 -0
  53. data/{lib/generators/jinda/templates/app → app}/assets/images/report.png +0 -0
  54. data/{lib/generators/jinda/templates/app → app}/assets/images/rssmall.png +0 -0
  55. data/{lib/generators/jinda/templates/app → app}/assets/images/tick.png +0 -0
  56. data/{lib/generators/jinda/templates/app → app}/assets/images/twittersmall.png +0 -0
  57. data/{lib/generators/jinda/templates/app → app}/assets/images/user.png +0 -0
  58. data/{lib/generators/jinda/templates/app → app}/assets/images/user_admin_gear.png +0 -0
  59. data/{lib/generators/jinda/templates/app → app}/assets/images/view_code.png +0 -0
  60. data/{lib/generators/jinda/templates/app/assets/javascripts/application.js-jqm → app/assets/javascripts/application.js-org} +8 -11
  61. data/{lib/generators/jinda/templates/app → app}/assets/javascripts/cable.js +0 -0
  62. data/{lib/generators/jinda/templates/app → app}/assets/javascripts/disable_enter_key.js +0 -0
  63. data/{lib/generators/jinda/templates/app → app}/assets/javascripts/iscroll-wrapper.js +0 -0
  64. data/{lib/generators/jinda/templates/app → app}/assets/javascripts/iscroll.js +0 -0
  65. data/{lib/generators/jinda/templates/app → app}/assets/javascripts/jinda.js +0 -0
  66. data/app/assets/javascripts/jinda_jqm.js +24 -0
  67. data/{lib/generators/jinda/templates/app → app}/assets/javascripts/jquery.mobile-1.2.1.js +0 -0
  68. data/{lib/generators/jinda/templates/app → app}/assets/javascripts/jquery.mobile.datebox.js +0 -0
  69. data/{lib/generators/jinda/templates/app → app}/assets/javascripts/jquery.mobile.splitview.js +0 -0
  70. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/app.scss +0 -0
  71. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/articles.scss +0 -0
  72. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/sarabun.eot +0 -0
  73. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/sarabun.ttf +0 -0
  74. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/sarabun.woff +0 -0
  75. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/sarabun_bold.ttf +0 -0
  76. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/sarabun_bolditalic.ttf +0 -0
  77. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/sarabun_italic.ttf +0 -0
  78. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew-webfont.eot +0 -0
  79. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew-webfont.ttf +0 -0
  80. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew-webfont.woff +0 -0
  81. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew.css +0 -0
  82. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew_bold-webfont.eot +0 -0
  83. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew_bold-webfont.ttf +0 -0
  84. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew_bold-webfont.woff +0 -0
  85. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew_bolditalic-webfont.eot +0 -0
  86. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew_bolditalic-webfont.ttf +0 -0
  87. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew_bolditalic-webfont.woff +0 -0
  88. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew_italic-webfont.eot +0 -0
  89. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew_italic-webfont.ttf +0 -0
  90. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/fonts/thsarabunnew_italic-webfont.woff +0 -0
  91. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/images/ajax-loader.gif +0 -0
  92. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/images/button_black.png +0 -0
  93. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/images/button_blue.png +0 -0
  94. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/images/button_red.png +0 -0
  95. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/images/icons-18-black.png +0 -0
  96. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/images/icons-18-white.png +0 -0
  97. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/images/icons-36-black.png +0 -0
  98. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/images/icons-36-white.png +0 -0
  99. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/images/indicator.gif +0 -0
  100. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/jinda.css +17 -0
  101. data/app/assets/stylesheets/jinda_jqm.css.scss +32 -0
  102. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/jquery.mobile-1.2.1.css +0 -0
  103. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/jquery.mobile.datebox.css +0 -0
  104. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/jquery.mobile.grids.collapsible.css +0 -0
  105. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/jquery.mobile.splitview.css +0 -0
  106. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/kul-4.2.css +0 -0
  107. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/kul-4.2.min.css +0 -0
  108. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/modules.scss +0 -0
  109. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/sarabun.css +0 -0
  110. data/{lib/generators/jinda/templates/app → app}/assets/stylesheets/social.scss +0 -0
  111. data/{lib/generators/jinda/templates/app → app}/controllers/concerns/jinda_general_concern.rb +0 -0
  112. data/{lib/generators/jinda/templates/app → app}/controllers/concerns/jinda_run_concern.rb +0 -0
  113. data/{lib/generators/jinda/templates/app/controllers/jinda_org → app/controllers}/jinda_controller.rb +0 -0
  114. data/app/jinda/index.mm +369 -0
  115. data/app/jinda/template/index.mm +366 -0
  116. data/app/jinda/template/linkview.haml +21 -0
  117. data/app/jinda/template/view.html.erb +26 -0
  118. data/{lib/generators/jinda/templates/app → app}/views/jinda/_activity.md +0 -0
  119. data/{lib/generators/jinda/templates/app → app}/views/jinda/_menu.haml +0 -0
  120. data/{lib/generators/jinda/templates/app → app}/views/jinda/_menu_mm.haml +0 -0
  121. data/{lib/generators/jinda/templates/app → app}/views/jinda/_model.md +0 -0
  122. data/{lib/generators/jinda/templates/app → app}/views/jinda/_modul.md +0 -0
  123. data/{lib/generators/jinda/templates/app → app}/views/jinda/_pending_home.haml +0 -0
  124. data/{lib/generators/jinda/templates/app → app}/views/jinda/_pending_page.haml +0 -0
  125. data/{lib/generators/jinda/templates/app → app}/views/jinda/_service.md +0 -0
  126. data/{lib/generators/jinda/templates/app → app}/views/jinda/_static.haml +0 -0
  127. data/{lib/generators/jinda/templates/app → app}/views/jinda/doc-thai.md +0 -0
  128. data/{lib/generators/jinda/templates/app → app}/views/jinda/doc.md +0 -0
  129. data/{lib/generators/jinda/templates/app → app}/views/jinda/error_logs.haml +0 -0
  130. data/{lib/generators/jinda/templates/app → app}/views/jinda/feed.rss.builder +0 -0
  131. data/{lib/generators/jinda/templates/app → app}/views/jinda/help.haml +0 -0
  132. data/{lib/generators/jinda/templates/app → app}/views/jinda/index.html.haml +1 -1
  133. data/{lib/generators/jinda/templates/app → app}/views/jinda/logs.haml +0 -0
  134. data/{lib/generators/jinda/templates/app → app}/views/jinda/notice_logs.haml +0 -0
  135. data/{lib/generators/jinda/templates/app → app}/views/jinda/pending.haml +0 -0
  136. data/{lib/generators/jinda/templates/app → app}/views/jinda/run_form.haml +0 -0
  137. data/{lib/generators/jinda/templates/app → app}/views/jinda/run_output.haml +0 -0
  138. data/{lib/generators/jinda/templates/app → app}/views/jinda/search.haml +0 -0
  139. data/{lib/generators/jinda/templates/app → app}/views/jinda/status.haml +0 -0
  140. data/config/routes.rb +44 -0
  141. data/lib/generators/jinda/config_generator.rb +7 -0
  142. data/lib/generators/jinda/install_generator.rb +45 -42
  143. data/lib/generators/jinda/templates/Dockerfile +24 -0
  144. data/lib/generators/jinda/templates/app/assets/javascripts/application.js +1 -10
  145. data/lib/generators/jinda/templates/app/assets/stylesheets/application.css.scss +1 -20
  146. data/lib/generators/jinda/templates/app/views/identities/new.html.erb +29 -24
  147. data/lib/generators/jinda/templates/app/views/password_resets/new.html.erb +13 -7
  148. data/lib/generators/jinda/templates/app/views/sessions/new.html.erb +24 -18
  149. data/lib/generators/jinda/templates/config/mongoid.yml-docker +182 -0
  150. data/lib/generators/jinda/templates/config/mongoid.yml-localhost +182 -0
  151. data/lib/generators/jinda/templates/docker-compose.yml +16 -0
  152. data/lib/generators/jinda/templates/entrypoint.sh +12 -0
  153. data/lib/jinda.rb +2 -1
  154. data/lib/jinda/date_helpers.rb +109 -0
  155. data/lib/jinda/{gemhelpers.rb → gem_helpers.rb} +0 -1
  156. data/lib/jinda/gen_class.rb +13 -0
  157. data/lib/jinda/gen_controller.rb +10 -0
  158. data/lib/jinda/gen_freemind.rb +33 -0
  159. data/lib/jinda/gen_helpers.rb +141 -0
  160. data/lib/jinda/gen_models.rb +137 -0
  161. data/lib/jinda/gen_runseq.rb +71 -0
  162. data/lib/jinda/gen_services.rb +90 -0
  163. data/lib/jinda/gen_xmain.rb +38 -0
  164. data/lib/jinda/get_app.rb +34 -0
  165. data/lib/jinda/helpers.rb +17 -998
  166. data/lib/jinda/init_vars.rb +36 -0
  167. data/lib/jinda/rake_views.rb +59 -0
  168. data/lib/jinda/refresh.rb +67 -0
  169. data/lib/jinda/themes.rb +163 -0
  170. data/lib/jinda/version.rb +1 -1
  171. data/test/dummy/Rakefile +6 -0
  172. data/test/dummy/app/assets/config/manifest.js +3 -0
  173. data/test/dummy/app/assets/stylesheets/application.css +15 -0
  174. data/test/dummy/app/channels/application_cable/channel.rb +4 -0
  175. data/test/dummy/app/channels/application_cable/connection.rb +4 -0
  176. data/test/dummy/app/controllers/application_controller.rb +2 -0
  177. data/test/dummy/app/helpers/application_helper.rb +2 -0
  178. data/test/dummy/app/javascript/packs/application.js +15 -0
  179. data/test/dummy/app/jobs/application_job.rb +7 -0
  180. data/test/dummy/app/mailers/application_mailer.rb +4 -0
  181. data/test/dummy/app/models/application_record.rb +3 -0
  182. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  183. data/test/dummy/app/views/layouts/mailer.html.erb +13 -0
  184. data/test/dummy/app/views/layouts/mailer.text.erb +1 -0
  185. data/test/dummy/bin/rails +4 -0
  186. data/test/dummy/bin/rake +4 -0
  187. data/test/dummy/bin/setup +33 -0
  188. data/test/dummy/config.ru +5 -0
  189. data/test/dummy/config/application.rb +19 -0
  190. data/test/dummy/config/boot.rb +5 -0
  191. data/test/dummy/config/cable.yml +10 -0
  192. data/test/dummy/config/database.yml +25 -0
  193. data/test/dummy/config/environment.rb +5 -0
  194. data/test/dummy/config/environments/development.rb +62 -0
  195. data/test/dummy/config/environments/production.rb +112 -0
  196. data/test/dummy/config/environments/test.rb +49 -0
  197. data/test/dummy/config/initializers/application_controller_renderer.rb +8 -0
  198. data/test/dummy/config/initializers/assets.rb +12 -0
  199. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  200. data/test/dummy/config/initializers/content_security_policy.rb +28 -0
  201. data/test/dummy/config/initializers/cookies_serializer.rb +5 -0
  202. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  203. data/test/dummy/config/initializers/inflections.rb +16 -0
  204. data/test/dummy/config/initializers/mime_types.rb +4 -0
  205. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  206. data/test/dummy/config/locales/en.yml +33 -0
  207. data/test/dummy/config/puma.rb +38 -0
  208. data/test/dummy/config/routes.rb +3 -0
  209. data/test/dummy/config/spring.rb +6 -0
  210. data/test/dummy/config/storage.yml +34 -0
  211. data/test/dummy/db/development.sqlite3 +0 -0
  212. data/test/dummy/log/development.log +8 -0
  213. data/test/dummy/public/404.html +67 -0
  214. data/test/dummy/public/422.html +67 -0
  215. data/test/dummy/public/500.html +66 -0
  216. data/test/dummy/public/apple-touch-icon-precomposed.png +0 -0
  217. data/test/dummy/public/apple-touch-icon.png +0 -0
  218. data/test/dummy/public/favicon.ico +0 -0
  219. data/test/dummy/tmp/development_secret.txt +1 -0
  220. data/test/integration/navigation_test.rb +7 -0
  221. data/test/jinda_test.rb +7 -0
  222. data/test/test_helper.rb +19 -0
  223. metadata +228 -142
  224. data/lib/generators/jinda/templates/app/controllers/jinda_org/devs_controller.rb +0 -2
@@ -0,0 +1,182 @@
1
+ development:
2
+ # Configure available database clients. (required)
3
+ clients:
4
+ # Defines the default client. (required)
5
+ default:
6
+ # Mongoid can connect to a URI accepted by the driver:
7
+ # uri: mongodb://user:password@mongodb.domain.com:27017/shop263603_development
8
+
9
+ # Otherwise define the parameters separately.
10
+ # This defines the name of the default database that Mongoid can connect to.
11
+ # (required).
12
+ database: shop263603_development
13
+ # Provides the hosts the default client can connect to. Must be an array
14
+ # of host:port pairs. (required)
15
+ hosts:
16
+ - localhost:27017
17
+ # - mongodb
18
+ options:
19
+ # Note that all options listed below are Ruby driver client options (the mongo gem).
20
+ # Please refer to the driver documentation of the version of the mongo gem you are using
21
+ # for the most up-to-date list of options.
22
+ #
23
+ # Change the default write concern. (default = { w: 1 })
24
+ # write:
25
+ # w: 1
26
+
27
+ # Change the default read preference. Valid options for mode are: :secondary,
28
+ # :secondary_preferred, :primary, :primary_preferred, :nearest
29
+ # (default: primary)
30
+ # read:
31
+ # mode: :secondary_preferred
32
+ # tag_sets:
33
+ # - use: web
34
+
35
+ # The name of the user for authentication.
36
+ # user: 'user'
37
+
38
+ # The password of the user for authentication.
39
+ # password: 'password'
40
+
41
+ # The user's database roles.
42
+ # roles:
43
+ # - 'dbOwner'
44
+
45
+ # Change the default authentication mechanism. Valid options are: :scram,
46
+ # :mongodb_cr, :mongodb_x509, and :plain. Note that all authentication
47
+ # mechanisms require username and password, with the exception of :mongodb_x509.
48
+ # Default on mongoDB 3.0 is :scram, default on 2.4 and 2.6 is :plain.
49
+ # auth_mech: :scram
50
+
51
+ # The database or source to authenticate the user against.
52
+ # (default: the database specified above or admin)
53
+ # auth_source: admin
54
+
55
+ # Force a the driver cluster to behave in a certain manner instead of auto-
56
+ # discovering. Can be one of: :direct, :replica_set, :sharded. Set to :direct
57
+ # when connecting to hidden members of a replica set.
58
+ # connect: :direct
59
+
60
+ # Changes the default time in seconds the server monitors refresh their status
61
+ # via ismaster commands. (default: 10)
62
+ # heartbeat_frequency: 10
63
+
64
+ # The time in seconds for selecting servers for a near read preference. (default: 0.015)
65
+ # local_threshold: 0.015
66
+
67
+ # The timeout in seconds for selecting a server for an operation. (default: 30)
68
+ # server_selection_timeout: 30
69
+
70
+ # The maximum number of connections in the connection pool. (default: 5)
71
+ # max_pool_size: 5
72
+
73
+ # The minimum number of connections in the connection pool. (default: 1)
74
+ # min_pool_size: 1
75
+
76
+ # The time to wait, in seconds, in the connection pool for a connection
77
+ # to be checked in before timing out. (default: 5)
78
+ # wait_queue_timeout: 5
79
+
80
+ # The time to wait to establish a connection before timing out, in seconds.
81
+ # (default: 10)
82
+ # connect_timeout: 10
83
+
84
+ # The timeout to wait to execute operations on a socket before raising an error.
85
+ # (default: 5)
86
+ # socket_timeout: 5
87
+
88
+ # The name of the replica set to connect to. Servers provided as seeds that do
89
+ # not belong to this replica set will be ignored.
90
+ # replica_set: name
91
+
92
+ # Whether to connect to the servers via ssl. (default: false)
93
+ # ssl: true
94
+
95
+ # The certificate file used to identify the connection against MongoDB.
96
+ # ssl_cert: /path/to/my.cert
97
+
98
+ # The private keyfile used to identify the connection against MongoDB.
99
+ # Note that even if the key is stored in the same file as the certificate,
100
+ # both need to be explicitly specified.
101
+ # ssl_key: /path/to/my.key
102
+
103
+ # A passphrase for the private key.
104
+ # ssl_key_pass_phrase: password
105
+
106
+ # Whether to do peer certification validation. (default: true)
107
+ # ssl_verify: true
108
+
109
+ # The file containing concatenated certificate authority certificates
110
+ # used to validate certs passed from the other end of the connection.
111
+ # ssl_ca_cert: /path/to/ca.cert
112
+
113
+ # Whether to truncate long log lines. (default: true)
114
+ # truncate_logs: true
115
+
116
+ # Configure Mongoid specific options. (optional)
117
+ options:
118
+ # Includes the root model name in json serialization. (default: false)
119
+ # include_root_in_json: false
120
+
121
+ # Include the _type field in serialization. (default: false)
122
+ # include_type_for_serialization: false
123
+
124
+ # Preload all models in development, needed when models use
125
+ # inheritance. (default: false)
126
+ # preload_models: false
127
+
128
+ # Raise an error when performing a #find and the document is not found.
129
+ # (default: true)
130
+ # raise_not_found_error: true
131
+ raise_not_found_error: false
132
+
133
+ # Raise an error when defining a scope with the same name as an
134
+ # existing method. (default: false)
135
+ # scope_overwrite_exception: false
136
+
137
+ # Raise an error when defining a field with the same name as an
138
+ # existing method. (default: false)
139
+ # duplicate_fields_exception: false
140
+
141
+ # Use Active Support's time zone in conversions. (default: true)
142
+ # use_activesupport_time_zone: true
143
+
144
+ # Ensure all times are UTC in the app side. (default: false)
145
+ # use_utc: false
146
+
147
+ # Set the Mongoid and Ruby driver log levels when not in a Rails
148
+ # environment. The Mongoid logger will be set to the Rails logger
149
+ # otherwise.(default: :info)
150
+ # log_level: :info
151
+
152
+ # Control whether `belongs_to` association is required. By default
153
+ # `belongs_to` will trigger a validation error if the association
154
+ # is not present. (default: true)
155
+ # belongs_to_required_by_default: true
156
+ belongs_to_required_by_default: false
157
+
158
+ # Application name that is printed to the mongodb logs upon establishing a
159
+ # connection in server versions >= 3.4. Note that the name cannot exceed 128 bytes.
160
+ # app_name: MyApplicationName
161
+
162
+ production:
163
+ clients:
164
+ default:
165
+ uri: <%= ENV['MONGODB_URI'] %>
166
+ options:
167
+ raise_not_found_error: false
168
+ belongs_to_required_by_default: false
169
+
170
+
171
+ # Use background indexes by default if `background` option not specified. (default: false)
172
+ # background_indexing: false
173
+ test:
174
+ clients:
175
+ default:
176
+ database: shop263603_test
177
+ hosts:
178
+ - localhost:27017
179
+ options:
180
+ read:
181
+ mode: :primary
182
+ max_pool_size: 1
@@ -0,0 +1,16 @@
1
+ version: '3'
2
+ services:
3
+ web:
4
+ build: .
5
+ command: bash -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'"
6
+ volumes:
7
+ - .:/myapp
8
+ ports:
9
+ - "3000:3000"
10
+ depends_on:
11
+ - mongodb
12
+
13
+ mongodb:
14
+ image: mongo
15
+ ports:
16
+ - "27017:27017"
@@ -0,0 +1,12 @@
1
+ #!/bin/bash
2
+ set -e
3
+ # change mongoid.yml for docker
4
+ cp /myapp/config/mongoid.yml-docker /myapp/config/mongoid.yml
5
+ # Remove a potentially pre-existing server.pid for Rails.
6
+ rm -f /myapp/tmp/pids/server.pid
7
+ # Compile the assets
8
+ # bundle exec rake assets:precompile
9
+ # Add admin user
10
+ rake jinda:seed
11
+ # Then exec the container's main process (what's set as CMD in the Dockerfile).
12
+ exec "$@"
@@ -2,5 +2,6 @@ require 'jinda/version'
2
2
  require 'jinda/railtie'
3
3
 
4
4
  module Jinda
5
- # Your code goes here...
5
+ class Engine < ::Rails::Engine
6
+ end
6
7
  end
@@ -0,0 +1,109 @@
1
+ module ActionView
2
+ module Helpers
3
+ module DateHelper
4
+ def date_field_tag(method, options = {})
5
+ default= options[:default] || Date.today
6
+ data_options= ({"mode"=>"calbox"}).merge(options)
7
+ %Q(<input name='#{method}' id='#{method}' value='#{default.strftime("%F")}' type='date' data-role='datebox' data-options='#{data_options.to_json}'>).html_safe
8
+ end
9
+ end
10
+ class FormBuilder
11
+ def date_select_thai(method)
12
+ self.date_select method, :use_month_names=>THAI_MONTHS, :order=>[:day, :month, :year]
13
+ end
14
+ def date_field(method, options = {})
15
+ default= options[:default] || self.object.send(method) || Date.today
16
+ data_options= ({"mode"=>"calbox"}).merge(options)
17
+ out= %Q(<input name='#{self.object_name}[#{method}]' id='#{self.object_name}_#{method}' value='#{default.strftime("%F")}' type='date' data-role='datebox' data-options='#{data_options.to_json}'>)
18
+ out.html_safe
19
+ end
20
+ def time_field(method, options = {})
21
+ default= self.object.send(method) || Time.now
22
+ data_options= ({"mode"=>"timebox"}).merge(options)
23
+ out=%Q(<input name='#{self.object_name}[#{method}]' id='#{self.object_name}_#{method}' value='#{default}' type='date' data-role='datebox' data-options='#{data_options.to_json}'>)
24
+ out.html_safe
25
+ end
26
+ def date_select_thai(method, default= Time.now, disabled=false)
27
+ date_select method, :default => default, :use_month_names=>THAI_MONTHS, :order=>[:day, :month, :year], :disabled=>disabled
28
+ end
29
+ def datetime_select_thai(method, default= Time.now, disabled=false)
30
+ datetime_select method, :default => default, :use_month_names=>THAI_MONTHS, :order=>[:day, :month, :year], :disabled=>disabled
31
+ end
32
+
33
+ def point(o={})
34
+ o[:zoom]= 11 unless o[:zoom]
35
+ o[:width]= '100%' unless o[:width]
36
+ o[:height]= '300px' unless o[:height]
37
+ o[:lat] = 13.91819 unless o[:lat]
38
+ o[:lng] = 100.48889 unless o[:lng]
39
+
40
+ out = <<-EOT
41
+ <script type='text/javascript'>
42
+ //<![CDATA[
43
+ var latLng;
44
+ var map_#{self.object_name};
45
+ var marker_#{self.object_name};
46
+
47
+ function init_map() {
48
+ var lat = #{o[:lat]};
49
+ var lng = #{o[:lng]};
50
+ //var lat = position.coords.latitude"; // HTML5 pass position in function initialize(position)
51
+ // google.loader.ClientLocation.latitude;
52
+ //var lng = position.coords.longitude;
53
+ // google.loader.ClientLocation.longitude;
54
+ latLng = new google.maps.LatLng(lat, lng);
55
+ map_#{self.object_name} = new google.maps.Map(document.getElementById("map_#{self.object_name}"), {
56
+ zoom: #{o[:zoom]},
57
+ center: latLng,
58
+ mapTypeId: google.maps.MapTypeId.ROADMAP
59
+ });
60
+ marker_#{self.object_name} = new google.maps.Marker({
61
+ position: latLng,
62
+ map: map_#{self.object_name},
63
+ draggable: true,
64
+ });
65
+ google.maps.event.addListener(marker_#{self.object_name}, 'dragend', function(event) {
66
+ $('##{self.object_name}_lat').val(event.latLng.lat());
67
+ $('##{self.object_name}_lng').val(event.latLng.lng());
68
+ });
69
+ google.maps.event.addListener(map_#{self.object_name}, 'click', function(event) {
70
+ $('##{self.object_name}_lat').val(event.latLng.lat());
71
+ $('##{self.object_name}_lng').val(event.latLng.lng());
72
+ move();
73
+ });
74
+ $('##{self.object_name}_lat').val(lat);
75
+ $('##{self.object_name}_lng').val(lng);
76
+ };
77
+
78
+ function move() {
79
+ latLng = new google.maps.LatLng($('##{self.object_name}_lat').val(), $('##{self.object_name}_lng').val());
80
+ map_#{self.object_name}.panTo(latLng);
81
+ marker_#{self.object_name}.setPosition(latLng);
82
+ }
83
+
84
+ //google.maps.event.addDomListener(window, 'load', init_map);
85
+
86
+ //]]>
87
+ </script>
88
+ <div class="field" data-role="fieldcontain">
89
+ Latitude: #{self.text_field :lat, :style=>"width:300px;" }
90
+ Longitude: #{self.text_field :lng, :style=>"width:300px;" }
91
+ </div>
92
+ <p/>
93
+ <div id='map_#{self.object_name}' style='max-width: none !important; width:#{o[:width]}; height:#{o[:height]};' class='map'></div>
94
+ <script>
95
+ $('##{self.object_name}_lat').change(function() {move()});
96
+ $('##{self.object_name}_lng').change(function() {move()});
97
+ //var w= $("input[id*=lat]").parent().width();
98
+ //$("input[id*=lat]").css('width','300px');
99
+ //$("input[id*=lng]").css('width','300px');
100
+ $( document ).one( "pagechange", function(){
101
+ init_map();
102
+ });
103
+ </script>
104
+ EOT
105
+ out.html_safe
106
+ end
107
+ end
108
+ end
109
+ end
@@ -3,7 +3,6 @@ module Jinda
3
3
  module GemHelpers
4
4
  require 'jinda/helpers'
5
5
  include Jinda::Helpers
6
- require 'pry'
7
6
  # Find gem root
8
7
  spec = Gem::Specification.find_by_name("jinda")
9
8
  $gem_root = spec.gem_dir
@@ -0,0 +1,13 @@
1
+
2
+ # Add method to ruby class String
3
+ # ###############################
4
+ class String
5
+ def comment?
6
+ self[0]=='#'
7
+ # self[0]==35 # check if first char is #
8
+ end
9
+ def to_code
10
+ s= self.dup
11
+ s.downcase.strip.gsub(' ','_').gsub(/[^#_\/a-zA-Z0-9]/,'')
12
+ end
13
+ end
@@ -0,0 +1,10 @@
1
+
2
+
3
+ def process_controllers
4
+ process_services
5
+ modules= Jinda::Module.all
6
+ modules.each do |m|
7
+ next if controller_exists?(m.code)
8
+ system("rails generate controller #{m.code}")
9
+ end
10
+ end
@@ -0,0 +1,33 @@
1
+
2
+ def freemind2action(s)
3
+ case s.downcase
4
+ #when 'bookmark' # Excellent
5
+ # 'call'
6
+ when 'bookmark' # Excellent
7
+ 'do'
8
+ when 'attach' # Look here
9
+ 'form'
10
+ when 'edit' # Refine
11
+ 'pdf'
12
+ when 'wizard' # Magic
13
+ 'ws'
14
+ when 'help' # Question
15
+ 'if'
16
+ when 'forward' # Forward
17
+ # 'redirect'
18
+ 'direct_to'
19
+ when 'kaddressbook' #Phone
20
+ 'invoke' # invoke new service along the way
21
+ when 'idea' # output
22
+ 'output'
23
+ when 'list' # List
24
+ 'list'
25
+ when 'folder' # Folder
26
+ 'folder'
27
+ when 'mail'
28
+ 'mail'
29
+ # when 'xmag' # Tobe discussed
30
+ when 'To be discusssed'
31
+ 'search'
32
+ end
33
+ end
@@ -0,0 +1,141 @@
1
+
2
+
3
+ ########################################################################
4
+ # Methods to be overrided by gemhelp #
5
+ # for Rspec Test
6
+ ########################################################################
7
+ def gen_view_file_exist?(dir)
8
+ File.exists?(dir)
9
+ end
10
+
11
+ def gen_view_mkdir(dir,t)
12
+ Dir.mkdir(dir)
13
+ t << "create directory #{dir}"
14
+ end
15
+
16
+ def gen_view_createfile(s,f,t)
17
+ FileUtils.cp s,f
18
+ # FileUtils.cp "app/jinda/template/linkview.haml",f
19
+ t << "create file #{f}"
20
+ end
21
+ ########################################################################
22
+
23
+ def controller_exists?(modul)
24
+ File.exists? "#{Rails.root}/app/controllers/#{modul}_controller.rb"
25
+ end
26
+ def dup_hash(a)
27
+ h = Hash.new(0)
28
+ a.each do |aa|
29
+ h[aa] += 1
30
+ end
31
+ return h
32
+ end
33
+ def login?
34
+ ## To use remember me cookies then remove
35
+ #session[:user_id] != nil
36
+ current_ma_user != nil
37
+ #cookies[:auth_token] != nil
38
+ end
39
+ def own_xmain?
40
+ if $xmain
41
+ return current_ma_user.id==$xvars['user_id']
42
+ else
43
+ # if eval on first step would return true so user can start service
44
+ return true
45
+ end
46
+ end
47
+ # return nil or value of opt: if provided
48
+ def get_option_xml(opt, xml)
49
+ if xml
50
+ url=''
51
+ xml.each_element('node') do |n|
52
+ text= n.attributes['TEXT']
53
+ # check if opt match from beginning of text
54
+ url= text if text =~/^#{opt}/
55
+ end
56
+ return nil if url.blank?
57
+ c, h= url.split(':', 2)
58
+ opt= h ? h.strip : true
59
+ else
60
+ return nil
61
+ end
62
+ end
63
+ def m_icon(node)
64
+ mcons=[]
65
+ node.each_element("icon") do |mn|
66
+ mcons << mn.attributes["BUILTIN"]
67
+ end
68
+ ticon = mcons[0].to_s
69
+ return ticon
70
+ end
71
+
72
+ # Option to unlisted in the menu_mm if icon 'button_cancel'
73
+ def listed(node)
74
+ icons=[]
75
+ node.each_element("icon") do |nn|
76
+ icons << nn.attributes["BUILTIN"]
77
+ end
78
+
79
+ return !icons.include?("button_cancel")
80
+ end
81
+ def ma_secured?(node)
82
+ icons=[]
83
+ node.each_element("icon") do |nn|
84
+ icons << nn.attributes["BUILTIN"]
85
+ end
86
+ return icons.include?("password")
87
+ end
88
+ def ma_menu?
89
+ icons=[]
90
+ node.each_element("icon") do |mn|
91
+ icons << mn.attributes["BUILTIN"]
92
+ end
93
+ return icons.include?("menu")
94
+ end
95
+
96
+ def freemind2action(s)
97
+ case s.downcase
98
+ #when 'bookmark' # Excellent
99
+ # 'call'
100
+ when 'bookmark' # Excellent
101
+ 'do'
102
+ when 'attach' # Look here
103
+ 'form'
104
+ when 'edit' # Refine
105
+ 'pdf'
106
+ when 'wizard' # Magic
107
+ 'ws'
108
+ when 'help' # Question
109
+ 'if'
110
+ when 'forward' # Forward
111
+ # 'redirect'
112
+ 'direct_to'
113
+ when 'kaddressbook' #Phone
114
+ 'invoke' # invoke new service along the way
115
+ when 'idea' # output
116
+ 'output'
117
+ when 'list' # List
118
+ 'list'
119
+ when 'folder' # Folder
120
+ 'folder'
121
+ when 'mail'
122
+ 'mail'
123
+ # when 'xmag' # Tobe discussed
124
+ when 'To be discusssed'
125
+ 'search'
126
+ end
127
+ end
128
+ def affirm(s)
129
+ return s =~ /[y|yes|t|true]/i ? true : false
130
+ end
131
+ def negate(s)
132
+ return s =~ /[n|no|f|false]/i ? true : false
133
+ end
134
+
135
+ # module FormBuilder
136
+ # def date_field(method, options = {})
137
+ # default= self.object.send(method) || Date.today
138
+ # data_options= ({"mode"=>"calbox"}).merge(options)
139
+ # %Q(<input name='#{self.object_name}[#{method}]' id='#{self.object_name}_#{method}' value='#{default.strftime("%F")}' type='date' data-role='datebox' data-options='#{data_options.to_json}'>).html_safe
140
+ # end
141
+ # end