to($data['User']['mail']); $Email->subject('Welcome to our really cool thing'); $Email->template('registration'); $key = substr($data['User']['code'],2); $Email->viewVars(array('data'=>$data,'key'=>$key)); return $Email->send(); } public function registration($data){ $dataSource = $this->getDataSource(); $dataSource->begin(); if($data['AppUser']['nickname']) $data['User']['nickname'] = $data['AppUser']['nickname']; else $data['AppUser']['nickname'] = $data['User']['nickname']; $data['User']['date_joined'] = date("Y-m-d H:i:s"); $this->User->create(array('User'=>$data['User'])); $result=$this->User->save(); if($result){ $data['User']['id']=$this->User->id; $data['AppUser']['user_id']=$this->User->id; $this->AppUser->create(array('AppUser'=>$data['AppUser'])); $result=$this->AppUser->save(); } if($result){ $data['AppUser']['id']=$this->AppUser->id; $data['DreamjobUser']['micapplication_ptr_id']=$this->AppUser->id; $this->DreamjobUser->create(array('DreamjobUser'=>$data['DreamjobUser'])); $result=$this->DreamjobUser->save(); } if($result){ $data['DreamjobCompany']['djaccount_ptr_id']=$this->AppUser->id; $this->create(array('DreamjobCompany'=>$data['DreamjobCompany'])); $result=$this->save(); } if($result) $result = self::sendMail($data); if ($result) { $dataSource->commit(); return true; } else { $dataSource->rollback(); } return false; } public function saveSettings($data){ $dataSource = $this->getDataSource(); $dataSource->begin(); $this->id = $data['AppUser']['id']; $this->User->id = $data['User']['id']; $this->AppUser->id = $data['AppUser']['id']; $this->DreamjobUser->id = $data['AppUser']['id']; $result = $this->User->saveField('password',$data['User']['password']); if($result) $result = $this->AppUser->saveField('nickname',$data['AppUser']['nickname']); if($result) $result = $this->AppUser->saveField('first_name',$data['AppUser']['first_name']); if($result) $result = $this->AppUser->saveField('last_name',$data['AppUser']['last_name']); if($result) $result = $this->AppUser->saveField('bday',$data['AppUser']['bday']); if($result) $result = $this->AppUser->saveField('mannerofaddress_id',$data['AppUser']['mannerofaddress_id']); if($result) $result = $this->DreamjobUser->saveField('street',$data['DreamjobUser']['street']); if($result) $result = $this->DreamjobUser->saveField('city_id',$data['DreamjobUser']['city_id']); if($result) $result = $this->DreamjobUser->saveField('postcode',$data['DreamjobUser']['postcode']); if($result) $result = $this->saveField('corporateform',$data['DreamjobCompany']['corporateform']); if($result) $result = $this->saveField('owner',$data['DreamjobCompany']['owner']); if($result) $result = $this->saveField('branch_id',$data['DreamjobCompany']['branch_id']); if($result) $result = $this->saveField('headcount',$data['DreamjobCompany']['headcount']); if($result) $result = $this->saveField('bank_details',$data['DreamjobCompany']['bank_details']); if($result) $result = $this->saveField('website',$data['DreamjobCompany']['website']); if($result) $result = $this->AppUser->saveField('take_systemwide',$data['AppUser']['take_systemwide']); if($result and $data['AppUser']['take_systemwide']){ $result = $this->User->saveField('nickname',$data['AppUser']['nickname']); if($result) $result = $this->User->saveField('first_name',$data['AppUser']['first_name']); if($result) $result = $this->User->saveField('last_name',$data['AppUser']['last_name']); if($result) $result = $this->User->saveField('bday',$data['AppUser']['bday']); if($result) $result = $this->User->saveField('mannerofaddress_id',$data['AppUser']['mannerofaddress_id']); } if ($result) { $dataSource->commit(); return true; } else { $dataSource->rollback(); } return false; } /** * Validation rules * * @var array */ public $validate = array( 'djaccount_ptr_id' => array( 'numeric' => array( 'rule' => array('numeric'), //'message' => 'Your custom message here', //'allowEmpty' => false, //'required' => false, //'last' => false, // Stop validation after this rule //'on' => 'create', // Limit validation to 'create' or 'update' operations ), 'multiple' => array( 'rule' => array('multiple'), //'message' => 'Your custom message here', //'allowEmpty' => false, //'required' => false, //'last' => false, // Stop validation after this rule //'on' => 'create', // Limit validation to 'create' or 'update' operations ), ), 'corporateform' => array( 'notEmpty' => array( 'rule' => array('notEmpty'), //'message' => 'Your custom message here', //'allowEmpty' => false, //'required' => false, //'last' => false, // Stop validation after this rule //'on' => 'create', // Limit validation to 'create' or 'update' operations ), ), 'owner' => array( 'notEmpty' => array( 'rule' => array('notEmpty'), //'message' => 'Your custom message here', //'allowEmpty' => false, //'required' => false, //'last' => false, // Stop validation after this rule //'on' => 'create', // Limit validation to 'create' or 'update' operations ), ), 'branch_id' => array( 'numeric' => array( 'rule' => array('numeric'), //'message' => 'Your custom message here', //'allowEmpty' => false, //'required' => false, //'last' => false, // Stop validation after this rule //'on' => 'create', // Limit validation to 'create' or 'update' operations ), ), 'pro_user' => array( 'numeric' => array( 'rule' => array('numeric'), //'message' => 'Your custom message here', //'allowEmpty' => false, //'required' => false, //'last' => false, // Stop validation after this rule //'on' => 'create', // Limit validation to 'create' or 'update' operations ), ), ); public $belongsTo = array( 'DreamjobListBranch' => array( 'className' => 'DreamjobListBranch', 'foreignKey' => 'branch_id', 'conditions' => '', 'fields' => '', 'order' => '' ), ); public $hasAndBelongsToMany = array( 'User' => array( 'className' => 'User', 'with' => 'AppUser', //'joinTable' => 'mic_sys_micapp', 'foreignKey' => 'id', 'associationForeignKey' => 'user_id', 'limit' => 1 ) ); public $hasOne = array( 'DreamjobUser' => array( 'className' => 'DreamjobUser', 'foreignKey' => 'micapplication_ptr_id' ), 'AppUser' => array( 'className' => 'AppUser', 'foreignKey' => 'id' ), 'User' => array( 'className' => 'User', 'foreignKey' => false, 'conditions' => array('DreamjobCompany.djaccount_ptr_id=AppUser.id and User.id = AppUser.user_id'), 'limit' => 1 ), 'DreamjobListCity' => array( 'className' => 'DreamjobListCity', 'foreignKey' => false, 'conditions' => array('DreamjobListCity.id=DreamjobUser.city_id'), 'limit' => 1 ) ); public $hasMany = array( 'DreamjobPageInh' => array( 'className' => 'DreamjobPageInh', 'foreignKey' => 'user_id', 'order' => "DreamjobPageInh.position" ), 'DreamjobJobOpening' => array( 'className' => 'DreamjobJobOpening', 'foreignKey' => 'company_id' ) ); }