/** * Will list out all kind of perspectives of entries */ public function execute() { $this->forceSystemAuthentication(); $conversion_count = $this->getRequestParameter("conv_count", 10); if ($conversion_count > 40) { $conversion_count = 40; } $c = new Criteria(); $c->addDescendingOrderByColumn(conversionPeer::ID); $c->setLimit($conversion_count); $this->conversions = conversionPeer::doSelect($c); $this->conversion_count = $conversion_count; /* $conv = new conversion(); $conv->setId(6); $conv->setinFileName ( "Dasd"); $conv->setStatus ( 1 ); $conv->setCreatedAt ( 1234545 ); $convs = array ( $conv ); $this->conversions = $convs; */ $import_count = $this->getRequestParameter("impo_count", 10); if ($import_count > 40) { $import_count = 40; } $c = new Criteria(); $c->addDescendingOrderByColumn(BatchJobPeer::ID); $c->setLimit($import_count); $this->imports = BatchJobPeer::doSelect($c); $this->import_count = $import_count; /* $batch= new BatchJob(); $batch->setId ( 4 ); $batch->setData ( 'a:3:{s:7:"entryId";i:11077;s:9:"sourceUrl";s:84:"http://youtube.com/get_video?video_id=KDko2MFvY-s&t=OEgsToPDskKuVircfOJDjTh4FENGwQ0g";s:8:"destFile";s:36:"/web//content/imports/data/11077.flv";}' ); $imports = array( $batch ); $this->imports = $imports; */ }
/** * 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(conversionPeer::DATABASE_NAME); $criteria->add(conversionPeer::ID, $pks, Criteria::IN); $objs = conversionPeer::doSelect($criteria, $con); } return $objs; }
/** * Returns the number of related conversion objects. * * @param Criteria $criteria * @param boolean $distinct * @param PropelPDO $con * @return int Count of related conversion objects. * @throws PropelException */ public function countconversions(Criteria $criteria = null, $distinct = false, PropelPDO $con = null) { if ($criteria === null) { $criteria = new Criteria(entryPeer::DATABASE_NAME); } else { $criteria = clone $criteria; } if ($distinct) { $criteria->setDistinct(); } $count = null; if ($this->collconversions === null) { if ($this->isNew()) { $count = 0; } else { $criteria->add(conversionPeer::ENTRY_ID, $this->id); $count = conversionPeer::doCount($criteria, false, $con); } } else { // criteria has no effect for a new object if (!$this->isNew()) { // the following code is to determine if a new query is // called for. If the criteria is the same as the last // one, just return count of the collection. $criteria->add(conversionPeer::ENTRY_ID, $this->id); if (!isset($this->lastconversionCriteria) || !$this->lastconversionCriteria->equals($criteria)) { $count = conversionPeer::doCount($criteria, false, $con); } else { $count = count($this->collconversions); } } else { $count = count($this->collconversions); } } return $count; }
/** * Will investigate a single entry */ public function execute() { $this->forceSystemAuthentication(); myDbHelper::$use_alternative_con = myDbHelper::DB_HELPER_CONN_PROPEL2; entryPeer::setUseCriteriaFilter(false); $this->result = NULL; $fast = $this->getRequestParameter("fast", "") != ""; $this->fast = $fast; $kshow_id = $this->getRequestParameter("kshow_id"); $this->kshow_id = $kshow_id; $this->kshow = NULL; $entry_id = $this->getRequestParameter("entry_id"); $this->entry_id = $entry_id; $this->entry = NULL; $this->error = $this->getRequestParameter("error"); $this->bg_entry = NULL; if (!empty($kshow_id)) { $c = new Criteria(); $c->add(kshowPeer::ID, $kshow_id); $kshows = kshowPeer::doSelect($c); $kshow = new kshow(); if (!$kshows) { $this->result = "No kshow [{$kshow_id}] in DB"; return; } $kshow_original = $kshows[0]; $kshow_original->getShowEntry(); // pre fetch $kshow_original->getIntro(); // pre fetch $this->kshow_original = $kshows[0]; $this->kshow = new genericObjectWrapper($this->kshow_original, true); $alredy_exist_entries = array(); $alredy_exist_entries[] = $kshow_original->getShowEntryId(); if ($kshow_original->getIntroId()) { $alredy_exist_entries[] = $kshow_original->getIntroId(); } $skin_obj = $this->kshow_original->getSkinObj(); $bg_entry_id = $skin_obj->get("bg_entry_id"); if ($bg_entry_id) { $alredy_exist_entries[] = $bg_entry_id; $this->bg_entry = new genericObjectWrapper(entryPeer::retrieveByPK($bg_entry_id), true); } $c = new Criteria(); $c->add(entryPeer::ID, $alredy_exist_entries, Criteria::NOT_IN); $c->setLimit(100); $this->kshow_entries = $this->kshow_original->getEntrysJoinKuser($c); return; //return "KshowSuccess"; } if (empty($entry_id)) { return; } entryPeer::setUseCriteriaFilter(false); // from entry table $c = new Criteria(); $c->add(entryPeer::ID, $entry_id); //$entries = entryPeer::doSelectJoinAll ( $c ); $entries = entryPeer::doSelect($c); if (!$entries) { $this->result = "No entry [{$entry_id}] in DB"; return; } $this->entry = new genericObjectWrapper($entries[0], true); // from conversion table $c = new Criteria(); $c->add(conversionPeer::ENTRY_ID, $entry_id); $original_conversions = conversionPeer::doSelect($c); //$this->conversions = array() ; // $this->conversions = $original_conversions; //new genericObjectWrapper( $original_conversions ); // find all relevant batches in DB // from batch_job table $c = new Criteria(); //$c->add ( BatchJobPeer::DATA , "%\"entryId\";i:" . $entry_id . ";%" , Criteria::LIKE ); $c->add(BatchJobPeer::ENTRY_ID, $entry_id); $original_batch_jobs = BatchJobPeer::doSelect($c); $this->batch_jobs = $original_batch_jobs; // new genericObjectWrapper( $original_batch_jobs ); // use this as a refernece of all the directories // myBatchFileConverterServer::init( true ); $entry_patttern = "/" . $entry_id . "\\..*/"; $getFileData_method = array('kFile', 'getFileData'); $getFileDataWithContent_method = array('kFile', 'getFileDataWithContent'); // find all relevant files on disk $c = new Criteria(); $c->add(FileSyncPeer::OBJECT_TYPE, FileSyncObjectType::ENTRY); $c->add(FileSyncPeer::OBJECT_ID, $entry_id); // order by OBJECT SUB TYPE $c->addAscendingOrderByColumn(FileSyncPeer::OBJECT_SUB_TYPE); $this->file_syncs = FileSyncPeer::doSelect($c); $file_sync_links = array(); $flavors = assetPeer::retrieveFlavorsByEntryId($entry_id); $flavor_ids = array(); $this->flavors = array(); foreach ($flavors as $f) { $flavor_ids[] = $f->getId(); $f->getflavorParamsOutputs(); $f->getflavorParams(); $f->getmediaInfos(); $this->flavors[] = $f; } // find all relevant files on disk $c = new Criteria(); $c->add(FileSyncPeer::OBJECT_TYPE, FileSyncObjectType::FLAVOR_ASSET); $c->add(FileSyncPeer::OBJECT_ID, $flavor_ids, Criteria::IN); // order by OBJECT SUB TYPE $c->addAscendingOrderByColumn(FileSyncPeer::OBJECT_SUB_TYPE); $flavors_file_syncs = FileSyncPeer::doSelect($c); $this->flavors_file_syncs = array(); foreach ($flavors as $flav) { foreach ($flavors_file_syncs as $f) { if ($f->getLinkedId()) { $file_sync_links[] = $f->getLinkedId(); } if ($f->getObjectId() == $flav->getId()) { $this->flavors_file_syncs[$flav->getId()][] = $f; } } } if ($this->file_syncs) { $this->file_syncs_by_sub_type = array(); foreach ($this->file_syncs as $fs) { if ($fs->getLinkedId()) { $file_sync_links[] = $fs->getLinkedId(); } $sub_type = $fs->getObjectSubType(); if (!isset($this->file_syncs_by_sub_type[$sub_type])) { // create the array $this->file_syncs_by_sub_type[$sub_type] = array(); } $this->file_syncs_by_sub_type[$sub_type][] = $fs; } } else { $this->file_syncs_by_sub_type = array(); } $file_sync_criteria = new Criteria(); $file_sync_criteria->add(FileSyncPeer::ID, $file_sync_links, Criteria::IN); $this->file_sync_links = FileSyncPeer::doSelect($file_sync_criteria); $track_entry_c = new Criteria(); $track_entry_c->add(TrackEntryPeer::ENTRY_ID, $entry_id); $track_entry_list = TrackEntryPeer::doSelect($track_entry_c); $more_interesting_track_entries = array(); foreach ($track_entry_list as $track_entry) { if ($track_entry->getTrackEventTypeId() == TrackEntry::TRACK_ENTRY_EVENT_TYPE_ADD_ENTRY) { $more_interesting_track_entries[] = $track_entry->getParam3Str(); } } $track_entry_list2 = array(); //very heavy query, skip this /* // add all the track_entry objects that are related (joined on PARAM_3_STR) $track_entry_c2 = new Criteria(); $track_entry_c2->add ( TrackEntryPeer::TRACK_EVENT_TYPE_ID , TrackEntry::TRACK_ENTRY_EVENT_TYPE_UPLOADED_FILE ); $track_entry_c2->add ( TrackEntryPeer::PARAM_3_STR , $more_interesting_track_entries , Criteria::IN ); $track_entry_list2 = TrackEntryPeer::doSelect ( $track_entry_c2 ); */ // first add the TRACK_ENTRY_EVENT_TYPE_UPLOADED_FILE - they most probably happend before the rest $this->track_entry_list = array_merge($track_entry_list2, $track_entry_list); }
protected function updateConversionInDb(entry $entry, kConversionResult $conv_res) { try { $c = new Criteria(); $entry_id = $entry->getId(); $c->add(conversionPeer::ENTRY_ID, $entry_id); // theoretically there can be more than one entry - fetch the last one which is in a non-complet status // assuming only one can be in such a status per entry $c->add(conversionPeer::STATUS, conversion::CONVERSION_STATUS_COMPLETED, Criteria::NOT_EQUAL); $c->addDescendingOrderByColumn(conversionPeer::ID); $conversion = conversionPeer::doSelectOne($c); if ($conversion) { $end = time(); //$tParsedTime = strtotime($sGMTMySqlString . " GMT"); $start = $conversion->getCreatedAt(null); //$start = (int)strtotime($raw_start . " GMT"); $conversion->setTotalProcessTime($end - $start); $info = $conv_res->getResultInfo(); if ($info) { $params = ""; $time = 0; foreach ($info as $info_for_conversion) { $params .= "[" . $info_for_conversion->engine . "] : " . $info_for_conversion->conv_params_name . " | " . $info_for_conversion->conv_str . " | "; if (is_numeric($info_for_conversion->duration)) { $time += $info_for_conversion->duration; } // increment the duration } list($name1, $size1) = $this->getNameAndSizeFromInfo($info, 0); @(list($name2, $size2) = $this->getNameAndSizeFromInfo($info, 1)); $conversion->setOutFileName($name1); $conversion->setOutFileSize($size1); $conversion->setOutFileName2($name2); $conversion->setOutFileSize2($size2); $conversion->setConversionParams($params); $conversion->setConversionTime($time); } if ($conv_res->status_ok == true) { $conversion->setStatus(conversion::CONVERSION_STATUS_COMPLETED); } else { $conversion->setStatus(conversion::CONVERSION_STATUS_ERROR); } $conversion->save(); } else { KalturaLog::debug("Cannot find conversion details for entry {$entry_id}"); } } catch (Exception $ex) { KalturaLog::debug("Error reporting conversion details to DB (part II) " . $ex->getTraceAsString()); } }
/** * 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(conversionPeer::DATABASE_NAME); $criteria->add(conversionPeer::ID, $this->id); if ($this->alreadyInSave && count($this->modifiedColumns) == 2 && $this->isColumnModified(conversionPeer::UPDATED_AT)) { $theModifiedColumn = null; foreach ($this->modifiedColumns as $modifiedColumn) { if ($modifiedColumn != conversionPeer::UPDATED_AT) { $theModifiedColumn = $modifiedColumn; } } $atomicColumns = conversionPeer::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 = conversionPeer::getFieldNames($keyType); if (array_key_exists($keys[0], $arr)) { $this->setId($arr[$keys[0]]); } if (array_key_exists($keys[1], $arr)) { $this->setEntryId($arr[$keys[1]]); } if (array_key_exists($keys[2], $arr)) { $this->setInFileName($arr[$keys[2]]); } if (array_key_exists($keys[3], $arr)) { $this->setInFileExt($arr[$keys[3]]); } if (array_key_exists($keys[4], $arr)) { $this->setInFileSize($arr[$keys[4]]); } if (array_key_exists($keys[5], $arr)) { $this->setSource($arr[$keys[5]]); } if (array_key_exists($keys[6], $arr)) { $this->setStatus($arr[$keys[6]]); } if (array_key_exists($keys[7], $arr)) { $this->setConversionParams($arr[$keys[7]]); } if (array_key_exists($keys[8], $arr)) { $this->setOutFileName($arr[$keys[8]]); } if (array_key_exists($keys[9], $arr)) { $this->setOutFileSize($arr[$keys[9]]); } if (array_key_exists($keys[10], $arr)) { $this->setOutFileName2($arr[$keys[10]]); } if (array_key_exists($keys[11], $arr)) { $this->setOutFileSize2($arr[$keys[11]]); } if (array_key_exists($keys[12], $arr)) { $this->setConversionTime($arr[$keys[12]]); } if (array_key_exists($keys[13], $arr)) { $this->setTotalProcessTime($arr[$keys[13]]); } if (array_key_exists($keys[14], $arr)) { $this->setCreatedAt($arr[$keys[14]]); } if (array_key_exists($keys[15], $arr)) { $this->setUpdatedAt($arr[$keys[15]]); } }