From 0f630c80d9ee00a4af642ed070a8e433a7193123 Mon Sep 17 00:00:00 2001 From: Samuel Georges Date: Wed, 8 Apr 2015 07:44:26 +1000 Subject: [PATCH] Improve framework code to support $(this) in data attributes --- .../formwidgets/repeater/partials/_repeater_item.htm | 2 +- .../reportcontainer/partials/_new_widget_popup.htm | 2 +- modules/cms/controllers/index/_content_toolbar.htm | 2 +- modules/cms/controllers/index/_layout_toolbar.htm | 2 +- modules/cms/controllers/index/_page_toolbar.htm | 2 +- modules/cms/controllers/index/_partial_toolbar.htm | 2 +- modules/cms/widgets/assetlist/partials/_move_form.htm | 2 +- .../cms/widgets/assetlist/partials/_new_dir_form.htm | 2 +- modules/system/assets/js/framework.js | 10 ++++------ modules/system/controllers/eventlogs/_list_toolbar.htm | 2 +- .../system/controllers/requestlogs/_list_toolbar.htm | 2 +- 11 files changed, 14 insertions(+), 16 deletions(-) diff --git a/modules/backend/formwidgets/repeater/partials/_repeater_item.htm b/modules/backend/formwidgets/repeater/partials/_repeater_item.htm index be62b92c2..f0756618a 100644 --- a/modules/backend/formwidgets/repeater/partials/_repeater_item.htm +++ b/modules/backend/formwidgets/repeater/partials/_repeater_item.htm @@ -11,7 +11,7 @@ aria-label="Remove" data-request="getEventHandler('onRemoveItem') ?>" data-request-data="'index': ''" - data-request-success="$el.closest('.field-repeater-item').remove()" + data-request-success="$(this).closest('.field-repeater-item').remove()" data-request-confirm="Are you sure?"> diff --git a/modules/backend/widgets/reportcontainer/partials/_new_widget_popup.htm b/modules/backend/widgets/reportcontainer/partials/_new_widget_popup.htm index e27c7410b..5425b74c9 100644 --- a/modules/backend/widgets/reportcontainer/partials/_new_widget_popup.htm +++ b/modules/backend/widgets/reportcontainer/partials/_new_widget_popup.htm @@ -1,6 +1,6 @@ $this->getEventHandler('onAddWidget'), - 'data-request-success' => "\$el.trigger('close.oc.popup'); \$(window).trigger('oc.report-widget-added')", + 'data-request-success' => "\$(this).trigger('close.oc.popup'); \$(window).trigger('oc.report-widget-added')", 'data-popup-load-indicator' => 1 ]) ?> \ No newline at end of file diff --git a/modules/cms/controllers/index/_layout_toolbar.htm b/modules/cms/controllers/index/_layout_toolbar.htm index 64f64c188..dee70f55f 100644 --- a/modules/cms/controllers/index/_layout_toolbar.htm +++ b/modules/cms/controllers/index/_layout_toolbar.htm @@ -13,6 +13,6 @@ class="btn btn-default empty oc-icon-trash-o hide" data-request="onDelete" data-request-confirm="" - data-request-success="$.oc.cmsPage.updateTemplateList('layout'); $(element).trigger('close.oc.tab', [{force: true}])" + data-request-success="$.oc.cmsPage.updateTemplateList('layout'); $(this).trigger('close.oc.tab', [{force: true}])" data-control="delete-button"> \ No newline at end of file diff --git a/modules/cms/controllers/index/_page_toolbar.htm b/modules/cms/controllers/index/_page_toolbar.htm index 4deee99d4..b7ff59f8a 100644 --- a/modules/cms/controllers/index/_page_toolbar.htm +++ b/modules/cms/controllers/index/_page_toolbar.htm @@ -24,6 +24,6 @@ class="btn btn-default empty oc-icon-trash-o hide" data-request="onDelete" data-request-confirm="" - data-request-success="$.oc.cmsPage.updateTemplateList('page'); $(element).trigger('close.oc.tab', [{force: true}])" + data-request-success="$.oc.cmsPage.updateTemplateList('page'); $(this).trigger('close.oc.tab', [{force: true}])" data-control="delete-button"> \ No newline at end of file diff --git a/modules/cms/controllers/index/_partial_toolbar.htm b/modules/cms/controllers/index/_partial_toolbar.htm index ca66da4aa..8b193cce2 100644 --- a/modules/cms/controllers/index/_partial_toolbar.htm +++ b/modules/cms/controllers/index/_partial_toolbar.htm @@ -13,6 +13,6 @@ class="btn btn-default empty oc-icon-trash-o hide" data-request="onDelete" data-request-confirm="" - data-request-success="$.oc.cmsPage.updateTemplateList('partial'); $(element).trigger('close.oc.tab', [{force: true}])" + data-request-success="$.oc.cmsPage.updateTemplateList('partial'); $(this).trigger('close.oc.tab', [{force: true}])" data-control="delete-button"> \ No newline at end of file diff --git a/modules/cms/widgets/assetlist/partials/_move_form.htm b/modules/cms/widgets/assetlist/partials/_move_form.htm index 85e91d7b4..37cbcc77f 100644 --- a/modules/cms/widgets/assetlist/partials/_move_form.htm +++ b/modules/cms/widgets/assetlist/partials/_move_form.htm @@ -1,6 +1,6 @@ $this->getEventHandler('onMove'), - 'data-request-success'=>"\$el.trigger('close.oc.popup')", + 'data-request-success'=>"\$(this).trigger('close.oc.popup')", 'data-stripe-load-indicator'=>1, 'id'=>'asset-move-popup-form' ]) ?> diff --git a/modules/cms/widgets/assetlist/partials/_new_dir_form.htm b/modules/cms/widgets/assetlist/partials/_new_dir_form.htm index a3d4dbfa3..2cb794fc0 100644 --- a/modules/cms/widgets/assetlist/partials/_new_dir_form.htm +++ b/modules/cms/widgets/assetlist/partials/_new_dir_form.htm @@ -1,6 +1,6 @@ $this->getEventHandler('onNewDirectory'), - 'data-request-success'=>"\$el.trigger('close.oc.popup')", + 'data-request-success'=>"\$(this).trigger('close.oc.popup')", 'data-stripe-load-indicator'=>1, 'id'=>'asset-new-dir-popup-form' ]) ?> diff --git a/modules/system/assets/js/framework.js b/modules/system/assets/js/framework.js index a81704032..8f95fea27 100644 --- a/modules/system/assets/js/framework.js +++ b/modules/system/assets/js/framework.js @@ -95,7 +95,7 @@ if (window.jQuery === undefined) * Halt here if beforeUpdate() or data-request-before-update returns false */ if (this.options.beforeUpdate.apply(this, [data, textStatus, jqXHR]) === false) return - if (options.evalBeforeUpdate && eval('(function($el, context, data, textStatus, jqXHR) {'+options.evalBeforeUpdate+'}($el, context, data, textStatus, jqXHR))') === false) return + if (options.evalBeforeUpdate && eval('(function($el, context, data, textStatus, jqXHR) {'+options.evalBeforeUpdate+'}.call($el.get(0), $el, context, data, textStatus, jqXHR))') === false) return /* * Trigger 'ajaxBeforeUpdate' on the form, halt if event.preventDefault() is called @@ -111,7 +111,7 @@ if (window.jQuery === undefined) updatePromise.done(function(){ form.trigger('ajaxSuccess', [context, data, textStatus, jqXHR]) - options.evalSuccess && eval('(function($el, context, data, textStatus, jqXHR) {'+options.evalSuccess+'}($el, context, data, textStatus, jqXHR))') + options.evalSuccess && eval('(function($el, context, data, textStatus, jqXHR) {'+options.evalSuccess+'}.call($el.get(0), $el, context, data, textStatus, jqXHR))') }) return updatePromise @@ -158,7 +158,7 @@ if (window.jQuery === undefined) /* * Halt here if the data-request-error attribute returns false */ - if (options.evalError && eval('(function($el, context, textStatus, jqXHR) {'+options.evalError+'}($el, context, textStatus, jqXHR))') === false) + if (options.evalError && eval('(function($el, context, textStatus, jqXHR) {'+options.evalError+'}.call($el.get(0), $el, context, textStatus, jqXHR))') === false) return requestOptions.handleErrorMessage(errorMsg) @@ -167,10 +167,8 @@ if (window.jQuery === undefined) return updatePromise }, complete: function(data, textStatus, jqXHR) { - form.trigger('ajaxComplete', [context, data, textStatus, jqXHR]) - options.evalComplete && eval('(function($el, context, data, textStatus, jqXHR) {'+options.evalComplete+'}($el, context, data, textStatus, jqXHR))') - + options.evalComplete && eval('(function($el, context, data, textStatus, jqXHR) {'+options.evalComplete+'}.call($el.get(0), $el, context, data, textStatus, jqXHR))') }, /* diff --git a/modules/system/controllers/eventlogs/_list_toolbar.htm b/modules/system/controllers/eventlogs/_list_toolbar.htm index 25dd9defa..70706f4b1 100644 --- a/modules/system/controllers/eventlogs/_list_toolbar.htm +++ b/modules/system/controllers/eventlogs/_list_toolbar.htm @@ -17,7 +17,7 @@ data-trigger-action="enable" data-trigger=".control-list input[type=checkbox]" data-trigger-condition="checked" - data-request-success="$el.prop('disabled', false)" + data-request-success="$(this).prop('disabled', false)" data-stripe-load-indicator> diff --git a/modules/system/controllers/requestlogs/_list_toolbar.htm b/modules/system/controllers/requestlogs/_list_toolbar.htm index efd3e97ad..96e215b2f 100644 --- a/modules/system/controllers/requestlogs/_list_toolbar.htm +++ b/modules/system/controllers/requestlogs/_list_toolbar.htm @@ -17,7 +17,7 @@ data-trigger-action="enable" data-trigger=".control-list input[type=checkbox]" data-trigger-condition="checked" - data-request-success="$el.prop('disabled', false)" + data-request-success="$(this).prop('disabled', false)" data-stripe-load-indicator>