ILIAS  trunk Revision v13.0_alpha-62-g3b72d83f2e5
ilLPCollectionOfMediaObjects Class Reference
+ Inheritance diagram for ilLPCollectionOfMediaObjects:
+ Collaboration diagram for ilLPCollectionOfMediaObjects:

Public Member Functions

 getPossibleItems ()
 
 getTableGUIData (int $a_parent_ref_id)
 
 cloneCollection (int $a_target_id, int $a_copy_id, ?array $mob_mapping=null)
 Scorm items are not copied, they are newly created by reading the manifest. More...
 
- Public Member Functions inherited from ilLPCollection
 __construct (int $a_obj_id, int $a_mode)
 
 hasSelectableItems ()
 
 cloneCollection (int $a_target_id, int $a_copy_id)
 
 getItems ()
 
 delete ()
 
 isAssignedEntry (int $a_item_id)
 
 deactivateEntries (array $a_item_ids)
 
 activateEntries (array $a_item_ids)
 

Static Protected Attributes

static array $possible_items = array()
 

Additional Inherited Members

- Static Public Member Functions inherited from ilLPCollection
static getInstanceByMode (int $a_obj_id, int $a_mode)
 
static getCollectionModes ()
 
- Protected Member Functions inherited from ilLPCollection
 read (int $a_obj_id)
 
 validateEntry (int $a_item_id)
 
 addEntry (int $a_item_id)
 
 deleteEntry (int $a_item_id)
 
- Protected Attributes inherited from ilLPCollection
array $items
 
int $obj_id
 
int $mode
 
ilDBInterface $db
 
ilLogger $logger
 
TrackingDBFactoryInterface $tracking_db_factory
 

Detailed Description

Definition at line 21 of file class.ilLPCollectionOfMediaObjects.php.

Member Function Documentation

◆ cloneCollection()

ilLPCollectionOfMediaObjects::cloneCollection ( int  $a_target_id,
int  $a_copy_id,
?array  $mob_mapping = null 
)

Scorm items are not copied, they are newly created by reading the manifest.

Therefore, they do not have a mapping. So we need to map them via the import_id/identifierref

Parameters
int$a_target_id
int$a_copy_id

Definition at line 64 of file class.ilLPCollectionOfMediaObjects.php.

64 : void
65 {
66 $target_obj_id = ilObject::_lookupObjId($a_target_id);
67 $new_collection = new static($target_obj_id, $this->mode);
68 $possible_items = $new_collection->getPossibleItems();
69 foreach ($this->items as $item_id) {
70 if (isset($mob_mapping[$item_id]) && isset($possible_items[$mob_mapping[$item_id]])) {
71 $new_collection->addEntry($mob_mapping[$item_id]);
72 }
73 }
74 }
static _lookupObjId(int $ref_id)

References ilLPCollection\$mode, $possible_items, and ilObject\_lookupObjId().

+ Here is the call graph for this function:

◆ getPossibleItems()

ilLPCollectionOfMediaObjects::getPossibleItems ( )

Definition at line 25 of file class.ilLPCollectionOfMediaObjects.php.

25 : array
26 {
27 if (!isset(self::$possible_items[$this->obj_id])) {
28 $items = array();
29
30 $cast = new ilObjMediaCast($this->obj_id, false);
31
32 foreach ($cast->getSortedItemsArray() as $item) {
33 $items[$item["mob_id"]] = array("title" => $item["title"]);
34 }
35 self::$possible_items[$this->obj_id] = $items;
36 }
37 return self::$possible_items[$this->obj_id];
38 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...

References ilLPCollection\$items, and ilLPCollection\$obj_id.

Referenced by getTableGUIData().

+ Here is the caller graph for this function:

◆ getTableGUIData()

ilLPCollectionOfMediaObjects::getTableGUIData ( int  $a_parent_ref_id)

Definition at line 40 of file class.ilLPCollectionOfMediaObjects.php.

40 : array
41 {
42 $data = array();
43
44 foreach ($this->getPossibleItems() as $mob_id => $item) {
45 $tmp = array();
46 $tmp['id'] = $mob_id;
47 $tmp['ref_id'] = 0;
48 $tmp['type'] = 'mob';
49 $tmp['title'] = $item['title'];
50 $tmp['status'] = $this->isAssignedEntry($mob_id);
51
52 $data[] = $tmp;
53 }
54
55 return $data;
56 }
isAssignedEntry(int $a_item_id)
$data
Definition: storeScorm.php:45

References $data, getPossibleItems(), and ilLPCollection\isAssignedEntry().

+ Here is the call graph for this function:

Field Documentation

◆ $possible_items

array ilLPCollectionOfMediaObjects::$possible_items = array()
staticprotected

Definition at line 23 of file class.ilLPCollectionOfMediaObjects.php.

Referenced by cloneCollection().


The documentation for this class was generated from the following file: