Example #1
0
 /**
  * This method Accepts user ID.
  * return 1 for successful deletion else returns 0.
  * 	 *
  * @param int user userid.
  * @return 1|0.
  */
 public static function delete($userId)
 {
     return UserSpecialistType::model()->deleteAll('user_id=:userId', array(':userId' => $userId));
 }
 public function actionUpdate()
 {
     Yii::beginProfile('specialist_update');
     $userId = Yii::app()->user->id;
     $modelCity = new UserSpecialistLocations();
     $model = SpecialistProfileApi::getSpecialistDetails($userId);
     if (!$model) {
         throw new CHttpException(404, 'The requested page does not exist.');
     }
     $image = $model->image;
     $specialistType = new UserSpecialistType();
     $specialistTypes = SpecialistTypeApi::getSpecialistTypeByUserId($userId);
     $specialists = "";
     if ($specialistTypes) {
         foreach ($specialistTypes as $types) {
             $specialists[] = $types->id;
         }
     }
     $locationCityIds = UserSpecialistLocationsApi::getLocations($model->id);
     $this->performAjaxValidation($model);
     if (isset($_POST['ajax']) && $_POST['ajax'] === 'specialist-form') {
         echo CActiveForm::validate($model);
         Yii::app()->end();
     }
     if (isset($_POST['submit'])) {
         $model->attributes = $_POST['UserSpecialistProfile'];
         $specialists = isset($_POST['specialist_type_id']) ? $_POST['specialist_type_id'] : null;
         $valid = true;
         $model->user_id = $userId;
         $valid = $valid && $model->validate();
         if ($specialists == null) {
             $specialistType->addError('specialist_type_id', 'Specialist Type cannot be blank.');
             $valid = false;
         }
         $specialist = "";
         if ($valid) {
             $data = $_POST['UserSpecialistProfile'];
             $data['image'] = $image;
             $imagePath = ImageUtils::uploadImage($model, 'image');
             if ($imagePath) {
                 $image = SpecialistApi::addImage($userId, $imagePath);
                 if ($image) {
                     $data['image'] = $image;
                     ImageUtils::deleteImage($imagePath);
                 }
             }
             $specialist = SpecialistProfileApi::updateProfileByUserId($userId, $data);
             SpecialistTypeApi::delete($userId);
             $specialists = SpecialistTypeApi::createSpecialistTypes($userId, $_POST['specialist_type_id']);
             UserSpecialistLocationsApi::deleteLocations($specialist->id);
             $locations = UserSpecialistLocationsApi::createLocations($specialist->id, $_POST['city_id']);
         }
         if ($specialist) {
             $data = array();
             $user = UserApi::getUserById(Yii::app()->user->id);
             $user ? $data["user"] = $user->id : null;
             $data["specialist"] = $specialist->id;
             EmailApi::sendEmail($user->email_id, "ACTIVITY.SPECIALIST.CREATE", $data);
             Yii::app()->user->setFlash('success', 'You are Successfully updated Specialist Profile.');
             $this->redirect('/specialist/' . $userId);
         }
     }
     $this->render('update', array('model' => $model, 'specialistType' => $specialistType, 'specialists' => $specialists, 'locationCityIds' => $locationCityIds, 'modelCity' => $modelCity));
     Yii::endProfile('specialist_update');
 }