ILIAS  release_7 Revision v7.30-3-g800a261c036
ilSCORM2004PageNode Class Reference

Class ilSCORM2004PageNode. More...

+ Inheritance diagram for ilSCORM2004PageNode:
+ Collaboration diagram for ilSCORM2004PageNode:

Public Member Functions

 __construct ($a_slm_object, $a_id=0)
 Constructor @access public. More...
 
 __destruct ()
 Destructor. More...
 
 read ()
 Read data from database. More...
 
 create ($a_upload=false, $a_layout_id=0)
 Create Scorm Page. More...
 
 delete ($a_delete_meta_data=true)
 Delete Scorm Page. More...
 
 copy ($a_target_slm)
 copy page node More...
 
copyToOtherContObject (&$a_cont_obj)
 copy a page to another content object (learning module / dlib book) More...
 
 assignPageObject (&$a_page_obj)
 Assign page object. More...
 
getPageObject ()
 Get assigned page object. More...
 
 setId ($a_id)
 Set id. More...
 
 getId ()
 Get id. More...
 
 setAlias ($a_is_alias)
 Set wether page object is an alias. More...
 
 isAlias ()
 
 setOriginID ($a_id)
 
 getOriginID ()
 
 getMediaObjectIds ()
 get ids of all media objects within the page More...
 
 getFileItemIds ()
 get ids of all file items within the page More...
 
- Public Member Functions inherited from ilSCORM2004Node
 __construct ($a_slm_object, $a_id=0)
 
 setTitle ($a_title)
 Set title. More...
 
 getTitle ()
 Get title. More...
 
 setDescription ($a_description)
 Set description. More...
 
 getDescription ()
 Get description. More...
 
 setType ($a_type)
 Set type. More...
 
 getType ()
 Get type. More...
 
 setSLMId ($a_slm_id)
 Set ID of parent Scorm Learning Module Object. More...
 
 getSLMId ()
 Get ID of parent Scorm Learning Module Object. More...
 
 setSLMObject ($a_slm_obj)
 Set Scorm Learning Module Object. More...
 
 getSLMObject ()
 Get scorm learning module object. More...
 
 getContentObject ()
 Get Scorm Learning Module Object. More...
 
 setId ($a_id)
 Set Node ID. More...
 
 getId ()
 Get Node ID. More...
 
 getImportId ()
 Set Import ID. More...
 
 setImportId ($a_id)
 Get Import ID. More...
 
 read ()
 Read Data of Node. More...
 
 MDUpdateListener ($a_element)
 Meta data update listener. More...
 
 createMetaData ()
 create meta data entry More...
 
 updateMetaData ()
 update meta data entry More...
 
 deleteMetaData ()
 delete meta data entry More...
 
 setDataRecord ($a_record)
 this method should only be called by class ilSCORM2004NodeFactory More...
 
 create ($a_upload=false)
 Create Node. More...
 
 update ()
 Update Node. More...
 
 delete ()
 Delete Node. More...
 
 getObjectives ()
 
 deleteSeqInfo ()
 
 exportAsScorm12 ()
 
 exportAsScorm13 ()
 

Static Public Member Functions

static copyPageFromLM ($a_target_slm, $a_lm_page)
 Copy page from learning module. More...
 
- Static Public Member Functions inherited from ilSCORM2004Node
static _lookupTitle ($a_obj_id)
 Lookup Title. More...
 
static _lookupType ($a_obj_id)
 Lookup Type. More...
 
static _writeTitle ($a_obj_id, $a_title)
 Write Title. More...
 
static _writeImportId ($a_id, $a_import_id)
 Write import ID. More...
 
static _getIdForImportId ($a_import_id)
 Get Node ID for import ID (static) More...
 
static _exists ($a_id)
 Checks wether a node exists. More...
 
static _deleteAllSLMNodes ($a_slm_object)
 Delete all nodes of Scorm Learning Module. More...
 
static _lookupSLMID ($a_id)
 Lookup Scorm Learning Module ID for node id. More...
 
