20 private $type = self::TYPE_CREATION;
74 $this->enabled = $a_status;
92 $this->title = $a_title;
118 return $tit ? $tit : $this->
getTitle();
153 $this->description = $a_description;
162 $this->
info = $a_info;
180 $this->type = $a_type;
212 $this->assignments = (array) $a_ass;
230 $this->assignments[] = $a_obj_type;
285 $this->icon_ide = $icon_identifier;
302 $lang = $trans->getLanguages();
304 foreach (
$lang as $k => $v) {
305 if ($v[
'lang_default']) {
311 if (!isset(
$lang[0])) {
314 $lang[0][
'lang_code'] = $trans->getDefaultLanguage();
332 $a_lng =
$ilUser->getCurrentLanguage();
335 if (isset(
$lang[$a_lng][$a_value])) {
336 return $lang[$a_lng][$a_value] ;
345 public function delete()
349 $ilDB = $DIC[
'ilDB'];
356 $query =
'DELETE FROM didactic_tpl_settings ' .
357 'WHERE id = ' .
$ilDB->quote($this->
getId(),
'integer');
361 $query =
'DELETE FROM didactic_tpl_sa ' .
362 'WHERE id = ' .
$ilDB->quote($this->
getId(),
'integer');
365 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateActionFactory.php';
370 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateObjSettings.php';
386 $ilDB = $DIC[
'ilDB'];
388 $this->
setId(
$ilDB->nextId(
'didactic_tpl_settings'));
390 $query =
'INSERT INTO didactic_tpl_settings (id,enabled,title,description,info,type,auto_generated,exclusive_tpl,icon_ide) ' .
392 $ilDB->quote($this->
getId(),
'integer') .
', ' .
403 $ilDB->manipulate($query);
435 $ilDB = $DIC[
'ilDB'];
441 $query =
'INSERT INTO didactic_tpl_sa (id,obj_type) ' .
443 $ilDB->quote($this->
getId(),
'integer') .
', ' .
444 $ilDB->quote($a_obj_type,
'text') .
456 $ilDB = $DIC[
'ilDB'];
464 $ilDB->quote($this->
getId(),
'integer') .
', ' .
465 $ilDB->quote($node,
'integer') .
469 $query =
'INSERT INTO didactic_tpl_en (id,node) ' .
470 'VALUES ' . implode(
', ', $values);
479 $ilDB = $DIC[
'ilDB'];
481 $query =
'DELETE FROM didactic_tpl_en ' .
482 'WHERE id = ' .
$ilDB->quote($this->
getId(),
'integer');
491 $ilDB = $DIC[
'ilDB'];
492 $effective_nodes = array();
494 $query =
'SELECT * FROM didactic_tpl_en ' .
495 'WHERE id = ' .
$ilDB->quote($this->
getId(),
'integer');
498 $effective_nodes[] = $row->node;
513 $ilDB = $DIC[
'ilDB'];
519 $query =
'DELETE FROM didactic_tpl_sa ' .
520 'WHERE id = ' .
$ilDB->quote($this->
getId(),
'integer');
534 $ilDB = $DIC[
'ilDB'];
536 $query =
'UPDATE didactic_tpl_settings ' .
538 'enabled = ' .
$ilDB->quote($this->
isEnabled(),
'integer') .
', ' .
539 'title = ' .
$ilDB->quote($this->
getTitle(),
'text') .
', ' .
541 'info = ' .
$ilDB->quote($this->
getInfo(),
'text') .
', ' .
542 'type = ' .
$ilDB->quote($this->
getType(),
'integer') .
', ' .
543 'exclusive_tpl = ' .
$ilDB->quote((
int) $this->
isExclusive(),
'integer') .
', ' .
545 'WHERE id = ' .
$ilDB->quote($this->
getId(),
'integer');
564 $ilDB = $DIC[
'ilDB'];
566 if (!$this->
getId()) {
573 $query =
'SELECT * FROM didactic_tpl_settings dtpl ' .
574 'WHERE id = ' .
$ilDB->quote($this->
getId(),
'integer');
578 $this->
enable($row->enabled);
590 $query =
'SELECT * FROM didactic_tpl_sa ' .
591 'WHERE id = ' .
$ilDB->quote($this->
getId(),
'integer');
613 case self::TYPE_CREATION:
625 if (strlen($this->
getInfo())) {
628 $info_lines = (array) explode(
"\n", $this->
getInfo());
629 foreach ($info_lines as
$info) {
630 $trimmed_info = trim($info);
631 if (strlen($trimmed_info)) {
632 $writer->
xmlElement(
'p', array(), $trimmed_info);
656 $writer->
xmlElement(
'assignment', array(), $assignment);
662 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateActionFactory.php';
664 $action->toXml($writer);
678 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateCopier.php';
690 include_once(
"./Services/Multilingualism/classes/class.ilMultilingualism.php");
702 $tree = $DIC[
'tree'];
709 if ($tree->isGrandChild($node, $a_node_id)) {
static getInstance($a_obj_id, $a_type)
Get instance.
setInfo($a_info)
Set installation info text.
setType($a_type)
Set type.
isEnabled()
Check if template is enabled.
xmlStartTag($tag, $attrs=null, $empty=false, $encode=true, $escape=true)
Writes a starttag.
getDescription()
Get description.
getAssignments()
Get object assignemnts.
setTitle($a_title)
Set title.
saveAssignments()
Save assignments in DB.
getPresentation($a_value, $a_lng)
hasIconSupport(ilObjectDefinition $definition)
xmlEndTag($tag)
Writes an endtag.
addAssignment($a_obj_type)
Add one assignment obj type.
parses the objects.xml it handles the xml-description of all ilias objects
setAutoGenerated($auto_generated)
DO NOT CHANGE THIS VALUE.
foreach($_POST as $key=> $value) $res
update()
Update settings ilDB $ilDB.
setAssignments(array $a_ass)
Set assignments.
static deleteByTemplateId($a_tpl_id)
Delete by template id ilDB $ilDB.
read()
read settings from db
getPresentationDescription($a_lng="")
static appendCopyInfo($a_orig_title)
__construct($a_id=0)
Constructor.
getPresentationTitle($a_lng="")
toXml(ilXmlWriter $writer)
Export.
Icon handler for didactic template custom icons.
xmlElement($tag, $attrs=null, $data=null, $encode=true, $escape=true)
Writes a basic element (no children, just textual content)
enable($a_status)
Set enabled status.
saveAssignment($a_obj_type)
Add one object assignment ilDB $ilDB.
__clone()
Implemented clone method.
setIconIdentifier(string $icon_identifier)
deleteAssignments()
Delete assignments ilDB $ilDB.
getInfo()
Get installation info text.
isContainer($a_obj_name)
Check if object type is container ('crs','fold','grp' ...)
getTranslations()
get all translations from this object
setDescription($a_description)
Set description.
static getActionsByTemplateId($a_tpl_id)
Get actions of one template.
setEffectiveFrom($effective_from)