$new_login_data->setPasswordHashKey($user->getPasswordHashKey()); $new_login_data->setPasswordUpdatedAt($user->getPasswordUpdatedAt()); $new_login_data->setPreviousPasswords($user->getPreviousPasswords()); $new_login_data->setLastLoginPartnerId($user->getPartnerId()); // check for existing kusers for this admin_kuser $c = new Criteria(); $c->addAnd(kuserPeer::PUSER_ID, '__ADMIN__' . $user->getId(), Criteria::EQUAL); $c->addAnd(kuserPeer::PARTNER_ID, $user->getPartnerId(), Criteria::EQUAL); $existing_kuser = kuserPeer::doSelectOne($c); if ($existing_kuser) { $existing_kuser->setFirstName($firstName); $existing_kuser->setLastName($lastName); $existing_kuser->setEmail($user->getEmail()); $existing_kuser->setIsAdmin(true); } else { $new_kuser->setEmail($user->getEmail()); $new_kuser->setScreenName($user->getScreenName()); $new_kuser->setPartnerId($user->getPartnerId()); $new_kuser->setFirstName($firstName); $new_kuser->setLastName($lastName); $new_kuser->setStatus(KuserStatus::ACTIVE); $new_kuser->setIcon($user->getIcon()); $new_kuser->setPicture($user->getPicture()); $new_kuser->setPuserId('__ADMIN__' . $user->getId()); $new_kuser->setIsAdmin(true); if ($new_kuser->getPartnerId() == $admin_console_partner_id) { $partnerData = new Kaltura_AdminConsoleUserPartnerData(); $partnerData->isPrimary = null; $partnerData->role = null; $new_kuser->setPartnerData(serialize($partnerData)); }
private function createNewAdminKuser($newPartner, $existing_password) { // generate a new password if not given if ($existing_password != null) { $password = $existing_password; } else { $password = UserLoginDataPeer::generateNewPassword(); } // create the user $kuser = new kuser(); $kuser->setEmail($newPartner->getAdminEmail()); list($firstName, $lastName) = kString::nameSplit($newPartner->getAdminName()); $kuser->setFirstName($firstName); $kuser->setLastName($lastName); $kuser->setPartnerId($newPartner->getId()); $kuser->setIsAdmin(true); $kuser->setPuserId($newPartner->getAdminEmail()); $kuser = kuserPeer::addUser($kuser, $password, false, false); //this also saves the kuser and adds a user_login_data record $loginData = UserLoginDataPeer::retrieveByPK($kuser->getLoginDataId()); return array($password, $loginData->getPasswordHashKey(), $kuser->getId()); }