camaleon_cms 2.1.1 → 2.1.1.4

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of camaleon_cms might be problematic. Click here for more details.

Files changed (180) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +35 -1
  3. data/app/apps/plugins/attack/config/locales/translation.yml +20 -1
  4. data/app/apps/plugins/contact_form/config/locales/translation.yml +106 -1
  5. data/app/apps/plugins/contact_form/contact_form_helper.rb +44 -27
  6. data/app/apps/plugins/front_cache/config/locales/translation.yml +21 -1
  7. data/app/apps/plugins/front_cache/front_cache_helper.rb +1 -1
  8. data/app/apps/plugins/visibility_post/assets/js/form.js +1 -3
  9. data/app/apps/plugins/visibility_post/visibility_post_helper.rb +2 -4
  10. data/app/assets/images/camaleon_cms/language/de.png +0 -0
  11. data/app/assets/images/camaleon_cms/language/en.png +0 -0
  12. data/app/assets/images/camaleon_cms/language/es.png +0 -0
  13. data/app/assets/images/camaleon_cms/language/fr.png +0 -0
  14. data/app/assets/images/camaleon_cms/language/it.png +0 -0
  15. data/app/assets/images/camaleon_cms/language/nl.png +0 -0
  16. data/app/assets/images/camaleon_cms/language/pl.png +0 -0
  17. data/app/assets/images/camaleon_cms/language/pt.png +0 -0
  18. data/app/assets/images/camaleon_cms/language/pt_br.png +0 -0
  19. data/app/assets/images/camaleon_cms/language/ru.png +0 -0
  20. data/app/assets/images/camaleon_cms/language/zh.png +0 -0
  21. data/app/assets/javascripts/camaleon_cms/admin/_custom_fields.js +3 -11
  22. data/app/assets/javascripts/camaleon_cms/admin/_data.js +2 -6
  23. data/app/assets/javascripts/camaleon_cms/admin/_libraries.js +11 -229
  24. data/app/assets/javascripts/camaleon_cms/admin/_modal.js +11 -37
  25. data/app/assets/javascripts/camaleon_cms/admin/_post.js +27 -22
  26. data/app/assets/javascripts/camaleon_cms/admin/_translator.js +2 -1
  27. data/app/assets/javascripts/camaleon_cms/admin/admin-manifest.js +6 -2
  28. data/app/assets/javascripts/camaleon_cms/admin/bootstrap-datepicker.js +2557 -1689
  29. data/app/assets/javascripts/camaleon_cms/admin/jquery.validate.js +119 -1361
  30. data/app/assets/javascripts/camaleon_cms/admin/jquery_validate/nl.js +33 -0
  31. data/app/assets/javascripts/camaleon_cms/admin/momentjs/_moment.js +3606 -0
  32. data/app/assets/javascripts/camaleon_cms/admin/momentjs/ar.js +136 -0
  33. data/app/assets/javascripts/camaleon_cms/admin/momentjs/ca.js +79 -0
  34. data/app/assets/javascripts/camaleon_cms/admin/momentjs/de.js +76 -0
  35. data/app/assets/javascripts/camaleon_cms/admin/momentjs/es.js +79 -0
  36. data/app/assets/javascripts/camaleon_cms/admin/momentjs/fr.js +62 -0
  37. data/app/assets/javascripts/camaleon_cms/admin/momentjs/it.js +70 -0
  38. data/app/assets/javascripts/camaleon_cms/admin/momentjs/ja.js +65 -0
  39. data/app/assets/javascripts/camaleon_cms/admin/momentjs/nl.js +71 -0
  40. data/app/assets/javascripts/camaleon_cms/admin/momentjs/pl.js +105 -0
  41. data/app/assets/javascripts/camaleon_cms/admin/momentjs/pt.js +64 -0
  42. data/app/assets/javascripts/camaleon_cms/admin/momentjs/pt_br.js +60 -0
  43. data/app/assets/javascripts/camaleon_cms/admin/momentjs/ru.js +166 -0
  44. data/app/assets/javascripts/camaleon_cms/admin/momentjs/zh.js +127 -0
  45. data/app/assets/javascripts/camaleon_cms/admin/nav-menu.js +15 -25
  46. data/app/assets/javascripts/camaleon_cms/admin/tinymce/langs/nl.js +219 -0
  47. data/app/assets/javascripts/camaleon_cms/admin/uploader/_media_manager.js.coffee +82 -19
  48. data/app/assets/javascripts/camaleon_cms/admin/user_profile.js +8 -8
  49. data/app/assets/stylesheets/camaleon_cms/admin/_custom_admin.css.scss +19 -2
  50. data/app/assets/stylesheets/camaleon_cms/admin/admin-manifest.css +0 -4
  51. data/app/assets/stylesheets/camaleon_cms/admin/bootstrap-datepicker.css.scss +315 -414
  52. data/app/assets/stylesheets/camaleon_cms/admin/uploader/_uploadfile.css.scss +7 -3
  53. data/app/controllers/camaleon_cms/admin/appearances/nav_menus_controller.rb +9 -5
  54. data/app/controllers/camaleon_cms/admin/categories_controller.rb +5 -0
  55. data/app/controllers/camaleon_cms/admin/media_controller.rb +27 -10
  56. data/app/controllers/camaleon_cms/admin/posts_controller.rb +9 -19
  57. data/app/controllers/camaleon_cms/admin/sessions_controller.rb +3 -10
  58. data/app/controllers/camaleon_cms/admin/settings/custom_fields_controller.rb +0 -1
  59. data/app/controllers/camaleon_cms/admin/settings/sites_controller.rb +6 -1
  60. data/app/controllers/camaleon_cms/admin/users_controller.rb +1 -8
  61. data/app/controllers/camaleon_cms/admin_controller.rb +5 -4
  62. data/app/controllers/camaleon_cms/apps/plugins_front_controller.rb +0 -8
  63. data/app/controllers/camaleon_cms/camaleon_controller.rb +6 -1
  64. data/app/controllers/camaleon_cms/frontend_controller.rb +11 -8
  65. data/app/decorators/camaleon_cms/category_decorator.rb +2 -1
  66. data/app/decorators/camaleon_cms/post_decorator.rb +28 -1
  67. data/app/decorators/camaleon_cms/post_tag_decorator.rb +1 -0
  68. data/app/decorators/camaleon_cms/post_type_decorator.rb +17 -0
  69. data/app/decorators/camaleon_cms/site_decorator.rb +22 -7
  70. data/app/decorators/camaleon_cms/user_decorator.rb +1 -0
  71. data/app/helpers/camaleon_cms/admin/application_helper.rb +3 -2
  72. data/app/helpers/camaleon_cms/admin/custom_fields_helper.rb +13 -25
  73. data/app/helpers/camaleon_cms/admin/post_type_helper.rb +27 -2
  74. data/app/helpers/camaleon_cms/camaleon_helper.rb +0 -16
  75. data/app/helpers/camaleon_cms/captcha_helper.rb +9 -3
  76. data/app/helpers/camaleon_cms/email_helper.rb +27 -8
  77. data/app/helpers/camaleon_cms/frontend/nav_menu_helper.rb +21 -17
  78. data/app/helpers/camaleon_cms/frontend/seo_helper.rb +5 -3
  79. data/app/helpers/camaleon_cms/html_helper.rb +2 -2
  80. data/app/helpers/camaleon_cms/site_helper.rb +10 -14
  81. data/app/helpers/camaleon_cms/uploader_helper.rb +119 -31
  82. data/app/mailers/camaleon_cms/html_mailer.rb +26 -20
  83. data/app/models/camaleon_cms/custom_field.rb +1 -0
  84. data/app/models/camaleon_cms/custom_field_group.rb +2 -1
  85. data/app/models/camaleon_cms/nav_menu.rb +6 -7
  86. data/app/models/camaleon_cms/nav_menu_item.rb +2 -1
  87. data/app/models/camaleon_cms/post.rb +29 -2
  88. data/app/models/camaleon_cms/post_type.rb +20 -1
  89. data/app/models/camaleon_cms/site.rb +19 -19
  90. data/app/models/camaleon_cms/term_taxonomy.rb +1 -1
  91. data/app/models/concerns/camaleon_cms/custom_fields_read.rb +6 -4
  92. data/app/models/concerns/camaleon_cms/metas.rb +5 -4
  93. data/app/views/camaleon_cms/admin/appearances/nav_menus/_custom_fields.html.erb +4 -2
  94. data/app/views/camaleon_cms/admin/appearances/nav_menus/_external_menu.html.erb +1 -1
  95. data/app/views/camaleon_cms/admin/appearances/nav_menus/index.html.erb +3 -6
  96. data/app/views/camaleon_cms/admin/categories/index.html.erb +1 -0
  97. data/app/views/camaleon_cms/admin/media/_files_list.html.erb +3 -3
  98. data/app/views/camaleon_cms/admin/media/_render_file_item.html.erb +3 -2
  99. data/app/views/camaleon_cms/admin/media/index.html.erb +31 -4
  100. data/app/views/camaleon_cms/admin/posts/_sidebar.html.erb +10 -1
  101. data/app/views/camaleon_cms/admin/posts/form.html.erb +6 -2
  102. data/app/views/camaleon_cms/admin/posts/index.html.erb +4 -4
  103. data/app/views/camaleon_cms/admin/search.html.erb +5 -3
  104. data/app/views/camaleon_cms/admin/settings/_file_system_settings.html.erb +5 -5
  105. data/app/views/camaleon_cms/admin/settings/custom_fields/_get_items.html.erb +2 -1
  106. data/app/views/camaleon_cms/admin/settings/custom_fields/_render.html.erb +1 -1
  107. data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_date.html.erb +3 -4
  108. data/app/views/camaleon_cms/admin/settings/custom_fields/fields/_image.html.erb +1 -1
  109. data/app/views/camaleon_cms/admin/settings/custom_fields/form.html.erb +2 -2
  110. data/app/views/camaleon_cms/admin/settings/post_types/_form.html.erb +11 -1
  111. data/app/views/camaleon_cms/admin/settings/post_types/index.html.erb +1 -0
  112. data/app/views/camaleon_cms/admin/users/form.html.erb +30 -55
  113. data/app/views/camaleon_cms/html_mailer/mailer.html.erb +1 -1
  114. data/app/views/camaleon_cms/html_mailer/password_reset.html.erb +3 -0
  115. data/app/views/layouts/camaleon_cms/admin.html.erb +4 -1
  116. data/app/views/layouts/camaleon_cms/admin/_ajax.html.erb +3 -1
  117. data/app/views/layouts/camaleon_cms/admin/_footer.html.erb +1 -1
  118. data/app/views/layouts/camaleon_cms/admin/_header.html.erb +1 -1
  119. data/config/initializers/assets.rb +4 -2
  120. data/config/initializers/model_alias.rb +11 -0
  121. data/config/locales/camaleon_cms/admin/en.yml +2 -0
  122. data/config/locales/camaleon_cms/admin/es.yml +2 -1
  123. data/config/locales/camaleon_cms/admin/it.yml +1 -0
  124. data/config/locales/camaleon_cms/admin/js.yml +42 -1
  125. data/config/locales/camaleon_cms/admin/nl.yml +659 -0
  126. data/config/locales/camaleon_cms/admin/pt_br.yml +1 -0
  127. data/config/locales/camaleon_cms/admin/ru.yml +659 -0
  128. data/config/locales/camaleon_cms/common.yml +127 -0
  129. data/config/locales/camaleon_cms/languages.yml +16 -0
  130. data/config/locales/camaleon_cms/routes.yml +8 -0
  131. data/config/locales/nl.yml +209 -0
  132. data/config/routes.rb +1 -1
  133. data/config/routes/admin.rb +5 -4
  134. data/config/routes/frontend.rb +16 -3
  135. data/config/system.json +2 -3
  136. data/lib/camaleon_cms/engine.rb +5 -1
  137. data/lib/camaleon_cms/version.rb +1 -1
  138. data/lib/ext/array.rb +5 -0
  139. data/lib/generators/camaleon_cms/gem_plugin_generator.rb +1 -1
  140. data/lib/generators/camaleon_cms/gem_plugin_template/app/models/plugins/my_plugin/my_plugin.rb +1 -2
  141. data/lib/generators/camaleon_cms/gem_plugin_template/config/{custom_models.rb → initializers/custom_models.rb} +0 -0
  142. data/lib/plugin_routes.rb +38 -63
  143. data/lib/tasks/camaleon_cms/camaleon_tasks.rake +18 -0
  144. data/lib/tasks/camaleon_cms/rspec_test.rake +7 -4
  145. metadata +43 -54
  146. data/app/assets/javascripts/camaleon_cms/admin/bootstrap-datetimepicker.min.js +0 -26
  147. data/app/assets/javascripts/camaleon_cms/admin/plugins.js +0 -637
  148. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-cool.gif +0 -0
  149. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-cry.gif +0 -0
  150. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-embarassed.gif +0 -0
  151. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-foot-in-mouth.gif +0 -0
  152. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-frown.gif +0 -0
  153. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-innocent.gif +0 -0
  154. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-kiss.gif +0 -0
  155. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-laughing.gif +0 -0
  156. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-money-mouth.gif +0 -0
  157. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-sealed.gif +0 -0
  158. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-smile.gif +0 -0
  159. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-surprised.gif +0 -0
  160. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-tongue-out.gif +0 -0
  161. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-undecided.gif +0 -0
  162. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-wink.gif +0 -0
  163. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/emoticons/img/smiley-yell.gif +0 -0
  164. data/app/assets/javascripts/camaleon_cms/admin/tinymce/plugins/visualblocks/css/visualblocks.css +0 -135
  165. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/content.min.css.scss +0 -4
  166. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce-small.eot +0 -0
  167. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce-small.svg +0 -62
  168. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce-small.ttf +0 -0
  169. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce-small.woff +0 -0
  170. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce.eot +0 -0
  171. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce.svg +0 -83
  172. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce.ttf +0 -0
  173. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/fonts/tinymce.woff +0 -0
  174. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/img/anchor.gif +0 -0
  175. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/img/loader.gif +0 -0
  176. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/img/object.gif +0 -0
  177. data/app/assets/javascripts/camaleon_cms/admin/tinymce/skins/lightgray/img/trans.gif +0 -0
  178. data/app/assets/javascripts/camaleon_cms/admin/tinymce/themes/modern/theme.min.js +0 -1
  179. data/app/assets/javascripts/camaleon_cms/admin/tinymce/tinymce.min.js +0 -11
  180. data/app/assets/stylesheets/camaleon_cms/admin/bootstrap-datetimepicker.css.scss +0 -339
