Jump to content

Modificar módulo de patrocinio


silentRun

Recommended Posts

Muy buenas,

 

A ver si algún experto de prestashop me pudiera echar una mano.

 

Estoy modificando el módulo Referralsystem ( apadrinamiento de clientes ) y Loyalty ( fidelización de los clientes ), para que los códigos de cupón generados, no sean compatibles con otros 3 códigos de cupón que tengo ya creados en Prestashop ( ya que sería demasiada rebaja).

 

Bueno, según veo, tan solo hace falta poner en el objeto cartRule, las otras "cartRule" ( regla de precios ), con las que es incompatible... pero no veo ningún método o contstante en dicha clase para tal cosa...

 

¿ Alguien tiene alguna idea de como se podría poner esta condición en el momento de la creación del cupón ?

 

 

Gracias de antemano

Edited by silentRun (see edit history)
Link to comment
Share on other sites

Pues a ver, he seguido investigando y he econtrado una solución, me falta muy poco para implementarla en el fichero ReferralProgramModule.php.

 

El tema es que me he creado un fichero php aparte, donde ejecuto este código, el cual funciona perfectamente:


	$ruleCombin = Db::getInstance()->executeS('
			SELECT id_cart_rule
			FROM `'._DB_PREFIX_.'cart_rule`
			WHERE (id_cart_rule > 18)
			AND (id_cart_rule != 31)
			');
			
			$cartRule=31;
			
			
			foreach ($ruleCombin as $existingCartRule)
			{

			$insertData = array(
        	'id_cart_rule_1'  => $cartRule, 
         	'id_cart_rule_2'  => (int)$existingCartRule[id_cart_rule]
      		);
      		
      		//echo "añadida regla para cartrule: ".$existingCartRule[id_cart_rule]."<br/>";
      		
      		Db::getInstance()->insert("cart_rule_combination", $insertData);

      		}
      		
      

Sin embargo, cuando lo itento ejecutar directamente desde ReferralProgramModule.php, no se porque no se ejecuta ni se actualiza los campos de la base de datos que se deberían de actualizar

$ruleCombin = Db::getInstance()->executeS('
			SELECT id_cart_rule
			FROM `'._DB_PREFIX_.'cart_rule`
			WHERE (id_cart_rule > 18)
AND (id_cart_rule != 31)
');
			
			$cartRule=31;
			
			
			foreach ($ruleCombin as $existingCartRule)
			{

			$insertData = array(
        	'id_cart_rule_1'  => $cartRule, 
         	'id_cart_rule_2'  => (int)$existingCartRule[id_cart_rule]
      		);
      		
      		//echo "añadida regla para cartrule: ".$existingCartRule[id_cart_rule]."<br/>";
      		
      		Db::getInstance()->insert("cart_rule_combination", $insertData);

      		} 

Alguien sabe que puede ser el error, o como puedo depurar esto ?

 

 

 

gracias de antemano

Edited by silentRun (see edit history)
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...