public function executeImpl($partner_id, $subp_id, $puser_id, $partner_prefix, $puser_kuser) { defPartnerservices2baseAction::disableCache(); $email = trim($this->getPM("adminKuser_email")); $new_email = trim($this->getP("new_email")); $old_password = trim($this->getPM("adminKuser_password", null)); $password = trim($this->getPM("new_password", null)); if ($new_email) { if (!kString::isEmailString($new_email)) { $f_name = "new_email"; $this->addException(APIErrors::INVALID_FIELD_VALUE, $f_name); } } try { UserLoginDataPeer::updateLoginData($email, $old_password, $new_email, $password); } catch (kUserException $e) { $code = $e->getCode(); if ($code == kUserException::LOGIN_DATA_NOT_FOUND) { $this->addException(APIErrors::ADMIN_KUSER_NOT_FOUND); return null; } if ($code == kUserException::WRONG_PASSWORD) { $this->addException(APIErrors::ADMIN_KUSER_WRONG_OLD_PASSWORD); return null; } if ($code == kUserException::PASSWORD_STRUCTURE_INVALID) { $this->addException(APIErrors::PASSWORD_STRUCTURE_INVALID); return null; } if ($code == kUserException::PASSWORD_ALREADY_USED) { $this->addException(APIErrors::PASSWORD_ALREADY_USED); return null; } if ($code == kUserException::INVALID_EMAIL) { $this->addException(APIErrors::INVALID_FIELD_VALUE, 'new_email'); return null; } if ($code == kUserException::LOGIN_ID_ALREADY_USED) { $this->addException(APIErrors::LOGIN_ID_ALREADY_USED); return null; } throw $e; } if ($new_email) { $this->addMsg("new_email", $new_email); } $this->addMsg("new_password", $password); }
/** * Update admin user password and email * * @param string $email * @param string $password * @param string $newEmail Optional, provide only when you want to update the email * @param string $newPassword * * @throws KalturaErrors::INVALID_FIELD_VALUE * @throws KalturaErrors::LOGIN_DATA_NOT_FOUND * @throws KalturaErrors::WRONG_OLD_PASSWORD * @throws KalturaErrors::PASSWORD_STRUCTURE_INVALID * @throws KalturaErrors::PASSWORD_ALREADY_USED * @throws KalturaErrors::LOGIN_ID_ALREADY_USED */ protected function updateLoginDataImpl($email, $password, $newEmail = "", $newPassword = "", $newFirstName, $newLastName) { KalturaResponseCacher::disableCache(); $this->validateApiAccessControlByEmail($email); if ($newEmail != "") { if (!kString::isEmailString($newEmail)) { throw new KalturaAPIException(KalturaErrors::INVALID_FIELD_VALUE, "newEmail"); } } try { UserLoginDataPeer::updateLoginData($email, $password, $newEmail, $newPassword, $newFirstName, $newLastName); } catch (kUserException $e) { $code = $e->getCode(); if ($code == kUserException::LOGIN_DATA_NOT_FOUND) { throw new KalturaAPIException(KalturaErrors::LOGIN_DATA_NOT_FOUND); } else { if ($code == kUserException::WRONG_PASSWORD) { if ($password == $newPassword) { throw new KalturaAPIException(KalturaErrors::USER_WRONG_PASSWORD); } else { throw new KalturaAPIException(KalturaErrors::WRONG_OLD_PASSWORD); } } else { if ($code == kUserException::PASSWORD_STRUCTURE_INVALID) { $c = new Criteria(); $c->add(UserLoginDataPeer::LOGIN_EMAIL, $email); $loginData = UserLoginDataPeer::doSelectOne($c); $invalidPasswordStructureMessage = $loginData->getInvalidPasswordStructureMessage(); throw new KalturaAPIException(KalturaErrors::PASSWORD_STRUCTURE_INVALID, $invalidPasswordStructureMessage); } else { if ($code == kUserException::PASSWORD_ALREADY_USED) { throw new KalturaAPIException(KalturaErrors::PASSWORD_ALREADY_USED); } else { if ($code == kUserException::INVALID_EMAIL) { throw new KalturaAPIException(KalturaErrors::INVALID_FIELD_VALUE, 'email'); } else { if ($code == kUserException::LOGIN_ID_ALREADY_USED) { throw new KalturaAPIException(KalturaErrors::LOGIN_ID_ALREADY_USED); } } } } } } throw $e; } }
/** * Update admin user password and email * * @param string $email * @param string $password * @param string $newEmail Optional, provide only when you want to update the email * @param string $newPassword * * @throws KalturaErrors::INVALID_FIELD_VALUE * @throws KalturaErrors::LOGIN_DATA_NOT_FOUND * @throws KalturaErrors::WRONG_OLD_PASSWORD * @throws KalturaErrors::PASSWORD_STRUCTURE_INVALID * @throws KalturaErrors::PASSWORD_ALREADY_USED * @throws KalturaErrors::INVALID_FIELD_VALUE * @throws KalturaErrors::LOGIN_ID_ALREADY_USED */ protected function updateLoginDataImpl($email, $password, $newEmail = "", $newPassword = "", $newFirstName, $newLastName) { KalturaResponseCacher::disableCache(); if ($newEmail != "") { if (!kString::isEmailString($newEmail)) { throw new KalturaAPIException(KalturaErrors::INVALID_FIELD_VALUE, "newEmail"); } } try { UserLoginDataPeer::updateLoginData($email, $password, $newEmail, $newPassword, $newFirstName, $newLastName); } catch (kUserException $e) { $code = $e->getCode(); if ($code == kUserException::LOGIN_DATA_NOT_FOUND) { throw new KalturaAPIException(KalturaErrors::LOGIN_DATA_NOT_FOUND); } else { if ($code == kUserException::WRONG_PASSWORD) { if ($password == $newPassword) { throw new KalturaAPIException(KalturaErrors::USER_WRONG_PASSWORD); } else { throw new KalturaAPIException(KalturaErrors::WRONG_OLD_PASSWORD); } } else { if ($code == kUserException::PASSWORD_STRUCTURE_INVALID) { throw new KalturaAPIException(KalturaErrors::PASSWORD_STRUCTURE_INVALID); } else { if ($code == kUserException::PASSWORD_ALREADY_USED) { throw new KalturaAPIException(KalturaErrors::PASSWORD_ALREADY_USED); } else { if ($code == kUserException::INVALID_EMAIL) { throw new KalturaAPIException(KalturaErrors::INVALID_FIELD_VALUE, 'email'); } else { if ($code == kUserException::LOGIN_ID_ALREADY_USED) { throw new KalturaAPIException(KalturaErrors::LOGIN_ID_ALREADY_USED); } } } } } } throw $e; } }
private function updateLoginData($email, $password, $newEmail = "", $newPassword = "", $newFirstName = null, $newLastName = null) { if ($newEmail != "") { if (!kString::isEmailString($newEmail)) { throw new KalturaLoginDataException(APIErrors::INVALID_FIELD_VALUE, "newEmail"); } } try { UserLoginDataPeer::updateLoginData($email, $password, $newEmail, $newPassword, $newFirstName, $newLastName); } catch (kUserException $e) { $code = $e->getCode(); if ($code == kUserException::LOGIN_DATA_NOT_FOUND) { throw new KalturaLoginDataException(APIErrors::LOGIN_DATA_NOT_FOUND); } else { if ($code == kUserException::WRONG_PASSWORD) { if ($password == $newPassword) { throw new KalturaLoginDataException(APIErrors::USER_WRONG_PASSWORD); } else { throw new KalturaLoginDataException(APIErrors::WRONG_OLD_PASSWORD); } } else { if ($code == kUserException::PASSWORD_STRUCTURE_INVALID) { $c = new Criteria(); $c->add(UserLoginDataPeer::LOGIN_EMAIL, $email); $loginData = UserLoginDataPeer::doSelectOne($c); $invalidPasswordStructureMessage = $loginData->getInvalidPasswordStructureMessage(); $invalidPasswordStructureMessage = str_replace('\\n', "\n", $invalidPasswordStructureMessage); throw new KalturaLoginDataException(APIErrors::PASSWORD_STRUCTURE_INVALID, $invalidPasswordStructureMessage); } else { if ($code == kUserException::PASSWORD_ALREADY_USED) { throw new KalturaLoginDataException(APIErrors::PASSWORD_ALREADY_USED); } else { if ($code == kUserException::INVALID_EMAIL) { throw new KalturaLoginDataException(APIErrors::INVALID_FIELD_VALUE, 'email'); } else { if ($code == kUserException::LOGIN_ID_ALREADY_USED) { throw new KalturaLoginDataException(APIErrors::LOGIN_ID_ALREADY_USED); } } } } } } throw $e; } }