static putInTree ($a_obj, $a_parent_id="", $a_target_node_id="")
 put this object into content object tree More...
 
static getTree ($a_slm_obj_id)
 Get scorm module editing tree. More...
 
static clipboardCopy ($a_slm_obj_id, $a_ids)
 Copy a set of chapters/pages/scos into the clipboard. More...
 
static clipboardCut ($a_slm_obj_id, $a_ids)
 Cut and copy a set of chapters/pages into the clipboard. More...
 
static uniqueTypesCheck ($a_items)
 Check for unique types (all pages or all chapters or all scos) More...
 
static insertPageClip ($a_slm_obj)
 Insert pages from clipboard. More...
 
static insertAssetClip ($a_slm_obj, $a_type="ass")
 Insert assets from clipboard. More...
 
static insertScoClip ($a_slm_obj)
 Insert scos from clipboard. More...
 
static insertChapterClip ($a_slm_obj, $a_as_sub=false)
 Insert Chapter from clipboard. More...
 
static pasteTree ( $a_target_slm, $a_item_id, $a_parent_id, $a_target, $a_insert_time, &$a_copied_nodes, $a_as_copy=false, $a_from_clipboard=true, $a_source_parent_type="")
 Paste item (tree) from clipboard or other learning module to target scorm learning module. More...
 

Data Fields

 $id
 
 $page_object
 
- Data Fields inherited from ilSCORM2004Node
 $slm_id
 
 $type
 
 $id
 
 $slm_object
 

Additional Inherited Members

- Protected Attributes inherited from ilSCORM2004Node
 $db
 
 $user
 

Detailed Description

Class ilSCORM2004PageNode.

Handles Pages for SCORM 2004 Editing

Note: This class has a member variable that contains an instance of class ilSCORM2004Page and provides the method getPageObject() to access this instance. ilSCORM2004Page handles page objects and their content.

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Version
$Id$

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

Constructor & Destructor Documentation

◆ __construct()

ilSCORM2004PageNode::__construct (   $a_slm_object,
  $a_id = 0 
)

Constructor @access public.

Reimplemented from ilSCORM2004Node.

Definition at line 32 of file class.ilSCORM2004PageNode.php.

33 {
34 parent::__construct($a_slm_object, $a_id);
35 $this->setType("page");
36 $this->id = $a_id;
37
38 $this->mobs_contained = array();
39 $this->files_contained = array();
40
41 if ($a_id != 0) {
42 $this->read();
43 }
44 }
setType($a_type)
Set type.
read()
Read data from database.
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc

References ILIAS\GlobalScreen\Provider\__construct(), read(), and ilSCORM2004Node\setType().

+ Here is the call graph for this function:

◆ __destruct()

ilSCORM2004PageNode::__destruct ( )

Destructor.

Definition at line 49 of file class.ilSCORM2004PageNode.php.

50 {
51 if (is_object($this->page_object)) {
52 unset($this->page_object);
53 }
54 }

Member Function Documentation

◆ assignPageObject()

ilSCORM2004PageNode::assignPageObject ( $a_page_obj)

Assign page object.

Parameters
object$a_page_objpage object

Definition at line 201 of file class.ilSCORM2004PageNode.php.

202 {
203 $this->page_object = $a_page_obj;
204 }

◆ copy()

ilSCORM2004PageNode::copy (   $a_target_slm)

copy page node

Definition at line 104 of file class.ilSCORM2004PageNode.php.

