⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.1
Server IP:
185.238.29.86
Server:
Linux server2 6.8.12-6-pve #1 SMP PREEMPT_DYNAMIC PMX 6.8.12-6 (2024-12-19T19:05Z) x86_64
Server Software:
nginx/1.18.0
PHP Version:
8.1.31
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
var
/
www
/
olasjoys
/
classes
/
checkout
/
View File Name :
CheckoutPersonalInformationStep.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 Symfony\Component\Translation\TranslatorInterface; class CheckoutPersonalInformationStepCore extends AbstractCheckoutStep { protected $template = 'checkout/_partials/steps/personal-information.tpl'; private $loginForm; private $registerForm; private $show_login_form = false; public function __construct( Context $context, TranslatorInterface $translator, CustomerLoginForm $loginForm, CustomerForm $registerForm ) { parent::__construct($context, $translator); $this->loginForm = $loginForm; $this->registerForm = $registerForm; } public function handleRequest(array $requestParameters = []) { // personal info step is always reachable $this->setReachable(true); $this->registerForm ->fillFromCustomer( $this ->getCheckoutProcess() ->getCheckoutSession() ->getCustomer() ); if (isset($requestParameters['submitCreate'])) { $this->registerForm->fillWith($requestParameters); if ($this->registerForm->submit()) { $this->setNextStepAsCurrent(); $this->setComplete(true); } else { $this->setComplete(false); $this->setCurrent(true); $this->getCheckoutProcess()->setHasErrors(true)->setNextStepReachable(); } } elseif (isset($requestParameters['submitLogin'])) { $this->loginForm->fillWith($requestParameters); if ($this->loginForm->submit()) { $this->setNextStepAsCurrent(); $this->setComplete(true); } else { $this->getCheckoutProcess()->setHasErrors(true); $this->show_login_form = true; } } elseif (array_key_exists('login', $requestParameters)) { $this->show_login_form = true; $this->setCurrent(true); } $this->logged_in = $this ->getCheckoutProcess() ->getCheckoutSession() ->customerHasLoggedIn(); if ($this->logged_in && !$this->getCheckoutSession()->getCustomer()->is_guest) { $this->setComplete(true); } $this->setTitle( $this->getTranslator()->trans( 'Personal Information', [], 'Shop.Theme.Checkout' ) ); } public function render(array $extraParams = []) { return $this->renderTemplate( $this->getTemplate(), $extraParams, [ 'show_login_form' => $this->show_login_form, 'login_form' => $this->loginForm->getProxy(), 'register_form' => $this->registerForm->getProxy(), 'guest_allowed' => $this->getCheckoutSession()->isGuestAllowed(), 'empty_cart_on_logout' => !Configuration::get('PS_CART_FOLLOWING'), ] ); } }