Mallas Posted November 9, 2012 Share Posted November 9, 2012 (edited) Saludos: Necesito insertar un crontab para que el módulo "Retome contacto con sus clientes v1.0 por PrestaShop". Lo he colocado en cpanel pero he recibido esta mañana un mensaje de error indicando que no se han enviado. Este sería el código url: http://www.mallascampojardin.com/modules/followup/cron.php?secure_key=xxxxxxxxxx (código) He activado este crontab para que todos los dias me llegue un "informe" de su funcionamiento. El mensaje que recibo es el siguiente: /bin/sh: http://www.mallascampojardin.com/modules/followup/cron.php?secure_key=xxxxxxx: No such file or directory Si pincho en el enlace arriba indicado me aprarece esta sentencia: Warning: Invalid argument supplied for foreach() in /home3/mallasca/public_html/modules/followup/followup.php on line 288 ¿ Cómo hago para solucionarlo? ¿ me tendría que aparecer algo en vales descuentos? Gracias de antemano. Edited November 9, 2012 by nadie Editado título del tema, por estar completamente en mayúscula | Normas del foro (see edit history) Link to comment Share on other sites More sharing options...
jordiob Posted November 9, 2012 Share Posted November 9, 2012 Mírate la línea 288 de ese archivo y pégala aquí para que tengamos alguna pista please Link to comment Share on other sites More sharing options...
Mallas Posted November 9, 2012 Author Share Posted November 9, 2012 Saludos: Os dejo varias líneas desde 273 a 298. La 288 está en color rojo) /* Each cart which wasn't transformed into an order */ private function cancelledCart($count = false) { $emails = Db::getInstance()->ExecuteS(' SELECT c.id_cart, c.id_lang, cu.id_customer, cu.firstname, cu.lastname, cu.email FROM '._DB_PREFIX_.'cart c LEFT JOIN '._DB_PREFIX_.'orders o ON (o.id_cart = c.id_cart) LEFT JOIN '._DB_PREFIX_.'customer cu ON (cu.id_customer = c.id_customer) WHERE DATE_SUB(CURDATE(),INTERVAL 7 DAY) <= c.date_add AND cu.id_customer IS NOT NULL AND o.id_order IS NULL AND c.id_cart NOT IN ('.join(',', $this->getLogsEmail(1)).')'); if ($count OR !sizeof($emails)) return sizeof($emails); $conf = Configuration::getMultiple(array('PS_FOLLOW_UP_AMOUNT_1', 'PS_FOLLOW_UP_DAYS_1')); foreach ($emails AS $email) { $voucher = $this->createDiscount(1, (float)($conf['PS_FOLLOW_UP_AMOUNT_1']), (int)($email['id_customer']), strftime('%Y-%m-%d', strtotime('+'.(int)($conf['PS_FOLLOW_UP_DAYS_1']).' day')), $this->l('Discount for your cancelled cart')); if ($voucher !== false) { $templateVars = array('{email}' => $email['email'], '{lastname}' => $email['lastname'], '{firstname}' => $email['firstname'], '{amount}' => $conf['PS_FOLLOW_UP_AMOUNT_1'], '{days}' => $conf['PS_FOLLOW_UP_DAYS_1'], '{voucher_num}' => $voucher->name); $result = Mail::Send((int)($email['id_lang']), 'followup_1', Mail::l('Your cart and your discount'), $templateVars, $email['email'], $email['firstname'].' '.$email['lastname'], NULL, NULL, NULL, NULL, dirname(__FILE__).'/mails/'); $this->logEmail(1, (int)($voucher->id), (int)($email['id_customer']), (int)($email['id_cart'])); } } } Espero sea de utilidad. Gracias Link to comment Share on other sites More sharing options...
jordiob Posted November 9, 2012 Share Posted November 9, 2012 La línea 288 no debería ser esa, ni en la versión 1.4 del módulo, ni en la 1.5. Has modificado algo en este archivo? Prueba a bajarte de nuevo el módulo y substituir ese archivo, solo por si acaso. Link to comment Share on other sites More sharing options...
Mallas Posted November 9, 2012 Author Share Posted November 9, 2012 Saludos: No, no he tocada nada, es el módulo que me viene por defecto en mi tienda. ¿Me indicas un enlace dónde poder bajarlo? Llevo un rato buscándolo y no encuentro nada. Mil gracias, Por cierto, supongo que primero tendré que desintalarlo de BO , y después subirlo nuevamente, después configurarlo y finalmente realizar la compilación. Link to comment Share on other sites More sharing options...
jordiob Posted November 9, 2012 Share Posted November 9, 2012 Te lo puedes bajar con la versión de Prestashop que se puede descargar en esta misma página Link to comment Share on other sites More sharing options...
Mallas Posted November 10, 2012 Author Share Posted November 10, 2012 Saludos Jordi: Ya he subido un nuevo modulo follow-up y parece que ya funciona puesto que aparece los diferentes números de email para poder enviar a los clientes. Sin embargo el email de confirmación que manda el crontab indica: No such file or directory. ¿Alguna sugerencia? Gracias Link to comment Share on other sites More sharing options...
jordiob Posted November 10, 2012 Share Posted November 10, 2012 Hola Mallas, Fíjate bien si el crontab está bien puesto en la URL que toca y si esa URL existe y, además, es accesible Link to comment Share on other sites More sharing options...
Mallas Posted November 10, 2012 Author Share Posted November 10, 2012 Saludos Jordi: Creo haber solucionado el problema con este dichoso módulo. Ahora me gustaría cambiar la fisonomía de los email que se mandan puesto que poseen muchos erroes gramaticales y parecen escrito por máquinas.¿Dónde debo cambiarlo? Gracias Link to comment Share on other sites More sharing options...
nadie Posted November 10, 2012 Share Posted November 10, 2012 Saludos Jordi: Creo haber solucionado el problema con este dichoso módulo. Ahora me gustaría cambiar la fisonomía de los email que se mandan puesto que poseen muchos erroes gramaticales y parecen escrito por máquinas.¿Dónde debo cambiarlo? Gracias Busca en: /modules/followup/mails/es/ (es para el español, en para el ingles) Hay tienes los emails del modulo. Creo que tambien puedes cambiarlo en la pestaña Localización -> Traducciones -> Traducciones de los emails (En la 1.4 Herramientas -> Traducciones -> Traducciones de los emails) Saludos, 1 Link to comment Share on other sites More sharing options...
Recommended Posts