function add() { function formData($data) { return array_merge($data, array('headline' => 'Create', 'submitname' => 'add', 'submitvalue' => 'Add Job')); } global $CRecruiter; $CRecruiter->requireLogin(); global $CCompany; if (!$CCompany->exists()) { $this->error('you must create a company profile first'); self::render('notice'); return; } if (!isset($_POST['add'])) { self::render('jobs/jobform', formData(array())); return; } global $params, $MJob, $MRecruiter; $me = $MRecruiter->me(); $params['company'] = $me['company']; $this->startValidations(); $this->validate(isset($params['salarytype']), $err, 'must select salary type'); // Params to vars extract($data = $this->data($params)); // Validations $this->validateData($data, $err); // Code if ($this->isValid()) { $data['applicants'] = array(); $data['viewers'] = array(); $data['stats'] = array('views' => 0, 'clicks' => 0); $jobId = $MJob->save($data); // Add credit for adding job. $recruiterId = $_SESSION['_id']; RecruiterModel::addCreditsForNewJob($recruiterId); $this->redirect("editapplication/{$jobId}"); // This should go after the application form is set up. // $this->redirect('job', array('id' => $jobId)); return; } $this->error($err); self::render('jobs/jobform', formData($data)); }