File: D:/HostingSpaces/SBogers60/vandeurzenheftrucks.nl/wwwroot/app/controllers/c_demo.class.php
<?php
/**
* c_offer.class.php
* Created by Komma Mediadesign.
* Author: mike
* Date: 11/02/14
*/
require_once DOCUMENT_ROOT . 'lib/form/form.class.php';
require_once DOCUMENT_ROOT . 'lib/mail/php_mailer.class.php';
class Demo extends Controller
{
private $name;
public function __construct()
{
$this->name = 'demo';
parent::__construct();
}
/*
* Index of the home page
*/
public function index()
{
// Title
$this->View->setData('page_title', 'Demo aanvragen | ' . SITE_NAME);
$Bc = new Breadcrumb();
$this->View->setData('breadcrumb', $Bc->create('demo') );
// Generate form
$Form = new Form($this->name);
$fields = $Form->generate();
$this->View->setData('form_fields',$fields);
// Load template view
$this->View->render('v_demo');
}
public function thanks()
{
// Title
$this->View->setData('page_title', 'Bedankt | Demo aanvragen | ' . SITE_NAME);
$Bc = new Breadcrumb();
$this->View->setData('breadcrumb', $Bc->create('demo') );
// Generate form
$Form = new Form($this->name);
$fields = $Form->generate();
$this->View->setData('form_fields',$fields);
// Load template view
$this->View->render('v_demo');
}
/*
* Validate contact form
*/
public function validate()
{
if(isset($_POST['secret_code']) && $_POST['secret_code'] == 'spam_check_komma')
{
$Form = new Form($this->name);
if($Form->validate())
{
// Get data for mail
$data = $_SESSION[$this->name]['data'];
// Convert message
$data['message'] = nl2br($data['message']);
$from['email'] = COMPANY_EMAIL;
$from['name'] = COMPANY_NAME;
$to['email'] = COMPANY_EMAIL;
$to['name'] = COMPANY_NAME;
// Create message for mail
$msg = 'Er is een bericht binnen gekomen via het demoformulier op de website:<br /><br />';
foreach($data as $prop => $value)
{
$msg .= '<strong>' . $this->lang[$prop] . '</strong>:<br /> ' . $value . '<br /><br />';
}
// Message client
$clientMsg = 'Geachte heer / mevrouw,<br /><br />';
$clientMsg .= 'Bedankt voor uw aanvraag.<br />';
$clientMsg .= 'Deze is in behandeling genomen en we nemen zo spoedig mogelijk contact met u op.<br /><br />';
$clientMsg .= 'Met vriendelijke groet,<br /><br />';
$clientMsg .= 'Mat Lammers,<br />
Van Deurzen Heftrucks';
// Send e-mail
$Mailer = new PHPMailer(TRUE);
try
{
// Mail
$Mailer->AddAddress($to['email'], $to['name']);
$Mailer->SetFrom($from['email'], $from['name']);
$Mailer->Subject = 'Van Deurzen - Demoformulier';
$Mailer->MsgHTML($msg);
$Mailer->Send();
// Mail Client
$ClientMailer = new PHPMailer(TRUE);
$ClientMailer->AddAddress($data['email'], $data['contact_name']);
$ClientMailer->SetFrom(COMPANY_EMAIL, COMPANY_NAME);
$ClientMailer->Subject = 'Bedankt voor uw aanvraag';
$ClientMailer->MsgHTML($clientMsg);
$ClientMailer->Send();
// Success message
$_SESSION[$this->name]['success'] = 'Geachte heer / mevrouw,<br /><br />
Bedankt voor uw aanvraag. Deze is in behandeling genomen en we nemen zo spoedig mogelijk contact met u op.<br /><br />
Met vriendelijke groet,<br />
Van Deurzen Heftrucks';
}
catch (phpmailerException $e)
{
// Catch mail problem?
$_SESSION[$this->name]['main_error'] = 'Er is iets fout gegaan bij verzenden. <br />Neem contact op met <a href="mailto:info@vandeurzenheftrucks.nl">info@vandeurzenheftrucks.nl</a>';
}
unset($_SESSION[$this->name]['data']);
Fn::redirect('/demo-aanvragen/bedankt');
}
}
Fn::redirect('/demo-aanvragen');
}
}