Ejemplo n.º 1
0
 /**
  * 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;
 }
Ejemplo n.º 3
0
 /**
  * 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());
     }
 }
Ejemplo n.º 6
0
 /**
  * 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;
 }
Ejemplo n.º 7
0
 /**
  * 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]]);
     }
 }