Jump to content

Recommended Posts

Hola a todos, se esta usando el modulo de 'iqitemailsubscriptionconf&controller=subscription' pero en el modulo de configuracion de  ps_emailsubscription solo esta llegando el Email.
Existe alguna otra tabla donde se encuentren estos datos o porqué razon solo llega el email.

Muchas gracias!

i

image.png

Edited by front7
change pic (see edit history)
Link to comment
Share on other sites

  • 2 weeks later...

Hola, he visto este post que no ha recibido respuestas y me gustaría ayudarte. Quizás es una tontería lo que voy a decir, pero puede que el módulo permita la suscripción por correo electrónico Y/O Whatsapp, con lo cual, si introduces un correo electrónico válido permitiría la suscripción aunque el usuario no introduzca un teléfono de contacto. Puedes comprobarlo fácilmente a través del mismo formulario. También es importante utilizar los medios de contacto existentes para solicitar ayuda al propio desarrollador del módulo/tema que podrá ayudarte mejor que la comunidad que quizás puede que no use tu módulo/tema. Un saludo.

  • Like 1
Link to comment
Share on other sites

Hola, he revisado el otro tema y veo que aportaste el código, habría que ver qué hace el controlador que recibe la información desde el formulario con los campos aportados. En concreto: http://paylesschat.com/costarica/es/?fc=module&module=iqitemailsubscriptionconf&controller=subscription

El controlador subscription dentro del módulo iqitemailsubscriptionconf, ese es el que procesa la información desde el formulario. En principio, no veo nada malo en el formulario, tenía mis dudas de si le habían puesto al campo la etiqueta name, pero sí, es así, así que lo que nos interesa debe estar ahí. En otro orden de cosas, luego aportas una lista de la base de datos, no creo que sea relevante más allá de que el controlador quizás no esté procesando bien la información. Un saludo.

Link to comment
Share on other sites

@Yelish Si tal cual.
No obstante, ese controlador hace parte de un módulo que muestra la 
image.thumb.png.4c8a0a7adbfbd56f20850ed410cf465c.png

Pagina después de subirlo 

image.thumb.png.a05d548e171eb8d6af198a14c36fe889.png

No obstante, encontré esto dentro de otro modulo, aunque no sé aún donde encontrar Tools
image.png.97fe9a28ca8390e1e217067fd467acdc.png

¡Pero bueno es progreso! 😁

Link to comment
Share on other sites

Hola, ¿qué tal? Tools es una clase dentro de la carpeta /class. No es importante en tu contexto, porque lo único que hace es determinar si el botón de envío ha sido pulsado, si es así lo procesa. Lo interesante sería encontrar en el controlador anterior la función que procesa la información a fin de saber qué hace exactamente con los campos enviados. Por ejemplo, has enviado un código donde carga una plantilla, en esa plantilla hay variables como conditions o msg, bien, esas variables tiene que haberlas pasado un controlador. Si un controlador no las pasara, la plantilla daría error. Un saludo.

Link to comment
Share on other sites

😮‍💨 @YelishBueno ya me está quedando un poco más claro.
Este es el módulo como tal, pero tampoco hay mucha información de cómo se envía la info del popup al php
https://codecanyon.net/item/popup-window-editor-with-newsletter/9835121

Pero bueno supongo que, en caso de no dar con el issue, debería repasar php y suplir en la plantilla la funcionalidad. Quizás dentro del mismo controlador de subscribe.
Si de por casualidad hay documentación por ahi recomendada quedo atento


muchas gracias!

 

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

Hola, disculpa la espera, estaba liado con la escritura de los manuales del nuevo módulo. Esta parte es la que menos me gusta del desarrollo, pero hay que hacerlo. Te comento, no tengo acceso a tu módulo, así que no puedo decirte específicamente qué función cambiar y cómo, si me pudieras mandar aunque fuera el controlador sin vulnerar las normas de codecanyon sobre cesión de software igual puedo ser más útil. Un abrazo y disculpa.

  • Like 1
