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/spire.komma-mediadesign.nl/wwwroot/mvc/controllers/c_company_careers.php
<?php
require_once DOCUMENT_ROOT.'mvc/models/m_phpmailer.php';
require DOCUMENT_ROOT . 'mvc/models/form.class.php';

if(isset($_SESSION['rememberHeight']))
{
    $jsOutput = '<script type="text/javascript">';
    $jsOutput .=  '$(document).scrollTop(1030);';
    $jsOutput .= '</script>';
    $this->setData('jsOutput',$jsOutput);
    unset($_SESSION['rememberHeight']);
}
/*
 * Set Page Title
 */
$this->setData('page_title', 'Careers | Company | '.SITE_NAME);


/*
 * Breadcrump
 */
$bc = new Breadcrump();
$bc->add('home',SITE_ROOT);
$bc->add('company',SITE_ROOT.'company/');
$bc->add('careers',SITE_ROOT.'company/careers');
$output = $bc->get();
$this->setData('breadcrump', $output);

/*
 * Set Content View Path
 */
$this->setData('content_view_path', 'mvc/views/v_company_careers.php');

/*
 * Get title and description
 */
$Dbh = new DatabaseHandler();
$Dbh->setTableName('page_vacatures_items');
$Dbh->setData(array('title'=>'','description'=>''));
$items = $Dbh->select();
if( ! empty($items))
{
    if( ! is_array($items[key($items)])) $items = array($items);
    $output = '';
    foreach($items as $item)
    {
        $output .= '<h3>' . $item['title'] . '</h3>';
        $output .= $item['description'];
    }
}
$this->setData('career_output', $output);


/*
 * Create Form
 */
$formName = 'careerForm';

$Form = new Form($formName);
$fields = array();

/*
 * Create Fields
 */
$Field = new Form_Field('First Name');
$Field->addValidation('required');
$fields[] = $Field;

$Field = new Form_Field('Middle Name');
$fields[] = $Field;

$Field = new Form_Field('Last Name');
$Field->addValidation('required');
$fields[] = $Field;

$Field = new Form_Field('Gender');
$Field->setType('radio');
$Field->addOption('male','Male');
$Field->addOption('female','Female');
$Field->addValidation('required_isset');
$fields[] = $Field;

$Field = new Form_Field('E-mail');
$Field->addValidation(array('required','email'));
$fields[] = $Field;

$Field = new Form_Field('Address');
$Field->addValidation('required');
$fields[] = $Field;

$Field = new Form_Field('City');
$Field->addValidation('required');
$fields[] = $Field;

$Field = new Form_Field('ZipCode');
$Field->addValidation('required');
$fields[] = $Field;

$Field = new Form_Field('Country');
$Field->addValidation('required');
$fields[] = $Field;

$Field = new Form_Field('Birth Date');
$Field->addValidation('required');
$fields[] = $Field;

$Field = new Form_Field('Spoken Languages');
$Field->addValidation('required');
$fields[] = $Field;

$Field = new Form_Field('Education');
$Field->addValidation('required');
$fields[] = $Field;

$Field = new Form_Field('Work Experience');
$Field->setType('textarea');
$Field->addValidation('required');
$fields[] = $Field;

$Field = new Form_Field('reCAPTCHA');
$Field->setType('recaptcha');
$Field->addValidation('recaptcha');
$fields[] = $Field;

/*
 * Submit button
 */
$Form->addSubmit('send e-mail');

foreach($fields as $Field)
{
    $Field->addClass('resetValue');
    $Field->setFormName($formName);
    $Field->defaultValue();
    $Form->addField($Field);
}

/*
 * check if submitted
 */
if(isset($_POST[$formName . '_firstName']))
{
    $_SESSION['rememberHeight'] = true;

    // save in session
    foreach($fields as $Field)
    {
        $data = $Field->get();
        $key = $formName . '_' . $data['name'];
        if(isset($_POST[$key])) $_SESSION[$formName][$data['name']] = $_POST[$key];
    }

    if($Form->validate())
    {
        $msg = 'Job application:<br /><br />';
        foreach($fields as $Field)
        {
            $data = $Field->get();
            $msg .= $data['label'] . ': ' . $_SESSION[$formName][$data['name']] . '<br />';
        }

        $name = $_SESSION[$formName]['firstName'];
        if( isset($_SESSION[$formName]['middleName']) && ! empty($_SESSION[$formName]['middleName'])) $name .= ' '.$_SESSION[$formName]['middleName'];
        $name .= ' '.$_SESSION[$formName]['lastName'];

        // Get/Set info
        $fromName = 'Spire Corp';
        $from = 'info@spire-corp.com';
        $subject = 'Job application:';

        $toName = 'Rolf Borrenbergs';
        $toMail = 'rolf@spire-corp.com';

        // Send
        $mail = new PHPMailer();
        try
        {
            $mail->AddAddress($toMail, $toName);
            $mail->SetFrom($from, $fromName);
            //$mail->AddReplyTo($from, $fromName);
            $mail->Subject = $subject;
            $mail->MsgHTML($msg);
            $mail->Send();

            $_SESSION['success'] = '<p>Thanks for the job application. We&lsquo;ll get back to you.</p><br /><br /><br /><br /><br /><br />';
        }
        catch (phpmailerException $e)
        {
            return FALSE;
        }

    }
    else
    {
        $_SESSION['career_error'] = '<p class="globalError">Something wen&lsquo;t wrong. See errors below.</p>';
    }
    $this->redirect(SITE_ROOT . 'company/careers/');
}
else
{
    /*
     * Display Form
     */
    if(isset($_SESSION['success']))
    {
        $this->setData('formOutput',$_SESSION['success']);
        unset($_SESSION['success']);
        unset($_SESSION[$formName]);
    }
    else
    {
        $formOutput = '';
        if(isset($_SESSION['career_error']))
        {
            $formOutput .= $_SESSION['career_error'].'<br />';
            unset($_SESSION['career_error']);
        }
        $formOutput .= $Form->render();
        $this->setData('formOutput',$formOutput);
    }

    /*
     * Unset errors after displaying
     */
    unset($_SESSION[$formName . '_errors']);
}