src/Cms/ModuleBundle/Resources/views/Content/includes/editor/scripts.html.twig line 1

Open in your IDE?
  1. <script type="text/javascript">
  2.     (function (window, document, $, undefined) {
  3.         window.editorActionHandler = function (action, clickCallback) {
  4.             var $frm = $('#frm' + action),
  5.                 $btnwrap = $('#btnwrap' + action),
  6.                 $data = $('#{{ dataForm.vars.id }}');
  7.             if (typeof clickCallback !== 'function') {
  8.                 clickCallback = (function (action) {
  9.                     return function (e) {
  10.                         var $modal = $('#modal' + action),
  11.                             $frm = $('#frm' + action);
  12.                         if ($modal.length > 0) {
  13.                             $modal.modal({});
  14.                         } else {
  15.                             $frm.submit();
  16.                         }
  17.                         e.preventDefault();
  18.                     }
  19.                 })(action);
  20.             }
  21.             $btnwrap.on('click', 'a', clickCallback);
  22.             $frm.submit(function() {
  23.                 var data = $data.serializeObject();
  24.                 // HACK: handle ace editors
  25.                 $data.find('.ace_editor').each(function (index, elem) {
  26.                     var $elem = $(elem),
  27.                         editor = ace.edit(elem),
  28.                         val = editor.getValue(),
  29.                         name = $elem.parent().find('> input').attr('name');
  30.                     data[name] = val;
  31.                 });
  32.                 // HACK: handle CKEditors
  33.                 $data.find('.cke').each(function (index, elem) {
  34.                     var $elem = $(elem);
  35.                     data[$elem.prev('textarea').attr('name')] = CKEDITOR.instances[$elem.attr('id').replace('cke_', '')].getData();
  36.                 });
  37.                 for (var key in data) {
  38.                     if (data.hasOwnProperty(key)) {
  39.                         if (data[key] instanceof Array) {
  40.                             for (var value in data[key]) {
  41.                                 if (data[key].hasOwnProperty(value)) {
  42.                                     $frm.append('<input type="hidden" name="' + key + '" value="' + htmlEscape(data[key][value]) + '" />');
  43.                                 }
  44.                             }
  45.                         } else {
  46.                             $frm.append('<input type="hidden" name="' + key + '" value="' + htmlEscape(data[key]) + '" />');
  47.                         }
  48.                     }
  49.                 }
  50.                 return true;
  51.             });
  52.         };
  53.     })(window, document, jQuery);
  54. </script>