Link to comment
Share on other sites

@Yelish Jaja pero bueno, eso si no hay nada como un buen manual.

Adjunto lo que encontré, pero no fue mucho, si basta o hace falta algo más quedo atento


Como tal este es el único controlador, es decir, 
baje el iqpopup, pero no encontré controlladores solo el php inicial

image.png.216e67faf73b653ef7948655c26947ba.pngimage.png.f482a287ec483299460ceed00f4f2023.pngimage.png.a882df052af6cbce9c60dd43c9efab73.png

Y el controlador de subscribe es el que estaría en el iqitemailsubscriptionconf

 

image.png.a017f410f8a47789d1a7a7a672f61f76.png

class IqitEmailSubscriptionConfSubscriptionModuleFrontController extends ModuleFrontController

{

    private $variables = [];

 

    /**

     * @see FrontController::postProcess()

     */


 

    /**

     * @see FrontController::initContent()

     */

    public function initContent()

    {

        parent::initContent();

 

        if (Tools::isSubmit('submitNewsletter')) {

            $this->setTemplate('module:iqitemailsubscriptionconf/views/templates/front/subscription_execution.tpl');

        } else{

            Tools::redirect('index');

        }

    }

}

 

image.png.5b181368ca3caf5af0824c60965820e5.png

Link to comment
Share on other sites

Hola, creo que lo que ocurre es que el módulo iqitpopup (el que muestra el newsletter en una ventana) y el módulo iqitemailsubscriptionconf (el que procesa el formulario) tienen ambos una dependencia del módulo ps_emailsubscription. Es este último el que procesa la información que recibe de los formularios, se trata del módulo para suscripción por email de PrestaShop. Este módulo si es fácilmente reconocible en todos los entornos, si analizas la estructura de la tabla que usa en la base de datos, este módulo no incluye ningún campo que pueda incluir el whatsapp del cliente ni procesa nada que no sea email, fecha, etc... Puedes comprobar como procesa la información consultando su controlador del front en la carpeta ps_emailsubscription/controllers/front/subscription.php:

    public function postProcess()
    {
        $this->variables['value'] = Tools::getValue('email', '');
        $this->variables['msg'] = '';
        $this->variables['conditions'] = Configuration::get('NW_CONDITIONS', $this->context->language->id);

        if (Tools::isSubmit('submitNewsletter') || $this->ajax) {
            $this->module->newsletterRegistration();
            if ($this->module->error) {
                $this->variables['msg'] = $this->module->error;
                $this->variables['nw_error'] = true;
            } elseif ($this->module->valid) {
                $this->variables['msg'] = $this->module->valid;
                $this->variables['nw_error'] = false;
            }

            if ($this->ajax) {
                header('Content-Type: application/json');
                $this->ajaxDie(json_encode($this->variables));
            }
        }
    }

Como verás, solo procesa el email, no whatsapp. Espero esto ayude. Un saludo.

Link to comment
Share on other sites

SI señor, tal cúal.
DIgamos por eso en la otra tarea adjunte la tabla de php del multistore. Aparentemente estaba funcionando bien, pero de un momentos a otro, solo empezo a enviar el correo.
Valga aclarar que la cuenta la recibimos ya con esa intermitencia por lo que quería saber si era algún error, pero por lo visto, no.

Digamos en este caso podria coger ese modulo y agregarle las variables faltantes- 

Muchisimas gracias.
 

Link to comment
Share on other sites

Hola, ¿qué tal? Podrías si tuvieras ese campo en la tabla y formaran parte de la clase las variables faltantes. No sé de dónde sacaste ese campo whatsapp si era una opción del módulo o la integraste tú, da igual, en ambos casos no lo procesa porque necesitas que el controlador la procese, una tabla en la base de datos que le de espacio en tu BD, y si el módulo ps_subscription crea una clase que esa clase tenga dicha variable como una propiedad dentro de su clase (seguramente un object model) Gracias y que pases un genial fin de semana,

Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...