CC-1665: Scheduled stream rebroadcasting and recording
-Webstreams now appearing in the library
This commit is contained in:
parent
d0e4ad1334
commit
a16a1f5033
16 changed files with 2508 additions and 11 deletions
|
@ -176,4 +176,11 @@ return array (
|
||||||
'BaseCcLiveLogPeer' => 'airtime/om/BaseCcLiveLogPeer.php',
|
'BaseCcLiveLogPeer' => 'airtime/om/BaseCcLiveLogPeer.php',
|
||||||
'BaseCcLiveLog' => 'airtime/om/BaseCcLiveLog.php',
|
'BaseCcLiveLog' => 'airtime/om/BaseCcLiveLog.php',
|
||||||
'BaseCcLiveLogQuery' => 'airtime/om/BaseCcLiveLogQuery.php',
|
'BaseCcLiveLogQuery' => 'airtime/om/BaseCcLiveLogQuery.php',
|
||||||
|
'CcWebstreamTableMap' => 'airtime/map/CcWebstreamTableMap.php',
|
||||||
|
'CcWebstreamPeer' => 'airtime/CcWebstreamPeer.php',
|
||||||
|
'CcWebstream' => 'airtime/CcWebstream.php',
|
||||||
|
'CcWebstreamQuery' => 'airtime/CcWebstreamQuery.php',
|
||||||
|
'BaseCcWebstreamPeer' => 'airtime/om/BaseCcWebstreamPeer.php',
|
||||||
|
'BaseCcWebstream' => 'airtime/om/BaseCcWebstream.php',
|
||||||
|
'BaseCcWebstreamQuery' => 'airtime/om/BaseCcWebstreamQuery.php',
|
||||||
);
|
);
|
|
@ -6,6 +6,7 @@ class WebstreamController extends Zend_Controller_Action
|
||||||
{
|
{
|
||||||
$ajaxContext = $this->_helper->getHelper('AjaxContext');
|
$ajaxContext = $this->_helper->getHelper('AjaxContext');
|
||||||
$ajaxContext->addActionContext('new', 'json')
|
$ajaxContext->addActionContext('new', 'json')
|
||||||
|
->addActionContext('save', 'json')
|
||||||
->initContext();
|
->initContext();
|
||||||
//TODO
|
//TODO
|
||||||
//$this->pl_sess = new Zend_Session_Namespace(UI_PLAYLIST_SESSNAME);
|
//$this->pl_sess = new Zend_Session_Namespace(UI_PLAYLIST_SESSNAME);
|
||||||
|
@ -27,4 +28,20 @@ class WebstreamController extends Zend_Controller_Action
|
||||||
$this->createFullResponse($pl);
|
$this->createFullResponse($pl);
|
||||||
*/
|
*/
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
public function saveAction(){
|
||||||
|
$request = $this->getRequest();
|
||||||
|
|
||||||
|
Application_Model_Webstream::save($request);
|
||||||
|
|
||||||
|
|
||||||
|
$this->view->x = "hi";
|
||||||
|
|
||||||
|
|
||||||
|
//http://localhost/Library/contents-feed
|
||||||
|
// 1) Create Propel object and save these parameters
|
||||||
|
// 2) Make these appear in the library
|
||||||
|
// 3) Make Web streams + playlists draggable.
|
||||||
|
// 4)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -650,58 +650,69 @@ Logging::log("getting media! - 2");
|
||||||
$plSelect = array();
|
$plSelect = array();
|
||||||
$blSelect = array();
|
$blSelect = array();
|
||||||
$fileSelect = array();
|
$fileSelect = array();
|
||||||
|
$streamSelect = array();
|
||||||
foreach ($displayColumns as $key) {
|
foreach ($displayColumns as $key) {
|
||||||
|
|
||||||
if ($key === "id") {
|
if ($key === "id") {
|
||||||
$plSelect[] = "PL.id AS ".$key;
|
$plSelect[] = "PL.id AS ".$key;
|
||||||
$blSelect[] = "BL.id AS ".$key;
|
$blSelect[] = "BL.id AS ".$key;
|
||||||
$fileSelect[] = $key;
|
$fileSelect[] = $key;
|
||||||
|
$streamSelect[] = $key;
|
||||||
} elseif ($key === "track_title") {
|
} elseif ($key === "track_title") {
|
||||||
$plSelect[] = "name AS ".$key;
|
$plSelect[] = "name AS ".$key;
|
||||||
$blSelect[] = "name AS ".$key;
|
$blSelect[] = "name AS ".$key;
|
||||||
$fileSelect[] = $key;
|
$fileSelect[] = $key;
|
||||||
|
$streamSelect[] = "name AS ".$key;
|
||||||
} elseif ($key === "ftype") {
|
} elseif ($key === "ftype") {
|
||||||
$plSelect[] = "'playlist'::varchar AS ".$key;
|
$plSelect[] = "'playlist'::varchar AS ".$key;
|
||||||
$blSelect[] = "'block'::varchar AS ".$key;
|
$blSelect[] = "'block'::varchar AS ".$key;
|
||||||
$fileSelect[] = $key;
|
$fileSelect[] = $key;
|
||||||
|
$streamSelect[] = "'stream'::varchar AS ".$key;
|
||||||
} elseif ($key === "artist_name") {
|
} elseif ($key === "artist_name") {
|
||||||
$plSelect[] = "login AS ".$key;
|
$plSelect[] = "login AS ".$key;
|
||||||
$blSelect[] = "login AS ".$key;
|
$blSelect[] = "login AS ".$key;
|
||||||
$fileSelect[] = $key;
|
$fileSelect[] = $key;
|
||||||
|
$plSelect[] = "login AS ".$key;
|
||||||
|
$streamSelect[] = "login AS ".$key;
|
||||||
}
|
}
|
||||||
//same columns in each table.
|
//same columns in each table.
|
||||||
else if (in_array($key, array("length", "utime", "mtime"))) {
|
else if (in_array($key, array("length", "utime", "mtime"))) {
|
||||||
$plSelect[] = $key;
|
$plSelect[] = $key;
|
||||||
$blSelect[] = $key;
|
$blSelect[] = $key;
|
||||||
$fileSelect[] = $key;
|
$fileSelect[] = $key;
|
||||||
|
$streamSelect[] = $key;
|
||||||
} elseif ($key === "year") {
|
} elseif ($key === "year") {
|
||||||
|
|
||||||
$plSelect[] = "EXTRACT(YEAR FROM utime)::varchar AS ".$key;
|
$plSelect[] = "EXTRACT(YEAR FROM utime)::varchar AS ".$key;
|
||||||
$blSelect[] = "EXTRACT(YEAR FROM utime)::varchar AS ".$key;
|
$blSelect[] = "EXTRACT(YEAR FROM utime)::varchar AS ".$key;
|
||||||
$fileSelect[] = "year AS ".$key;
|
$fileSelect[] = "year AS ".$key;
|
||||||
|
$streamSelect[] = "EXTRACT(YEAR FROM utime)::varchar AS ".$key;
|
||||||
}
|
}
|
||||||
//need to cast certain data as ints for the union to search on.
|
//need to cast certain data as ints for the union to search on.
|
||||||
else if (in_array($key, array("track_number", "bit_rate", "sample_rate"))) {
|
else if (in_array($key, array("track_number", "bit_rate", "sample_rate"))) {
|
||||||
$plSelect[] = "NULL::int AS ".$key;
|
$plSelect[] = "NULL::int AS ".$key;
|
||||||
$blSelect[] = "NULL::int AS ".$key;
|
$blSelect[] = "NULL::int AS ".$key;
|
||||||
$fileSelect[] = $key;
|
$fileSelect[] = $key;
|
||||||
|
$streamSelect[] = "NULL::int AS ".$key;
|
||||||
} else {
|
} else {
|
||||||
$plSelect[] = "NULL::text AS ".$key;
|
$plSelect[] = "NULL::text AS ".$key;
|
||||||
$blSelect[] = "NULL::text AS ".$key;
|
$blSelect[] = "NULL::text AS ".$key;
|
||||||
$fileSelect[] = $key;
|
$fileSelect[] = $key;
|
||||||
|
$streamSelect[] = "NULL::text AS ".$key;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$plSelect = "SELECT ". join(",", $plSelect);
|
$plSelect = "SELECT ". join(",", $plSelect);
|
||||||
$blSelect = "SELECT ". join(",", $blSelect);
|
$blSelect = "SELECT ". join(",", $blSelect);
|
||||||
$fileSelect = "SELECT ". join(",", $fileSelect);
|
$fileSelect = "SELECT ". join(",", $fileSelect);
|
||||||
|
$streamSelect = "SELECT ". join(",", $streamSelect);
|
||||||
|
|
||||||
$type = intval($datatables["type"]);
|
$type = intval($datatables["type"]);
|
||||||
|
|
||||||
$plTable = "({$plSelect} FROM cc_playlist AS PL LEFT JOIN cc_subjs AS sub ON (sub.id = PL.creator_id))";
|
$plTable = "({$plSelect} FROM cc_playlist AS PL LEFT JOIN cc_subjs AS sub ON (sub.id = PL.creator_id))";
|
||||||
$blTable = "({$blSelect} FROM cc_block AS BL LEFT JOIN cc_subjs AS sub ON (sub.id = BL.creator_id))";
|
$blTable = "({$blSelect} FROM cc_block AS BL LEFT JOIN cc_subjs AS sub ON (sub.id = BL.creator_id))";
|
||||||
$fileTable = "({$fileSelect} FROM cc_files AS FILES WHERE file_exists = 'TRUE')";
|
$fileTable = "({$fileSelect} FROM cc_files AS FILES WHERE file_exists = 'TRUE')";
|
||||||
$unionTable = "({$plTable} UNION {$blTable} UNION {$fileTable} ) AS RESULTS";
|
$streamTable = "({$streamSelect} FROM cc_webstream AS WEBSTREAM)";
|
||||||
|
$unionTable = "({$plTable} UNION {$blTable} UNION {$fileTable} UNION {$streamTable}) AS RESULTS";
|
||||||
|
|
||||||
//choose which table we need to select data from.
|
//choose which table we need to select data from.
|
||||||
switch ($type) {
|
switch ($type) {
|
||||||
|
|
|
@ -21,4 +21,17 @@ class Application_Model_Webstream{
|
||||||
public static function getDescription(){
|
public static function getDescription(){
|
||||||
return "desc";
|
return "desc";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function save($request){
|
||||||
|
Logging::log($request->getParams());
|
||||||
|
$webstream = new CcWebstream();
|
||||||
|
$webstream->setDbName($request->getParam("name"));
|
||||||
|
$webstream->setDbDescription($request->getParam("description"));
|
||||||
|
$webstream->setDbUrl($request->getParam("url"));
|
||||||
|
$webstream->setDbLength("00:05:00");
|
||||||
|
$webstream->setDbLogin("xxx");
|
||||||
|
$webstream->setDbUtime(new DateTime());
|
||||||
|
$webstream->setDbMtime(new DateTime());
|
||||||
|
$webstream->save();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
18
airtime_mvc/application/models/airtime/CcWebstream.php
Normal file
18
airtime_mvc/application/models/airtime/CcWebstream.php
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Skeleton subclass for representing a row from the 'cc_webstream' table.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* You should add additional methods to this class to meet the
|
||||||
|
* application requirements. This class will only be generated as
|
||||||
|
* long as it does not already exist in the output directory.
|
||||||
|
*
|
||||||
|
* @package propel.generator.airtime
|
||||||
|
*/
|
||||||
|
class CcWebstream extends BaseCcWebstream {
|
||||||
|
|
||||||
|
} // CcWebstream
|
18
airtime_mvc/application/models/airtime/CcWebstreamPeer.php
Normal file
18
airtime_mvc/application/models/airtime/CcWebstreamPeer.php
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Skeleton subclass for performing query and update operations on the 'cc_webstream' table.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* You should add additional methods to this class to meet the
|
||||||
|
* application requirements. This class will only be generated as
|
||||||
|
* long as it does not already exist in the output directory.
|
||||||
|
*
|
||||||
|
* @package propel.generator.airtime
|
||||||
|
*/
|
||||||
|
class CcWebstreamPeer extends BaseCcWebstreamPeer {
|
||||||
|
|
||||||
|
} // CcWebstreamPeer
|
18
airtime_mvc/application/models/airtime/CcWebstreamQuery.php
Normal file
18
airtime_mvc/application/models/airtime/CcWebstreamQuery.php
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Skeleton subclass for performing query and update operations on the 'cc_webstream' table.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* You should add additional methods to this class to meet the
|
||||||
|
* application requirements. This class will only be generated as
|
||||||
|
* long as it does not already exist in the output directory.
|
||||||
|
*
|
||||||
|
* @package propel.generator.airtime
|
||||||
|
*/
|
||||||
|
class CcWebstreamQuery extends BaseCcWebstreamQuery {
|
||||||
|
|
||||||
|
} // CcWebstreamQuery
|
|
@ -0,0 +1,59 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class defines the structure of the 'cc_webstream' table.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* This map class is used by Propel to do runtime db structure discovery.
|
||||||
|
* For example, the createSelectSql() method checks the type of a given column used in an
|
||||||
|
* ORDER BY clause to know whether it needs to apply SQL to make the ORDER BY case-insensitive
|
||||||
|
* (i.e. if it's a text column type).
|
||||||
|
*
|
||||||
|
* @package propel.generator.airtime.map
|
||||||
|
*/
|
||||||
|
class CcWebstreamTableMap extends TableMap {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The (dot-path) name of this class
|
||||||
|
*/
|
||||||
|
const CLASS_NAME = 'airtime.map.CcWebstreamTableMap';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initialize the table attributes, columns and validators
|
||||||
|
* Relations are not initialized by this method since they are lazy loaded
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
* @throws PropelException
|
||||||
|
*/
|
||||||
|
public function initialize()
|
||||||
|
{
|
||||||
|
// attributes
|
||||||
|
$this->setName('cc_webstream');
|
||||||
|
$this->setPhpName('CcWebstream');
|
||||||
|
$this->setClassname('CcWebstream');
|
||||||
|
$this->setPackage('airtime');
|
||||||
|
$this->setUseIdGenerator(true);
|
||||||
|
$this->setPrimaryKeyMethodInfo('cc_webstream_id_seq');
|
||||||
|
// columns
|
||||||
|
$this->addPrimaryKey('ID', 'DbId', 'INTEGER', true, null, null);
|
||||||
|
$this->addColumn('NAME', 'DbName', 'VARCHAR', true, 255, null);
|
||||||
|
$this->addColumn('DESCRIPTION', 'DbDescription', 'VARCHAR', true, 255, null);
|
||||||
|
$this->addColumn('URL', 'DbUrl', 'VARCHAR', true, 255, null);
|
||||||
|
$this->addColumn('LENGTH', 'DbLength', 'VARCHAR', true, null, '00:00:00');
|
||||||
|
$this->addColumn('LOGIN', 'DbLogin', 'VARCHAR', true, 255, null);
|
||||||
|
$this->addColumn('MTIME', 'DbMtime', 'TIMESTAMP', true, 6, null);
|
||||||
|
$this->addColumn('UTIME', 'DbUtime', 'TIMESTAMP', true, 6, null);
|
||||||
|
// validators
|
||||||
|
} // initialize()
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Build the RelationMap objects for this table relationships
|
||||||
|
*/
|
||||||
|
public function buildRelations()
|
||||||
|
{
|
||||||
|
} // buildRelations()
|
||||||
|
|
||||||
|
} // CcWebstreamTableMap
|
1135
airtime_mvc/application/models/airtime/om/BaseCcWebstream.php
Normal file
1135
airtime_mvc/application/models/airtime/om/BaseCcWebstream.php
Normal file
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,769 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Base static class for performing query and update operations on the 'cc_webstream' table.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @package propel.generator.airtime.om
|
||||||
|
*/
|
||||||
|
abstract class BaseCcWebstreamPeer {
|
||||||
|
|
||||||
|
/** the default database name for this class */
|
||||||
|
const DATABASE_NAME = 'airtime';
|
||||||
|
|
||||||
|
/** the table name for this class */
|
||||||
|
const TABLE_NAME = 'cc_webstream';
|
||||||
|
|
||||||
|
/** the related Propel class for this table */
|
||||||
|
const OM_CLASS = 'CcWebstream';
|
||||||
|
|
||||||
|
/** A class that can be returned by this peer. */
|
||||||
|
const CLASS_DEFAULT = 'airtime.CcWebstream';
|
||||||
|
|
||||||
|
/** the related TableMap class for this table */
|
||||||
|
const TM_CLASS = 'CcWebstreamTableMap';
|
||||||
|
|
||||||
|
/** The total number of columns. */
|
||||||
|
const NUM_COLUMNS = 8;
|
||||||
|
|
||||||
|
/** The number of lazy-loaded columns. */
|
||||||
|
const NUM_LAZY_LOAD_COLUMNS = 0;
|
||||||
|
|
||||||
|
/** the column name for the ID field */
|
||||||
|
const ID = 'cc_webstream.ID';
|
||||||
|
|
||||||
|
/** the column name for the NAME field */
|
||||||
|
const NAME = 'cc_webstream.NAME';
|
||||||
|
|
||||||
|
/** the column name for the DESCRIPTION field */
|
||||||
|
const DESCRIPTION = 'cc_webstream.DESCRIPTION';
|
||||||
|
|
||||||
|
/** the column name for the URL field */
|
||||||
|
const URL = 'cc_webstream.URL';
|
||||||
|
|
||||||
|
/** the column name for the LENGTH field */
|
||||||
|
const LENGTH = 'cc_webstream.LENGTH';
|
||||||
|
|
||||||
|
/** the column name for the LOGIN field */
|
||||||
|
const LOGIN = 'cc_webstream.LOGIN';
|
||||||
|
|
||||||
|
/** the column name for the MTIME field */
|
||||||
|
const MTIME = 'cc_webstream.MTIME';
|
||||||
|
|
||||||
|
/** the column name for the UTIME field */
|
||||||
|
const UTIME = 'cc_webstream.UTIME';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An identiy map to hold any loaded instances of CcWebstream objects.
|
||||||
|
* This must be public so that other peer classes can access this when hydrating from JOIN
|
||||||
|
* queries.
|
||||||
|
* @var array CcWebstream[]
|
||||||
|
*/
|
||||||
|
public static $instances = array();
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* holds an array of fieldnames
|
||||||
|
*
|
||||||
|
* first dimension keys are the type constants
|
||||||
|
* e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id'
|
||||||
|
*/
|
||||||
|
private static $fieldNames = array (
|
||||||
|
BasePeer::TYPE_PHPNAME => array ('DbId', 'DbName', 'DbDescription', 'DbUrl', 'DbLength', 'DbLogin', 'DbMtime', 'DbUtime', ),
|
||||||
|
BasePeer::TYPE_STUDLYPHPNAME => array ('dbId', 'dbName', 'dbDescription', 'dbUrl', 'dbLength', 'dbLogin', 'dbMtime', 'dbUtime', ),
|
||||||
|
BasePeer::TYPE_COLNAME => array (self::ID, self::NAME, self::DESCRIPTION, self::URL, self::LENGTH, self::LOGIN, self::MTIME, self::UTIME, ),
|
||||||
|
BasePeer::TYPE_RAW_COLNAME => array ('ID', 'NAME', 'DESCRIPTION', 'URL', 'LENGTH', 'LOGIN', 'MTIME', 'UTIME', ),
|
||||||
|
BasePeer::TYPE_FIELDNAME => array ('id', 'name', 'description', 'url', 'length', 'login', 'mtime', 'utime', ),
|
||||||
|
BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, )
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* holds an array of keys for quick access to the fieldnames array
|
||||||
|
*
|
||||||
|
* first dimension keys are the type constants
|
||||||
|
* e.g. self::$fieldNames[BasePeer::TYPE_PHPNAME]['Id'] = 0
|
||||||
|
*/
|
||||||
|
private static $fieldKeys = array (
|
||||||
|
BasePeer::TYPE_PHPNAME => array ('DbId' => 0, 'DbName' => 1, 'DbDescription' => 2, 'DbUrl' => 3, 'DbLength' => 4, 'DbLogin' => 5, 'DbMtime' => 6, 'DbUtime' => 7, ),
|
||||||
|
BasePeer::TYPE_STUDLYPHPNAME => array ('dbId' => 0, 'dbName' => 1, 'dbDescription' => 2, 'dbUrl' => 3, 'dbLength' => 4, 'dbLogin' => 5, 'dbMtime' => 6, 'dbUtime' => 7, ),
|
||||||
|
BasePeer::TYPE_COLNAME => array (self::ID => 0, self::NAME => 1, self::DESCRIPTION => 2, self::URL => 3, self::LENGTH => 4, self::LOGIN => 5, self::MTIME => 6, self::UTIME => 7, ),
|
||||||
|
BasePeer::TYPE_RAW_COLNAME => array ('ID' => 0, 'NAME' => 1, 'DESCRIPTION' => 2, 'URL' => 3, 'LENGTH' => 4, 'LOGIN' => 5, 'MTIME' => 6, 'UTIME' => 7, ),
|
||||||
|
BasePeer::TYPE_FIELDNAME => array ('id' => 0, 'name' => 1, 'description' => 2, 'url' => 3, 'length' => 4, 'login' => 5, 'mtime' => 6, 'utime' => 7, ),
|
||||||
|
BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, )
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Translates a fieldname to another type
|
||||||
|
*
|
||||||
|
* @param string $name field name
|
||||||
|
* @param string $fromType One of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME
|
||||||
|
* BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM
|
||||||
|
* @param string $toType One of the class type constants
|
||||||
|
* @return string translated name of the field.
|
||||||
|
* @throws PropelException - if the specified name could not be found in the fieldname mappings.
|
||||||
|
*/
|
||||||
|
static public function translateFieldName($name, $fromType, $toType)
|
||||||
|
{
|
||||||
|
$toNames = self::getFieldNames($toType);
|
||||||
|
$key = isset(self::$fieldKeys[$fromType][$name]) ? self::$fieldKeys[$fromType][$name] : null;
|
||||||
|
if ($key === null) {
|
||||||
|
throw new PropelException("'$name' could not be found in the field names of type '$fromType'. These are: " . print_r(self::$fieldKeys[$fromType], true));
|
||||||
|
}
|
||||||
|
return $toNames[$key];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns an array of field names.
|
||||||
|
*
|
||||||
|
* @param string $type The type of fieldnames to return:
|
||||||
|
* One of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME
|
||||||
|
* BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM
|
||||||
|
* @return array A list of field names
|
||||||
|
*/
|
||||||
|
|
||||||
|
static public function getFieldNames($type = BasePeer::TYPE_PHPNAME)
|
||||||
|
{
|
||||||
|
if (!array_key_exists($type, self::$fieldNames)) {
|
||||||
|
throw new PropelException('Method getFieldNames() expects the parameter $type to be one of the class constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME, BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM. ' . $type . ' was given.');
|
||||||
|
}
|
||||||
|
return self::$fieldNames[$type];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Convenience method which changes table.column to alias.column.
|
||||||
|
*
|
||||||
|
* Using this method you can maintain SQL abstraction while using column aliases.
|
||||||
|
* <code>
|
||||||
|
* $c->addAlias("alias1", TablePeer::TABLE_NAME);
|
||||||
|
* $c->addJoin(TablePeer::alias("alias1", TablePeer::PRIMARY_KEY_COLUMN), TablePeer::PRIMARY_KEY_COLUMN);
|
||||||
|
* </code>
|
||||||
|
* @param string $alias The alias for the current table.
|
||||||
|
* @param string $column The column name for current table. (i.e. CcWebstreamPeer::COLUMN_NAME).
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public static function alias($alias, $column)
|
||||||
|
{
|
||||||
|
return str_replace(CcWebstreamPeer::TABLE_NAME.'.', $alias.'.', $column);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add all the columns needed to create a new object.
|
||||||
|
*
|
||||||
|
* Note: any columns that were marked with lazyLoad="true" in the
|
||||||
|
* XML schema will not be added to the select list and only loaded
|
||||||
|
* on demand.
|
||||||
|
*
|
||||||
|
* @param Criteria $criteria object containing the columns to add.
|
||||||
|
* @param string $alias optional table alias
|
||||||
|
* @throws PropelException Any exceptions caught during processing will be
|
||||||
|
* rethrown wrapped into a PropelException.
|
||||||
|
*/
|
||||||
|
public static function addSelectColumns(Criteria $criteria, $alias = null)
|
||||||
|
{
|
||||||
|
if (null === $alias) {
|
||||||
|
$criteria->addSelectColumn(CcWebstreamPeer::ID);
|
||||||
|
$criteria->addSelectColumn(CcWebstreamPeer::NAME);
|
||||||
|
$criteria->addSelectColumn(CcWebstreamPeer::DESCRIPTION);
|
||||||
|
$criteria->addSelectColumn(CcWebstreamPeer::URL);
|
||||||
|
$criteria->addSelectColumn(CcWebstreamPeer::LENGTH);
|
||||||
|
$criteria->addSelectColumn(CcWebstreamPeer::LOGIN);
|
||||||
|
$criteria->addSelectColumn(CcWebstreamPeer::MTIME);
|
||||||
|
$criteria->addSelectColumn(CcWebstreamPeer::UTIME);
|
||||||
|
} else {
|
||||||
|
$criteria->addSelectColumn($alias . '.ID');
|
||||||
|
$criteria->addSelectColumn($alias . '.NAME');
|
||||||
|
$criteria->addSelectColumn($alias . '.DESCRIPTION');
|
||||||
|
$criteria->addSelectColumn($alias . '.URL');
|
||||||
|
$criteria->addSelectColumn($alias . '.LENGTH');
|
||||||
|
$criteria->addSelectColumn($alias . '.LOGIN');
|
||||||
|
$criteria->addSelectColumn($alias . '.MTIME');
|
||||||
|
$criteria->addSelectColumn($alias . '.UTIME');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the number of rows matching criteria.
|
||||||
|
*
|
||||||
|
* @param Criteria $criteria
|
||||||
|
* @param boolean $distinct Whether to select only distinct columns; deprecated: use Criteria->setDistinct() instead.
|
||||||
|
* @param PropelPDO $con
|
||||||
|
* @return int Number of matching rows.
|
||||||
|
*/
|
||||||
|
public static function doCount(Criteria $criteria, $distinct = false, PropelPDO $con = null)
|
||||||
|
{
|
||||||
|
// we may modify criteria, so copy it first
|
||||||
|
$criteria = clone $criteria;
|
||||||
|
|
||||||
|
// We need to set the primary table name, since in the case that there are no WHERE columns
|
||||||
|
// it will be impossible for the BasePeer::createSelectSql() method to determine which
|
||||||
|
// tables go into the FROM clause.
|
||||||
|
$criteria->setPrimaryTableName(CcWebstreamPeer::TABLE_NAME);
|
||||||
|
|
||||||
|
if ($distinct && !in_array(Criteria::DISTINCT, $criteria->getSelectModifiers())) {
|
||||||
|
$criteria->setDistinct();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$criteria->hasSelectClause()) {
|
||||||
|
CcWebstreamPeer::addSelectColumns($criteria);
|
||||||
|
}
|
||||||
|
|
||||||
|
$criteria->clearOrderByColumns(); // ORDER BY won't ever affect the count
|
||||||
|
$criteria->setDbName(self::DATABASE_NAME); // Set the correct dbName
|
||||||
|
|
||||||
|
if ($con === null) {
|
||||||
|
$con = Propel::getConnection(CcWebstreamPeer::DATABASE_NAME, Propel::CONNECTION_READ);
|
||||||
|
}
|
||||||
|
// BasePeer returns a PDOStatement
|
||||||
|
$stmt = BasePeer::doCount($criteria, $con);
|
||||||
|
|
||||||
|
if ($row = $stmt->fetch(PDO::FETCH_NUM)) {
|
||||||
|
$count = (int) $row[0];
|
||||||
|
} else {
|
||||||
|
$count = 0; // no rows returned; we infer that means 0 matches.
|
||||||
|
}
|
||||||
|
$stmt->closeCursor();
|
||||||
|
return $count;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Method to select one object from the DB.
|
||||||
|
*
|
||||||
|
* @param Criteria $criteria object used to create the SELECT statement.
|
||||||
|
* @param PropelPDO $con
|
||||||
|
* @return CcWebstream
|
||||||
|
* @throws PropelException Any exceptions caught during processing will be
|
||||||
|
* rethrown wrapped into a PropelException.
|
||||||
|
*/
|
||||||
|
public static function doSelectOne(Criteria $criteria, PropelPDO $con = null)
|
||||||
|
{
|
||||||
|
$critcopy = clone $criteria;
|
||||||
|
$critcopy->setLimit(1);
|
||||||
|
$objects = CcWebstreamPeer::doSelect($critcopy, $con);
|
||||||
|
if ($objects) {
|
||||||
|
return $objects[0];
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Method to do selects.
|
||||||
|
*
|
||||||
|
* @param Criteria $criteria The Criteria object used to build the SELECT statement.
|
||||||
|
* @param PropelPDO $con
|
||||||
|
* @return array Array of selected Objects
|
||||||
|
* @throws PropelException Any exceptions caught during processing will be
|
||||||
|
* rethrown wrapped into a PropelException.
|
||||||
|
*/
|
||||||
|
public static function doSelect(Criteria $criteria, PropelPDO $con = null)
|
||||||
|
{
|
||||||
|
return CcWebstreamPeer::populateObjects(CcWebstreamPeer::doSelectStmt($criteria, $con));
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Prepares the Criteria object and uses the parent doSelect() method to execute a PDOStatement.
|
||||||
|
*
|
||||||
|
* Use this method directly if you want to work with an executed statement durirectly (for example
|
||||||
|
* to perform your own object hydration).
|
||||||
|
*
|
||||||
|
* @param Criteria $criteria The Criteria object used to build the SELECT statement.
|
||||||
|
* @param PropelPDO $con The connection to use
|
||||||
|
* @throws PropelException Any exceptions caught during processing will be
|
||||||
|
* rethrown wrapped into a PropelException.
|
||||||
|
* @return PDOStatement The executed PDOStatement object.
|
||||||
|
* @see BasePeer::doSelect()
|
||||||
|
*/
|
||||||
|
public static function doSelectStmt(Criteria $criteria, PropelPDO $con = null)
|
||||||
|
{
|
||||||
|
if ($con === null) {
|
||||||
|
$con = Propel::getConnection(CcWebstreamPeer::DATABASE_NAME, Propel::CONNECTION_READ);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$criteria->hasSelectClause()) {
|
||||||
|
$criteria = clone $criteria;
|
||||||
|
CcWebstreamPeer::addSelectColumns($criteria);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set the correct dbName
|
||||||
|
$criteria->setDbName(self::DATABASE_NAME);
|
||||||
|
|
||||||
|
// BasePeer returns a PDOStatement
|
||||||
|
return BasePeer::doSelect($criteria, $con);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 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 CcWebstream $value A CcWebstream object.
|
||||||
|
* @param string $key (optional) key to use for instance map (for performance boost if key was already calculated externally).
|
||||||
|
*/
|
||||||
|
public static function addInstanceToPool(CcWebstream $obj, $key = null)
|
||||||
|
{
|
||||||
|
if (Propel::isInstancePoolingEnabled()) {
|
||||||
|
if ($key === null) {
|
||||||
|
$key = (string) $obj->getDbId();
|
||||||
|
} // if key === null
|
||||||
|
self::$instances[$key] = $obj;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Removes an object from 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 doDelete
|
||||||
|
* methods in your stub classes -- you may need to explicitly remove objects
|
||||||
|
* from the cache in order to prevent returning objects that no longer exist.
|
||||||
|
*
|
||||||
|
* @param mixed $value A CcWebstream object or a primary key value.
|
||||||
|
*/
|
||||||
|
public static function removeInstanceFromPool($value)
|
||||||
|
{
|
||||||
|
if (Propel::isInstancePoolingEnabled() && $value !== null) {
|
||||||
|
if (is_object($value) && $value instanceof CcWebstream) {
|
||||||
|
$key = (string) $value->getDbId();
|
||||||
|
} elseif (is_scalar($value)) {
|
||||||
|
// assume we've been passed a primary key
|
||||||
|
$key = (string) $value;
|
||||||
|
} else {
|
||||||
|
$e = new PropelException("Invalid value passed to removeInstanceFromPool(). Expected primary key or CcWebstream object; got " . (is_object($value) ? get_class($value) . ' object.' : var_export($value,true)));
|
||||||
|
throw $e;
|
||||||
|
}
|
||||||
|
|
||||||
|
unset(self::$instances[$key]);
|
||||||
|
}
|
||||||
|
} // removeInstanceFromPool()
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves a string version of the primary key from the DB resultset row that can be used to uniquely identify a row in this table.
|
||||||
|
*
|
||||||
|
* For tables with a single-column primary key, that simple pkey value will be returned. For tables with
|
||||||
|
* a multi-column primary key, a serialize()d version of the primary key will be returned.
|
||||||
|
*
|
||||||
|
* @param string $key The key (@see getPrimaryKeyHash()) for this instance.
|
||||||
|
* @return CcWebstream Found object or NULL if 1) no instance exists for specified key or 2) instance pooling has been disabled.
|
||||||
|
* @see getPrimaryKeyHash()
|
||||||
|
*/
|
||||||
|
public static function getInstanceFromPool($key)
|
||||||
|
{
|
||||||
|
if (Propel::isInstancePoolingEnabled()) {
|
||||||
|
if (isset(self::$instances[$key])) {
|
||||||
|
return self::$instances[$key];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null; // just to be explicit
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Clear the instance pool.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public static function clearInstancePool()
|
||||||
|
{
|
||||||
|
self::$instances = array();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method to invalidate the instance pool of all tables related to cc_webstream
|
||||||
|
* by a foreign key with ON DELETE CASCADE
|
||||||
|
*/
|
||||||
|
public static function clearRelatedInstancePool()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves a string version of the primary key from the DB resultset row that can be used to uniquely identify a row in this table.
|
||||||
|
*
|
||||||
|
* For tables with a single-column primary key, that simple pkey value will be returned. For tables with
|
||||||
|
* a multi-column primary key, a serialize()d version of the primary key will be returned.
|
||||||
|
*
|
||||||
|
* @param array $row PropelPDO resultset row.
|
||||||
|
* @param int $startcol The 0-based offset for reading from the resultset row.
|
||||||
|
* @return string A string version of PK or NULL if the components of primary key in result array are all null.
|
||||||
|
*/
|
||||||
|
public static function getPrimaryKeyHashFromRow($row, $startcol = 0)
|
||||||
|
{
|
||||||
|
// If the PK cannot be derived from the row, return NULL.
|
||||||
|
if ($row[$startcol] === null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return (string) $row[$startcol];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves the primary key from the DB resultset row
|
||||||
|
* For tables with a single-column primary key, that simple pkey value will be returned. For tables with
|
||||||
|
* a multi-column primary key, an array of the primary key columns will be returned.
|
||||||
|
*
|
||||||
|
* @param array $row PropelPDO resultset row.
|
||||||
|
* @param int $startcol The 0-based offset for reading from the resultset row.
|
||||||
|
* @return mixed The primary key of the row
|
||||||
|
*/
|
||||||
|
public static function getPrimaryKeyFromRow($row, $startcol = 0)
|
||||||
|
{
|
||||||
|
return (int) $row[$startcol];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The returned array will contain objects of the default type or
|
||||||
|
* objects that inherit from the default.
|
||||||
|
*
|
||||||
|
* @throws PropelException Any exceptions caught during processing will be
|
||||||
|
* rethrown wrapped into a PropelException.
|
||||||
|
*/
|
||||||
|
public static function populateObjects(PDOStatement $stmt)
|
||||||
|
{
|
||||||
|
$results = array();
|
||||||
|
|
||||||
|
// set the class once to avoid overhead in the loop
|
||||||
|
$cls = CcWebstreamPeer::getOMClass(false);
|
||||||
|
// populate the object(s)
|
||||||
|
while ($row = $stmt->fetch(PDO::FETCH_NUM)) {
|
||||||
|
$key = CcWebstreamPeer::getPrimaryKeyHashFromRow($row, 0);
|
||||||
|
if (null !== ($obj = CcWebstreamPeer::getInstanceFromPool($key))) {
|
||||||
|
// We no longer rehydrate the object, since this can cause data loss.
|
||||||
|
// See http://www.propelorm.org/ticket/509
|
||||||
|
// $obj->hydrate($row, 0, true); // rehydrate
|
||||||
|
$results[] = $obj;
|
||||||
|
} else {
|
||||||
|
$obj = new $cls();
|
||||||
|
$obj->hydrate($row);
|
||||||
|
$results[] = $obj;
|
||||||
|
CcWebstreamPeer::addInstanceToPool($obj, $key);
|
||||||
|
} // if key exists
|
||||||
|
}
|
||||||
|
$stmt->closeCursor();
|
||||||
|
return $results;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Populates an object of the default type or an object that inherit from the default.
|
||||||
|
*
|
||||||
|
* @param array $row PropelPDO resultset row.
|
||||||
|
* @param int $startcol The 0-based offset for reading from the resultset row.
|
||||||
|
* @throws PropelException Any exceptions caught during processing will be
|
||||||
|
* rethrown wrapped into a PropelException.
|
||||||
|
* @return array (CcWebstream object, last column rank)
|
||||||
|
*/
|
||||||
|
public static function populateObject($row, $startcol = 0)
|
||||||
|
{
|
||||||
|
$key = CcWebstreamPeer::getPrimaryKeyHashFromRow($row, $startcol);
|
||||||
|
if (null !== ($obj = CcWebstreamPeer::getInstanceFromPool($key))) {
|
||||||
|
// We no longer rehydrate the object, since this can cause data loss.
|
||||||
|
// See http://www.propelorm.org/ticket/509
|
||||||
|
// $obj->hydrate($row, $startcol, true); // rehydrate
|
||||||
|
$col = $startcol + CcWebstreamPeer::NUM_COLUMNS;
|
||||||
|
} else {
|
||||||
|
$cls = CcWebstreamPeer::OM_CLASS;
|
||||||
|
$obj = new $cls();
|
||||||
|
$col = $obj->hydrate($row, $startcol);
|
||||||
|
CcWebstreamPeer::addInstanceToPool($obj, $key);
|
||||||
|
}
|
||||||
|
return array($obj, $col);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Returns the TableMap related to this peer.
|
||||||
|
* This method is not needed for general use but a specific application could have a need.
|
||||||
|
* @return TableMap
|
||||||
|
* @throws PropelException Any exceptions caught during processing will be
|
||||||
|
* rethrown wrapped into a PropelException.
|
||||||
|
*/
|
||||||
|
public static function getTableMap()
|
||||||
|
{
|
||||||
|
return Propel::getDatabaseMap(self::DATABASE_NAME)->getTable(self::TABLE_NAME);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a TableMap instance to the database for this peer class.
|
||||||
|
*/
|
||||||
|
public static function buildTableMap()
|
||||||
|
{
|
||||||
|
$dbMap = Propel::getDatabaseMap(BaseCcWebstreamPeer::DATABASE_NAME);
|
||||||
|
if (!$dbMap->hasTable(BaseCcWebstreamPeer::TABLE_NAME))
|
||||||
|
{
|
||||||
|
$dbMap->addTableObject(new CcWebstreamTableMap());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The class that the Peer will make instances of.
|
||||||
|
*
|
||||||
|
* If $withPrefix is true, the returned path
|
||||||
|
* uses a dot-path notation which is tranalted into a path
|
||||||
|
* relative to a location on the PHP include_path.
|
||||||
|
* (e.g. path.to.MyClass -> 'path/to/MyClass.php')
|
||||||
|
*
|
||||||
|
* @param boolean $withPrefix Whether or not to return the path with the class name
|
||||||
|
* @return string path.to.ClassName
|
||||||
|
*/
|
||||||
|
public static function getOMClass($withPrefix = true)
|
||||||
|
{
|
||||||
|
return $withPrefix ? CcWebstreamPeer::CLASS_DEFAULT : CcWebstreamPeer::OM_CLASS;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method perform an INSERT on the database, given a CcWebstream or Criteria object.
|
||||||
|
*
|
||||||
|
* @param mixed $values Criteria or CcWebstream object containing data that is used to create the INSERT statement.
|
||||||
|
* @param PropelPDO $con the PropelPDO connection to use
|
||||||
|
* @return mixed The new primary key.
|
||||||
|
* @throws PropelException Any exceptions caught during processing will be
|
||||||
|
* rethrown wrapped into a PropelException.
|
||||||
|
*/
|
||||||
|
public static function doInsert($values, PropelPDO $con = null)
|
||||||
|
{
|
||||||
|
if ($con === null) {
|
||||||
|
$con = Propel::getConnection(CcWebstreamPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($values instanceof Criteria) {
|
||||||
|
$criteria = clone $values; // rename for clarity
|
||||||
|
} else {
|
||||||
|
$criteria = $values->buildCriteria(); // build Criteria from CcWebstream object
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($criteria->containsKey(CcWebstreamPeer::ID) && $criteria->keyContainsValue(CcWebstreamPeer::ID) ) {
|
||||||
|
throw new PropelException('Cannot insert a value for auto-increment primary key ('.CcWebstreamPeer::ID.')');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Set the correct dbName
|
||||||
|
$criteria->setDbName(self::DATABASE_NAME);
|
||||||
|
|
||||||
|
try {
|
||||||
|
// use transaction because $criteria could contain info
|
||||||
|
// for more than one table (I guess, conceivably)
|
||||||
|
$con->beginTransaction();
|
||||||
|
$pk = BasePeer::doInsert($criteria, $con);
|
||||||
|
$con->commit();
|
||||||
|
} catch(PropelException $e) {
|
||||||
|
$con->rollBack();
|
||||||
|
throw $e;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $pk;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method perform an UPDATE on the database, given a CcWebstream or Criteria object.
|
||||||
|
*
|
||||||
|
* @param mixed $values Criteria or CcWebstream object containing data that is used to create the UPDATE statement.
|
||||||
|
* @param PropelPDO $con The connection to use (specify PropelPDO connection object to exert more control over transactions).
|
||||||
|
* @return int The number of affected rows (if supported by underlying database driver).
|
||||||
|
* @throws PropelException Any exceptions caught during processing will be
|
||||||
|
* rethrown wrapped into a PropelException.
|
||||||
|
*/
|
||||||
|
public static function doUpdate($values, PropelPDO $con = null)
|
||||||
|
{
|
||||||
|
if ($con === null) {
|
||||||
|
$con = Propel::getConnection(CcWebstreamPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
|
||||||
|
}
|
||||||
|
|
||||||
|
$selectCriteria = new Criteria(self::DATABASE_NAME);
|
||||||
|
|
||||||
|
if ($values instanceof Criteria) {
|
||||||
|
$criteria = clone $values; // rename for clarity
|
||||||
|
|
||||||
|
$comparison = $criteria->getComparison(CcWebstreamPeer::ID);
|
||||||
|
$value = $criteria->remove(CcWebstreamPeer::ID);
|
||||||
|
if ($value) {
|
||||||
|
$selectCriteria->add(CcWebstreamPeer::ID, $value, $comparison);
|
||||||
|
} else {
|
||||||
|
$selectCriteria->setPrimaryTableName(CcWebstreamPeer::TABLE_NAME);
|
||||||
|
}
|
||||||
|
|
||||||
|
} else { // $values is CcWebstream object
|
||||||
|
$criteria = $values->buildCriteria(); // gets full criteria
|
||||||
|
$selectCriteria = $values->buildPkeyCriteria(); // gets criteria w/ primary key(s)
|
||||||
|
}
|
||||||
|
|
||||||
|
// set the correct dbName
|
||||||
|
$criteria->setDbName(self::DATABASE_NAME);
|
||||||
|
|
||||||
|
return BasePeer::doUpdate($selectCriteria, $criteria, $con);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method to DELETE all rows from the cc_webstream table.
|
||||||
|
*
|
||||||
|
* @return int The number of affected rows (if supported by underlying database driver).
|
||||||
|
*/
|
||||||
|
public static function doDeleteAll($con = null)
|
||||||
|
{
|
||||||
|
if ($con === null) {
|
||||||
|
$con = Propel::getConnection(CcWebstreamPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
|
||||||
|
}
|
||||||
|
$affectedRows = 0; // initialize var to track total num of affected rows
|
||||||
|
try {
|
||||||
|
// use transaction because $criteria could contain info
|
||||||
|
// for more than one table or we could emulating ON DELETE CASCADE, etc.
|
||||||
|
$con->beginTransaction();
|
||||||
|
$affectedRows += BasePeer::doDeleteAll(CcWebstreamPeer::TABLE_NAME, $con, CcWebstreamPeer::DATABASE_NAME);
|
||||||
|
// Because this db requires some delete cascade/set null emulation, we have to
|
||||||
|
// clear the cached instance *after* the emulation has happened (since
|
||||||
|
// instances get re-added by the select statement contained therein).
|
||||||
|
CcWebstreamPeer::clearInstancePool();
|
||||||
|
CcWebstreamPeer::clearRelatedInstancePool();
|
||||||
|
$con->commit();
|
||||||
|
return $affectedRows;
|
||||||
|
} catch (PropelException $e) {
|
||||||
|
$con->rollBack();
|
||||||
|
throw $e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method perform a DELETE on the database, given a CcWebstream or Criteria object OR a primary key value.
|
||||||
|
*
|
||||||
|
* @param mixed $values Criteria or CcWebstream object or primary key or array of primary keys
|
||||||
|
* which is used to create the DELETE statement
|
||||||
|
* @param PropelPDO $con the connection to use
|
||||||
|
* @return int The number of affected rows (if supported by underlying database driver). This includes CASCADE-related rows
|
||||||
|
* if supported by native driver or if emulated using Propel.
|
||||||
|
* @throws PropelException Any exceptions caught during processing will be
|
||||||
|
* rethrown wrapped into a PropelException.
|
||||||
|
*/
|
||||||
|
public static function doDelete($values, PropelPDO $con = null)
|
||||||
|
{
|
||||||
|
if ($con === null) {
|
||||||
|
$con = Propel::getConnection(CcWebstreamPeer::DATABASE_NAME, Propel::CONNECTION_WRITE);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($values instanceof Criteria) {
|
||||||
|
// invalidate the cache for all objects of this type, since we have no
|
||||||
|
// way of knowing (without running a query) what objects should be invalidated
|
||||||
|
// from the cache based on this Criteria.
|
||||||
|
CcWebstreamPeer::clearInstancePool();
|
||||||
|
// rename for clarity
|
||||||
|
$criteria = clone $values;
|
||||||
|
} elseif ($values instanceof CcWebstream) { // it's a model object
|
||||||
|
// invalidate the cache for this single object
|
||||||
|
CcWebstreamPeer::removeInstanceFromPool($values);
|
||||||
|
// create criteria based on pk values
|
||||||
|
$criteria = $values->buildPkeyCriteria();
|
||||||
|
} else { // it's a primary key, or an array of pks
|
||||||
|
$criteria = new Criteria(self::DATABASE_NAME);
|
||||||
|
$criteria->add(CcWebstreamPeer::ID, (array) $values, Criteria::IN);
|
||||||
|
// invalidate the cache for this object(s)
|
||||||
|
foreach ((array) $values as $singleval) {
|
||||||
|
CcWebstreamPeer::removeInstanceFromPool($singleval);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set the correct dbName
|
||||||
|
$criteria->setDbName(self::DATABASE_NAME);
|
||||||
|
|
||||||
|
$affectedRows = 0; // initialize var to track total num of affected rows
|
||||||
|
|
||||||
|
try {
|
||||||
|
// use transaction because $criteria could contain info
|
||||||
|
// for more than one table or we could emulating ON DELETE CASCADE, etc.
|
||||||
|
$con->beginTransaction();
|
||||||
|
|
||||||
|
$affectedRows += BasePeer::doDelete($criteria, $con);
|
||||||
|
CcWebstreamPeer::clearRelatedInstancePool();
|
||||||
|
$con->commit();
|
||||||
|
return $affectedRows;
|
||||||
|
} catch (PropelException $e) {
|
||||||
|
$con->rollBack();
|
||||||
|
throw $e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validates all modified columns of given CcWebstream object.
|
||||||
|
* If parameter $columns is either a single column name or an array of column names
|
||||||
|
* than only those columns are validated.
|
||||||
|
*
|
||||||
|
* NOTICE: This does not apply to primary or foreign keys for now.
|
||||||
|
*
|
||||||
|
* @param CcWebstream $obj The object to validate.
|
||||||
|
* @param mixed $cols Column name or array of column names.
|
||||||
|
*
|
||||||
|
* @return mixed TRUE if all columns are valid or the error message of the first invalid column.
|
||||||
|
*/
|
||||||
|
public static function doValidate(CcWebstream $obj, $cols = null)
|
||||||
|
{
|
||||||
|
$columns = array();
|
||||||
|
|
||||||
|
if ($cols) {
|
||||||
|
$dbMap = Propel::getDatabaseMap(CcWebstreamPeer::DATABASE_NAME);
|
||||||
|
$tableMap = $dbMap->getTable(CcWebstreamPeer::TABLE_NAME);
|
||||||
|
|
||||||
|
if (! is_array($cols)) {
|
||||||
|
$cols = array($cols);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach ($cols as $colName) {
|
||||||
|
if ($tableMap->containsColumn($colName)) {
|
||||||
|
$get = 'get' . $tableMap->getColumn($colName)->getPhpName();
|
||||||
|
$columns[$colName] = $obj->$get();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
return BasePeer::doValidate(CcWebstreamPeer::DATABASE_NAME, CcWebstreamPeer::TABLE_NAME, $columns);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve a single object by pkey.
|
||||||
|
*
|
||||||
|
* @param int $pk the primary key.
|
||||||
|
* @param PropelPDO $con the connection to use
|
||||||
|
* @return CcWebstream
|
||||||
|
*/
|
||||||
|
public static function retrieveByPK($pk, PropelPDO $con = null)
|
||||||
|
{
|
||||||
|
|
||||||
|
if (null !== ($obj = CcWebstreamPeer::getInstanceFromPool((string) $pk))) {
|
||||||
|
return $obj;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($con === null) {
|
||||||
|
$con = Propel::getConnection(CcWebstreamPeer::DATABASE_NAME, Propel::CONNECTION_READ);
|
||||||
|
}
|
||||||
|
|
||||||
|
$criteria = new Criteria(CcWebstreamPeer::DATABASE_NAME);
|
||||||
|
$criteria->add(CcWebstreamPeer::ID, $pk);
|
||||||
|
|
||||||
|
$v = CcWebstreamPeer::doSelect($criteria, $con);
|
||||||
|
|
||||||
|
return !empty($v) > 0 ? $v[0] : null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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)
|
||||||
|
{
|
||||||
|
if ($con === null) {
|
||||||
|
$con = Propel::getConnection(CcWebstreamPeer::DATABASE_NAME, Propel::CONNECTION_READ);
|
||||||
|
}
|
||||||
|
|
||||||
|
$objs = null;
|
||||||
|
if (empty($pks)) {
|
||||||
|
$objs = array();
|
||||||
|
} else {
|
||||||
|
$criteria = new Criteria(CcWebstreamPeer::DATABASE_NAME);
|
||||||
|
$criteria->add(CcWebstreamPeer::ID, $pks, Criteria::IN);
|
||||||
|
$objs = CcWebstreamPeer::doSelect($criteria, $con);
|
||||||
|
}
|
||||||
|
return $objs;
|
||||||
|
}
|
||||||
|
|
||||||
|
} // BaseCcWebstreamPeer
|
||||||
|
|
||||||
|
// This is the static code needed to register the TableMap for this table with the main Propel class.
|
||||||
|
//
|
||||||
|
BaseCcWebstreamPeer::buildTableMap();
|
||||||
|
|
|
@ -0,0 +1,365 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Base class that represents a query for the 'cc_webstream' table.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @method CcWebstreamQuery orderByDbId($order = Criteria::ASC) Order by the id column
|
||||||
|
* @method CcWebstreamQuery orderByDbName($order = Criteria::ASC) Order by the name column
|
||||||
|
* @method CcWebstreamQuery orderByDbDescription($order = Criteria::ASC) Order by the description column
|
||||||
|
* @method CcWebstreamQuery orderByDbUrl($order = Criteria::ASC) Order by the url column
|
||||||
|
* @method CcWebstreamQuery orderByDbLength($order = Criteria::ASC) Order by the length column
|
||||||
|
* @method CcWebstreamQuery orderByDbLogin($order = Criteria::ASC) Order by the login column
|
||||||
|
* @method CcWebstreamQuery orderByDbMtime($order = Criteria::ASC) Order by the mtime column
|
||||||
|
* @method CcWebstreamQuery orderByDbUtime($order = Criteria::ASC) Order by the utime column
|
||||||
|
*
|
||||||
|
* @method CcWebstreamQuery groupByDbId() Group by the id column
|
||||||
|
* @method CcWebstreamQuery groupByDbName() Group by the name column
|
||||||
|
* @method CcWebstreamQuery groupByDbDescription() Group by the description column
|
||||||
|
* @method CcWebstreamQuery groupByDbUrl() Group by the url column
|
||||||
|
* @method CcWebstreamQuery groupByDbLength() Group by the length column
|
||||||
|
* @method CcWebstreamQuery groupByDbLogin() Group by the login column
|
||||||
|
* @method CcWebstreamQuery groupByDbMtime() Group by the mtime column
|
||||||
|
* @method CcWebstreamQuery groupByDbUtime() Group by the utime column
|
||||||
|
*
|
||||||
|
* @method CcWebstreamQuery leftJoin($relation) Adds a LEFT JOIN clause to the query
|
||||||
|
* @method CcWebstreamQuery rightJoin($relation) Adds a RIGHT JOIN clause to the query
|
||||||
|
* @method CcWebstreamQuery innerJoin($relation) Adds a INNER JOIN clause to the query
|
||||||
|
*
|
||||||
|
* @method CcWebstream findOne(PropelPDO $con = null) Return the first CcWebstream matching the query
|
||||||
|
* @method CcWebstream findOneOrCreate(PropelPDO $con = null) Return the first CcWebstream matching the query, or a new CcWebstream object populated from the query conditions when no match is found
|
||||||
|
*
|
||||||
|
* @method CcWebstream findOneByDbId(int $id) Return the first CcWebstream filtered by the id column
|
||||||
|
* @method CcWebstream findOneByDbName(string $name) Return the first CcWebstream filtered by the name column
|
||||||
|
* @method CcWebstream findOneByDbDescription(string $description) Return the first CcWebstream filtered by the description column
|
||||||
|
* @method CcWebstream findOneByDbUrl(string $url) Return the first CcWebstream filtered by the url column
|
||||||
|
* @method CcWebstream findOneByDbLength(string $length) Return the first CcWebstream filtered by the length column
|
||||||
|
* @method CcWebstream findOneByDbLogin(string $login) Return the first CcWebstream filtered by the login column
|
||||||
|
* @method CcWebstream findOneByDbMtime(string $mtime) Return the first CcWebstream filtered by the mtime column
|
||||||
|
* @method CcWebstream findOneByDbUtime(string $utime) Return the first CcWebstream filtered by the utime column
|
||||||
|
*
|
||||||
|
* @method array findByDbId(int $id) Return CcWebstream objects filtered by the id column
|
||||||
|
* @method array findByDbName(string $name) Return CcWebstream objects filtered by the name column
|
||||||
|
* @method array findByDbDescription(string $description) Return CcWebstream objects filtered by the description column
|
||||||
|
* @method array findByDbUrl(string $url) Return CcWebstream objects filtered by the url column
|
||||||
|
* @method array findByDbLength(string $length) Return CcWebstream objects filtered by the length column
|
||||||
|
* @method array findByDbLogin(string $login) Return CcWebstream objects filtered by the login column
|
||||||
|
* @method array findByDbMtime(string $mtime) Return CcWebstream objects filtered by the mtime column
|
||||||
|
* @method array findByDbUtime(string $utime) Return CcWebstream objects filtered by the utime column
|
||||||
|
*
|
||||||
|
* @package propel.generator.airtime.om
|
||||||
|
*/
|
||||||
|
abstract class BaseCcWebstreamQuery extends ModelCriteria
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initializes internal state of BaseCcWebstreamQuery object.
|
||||||
|
*
|
||||||
|
* @param string $dbName The dabase name
|
||||||
|
* @param string $modelName The phpName of a model, e.g. 'Book'
|
||||||
|
* @param string $modelAlias The alias for the model in this query, e.g. 'b'
|
||||||
|
*/
|
||||||
|
public function __construct($dbName = 'airtime', $modelName = 'CcWebstream', $modelAlias = null)
|
||||||
|
{
|
||||||
|
parent::__construct($dbName, $modelName, $modelAlias);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a new CcWebstreamQuery object.
|
||||||
|
*
|
||||||
|
* @param string $modelAlias The alias of a model in the query
|
||||||
|
* @param Criteria $criteria Optional Criteria to build the query from
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery
|
||||||
|
*/
|
||||||
|
public static function create($modelAlias = null, $criteria = null)
|
||||||
|
{
|
||||||
|
if ($criteria instanceof CcWebstreamQuery) {
|
||||||
|
return $criteria;
|
||||||
|
}
|
||||||
|
$query = new CcWebstreamQuery();
|
||||||
|
if (null !== $modelAlias) {
|
||||||
|
$query->setModelAlias($modelAlias);
|
||||||
|
}
|
||||||
|
if ($criteria instanceof Criteria) {
|
||||||
|
$query->mergeWith($criteria);
|
||||||
|
}
|
||||||
|
return $query;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Find object by primary key
|
||||||
|
* Use instance pooling to avoid a database query if the object exists
|
||||||
|
* <code>
|
||||||
|
* $obj = $c->findPk(12, $con);
|
||||||
|
* </code>
|
||||||
|
* @param mixed $key Primary key to use for the query
|
||||||
|
* @param PropelPDO $con an optional connection object
|
||||||
|
*
|
||||||
|
* @return CcWebstream|array|mixed the result, formatted by the current formatter
|
||||||
|
*/
|
||||||
|
public function findPk($key, $con = null)
|
||||||
|
{
|
||||||
|
if ((null !== ($obj = CcWebstreamPeer::getInstanceFromPool((string) $key))) && $this->getFormatter()->isObjectFormatter()) {
|
||||||
|
// the object is alredy in the instance pool
|
||||||
|
return $obj;
|
||||||
|
} else {
|
||||||
|
// the object has not been requested yet, or the formatter is not an object formatter
|
||||||
|
$criteria = $this->isKeepQuery() ? clone $this : $this;
|
||||||
|
$stmt = $criteria
|
||||||
|
->filterByPrimaryKey($key)
|
||||||
|
->getSelectStatement($con);
|
||||||
|
return $criteria->getFormatter()->init($criteria)->formatOne($stmt);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Find objects by primary key
|
||||||
|
* <code>
|
||||||
|
* $objs = $c->findPks(array(12, 56, 832), $con);
|
||||||
|
* </code>
|
||||||
|
* @param array $keys Primary keys to use for the query
|
||||||
|
* @param PropelPDO $con an optional connection object
|
||||||
|
*
|
||||||
|
* @return PropelObjectCollection|array|mixed the list of results, formatted by the current formatter
|
||||||
|
*/
|
||||||
|
public function findPks($keys, $con = null)
|
||||||
|
{
|
||||||
|
$criteria = $this->isKeepQuery() ? clone $this : $this;
|
||||||
|
return $this
|
||||||
|
->filterByPrimaryKeys($keys)
|
||||||
|
->find($con);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the query by primary key
|
||||||
|
*
|
||||||
|
* @param mixed $key Primary key to use for the query
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function filterByPrimaryKey($key)
|
||||||
|
{
|
||||||
|
return $this->addUsingAlias(CcWebstreamPeer::ID, $key, Criteria::EQUAL);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the query by a list of primary keys
|
||||||
|
*
|
||||||
|
* @param array $keys The list of primary key to use for the query
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function filterByPrimaryKeys($keys)
|
||||||
|
{
|
||||||
|
return $this->addUsingAlias(CcWebstreamPeer::ID, $keys, Criteria::IN);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the query on the id column
|
||||||
|
*
|
||||||
|
* @param int|array $dbId The value to use as filter.
|
||||||
|
* Accepts an associative array('min' => $minValue, 'max' => $maxValue)
|
||||||
|
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function filterByDbId($dbId = null, $comparison = null)
|
||||||
|
{
|
||||||
|
if (is_array($dbId) && null === $comparison) {
|
||||||
|
$comparison = Criteria::IN;
|
||||||
|
}
|
||||||
|
return $this->addUsingAlias(CcWebstreamPeer::ID, $dbId, $comparison);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the query on the name column
|
||||||
|
*
|
||||||
|
* @param string $dbName The value to use as filter.
|
||||||
|
* Accepts wildcards (* and % trigger a LIKE)
|
||||||
|
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function filterByDbName($dbName = null, $comparison = null)
|
||||||
|
{
|
||||||
|
if (null === $comparison) {
|
||||||
|
if (is_array($dbName)) {
|
||||||
|
$comparison = Criteria::IN;
|
||||||
|
} elseif (preg_match('/[\%\*]/', $dbName)) {
|
||||||
|
$dbName = str_replace('*', '%', $dbName);
|
||||||
|
$comparison = Criteria::LIKE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $this->addUsingAlias(CcWebstreamPeer::NAME, $dbName, $comparison);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the query on the description column
|
||||||
|
*
|
||||||
|
* @param string $dbDescription The value to use as filter.
|
||||||
|
* Accepts wildcards (* and % trigger a LIKE)
|
||||||
|
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function filterByDbDescription($dbDescription = null, $comparison = null)
|
||||||
|
{
|
||||||
|
if (null === $comparison) {
|
||||||
|
if (is_array($dbDescription)) {
|
||||||
|
$comparison = Criteria::IN;
|
||||||
|
} elseif (preg_match('/[\%\*]/', $dbDescription)) {
|
||||||
|
$dbDescription = str_replace('*', '%', $dbDescription);
|
||||||
|
$comparison = Criteria::LIKE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $this->addUsingAlias(CcWebstreamPeer::DESCRIPTION, $dbDescription, $comparison);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the query on the url column
|
||||||
|
*
|
||||||
|
* @param string $dbUrl The value to use as filter.
|
||||||
|
* Accepts wildcards (* and % trigger a LIKE)
|
||||||
|
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function filterByDbUrl($dbUrl = null, $comparison = null)
|
||||||
|
{
|
||||||
|
if (null === $comparison) {
|
||||||
|
if (is_array($dbUrl)) {
|
||||||
|
$comparison = Criteria::IN;
|
||||||
|
} elseif (preg_match('/[\%\*]/', $dbUrl)) {
|
||||||
|
$dbUrl = str_replace('*', '%', $dbUrl);
|
||||||
|
$comparison = Criteria::LIKE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $this->addUsingAlias(CcWebstreamPeer::URL, $dbUrl, $comparison);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the query on the length column
|
||||||
|
*
|
||||||
|
* @param string $dbLength The value to use as filter.
|
||||||
|
* Accepts wildcards (* and % trigger a LIKE)
|
||||||
|
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function filterByDbLength($dbLength = null, $comparison = null)
|
||||||
|
{
|
||||||
|
if (null === $comparison) {
|
||||||
|
if (is_array($dbLength)) {
|
||||||
|
$comparison = Criteria::IN;
|
||||||
|
} elseif (preg_match('/[\%\*]/', $dbLength)) {
|
||||||
|
$dbLength = str_replace('*', '%', $dbLength);
|
||||||
|
$comparison = Criteria::LIKE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $this->addUsingAlias(CcWebstreamPeer::LENGTH, $dbLength, $comparison);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the query on the login column
|
||||||
|
*
|
||||||
|
* @param string $dbLogin The value to use as filter.
|
||||||
|
* Accepts wildcards (* and % trigger a LIKE)
|
||||||
|
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function filterByDbLogin($dbLogin = null, $comparison = null)
|
||||||
|
{
|
||||||
|
if (null === $comparison) {
|
||||||
|
if (is_array($dbLogin)) {
|
||||||
|
$comparison = Criteria::IN;
|
||||||
|
} elseif (preg_match('/[\%\*]/', $dbLogin)) {
|
||||||
|
$dbLogin = str_replace('*', '%', $dbLogin);
|
||||||
|
$comparison = Criteria::LIKE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $this->addUsingAlias(CcWebstreamPeer::LOGIN, $dbLogin, $comparison);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the query on the mtime column
|
||||||
|
*
|
||||||
|
* @param string|array $dbMtime The value to use as filter.
|
||||||
|
* Accepts an associative array('min' => $minValue, 'max' => $maxValue)
|
||||||
|
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function filterByDbMtime($dbMtime = null, $comparison = null)
|
||||||
|
{
|
||||||
|
if (is_array($dbMtime)) {
|
||||||
|
$useMinMax = false;
|
||||||
|
if (isset($dbMtime['min'])) {
|
||||||
|
$this->addUsingAlias(CcWebstreamPeer::MTIME, $dbMtime['min'], Criteria::GREATER_EQUAL);
|
||||||
|
$useMinMax = true;
|
||||||
|
}
|
||||||
|
if (isset($dbMtime['max'])) {
|
||||||
|
$this->addUsingAlias(CcWebstreamPeer::MTIME, $dbMtime['max'], Criteria::LESS_EQUAL);
|
||||||
|
$useMinMax = true;
|
||||||
|
}
|
||||||
|
if ($useMinMax) {
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
if (null === $comparison) {
|
||||||
|
$comparison = Criteria::IN;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $this->addUsingAlias(CcWebstreamPeer::MTIME, $dbMtime, $comparison);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the query on the utime column
|
||||||
|
*
|
||||||
|
* @param string|array $dbUtime The value to use as filter.
|
||||||
|
* Accepts an associative array('min' => $minValue, 'max' => $maxValue)
|
||||||
|
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function filterByDbUtime($dbUtime = null, $comparison = null)
|
||||||
|
{
|
||||||
|
if (is_array($dbUtime)) {
|
||||||
|
$useMinMax = false;
|
||||||
|
if (isset($dbUtime['min'])) {
|
||||||
|
$this->addUsingAlias(CcWebstreamPeer::UTIME, $dbUtime['min'], Criteria::GREATER_EQUAL);
|
||||||
|
$useMinMax = true;
|
||||||
|
}
|
||||||
|
if (isset($dbUtime['max'])) {
|
||||||
|
$this->addUsingAlias(CcWebstreamPeer::UTIME, $dbUtime['max'], Criteria::LESS_EQUAL);
|
||||||
|
$useMinMax = true;
|
||||||
|
}
|
||||||
|
if ($useMinMax) {
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
if (null === $comparison) {
|
||||||
|
$comparison = Criteria::IN;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $this->addUsingAlias(CcWebstreamPeer::UTIME, $dbUtime, $comparison);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exclude object from result
|
||||||
|
*
|
||||||
|
* @param CcWebstream $ccWebstream Object to remove from the list of results
|
||||||
|
*
|
||||||
|
* @return CcWebstreamQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function prune($ccWebstream = null)
|
||||||
|
{
|
||||||
|
if ($ccWebstream) {
|
||||||
|
$this->addUsingAlias(CcWebstreamPeer::ID, $ccWebstream->getDbId(), Criteria::NOT_EQUAL);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
} // BaseCcWebstreamQuery
|
|
@ -1,6 +1,6 @@
|
||||||
<button id="spl_new" class="ui-button ui-widget ui-state-default" role="button" aria-disabled="false">New</button>
|
<button id="ws_new" class="ui-button ui-widget ui-state-default" role="button" aria-disabled="false">New</button>
|
||||||
<?php if (isset($this->ws)) : ?>
|
<?php if (isset($this->ws)) : ?>
|
||||||
<button id="spl_delete" class="ui-button ui-widget ui-state-default" role="button" aria-disabled="false">Delete</button>
|
<button id="ws_delete" class="ui-button ui-widget ui-state-default" role="button" aria-disabled="false">Delete</button>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
<?php if (isset($this->ws)) : ?>
|
<?php if (isset($this->ws)) : ?>
|
||||||
|
@ -25,13 +25,13 @@
|
||||||
<dd id="streamurl-element">
|
<dd id="streamurl-element">
|
||||||
<input type="text" value="http://"/>
|
<input type="text" value="http://"/>
|
||||||
</dd>
|
</dd>
|
||||||
<dt id="length-label"><label for="length">Default Length:</label></dt>
|
<dt id="streamlength-label"><label for="streamlength">Default Length:</label></dt>
|
||||||
<dd id="length-element">
|
<dd id="streamlength-element">
|
||||||
<input type="text" value="00h 20m"/>
|
<input type="text" value="00h 20m"/>
|
||||||
</dd>
|
</dd>
|
||||||
<dd id="submit-element" class="buttons">
|
<dd id="submit-element" class="buttons">
|
||||||
<input class="ui-button ui-state-default" type="submit" value="Cancel" id="description_cancel" name="cancel">
|
<input class="ui-button ui-state-default" type="submit" value="Cancel" id="webstream_cancel" name="cancel">
|
||||||
<input class="ui-button ui-state-default" type="submit" value="Save" id="description_save" name="submit">
|
<input class="ui-button ui-state-default" type="submit" value="Save" id="webstream_save" name="submit">
|
||||||
</dd>
|
</dd>
|
||||||
</dl>
|
</dl>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
|
@ -427,4 +427,15 @@
|
||||||
<column name="start_time" phpName="DbStartTime" type="TIMESTAMP" required="true" />
|
<column name="start_time" phpName="DbStartTime" type="TIMESTAMP" required="true" />
|
||||||
<column name="end_time" phpName="DbEndTime" type="TIMESTAMP" required="false"/>
|
<column name="end_time" phpName="DbEndTime" type="TIMESTAMP" required="false"/>
|
||||||
</table>
|
</table>
|
||||||
|
<table name="cc_webstream" phpName="CcWebstream">
|
||||||
|
<column name="id" phpName="DbId" primaryKey="true" type="INTEGER" autoIncrement="true" required="true" />
|
||||||
|
<column name="name" phpName="DbName" type="VARCHAR" size="255" required="true" />
|
||||||
|
<!-- TODO, remove hardlimit on this column length? -->
|
||||||
|
<column name="description" phpName="DbDescription" type="VARCHAR" size="255" required="true" />
|
||||||
|
<column name="url" phpName="DbUrl" type="VARCHAR" size="255" required="true" />
|
||||||
|
<column name="length" phpName="DbLength" type="VARCHAR" sqlType="interval" required="true" defaultValue="00:00:00"/>
|
||||||
|
<column name="login" phpName="DbLogin" type="VARCHAR" size="255" required="true" />
|
||||||
|
<column name="mtime" phpName="DbMtime" type="TIMESTAMP" size="6" required="true" />
|
||||||
|
<column name="utime" phpName="DbUtime" type="TIMESTAMP" size="6" required="true" />
|
||||||
|
</table>
|
||||||
</database>
|
</database>
|
||||||
|
|
|
@ -650,6 +650,30 @@ CREATE TABLE "cc_live_log"
|
||||||
COMMENT ON TABLE "cc_live_log" IS '';
|
COMMENT ON TABLE "cc_live_log" IS '';
|
||||||
|
|
||||||
|
|
||||||
|
SET search_path TO public;
|
||||||
|
-----------------------------------------------------------------------------
|
||||||
|
-- cc_webstream
|
||||||
|
-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
DROP TABLE "cc_webstream" CASCADE;
|
||||||
|
|
||||||
|
|
||||||
|
CREATE TABLE "cc_webstream"
|
||||||
|
(
|
||||||
|
"id" serial NOT NULL,
|
||||||
|
"name" VARCHAR(255) NOT NULL,
|
||||||
|
"description" VARCHAR(255) NOT NULL,
|
||||||
|
"url" VARCHAR(255) NOT NULL,
|
||||||
|
"length" interval default '00:00:00' NOT NULL,
|
||||||
|
"login" VARCHAR(255) NOT NULL,
|
||||||
|
"mtime" TIMESTAMP(6) NOT NULL,
|
||||||
|
"utime" TIMESTAMP(6) NOT NULL,
|
||||||
|
PRIMARY KEY ("id")
|
||||||
|
);
|
||||||
|
|
||||||
|
COMMENT ON TABLE "cc_webstream" IS '';
|
||||||
|
|
||||||
|
|
||||||
SET search_path TO public;
|
SET search_path TO public;
|
||||||
ALTER TABLE "cc_access" ADD CONSTRAINT "cc_access_owner_fkey" FOREIGN KEY ("owner") REFERENCES "cc_subjs" ("id");
|
ALTER TABLE "cc_access" ADD CONSTRAINT "cc_access_owner_fkey" FOREIGN KEY ("owner") REFERENCES "cc_subjs" ("id");
|
||||||
|
|
||||||
|
|
|
@ -449,4 +449,4 @@ div.helper li {
|
||||||
|
|
||||||
li.spl_empty {
|
li.spl_empty {
|
||||||
height: 56px;
|
height: 56px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -488,7 +488,39 @@ var AIRTIME = (function(AIRTIME){
|
||||||
$fs.addClass("closed");
|
$fs.addClass("closed");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
$pl.on("click", "#webstream_save", function(){
|
||||||
|
//get all fields and POST to server
|
||||||
|
//description
|
||||||
|
//stream url
|
||||||
|
//default_length
|
||||||
|
//playlist name
|
||||||
|
var description = $pl.find("#description").val();
|
||||||
|
var streamurl = $pl.find("#streamurl-element input").val();
|
||||||
|
var length = $pl.find("#streamlength-element input").val();
|
||||||
|
var name = $pl.find("#playlist_name_display").text();
|
||||||
|
|
||||||
|
var url = 'Webstream/save';
|
||||||
|
$.post(url,
|
||||||
|
{format: "json", description: description, url:streamurl, length: length, name: name},
|
||||||
|
function(json){
|
||||||
|
console.log(json);
|
||||||
|
|
||||||
|
/*
|
||||||
|
if (json.error !== undefined){
|
||||||
|
playlistError(json);
|
||||||
|
} else {
|
||||||
|
setModified(json.modified);
|
||||||
|
textarea.val(json.description);
|
||||||
|
$pl.find("#fieldset-metadate_change").addClass("closed");
|
||||||
|
redrawLib();
|
||||||
|
} */
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
)
|
||||||
$pl.on("click", "#description_save", function(){
|
$pl.on("click", "#description_save", function(){
|
||||||
var textarea = $pl.find("#fieldset-metadate_change textarea"),
|
var textarea = $pl.find("#fieldset-metadate_change textarea"),
|
||||||
description = textarea.val(),
|
description = textarea.val(),
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue