drg_cms 0.6.1.4 → 0.6.1.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +203 -24
  3. data/app/assets/fonts/ibm-plex-sans-300.woff2 +0 -0
  4. data/app/assets/fonts/ibm-plex-sans-400.woff2 +0 -0
  5. data/app/assets/fonts/ibm-plex-sans-500.woff2 +0 -0
  6. data/app/assets/fonts/ibm-plex-sans-600.woff2 +0 -0
  7. data/app/assets/fonts/ibm-plex-sans-700.woff2 +0 -0
  8. data/app/assets/fonts/ibm-plex-sans-italic.woff2 +0 -0
  9. data/app/assets/javascripts/drg_cms/drg_cms.js +229 -95
  10. data/app/assets/stylesheets/drg_cms/drg_cms.css +608 -542
  11. data/app/assets/stylesheets/drg_cms_application.css +1 -1
  12. data/app/assets/stylesheets/drg_cms_cms.css +1 -4
  13. data/app/controllers/cmsedit_controller.rb +54 -127
  14. data/app/controllers/dc_application_controller.rb +17 -2
  15. data/app/controllers/dc_common_controller.rb +13 -7
  16. data/app/controls/browse_models_control.rb +15 -26
  17. data/app/controls/cmsedit_control.rb +125 -0
  18. data/app/controls/dc_help_control.rb +13 -1
  19. data/app/controls/dc_page_control.rb +0 -1
  20. data/app/controls/dc_poll_result_control.rb +1 -1
  21. data/app/controls/dc_report.rb +1 -1
  22. data/app/controls/design_element_settings_control.rb +1 -1
  23. data/app/forms/all_options.yml +23 -7
  24. data/app/forms/cms_menu.yml +24 -24
  25. data/app/forms/dc_big_table.yml +0 -2
  26. data/app/forms/dc_big_table_value.yml +0 -2
  27. data/app/forms/dc_browse_fields.yml +13 -9
  28. data/app/forms/dc_design.yml +1 -2
  29. data/app/forms/dc_folder_permission.yml +0 -2
  30. data/app/forms/dc_help_1.yml +2 -1
  31. data/app/forms/dc_json_ld.yml +0 -3
  32. data/app/forms/dc_menu.yml +6 -12
  33. data/app/forms/dc_menu_item.yml +1 -3
  34. data/app/forms/dc_page.yml +1 -2
  35. data/app/forms/dc_policy.yml +2 -5
  36. data/app/forms/dc_poll.yml +10 -16
  37. data/app/forms/dc_poll_result_export.yml +1 -1
  38. data/app/forms/dc_seo.yml +1 -2
  39. data/app/forms/dc_simple_menu.yml +1 -2
  40. data/app/forms/dc_site.yml +5 -7
  41. data/app/helpers/cms_common_helper.rb +8 -6
  42. data/app/helpers/cms_edit_helper.rb +61 -53
  43. data/app/helpers/cms_helper.rb +78 -42
  44. data/app/helpers/cms_index_helper.rb +198 -137
  45. data/app/helpers/dc_application_helper.rb +65 -43
  46. data/app/models/concerns/dc_page_concern.rb +1 -1
  47. data/app/models/concerns/dc_site_concern.rb +9 -3
  48. data/app/models/dc_big_table.rb +2 -2
  49. data/app/models/dc_filter.rb +45 -37
  50. data/app/models/dc_json_ld.rb +1 -1
  51. data/app/models/dc_part.rb +19 -9
  52. data/app/models/dc_site.rb +0 -1
  53. data/app/models/dc_temp.rb +7 -0
  54. data/app/models/drgcms_form_fields/comment.rb +11 -2
  55. data/app/models/drgcms_form_fields/drgcms_field.rb +10 -4
  56. data/app/models/drgcms_form_fields/link_to.rb +1 -1
  57. data/app/models/drgcms_form_fields/multitext_autocomplete.rb +5 -5
  58. data/app/models/drgcms_form_fields/readonly.rb +3 -0
  59. data/app/models/drgcms_form_fields/select.rb +14 -14
  60. data/app/models/drgcms_form_fields/text_autocomplete.rb +19 -11
  61. data/app/renderers/dc_part_renderer.rb +1 -1
  62. data/app/renderers/dc_poll_renderer.rb +1 -1
  63. data/app/views/cmsedit/_edit_stuff.html.erb +12 -12
  64. data/app/views/cmsedit/_form.html.erb +3 -2
  65. data/app/views/cmsedit/_result.html.erb +21 -18
  66. data/app/views/cmsedit/login.html.erb +1 -1
  67. data/app/views/dc_common/paste_clipboard.html.erb +1 -1
  68. data/app/views/layouts/cms.html.erb +3 -5
  69. data/config/locales/drgcms_en.yml +5 -3
  70. data/config/locales/drgcms_sl.yml +5 -3
  71. data/config/locales/kaminari.yml +1 -1
  72. data/config/locales/models_sl.yml +1 -0
  73. data/drg_cms.gemspec +1 -1
  74. data/lib/drg_cms/version.rb +1 -1
  75. data/lib/drg_cms.rb +6 -12
  76. metadata +10 -5
  77. data/app/views/cmsedit/__remove_edit_stuff.js.erb +0 -6
  78. data/app/views/cmsedit/__show.html.erb +0 -21
