![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-user/Block/User/Edit/Tab/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\User\Block\User\Edit\Tab; use Magento\Framework\App\ObjectManager; use Magento\Framework\Locale\OptionInterface; /** * Cms page edit form main tab * * @SuppressWarnings(PHPMD.DepthOfInheritance) */ class Main extends \Magento\Backend\Block\Widget\Form\Generic { const CURRENT_USER_PASSWORD_FIELD = 'current_password'; /** * @var \Magento\Backend\Model\Auth\Session */ protected $_authSession; /** * @var \Magento\Framework\Locale\ListsInterface */ protected $_LocaleLists; /** * Operates with deployed locales. * * @var OptionInterface */ private $deployedLocales; /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Framework\Registry $registry * @param \Magento\Framework\Data\FormFactory $formFactory * @param \Magento\Backend\Model\Auth\Session $authSession * @param \Magento\Framework\Locale\ListsInterface $localeLists * @param array $data * @param OptionInterface $deployedLocales Operates with deployed locales. */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Framework\Registry $registry, \Magento\Framework\Data\FormFactory $formFactory, \Magento\Backend\Model\Auth\Session $authSession, \Magento\Framework\Locale\ListsInterface $localeLists, array $data = [], OptionInterface $deployedLocales = null ) { $this->_authSession = $authSession; $this->_LocaleLists = $localeLists; $this->deployedLocales = $deployedLocales ?: ObjectManager::getInstance()->get(OptionInterface::class); parent::__construct($context, $registry, $formFactory, $data); } /** * Prepare form fields * * @SuppressWarnings(PHPMD.ExcessiveMethodLength) * @return \Magento\Backend\Block\Widget\Form */ protected function _prepareForm() { /** @var $model \Magento\User\Model\User */ $model = $this->_coreRegistry->registry('permissions_user'); /** @var \Magento\Framework\Data\Form $form */ $form = $this->_formFactory->create(); $form->setHtmlIdPrefix('user_'); $baseFieldset = $form->addFieldset('base_fieldset', ['legend' => __('Account Information')]); if ($model->getUserId()) { $baseFieldset->addField('user_id', 'hidden', ['name' => 'user_id']); } else { if (!$model->hasData('is_active')) { $model->setIsActive(1); } } $baseFieldset->addField( 'username', 'text', [ 'name' => 'username', 'label' => __('User Name'), 'id' => 'username', 'title' => __('User Name'), 'required' => true ] ); $baseFieldset->addField( 'firstname', 'text', [ 'name' => 'firstname', 'label' => __('First Name'), 'id' => 'firstname', 'title' => __('First Name'), 'required' => true ] ); $baseFieldset->addField( 'lastname', 'text', [ 'name' => 'lastname', 'label' => __('Last Name'), 'id' => 'lastname', 'title' => __('Last Name'), 'required' => true ] ); $baseFieldset->addField( 'email', 'text', [ 'name' => 'email', 'label' => __('Email'), 'id' => 'customer_email', 'title' => __('User Email'), 'class' => 'required-entry validate-email', 'required' => true ] ); $isNewObject = $model->isObjectNew(); if ($isNewObject) { $passwordLabel = __('Password'); } else { $passwordLabel = __('New Password'); } $confirmationLabel = __('Password Confirmation'); $this->_addPasswordFields($baseFieldset, $passwordLabel, $confirmationLabel, $isNewObject); $baseFieldset->addField( 'interface_locale', 'select', [ 'name' => 'interface_locale', 'label' => __('Interface Locale'), 'title' => __('Interface Locale'), 'values' => $this->deployedLocales->getOptionLocales(), 'class' => 'select' ] ); if ($this->_authSession->getUser()->getId() != $model->getUserId()) { $baseFieldset->addField( 'is_active', 'select', [ 'name' => 'is_active', 'label' => __('This account is'), 'id' => 'is_active', 'title' => __('Account Status'), 'class' => 'input-select', 'options' => ['1' => __('Active'), '0' => __('Inactive')] ] ); } $baseFieldset->addField('user_roles', 'hidden', ['name' => 'user_roles', 'id' => '_user_roles']); $currentUserVerificationFieldset = $form->addFieldset( 'current_user_verification_fieldset', ['legend' => __('Current User Identity Verification')] ); $currentUserVerificationFieldset->addField( self::CURRENT_USER_PASSWORD_FIELD, 'password', [ 'name' => self::CURRENT_USER_PASSWORD_FIELD, 'label' => __('Your Password'), 'id' => self::CURRENT_USER_PASSWORD_FIELD, 'title' => __('Your Password'), 'class' => 'validate-current-password required-entry', 'required' => true ] ); $data = $model->getData(); unset($data['password']); unset($data[self::CURRENT_USER_PASSWORD_FIELD]); $form->setValues($data); $this->setForm($form); return parent::_prepareForm(); } /** * Add password input fields * * @param \Magento\Framework\Data\Form\Element\Fieldset $fieldset * @param string $passwordLabel * @param string $confirmationLabel * @param bool $isRequired * @return void */ protected function _addPasswordFields( \Magento\Framework\Data\Form\Element\Fieldset $fieldset, $passwordLabel, $confirmationLabel, $isRequired = false ) { $requiredFieldClass = $isRequired ? ' required-entry' : ''; $fieldset->addField( 'password', 'password', [ 'name' => 'password', 'label' => $passwordLabel, 'id' => 'customer_pass', 'title' => $passwordLabel, 'class' => 'input-text validate-admin-password' . $requiredFieldClass, 'required' => $isRequired ] ); $fieldset->addField( 'confirmation', 'password', [ 'name' => 'password_confirmation', 'label' => $confirmationLabel, 'id' => 'confirmation', 'title' => $confirmationLabel, 'class' => 'input-text validate-cpassword' . $requiredFieldClass, 'required' => $isRequired ] ); } }