ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
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 ()
 
 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 public.

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

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

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  }
read()
Read data from database.
__construct(Container $dic, ilPlugin $plugin)
setType($a_type)
Set type.
+ 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.

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

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

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

Referenced by ilSCORM2004Node\pasteTree().

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  }
& cloneMD($a_rbac_id, $a_obj_id, $a_obj_type)
Definition: class.ilMD.php:326
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 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.

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

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  }
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 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

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

References $id.

Referenced by copy(), and create().

234  {
235  return $this->id;
236  }
+ 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.

Referenced by copyPageFromLM().

213  {
214  return $this->page_object;
215  }
+ Here is the caller graph for this function:

◆ 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.

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

Referenced by __construct().

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

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: