var SuperSearchUi = (function ($) { 'use strict'; var me = { init: function () { me.registerEvents(); }, registerEvents: function () { $('#supersearch-fullindex-task-trigger').on('click', function (e) { e.preventDefault(); me.onClickExecuteFullIndexTask(); }); $('.button-provider-activate').on('click', function (e) { e.preventDefault(); var indexName = $(this).data('indexName'); me.onClickActivateProvider(indexName); }); $('.button-provider-deactivate').on('click', function (e) { e.preventDefault(); var indexName = $(this).data('indexName'); me.onClickDeactivateProvider(indexName); }); }, onClickExecuteFullIndexTask: function () { var $container = $('#supersearch-fullindex-task-wrapper'); $.ajax({ url: 'index.php?module=supersearch&action=settings', data: { cmd: 'run-full-index-task' }, method: 'post', dataType: 'json', beforeSend: function () { $container.loadingOverlay(); }, success: function () { var message = '
Such-Index wurde erfolgreich neu aufgebaut.
'; message += ''; message += 'Seite neuladen'; $container.html(message); }, error: function (jqXhr) { var errorMessage = 'Unbekannter Fehler'; if (jqXhr.hasOwnProperty('responseJSON') && jqXhr.responseJSON.hasOwnProperty('error')) { errorMessage = jqXhr.responseJSON.error; } var message = '
'; message += 'Fehler beim Aufbau des Such-Indexes: '; message += errorMessage; message += '
'; $container.html(message); }, complete: function () { $container.loadingOverlay('remove'); } }); }, /** * @param {string} indexName */ onClickActivateProvider: function (indexName) { $.ajax({ url: 'index.php?module=supersearch&action=settings', data: { cmd: 'activate-provider', index_name: indexName }, method: 'post', dataType: 'json', success: function () { window.location.reload(); }, error: function (jqXhr) { var errorMessage = 'Unbekannter Fehler'; if (jqXhr.hasOwnProperty('responseJSON') && jqXhr.responseJSON.hasOwnProperty('error')) { errorMessage = jqXhr.responseJSON.error; } alert('Fehler beim Aktivieren des Providers: ' + errorMessage); } }); }, /** * @param {string} indexName */ onClickDeactivateProvider: function (indexName) { $.ajax({ url: 'index.php?module=supersearch&action=settings', data: { cmd: 'deactivate-provider', index_name: indexName }, method: 'post', dataType: 'json', success: function () { window.location.reload(); }, error: function (jqXhr) { var errorMessage = 'Unbekannter Fehler'; if (jqXhr.hasOwnProperty('responseJSON') && jqXhr.responseJSON.hasOwnProperty('error')) { errorMessage = jqXhr.responseJSON.error; } alert('Fehler beim Deaktivieren des Providers: ' + errorMessage); } }); } }; return { init: me.init }; })(jQuery); $(document).ready(function () { SuperSearchUi.init(); });