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‘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‘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']);
}