105 {
106 // copy page
107 $slm_page = new ilSCORM2004PageNode($a_target_slm);
108 $slm_page->setTitle($this->getTitle());
109 $slm_page->setSLMId($a_target_slm->getId());
110 $slm_page->setType($this->getType());
111 $slm_page->setDescription($this->getDescription());
112 $slm_page->setImportId("il__page_" . $this->getId());
113 $slm_page->create(true); // setting "upload" flag to true prevents creating of meta data
114
115 // copy meta data
116 include_once("Services/MetaData/classes/class.ilMD.php");
117 $md = new ilMD($this->getSLMId(), $this->getId(), $this->getType());
118 $new_md = $md->cloneMD($a_target_slm->getId(), $slm_page->getId(), $this->getType());
119
120 // copy page content
121 $page = $slm_page->getPageObject();
122 // clone media objects, if source and target lm are not the same
123 $clone_mobs = ($this->getSLMId() == $a_target_slm->getId())
124 ? false
125 : true;
126
127 $this->page_object->copy($page->getId(), $page->getParentType(), $page->getParentId(), $clone_mobs);
128
129 //$page->setXMLContent($this->page_object->copyXMLContent($clone_mobs));
130 //$page->buildDom();
131 //$page->update();
132
133 return $slm_page;
134 }
getSLMId()
Get ID of parent Scorm Learning Module Object.
getDescription()
Get description.
Class ilSCORM2004PageNode.

References ilSCORM2004Node\getDescription(), getId(), ilSCORM2004Node\getSLMId(), ilSCORM2004Node\getTitle(), and ilSCORM2004Node\getType().

+ Here is the call graph for this function:

◆ copyPageFromLM()

static ilSCORM2004PageNode::copyPageFromLM (   $a_target_slm,
  $a_lm_page 
)
static

Copy page from learning module.

Definition at line 139 of file class.ilSCORM2004PageNode.php.

140 {
141 // copy page
142 $slm_page = new ilSCORM2004PageNode($a_target_slm);
143 $slm_page->setTitle($a_lm_page->getTitle());
144 $slm_page->setSLMId($a_target_slm->getId());
145 $slm_page->setType("page");
146 $slm_page->create(true); // setting "upload" flag to true prevents creating of meta data
147
148 // copy meta data
149 include_once("Services/MetaData/classes/class.ilMD.php");
150 $md = new ilMD($a_lm_page->getLMId(), $a_lm_page->getId(), $a_lm_page->getType());
151 $md->cloneMD($a_target_slm->getId(), $slm_page->getId(), "page");
152
153 // copy page content
154 $page = $slm_page->getPageObject();
155 $clone_mobs = true;
156 $a_lm_page->getPageObject()->copy($page->getId(), $page->getParentType(), $page->getParentId(), $clone_mobs);
157
158 $slm_page = new ilSCORM2004PageNode($a_target_slm, $slm_page->getId());
159 $slm_page->getPageObject()->removeInvalidLinks();
160
161 return $slm_page;
162 }

Referenced by ilSCORM2004Node\pasteTree().

+ Here is the caller graph for this function:

◆ copyToOtherContObject()

& ilSCORM2004PageNode::copyToOtherContObject ( $a_cont_obj)

copy a page to another content object (learning module / dlib book)

Definition at line 168 of file class.ilSCORM2004PageNode.php.

169 {
170 // @todo
171 /*
172 // copy page
173 $lm_page = new ilLMPageObject($a_cont_obj);
174 $lm_page->setTitle($this->getTitle());
175 $lm_page->setLMId($a_cont_obj->getId());
176 $lm_page->setType($this->getType());
177 $lm_page->setDescription($this->getDescription());
178 $lm_page->create(true); // setting "upload" flag to true prevents creating of meta data
179
180 // copy meta data
181 include_once("Services/MetaData/classes/class.ilMD.php");
182 $md = new ilMD($this->getLMId(), $this->getId(), $this->getType());
183 $new_md =& $md->cloneMD($a_cont_obj->getId(), $lm_page->getId(), $this->getType());
184
185 // copy page content
186 $page =& $lm_page->getPageObject();
187 $page->setXMLContent($this->page_object->getXMLContent());
188 $page->buildDom();
189 $page->update();
190
191 return $lm_page;
192 */
193 }

◆ create()

ilSCORM2004PageNode::create (   $a_upload = false,
  $a_layout_id = 0 
)

Create Scorm Page.

Parameters
booleanUpload Mode

Definition at line 71 of file class.ilSCORM2004PageNode.php.

