/** * 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'); }