From ca5115d46591c84d013e125b028671119f9bc3aa Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Sun, 11 Dec 2016 19:06:20 -0500 Subject: [PATCH] feat: add ability to set the default submit button text --- src/Listener/ViewListener.php | 13 +++++++++++++ src/Template/Element/form/buttons.ctp | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/Listener/ViewListener.php b/src/Listener/ViewListener.php index 7f9accc3..8f7348f6 100644 --- a/src/Listener/ViewListener.php +++ b/src/Listener/ViewListener.php @@ -93,6 +93,7 @@ public function beforeRender(Event $event) $controller->set('bulkActions', $this->_getBulkActions()); $controller->set('viewblocks', $this->_getViewBlocks()); $controller->set('formUrl', $this->_getFormUrl()); + $controller->set('submitButtonText', $this->_getSubmitButtonText()); $controller->set('disableExtraButtons', $this->_getDisableExtraButtons()); $controller->set('extraButtonsBlacklist', $this->_getExtraButtonsBlacklist()); $controller->set('enableDirtyCheck', $this->_getEnableDirtyCheck()); @@ -577,6 +578,18 @@ protected function _getFormUrl() return $action->config('scaffold.form_action') ?: null; } + /** + * Get submit button text. + * + * @return bool + */ + protected function _getSubmitButtonText() + { + $action = $this->_action(); + + return $action->config('scaffold.submit_button_text') ?: __d('crud', 'Save'); + } + /** * Disable extra buttons. * diff --git a/src/Template/Element/form/buttons.ctp b/src/Template/Element/form/buttons.ctp index 3626192b..1e0cc39a 100644 --- a/src/Template/Element/form/buttons.ctp +++ b/src/Template/Element/form/buttons.ctp @@ -1,6 +1,6 @@
Form->button(__d('crud', 'Save'), ['class' => 'btn btn-primary', 'name' => '_save']); + echo $this->Form->button($submitButtonText, ['class' => 'btn btn-primary', 'name' => '_save']); if (empty($disableExtraButtons)) { if (!in_array('save_and_continue', $extraButtonsBlacklist)) { echo $this->Form->button(__d('crud', 'Save & continue editing'), ['class' => 'btn btn-success btn-save-continue', 'name' => '_edit', 'value' => true]);