kirgudu_base 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (360) hide show
  1. checksums.yaml +15 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.rdoc +3 -0
  4. data/Rakefile +40 -0
  5. data/app/assets/images/kirgudu_base/404-fry.png +0 -0
  6. data/app/assets/images/kirgudu_base/Documents.gif +0 -0
  7. data/app/assets/images/kirgudu_base/Meetings.gif +0 -0
  8. data/app/assets/images/kirgudu_base/Repair.gif +0 -0
  9. data/app/assets/images/kirgudu_base/ajax-loader.gif +0 -0
  10. data/app/assets/images/kirgudu_base/alpha.png +0 -0
  11. data/app/assets/images/kirgudu_base/alpha2.png +0 -0
  12. data/app/assets/images/kirgudu_base/arrow.png +0 -0
  13. data/app/assets/images/kirgudu_base/box.gif +0 -0
  14. data/app/assets/images/kirgudu_base/chosen-sprite.png +0 -0
  15. data/app/assets/images/kirgudu_base/company_pxg.png +0 -0
  16. data/app/assets/images/kirgudu_base/datatables/back_disabled.png +0 -0
  17. data/app/assets/images/kirgudu_base/datatables/back_enabled.png +0 -0
  18. data/app/assets/images/kirgudu_base/datatables/back_enabled_hover.png +0 -0
  19. data/app/assets/images/kirgudu_base/datatables/forward_disabled.png +0 -0
  20. data/app/assets/images/kirgudu_base/datatables/forward_enabled.png +0 -0
  21. data/app/assets/images/kirgudu_base/datatables/forward_enabled_hover.png +0 -0
  22. data/app/assets/images/kirgudu_base/datatables/sort_asc.png +0 -0
  23. data/app/assets/images/kirgudu_base/datatables/sort_asc_disabled.png +0 -0
  24. data/app/assets/images/kirgudu_base/datatables/sort_both.png +0 -0
  25. data/app/assets/images/kirgudu_base/datatables/sort_desc.png +0 -0
  26. data/app/assets/images/kirgudu_base/datatables/sort_desc_disabled.png +0 -0
  27. data/app/assets/images/kirgudu_base/fancybox/blank.gif +0 -0
  28. data/app/assets/images/kirgudu_base/fancybox/fancybox_buttons.png +0 -0
  29. data/app/assets/images/kirgudu_base/fancybox/fancybox_loading.gif +0 -0
  30. data/app/assets/images/kirgudu_base/fancybox/fancybox_overlay.png +0 -0
  31. data/app/assets/images/kirgudu_base/fancybox/fancybox_sprite.png +0 -0
  32. data/app/assets/images/kirgudu_base/favicon.png +0 -0
  33. data/app/assets/images/kirgudu_base/general/clock.png +0 -0
  34. data/app/assets/images/kirgudu_base/general/clock2.png +0 -0
  35. data/app/assets/images/kirgudu_base/general/coffee.png +0 -0
  36. data/app/assets/images/kirgudu_base/general/coffee2.png +0 -0
  37. data/app/assets/images/kirgudu_base/general/flipchart.png +0 -0
  38. data/app/assets/images/kirgudu_base/general/flipchart2.png +0 -0
  39. data/app/assets/images/kirgudu_base/general/sun.png +0 -0
  40. data/app/assets/images/kirgudu_base/general/sun2.png +0 -0
  41. data/app/assets/images/kirgudu_base/glyphicons-halflings-white.png +0 -0
  42. data/app/assets/images/kirgudu_base/glyphicons-halflings.png +0 -0
  43. data/app/assets/images/kirgudu_base/gradient1.png +0 -0
  44. data/app/assets/images/kirgudu_base/hue2.png +0 -0
  45. data/app/assets/images/kirgudu_base/ico_16_4_d.gif +0 -0
  46. data/app/assets/images/kirgudu_base/ico_18_1010.gif +0 -0
  47. data/app/assets/images/kirgudu_base/ico_18_112.gif +0 -0
  48. data/app/assets/images/kirgudu_base/ico_18_2020.gif +0 -0
  49. data/app/assets/images/kirgudu_base/icon-contacts.gif +0 -0
  50. data/app/assets/images/kirgudu_base/icon-employees.gif +0 -0
  51. data/app/assets/images/kirgudu_base/icon-list.gif +0 -0
  52. data/app/assets/images/kirgudu_base/icon-orders-green.gif +0 -0
  53. data/app/assets/images/kirgudu_base/icon-orders.gif +0 -0
  54. data/app/assets/images/kirgudu_base/icon-tenders.gif +0 -0
  55. data/app/assets/images/kirgudu_base/icons-sa7c41345d9.png +0 -0
  56. data/app/assets/images/kirgudu_base/login-corner.png +0 -0
  57. data/app/assets/images/kirgudu_base/login-corner2.png +0 -0
  58. data/app/assets/images/kirgudu_base/logo.png +0 -0
  59. data/app/assets/images/kirgudu_base/maps/m1.png +0 -0
  60. data/app/assets/images/kirgudu_base/maps/m2.png +0 -0
  61. data/app/assets/images/kirgudu_base/maps/m3.png +0 -0
  62. data/app/assets/images/kirgudu_base/meeting-schedule.gif +0 -0
  63. data/app/assets/images/kirgudu_base/menu_icons/calendar.png +0 -0
  64. data/app/assets/images/kirgudu_base/menu_icons/dashboard.png +0 -0
  65. data/app/assets/images/kirgudu_base/menu_icons/forms.png +0 -0
  66. data/app/assets/images/kirgudu_base/menu_icons/gallery.png +0 -0
  67. data/app/assets/images/kirgudu_base/menu_icons/grid.png +0 -0
  68. data/app/assets/images/kirgudu_base/menu_icons/maps.png +0 -0
  69. data/app/assets/images/kirgudu_base/menu_icons/others.png +0 -0
  70. data/app/assets/images/kirgudu_base/menu_icons/statistics.png +0 -0
  71. data/app/assets/images/kirgudu_base/menu_icons/tables.png +0 -0
  72. data/app/assets/images/kirgudu_base/menu_icons/widgets.png +0 -0
  73. data/app/assets/images/kirgudu_base/menu_top/profile-avatar.png +0 -0
  74. data/app/assets/images/kirgudu_base/menu_top/profile-messages.png +0 -0
  75. data/app/assets/images/kirgudu_base/message_avatar1.png +0 -0
  76. data/app/assets/images/kirgudu_base/message_avatar2.png +0 -0
  77. data/app/assets/images/kirgudu_base/message_avatar3.png +0 -0
  78. data/app/assets/images/kirgudu_base/message_avatar4.png +0 -0
  79. data/app/assets/images/kirgudu_base/message_avatar5.png +0 -0
  80. data/app/assets/images/kirgudu_base/message_avatar6.png +0 -0
  81. data/app/assets/images/kirgudu_base/message_avatar7.png +0 -0
  82. data/app/assets/images/kirgudu_base/news-icon-16.gif +0 -0
  83. data/app/assets/images/kirgudu_base/operator-def.png +0 -0
  84. data/app/assets/images/kirgudu_base/patterns/bg_dark.png +0 -0
  85. data/app/assets/images/kirgudu_base/patterns/bg_dark2.png +0 -0
  86. data/app/assets/images/kirgudu_base/patterns/bg_dark3.png +0 -0
  87. data/app/assets/images/kirgudu_base/patterns/whitey.png +0 -0
  88. data/app/assets/images/kirgudu_base/people-16-16-256.gif +0 -0
  89. data/app/assets/images/kirgudu_base/sales_24x24 (1).gif +0 -0
  90. data/app/assets/images/kirgudu_base/sample_avatar_big.jpg +0 -0
  91. data/app/assets/images/kirgudu_base/saturation2.png +0 -0
  92. data/app/assets/images/kirgudu_base/search.png +0 -0
  93. data/app/assets/images/kirgudu_base/toggle.png +0 -0
  94. data/app/assets/images/kirgudu_base/ui-bg_fine-grain_10_e7e7e7_60x60.png +0 -0
  95. data/app/assets/images/kirgudu_base/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  96. data/app/assets/images/kirgudu_base/ui-bg_flat_0_ef4622_40x100.png +0 -0
  97. data/app/assets/images/kirgudu_base/ui-bg_glass_65_ffffff_1x400.png +0 -0
  98. data/app/assets/images/kirgudu_base/ui-bg_highlight-hard_100_e1e1e1_1x100.png +0 -0
  99. data/app/assets/images/kirgudu_base/ui-bg_highlight-hard_100_eeeeee_1x100.png +0 -0
  100. data/app/assets/images/kirgudu_base/ui-bg_highlight-hard_75_dddddd_1x100.png +0 -0
  101. data/app/assets/images/kirgudu_base/ui-bg_inset-soft_95_fef1ec_1x100.png +0 -0
  102. data/app/assets/images/kirgudu_base/ui-icons_454545_256x240.png +0 -0
  103. data/app/assets/images/kirgudu_base/ui-icons_525d66_256x240.png +0 -0
  104. data/app/assets/images/kirgudu_base/ui-icons_cd0a0a_256x240.png +0 -0
  105. data/app/assets/images/kirgudu_base/ui-icons_ffffff_256x240.png +0 -0
  106. data/app/assets/images/kirgudu_base/uploadify-cancel.png +0 -0
  107. data/app/assets/javascripts/kirgudu_base/ajax_form.js +52 -0
  108. data/app/assets/javascripts/kirgudu_base/application.js +15 -0
  109. data/app/assets/javascripts/kirgudu_base/avgrund.js +85 -0
  110. data/app/assets/javascripts/kirgudu_base/bootstrap-alert.js +90 -0
  111. data/app/assets/javascripts/kirgudu_base/bootstrap-button.js +96 -0
  112. data/app/assets/javascripts/kirgudu_base/bootstrap-carousel.js +176 -0
  113. data/app/assets/javascripts/kirgudu_base/bootstrap-collapse.js +158 -0
  114. data/app/assets/javascripts/kirgudu_base/bootstrap-colorpicker.js +520 -0
  115. data/app/assets/javascripts/kirgudu_base/bootstrap-datepicker.js +401 -0
  116. data/app/assets/javascripts/kirgudu_base/bootstrap-dropdown.js +150 -0
  117. data/app/assets/javascripts/kirgudu_base/bootstrap-modal.js +239 -0
  118. data/app/assets/javascripts/kirgudu_base/bootstrap-popover.js +103 -0
  119. data/app/assets/javascripts/kirgudu_base/bootstrap-scrollspy.js +151 -0
  120. data/app/assets/javascripts/kirgudu_base/bootstrap-tab.js +135 -0
  121. data/app/assets/javascripts/kirgudu_base/bootstrap-tooltip.js +275 -0
  122. data/app/assets/javascripts/kirgudu_base/bootstrap-transition.js +60 -0
  123. data/app/assets/javascripts/kirgudu_base/bootstrap-typeahead.js +300 -0
  124. data/app/assets/javascripts/kirgudu_base/bootstrap-wysihtml5.js +458 -0
  125. data/app/assets/javascripts/kirgudu_base/bootstrap.js +6 -0
  126. data/app/assets/javascripts/kirgudu_base/character-limit.js +18 -0
  127. data/app/assets/javascripts/kirgudu_base/chosen.jquery.min.js +10 -0
  128. data/app/assets/javascripts/kirgudu_base/client_main.js +1017 -0
  129. data/app/assets/javascripts/kirgudu_base/delete.js +67 -0
  130. data/app/assets/javascripts/kirgudu_base/excanvas.compiled.js +35 -0
  131. data/app/assets/javascripts/kirgudu_base/fileinput.jquery.js +98 -0
  132. data/app/assets/javascripts/kirgudu_base/fullcalendar.js +5220 -0
  133. data/app/assets/javascripts/kirgudu_base/gmap3.min.js +39 -0
  134. data/app/assets/javascripts/kirgudu_base/highcharts.js +246 -0
  135. data/app/assets/javascripts/kirgudu_base/jdpicker.js +555 -0
  136. data/app/assets/javascripts/kirgudu_base/jnavigate.jquery.min.js +2 -0
  137. data/app/assets/javascripts/kirgudu_base/jquery-ui-1.8.23.custom.min.js +125 -0
  138. data/app/assets/javascripts/kirgudu_base/jquery-ui-1.8.23.custom.min_d9931121.js +125 -0
  139. data/app/assets/javascripts/kirgudu_base/jquery.blockUI.js +534 -0
  140. data/app/assets/javascripts/kirgudu_base/jquery.bookblock.js +533 -0
  141. data/app/assets/javascripts/kirgudu_base/jquery.cookie.js +94 -0
  142. data/app/assets/javascripts/kirgudu_base/jquery.dataTables.js +12092 -0
  143. data/app/assets/javascripts/kirgudu_base/jquery.endless-scroll.js +343 -0
  144. data/app/assets/javascripts/kirgudu_base/jquery.fancybox-buttons.js +121 -0
  145. data/app/assets/javascripts/kirgudu_base/jquery.fancybox-media.js +196 -0
  146. data/app/assets/javascripts/kirgudu_base/jquery.fancybox-thumbs.js +162 -0
  147. data/app/assets/javascripts/kirgudu_base/jquery.fancybox.js +1985 -0
  148. data/app/assets/javascripts/kirgudu_base/jquery.flot.crosshair.js +167 -0
  149. data/app/assets/javascripts/kirgudu_base/jquery.flot.js +2599 -0
  150. data/app/assets/javascripts/kirgudu_base/jquery.flot.pie.js +751 -0
  151. data/app/assets/javascripts/kirgudu_base/jquery.flot.resize.js +60 -0
  152. data/app/assets/javascripts/kirgudu_base/jquery.flot.spider.js +314 -0
  153. data/app/assets/javascripts/kirgudu_base/jquery.flot.stack.js +184 -0
  154. data/app/assets/javascripts/kirgudu_base/jquery.history.js +1 -0
  155. data/app/assets/javascripts/kirgudu_base/jquery.jcarousel.min.js +16 -0
  156. data/app/assets/javascripts/kirgudu_base/jquery.jeditable.js +543 -0
  157. data/app/assets/javascripts/kirgudu_base/jquery.js +2 -0
  158. data/app/assets/javascripts/kirgudu_base/jquery.json-2.3.min.js +23 -0
  159. data/app/assets/javascripts/kirgudu_base/jquery.maskedinput-1.3.js +258 -0
  160. data/app/assets/javascripts/kirgudu_base/jquery.mousewheel-min.js +12 -0
  161. data/app/assets/javascripts/kirgudu_base/jquery.peity.min.js +11 -0
  162. data/app/assets/javascripts/kirgudu_base/jquery.simplemodal-1.4.4.js +716 -0
  163. data/app/assets/javascripts/kirgudu_base/jquery.slides.min.js +7 -0
  164. data/app/assets/javascripts/kirgudu_base/jquery.sparkline.min.js +5 -0
  165. data/app/assets/javascripts/kirgudu_base/jquery.tagsinput.js +354 -0
  166. data/app/assets/javascripts/kirgudu_base/jquery.tools.min.js +17 -0
  167. data/app/assets/javascripts/kirgudu_base/jquery.touchdown.js +54 -0
  168. data/app/assets/javascripts/kirgudu_base/jquery.uniform.min.js +17 -0
  169. data/app/assets/javascripts/kirgudu_base/jquery.uploadify-3.1.js +975 -0
  170. data/app/assets/javascripts/kirgudu_base/jquery.uploadify.min.js +16 -0
  171. data/app/assets/javascripts/kirgudu_base/jquery.url-2.0.js +174 -0
  172. data/app/assets/javascripts/kirgudu_base/jquery.validate.min.js +4 -0
  173. data/app/assets/javascripts/kirgudu_base/jquerypp.custom.js +301 -0
  174. data/app/assets/javascripts/kirgudu_base/justgage.1.0.1.min.js +12 -0
  175. data/app/assets/javascripts/kirgudu_base/main.js +157 -0
  176. data/app/assets/javascripts/kirgudu_base/modernizr.custom.32549.js +815 -0
  177. data/app/assets/javascripts/kirgudu_base/mustache.js +532 -0
  178. data/app/assets/javascripts/kirgudu_base/popbox.js +57 -0
  179. data/app/assets/javascripts/kirgudu_base/raphael.2.1.0.min.js +10 -0
  180. data/app/assets/javascripts/kirgudu_base/scripts.js +1277 -0
  181. data/app/assets/javascripts/kirgudu_base/scripts_OLD.js +204 -0
  182. data/app/assets/javascripts/kirgudu_base/sub_select.js +50 -0
  183. data/app/assets/javascripts/kirgudu_base/swfobject.js +5 -0
  184. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shAutoloader.js +17 -0
  185. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushAS3.js +59 -0
  186. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushAppleScript.js +75 -0
  187. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushBash.js +59 -0
  188. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushCSharp.js +65 -0
  189. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushColdFusion.js +100 -0
  190. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushCpp.js +97 -0
  191. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushCss.js +91 -0
  192. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushDelphi.js +55 -0
  193. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushDiff.js +41 -0
  194. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushErlang.js +52 -0
  195. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushGroovy.js +67 -0
  196. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushJScript.js +52 -0
  197. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushJava.js +57 -0
  198. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushJavaFX.js +58 -0
  199. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushPerl.js +72 -0
  200. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushPhp.js +88 -0
  201. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushPlain.js +33 -0
  202. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushPowerShell.js +74 -0
  203. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushPython.js +64 -0
  204. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushRuby.js +55 -0
  205. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushSass.js +94 -0
  206. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushScala.js +51 -0
  207. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushSql.js +66 -0
  208. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushVb.js +56 -0
  209. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shBrushXml.js +69 -0
  210. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shCore.js +17 -0
  211. data/app/assets/javascripts/kirgudu_base/syntax-highlighter/shLegacy.js +17 -0
  212. data/app/assets/javascripts/kirgudu_base/textarea-autogrow.js +55 -0
  213. data/app/assets/javascripts/kirgudu_base/tiny_mce.js +1 -0
  214. data/app/assets/javascripts/kirgudu_base/watch.js +81 -0
  215. data/app/assets/javascripts/kirgudu_base/web/inputPlaceholder.js +82 -0
  216. data/app/assets/javascripts/kirgudu_base/web/js.js +91 -0
  217. data/app/assets/javascripts/kirgudu_base/web/navigate.js +20 -0
  218. data/app/assets/javascripts/kirgudu_base/web/watch.js +1706 -0
  219. data/app/assets/javascripts/kirgudu_base/wysihtml5-0.3.0.min.js +261 -0
  220. data/app/assets/stylesheets/kirgudu_base/bootstrap.css +4551 -0
  221. data/app/assets/stylesheets/kirgudu_base/chosen.css +397 -0
  222. data/app/assets/stylesheets/kirgudu_base/fullcalendar.css +655 -0
  223. data/app/assets/stylesheets/kirgudu_base/info-message.css +79 -0
  224. data/app/assets/stylesheets/kirgudu_base/jdpicker.css +200 -0
  225. data/app/assets/stylesheets/kirgudu_base/jquery-ui-1.8.23.custom.css +1235 -0
  226. data/app/assets/stylesheets/kirgudu_base/jquery.fancybox-buttons.css +96 -0
  227. data/app/assets/stylesheets/kirgudu_base/jquery.fancybox-thumbs.css +54 -0
  228. data/app/assets/stylesheets/kirgudu_base/jquery.fancybox.css +249 -0
  229. data/app/assets/stylesheets/kirgudu_base/jquery.tagsinput.css +7 -0
  230. data/app/assets/stylesheets/kirgudu_base/main.css +1368 -0
  231. data/app/assets/stylesheets/kirgudu_base/menu.css +159 -0
  232. data/app/assets/stylesheets/kirgudu_base/popbox.css +58 -0
  233. data/app/assets/stylesheets/kirgudu_base/responsive.css +2249 -0
  234. data/app/assets/stylesheets/kirgudu_base/switcher.css +80 -0
  235. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shCore.css +226 -0
  236. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shCoreDefault.css +328 -0
  237. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shCoreDjango.css +331 -0
  238. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shCoreEclipse.css +339 -0
  239. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shCoreEmacs.css +324 -0
  240. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shCoreFadeToGrey.css +328 -0
  241. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shCoreMDUltra.css +324 -0
  242. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shCoreMidnight.css +324 -0
  243. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shCoreRDark.css +324 -0
  244. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shThemeDefault.css +117 -0
  245. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shThemeDjango.css +120 -0
  246. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shThemeEclipse.css +128 -0
  247. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shThemeEmacs.css +113 -0
  248. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shThemeFadeToGrey.css +117 -0
  249. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shThemeMDUltra.css +113 -0
  250. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shThemeMidnight.css +113 -0
  251. data/app/assets/stylesheets/kirgudu_base/syntax-higlignter/shThemeRDark.css +113 -0
  252. data/app/assets/stylesheets/kirgudu_base/uploadify.css +92 -0
  253. data/app/controllers/kirgudu_base/admin_controller.rb +91 -0
  254. data/app/controllers/kirgudu_base/application_controller.rb +676 -0
  255. data/app/controllers/kirgudu_base/cabinet_controller.rb +93 -0
  256. data/app/controllers/kirgudu_base/facade_controller.rb +82 -0
  257. data/app/helpers/kirgudu_base/application_helper.rb +486 -0
  258. data/app/helpers/kirgudu_base/breadcrumbs_helper.rb +27 -0
  259. data/app/helpers/kirgudu_base/class_helper.rb +32 -0
  260. data/app/helpers/kirgudu_base/controllers/basic_actions.rb +625 -0
  261. data/app/helpers/kirgudu_base/controllers/container_items_management_actions.rb +118 -0
  262. data/app/helpers/kirgudu_base/controllers/container_items_sorting_actions.rb +64 -0
  263. data/app/helpers/kirgudu_base/controllers/dynamic_pages.rb +30 -0
  264. data/app/helpers/kirgudu_base/controllers/obligatory_filters.rb +29 -0
  265. data/app/helpers/kirgudu_base/controllers/transaction_wrapper.rb +138 -0
  266. data/app/helpers/kirgudu_base/form_builder.rb +474 -0
  267. data/app/helpers/kirgudu_base/gui_helper.rb +443 -0
  268. data/app/helpers/kirgudu_base/models/basic_management_urls.rb +104 -0
  269. data/app/helpers/kirgudu_base/models/data_filter.rb +236 -0
  270. data/app/helpers/kirgudu_base/models/exports.rb +167 -0
  271. data/app/helpers/kirgudu_base/models/filters.rb +32 -0
  272. data/app/helpers/kirgudu_base/models/form_properties.rb +108 -0
  273. data/app/helpers/kirgudu_base/models/form_property.rb +335 -0
  274. data/app/helpers/kirgudu_base/models/methods.rb +64 -0
  275. data/app/helpers/kirgudu_base/models/scopes.rb +157 -0
  276. data/app/helpers/kirgudu_base/models/sorting.rb +99 -0
  277. data/app/helpers/kirgudu_base/models/standard_actions.rb +50 -0
  278. data/app/helpers/kirgudu_base/models/uncloneable_properties.rb +21 -0
  279. data/app/helpers/kirgudu_base/old_form_builder.rb +340 -0
  280. data/app/helpers/kirgudu_base/url_helper.rb +18 -0
  281. data/app/models/kirgudu_base/base_model.rb +293 -0
  282. data/app/models/kirgudu_base/dynamic_pages/action_for.rb +78 -0
  283. data/app/models/kirgudu_base/dynamic_pages/action_for_builder.rb +46 -0
  284. data/app/models/kirgudu_base/dynamic_pages/data_source.rb +111 -0
  285. data/app/models/kirgudu_base/dynamic_pages/data_source_builder.rb +79 -0
  286. data/app/models/kirgudu_base/dynamic_pages/form.rb +99 -0
  287. data/app/models/kirgudu_base/dynamic_pages/form_builder.rb +85 -0
  288. data/app/models/kirgudu_base/dynamic_pages/input_type.rb +17 -0
  289. data/app/models/kirgudu_base/dynamic_pages/on_change.rb +40 -0
  290. data/app/models/kirgudu_base/dynamic_pages/on_change_builder.rb +38 -0
  291. data/app/models/kirgudu_base/dynamic_pages/page.rb +55 -0
  292. data/app/models/kirgudu_base/dynamic_pages/page_builder.rb +63 -0
  293. data/app/models/kirgudu_base/dynamic_pages/property.rb +185 -0
  294. data/app/models/kirgudu_base/dynamic_pages/property_builder.rb +123 -0
  295. data/app/models/kirgudu_base/template.rb +6 -0
  296. data/app/models/kirgudu_base/template_element.rb +6 -0
  297. data/app/views/layouts/kirgudu_base/application.html.erb +141 -0
  298. data/app/views/shared/kirgudu_base/_body_javascripts_files.html.erb +71 -0
  299. data/app/views/shared/kirgudu_base/_body_javascripts_scripts.html.erb +1099 -0
  300. data/app/views/shared/kirgudu_base/_breadcrumbs.html.erb +36 -0
  301. data/app/views/shared/kirgudu_base/_head_javascripts.html.erb +21 -0
  302. data/app/views/shared/kirgudu_base/_head_stylesheets.html.erb +21 -0
  303. data/app/views/shared/kirgudu_base/_index_page_filter.html.erb +43 -0
  304. data/app/views/shared/kirgudu_base/_left_menu_standard_actions.html.erb +57 -0
  305. data/app/views/shared/kirgudu_base/_services_top_line.html.erb +5 -0
  306. data/app/views/shared/kirgudu_base/_top_nav_bar.html.erb +58 -0
  307. data/app/views/shared/kirgudu_base/entry_edit_form_renderer.html.erb +70 -0
  308. data/app/views/shared/kirgudu_base/entry_index_renderer.html.erb +98 -0
  309. data/app/views/shared/kirgudu_base/entry_new_form_renderer.html.erb +68 -0
  310. data/app/views/shared/kirgudu_base/entry_not_found_renderer.html.erb +15 -0
  311. data/app/views/shared/kirgudu_base/entry_show_renderer.html.erb +28 -0
  312. data/app/views/shared/kirgudu_base/manage_images/managing_items_index.html.erb +34 -0
  313. data/app/views/shared/kirgudu_base/manage_images/managing_items_manage.html.erb +72 -0
  314. data/app/views/shared/kirgudu_base/manage_images/managing_items_sort_index.html.erb +33 -0
  315. data/app/views/shared/kirgudu_base/manage_items/managing_items_index.html.erb +42 -0
  316. data/app/views/shared/kirgudu_base/manage_items/managing_items_manage.html.erb +66 -0
  317. data/app/views/shared/kirgudu_base/manage_items/managing_items_sort_index.html.erb +33 -0
  318. data/config/routes.rb +3 -0
  319. data/db/migrate/20131114161828_create_kirgudu_base_templates.rb +17 -0
  320. data/db/migrate/20131114165013_create_kirgudu_base_template_elements.rb +18 -0
  321. data/lib/kirgudu_base/engine.rb +6 -0
  322. data/lib/kirgudu_base/version.rb +4 -0
  323. data/lib/kirgudu_base.rb +5 -0
  324. data/lib/tasks/kirgudu_base_tasks.rake +4 -0
  325. data/test/dummy/README.rdoc +261 -0
  326. data/test/dummy/Rakefile +7 -0
  327. data/test/dummy/app/assets/javascripts/application.js +15 -0
  328. data/test/dummy/app/assets/stylesheets/application.css +13 -0
  329. data/test/dummy/app/controllers/application_controller.rb +4 -0
  330. data/test/dummy/app/helpers/application_helper.rb +3 -0
  331. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  332. data/test/dummy/config/application.rb +60 -0
  333. data/test/dummy/config/boot.rb +11 -0
  334. data/test/dummy/config/database.yml +25 -0
  335. data/test/dummy/config/environment.rb +6 -0
  336. data/test/dummy/config/environments/development.rb +38 -0
  337. data/test/dummy/config/environments/production.rb +68 -0
  338. data/test/dummy/config/environments/test.rb +38 -0
  339. data/test/dummy/config/initializers/backtrace_silencers.rb +8 -0
  340. data/test/dummy/config/initializers/inflections.rb +16 -0
  341. data/test/dummy/config/initializers/mime_types.rb +6 -0
  342. data/test/dummy/config/initializers/secret_token.rb +8 -0
  343. data/test/dummy/config/initializers/session_store.rb +9 -0
  344. data/test/dummy/config/initializers/wrap_parameters.rb +15 -0
  345. data/test/dummy/config/locales/en.yml +5 -0
  346. data/test/dummy/config/routes.rb +5 -0
  347. data/test/dummy/config.ru +4 -0
  348. data/test/dummy/public/404.html +26 -0
  349. data/test/dummy/public/422.html +26 -0
  350. data/test/dummy/public/500.html +25 -0
  351. data/test/dummy/public/favicon.ico +0 -0
  352. data/test/dummy/script/rails +6 -0
  353. data/test/fixtures/kirgudu_base/template_elements.yml +17 -0
  354. data/test/fixtures/kirgudu_base/templates.yml +15 -0
  355. data/test/integration/navigation_test.rb +11 -0
  356. data/test/kirgudu_base_test.rb +8 -0
  357. data/test/test_helper.rb +16 -0
  358. data/test/unit/kirgudu_base/template_element_test.rb +10 -0
  359. data/test/unit/kirgudu_base/template_test.rb +10 -0
  360. metadata +492 -0
