function add()
 {
     function formData($data)
     {
         return array_merge($data, array('headline' => 'Create', 'submitname' => 'add', 'submitvalue' => 'Add Company'));
     }
     global $CRecruiter;
     $CRecruiter->requireLogin();
     global $params, $MCompany, $MRecruiter;
     $me = $MRecruiter->me();
     if (!isset($_POST['add'])) {
         self::render('companies/form', formData(array('name' => $me['company'])));
         return;
     }
     // Params to vars
     $params['name'] = $me['company'];
     extract($data = $this->data($params));
     // Validations
     $this->startValidations();
     $this->validate(!$this->exists(), $err, 'company exists');
     $this->validateData($data, $err);
     // Code
     if ($this->isValid()) {
         $id = $MCompany->save($data);
         $me = $MRecruiter->me();
         $me['company'] = new MongoID($id);
         $MRecruiter->save($me);
         $_SESSION['company'] = $id;
         // Add credit for making company profile.
         $recruiterId = $_SESSION['_id'];
         RecruiterModel::addCreditsForNewCompanyProfile($recruiterId);
         $this->redirect('home');
         return;
     }
     self::error($err);
     self::render('companies/form', formData($data));
 }