Page 1 of 1

[opgelost] prijsvraag en meteen aanmelden nieuwsbrief

Posted: Tue Mar 29, 2011 12:20 pm
by Dieteronline
Hallo,

Ik heb het idee om een prijsvraag uit te laten gaan en als dan het antwoord ingestuurd wordt met email adres en naam dat dan onderaan een vinkje staat zodat diegene zichzelf meteen inschrijft voor de nieuwsbrief.

met formbuilder is een en ander goed te doen maar hoe krijg ik het dan voor elkaar dat de bezoeker meteen is ingeschreven voor de nieuwsbrief na het invullen van de gegevens?

Snappie?

Groet

Re: prijsvraag antwoord en meteen aanmelden nieuwsbrief

Posted: Tue Mar 29, 2011 4:40 pm
by Jos
Dat zou wel moeten kunnen.

Volgens mij kan Formbuilder een UDT oproepen. In die UTD kun je dan de AddUser method van NMS aanroepen.
AddUser($email,$lists,$username='',$disabled=0,$confirmed=0)
Let wel op dat gebruikers op de hoogte moeten zijn dat ze aan een mailinglist worden toegevoegd! Zij moeten hiervoor expliciet toestemming geven.

Re: prijsvraag antwoord en meteen aanmelden nieuwsbrief

Posted: Tue Mar 29, 2011 5:29 pm
by Dieteronline
Hey Jos,

Ik had het idee dat als ik een selectievakje onderaan plaats die standaard aan staat maar wél uitgezet kan worden wel voldoende is.
Uiteraard met een stukje tekst erbij, zoiets als 'Aanmelden nieuwsbrief'. Hierdoor zijn gebruikers op de hoogte.

Dus als ik het goed begrijp:
UDT aanmaken met de AddUser method van NMS
Dan die UDT toevoegen aan het selectievakje en dan zou het moeten lukken.
Ik ga er vanavond mee aan de slag.

Bedankt!

groet.

Re: prijsvraag antwoord en meteen aanmelden nieuwsbrief

Posted: Thu Mar 31, 2011 11:47 am
by Dieteronline
Hallo,

Met een flink portie hulp van wat topics hier en wat uren zitten klootviolen is het uiteindelijk toch gelukt!

Een UDT aangemaakt met de volgende code:

Code: Select all

if (!function_exists('MyGetModuleInstance'))
{
       function &MyGetModuleInstance($module)
       {
               global $gCms;

               if (isset($gCms->modules[$module]) &&
                       $gCms->modules[$module]['installed'] == true &&
                       $gCms->modules[$module]['active'] == true)
               {
                       return $gCms->modules[$module]['object'];
               }
               // Fix only variable references should be returned by reference
               $tmp = FALSE;
               return $tmp;
       }
}

global $gCms;

$nms = MyGetModuleInstance('NMS');

if ($nms == FALSE)
 return false;

$name = $params['naam'];
   

$email = $params['email'];


$list = $params['nieuwsbrief'];
if ($list != '1')
   return;

$list_array = explode(",", $list);

$newslist = $list_array;


       //Add user to NMS
      $nms->AddUser($email, $newslist, $name);

       //Set the confirmed flag to true
       $db =& $gCms->GetDb();
       $db->Execute('UPDATE ' . cms_db_prefix() . 'module_nms_users SET confirmed = 1 where email = ?', array($email));
Vervolgens in FormBuilder de velden aangemaakt met de aliassen die weer corresponderen met de $params.
in Formbuilder bij het selectievakje 'waarde indien geselcteerd' 1 ingegvoerd en bij 'waarde indien niet geselcteerd' 0 ingevoerd.

UDT veld ingevoerd in formbuilder met de formulierresultaten en die uiteraard verwezen naar de UDT die ik aangemaakt heb met bovenstaande code.
Draaien! ;D

Ik weet niet of het de meest mooie manier is maar het werkt.

Groet,
Dieter

Re: [opgelost] prijsvraag en meteen aanmelden nieuwsbrief

Posted: Sat Apr 02, 2011 6:57 am
by Jos
netjes hoor!

Ik vraag me alleen af of je die laatste update query nodig hebt als je de confirmed parameter van de AddUser method gebruikt

Code: Select all

AddUser($email, $newslist, $name, 0, 1)

Re: [opgelost] prijsvraag en meteen aanmelden nieuwsbrief

Posted: Sat Apr 02, 2011 9:02 am
by Dieteronline
Ik vraag me alleen af of je die laatste update query nodig hebt als je de confirmed parameter van de AddUser method gebruikt

Code:
AddUser($email, $newslist, $name, 0, 1)
Ga het gewoon proberen.
Ziet er in ieder geval eenvoudiger uit.. ;)

Groet