diff --git a/assets/components/minishop2/css/mgr/main.css b/assets/components/minishop2/css/mgr/main.css index fd24f19c8..1088055b9 100644 --- a/assets/components/minishop2/css/mgr/main.css +++ b/assets/components/minishop2/css/mgr/main.css @@ -284,8 +284,8 @@ a.x-menu-item .x-menu-item-text .icon { } #minishop2-orders-info { - height: 95px; - padding: 10px; + height: 108px; + padding: 25px 10px; text-align: center; diff --git a/assets/components/minishop2/js/mgr/orders/orders.form.js b/assets/components/minishop2/js/mgr/orders/orders.form.js index 085e06c10..e7d3fa100 100644 --- a/assets/components/minishop2/js/mgr/orders/orders.form.js +++ b/assets/components/minishop2/js/mgr/orders/orders.form.js @@ -19,61 +19,117 @@ miniShop2.panel.OrdersForm = function (config) { miniShop2.panel.OrdersForm.superclass.constructor.call(this, config); }; Ext.extend(miniShop2.panel.OrdersForm, MODx.FormPanel, { - grid: null, - getFields: function (config) { return [{ layout: 'column', items: [{ - columnWidth: .308, - layout: 'form', - defaults: {anchor: '100%', hideLabel: true}, - items: this.getLeftFields(config), - }, { - columnWidth: .37, + columnWidth: .320, layout: 'form', defaults: {anchor: '100%', hideLabel: true}, - items: this.getCenterFields(config), - }, { - columnWidth: .322, + items: this.getStatisticFields(), + },{ + columnWidth: .680, layout: 'form', defaults: {anchor: '100%', hideLabel: true}, - items: this.getRightFields(config), + items: this.getFilterFields(config), }], }]; }, - - getLeftFields: function (config) { + getFilterFields: function (config) { + return [{ + layout: 'column', + items: [{ + columnWidth: .5, + layout: 'form', + defaults: {anchor: '100%', hideLabel: true}, + items: this.getFilterLeftFields(config), + },{ + columnWidth: .5, + layout: 'form', + defaults: {anchor: '100%', hideLabel: true}, + items: this.getFilterRightFields(config), + }] + }, { + xtype: 'textfield', + id: config.id + '-search', + emptyText: _('ms2_orders_form_search'), + name: 'query', + }] + }, + getFilterLeftFields: function (config) { return [{ - xtype: 'datefield', - id: config.id + '-begin', - emptyText: _('ms2_orders_form_begin'), - name: 'date_start', - format: MODx.config['manager_date_format'] || 'Y-m-d', - startDay: +MODx.config['manager_week_start'] || 0, + layout: 'column', + items: [{ + columnWidth: .5, + layout: 'form', + defaults: {anchor: '100%', hideLabel: true}, + items: [{ + xtype: 'datefield', + id: config.id + '-begin', + emptyText: _('ms2_orders_form_begin'), + name: 'date_start', + format: MODx.config['manager_date_format'] || 'Y-m-d', + startDay: +MODx.config['manager_week_start'] || 0, + listeners: { + select: { + fn: function () { + this.fireEvent('change'); + }, scope: this + }, + }, + }], + },{ + columnWidth: .5, + layout: 'form', + defaults: {anchor: '100%', hideLabel: true}, + items: [{ + xtype: 'datefield', + id: config.id + '-end', + emptyText: _('ms2_orders_form_end'), + name: 'date_end', + format: MODx.config['manager_date_format'] || 'Y-m-d', + startDay: +MODx.config['manager_week_start'] || 0, + listeners: { + select: { + fn: function () { + this.fireEvent('change'); + }, scope: this + }, + }, + }], + }] + }, { + xtype: 'minishop2-combo-user', + id: config.id + '-user', + emptyText: _('ms2_orders_form_customer'), + name: 'customer', + allowBlank: true, listeners: { select: { fn: function () { - this.fireEvent('change'); + this.fireEvent('change') }, scope: this - }, - }, + } + } }, { - xtype: 'datefield', - id: config.id + '-end', - emptyText: _('ms2_orders_form_end'), - name: 'date_end', - format: MODx.config['manager_date_format'] || 'Y-m-d', - startDay: +MODx.config['manager_week_start'] || 0, + xtype: 'minishop2-combo-context', + id: config.id + '-context', + emptyText: _('ms2_orders_form_context'), + name: 'context', + addall: true, listeners: { select: { fn: function () { - this.fireEvent('change'); + this.fireEvent('change') }, scope: this - }, - }, - }, { + } + } + }]; + }, + + getFilterRightFields: function (config) { + return [{ xtype: 'minishop2-combo-status', id: config.id + '-status', emptyText: _('ms2_orders_form_status'), @@ -86,10 +142,36 @@ Ext.extend(miniShop2.panel.OrdersForm, MODx.FormPanel, { }, scope: this } } + }, { + xtype: 'minishop2-combo-delivery', + id: config.id + '-delivery', + emptyText: _('ms2_orders_form_delivery'), + name: 'delivery', + addall: true, + listeners: { + select: { + fn: function () { + this.fireEvent('change') + }, scope: this + } + } + }, { + xtype: 'minishop2-combo-payment', + id: config.id + '-payment', + emptyText: _('ms2_orders_form_payment'), + name: 'payment', + addall: true, + listeners: { + select: { + fn: function () { + this.fireEvent('change') + }, scope: this + } + } }]; }, - getCenterFields: function () { + getStatisticFields: function () { return [{ xtype: 'displayfield', id: 'minishop2-orders-info', @@ -113,41 +195,6 @@ Ext.extend(miniShop2.panel.OrdersForm, MODx.FormPanel, { }]; }, - getRightFields: function (config) { - return [{ - xtype: 'textfield', - id: config.id + '-search', - emptyText: _('ms2_orders_form_search'), - name: 'query', - }, { - xtype: 'minishop2-combo-user', - id: config.id + '-user', - emptyText: _('ms2_orders_form_customer'), - name: 'customer', - allowBlank: true, - listeners: { - select: { - fn: function () { - this.fireEvent('change') - }, scope: this - } - } - }, { - xtype: 'minishop2-combo-context', - id: config.id + '-context', - emptyText: _('ms2_orders_form_context'), - name: 'context', - allowBlank: true, - listeners: { - select: { - fn: function () { - this.fireEvent('change') - }, scope: this - } - } - }]; - }, - getListeners: function () { return { beforerender: function () { @@ -298,7 +345,6 @@ Ext.extend(miniShop2.panel.OrdersForm, MODx.FormPanel, { } } }, - focusFirstField: function () { }, diff --git a/core/components/minishop2/lexicon/be/manager.inc.php b/core/components/minishop2/lexicon/be/manager.inc.php index 62c39c917..4559267c7 100644 --- a/core/components/minishop2/lexicon/be/manager.inc.php +++ b/core/components/minishop2/lexicon/be/manager.inc.php @@ -120,6 +120,8 @@ $_lang['ms2_orders_form_selected_num'] = 'Выбрана заказаў'; $_lang['ms2_orders_form_selected_sum'] = 'на суму, руб.'; $_lang['ms2_orders_form_status'] = 'Фільтр па статусу'; +$_lang['ms2_orders_form_delivery'] = 'Фільтр па дастаўкі'; +$_lang['ms2_orders_form_payment'] = 'Фільтр па аплаце'; $_lang['ms2_orders_form_submit'] = 'Адправіць'; $_lang['ms2_orders_selected_status'] = 'Змяніць статус'; $_lang['ms2_phone'] = 'Тэлефон'; diff --git a/core/components/minishop2/lexicon/de/manager.inc.php b/core/components/minishop2/lexicon/de/manager.inc.php index 7b2b5fa64..e37249572 100644 --- a/core/components/minishop2/lexicon/de/manager.inc.php +++ b/core/components/minishop2/lexicon/de/manager.inc.php @@ -120,6 +120,8 @@ $_lang['ms2_orders_form_selected_num'] = 'Выбрано заказов'; $_lang['ms2_orders_form_selected_sum'] = 'на сумму, руб.'; $_lang['ms2_orders_form_status'] = 'Фильтр по статусу'; +$_lang['ms2_orders_form_delivery'] = 'Фильтр по доставке'; +$_lang['ms2_orders_form_payment'] = 'Фильтр по оплате'; $_lang['ms2_orders_form_submit'] = 'Отправить'; $_lang['ms2_orders_selected_status'] = 'Status geändert'; $_lang['ms2_phone'] = 'Telefon'; diff --git a/core/components/minishop2/lexicon/el/manager.inc.php b/core/components/minishop2/lexicon/el/manager.inc.php index a5c33a941..f27930587 100644 --- a/core/components/minishop2/lexicon/el/manager.inc.php +++ b/core/components/minishop2/lexicon/el/manager.inc.php @@ -120,6 +120,8 @@ $_lang['ms2_orders_form_selected_num'] = 'Выбрано заказов'; $_lang['ms2_orders_form_selected_sum'] = 'на сумму, руб.'; $_lang['ms2_orders_form_status'] = 'Фильтр по статусу'; +$_lang['ms2_orders_form_delivery'] = 'Фильтр по доставке'; +$_lang['ms2_orders_form_payment'] = 'Фильтр по оплате'; $_lang['ms2_orders_form_submit'] = 'Отправить'; $_lang['ms2_orders_selected_status'] = 'Сменить статус'; $_lang['ms2_phone'] = 'Τηλέφωνο'; diff --git a/core/components/minishop2/lexicon/en/manager.inc.php b/core/components/minishop2/lexicon/en/manager.inc.php index 1803cea75..3b9dae856 100644 --- a/core/components/minishop2/lexicon/en/manager.inc.php +++ b/core/components/minishop2/lexicon/en/manager.inc.php @@ -120,6 +120,8 @@ $_lang['ms2_orders_form_selected_num'] = 'Selected orders'; $_lang['ms2_orders_form_selected_sum'] = 'for the sum, $'; $_lang['ms2_orders_form_status'] = 'Filter by status'; +$_lang['ms2_orders_form_delivery'] = 'Filter by delivery'; +$_lang['ms2_orders_form_payment'] = 'Filter by payment'; $_lang['ms2_orders_form_submit'] = 'Submit'; $_lang['ms2_orders_selected_status'] = 'Change status of selected orders'; $_lang['ms2_phone'] = 'Phone'; diff --git a/core/components/minishop2/lexicon/fr/manager.inc.php b/core/components/minishop2/lexicon/fr/manager.inc.php index f3787f7b1..18cd0e1d2 100644 --- a/core/components/minishop2/lexicon/fr/manager.inc.php +++ b/core/components/minishop2/lexicon/fr/manager.inc.php @@ -120,6 +120,8 @@ $_lang['ms2_orders_form_selected_num'] = 'Выбрано заказов'; $_lang['ms2_orders_form_selected_sum'] = 'на сумму, руб.'; $_lang['ms2_orders_form_status'] = 'Filtrer par l\'état'; +$_lang['ms2_orders_form_delivery'] = 'Filtrer par la livraison'; +$_lang['ms2_orders_form_payment'] = 'Filtrer par le paiement'; $_lang['ms2_orders_form_submit'] = 'Отправить'; $_lang['ms2_orders_selected_status'] = 'Changer l\'état de la commande sélectionnée'; $_lang['ms2_phone'] = 'Téléphone'; diff --git a/core/components/minishop2/lexicon/it/manager.inc.php b/core/components/minishop2/lexicon/it/manager.inc.php index 8742ba900..0d54295d0 100644 --- a/core/components/minishop2/lexicon/it/manager.inc.php +++ b/core/components/minishop2/lexicon/it/manager.inc.php @@ -120,6 +120,8 @@ $_lang['ms2_orders_form_selected_num'] = 'Selected orders'; $_lang['ms2_orders_form_selected_sum'] = 'for the sum, $'; $_lang['ms2_orders_form_status'] = 'Filter by status'; +$_lang['ms2_orders_form_delivery'] = 'Filter by delivery'; +$_lang['ms2_orders_form_payment'] = 'Filter by payment'; $_lang['ms2_orders_form_submit'] = 'Submit'; $_lang['ms2_orders_selected_status'] = 'Keisti pasirinktų užsakymų būseną'; $_lang['ms2_phone'] = 'Telefonas'; diff --git a/core/components/minishop2/lexicon/lt/manager.inc.php b/core/components/minishop2/lexicon/lt/manager.inc.php index b2af33497..515015d20 100644 --- a/core/components/minishop2/lexicon/lt/manager.inc.php +++ b/core/components/minishop2/lexicon/lt/manager.inc.php @@ -120,6 +120,8 @@ $_lang['ms2_orders_form_selected_num'] = 'Выбрано заказов'; $_lang['ms2_orders_form_selected_sum'] = 'на сумму, руб.'; $_lang['ms2_orders_form_status'] = 'Фильтр по статусу'; +$_lang['ms2_orders_form_delivery'] = 'Фильтр по доставке'; +$_lang['ms2_orders_form_payment'] = 'Фильтр по оплате'; $_lang['ms2_orders_form_submit'] = 'Отправить'; $_lang['ms2_orders_selected_status'] = 'Keisti pasirinktų užsakymų būseną'; $_lang['ms2_phone'] = 'Telefonas'; diff --git a/core/components/minishop2/lexicon/nl/manager.inc.php b/core/components/minishop2/lexicon/nl/manager.inc.php index 2404377a5..5e4dfe9b9 100755 --- a/core/components/minishop2/lexicon/nl/manager.inc.php +++ b/core/components/minishop2/lexicon/nl/manager.inc.php @@ -120,6 +120,8 @@ $_lang['ms2_orders_form_selected_num'] = 'Geselecteerde orders'; $_lang['ms2_orders_form_selected_sum'] = 'Voor de som van, €'; $_lang['ms2_orders_form_status'] = 'Filter op status'; +$_lang['ms2_orders_form_delivery'] = 'Filter op verzending'; +$_lang['ms2_orders_form_payment'] = 'Filter op betaling'; $_lang['ms2_orders_form_submit'] = 'Verstuur'; $_lang['ms2_orders_selected_status'] = 'Verander status van geselecteerde orders'; $_lang['ms2_phone'] = 'Telefoonnummer'; diff --git a/core/components/minishop2/lexicon/ro/manager.inc.php b/core/components/minishop2/lexicon/ro/manager.inc.php index d479b74e8..0778ff7b9 100644 --- a/core/components/minishop2/lexicon/ro/manager.inc.php +++ b/core/components/minishop2/lexicon/ro/manager.inc.php @@ -120,6 +120,8 @@ $_lang['ms2_orders_form_selected_num'] = 'Au fost selectate comenzi'; $_lang['ms2_orders_form_selected_sum'] = 'în sumă, RUB.'; $_lang['ms2_orders_form_status'] = 'Filtru după statut'; +$_lang['ms2_orders_form_delivery'] = 'Filtru după livrare'; +$_lang['ms2_orders_form_payment'] = 'Filtru după plata'; $_lang['ms2_orders_form_submit'] = 'Trimiteți'; $_lang['ms2_orders_selected_status'] = 'Schimbarea statutului'; $_lang['ms2_phone'] = 'Telefon'; diff --git a/core/components/minishop2/lexicon/ru/manager.inc.php b/core/components/minishop2/lexicon/ru/manager.inc.php index 02fd60f18..8e188883e 100644 --- a/core/components/minishop2/lexicon/ru/manager.inc.php +++ b/core/components/minishop2/lexicon/ru/manager.inc.php @@ -120,6 +120,8 @@ $_lang['ms2_orders_form_selected_num'] = 'Выбрано заказов'; $_lang['ms2_orders_form_selected_sum'] = 'на сумму, руб.'; $_lang['ms2_orders_form_status'] = 'Фильтр по статусу'; +$_lang['ms2_orders_form_delivery'] = 'Фильтр по доставке'; +$_lang['ms2_orders_form_payment'] = 'Фильтр по оплате'; $_lang['ms2_orders_form_submit'] = 'Отправить'; $_lang['ms2_orders_selected_status'] = 'Сменить статус'; $_lang['ms2_phone'] = 'Телефон'; diff --git a/core/components/minishop2/lexicon/uk/manager.inc.php b/core/components/minishop2/lexicon/uk/manager.inc.php index 1e3031bb2..eb72c3fc5 100644 --- a/core/components/minishop2/lexicon/uk/manager.inc.php +++ b/core/components/minishop2/lexicon/uk/manager.inc.php @@ -120,6 +120,8 @@ $_lang['ms2_orders_form_selected_num'] = 'Вибрано замовлень'; $_lang['ms2_orders_form_selected_sum'] = 'на суму, грн.'; $_lang['ms2_orders_form_status'] = 'Фільтр по статусу'; +$_lang['ms2_orders_form_delivery'] = 'Фільтр по доставці'; +$_lang['ms2_orders_form_payment'] = 'Фільтр по оплаті'; $_lang['ms2_orders_form_submit'] = 'Відправити'; $_lang['ms2_orders_selected_status'] = 'Змінити статус'; $_lang['ms2_phone'] = 'Телефон'; diff --git a/core/components/minishop2/processors/mgr/orders/getlist.class.php b/core/components/minishop2/processors/mgr/orders/getlist.class.php index 51c65a5f4..f3384ad9c 100644 --- a/core/components/minishop2/processors/mgr/orders/getlist.class.php +++ b/core/components/minishop2/processors/mgr/orders/getlist.class.php @@ -65,6 +65,16 @@ public function prepareQueryBeforeCount(xPDOQuery $c) 'status' => $status, ]); } + if ($delivery = $this->getProperty('delivery')) { + $c->where([ + 'delivery' => $delivery, + ]); + } + if ($payment = $this->getProperty('payment')) { + $c->where([ + 'payment' => $payment, + ]); + } if ($customer = $this->getProperty('customer')) { $c->where([ 'user_id' => (int)$customer,