Jump to content

Edit History

hakeryk2

hakeryk2

Nie jestem pewien ale tam jest sprawdzanie. Bazuję na 1.6 ale możesz dopisać dodatkowe sprawdzanie w modules/mailalerts/controllers/front/actions.php w funkcji public function processAdd() - zamień to 


		{
			$id_customer = (int)$context->customer->id;
			$customer = new Customer($id_customer);
			$customer_email = (string)$customer->email;
		}
		else
		{
			$customer_email = (string)Tools::getValue('customer_email');
			$customer = $context->customer->getByEmail($customer_email);
			$id_customer = (isset($customer->id) && ($customer->id != null)) ? (int)$customer->id : null;
		}

na to
 

if ($context->customer->isLogged())
		{
			$id_customer = (int)$context->customer->id;
			$customer = new Customer($id_customer);
			$customer_email = (string)$customer->email;
			if (!Validate::isEmail($customer_email))
				die('0');
		}
		else
		{
			$customer_email = (string)Tools::getValue('customer_email');
			if (!Validate::isEmail($customer_email))
				die('0');

			$customer = $context->customer->getByEmail($customer_email);
			$id_customer = (isset($customer->id) && ($customer->id != null)) ? (int)$customer->id : null;
		}

Piszę bez sprawdzenia tego ale w 1.6 gdy wpiszę niepoprawny email to wypluwa błąd.

Ponadto warto ustawić limit na np 15 wpisów z tego samego adresu mailowego by nie sprawić że ktoś może mieć zaspamowaną skrzynkę.

hakeryk2

hakeryk2

Nie jestem pewien ale tam jest sprawdzanie. Bazuję na 1.6 ale możesz dopisać dodatkowe sprawdzanie w modules/mailalerts/controllers/front/actions.php w funkcji public function processAdd() - zamień to 


		{
			$id_customer = (int)$context->customer->id;
			$customer = new Customer($id_customer);
			$customer_email = (string)$customer->email;
		}
		else
		{
			$customer_email = (string)Tools::getValue('customer_email');
			$customer = $context->customer->getByEmail($customer_email);
			$id_customer = (isset($customer->id) && ($customer->id != null)) ? (int)$customer->id : null;
		}

na to
 

if ($context->customer->isLogged())
		{
			$id_customer = (int)$context->customer->id;
			$customer = new Customer($id_customer);
			$customer_email = (string)$customer->email;
			if (!Validate::isEmail($customer_email))
				die('0');
		}
		else
		{
			$customer_email = (string)Tools::getValue('customer_email');
			if (!Validate::isEmail($customer_email))
				die('0');

			$customer = $context->customer->getByEmail($customer_email);
			$id_customer = (isset($customer->id) && ($customer->id != null)) ? (int)$customer->id : null;
		}

Piszę bez sprawdzenia tego ale w 1.6 gdy wpiszę niepoprawny email to wypluwa błąd.

×
×
  • Create New...