72 {
73 parent::create($a_upload);
74
75 // create scorm2004 page
76 include_once("./Modules/Scorm2004/classes/class.ilSCORM2004Page.php");
77 if (!is_object($this->page_object)) {
78 $this->page_object = new ilSCORM2004Page($this->slm_object->getType());
79 }
80 $this->page_object->setId($this->getId());
81 $this->page_object->setParentId($this->getSLMId());
82 if ($a_layout_id == 0) {
83 $this->page_object->create($a_upload);
84 } else {
85 $this->page_object->createWithLayoutId($a_layout_id);
86 }
87 }
Class ilSCORM2004Page.

References getId(), and ilSCORM2004Node\getSLMId().

+ Here is the call graph for this function:

◆ delete()

ilSCORM2004PageNode::delete (   $a_delete_meta_data = true)

Delete Scorm Page.

Parameters
booleanDelete also metadata.

Definition at line 94 of file class.ilSCORM2004PageNode.php.

95 {
96 parent::delete($a_delete_meta_data);
97 $this->page_object->delete();
98 }

◆ getFileItemIds()

ilSCORM2004PageNode::getFileItemIds ( )

get ids of all file items within the page

note: this method must be called afer exportXMLPageContent

Definition at line 278 of file class.ilSCORM2004PageNode.php.

279 {
280 return $this->files_contained;
281 }

◆ getId()

ilSCORM2004PageNode::getId ( )

Get id.

Returns
int Page ID

Reimplemented from ilSCORM2004Node.

Definition at line 233 of file class.ilSCORM2004PageNode.php.

References $id.

Referenced by copy(), and create().

+ Here is the caller graph for this function:

◆ getMediaObjectIds()

ilSCORM2004PageNode::getMediaObjectIds ( )

get ids of all media objects within the page

note: this method must be called afer exportXMLPageContent

Definition at line 268 of file class.ilSCORM2004PageNode.php.

269 {
270 return $this->mobs_contained;
271 }

◆ getOriginID()

ilSCORM2004PageNode::getOriginID ( )

Definition at line 258 of file class.ilSCORM2004PageNode.php.

259 {
260 return $this->origin_id;
261 }

◆ getPageObject()

& ilSCORM2004PageNode::getPageObject ( )

Get assigned page object.

Returns
object page object

Definition at line 212 of file class.ilSCORM2004PageNode.php.

References $page_object.

◆ isAlias()

ilSCORM2004PageNode::isAlias ( )

Definition at line 246 of file class.ilSCORM2004PageNode.php.

247 {
248 return $this->is_alias;
249 }

◆ read()

ilSCORM2004PageNode::read ( )

Read data from database.

Reimplemented from ilSCORM2004Node.

Definition at line 59 of file class.ilSCORM2004PageNode.php.

60 {
61 parent::read();
62
63 $this->page_object = new ilSCORM2004Page($this->id, 0);
64 }

Referenced by __construct().

+ Here is the caller graph for this function:

◆ setAlias()

ilSCORM2004PageNode::setAlias (   $a_is_alias)

Set wether page object is an alias.

Definition at line 241 of file class.ilSCORM2004PageNode.php.

242 {
243 $this->is_alias = $a_is_alias;
244 }

◆ setId()

ilSCORM2004PageNode::setId (   $a_id)

Set id.

Parameters
intPage ID

Reimplemented from ilSCORM2004Node.

Definition at line 223 of file class.ilSCORM2004PageNode.php.

224 {
225 $this->id = $a_id;
226 }

◆ setOriginID()

ilSCORM2004PageNode::setOriginID (   $a_id)

Definition at line 252 of file class.ilSCORM2004PageNode.php.

253 {
254 return $this->origin_id = $a_id;
255 }

Field Documentation

◆ $id

ilSCORM2004PageNode::$id

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

Referenced by getId().

◆ $page_object

ilSCORM2004PageNode::$page_object

Definition at line 26 of file class.ilSCORM2004PageNode.php.

Referenced by getPageObject().


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