Exemplo n.º 1
0
 public function isApplicant($user_id = null)
 {
     if ($user_id == null) {
         if (!sfContext::getInstance()->getUser()->isAuthenticated()) {
             return false;
         }
         $user_id = sfContext::getInstance()->getUser()->getId();
     }
     $applicant = PositionApplicationPeer::retrieveByPositionIdUserId($this->getId(), $user_id);
     if ($applicant == null) {
         return false;
     }
     return true;
 }
Exemplo n.º 2
0
 public function executeAjaxAccept()
 {
     // TODO: Secure
     $application = PositionApplicationPeer::retrieveByUuid($this->getRequestParameter('application'));
     $this->forward404Unless($application, 'ProjectApplication not found, unable to accept applicant');
     $position = $application->getProjectPosition();
     $project = $position->getProject();
     $this->forward404Unless($project, 'Project not found, unable to accept applicant');
     $this->logMessage('App_UUID: [' . $this->getRequestParameter('application') . '], App_ID: [' . $application->getId() . '], app_dump: ' . print_r($application, true));
     if ($project->acceptApplicant($application->getId()) == false) {
         $this->forward404('Unable to add position, error.');
     }
     $this->setTemplate('applicationViewer');
     $this->application = $application;
 }
Exemplo n.º 3
0
 public function getPositionApplicationsJoinsfGuardUser($criteria = null, $con = null)
 {
     include_once 'lib/model/om/BasePositionApplicationPeer.php';
     if ($criteria === null) {
         $criteria = new Criteria();
     } elseif ($criteria instanceof Criteria) {
         $criteria = clone $criteria;
     }
     if ($this->collPositionApplications === null) {
         if ($this->isNew()) {
             $this->collPositionApplications = array();
         } else {
             $criteria->add(PositionApplicationPeer::POSITION_ID, $this->getId());
             $this->collPositionApplications = PositionApplicationPeer::doSelectJoinsfGuardUser($criteria, $con);
         }
     } else {
         $criteria->add(PositionApplicationPeer::POSITION_ID, $this->getId());
         if (!isset($this->lastPositionApplicationCriteria) || !$this->lastPositionApplicationCriteria->equals($criteria)) {
             $this->collPositionApplications = PositionApplicationPeer::doSelectJoinsfGuardUser($criteria, $con);
         }
     }
     $this->lastPositionApplicationCriteria = $criteria;
     return $this->collPositionApplications;
 }
Exemplo n.º 4
0
 public function acceptApplicant($application_id)
 {
     $application = PositionApplicationPeer::retrieveByPk($application_id);
     if ($application == null) {
         return false;
     }
     $position = $application->getProjectPosition();
     //if ($position == null) return false;
     $positionUser = ProjectUserPeer::retrieveByPositionIdUserId($application->getPositionId(), $application->getUserId());
     if ($positionUser == null) {
         return false;
     }
     $user = $positionUser->getsfGuardUser()->getProfile();
     if ($position == null || $user == null || $positionUser == null) {
         sfContext::getInstance()->getLogger()->info('Position, user, or PositionUser not found, unable to accept applicant');
         return false;
     }
     $positionUser->setStatus(sfConfig::get('app_project_user_status_accepted'));
     // Status(1): Accepted
     $positionUser->save();
     $position->setFilled(true);
     // position has been filled, goodnight everyone!
     $position->save();
     $application->setStatus(sfConfig::get('app_position_application_status_accepted'));
     $application->save();
     // Assign user to members group
     $user = $application->getsfGuardUser()->getId();
     $this->addUserToGroup($user, 'members');
     return true;
 }
 public static function retrieveByPKs($pks, $con = null)
 {
     if ($con === null) {
         $con = Propel::getConnection(self::DATABASE_NAME);
     }
     $objs = null;
     if (empty($pks)) {
         $objs = array();
     } else {
         $criteria = new Criteria();
         $criteria->add(PositionApplicationPeer::ID, $pks, Criteria::IN);
         $objs = PositionApplicationPeer::doSelect($criteria, $con);
     }
     return $objs;
 }
Exemplo n.º 6
0
 public static function retrieveByUuid($value)
 {
     $c = new Criteria();
     $c->add(PositionApplicationPeer::UUID, $value);
     return PositionApplicationPeer::doSelectOne($c);
 }
Exemplo n.º 7
0
 public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME)
 {
     $keys = PositionApplicationPeer::getFieldNames($keyType);
     if (array_key_exists($keys[0], $arr)) {
         $this->setId($arr[$keys[0]]);
     }
     if (array_key_exists($keys[1], $arr)) {
         $this->setUuid($arr[$keys[1]]);
     }
     if (array_key_exists($keys[2], $arr)) {
         $this->setUserId($arr[$keys[2]]);
     }
     if (array_key_exists($keys[3], $arr)) {
         $this->setPositionId($arr[$keys[3]]);
     }
     if (array_key_exists($keys[4], $arr)) {
         $this->setInterest($arr[$keys[4]]);
     }
     if (array_key_exists($keys[5], $arr)) {
         $this->setQualification($arr[$keys[5]]);
     }
     if (array_key_exists($keys[6], $arr)) {
         $this->setNotes($arr[$keys[6]]);
     }
     if (array_key_exists($keys[7], $arr)) {
         $this->setStatus($arr[$keys[7]]);
     }
     if (array_key_exists($keys[8], $arr)) {
         $this->setReadAt($arr[$keys[8]]);
     }
     if (array_key_exists($keys[9], $arr)) {
         $this->setCreatedAt($arr[$keys[9]]);
     }
     if (array_key_exists($keys[10], $arr)) {
         $this->setDeletedAt($arr[$keys[10]]);
     }
     if (array_key_exists($keys[11], $arr)) {
         $this->setUpdatedAt($arr[$keys[11]]);
     }
 }