From 24e5b884577da2fa8c172be6f17690d5feb064e6 Mon Sep 17 00:00:00 2001 From: truetamtam Date: Fri, 29 Aug 2014 22:58:22 +0400 Subject: [PATCH] Web interface. Stable. Add s2 to rules. #12 --- workbench/fintech-fab/actions-calc/README.md | 1 + .../src/controllers/ManageController.php | 1 - .../src/controllers/RuleController.php | 12 +++- .../src/views/calculator/_events.php | 58 +++++++++++++++++-- .../src/views/calculator/_rules.php | 22 ------- .../src/views/calculator/manage.php | 2 +- .../src/views/rule/create.blade.php | 10 ---- 7 files changed, 65 insertions(+), 41 deletions(-) delete mode 100644 workbench/fintech-fab/actions-calc/src/views/calculator/_rules.php diff --git a/workbench/fintech-fab/actions-calc/README.md b/workbench/fintech-fab/actions-calc/README.md index d407da46..9719ee45 100644 --- a/workbench/fintech-fab/actions-calc/README.md +++ b/workbench/fintech-fab/actions-calc/README.md @@ -6,6 +6,7 @@ ###data### data in: POST request +default route http://host.net/actions-calc - terminal_id - auth_sign diff --git a/workbench/fintech-fab/actions-calc/src/controllers/ManageController.php b/workbench/fintech-fab/actions-calc/src/controllers/ManageController.php index 11c953c5..b58b7217 100644 --- a/workbench/fintech-fab/actions-calc/src/controllers/ManageController.php +++ b/workbench/fintech-fab/actions-calc/src/controllers/ManageController.php @@ -24,7 +24,6 @@ public function manage() $content = View::make('ff-actions-calc::calculator.manage') ->nest('_events', 'ff-actions-calc::calculator._events', ['events' => $oTerminal->events]) - ->nest('_rules', 'ff-actions-calc::calculator._rules', ['rules' => $oTerminal->rules]) ->nest('_signals', 'ff-actions-calc::calculator._signals', ['signals' => $oTerminal->signals]); $this->layout->content = $content; diff --git a/workbench/fintech-fab/actions-calc/src/controllers/RuleController.php b/workbench/fintech-fab/actions-calc/src/controllers/RuleController.php index db4ab2ba..e099270e 100644 --- a/workbench/fintech-fab/actions-calc/src/controllers/RuleController.php +++ b/workbench/fintech-fab/actions-calc/src/controllers/RuleController.php @@ -14,6 +14,12 @@ class RuleController extends BaseController { + /** + * Create rule. + * On GET sending view. On POST creating rule. + * + * @return string + */ public function create() { if (Request::isMethod('GET')) { @@ -40,7 +46,11 @@ public function create() return json_encode(['status' => 'error', 'message' => 'Не удалось создать правило.']); } - return json_encode(['status' => 'success', 'message' => 'Новое правило создано.']); + return json_encode([ + 'status' => 'success', + 'message' => 'Новое правило создано.', + 'data' => ['count' => $oEvent->count('id')] + ]); } /** diff --git a/workbench/fintech-fab/actions-calc/src/views/calculator/_events.php b/workbench/fintech-fab/actions-calc/src/views/calculator/_events.php index dd6ee09d..243e22e7 100644 --- a/workbench/fintech-fab/actions-calc/src/views/calculator/_events.php +++ b/workbench/fintech-fab/actions-calc/src/views/calculator/_events.php @@ -366,6 +366,10 @@ function (oData) { $submit.closest('form').serialize(), function (oData) { if (oData.status == 'success') { + updRulesCountFromEvent(oData); + // finding rule_id passed to #modal-rule-create + var $ruleId = $('#modal-rule-create').find('input[name="event_id"]').val(); + updateEventRules($ruleId); $modalRuleCreate.foundation('reveal', 'close'); } else if (oData.status == 'error') { revealFormErrors($submit.closest('form'), oData.errors); @@ -455,6 +459,7 @@ function (oData) { $th.closest('form').serialize(), function (oData) { if (oData.status == 'success') { + updateEventRules($ruleId); $('#modal-rule-update').foundation('reveal', 'close'); } else if (oData.status == 'error') { revealFormErrors($th.closest('form'), oData.errors); @@ -463,6 +468,8 @@ function (oData) { 'json' ).always(function () { buttonWakeUp($th); + }).fail(function (xhr) { + alert(xhr.responseText); }); return false; @@ -482,7 +489,7 @@ function (oData) { function (oData) { if (oData.status == 'success') { // success // update event -> rules button counter - updateRulesCounter($th, oData); + updRulesCountFromRules($th, oData); console.log($('button.see-rules').data('rules-count')); // deleted, removing table records and opened rules, if exists $thisRow.fadeOut(); @@ -622,7 +629,7 @@ function (oData) { }; /** - * Update event table + * Update events table * * @returns {boolean} */ @@ -630,7 +637,6 @@ function updateEventsTable() { var $eventTableContainer = $('#events-table-container'); $.get('/actions-calc/manage/update-events-table', - {}, function (oData) { $eventTableContainer.html(oData); }, @@ -641,7 +647,32 @@ function (oData) { } /** - * Update table row + * Get event rules + * + * @param id + */ +function updateEventRules(id) { + $.post( + '/actions-calc/manage/get-event-rules', + {event_id: id}, + function (oData) { + var $eventsContainer = $('#events-table-container'); + var $eventRulesTable = $eventsContainer.find('tr[data-event-rules=' + id + ']'); + + if ($eventRulesTable !== undefined) { + $eventRulesTable.find('#event-rules-wrap').replaceWith(oData); + } + }, + 'html' + ).fail(function (xhr) { + alert(xhr.responseText); + }); + + return false; +} + +/** + * Update event name and event_sid on update * @param oData */ function updateRuleRow(oData) { @@ -749,12 +780,12 @@ function typeFromString(string) { } /** - * Update rules counter inside see-rules button + * Update rules counter inside see-rules button, from rules table * * @param $th * @param oData */ -function updateRulesCounter($th, oData) { +function updRulesCountFromRules($th, oData) { var $eventId = $th.closest('tr.event-rules-row').data('event-rules'); var $ruleRow = $('#events-rules').find('tr[data-id=' + $eventId + ']'); var $seeRules = $ruleRow.find('button.see-rules'); @@ -762,4 +793,19 @@ function updateRulesCounter($th, oData) { $seeRules.data('rules-count', oData.data.count); $seeRules.find('span').text(oData.data.count); } + +/** + * Update rules counter inside see-rules button, from event + * + * @param oData + */ +function updRulesCountFromEvent(oData) { + var $eventId = $('#modal-rule-create').find('input[name="event_id"]').val(); + var $ruleRow = $('#events-rules').find('tr[data-id=' + $eventId + ']'); + var $seeRules = $ruleRow.find('button.see-rules'); + + $seeRules.data('rules-count', oData.data.count); + $seeRules.find('span').text(oData.data.count); +} + \ No newline at end of file diff --git a/workbench/fintech-fab/actions-calc/src/views/calculator/_rules.php b/workbench/fintech-fab/actions-calc/src/views/calculator/_rules.php deleted file mode 100644 index 1dd22c0b..00000000 --- a/workbench/fintech-fab/actions-calc/src/views/calculator/_rules.php +++ /dev/null @@ -1,22 +0,0 @@ - - * - * @var FintechFab\ActionsCalc\Models\Rule[] $rules - */ -?> - - - - - - - - - - - - - \ No newline at end of file diff --git a/workbench/fintech-fab/actions-calc/src/views/calculator/manage.php b/workbench/fintech-fab/actions-calc/src/views/calculator/manage.php index 210b7920..b7cc036b 100644 --- a/workbench/fintech-fab/actions-calc/src/views/calculator/manage.php +++ b/workbench/fintech-fab/actions-calc/src/views/calculator/manage.php @@ -22,7 +22,7 @@
-
+
diff --git a/workbench/fintech-fab/actions-calc/src/views/rule/create.blade.php b/workbench/fintech-fab/actions-calc/src/views/rule/create.blade.php index 90d5ff23..1a7cecdf 100644 --- a/workbench/fintech-fab/actions-calc/src/views/rule/create.blade.php +++ b/workbench/fintech-fab/actions-calc/src/views/rule/create.blade.php @@ -27,16 +27,6 @@ {{ Form::hidden('event_id') }} -{{--
--}} - {{--
--}} - {{--
--}} - {{--{{ Form::label('signal_id', 'Сигнал') }}--}} - {{--{{ Form::input('text', 'signal_id') }}--}} - {{--Сигнал обязателен.--}} - {{--
--}} - {{--
--}} -{{--
--}} -
{{ Form::label('signal_id', 'Сигнал') }}