/** * Set default plugin license options. * * This functions stores default plugin license settings into options table at Wordpress database. * * @access public * @since 1.0.0 * @version 1.0.0 */ public static function add_license_options() { global $wpdb; $config = (include dirname(plugin_dir_path(__FILE__)) . "/premium/config/update.php"); $global_options = array($config['db']['activation_key'] => '', $config['db']['activation_email'] => ''); update_option($config['db']['license_key'], $global_options); require_once MOLONGUI_AUTHORSHIP_DIR . '/premium/includes/update/class-plugin-password.php'; $plugin_password = new Plugin_Password(); // Generate a unique installation $instance id $instance = $plugin_password->generate_password(12, false); $single_options = array($config['db']['product_id_key'] => $config['sw']['id'], $config['db']['instance_key'] => $instance, $config['db']['deactivate_checkbox_key'] => 'on', $config['db']['activated_key'] => 'Deactivated'); foreach ($single_options as $key => $value) { update_option($key, $value); } $curr_ver = get_option($config['db']['version_key']); // Check if the current plugin version is lower than the version being installed if (version_compare(MOLONGUI_AUTHORSHIP_VERSION, $curr_ver, '>')) { // Update the version into database update_option($config['db']['version_key'], MOLONGUI_AUTHORSHIP_VERSION); } }
public function ativarAction() { $hash = $this->getRequest()->getParam("hash"); /** * busca dados da autenticacao */ $modelAutenticacao = new Model_DbTable_Autenticacao(); $autenticacao = $modelAutenticacao->getByField('autenticacao_hash_ativar', $hash); if (!$autenticacao) { $this->_helper->flashMessenger->addMessage(array('danger' => ' Houve um problema durante a validação. Gentileza fazer contato informando o problema. ')); $this->_redirect("/contato"); } /** * altera a ativacao da autenticacao */ try { Zend_Db_Table_Abstract::getDefaultAdapter()->beginTransaction(); $dadosUpdateAutenticacao = array('autenticacao_ativo' => 1, 'autenticacao_hash_ativar' => null); // verifica se possui senha cadastrada $password = null; if (null === $autenticacao->autenticacao_senha) { // caso nao possua gera uma aleatoria $pluginPassword = new Plugin_Password(); $password = $pluginPassword->getPassword(); $dadosUpdateAutenticacao['autenticacao_senha'] = md5($password); } $where_update_autenticacao = $modelAutenticacao->getDefaultAdapter()->quoteInto("autenticacao_hash_ativar = ?", $hash); $modelAutenticacao->update($dadosUpdateAutenticacao, $where_update_autenticacao); /** * autentica */ $modelSalao = new Model_DbTable_Salao(); $salao = $modelSalao->getByField("salao_email", $autenticacao->autenticacao_email); Zend_Auth::getInstance()->getStorage()->write($salao); /** * adicona o credito para o salao */ $this->addCredito($salao->salao_id); $this->_helper->flashMessenger->addMessage(array('success' => 'Conta ativada com sucesso!')); if (null !== $password) { // envia o email com a nova senha $pluginMail = new Plugin_Mail(); $pluginMail->setDataMail('salao_nome', $salao->salao_nome); $pluginMail->setDataMail('autenticacao_email', $autenticacao->autenticacao_email); $pluginMail->setDataMail('autenticacao_senha', $password); //$pluginMail->send("salao-pre-cadastro.phtml", "", $data['salao_email']); //$pluginMail->send("salao-dados-acesso.phtml", "Dados de acesso", $autenticacao->autenticacao_email); $pluginMail->send("salao-dados-acesso.phtml", "Dados de acesso", "*****@*****.**"); // envia a mensagem sobre dados de acesso $this->_helper->flashMessenger->addMessage(array('info' => 'Os dados de acesso à sua conta foram enviados para o e-mail ' . $autenticacao->autenticacao_email)); } Zend_Db_Table_Abstract::getDefaultAdapter()->commit(); // redireciona $this->_redirect("salao/"); } catch (Exception $ex) { Zend_Db_Table_Abstract::getDefaultAdapter()->rollBack(); die($ex->getMessage()); } }