/** Returns newly created puser - after creating it's corresponding kuser. If the puser_kuser already exists && $verify_not_exists==true , don't create a new one and return the existing one */ public static function createPuserKuser($partner_id, $subp_id, $puser_id, $kuser_name, $puser_name, $create_kuser = false, $kuser = null) { $puser_kuser = self::retrieveByPartnerAndUid($partner_id, $subp_id, $puser_id, true); if (!$kuser) { $kuser = kuserPeer::getKuserByPartnerAndUid($partner_id, $puser_id, true); // don't create an existing kuser! } if ($puser_kuser) { if (!$create_kuser) { // if the puser_kuser already exists - don't re-create it $puser_kuser->exists = true; return $puser_kuser; } else { // puser_kuser exists but it's OK // this might be the case where we don't mind creating a new one each time } } else { $puser_kuser = new PuserKuser(); } $c = new Criteria(); $c->add(self::PARTNER_ID, $partner_id); $c->add(self::PUSER_ID, $puser_id); $partner_puser_kuser = self::doSelectOne($c); if ($kuser !== null) { $kuser_id = $kuser->getId(); } else { if ($partner_puser_kuser) { $kuser_id = $partner_puser_kuser->getKuserId(); $kuser = kuserPeer::retrieveByPK($kuser_id); } else { // create kuser for this puser $kuser = new kuser(); $kuser->setScreenName($kuser_name); list($firstName, $lastName) = kString::nameSplit($kuser_name); $kuser->setFirstName($firstName); $kuser->setLastName($lastName); $kuser->setPartnerId($partner_id); // set puserId for forward compatibility with PS3 $kuser->setPuserId($puser_id); $kuser->setStatus(KuserStatus::ACTIVE); // so he won't appear in the search $kuser->save(); $kuser_id = $kuser->getId(); } } $puser_kuser->setPartnerId($partner_id); $puser_kuser->setSubpId($subp_id); $puser_kuser->setPuserId($puser_id); $puser_kuser->setKuserId($kuser_id); $puser_kuser->setPuserName($puser_name); $puser_kuser->save(); $puser_kuser->setkuser($kuser); return $puser_kuser; }
public static function createKvote($entryId, $partnerId, $puserId, $rank, $type = KVoteType::RANK) { $kvote = new kvote(); $kvote->setEntryId($entryId); $kvote->setStatus(KVoteStatus::VOTED); $kvote->setPartnerId($partnerId); $kvote->setKvoteType($type); $kuser = self::getKuserFromPuserAndPartner($puserId, $partnerId); if (!$kuser) { $kuser = new kuser(); $kuser->setPuserId($puserId); $kuser->setStatus(KuserStatus::ACTIVE); $kuser->save(); } $kvote->setKuserId($kuser->getId()); $kvote->setRank($rank); $kvote->save(); }
/** * Declares an association between this object and a kuser object. * * @param kuser $v * @return KuserToUserRole The current object (for fluent API support) * @throws PropelException */ public function setkuser(kuser $v = null) { if ($v === null) { $this->setKuserId(NULL); } else { $this->setKuserId($v->getId()); } $this->akuser = $v; // Add binding for other direction of this n:n relationship. // If this object has already been added to the kuser object, it will not be re-added. if ($v !== null) { $v->addKuserToUserRole($this); } return $this; }
public static function sendNewUserMailToAdmins(kuser $user) { $partnerId = $user->getPartnerId(); $creatorUserName = '******'; if (!is_null(kCurrentContext::$ks_uid)) { $creatorUser = kuserPeer::getKuserByPartnerAndUid($partnerId, kCurrentContext::$ks_uid); if ($creatorUser) { $creatorUserName = $creatorUser->getFullName(); } } $publisherName = PartnerPeer::retrieveByPK($partnerId)->getName(); $loginEmail = $user->getEmail(); $roleName = $user->getUserRoleNames(); $puserId = $user->getPuserId(); $bodyParams = null; $mailType = self::KALTURA_NEW_USER_EMAIL_TO_ADMINS; //If the new user partner is -2 (admin console) then it is a admin console user if ($partnerId == Partner::ADMIN_CONSOLE_PARTNER_ID) { $mailType = self::KALTURA_NEW_USER_ADMIN_CONSOLE_EMAIL_TO_ADMINS; } // get all partner administrators $c = new Criteria(); $c->addAnd(kuserPeer::IS_ADMIN, true, Criteria::EQUAL); $c->addAnd(kuserPeer::PARTNER_ID, $partnerId, Criteria::EQUAL); $adminKusers = kuserPeer::doSelect($c); foreach ($adminKusers as $admin) { // don't send mail to the created user if ($admin->getId() == $user->getId()) { continue; } // send email to all administrators with user management permissions if ($admin->hasPermissionOr(array(PermissionName::ADMIN_USER_ADD, PermissionName::ADMIN_USER_UPDATE, PermissionName::ADMIN_USER_DELETE))) { $adminName = $admin->getFullName(); if (!$adminName) { $adminName = $admin->getPuserId(); } $unsubscribeLink .= $admin->getEmail(); $bodyParams = null; if ($partnerId == Partner::ADMIN_CONSOLE_PARTNER_ID) { $bodyParams = array($adminName, $creatorUserName, $loginEmail, $roleName); } else { $bodyParams = array($adminName, $creatorUserName, $publisherName, $loginEmail, $publisherName, $roleName, $publisherName, $partnerId); } // add mail job kJobsManager::addMailJob(null, 0, $partnerId, $mailType, kMailJobData::MAIL_PRIORITY_NORMAL, kConf::get("partner_registration_confirmation_email"), kConf::get("partner_registration_confirmation_name"), $admin->getEmail(), $bodyParams); } } }
protected function kuserDelete(kuser $kuser) { $filter = new categoryKuserFilter(); $filter->setUserIdEqual($kuser->getPuserId()); $c = new Criteria(); $c->add(categoryKuserPeer::PUSER_ID, $kuser->getPuserId()); if (categoryKuserPeer::doSelectOne($c)) { kJobsManager::addDeleteJob($kuser->getPartnerId(), DeleteObjectType::CATEGORY_USER, $filter); } if ($kuser->getType() == KuserType::USER) { // remove user from groups KuserKgroupPeer::deleteByKuserId($kuser->getId()); } elseif ($kuser->getType() == KuserType::GROUP) { // remove users from group $filter = new KuserKgroupFilter(); $filter->setGroupIdEqual($kuser->getPuserId()); $c = new Criteria(); $c->add(KuserKgroupPeer::PGROUP_ID, $kuser->getPuserId()); if (KuserKgroupPeer::doSelectOne($c)) { kJobsManager::addDeleteJob($kuser->getPartnerId(), DeleteObjectType::GROUP_USER, $filter); } } }
private function getParams() { return 'adminKuser [' . $this->curId . '] kuser [' . @$this->kuser->getId() . '] loginData[' . @$this->loginData->getId() . ']'; }
/** * @return int */ public function getKuserId() { $this->getKuser(); if ($this->kuser) { return $this->kuser->getId(); } return null; }
/** * Adds an object to the instance pool. * * Propel keeps cached copies of objects in an instance pool when they are retrieved * from the database. In some cases -- especially when you override doSelect*() * methods in your stub classes -- you may need to explicitly add objects * to the cache in order to ensure that the same objects are always returned by doSelect*() * and retrieveByPK*() calls. * * @param kuser $value A kuser object. * @param string $key (optional) key to use for instance map (for performance boost if key was already calculated externally). */ public static function addInstanceToPool(kuser $obj, $key = null) { if (Propel::isInstancePoolingEnabled()) { if ($key === null) { $key = (string) $obj->getId(); } if (isset(self::$instances[$key]) || count(self::$instances) < kConf::get('max_num_instances_in_pool')) { self::$instances[$key] = $obj; kMemoryManager::registerPeer('kuserPeer'); } } }
/** * Adds an object to the instance pool. * * Propel keeps cached copies of objects in an instance pool when they are retrieved * from the database. In some cases -- especially when you override doSelect*() * methods in your stub classes -- you may need to explicitly add objects * to the cache in order to ensure that the same objects are always returned by doSelect*() * and retrieveByPK*() calls. * * @param kuser $value A kuser object. * @param string $key (optional) key to use for instance map (for performance boost if key was already calculated externally). */ public static function addInstanceToPool(kuser $obj, $key = null) { if (Propel::isInstancePoolingEnabled()) { if ($key === null) { $key = (string) $obj->getId(); } // if key === null self::$instances[$key] = $obj; } }