@@ -0,0 +1,93 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+
4
+
5
+ module KirguduBase
6
+
7
+ class CabinetController < ::KirguduBase::ApplicationController
8
+
9
+ before_filter :authenticate_user
10
+
11
+ layout "/layouts/application"
12
+
13
+ before_filter :authenticate_user
14
+
15
+
16
+ def render *args
17
+ self.create_breadcrumbs
18
+ super
19
+ end
20
+
21
+
22
+ def left_menu_path
23
+ "/admin/kirgudu_base/left_menu"
24
+ end
25
+
26
+ def current_entry
27
+ @entry
28
+ end
29
+
30
+ def base_entry
31
+ @current_portal
32
+ end
33
+
34
+
35
+ include GuiHelper
36
+
37
+ #before_filter :update_url_with_ajax_referer_url
38
+
39
+ def create_breadcrumbs
40
+
41
+ #if @current_user.user_at_portals.count > 1
42
+ #add_new_breadcrumb I18n.t("select_portal.index.title"), url_for(controller: ::ErpZone::SelectPortalController.to_route_path, action: :index)
43
+ #end
44
+
45
+ #add_new_breadcrumb @current_portal.name, url_for(controller: ::AdminZone::DashboarController.to_route_path) if @current_portal
46
+ #
47
+ #
48
+ #if self.class.to_s == ::AdminZone::DashboardController
49
+ # add_new_breadcrumb(I18n.t("#{self.to_i18n}.index.title"))
50
+ # return
51
+ #end
52
+ #
53
+ #if self.action_name == "index"
54
+ # add_new_breadcrumb(I18n.t("#{self.to_i18n}.index.title"))
55
+ #else
56
+ # add_new_breadcrumb(
57
+ # I18n.t("#{self.to_i18n}.index.title"),
58
+ # url_for(controller: ::ChupakabraTools::ClassHelper.controller_underscore(self), action: "index", id: @container))
59
+ #
60
+ # if ['new', 'create'].include?(self.action_name)
61
+ # add_new_breadcrumb(I18n.t("#{self.to_i18n}.new.title"))
62
+ # elsif ['edit', 'update', 'show'].include?(self.action_name)
63
+ # entry = self.current_entry
64
+ #
65
+ # if entry && entry.respond_to?(:name_for_breadcrumbs)
66
+ # add_new_breadcrumb(entry.name_for_breadcrumbs)
67
+ # end
68
+ # end
69
+ #end
70
+ end
71
+
72
+ protected
73
+
74
+ rescue_from ActiveRecord::RecordNotFound do
75
+ flash[:error] = I18n.t("#{self.to_i18n}.entry_not_found", entry_id: params[:id])
76
+ respond_to do |format|
77
+ format.html { render_redirect url_for(action: 'index') }
78
+ format.json { render_json_not_found(message: flash[:error]) }
79
+ end
80
+ end
81
+
82
+ private
83
+
84
+ def before_entry_create(entry, filter_params, options)
85
+ entry.creator = @current_user
86
+ entry.updater = @current_user
87
+ end
88
+
89
+ def before_entry_update(entry, filter_params, options)
90
+ entry.updater = @current_user
91
+ end
92
+ end
93
+ end
@@ -0,0 +1,82 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+
4
+
5
+ module KirguduBase
6
+
7
+ class FacadeController < ::KirguduBase::ApplicationController
8
+
9
+ #before_filter :authenticate_user
10
+
11
+ layout "/layouts/application"
12
+
13
+
14
+
15
+ def left_menu_path
16
+ "/admin/kirgudu_base/left_menu"
17
+ end
18
+
19
+ def current_entry
20
+ @entry
21
+ end
22
+
23
+
24
+ include GuiHelper
25
+
26
+
27
+ def create_breadcrumbs
28
+
29
+ #if @current_user.user_at_portals.count > 1
30
+ #add_new_breadcrumb I18n.t("select_portal.index.title"), url_for(controller: ::ErpZone::SelectPortalController.to_route_path, action: :index)
31
+ #end
32
+
33
+ #add_new_breadcrumb @current_portal.name, url_for(controller: ::AdminZone::DashboarController.to_route_path) if @current_portal
34
+ #
35
+ #
36
+ #if self.class.to_s == ::AdminZone::DashboardController
37
+ # add_new_breadcrumb(I18n.t("#{self.to_i18n}.index.title"))
38
+ # return
39
+ #end
40
+
41
+ #if self.action_name == "index"
42
+ # add_new_breadcrumb(I18n.t("#{self.to_i18n}.index.title"))
43
+ #else
44
+ # add_new_breadcrumb(
45
+ # I18n.t("#{self.to_i18n}.index.title"),
46
+ # url_for(controller: ::ChupakabraTools::ClassHelper.controller_underscore(self), action: "index", id: @container))
47
+ #
48
+ # if ['new', 'create'].include?(self.action_name)
49
+ # add_new_breadcrumb(I18n.t("#{self.to_i18n}.new.title"))
50
+ # elsif ['edit', 'update', 'show'].include?(self.action_name)
51
+ # entry = self.current_entry
52
+ #
53
+ # if entry && entry.respond_to?(:name_for_breadcrumbs)
54
+ # add_new_breadcrumb(entry.name_for_breadcrumbs)
55
+ # end
56
+ # end
57
+ #end
58
+ end
59
+
60
+ protected
61
+
62
+ rescue_from ActiveRecord::RecordNotFound do
63
+ flash[:error] = I18n.t("#{self.to_i18n}.entry_not_found", entry_id: params[:id])
64
+ respond_to do |format|
65
+ format.html { render_redirect url_for(action: 'index') }
66
+ format.json { render_json_not_found(message: flash[:error]) }
67
+ end
68
+ end
69
+
70
+ private
71
+
72
+ def before_entry_create(entry, filter_params, options)
73
+ entry.creator = @current_user
74
+ entry.updater = @current_user
75
+ end
76
+
77
+ def before_entry_update(entry, filter_params, options)
78
+ entry.updater = @current_user
79
+ end
80
+ end
81
+ end
82
+
@@ -0,0 +1,486 @@
1
+ # -*- encoding : utf-8 -*-
2
+
3
+ module KirguduBase
4
+ module ApplicationHelper
5
+
6
+ def build_query_string_params(prms = {}, opts = {})
7
+
8
+ params_new = prms ? Marshal.load(Marshal.dump(prms)) : nil
9
+
10
+ if prms && opts
11
+ # Creating Clone of params
12
+ params_new = Marshal.load(Marshal.dump(prms))
13
+
14
+ status_id = opts[:status_id]
15
+ if status_id
16
+ params_new[:status_id] = status_id
17
+ end
18
+ sort_by = opts[:sort_by]
19
+ if sort_by
20
+ params_new[:sort_by] = sort_by
21
+ end
22
+ sort_order = opts[:sort_order]
23
+ if sort_order
24
+ params_new[:sort_order] = sort_order
25
+ end
26
+ page = opts[:page]
27
+ if page
28
+ params_new[:page] = page
29
+ end
30
+
31
+
32
+ # Inverting Some Params
33
+ invert = opts[:invert]
34
+ if invert
35
+ if invert.is_a?(Array)
36
+ invert.each do |value|
37
+ if value == :sort_order || value == 'sort_order'
38
+ if sort_by && sort_by == prms[:sort_by]
39
+ params_new[:sort_order] = invert_sortorder(params_new[:sort_order])
40
+ else
41
+ params_new[:sort_order] = 'asc'
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
47
+
48
+ # Removing Params from Query String
49
+ remove = opts[:remove]
50
+ if remove
51
+ if remove.is_a?(Array)
52
+ remove.each do |value|
53
+ params_new.delete(:"#{value}")
54
+ end
55
+ else
56
+ params_new.delete(:"#{remove}")
57
+ end
58
+ end
59
+
60
+ params_new.delete(:controller)
61
+ params_new.delete(:action)
62
+ params_new.delete(:locale)
63
+ params_new.delete(:website_id)
64
+ params_new.delete(:remove)
65
+ end
66
+
67
+ params_new
68
+ end
69
+
70
+
71
+ def print_property item, method, options = {}
72
+
73
+ if item == false || item.nil?
74
+ "{{#{method.to_s}}}" if method #prints name for MUSTACHE
75
+ else
76
+ if options.nil?
77
+ item.send(method, options)
78
+ else
79
+ item.send(method)
80
+ end
81
+ end
82
+ end
83
+
84
+
85
+ def render_json(data, options={})
86
+
87
+ hash = options || Hash.new
88
+
89
+ hash[:status] = JSON_STATUS_OK unless hash[:status]
90
+ hash[:massage] = '' unless hash[:message]
91
+
92
+
93
+ if data
94
+ if data.is_a?(Array) || data.is_a?(::ActiveRecord::Relation)
95
+ collected_data = Array.new
96
+ data.collect { |itm| collected_data.push(itm) }
97
+ hash[:data] = collected_data
98
+ else
99
+ hash[:data] = data
100
+ end
101
+ end
102
+
103
+ #logger.info "JSON RESULT: #{hash.to_json}"
104
+
105
+ if params[:callback]
106
+ render json: hash, callback: params[:callback]
107
+ else
108
+ render json: hash
109
+ end
110
+ end
111
+
112
+ def render_json_nav(items, options={})
113
+ scope = options[:scope]
114
+ scope = :web unless [:web, :admin, :account].include?(scope)
115
+
116
+ hash = {}.merge(options)
117
+
118
+ hash[:page] ||= items.current_page if items.respond_to? :current_page
119
+ hash[:total_pages] ||= items.total_pages if items.respond_to? :total_pages
120
+ hash[:nav_url] ||= items.klass.nav_url(scope) if items.respond_to?(:klass) && items.klass.respond_to?(:nav_url_template)
121
+
122
+ hash[:status] = JSON_STATUS_OK
123
+ hash[:message] ||= ''
124
+
125
+ render_json(items, hash)
126
+ end
127
+
128
+
129
+ def render_json_error(options={})
130
+
131
+ hash = {}.merge(options)
132
+
133
+ hash[:status] = JSON_STATUS_ERROR
134
+ hash[:message] ||= 'unexpected error'
135
+
136
+ render_json(nil, hash)
137
+ end
138
+
139
+ def render_json_ok(items, options={})
140
+
141
+ hash = {}.merge(options)
142
+
143
+ hash[:status] = 'ok'
144
+ hash[:message] ||= ''
145
+
146
+ render_json(items, hash)
147
+ end
148
+
149
+
150
+ def render_json_item(item, options={})
151
+
152
+ #scope = options[:scope]
153
+ #scope = :web unless [:web, :admin, :account].include?(scope)
154
+
155
+ hash = {}.merge(options)
156
+
157
+ hash[:edit_url] ||= item.edit_url if item.respond_to? :edit_url
158
+ hash[:show_url] ||= item.total_pages if item.respond_to? :show_url
159
+
160
+ hash[:status] = JSON_STATUS_OK
161
+ hash[:message] ||= ''
162
+
163
+ render_json(items, hash)
164
+ end
165
+
166
+
167
+ def render_json_noauth(options={})
168
+ hash = {}.merge(options)
169
+
170
+ hash[:status] = JSON_STATUS_NEED_AUTHENTICATION
171
+ hash[:message] ||= I18n.t('common.messages.not_authenticated')
172
+
173
+ render_json(nil, hash)
174
+ end
175
+
176
+ def render_json_access_denied(options={})
177
+
178
+ hash = {}.merge(options)
179
+
180
+ hash[:status] = JSON_STATUS_ACCESS_DENIED
181
+ hash[:message] ||= I18n.t('core.messages.access_denied')
182
+
183
+ render_json(nil, hash)
184
+ end
185
+
186
+
187
+ def render_json_not_found(options={})
188
+ hash = {}.merge(options)
189
+ hash[:status] = JSON_STATUS_NOT_FOND
190
+ hash[:message] ||= I18n.t('core.messages.record_not_found')
191
+
192
+ render_json(nil, hash)
193
+ end
194
+
195
+ def render_html(action, options={})
196
+ options ||= {}
197
+ options.merge!({action: action})
198
+ if params[:layout] == 'false'
199
+ options.merge!({layout: false})
200
+ render options
201
+ else
202
+ render options
203
+ end
204
+ end
205
+
206
+ def render_html1(action, options={})
207
+ options ||= {}
208
+
209
+ if params[:layout] == 'false' || params[:layout] == false
210
+ options.merge!({layout: false})
211
+ end
212
+ render action, options
213
+ end
214
+
215
+
216
+ def render_redirect(url, options={})
217
+ if params[:layout] == 'false'
218
+ cookies[:RedirectURL] = {:value => url, :expires => 1.minute.from_now}
219
+ render text: "", status: :no_content
220
+ else
221
+ redirect_to url, options
222
+ end
223
+ end
224
+
225
+
226
+
227
+
228
+
229
+ def render_liquid(name, options={})
230
+ # source: ts, db, cache
231
+ # interface: cabinet, web, admin
232
+ # layout:
233
+
234
+
235
+
236
+
237
+ options ||= {}
238
+ options.stringify_keys!
239
+
240
+ #if options["source"] = "file_system"
241
+ #
242
+ #elsif options["source"] = "db"
243
+ #
244
+ #elsif options["source"] = "cache"
245
+ #
246
+ #end
247
+ #
248
+ #if options["layout"]
249
+ # # rendering layout
250
+ #end
251
+
252
+ cur_controller = controller_path
253
+ cur_action = action_name
254
+
255
+
256
+ @liquid_template = ::Liquid::Template.parse(File.open("#{Rails.root}/app/views/#{cur_controller}/#{name}.html.liquid"))
257
+ @liquid_template.render( options )
258
+
259
+ end
260
+
261
+
262
+
263
+
264
+
265
+ def kirgudu_form_for(item, form, url, &proc)
266
+ form_options = {}
267
+ form_options[:builder] = ::KirguduBase::FormBuilder
268
+
269
+ form_options[:url] = url
270
+
271
+ html_options = form.html_options || {}
272
+ if form.is_ajax
273
+ html_options.merge!(ajaxify: true)
274
+ end
275
+
276
+ form_options.merge!(html: html_options)
277
+ form_for(item, form_options, &proc)
278
+ end
279
+
280
+
281
+
282
+ #def chu_form_for(item, options, &proc)
283
+ # options ||= Hash.new
284
+ # options[:builder] = ::Kirgudu::FormBuilder
285
+ #
286
+ # html_options = options[:html] || Hash.new
287
+ # classes = html_options[:class]
288
+ # if classes
289
+ # classes += " form-horizontal"
290
+ # else
291
+ # classes = "form-horizontal"
292
+ # end
293
+ # html_options.merge!(class: classes)
294
+ #
295
+ # ajaxify = html_options[:ajaxify]
296
+ #
297
+ # unless ajaxify
298
+ # html_options.merge!(ajaxify: true)
299
+ # end
300
+ # options.merge!(html: html_options)
301
+ # form_for(item, options, &proc)
302
+ #end
303
+
304
+ def web_chu_form_for(item, options, &proc)
305
+ options ||= Hash.new
306
+ options[:builder] = WebShops::ChuFormBuilder
307
+
308
+ html_options = options[:html] || Hash.new
309
+ classes = html_options[:class]
310
+ #if classes
311
+ # classes += " form-horizontal row-fluid"
312
+ #else
313
+ # classes = "form-horizontal row-fluid"
314
+ #end
315
+ html_options.merge!(class: classes)
316
+
317
+ ajaxify = html_options[:ajaxify]
318
+
319
+ unless ajaxify
320
+ html_options.merge!(ajaxify: true)
321
+ end
322
+ options.merge!(html: html_options)
323
+ form_for(item, options, &proc)
324
+ end
325
+
326
+ def print_flash_notice
327
+ flash_notice = flash[:notice]
328
+ flash[:notice] = nil
329
+ flash_notice.html_safe if flash_notice
330
+ end
331
+
332
+ def get_flash_message(flash_type)
333
+ flash_type ||= ""
334
+
335
+ flash_type.downcase!
336
+
337
+ message = ""
338
+
339
+ if flash_type == "error"
340
+ message = flash[:error]
341
+ flash[:error] = nil
342
+ elsif flash_type == "success"
343
+ message = flash[:success]
344
+ flash[:success] = nil
345
+ elsif flash_type == "success"
346
+ message = flash[:notice]
347
+ flash[:notice] = nil
348
+ elsif flash_type == "warning"
349
+ message = flash[:warning]
350
+ flash[:warning] = nil
351
+ end
352
+ message
353
+ end
354
+
355
+
356
+ def print_flash_message
357
+
358
+ result = ""
359
+
360
+ message_title = ""
361
+ message_class = ""
362
+ message = ""
363
+
364
+
365
+ #if flash[:notice]
366
+ # message_class = 'notifications-info'
367
+ # message_title = flash[:notice]
368
+ # flash[:notice] = nil
369
+ #elsif flash[:error]
370
+ # message_class = 'notifications-error'
371
+ # message_title = flash[:error]
372
+ # flash[:error] = nil
373
+ #elsif flash[:warning]
374
+ # message_class = 'notifications-warning'
375
+ # message_title = flash[:warning]
376
+ # flash[:warning] = nil
377
+ #elsif flash[:success]
378
+ # message_class = 'notifications-success'
379
+ # message_title = flash[:success]
380
+ # flash[:success] = nil
381
+ #end
382
+ #
383
+ #if flash[:message]
384
+ # message = content_tag('p') do
385
+ # flash[:message]
386
+ # end
387
+ #else
388
+ # message = ""
389
+ #end
390
+ #
391
+ #
392
+ #unless message_title.nil? || message_title.blank?
393
+ # result = content_tag('div', class: "#{message_class} notifications-message") do
394
+ # content_tag('h3') do
395
+ # message_title.html_safe
396
+ # end + message
397
+ # end
398
+ #end
399
+
400
+
401
+ #
402
+ #<div class="notification-warning notification-message">
403
+ # <h3>Wait, I must warn you!</h3>
404
+ #<p>This is just a warning notification message.</p>
405
+ # </div>
406
+ #
407
+ #<div class="notification-success notification-message">
408
+ # <h3>Congrats, you did it!</h3>
409
+ #<p>This is just a success notification message.</p>
410
+ # </div>
411
+
412
+ result
413
+ end
414
+
415
+ def security_login
416
+
417
+ end
418
+
419
+ def security_logout(session)
420
+ session[:user_id] = nil
421
+ session[:user_expire] = 1.day.ago
422
+ session[:remember_me] = false
423
+ end
424
+
425
+
426
+ def get_password_hash(password)
427
+ Digest::SHA256.hexdigest(password)
428
+ end
429
+
430
+
431
+ # склонение месяцев
432
+ def russian_month_labels(month_name)
433
+
434
+ last_to_symbols = month_name[-2, 2]
435
+
436
+ if last_to_symbols == "рь"
437
+ month_name = month_name[0..-3] + "ря"
438
+ elsif last_to_symbols == "ль"
439
+ month_name = month_name[0..-3] + "ля"
440
+ elsif last_to_symbols =="нь"
441
+ month_name = month_name[0..-3] + "ля"
442
+ elsif last_to_symbols == "рт"
443
+ month_name = month_name[0..-3] + "рта"
444
+ elsif last_to_symbols == "ай"
445
+ month_name = month_name[0..-3] + "ая"
446
+ elsif last_to_symbols == "ст"
447
+ month_name = month_name[0..-3] + "ста"
448
+ end
449
+ return month_name
450
+ end
451
+
452
+
453
+ def self.assign_portal_to_models_of_class(klass, portal)
454
+ records_count = 0
455
+ if klass && portal && portal.is_a?(::ErpZone::Portal)
456
+ klass_instance = klass.new
457
+ if klass_instance.respond_to?(:portal_id) && klass_instance.is_a?(ActiveRecord::Base)
458
+ klass.where{ (portal_id == nil) | (portal_id == 0) }.each do |item|
459
+ item.portal_id = portal.id
460
+ if item.save
461
+ records_count += 1
462
+ end
463
+ end
464
+ end
465
+ end
466
+ records_count
467
+ end
468
+
469
+
470
+ def self.assign_portal_to_all_models(portal)
471
+
472
+ klasses = ChupakabraTools::ClassHelper.load_all_active_record_models
473
+ models_count = 0
474
+ records_count = 0
475
+ klasses.each do |klass|
476
+ unless klass.is_a?(::ErpZone::Portal)
477
+ records_count += assign_portal_to_models_of_class(klass, portal)
478
+ models_count += 1
479
+ end
480
+ end
481
+
482
+ "Process complete.\r\nProcessed: #{models_count} models\r\nProcessed records: #{records_count}"
483
+ end
484
+
485
+ end
486
+ end