@@ -159,7 +159,7 @@ $(function() {
159
159
  * record_name: will replace value of record[name] field on a form with supplied value
160
160
  *
161
161
  * msg_error: will display error message.
162
- * msg_warn: will display warning message.
162
+ * msg_warning: will display warning message.
163
163
  * msg_info: will display informational message.
164
164
  *
165
165
  * popup: will display popup message
@@ -207,7 +207,7 @@ process_json_result = function(json) {
207
207
  // select field
208
208
  } else if (field.is('select')) {
209
209
  // options for select field
210
- if (value && value.isArray) {
210
+ if (Array.isArray(value)) {
211
211
  field.empty();
212
212
  $.each(value, function(index, v) {
213
213
  field.append( new Option(v[0], v[1]) );
@@ -245,9 +245,20 @@ process_json_result = function(json) {
245
245
 
246
246
  /**** display popup message ****/
247
247
  case 'popup':
248
- $('#popup').html(value);
249
- $('#popup').bPopup({ speed: 650, transition: 'slideUp'});
250
- break;
248
+ if (selector == 'url') {
249
+ $('#popup').bPopup({ loadUrl: value,
250
+ transition: 'slideDown', transitionClose: 'slideDown', speed: 300,
251
+ opacity: 0, position: ['auto', 20],
252
+ closeClass: 'dc-link' });
253
+ }
254
+ else {
255
+ $('#popup').html(value);
256
+ $('#popup').bPopup( {
257
+ transition: 'slideDown', transitionClose: 'slideDown', speed: 300,
258
+ opacity: 0, position: ['auto', 20],
259
+ closeClass: 'dc-link' });
260
+ }
261
+ break;
251
262
 
252
263
  /**** update div ****/
253
264
  case '#div+':
@@ -273,6 +284,9 @@ process_json_result = function(json) {
273
284
  case 'url':
274
285
  window.location.href = value;
275
286
  break;
287
+ case 'parenturl':
288
+ parent.location.href = value;
289
+ break;
276
290
  case 'alert':
277
291
  alert(value);
278
292
  break;
@@ -326,10 +340,12 @@ function dc_reload_window() {
326
340
  /*******************************************************************
327
341
  * Will open popup window
328
342
  *******************************************************************/
329
- function popup_window(url, window_name, win, w, h) {
330
- let y = win.top.outerHeight / 2 + win.top.screenY - ( h / 2);
331
- let x = win.top.outerWidth / 2 + win.top.screenX - ( w / 2);
332
- return win.open(url, window_name, `toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=${w}, height=${h}, top=${y}, left=${x}`);
343
+ function popup_window(url, title, parent_win, w, h) {
344
+ let y = parent_win.top.outerHeight / 2 + parent_win.top.screenY - (h / 2);
345
+ let x = parent_win.top.outerWidth / 2 + parent_win.top.screenX - (w / 2);
346
+ let win = parent_win.open(url, 'dc_popup', `toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=${w}, height=${h}, top=${y}, left=${x}`);
347
+ win.document.title = title;
348
+ return win;
333
349
  }
334
350
 
335
351
  /*******************************************************************
@@ -385,7 +401,7 @@ process_parent_form_updates = function(element) {
385
401
  /*****************************************************************
386
402
  * Toggle show and hide div
387
403
  ******************************************************************/
388
- dc_toggle_div = function(div) {
404
+ dc_div_toggle = function(div) {
389
405
  if ($(div).is(":visible")) {
390
406
  $(div).slideUp();
391
407
  } else {
@@ -393,8 +409,55 @@ dc_toggle_div = function(div) {
393
409
  }
394
410
  };
395
411
 
412
+ /*****************************************************************
413
+ * Process simple ajax call
414
+ ******************************************************************/
415
+ simple_ajax_call = function(url) {
416
+ $.ajax({
417
+ url: url,
418
+ success: function(data) { process_json_result(data); }
419
+ });
420
+ };
421
+
422
+ /*****************************************************************
423
+ * Return value of the input field on a form
424
+ ******************************************************************/
425
+ function dc_field_get_value(field_name) {
426
+ field_name = field_name.replace('record_', '');
427
+ let field = $('[name="record[' + field_name + ']"]');
428
+ return field.val();
429
+ }
430
+
431
+ /*****************************************************************
432
+ * Will process data-fields attribute and add field values as parameters to url
433
+ ******************************************************************/
434
+ function dc_url_add_params(form, url) {
435
+ // check if data-fields attribute present
436
+ let fields = form.getAttribute("data-fields");
437
+ if (fields === null) return url;
438
+ // url might already contain ?
439
+ let form_parms = '?';
440
+ if (url.match(/\?/)) form_parms = '';
441
+
442
+ fields.split(',').forEach( function(field) {
443
+ let value = dc_field_get_value(field);
444
+ if (value) form_parms += '&' + field + '=' + value;
445
+ });
446
+ return url + form_parms;
447
+ }
448
+
396
449
  /*******************************************************************
397
- *
450
+ * Copy div text to clipboard
451
+ *******************************************************************/
452
+ function dc_copy_to_clipboard(div) {
453
+ let copyText = document.getElementById(div).innerText;
454
+ console.log(copyText);
455
+ /* Copy the text inside the text field */
456
+ navigator.clipboard.writeText(copyText);
457
+ }
458
+
459
+ /*******************************************************************
460
+ * Events start here
398
461
  *******************************************************************/
399
462
  $(document).ready( function() {
400
463
  /* This could be the way to focus on first input field on document open
@@ -457,7 +520,7 @@ $(document).ready( function() {
457
520
  * Popup CMS edit menu option clicked
458
521
  *******************************************************************/
459
522
  $('.drgcms_popmenu_item').on('click',function(e) {
460
- url = e.target.getAttribute("data-url");
523
+ let url = e.target.getAttribute("data-url");
461
524
  $('#iframe_cms').attr('src', url);
462
525
  // $('#iframe_cms').width(1000).height(1000);
463
526
  // scroll to top of page and hide menu
@@ -468,13 +531,22 @@ $(document).ready( function() {
468
531
  /*******************************************************************
469
532
  * Sort action clicked on cmsedit
470
533
  *******************************************************************/
471
- $('.drgcms_sort').change( function(e) {
534
+ $('.dc-sort-select').change( function(e) {
472
535
  let table = e.target.getAttribute("data-table");
473
536
  let form = e.target.getAttribute("data-form");
474
537
  if (form === null) form = table;
475
538
  let sort = e.target.value;
476
- e.target.value = null;
477
- window.location.href = "/cmsedit?sort=" + sort + "&table=" + table + "&form_name=" + form;
539
+ // e.target.value = null;
540
+ let url = "/cmsedit/run?control=cmsedit.sort&sort=" + sort + "&table=" + table + "&form_name=" + form;
541
+ simple_ajax_call(url);
542
+ });
543
+
544
+ /*******************************************************************
545
+ * Click on field name in result header perform sort action
546
+ *******************************************************************/
547
+ $('.dc-result-header span').on('click',function(e) {
548
+ let url = e.target.getAttribute("data-url");
549
+ simple_ajax_call(url);
478
550
  });
479
551
 
480
552
  /*******************************************************************
@@ -574,7 +646,7 @@ $(document).ready( function() {
574
646
  $('.iframe_embedded').on('load', function() {
575
647
  let embedded_height = this.contentWindow.document.body.offsetHeight;
576
648
  // workaround. It gets tricky when embedded field is on tab
577
- if (embedded_height == 0) embedded_height = 500;
649
+ if (embedded_height == 0) embedded_height = 50;
578
650
  this.style.height = (embedded_height + 30) + 'px';
579
651
  // resize parent iframe window too
580
652
  let parentWindow = this.contentWindow.parent;
@@ -634,9 +706,21 @@ $(document).ready( function() {
634
706
  success: function(data) {
635
707
  process_json_result(data);
636
708
  $('.dc-spinner').hide();
709
+ },
710
+ error: function (request, status, error) {
711
+ $('.dc-spinner').css('color','red');
712
+ alert(request.responseText);
637
713
  }
638
714
  });
639
715
  });
716
+
717
+ /*******************************************************************
718
+ * Click on filter off
719
+ *******************************************************************/
720
+ $('.mi-search_off').on('click', function(e) {
721
+ let url = $(this).parents('.dc-filter').attr("data-url");
722
+ if (url.length > 5) simple_ajax_call(url);
723
+ });
640
724
 
641
725
  /*******************************************************************
642
726
  * Process action submit button click.
@@ -657,24 +741,44 @@ $(document).ready( function() {
657
741
  form.setAttribute('action', url);
658
742
  form.setAttribute('method', "post");
659
743
  form.submit();
660
- });
661
-
662
- /*******************************************************************
663
- will open a new window with URL specified.
664
- ********************************************************************/
665
- $('.dc-window-open').on('click', function(e) {
666
- // confirmation if required
667
- if (confirmation_is_cancled(this)) {return false;}
668
-
669
- var url = this.getAttribute("data-url");
670
- var title = this.getAttribute("title");
671
- var w = 1000;
672
- var h = 800;
673
- var left = (screen.width/2)-(w/2);
674
- var top = (screen.height/2)-(h/2);
675
- var win = window.open(url, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width='+w+', height='+h+', top='+top+', left='+left);
744
+ });
745
+
746
+ /*******************************************************************
747
+ Will open a new window with URL specified.
748
+ ********************************************************************/
749
+ $('.dc-window-open').on('click', function(e) {
750
+ // confirmation if required
751
+ if (confirmation_is_cancled(this)) return false;
752
+
753
+ let url = this.getAttribute("data-url");
754
+ let title = this.getAttribute("title");
755
+ let w = this.getAttribute("data-x") || 1000;
756
+ let h = this.getAttribute("data-y") || 800;
757
+
758
+ url = dc_url_add_params(this, url)
759
+ let win = popup_window(url, title, window, w, h);
676
760
  win.focus();
677
- });
761
+ });
762
+
763
+ /*******************************************************************
764
+ Will open a new popup with URL specified.
765
+ ********************************************************************/
766
+ $('.dc-popup-open').on('click', function(e) {
767
+ // confirmation if required
768
+ if (confirmation_is_cancled(this)) return false;
769
+
770
+ let url = this.getAttribute("data-url");
771
+ let title = this.getAttribute("title");
772
+ let w = this.getAttribute("data-x") || 1000;
773
+ let h = this.getAttribute("data-y") || 800;
774
+
775
+ url = dc_url_add_params(this, url)
776
+ $('#popup').bPopup({ loadUrl: url,
777
+ transition: 'slideDown', transitionClose: 'slideDown', speed: 300,
778
+ opacity: 0, position: ['auto', 20],
779
+ closeClass: 'dc-link'
780
+ });
781
+ });
678
782
 
679
783
  /*******************************************************************
680
784
  * Animate button on click
@@ -690,20 +794,7 @@ $(document).ready( function() {
690
794
  $(this).toggleClass('dc-animate-button');
691
795
  });
692
796
  */
693
- /*******************************************************************
694
- * Animate button on click
695
- *******************************************************************/
696
- $('.dc-animate').mousedown( function() {
697
- $(this).toggleClass('dc-animate-button');
698
- });
699
-
700
- /*******************************************************************
701
- * Animate button on click
702
- *******************************************************************/
703
- $('.dc-animate').mouseup( function() {
704
- $(this).toggleClass('dc-animate-button');
705
- });
706
-
797
+
707
798
  /*******************************************************************
708
799
  * App menu option clicked
709
800
  *******************************************************************/
@@ -724,28 +815,40 @@ $(document).ready( function() {
724
815
  /*******************************************************************
725
816
  * Display spinner on link with spinner, submit link
726
817
  *******************************************************************/
727
- $('.dc-link-spinner').on('click', function(e) {
818
+ $('.dc-link.spin').on('click', function(e) {
728
819
  $('.dc-spinner').show();
729
820
  });
730
821
 
731
822
  $('.dc-link-submit').on('click', function(e) {
732
823
  $('.dc-spinner').show();
733
- });
824
+ });
825
+
826
+ /*******************************************************************
827
+ * Hide spinner when validation error occured
828
+ *******************************************************************/
829
+ $(':input').on("invalid", function(event) {
830
+ $('.dc-spinner').hide();
831
+ });
734
832
 
735
833
  /*******************************************************************
736
834
  * Add button clicked while in edit. Create window dialog for adding new record
737
835
  * into required table. This is helper scenario, when user is selecting
738
836
  * data from with text_autocomplete and data doesn't exist in belongs_to table.
739
837
  *******************************************************************/
740
- $('.in-edit-add').on('click', function(e) {
741
- let url = '/cmsedit/new?window_close=0&table=' + this.getAttribute("data-table");
838
+ $('.in-edit-add').on('click', function(e) {
839
+ let id = this.getAttribute("data-id");
840
+ let table = this.getAttribute("data-table");
841
+ let url = '/cmsedit/new?window_close=0&table=' + table;
842
+ if (id) {
843
+ url = '/cmsedit/' + id + '/edit?window_close=0&table=' + table;
844
+ }
742
845
  let w = popup_window(url, '', window, 1000, 800);
743
846
  w.focus();
744
847
  });
745
848
 
746
849
  /**********************************************************************
747
850
  * When filter_field (field name) is selected on filter subform this routine finds
748
- * and displays apropriate span with input field.
851
+ * and displays appropriate span with input field.
749
852
  **********************************************************************/
750
853
  $('#filter_field').on('change', function() {
751
854
  if (this.value.length > 0) {
@@ -883,11 +986,10 @@ $(document).ready( function() {
883
986
  *******************************************************************/
884
987
  $('#_record__filter_field').keydown( function(e) {
885
988
  if (e.which == '13' || e.which == '9') {
886
- var url = $(this).parents('span').attr("data-url");
989
+ let url = $(this).parents('span').attr("data-url");
887
990
  url = url + "&filter_value=" + this.value;
888
- location.href = url;
889
- return false;
890
- }
991
+ simple_ajax_call(url);
992
+ };
891
993
  });
892
994
 
893
995
  /*******************************************************************
@@ -905,7 +1007,7 @@ $(document).ready( function() {
905
1007
  value = field.val();
906
1008
  }
907
1009
  url = url + "&filter_value=" + value;
908
- location.href = url;
1010
+ simple_ajax_call(url);
909
1011
  });
910
1012
 
911
1013
  /*******************************************************************
@@ -913,47 +1015,77 @@ $(document).ready( function() {
913
1015
  *******************************************************************/
914
1016
  $('#open_drgcms_filter').on('click', function(e) {
915
1017
  $('#drgcms_filter').bPopup({
916
- speed: 650,
917
- transition: 'slideDown'
918
- });
1018
+ transition: 'slideDown', transitionClose: 'slideDown', speed: 300,
1019
+ opacity: 0, position: ['auto', 20],
1020
+ closeClass: 'dc-link' });
919
1021
  });
920
1022
 
921
1023
  /*******************************************************************
922
1024
  * Click on preview selected image
923
1025
  *******************************************************************/
924
1026
  $('.dc-image-preview').on('click', function(e) {
925
- // var img = $('.img1 img').attr('src');
926
- var img = $(this).children(":first").attr('src');
927
- $('#dc-image-preview').bPopup({
928
- content:'image', //'ajax', 'iframe' or 'image'
929
- contentContainer:'#dc-image-preview',
930
- loadUrl: img
931
- });
1027
+ let img = $(this).children(":first").attr('src');
1028
+ $('#dc-image-preview').bPopup({
1029
+ content: 'image', //'ajax', 'iframe' or 'image'
1030
+ contentContainer: '#dc-image-preview',
1031
+ loadUrl: img,
1032
+ opacity: 0
1033
+ });
932
1034
  });
933
1035
 
934
1036
  /*******************************************************************
935
- *
1037
+ * Set new filter
936
1038
  *******************************************************************/
937
- $('.drgcms_popup_submit').on('click', function(e) {
938
- //e.preventDefault();
939
- url = $(this).attr( 'data-url' );
940
- field = $('select#filter_field1').val();
941
- oper = $('select#filter_oper').val();
942
- location.href = url + '&filter_field=' + field + '&filter_oper=' + oper
943
- // Still opening in new window
944
- // iframe = parent.document.getElementsByTagName("iframe")[0].getAttribute("id");
945
- // loc = url + '&filter_field=' + field + '&filter_oper=' + oper
946
- // $('#'+iframe).attr('src', loc);
947
- // parent.document.getElementById(iframe).src = loc
1039
+ $('.dc-filter-set').on('click', function(e) {
1040
+ let url = $(this).attr( 'data-url' );
1041
+ let field = $('select#filter_field1').val();
1042
+ let operation = $('select#filter_oper').val();
1043
+ url = url + '&filter_field=' + field + '&filter_oper=' + operation
1044
+ simple_ajax_call(url);
948
1045
  });
949
-
950
- /*******************************************************************
951
- * Toggle one cmsedit menu level
952
- *******************************************************************/
953
- $('.cmsedit-top-level-menu').on('click', function(e) {
954
- $(e.target).find('ul').toggle('fast');
1046
+
1047
+ /*******************************************************************
1048
+ * Toggle one cmsedit menu level
1049
+ *******************************************************************/
1050
+ $('.cmsedit-top-level-menu div').on('click', function(e) {
1051
+ $(e.target).siblings('ul').toggle('fast');
1052
+ $(e.target).toggleClass('expanded');
1053
+ });
1054
+
1055
+ /*******************************************************************
1056
+ * Toggle result set record menu
1057
+ *
1058
+ * This and additional two event hadlers provide expected behavior of submenus popup and close.
1059
+ *******************************************************************/
1060
+ $('.dc-result-submenu .mi-more_vert').on('click', function(e) {
1061
+ let ul = $(e.target).siblings('ul');
1062
+ // hide last selected menu if not the same
1063
+ if (typeof dc_last_menu_selected !== 'undefined') { dc_last_menu_selected.hide(); }
1064
+ // if menu is past the bottom fix it to bottom
1065
+ let menu_bottom = ul.height() + ul.parent().position().top + 20;
1066
+ if (menu_bottom > $(document).height()) ul.css('bottom', 0);
1067
+ ul.show();
1068
+ dc_last_menu_selected = ul;
955
1069
  });
956
-
1070
+
1071
+ /*******************************************************************
1072
+ * Result record menu has lost focus. Hide menu.
1073
+ *******************************************************************/
1074
+ $('.dc-result-submenu ul').hover(function(e) {
1075
+ },
1076
+ function(e) {
1077
+ dc_last_menu_selected.hide();
1078
+ dc_last_menu_selected = undefined;
1079
+ });
1080
+
1081
+ /*******************************************************************
1082
+ * Result set record menu is left open if action is canceled. Ex. delete confirm. This will hide menu.
1083
+ *******************************************************************/
1084
+ $('.dc-result-submenu ul li').on('click', function(e) {
1085
+ console.log('ups');
1086
+ if (typeof dc_last_menu_selected !== 'undefined') dc_last_menu_selected.hide();
1087
+ });
1088
+
957
1089
  /*******************************************************************
958
1090
  * Resize result table columns. For now an idea.
959
1091
  *******************************************************************/
@@ -1085,14 +1217,14 @@ $(document).ready( function() {
1085
1217
  *******************************************************************/
1086
1218
  $('.dc-result-header .th i').hover( function() {
1087
1219
  old_sort_icon = '';
1088
- // save old sort icon and replace it with filter icon
1220
+ // save old sort icon and replace it with filter icon
1089
1221
  $.each( $(this).attr("class").split(/\s+/),
1090
1222
  function(index, item) { if (item.match('sort')) { old_sort_icon = item}; }
1091
1223
  );
1092
- $(this).removeClass(old_sort_icon).addClass('fa-filter');
1093
- // bring back old sort icon
1094
- }, function(){
1095
- $(this).removeClass('fa-filter').addClass(old_sort_icon);
1224
+ $(this).removeClass(old_sort_icon).addClass('mi-ads_click');
1225
+ // bring back old sort icon
1226
+ }, function() {
1227
+ $(this).removeClass('mi-ads_click').addClass(old_sort_icon);
1096
1228
  });
1097
1229
 
1098
1230
  /*******************************************************************
@@ -1100,6 +1232,8 @@ $(document).ready( function() {
1100
1232
  *******************************************************************/
1101
1233
  $('.dc-result-header .th i').click( function(e) {
1102
1234
  e.preventDefault();
1235
+ if ($(this).hasClass('no-filter')) return;
1236
+
1103
1237
  // additional click will close dialog when visible
1104
1238
  if ($('.filter-popup').is(':visible')) {
1105
1239
  $('.filter-popup').hide();
@@ -1110,7 +1244,7 @@ $(document).ready( function() {
1110
1244
  let field_name = header.attr("data-name");
1111
1245
  $('.filter-popup').attr('data-name', field_name);
1112
1246
  // change popup position and show
1113
- $('.filter-popup').css({'top':e.pageY+5,'left':e.pageX, 'position':'absolute'});
1247
+ $('.filter-popup').css({'top': e.pageY + 5, 'left': e.pageX, 'position': 'absolute'});
1114
1248
  $('.filter-popup').show();
1115
1249
  });
1116
1250
 
@@ -1125,7 +1259,7 @@ $(document).ready( function() {
1125
1259
  let field_name = parent.data("name");
1126
1260
 
1127
1261
  url = url + '&filter_field=' + field_name + '&filter_oper=' + operator;
1128
- window.location.href = url;
1262
+ simple_ajax_call(url);
1129
1263
  });
1130
1264
 
1131
1265
  /*****************************************************************
@@ -1133,14 +1267,14 @@ $(document).ready( function() {
1133
1267
  ******************************************************************/
1134
1268
  $(".dc-handle").click(function() {
1135
1269
  let div = this.getAttribute("data-div");
1136
- dc_toggle_div(div);
1270
+ dc_div_toggle(div);
1137
1271
  });
1138
1272
 
1139
1273
  /*******************************************************************
1140
1274
  * Show-Hide CMS menu on hamburger click
1141
1275
  *******************************************************************/
1142
1276
  $('#menu-hamburger').on('click', function(e) {
1143
- $('.cmsedit-container #menu').toggleClass('visible');
1277
+ $('.cmsedit-container #cms-menu').toggleClass('visible');
1144
1278
  });
1145
1279
 
1146
1280
  });