@@ -1,637 +0,0 @@
1
- $(function() {
2
-
3
- var formElements = function(){
4
- // Bootstrap datepicker
5
- var feDatepicker = function(){
6
- if($(".datepicker").length > 0){
7
- $(".datepicker").datepicker({format: 'yyyy-mm-dd'});
8
- }
9
-
10
- }// END Bootstrap datepicker
11
-
12
- //Bootstrap timepicker
13
- var feTimepicker = function(){
14
- // Default timepicker
15
- if($(".timepicker").length > 0)
16
- $('.timepicker').timepicker();
17
-
18
- // 24 hours mode timepicker
19
- if($(".timepicker24").length > 0)
20
- $(".timepicker24").timepicker({minuteStep: 5,showSeconds: true,showMeridian: false});
21
-
22
- }// END Bootstrap timepicker
23
-
24
- //Daterangepicker
25
- var feDaterangepicker = function(){
26
- if($(".daterange").length > 0)
27
- $(".daterange").daterangepicker({format: 'YYYY-MM-DD',startDate: '2013-01-01',endDate: '2013-12-31'});
28
- }
29
- // END Daterangepicker
30
-
31
- //Bootstrap colopicker
32
- var feColorpicker = function(){
33
- // Default colorpicker hex
34
- if($(".colorpicker").length > 0)
35
- $(".colorpicker").colorpicker({format: 'hex'});
36
-
37
- // RGBA mode
38
- if($(".colorpicker_rgba").length > 0)
39
- $(".colorpicker_rgba").colorpicker({format: 'rgba'});
40
-
41
- // Sample
42
- if($("#colorpicker").length > 0)
43
- $("#colorpicker").colorpicker();
44
-
45
- }// END Bootstrap colorpicker
46
-
47
- //Bootstrap select
48
- var feSelect = function(){
49
- if($(".select").length > 0){
50
- if($.fn.selectpicker)$(".select").selectpicker();
51
-
52
- $(".select").on("change", function(){
53
- if($(this).val() == "" || null === $(this).val()){
54
- if(!$(this).attr("multiple"))
55
- $(this).val("").find("option").removeAttr("selected").prop("selected",false);
56
- }else{
57
- $(this).find("option[value="+$(this).val()+"]").attr("selected",true);
58
- }
59
- });
60
- }
61
- }//END Bootstrap select
62
-
63
-
64
- //Validation Engine
65
- var feValidation = function(){
66
- if($("form[id^='validate']").length > 0){
67
-
68
- // Validation prefix for custom form elements
69
- var prefix = "valPref_";
70
-
71
- //Add prefix to Bootstrap select plugin
72
- $("form[id^='validate'] .select").each(function(){
73
- $(this).next("div.bootstrap-select").attr("id", prefix + $(this).attr("id")).removeClass("validate[required]");
74
- });
75
-
76
- // Validation Engine init
77
- $("form[id^='validate']").validationEngine('attach', {promptPosition : "bottomLeft", scroll: false});
78
- }
79
- }//END Validation Engine
80
-
81
- //Masked Inputs
82
- var feMasked = function(){
83
- if($("input[class^='mask_']").length > 0){
84
- $("input.mask_tin").mask('99-9999999');
85
- $("input.mask_ssn").mask('999-99-9999');
86
- $("input.mask_date").mask('9999-99-99');
87
- $("input.mask_product").mask('a*-999-a999');
88
- $("input.mask_phone").mask('99 (999) 999-99-99');
89
- $("input.mask_phone_ext").mask('99 (999) 999-9999? x99999');
90
- $("input.mask_credit").mask('9999-9999-9999-9999');
91
- $("input.mask_percent").mask('99%');
92
- }
93
- }//END Masked Inputs
94
-
95
- //Bootstrap tooltip
96
- var feTooltips = function(){
97
- //$("body").tooltip({selector:'[data-toggle="tooltip"]',container:"body"});
98
- }//END Bootstrap tooltip
99
-
100
- //Bootstrap Popover
101
- var fePopover = function(){
102
- //$("[data-toggle=popover]").popover();
103
- //$(".popover-dismiss").popover({trigger: 'focus'});
104
- }//END Bootstrap Popover
105
-
106
- //Tagsinput
107
- var feTagsinput = function(){
108
- if($(".tagsinput").length > 0){
109
-
110
- $(".tagsinput").each(function(){
111
-
112
- if($(this).data("placeholder") != ''){
113
- var dt = $(this).data("placeholder");
114
- }else
115
- var dt = 'Add a tag';
116
-
117
- $(this).tagsInput({width: '100%',height:'auto',defaultText: dt});
118
- });
119
-
120
- }
121
- }// END Tagsinput
122
-
123
- //iCheckbox and iRadion - custom elements
124
- var feiCheckbox = function(){
125
- if($(".icheckbox").length > 0){
126
- $(".icheckbox,.iradio").iCheck({checkboxClass: 'icheckbox_minimal-grey',radioClass: 'iradio_minimal-grey'});
127
- }
128
- }
129
- // END iCheckbox
130
-
131
- //Bootstrap file input
132
- var feBsFileInput = function(){
133
-
134
- if($("input.fileinput").length > 0){
135
- $("input.fileinput").bootstrapFileInput();
136
- }
137
-
138
- }
139
- //END Bootstrap file input
140
-
141
- return {// Init all form element features
142
- init: function(){
143
- feDatepicker();
144
- feTimepicker();
145
- feColorpicker();
146
- feSelect();
147
- feValidation();
148
- feMasked();
149
- feTooltips();
150
- fePopover();
151
- feTagsinput();
152
- feiCheckbox();
153
- feBsFileInput();
154
- feDaterangepicker();
155
- }
156
- }
157
- }();
158
-
159
- var uiElements = function(){
160
-
161
- //Datatables
162
- var uiDatatable = function(){
163
- if($(".datatable").length > 0){
164
- $(".datatable").dataTable();
165
- $(".datatable").on('page.dt',function () {
166
- onresize(100);
167
- });
168
- }
169
-
170
- if($(".datatable_simple").length > 0){
171
- $(".datatable_simple").dataTable({"ordering": false, "info": false, "lengthChange": false,"searching": false});
172
- $(".datatable_simple").on('page.dt',function () {
173
- onresize(100);
174
- });
175
- }
176
- }//END Datatable
177
-
178
- //RangeSlider // This function can be removed or cleared.
179
- var uiRangeSlider = function(){
180
-
181
- //Default Slider with start value
182
- if($(".defaultSlider").length > 0){
183
- $(".defaultSlider").each(function(){
184
- var rsMin = $(this).data("min");
185
- var rsMax = $(this).data("max");
186
-
187
- $(this).rangeSlider({
188
- bounds: {min: 1, max: 200},
189
- defaultValues: {min: rsMin, max: rsMax}
190
- });
191
- });
192
- }//End Default
193
-
194
- //Date range slider
195
- if($(".dateSlider").length > 0){
196
- $(".dateSlider").each(function(){
197
- $(this).dateRangeSlider({
198
- bounds: {min: new Date(2012, 1, 1), max: new Date(2015, 12, 31)},
199
- defaultValues:{min: new Date(2012, 10, 15),max: new Date(2014, 12, 15)}
200
- });
201
- });
202
- }//End date range slider
203
-
204
- //Range slider with predefinde range
205
- if($(".rangeSlider").length > 0){
206
- $(".rangeSlider").each(function(){
207
- var rsMin = $(this).data("min");
208
- var rsMax = $(this).data("max");
209
-
210
- $(this).rangeSlider({
211
- bounds: {min: 1, max: 200},
212
- range: {min: 20, max: 40},
213
- defaultValues: {min: rsMin, max: rsMax}
214
- });
215
- });
216
- }//End
217
-
218
- //Range Slider with custom step
219
- if($(".stepSlider").length > 0){
220
- $(".stepSlider").each(function(){
221
- var rsMin = $(this).data("min");
222
- var rsMax = $(this).data("max");
223
-
224
- $(this).rangeSlider({
225
- bounds: {min: 1, max: 200},
226
- defaultValues: {min: rsMin, max: rsMax},
227
- step: 10
228
- });
229
- });
230
- }//End
231
-
232
- }//END RangeSlider
233
-
234
- //Start Knob Plugin
235
- var uiKnob = function(){
236
-
237
- if($(".knob").length > 0){
238
- $(".knob").knob();
239
- }
240
-
241
- }//End Knob
242
-
243
- // Start Smart Wizard
244
- var uiSmartWizard = function(){
245
-
246
- if($(".wizard").length > 0){
247
-
248
- //Check count of steps in each wizard
249
- $(".wizard > ul").each(function(){
250
- $(this).addClass("steps_"+$(this).children("li").length);
251
- });//end
252
-
253
- // This par of code used for example
254
- if($("#wizard-validation").length > 0){
255
-
256
- var validator = $("#wizard-validation").validate({
257
- rules: {
258
- login: {
259
- required: true,
260
- minlength: 2,
261
- maxlength: 8
262
- },
263
- password: {
264
- required: true,
265
- minlength: 5,
266
- maxlength: 10
267
- },
268
- repassword: {
269
- required: true,
270
- minlength: 5,
271
- maxlength: 10,
272
- equalTo: "#password"
273
- },
274
- email: {
275
- required: true,
276
- email: true
277
- },
278
- name: {
279
- required: true,
280
- maxlength: 10
281
- },
282
- adress: {
283
- required: true
284
- }
285
- }
286
- });
287
-
288
- }// End of example
289
-
290
- $(".wizard").smartWizard({
291
- // This part of code can be removed FROM
292
- onLeaveStep: function(obj){
293
- var wizard = obj.parents(".wizard");
294
-
295
- if(wizard.hasClass("wizard-validation")){
296
-
297
- var valid = true;
298
-
299
- $('input,textarea',$(obj.attr("href"))).each(function(i,v){
300
- valid = validator.element(v) && valid;
301
- });
302
-
303
- if(!valid){
304
- wizard.find(".stepContainer").removeAttr("style");
305
- validator.focusInvalid();
306
- return false;
307
- }
308
-
309
- }
310
-
311
- return true;
312
- },// <-- TO
313
-
314
- //This is important part of wizard init
315
- onShowStep: function(obj){
316
- var wizard = obj.parents(".wizard");
317
-
318
- if(wizard.hasClass("show-submit")){
319
-
320
- var step_num = obj.attr('rel');
321
- var step_max = obj.parents(".anchor").find("li").length;
322
-
323
- if(step_num == step_max){
324
- obj.parents(".wizard").find(".actionBar .btn-primary").css("display","block");
325
- }
326
- }
327
- return true;
328
- }//End
329
- });
330
- }
331
-
332
- }// End Smart Wizard
333
-
334
- //OWL Carousel
335
- var uiOwlCarousel = function(){
336
-
337
- if($(".owl-carousel").length > 0){
338
- $(".owl-carousel").owlCarousel({mouseDrag: false, touchDrag: true, slideSpeed: 300, paginationSpeed: 400, singleItem: true, navigation: false,autoPlay: true});
339
- }
340
-
341
- }//End OWL Carousel
342
-
343
- // Summernote
344
- var uiSummernote = function(){
345
- /* Extended summernote editor */
346
- if($(".summernote").length > 0){
347
- $(".summernote").summernote({height: 250,
348
- codemirror: {
349
- mode: 'text/html',
350
- htmlMode: true,
351
- lineNumbers: true,
352
- theme: 'default'
353
- }
354
- });
355
- }
356
- /* END Extended summernote editor */
357
-
358
- /* Lite summernote editor */
359
- if($(".summernote_lite").length > 0){
360
-
361
- $(".summernote_lite").on("focus",function(){
362
-
363
- $(".summernote_lite").summernote({height: 100, focus: true,
364
- toolbar: [
365
- ["style", ["bold", "italic", "underline", "clear"]],
366
- ["insert",["link","picture","video"]]
367
- ]
368
- });
369
- });
370
- }
371
- /* END Lite summernote editor */
372
-
373
- /* Email summernote editor */
374
- if($(".summernote_email").length > 0){
375
-
376
- $(".summernote_email").summernote({height: 400, focus: true,
377
- toolbar: [
378
- ['style', ['bold', 'italic', 'underline', 'clear']],
379
- ['font', ['strikethrough']],
380
- ['fontsize', ['fontsize']],
381
- ['color', ['color']],
382
- ['para', ['ul', 'ol', 'paragraph']],
383
- ['height', ['height']]
384
- ]
385
- });
386
-
387
- }
388
- /* END Email summernote editor */
389
-
390
- }// END Summernote
391
-
392
- // Custom Content Scroller
393
- var uiScroller = function(){
394
-
395
- if($(".scroll").length > 0){
396
- $(".scroll").mCustomScrollbar({axis:"y", autoHideScrollbar: true, scrollInertia: 20, advanced: {autoScrollOnFocus: false}});
397
- }
398
-
399
- }// END Custom Content Scroller
400
-
401
- // Sparkline
402
- var uiSparkline = function(){
403
-
404
- if($(".sparkline").length > 0)
405
- $(".sparkline").sparkline('html', { enableTagOptions: true,disableHiddenCheck: true});
406
-
407
- }// End sparkline
408
-
409
- $(window).resize(function(){
410
- if($(".owl-carousel").length > 0){
411
- $(".owl-carousel").data('owlCarousel').destroy();
412
- uiOwlCarousel();
413
- }
414
- });
415
-
416
- return {
417
- init: function(){
418
- uiDatatable();
419
- uiRangeSlider();
420
- uiKnob();
421
- uiSmartWizard();
422
- uiOwlCarousel();
423
- uiSummernote();
424
- uiScroller();
425
- uiSparkline();
426
- }
427
- }
428
-
429
- }();
430
-
431
- var templatePlugins = function(){
432
-
433
- var tp_clock = function(){
434
-
435
- function tp_clock_time(){
436
- var now = new Date();
437
- var hour = now.getHours();
438
- var minutes = now.getMinutes();
439
-
440
- hour = hour < 10 ? '0'+hour : hour;
441
- minutes = minutes < 10 ? '0'+minutes : minutes;
442
-
443
- $(".plugin-clock").html(hour+"<span>:</span>"+minutes);
444
- }
445
- if($(".plugin-clock").length > 0){
446
-
447
- tp_clock_time();
448
-
449
- window.setInterval(function(){
450
- tp_clock_time();
451
- },10000);
452
-
453
- }
454
- }
455
-
456
- var tp_date = function(){
457
-
458
- if($(".plugin-date").length > 0){
459
-
460
- var days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
461
- var months = ['January','February','March','April','May','June','July','August','September','October','November','December'];
462
-
463
- var now = new Date();
464
- var day = days[now.getDay()];
465
- var date = now.getDate();
466
- var month = months[now.getMonth()];
467
- var year = now.getFullYear();
468
-
469
- $(".plugin-date").html(day+", "+month+" "+date+", "+year);
470
- }
471
-
472
- }
473
-
474
- return {
475
- init: function(){
476
- tp_clock();
477
- tp_date();
478
- }
479
- }
480
- }();
481
-
482
- var fullCalendar = function(){
483
-
484
- var calendar = function(){
485
-
486
- if($("#calendar").length > 0){
487
-
488
- function prepare_external_list(){
489
-
490
- $('#external-events .external-event').each(function() {
491
- var eventObject = {title: $.trim($(this).text())};
492
-
493
- $(this).data('eventObject', eventObject);
494
- $(this).draggable({
495
- zIndex: 999,
496
- revert: true,
497
- revertDuration: 0
498
- });
499
- });
500
-
501
- }
502
-
503
-
504
- var date = new Date();
505
- var d = date.getDate();
506
- var m = date.getMonth();
507
- var y = date.getFullYear();
508
-
509
- prepare_external_list();
510
-
511
- var calendar = $('#calendar').fullCalendar({
512
- header: {
513
- left: 'prev,next today',
514
- center: 'title',
515
- right: 'month,agendaWeek,agendaDay'
516
- },
517
- editable: true,
518
- eventSources: {url: "assets/ajax_fullcalendar.php"},
519
- droppable: true,
520
- selectable: true,
521
- selectHelper: true,
522
- select: function(start, end, allDay) {
523
- var title = prompt('Event Title:');
524
- if (title) {
525
- calendar.fullCalendar('renderEvent',
526
- {
527
- title: title,
528
- start: start,
529
- end: end,
530
- allDay: allDay
531
- },
532
- true
533
- );
534
- }
535
- calendar.fullCalendar('unselect');
536
- },
537
- drop: function(date, allDay) {
538
-
539
- var originalEventObject = $(this).data('eventObject');
540
-
541
- var copiedEventObject = $.extend({}, originalEventObject);
542
-
543
- copiedEventObject.start = date;
544
- copiedEventObject.allDay = allDay;
545
-
546
- $('#calendar').fullCalendar('renderEvent', copiedEventObject, true);
547
-
548
-
549
- if ($('#drop-remove').is(':checked')) {
550
- $(this).remove();
551
- }
552
-
553
- }
554
- });
555
-
556
- $("#new-event").on("click",function(){
557
- var et = $("#new-event-text").val();
558
- if(et != ''){
559
- $("#external-events").prepend('<a class="list-group-item external-event">'+et+'</a>');
560
- prepare_external_list();
561
- }
562
- });
563
-
564
- }
565
- }
566
-
567
- return {
568
- init: function(){
569
- calendar();
570
- }
571
- }
572
- }();
573
-
574
- formElements.init();
575
- uiElements.init();
576
- templatePlugins.init();
577
-
578
- fullCalendar.init();
579
-
580
- /* My Custom Progressbar */
581
- $.mpb = function(action,options){
582
-
583
- var settings = $.extend({
584
- state: '',
585
- value: [0,0],
586
- position: '',
587
- speed: 20,
588
- complete: null
589
- },options);
590
-
591
- if(action == 'show' || action == 'update'){
592
-
593
- if(action == 'show'){
594
- $(".mpb").remove();
595
- var mpb = '<div class="mpb '+settings.position+'">\n\
596
- <div class="mpb-progress'+(settings.state != '' ? ' mpb-'+settings.state: '')+'" style="width:'+settings.value[0]+'%;"></div>\n\
597
- </div>';
598
- $('body').append(mpb);
599
- }
600
-
601
- var i = $.isArray(settings.value) ? settings.value[0] : $(".mpb .mpb-progress").width();
602
- var to = $.isArray(settings.value) ? settings.value[1] : settings.value;
603
-
604
- var timer = setInterval(function(){
605
- $(".mpb .mpb-progress").css('width',i+'%'); i++;
606
-
607
- if(i > to){
608
- clearInterval(timer);
609
- if($.isFunction(settings.complete)){
610
- settings.complete.call(this);
611
- }
612
- }
613
- }, settings.speed);
614
-
615
- }
616
-
617
- if(action == 'destroy'){
618
- $(".mpb").remove();
619
- }
620
-
621
- }
622
- /* Eof My Custom Progressbar */
623
-
624
-
625
- // New selector case insensivity
626
- $.expr[':'].containsi = function(a, i, m) {
627
- return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0;
628
- };
629
- });
630
-
631
- Object.size = function(obj) {
632
- var size = 0, key;
633
- for (key in obj) {
634
- if (obj.hasOwnProperty(key)) size++;
635
- }
636
- return size;
637
- };