X-Git-Url: https://git.mxchange.org/?p=core.git;a=blobdiff_plain;f=inc%2Fclasses%2Fmain%2Fcommands%2Fhtml%2Fclass_HtmlResendLinkCommand.php;fp=inc%2Fclasses%2Fmain%2Fcommands%2Fhtml%2Fclass_HtmlResendLinkCommand.php;h=0000000000000000000000000000000000000000;hp=05f66f938268c745f79599cb0fc759fb9419fc3c;hb=751f9e6c51f00dba27757b72fc85490e51fd3797;hpb=5203f9bd014ad46fbc7ee54e7223dcd46e14e3b4 diff --git a/inc/classes/main/commands/html/class_HtmlResendLinkCommand.php b/inc/classes/main/commands/html/class_HtmlResendLinkCommand.php deleted file mode 100644 index 05f66f93..00000000 --- a/inc/classes/main/commands/html/class_HtmlResendLinkCommand.php +++ /dev/null @@ -1,135 +0,0 @@ - - * @version 0.0.0 - * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2015 Core Developer Team - * @license GNU GPL 3.0 or any newer version - * @link http://www.shipsimu.org - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -class HtmlResendLinkCommand extends BaseCommand implements Commandable { - /** - * Protected constructor - * - * @return void - */ - protected function __construct () { - // Call parent constructor - parent::__construct(__CLASS__); - } - - /** - * Creates an instance of this class - * - * @param $resolverInstance An instance of a command resolver class - * @return $commandInstance An instance a prepared command class - */ - public static final function createHtmlResendLinkCommand (CommandResolver $resolverInstance) { - // Get new instance - $commandInstance = new HtmlResendLinkCommand(); - - // Set the application instance - $commandInstance->setResolverInstance($resolverInstance); - - // Return the prepared instance - return $commandInstance; - } - - /** - * Executes the given command with given request and response objects - * - * @param $requestInstance An instance of a class with an Requestable interface - * @param $responseInstance An instance of a class with an Responseable interface - * @return void - */ - public function execute (Requestable $requestInstance, Responseable $responseInstance) { - // Get user instance from registry - $userInstance = Registry::getRegistry()->getInstance('user'); - - // Get an application instance - $applicationInstance = $this->getResolverInstance()->getApplicationInstance(); - - // Get a RNG instance (Random Number Generator) - $rngInstance = ObjectFactory::createObjectByConfiguredName('rng_class'); - - // Generate a pseudo-random string - $randomString = $rngInstance->randomString(255); - - // Get a crypto instance - $cryptoInstance = ObjectFactory::createObjectByConfiguredName('crypto_class'); - - // Hash and encrypt the string - $hashedString = $cryptoInstance->hashString($cryptoInstance->encryptString($randomString)); - - // Update the user class - $userInstance->updateDatabaseField(UserDatabaseWrapper::DB_COLUMN_CONFIRM_HASH, $hashedString); - - // Re-set config entry to mailer engine - $this->getConfigInstance()->setConfigEntry('html_template_class', $this->getConfigInstance()->getConfigEntry('mail_template_class')); - - // Prepare the template engine - $templateInstance = $this->prepareTemplateInstance($applicationInstance); - - // Assign the application data with the template engine - $templateInstance->assignApplicationData($applicationInstance); - - // Get a mailer class - $mailerInstance = ObjectFactory::createObjectByConfiguredName('mailer_class', array($templateInstance, $applicationInstance, 'resend_link')); - - // Set this mailer in our template engine - $templateInstance->setMailerInstance($mailerInstance); - - // Add template variables we shall get - $mailerInstance->addConfigTemplateVariable('base_url'); - $mailerInstance->addConfigTemplateVariable('admin_email'); - $mailerInstance->addValueTemplateVariable('confirm_hash'); - $mailerInstance->addValueTemplateVariable('username'); - $mailerInstance->addValueTemplateVariable('email'); - - // Add the value instance for the confirmation hash - $mailerInstance->addValueInstance('confirm_hash', $userInstance); - $mailerInstance->addValueInstance('username', $userInstance); - $mailerInstance->addValueInstance('email', $userInstance); - - // Add the recipient - $mailerInstance->addRecipientByUserInstance($userInstance); - - // Use subject line from template - $mailerInstance->useSubjectFromTemplate(); - - // Send the email out - $mailerInstance->deliverEmail($responseInstance); - - // Send out notification to admin (depends on settings) - $mailerInstance->sendAdminNotification($responseInstance); - } - - /** - * Adds extra filters to the given controller instance - * - * @param $controllerInstance A controller instance - * @param $requestInstance An instance of a class with an Requestable interface - * @return void - */ - public function addExtraFilters (Controller $controllerInstance, Requestable $requestInstance) { - // Filter for checking if account is unconfirmed - $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('user_unconfirmed_filter')); - } -} - -// [EOF] -?>