ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
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 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 ()
 
 parentHasSeqTemplate ()
 
 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
 

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 27 of file class.ilSCORM2004PageNode.php.

Constructor & Destructor Documentation

◆ __construct()

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

Constructor public.

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

References array, read(), and ilSCORM2004Node\setType().

37  {
38  parent::__construct($a_slm_object, $a_id);
39  $this->setType("page");
40  $this->id = $a_id;
41 
42  $this->mobs_contained = array();
43  $this->files_contained = array();
44 
45  if($a_id != 0)
46  {
47  $this->read();
48  }
49  }
read()
Read data from database.
Create styles array
The data for the language used.
setType($a_type)
Set type.
+ Here is the call graph for this function:

◆ __destruct()

ilSCORM2004PageNode::__destruct ( )

Destructor.

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

55  {
56  if(is_object($this->page_object))
57  {
58  unset($this->page_object);
59  }
60  }

Member Function Documentation

◆ assignPageObject()

ilSCORM2004PageNode::assignPageObject ( $a_page_obj)

Assign page object.

Parameters
object$a_page_objpage object

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

209  {
210  $this->page_object = $a_page_obj;
211  }

◆ copy()

ilSCORM2004PageNode::copy (   $a_target_slm)

copy page node

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

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

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

References ilMD\cloneMD(), and getPageObject().

Referenced by ilSCORM2004Node\pasteTree().

147  {
148  // copy page
149  $slm_page = new ilSCORM2004PageNode($a_target_slm);
150  $slm_page->setTitle($a_lm_page->getTitle());
151  $slm_page->setSLMId($a_target_slm->getId());
152  $slm_page->setType("page");
153  $slm_page->create(true); // setting "upload" flag to true prevents creating of meta data
154 
155  // copy meta data
156  include_once("Services/MetaData/classes/class.ilMD.php");
157  $md = new ilMD($a_lm_page->getLMId(), $a_lm_page->getId(), $a_lm_page->getType());
158  $md->cloneMD($a_target_slm->getId(), $slm_page->getId(), "page");
159 
160  // copy page content
161  $page = $slm_page->getPageObject();
162  $clone_mobs = true;
163  $a_lm_page->getPageObject()->copy($page->getId(), $page->getParentType(), $page->getParentId(), $clone_mobs);
164 
165  $slm_page = new ilSCORM2004PageNode($a_target_slm, $slm_page->getId());
166  $slm_page->getPageObject()->removeInvalidLinks();
167 
168  return $slm_page;
169  }
& cloneMD($a_rbac_id, $a_obj_id, $a_obj_type)
Definition: class.ilMD.php:346
Class ilSCORM2004PageNode.
& getPageObject()
Get assigned page object.
+ Here is the call graph for this function:
+ 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 175 of file class.ilSCORM2004PageNode.php.

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

◆ create()

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

Create Scorm Page.

Parameters
booleanUpload Mode

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

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

78  {
79  parent::create($a_upload);
80 
81  // create scorm2004 page
82  include_once("./Modules/Scorm2004/classes/class.ilSCORM2004Page.php");
83  if(!is_object($this->page_object))
84  {
85  $this->page_object = new ilSCORM2004Page($this->slm_object->getType());
86  }
87  $this->page_object->setId($this->getId());
88  $this->page_object->setParentId($this->getSLMId());
89  if ($a_layout_id == 0) {
90  $this->page_object->create($a_upload);
91  } else{
92  $this->page_object->createWithLayoutId($a_layout_id);
93  }
94  }
getSLMId()
Get ID of parent Scorm Learning Module Object.
Class ilSCORM2004Page.
setId($a_id)
set id
+ 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 101 of file class.ilSCORM2004PageNode.php.

102  {
103  parent::delete($a_delete_meta_data);
104  $this->page_object->delete();
105  }

◆ getFileItemIds()

ilSCORM2004PageNode::getFileItemIds ( )

get ids of all file items within the page

note: this method must be called afer exportXMLPageContent

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

286  {
287  return $this->files_contained;
288  }

◆ getId()

ilSCORM2004PageNode::getId ( )

Get id.

Returns
int Page ID

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

References $id.

Referenced by copy(), and create().

241  {
242  return $this->id;
243  }
+ 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 275 of file class.ilSCORM2004PageNode.php.

276  {
277  return $this->mobs_contained;
278  }

◆ getOriginID()

ilSCORM2004PageNode::getOriginID ( )

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

266  {
267  return $this->origin_id;
268  }

◆ getPageObject()

& ilSCORM2004PageNode::getPageObject ( )

Get assigned page object.

Returns
object page object

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

References $page_object.

Referenced by copyPageFromLM().

220  {
221  return $this->page_object;
222  }
+ Here is the caller graph for this function:

◆ isAlias()

ilSCORM2004PageNode::isAlias ( )

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

254  {
255  return $this->is_alias;
256  }

◆ read()

ilSCORM2004PageNode::read ( )

Read data from database.

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

Referenced by __construct().

66  {
67  parent::read();
68 
69  $this->page_object = new ilSCORM2004Page($this->id, 0);
70  }
Class ilSCORM2004Page.
+ Here is the caller graph for this function:

◆ setAlias()

ilSCORM2004PageNode::setAlias (   $a_is_alias)

Set wether page object is an alias.

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

249  {
250  $this->is_alias = $a_is_alias;
251  }

◆ setId()

ilSCORM2004PageNode::setId (   $a_id)

Set id.

Parameters
intPage ID

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

231  {
232  $this->id = $a_id;
233  }

◆ setOriginID()

ilSCORM2004PageNode::setOriginID (   $a_id)

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

260  {
261  return $this->origin_id = $a_id;
262  }

Field Documentation

◆ $id

ilSCORM2004PageNode::$id

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

Referenced by getId().

◆ $page_object

ilSCORM2004PageNode::$page_object

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

Referenced by getPageObject().


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