HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/pvg.komma-mediadesign.nl/wwwroot/app/controllers/c_contact.php
<?php
/**
 * c_contact.php
 * Created by Komma Mediadesign.
 * Author: mike
 * Date: 7/22/13
 */

require DOCUMENT_ROOT . 'lib/session.class.php';
require DOCUMENT_ROOT . 'lib/functions.class.php';
require DOCUMENT_ROOT . 'lib/ui/button.class.php';
require DOCUMENT_ROOT . 'lib/mail/php_mailer.class.php';
require DOCUMENT_ROOT . 'lib/form/form_reader.class.php';


$reader = new Form_Reader();
$reader->load(DOCUMENT_ROOT . 'views/forms/contact.xml.php');
$Form = $reader->generate();

// Validate if button is hit
if(isset($_POST['submit_form']))
{
    $attr = $Form->get();
    // save in session
    $ignoredFields = array('submit_form');
    foreach($ignoredFields as $key)
    {
        unset($_POST[$key]);
    }
    $fields = $_POST;

    foreach($fields as $key => $value)
    {
        Session::set(array($attr['name'].'_data',$key), $value);
    }


    // validate form
    if($Form->validate())
    {

        $data = Session::get('contact_data');
        if(is_array($data))
        {

            // Form is valid
            #1 Send e-mail to PVG
            #2 Send e-mail to user

            $from = 'mike@komma-mediadesign.nl';
            $fromName = 'Komma Mediadesign';

            ////////////////////////////////////////

            // PVG e-mail
            $to = $from;
            $toName = $fromName;

            // Generate msg PVG
            $msg = 'Beste Peter,<br /><br />';
            $msg .= 'Het volgende bericht is binnen gekomen via <a href="' . BASE_ROOT . '">www.' . $_SERVER['HTTP_HOST'] . '</a>:<br /><br/>';

            $msg .= '<table>';
            foreach($data as $field => $value)
            {
                if($field != 'form_type')
                {
                    if($field == 'bericht')
                    {
                        $value = nl2br($value);
                    }
                    $msg .= '<tr>';
                    $msg .= '<td valign="top"><strong>' . $field . '<strong></td>';
                    $msg .= '<td>' . $value . '</td>';
                    $msg .= '</tr>';
                }
            }
            $msg .= '</table>';

            // Send
            $mail = new PHPMailer();
            try
            {
                $mail->AddAddress($to, $toName);
                $mail->SetFrom($from, $fromName);
                //$mail->AddReplyTo($from, $fromName);
                $mail->Subject = $data['onderwerp'];
                $mail->MsgHTML($msg);
                $mail->Send();
            }
            catch (phpmailerException $e)
            {
            }

            ////////////////////////////////////////

            // User e-mail
            $to = $data['email'];
            $toName = str_replace('  ',' ',$data['voornaam'] . $data['achternaam']);

            // Generate msg User
            $msg = 'Beste ' . $data['voornaam'] . ',<br /><br />';
            $msg .= 'Bedankt voor uw vraag, we zullen hier zo spoedig mogelijk op terug komen.<br /><br/>';
            $msg .= 'Met vriendelijke groet,<br />';
            $msg .= 'PVG - Lifttechniek.<br /><br/>';

            // Send
            $mail = new PHPMailer();
            try
            {
                $mail->AddAddress($to, $toName);
                $mail->SetFrom($from, $fromName);
                //$mail->AddReplyTo($from, $fromName);
                $mail->Subject = 'Dank voor uw bericht';
                $mail->MsgHTML($msg);
                $mail->Send();

                Session::destroy('contact_data');
                Session::set('success','Bedankt voor uw vraag, we zullen hier zo spoedig mogelijk op terug komen.');
            }
            catch (phpmailerException $e)
            {
            }
        }
    }
    else
    {
        $errorMessage = '<br /><strong>Er zijn een aantal fouten opgetreden:</strong> <br /><br />';
        foreach($_SESSION['contact_errors'] as $error)
        {
            $errorMessage .= $error . '<br />';
        }
        Session::set('error_message',$errorMessage);
    }
    header( 'location: /contact/');
    exit;
}


if($msg = Session::get('success'))
{
    // Show message
    $form = '<span class="success">' . $msg . '</span>';
    Session::destroy('success');
}
else
{
    // Render form
    $form = $Form->render();
}