/** * Retrieve all objects by kuser id * * @param int $kuserId the kuser id. * @param PropelPDO $con the connection to use * @return array<ShortLink> */ public static function retrieveByKuserId($kuserId, $partnerId = null, PropelPDO $con = null) { $criteria = new Criteria(); $criteria->add(ShortLinkPeer::KUSER_ID, $kuserId); if ($partnerId) { $criteria->add(ShortLinkPeer::PARTNER_ID, $partnerId); } return ShortLinkPeer::doSelect($criteria, $con); }
public function objectDeleted(BaseObject $object, BatchJob $raisedJob = null) { $shortLinks = ShortLinkPeer::retrieveByKuserId($object->getId()); foreach ($shortLinks as $shortLink) { $shortLink->setStatus(ShortLinkStatus::DELETED); $shortLink->save(); } return true; }
public function objectDeleted(BaseObject $object) { if ($object instanceof kuser) { $shortLinks = ShortLinkPeer::retrieveByKuserId($object->getId()); foreach ($shortLinks as $shortLink) { $shortLink->setStatus(ShortLinkStatus::DELETED); $shortLink->save(); } } }
protected function calculateId() { $allChars = '0123456789abcdefghijklmnopqrstuvwxyz'; $dcChars = str_split($allChars, strlen($allChars) / count(kDataCenterMgr::getAllDcs())); $dc = kDataCenterMgr::getCurrentDc(); $dcId = (int) $dc["id"]; $currentDcChars = $dcChars[$dcId]; for ($i = 0; $i < 10; $i++) { $dcChar = substr($currentDcChars, rand(0, strlen($currentDcChars) - 1), 1); if (!$dcChar) { $dcChar = '0'; } $id = $dcChar . kString::generateStringId(3); $existingObject = ShortLinkPeer::retrieveByPK($id); if ($existingObject) { KalturaLog::log("id [{$id}] already exists"); } else { return $id; } } throw new Exception("Could not find unique id for short link"); }
/** * Serves short link * * @action goto * @param string $id * @param bool $proxy proxy the response instead of redirect * @return file * * @throws KalturaErrors::INVALID_OBJECT_ID */ function gotoAction($id, $proxy = false) { KalturaResponseCacher::disableCache(); $dbShortLink = ShortLinkPeer::retrieveByPK($id); if (!$dbShortLink) { throw new KalturaAPIException(KalturaErrors::INVALID_OBJECT_ID, $id); } if ($proxy) { kFile::dumpUrl($dbShortLink->getFullUrl(), true, true); } header('Location: ' . $dbShortLink->getFullUrl()); die; }
public function getFieldNameFromPeer($field_name) { $res = ShortLinkPeer::translateFieldName($field_name, $this->field_name_translation_type, BasePeer::TYPE_COLNAME); return $res; }
public static function cleanMemory() { ShortLinkPeer::clearInstancePool(); }
/** * Retrieve multiple objects by pkey. * * @param array $pks List of primary keys * @param PropelPDO $con the connection to use * @throws PropelException Any exceptions caught during processing will be * rethrown wrapped into a PropelException. */ public static function retrieveByPKs($pks, PropelPDO $con = null) { $objs = null; if (empty($pks)) { $objs = array(); } else { $criteria = new Criteria(ShortLinkPeer::DATABASE_NAME); $criteria->add(ShortLinkPeer::ID, $pks, Criteria::IN); $objs = ShortLinkPeer::doSelect($criteria, $con); } return $objs; }
/** * Builds a Criteria object containing the primary key for this object. * * Unlike buildCriteria() this method includes the primary key values regardless * of whether or not they have been modified. * * @return Criteria The Criteria object containing value(s) for primary key(s). */ public function buildPkeyCriteria() { $criteria = new Criteria(ShortLinkPeer::DATABASE_NAME); $criteria->add(ShortLinkPeer::ID, $this->id); if ($this->alreadyInSave && count($this->modifiedColumns) == 2 && $this->isColumnModified(ShortLinkPeer::UPDATED_AT)) { $theModifiedColumn = null; foreach ($this->modifiedColumns as $modifiedColumn) { if ($modifiedColumn != ShortLinkPeer::UPDATED_AT) { $theModifiedColumn = $modifiedColumn; } } $atomicColumns = ShortLinkPeer::getAtomicColumns(); if (in_array($theModifiedColumn, $atomicColumns)) { $criteria->add($theModifiedColumn, $this->getByName($theModifiedColumn, BasePeer::TYPE_COLNAME), Criteria::NOT_EQUAL); } } return $criteria; }
/** * Populates the object using an array. * * This is particularly useful when populating an object from one of the * request arrays (e.g. $_POST). This method goes through the column * names, checking to see whether a matching key exists in populated * array. If so the setByName() method is called for that column. * * You can specify the key type of the array by additionally passing one * of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME, * BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM. * The default key type is the column's phpname (e.g. 'AuthorId') * * @param array $arr An array to populate the object from. * @param string $keyType The type of keys the array uses. * @return void */ public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME) { $keys = ShortLinkPeer::getFieldNames($keyType); if (array_key_exists($keys[0], $arr)) { $this->setId($arr[$keys[0]]); } if (array_key_exists($keys[1], $arr)) { $this->setIntId($arr[$keys[1]]); } if (array_key_exists($keys[2], $arr)) { $this->setCreatedAt($arr[$keys[2]]); } if (array_key_exists($keys[3], $arr)) { $this->setUpdatedAt($arr[$keys[3]]); } if (array_key_exists($keys[4], $arr)) { $this->setExpiresAt($arr[$keys[4]]); } if (array_key_exists($keys[5], $arr)) { $this->setPartnerId($arr[$keys[5]]); } if (array_key_exists($keys[6], $arr)) { $this->setKuserId($arr[$keys[6]]); } if (array_key_exists($keys[7], $arr)) { $this->setName($arr[$keys[7]]); } if (array_key_exists($keys[8], $arr)) { $this->setSystemName($arr[$keys[8]]); } if (array_key_exists($keys[9], $arr)) { $this->setFullUrl($arr[$keys[9]]); } if (array_key_exists($keys[10], $arr)) { $this->setStatus($arr[$keys[10]]); } }