5 require_once 
"./Services/Object/classes/class.ilObject.php";
 
   16         public static $purposes = array (
"Standard", 
"VideoAlternative", 
"VideoPortable", 
"AudioPortable");    
 
   47                 $this->
ilObject($a_id,$a_call_by_reference);
 
   50                 $this->
setOrder(self::ORDER_CREATION_DATE_DESC);
 
   60                 $this->online = $a_online;
 
   80                 $this->publicfiles = $a_publicfiles;
 
  100                 $this->view_mode = $a_val;
 
  119                 $this->itemsarray = $a_itemsarray;
 
  129                 return $this->itemsarray;
 
  154                                 $med_items = 
ilUtil::sortArray($med_items, 
"creation_date", 
"desc", 
false, 
true);
 
  160                                 foreach(array_keys($med_items) as $idx)
 
  162                                         if(array_key_exists($idx, 
$order))
 
  164                                                 $med_items[$idx][
"order"] = (
$order[$idx]+1)*10;
 
  169                                                 $med_items[$idx][
"order"] = (++$pos)*10;
 
  188                 $this->downloadable = $a_downloadable;
 
  215             $this->defaultAccess = (int) $value == 0 ? 0 : 1;
 
  225                 $this->order = $a_value;
 
  245             require_once(
"./Modules/MediaCast/classes/class.ilObjMediaCastAccess.php");
 
  258                 $query = 
"INSERT INTO il_media_cast_data (".
 
  267                         $ilDB->quote($this->
getId(), 
"integer")
 
  268                         .
",".$ilDB->quote((
int) $this->
getOnline(), 
"integer")
 
  272                         .
",".$ilDB->quote((
int) $this->
getOrder(), 
"integer")
 
  273                         .
",".$ilDB->quote((
int) $this->
getViewMode(), 
"text")                   
 
  275                 $ilDB->manipulate(
$query);
 
  289                 if (!parent::update())
 
  295                 $query = 
"UPDATE il_media_cast_data SET ".
 
  296                         " is_online = ".$ilDB->quote((
int) $this->
getOnline(), 
"integer").
 
  297                         ", public_files = ".$ilDB->quote((
int) $this->
getPublicFiles(), 
"integer").
 
  298                         ", downloadable = ".$ilDB->quote((
int) $this->
getDownloadable(), 
"integer").
 
  300                     ", sortmode = ".$ilDB->quote((
int) $this->
getOrder(), 
"integer").
 
  301                     ", viewmode = ".$ilDB->quote($this->
getViewMode(), 
"text").
 
  302                         " WHERE id = ".$ilDB->quote((
int) $this->
getId(), 
"integer");
 
  304                 $ilDB->manipulate(
$query);
 
  319                 $query = 
"SELECT * FROM il_media_cast_data WHERE id = ".
 
  320                         $ilDB->quote($this->
getId(), 
"integer");
 
  321                 $set = $ilDB->query(
$query);
 
  322                 $rec = $ilDB->fetchAssoc($set);
 
  345                 if (!parent::delete())
 
  352                 foreach ($med_items as $item)
 
  354                         include_once(
"./Services/News/classes/class.ilNewsItem.php");
 
  356                         $news_item->delete();
 
  362                 $query = 
"DELETE FROM il_media_cast_data".
 
  363                         " WHERE id = ".$ilDB->quote($this->
getId(), 
"integer");
 
  364                 $ilDB->manipulate(
$query);
 
  392                 return $roles ? $roles : array();
 
  408         function notify($a_event,$a_ref_id,$a_parent_non_rbac_id,$a_node_id,$a_params = 0)
 
  448                 if ($a_node_id==
$_GET[
"ref_id"])
 
  450                         $parent_obj =& $this->ilias->obj_factory->getInstanceByRefId($a_node_id);
 
  451                         $parent_type = $parent_obj->getType();
 
  452                         if($parent_type == $this->
getType())
 
  454                                 $a_node_id = (int) $tree->getParentId($a_node_id);
 
  458                 parent::notify($a_event,$a_ref_id,$a_parent_non_rbac_id,$a_node_id,$a_params);
 
  467                 include_once(
"./Services/News/classes/class.ilNewsItem.php");
 
  469                 $it->setContextObjId($this->
getId());
 
  470                 $it->setContextObjType($this->
getType());
 
  471                 $this->itemsarray = $it->queryNewsForContext(
false, 0, 
"", 
false, $a_oldest_first);
 
  473                 return $this->itemsarray;
 
  485                 $sql = 
"DELETE FROM il_media_cast_data_ord".
 
  486                         " WHERE obj_id = ".$ilDB->quote($this->
getId(), 
"integer");
 
  487                 $ilDB->manipulate($sql);
 
  500                 $sql = 
"SELECT item_id FROM il_media_cast_data_ord".
 
  501                         " WHERE obj_id = ".$ilDB->quote($this->
getId(), 
"integer").
 
  503                 $res = $ilDB->query($sql);
 
  504                 while(
$row = $ilDB->fetchAssoc(
$res))
 
  506                         $all[] = 
$row[
"item_id"];
 
  523                 foreach($a_items as $item_id)
 
  527                         $sql = 
"INSERT INTO il_media_cast_data_ord (obj_id,item_id,pos)".
 
  528                                 " VALUES (".$ilDB->quote($this->
getId(), 
"integer").
",".
 
  529                                 $ilDB->quote($item_id, 
"integer").
",".
 
  530                                 $ilDB->quote($pos, 
"integer").
")";
 
  531                         $ilDB->manipulate($sql);
 
  547                 $new_obj->setTitle($this->
getTitle());
 
  551                 $new_obj->setOrder($this->
getOrder());
 
  572                 include_once(
"./Services/MediaObjects/classes/class.ilObjMediaObject.php");
 
  576                         $mob_id = $item[
"mob_id"];
 
  578                         $new_mob = $mob->duplicate();
 
  582                         include_once(
"./Services/News/classes/class.ilNewsItem.php");
 
  584                         $mc_item->setMobId($new_mob->getId());
 
  586                         $mc_item->setContextObjId($a_new_obj->getId());
 
  587                         $mc_item->setContextObjType($a_new_obj->getType());
 
  588                         $mc_item->setUserId($ilUser->getId());
 
  589                         $mc_item->setPlaytime($item[
"playtime"]);
 
  590                         $mc_item->setTitle($item[
"title"]);
 
  591                         $mc_item->setContent($item[
"content"]);
 
  592                         $mc_item->setVisibility($item[
"visibility"]);