Files
prestashop/admin_o2w/themes/new-theme/public/sql_manager.bundle.js

1 line
2.3 KiB
JavaScript
Raw Normal View History

(()=>{"use strict";var n={428:n=>{n.exports=window.jQuery}},t={};var e=function e(o){var s=t[o];if(void 0!==s)return s.exports;var d=t[o]={exports:{}};return n[o](d,d.exports,e),d.exports}(428);class o{constructor(){const n=new window.prestashop.component.Grid("sql_request");n.addExtension(new window.prestashop.component.GridExtensions.ReloadListExtension),n.addExtension(new window.prestashop.component.GridExtensions.ExportToSqlManagerExtension),n.addExtension(new window.prestashop.component.GridExtensions.FiltersResetExtension),n.addExtension(new window.prestashop.component.GridExtensions.SortingExtension),n.addExtension(new window.prestashop.component.GridExtensions.LinkRowActionExtension),n.addExtension(new window.prestashop.component.GridExtensions.SubmitGridActionExtension),n.addExtension(new window.prestashop.component.GridExtensions.SubmitBulkActionExtension),n.addExtension(new window.prestashop.component.GridExtensions.SubmitRowActionExtension),n.addExtension(new window.prestashop.component.GridExtensions.BulkActionCheckboxExtension),n.addExtension(new window.prestashop.component.GridExtensions.FiltersSubmitButtonEnablerExtension),e(document).on("change",".js-db-tables-select",(()=>this.reloadDbTableColumns())),e(document).on("click",".js-add-db-table-to-query-btn",(n=>this.addDbTableToQuery(n))),e(document).on("click",".js-add-db-table-column-to-query-btn",(n=>{this.addDbTableColumnToQuery(n)}))}reloadDbTableColumns(){const n=e(".js-db-tables-select").find("option:selected"),t=e(".js-table-columns");e.ajax(n.data("table-columns-url")).then((n=>{e(".js-table-alert").addClass("d-none");const{columns:o}=n;t.removeClass("d-none"),t.find("tbody").empty(),o.forEach((n=>{const o=e("<tr>").append(e("<td>").html(n.name)).append(e("<td>").html(n.type)).append(e("<td>").addClass("text-right").append(e("<button>").addClass("btn btn-sm btn-outline-secondary js-add-db-table-column-to-query-btn").attr("data-column",n.name).html(t.data("action-btn"))));t.find("tbody").append(o)}))}))}addDbTableToQuery(n){const t=e(".js-db-tables-select").find("option:selected");0!==t.length?this.addToQuery(t.val()):alert(e(n.target).data("choose-table-message"))}addDbTableColumnToQuery(n){this.addToQuery(e(n.target).data("column"))}addToQuery(n){const t=e("#sql_request_sql");t.val(`${t.val()} ${n}`)}}e((()=>{new o})),window.sql_manager={}})();