ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
ilContainer Class Reference

Class ilContainer. More...

+ Inheritance diagram for ilContainer:
+ Collaboration diagram for ilContainer:

Public Member Functions

 __construct ($a_id=0, $a_reference=true)
 
 getObjectTranslation ()
 Get object translation. More...
 
 setObjectTranslation (ilObjectTranslation $obj_trans)
 Get object translation. More...
 
 createContainerDirectory ()
 Create directory for the container. More...
 
 getContainerDirectory ()
 Get the container directory. More...
 
 setHiddenFilesFound ($a_hiddenfilesfound)
 Set Found hidden files (set by getSubItems). More...
 
 getHiddenFilesFound ()
 Get Found hidden files (set by getSubItems). More...
 
 getStyleSheetId ()
 get ID of assigned style sheet object More...
 
 setStyleSheetId ($a_style_id)
 set ID of assigned style sheet object More...
 
 setNewsTimeline ($a_val)
 Set news timeline. More...
 
 getNewsTimeline ()
 Get news timeline. More...
 
 setNewsTimelineAutoEntries ($a_val)
 Set news timeline auto entries. More...
 
 getNewsTimelineAutoEntries ()
 Get news timeline auto entries. More...
 
 setNewsTimelineLandingPage ($a_val)
 Set news timline is landing page. More...
 
 getNewsTimelineLandingPage ()
 Get news timline is landing page. More...
 
 isNewsTimelineEffective ()
 Is news timeline effective? More...
 
 isNewsTimelineLandingPageEffective ()
 Is news timeline landing page effective? More...
 
 setNewsBlockActivated ($a_val)
 Set news block activated. More...
 
 getNewsBlockActivated ()
 Get news block activated. More...
 
 setUseNews ($a_val)
 Set use news. More...
 
 getUseNews ()
 Get use news. More...
 
 cloneDependencies ($a_target_id, $a_copy_id)
 Clone object dependencies (container sorting) More...
 
 cloneAllObject ($session_id, $client_id, $new_type, $ref_id, $clone_source, $options, $soap_call=false, $a_submode=1)
 clone all objects according to this container More...
 
 delete ()
 delete category and all related data More...
 
 getViewMode ()
 Get container view mode. More...
 
 getOrderType ()
 Get order type default implementation. More...
 
 setOrderType ($a_value)
 
 isClassificationFilterActive ()
 Is classification filter active? More...
 
 filteredSubtree ()
 Note grp/crs currently allow to filter in their whole subtrees Catetories only their direct childs. More...
 
 getSubItems ( $a_admin_panel_enabled=false, $a_include_side_block=false, $a_get_single=0, \ilContainerUserFilter $container_user_filter=null)
 Get subitems of container. More...
 
 gotItems ()
 Check whether we got any items. More...
 
 addAdditionalSubItemInformation (&$object)
 Add additional information to sub item, e.g. More...
 
 getGroupedObjTypes ()
 Get grouped repository object types. More...
 
 enablePageEditing ()
 Check whether page editing is allowed for container. More...
 
 create ()
 Create. More...
 
 putInTree ($a_parent_ref)
 
 update ()
 Update. More...
 
 read ()
 read More...
 
 readContainerSettings ()
 Read container settings. More...
 
 removeTranslations ()
 Remove all translations of container. More...
 
 deleteTranslation ($a_lang)
 Delete translation. More...
 
 addTranslation ($a_title, $a_desc, $a_lang, $a_lang_default)
 Add translation. More...
 
- Public Member Functions inherited from ilObject
 __construct ($a_id=0, $a_reference=true)
 Constructor public. More...
 
 withReferences ()
 determines wehter objects are referenced or not (got ref ids or not) More...
 
 read ()
 read object data from db into object More...
 
 getId ()
 get object id public More...
 
 setId ($a_id)
 set object id public More...
 
 setRefId ($a_id)
 set reference id public More...
 
 getRefId ()
 get reference id public More...
 
 getType ()
 get object type public More...
 
 setType ($a_type)
 set object type public More...
 
 getPresentationTitle ()
 get presentation title Normally same as title Overwritten for sessions More...
 
 getTitle ()
 get object title public More...
 
 getUntranslatedTitle ()
 get untranslated object title public More...
 
 setTitle ($a_title)
 set object title More...
 
 getDescription ()
 get object description More...
 
 setDescription ($a_desc)
 set object description More...
 
 getLongDescription ()
 get object long description (stored in object_description) More...
 
 getImportId ()
 get import id More...
 
 setImportId ($a_import_id)
 set import id More...
 
 setOfflineStatus ($a_status)
 Set offline status. More...
 
 getOfflineStatus ()
 Get offline status. More...
 
 supportsOfflineHandling ()
 Check whether object supports offline handling. More...
 
 getOwner ()
 get object owner More...
 
 getOwnerName ()
 
 setOwner ($a_owner)
 set object owner More...
 
 getCreateDate ()
 get create date public More...
 
 getLastUpdateDate ()
 get last update date public More...
 
 getDiskUsage ()
 Gets the disk usage of the object in bytes. More...
 
 create ()
 create More...
 
 update ()
 update object in db 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...
 
 updateOwner ()
 update owner of object in db More...
 
 putInTree ($a_parent_ref)
 maybe this method should be in tree object!? More...
 
 setPermissions ($a_parent_ref)
 set permissions of object More...
 
 setParentRolePermissions ($a_parent_ref)
 Initialize the permissions of parent roles (local roles of categories, global roles...) This method is overwritten in e.g courses, groups for building permission intersections with non_member templates. More...
 
 createReference ()
 creates reference for object More...
 
 countReferences ()
 count references of object More...
 
 initDefaultRoles ()
 init default roles settings Purpose of this function is to create a local role folder and local roles, that are needed depending on the object type If you want to setup default local roles you MUST overwrite this method in derived object classes (see ilObjForum for an example) public More...
 
 applyDidacticTemplate ($a_tpl_id)
 Apply template. More...
 
 setRegisterMode ($a_bool)
 
 isUserRegistered ($a_user_id=0)
 
 requireRegistration ()
 
 getXMLZip ()
 
 getHTMLDirectory ()
 
 appendCopyInfo ($a_target_id, $a_copy_id)
 Prepend Copy info if object with same name exists in that container. More...
 
 cloneDependencies ($a_target_id, $a_copy_id)
 Clone object dependencies. More...
 
 cloneMetaData ($target_obj)
 Copy meta data. More...
 
 getPossibleSubObjects ($a_filter=true)
 get all possible subobjects of this type the object can decide which types of subobjects are possible jut in time overwrite if the decision distinguish from standard model More...
 

Static Public Member Functions

static _getContainerDirectory ($a_id)
 Get the container directory. More...
 
static _lookupContainerSetting ($a_id, $a_keyword, $a_default_value=null)
 Lookup a container setting. More...
 
static _writeContainerSetting ($a_id, $a_keyword, $a_value)
 
static _getContainerSettings ($a_id)
 
static _deleteContainerSettings ($a_id, $a_keyword=null, $a_keyword_like=false)
 
static _exportContainerSettings (ilXmlWriter $a_xml, $a_obj_id)
 
static getCompleteDescriptions (array $objects)
 overwrites description fields to long or short description in an assoc array keys needed (obj_id and description) More...
 
- Static Public Member Functions inherited from ilObject
static _lookupObjIdByImportId ($a_import_id)
 
static _lookupImportId ($a_obj_id)
 
static _lookupOwnerName ($a_owner_id)
 lookup owner name for owner id More...
 
static _getIdForImportId ($a_import_id)
 get current object id for import id (static) More...
 
static _getAllReferences ($a_id)
 get all reference ids of object More...
 
static _lookupTitle ($a_id)
 lookup object title More...
 
static lookupOfflineStatus ($a_obj_id)
 Lookup offline status using objectDataCache. More...
 
static _lookupOwner ($a_id)
 lookup object owner More...
 
static _getIdsForTitle ($title, $type='', $partialmatch=false)
 
static _lookupDescription ($a_id)
 lookup object description More...
 
static _lookupLastUpdate ($a_id, $a_as_string=false)
 lookup last update More...
 
static _getLastUpdateOfObjects ($a_objs)
 Get last update for a set of media objects. More...
 
static _lookupObjId ($a_id)
 
static _setDeletedDate ($a_ref_id, $a_deleted_by)
 
static setDeletedDates ($a_ref_ids, $a_user_id)
 Set deleted date. More...
 
static _resetDeletedDate ($a_ref_id)
 only called in ilObjectGUI::insertSavedNodes More...
 
static _lookupDeletedDate ($a_ref_id)
 only called in ilObjectGUI::insertSavedNodes More...
 
static _writeTitle ($a_obj_id, $a_title)
 write title to db (static) More...
 
static _writeDescription ($a_obj_id, $a_desc)
 write description to db (static) More...
 
static _writeImportId ($a_obj_id, $a_import_id)
 write import id to db (static) More...
 
static _lookupType ($a_id, $a_reference=false)
 lookup object type More...
 
static _isInTrash ($a_ref_id)
 checks wether object is in trash More...
 
static _hasUntrashedReference ($a_obj_id)
 checks wether an object has at least one reference that is not in trash More...
 
static _lookupObjectId ($a_ref_id)
 lookup object id More...
 
static _getObjectsDataForType ($a_type, $a_omit_trash=false)
 get all objects of a certain type More...
 
static _exists ($a_id, $a_reference=false, $a_type=null)
 checks if an object exists in object_data More...
 
static _getObjectsByType ($a_obj_type="", $a_owner="")
 Get objects by type. More...
 
static _prepareCloneSelection ($a_ref_ids, $new_type, $show_path=true)
 Prepare copy wizard object selection. More...
 
static collectDeletionDependencies (&$deps, $a_ref_id, $a_obj_id, $a_type, $a_depth=0)
 Collect deletion dependencies. More...
 
static getDeletionDependencies ($a_obj_id)
 Get deletion dependencies. More...
 
static getLongDescriptions (array $a_obj_ids)
 Get long description data. More...
 
static getAllOwnedRepositoryObjects ($a_user_id)
 Get all ids of objects user owns. More...
 
static fixMissingTitles ($a_type, array &$a_obj_title_map)
 Try to fix missing object titles. More...
 
static _lookupCreationDate ($a_id)
 Lookup creation date. More...
 
static hasAutoRating ($a_type, $a_ref_id)
 Check if auto rating is active for parent group/course. More...
 

Data Fields

const VIEW_SESSIONS = 0
 
const VIEW_OBJECTIVE = 1
 
const VIEW_TIMING = 2
 
const VIEW_ARCHIVE = 3
 
const VIEW_SIMPLE = 4
 
const VIEW_BY_TYPE = 5
 
const VIEW_INHERIT = 6
 
const VIEW_DEFAULT = self::VIEW_BY_TYPE
 
const SORT_TITLE = 0
 
const SORT_MANUAL = 1
 
const SORT_ACTIVATION = 2
 
const SORT_INHERIT = 3
 
const SORT_CREATION = 4
 
const SORT_DIRECTION_ASC = 0
 
const SORT_DIRECTION_DESC = 1
 
const SORT_NEW_ITEMS_POSITION_TOP = 0
 
const SORT_NEW_ITEMS_POSITION_BOTTOM = 1
 
const SORT_NEW_ITEMS_ORDER_TITLE = 0
 
const SORT_NEW_ITEMS_ORDER_CREATION = 1
 
const SORT_NEW_ITEMS_ORDER_ACTIVATION = 2
 
- Data Fields inherited from ilObject
const TITLE_LENGTH = 255
 max length of object title More...
 
const DESC_LENGTH = 128
 
 $lng
 
 $id
 
 $ref_id
 
 $type
 
 $title
 
 $untranslatedTitle
 
 $desc
 
 $long_desc
 
 $owner
 
 $create_date
 
 $last_update
 
 $import_id
 
 $register = false
 
 $referenced
 
 $objectList
 
 $max_title
 
 $max_desc
 
 $add_dots
 

Static Public Attributes

static $data_preloaded = false
 

Protected Member Functions

 getInitialSubitems ()
 Get initial subitems. More...
 
 applyContainerUserFilter ($objects, ilContainerUserFilter $container_user_filter=null)
 Apply container user filter on objects. More...
 
 legacyOnlineFilter ($obj_ids, $objects, $val)
 Legacy online filter. More...
 

Protected Attributes

 $db
 
 $log
 
 $access
 
 $error
 
 $rbacsystem
 
 $tree
 
 $user
 
 $obj_definition
 
 $order_type = 0
 
 $hiddenfilesfound = false
 
 $news_timeline = false
 
 $news_timeline_auto_entries = false
 
 $setting
 
 $obj_trans = null
 
 $recommended_content_manager
 
- Protected Attributes inherited from ilObject
 $objDefinition
 
 $db
 
 $log
 
 $error
 
 $tree
 
 $app_event_handler
 
 $rbacadmin
 
 $rbacreview
 

Detailed Description

Class ilContainer.

Base class for all container objects (categories, courses, groups)

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

Definition at line 39 of file class.ilContainer.php.

Constructor & Destructor Documentation

◆ __construct()

ilContainer::__construct (   $a_id = 0,
  $a_reference = true 
)

Definition at line 131 of file class.ilContainer.php.

References $DIC, ILIAS\GlobalScreen\Provider\__construct(), ilObject\getId(), ilObjectTranslation\getInstance(), and user().

132  {
133  global $DIC;
134 
135  $this->db = $DIC->database();
136  $this->log = $DIC["ilLog"];
137  $this->access = $DIC->access();
138  $this->error = $DIC["ilErr"];
139  $this->rbacsystem = $DIC->rbac()->system();
140  $this->tree = $DIC->repositoryTree();
141  $this->user = $DIC->user();
142  $this->obj_definition = $DIC["objDefinition"];
143 
144 
145  $this->setting = $DIC["ilSetting"];
146  parent::__construct($a_id, $a_reference);
147  include_once("./Services/Object/classes/class.ilObjectTranslation.php");
148 
149  if ($this->getId() > 0) {
150  $this->obj_trans = ilObjectTranslation::getInstance($this->getId());
151  }
152  $this->recommended_content_manager = new ilRecommendedContentManager();
153  }
user()
Definition: user.php:4
getId()
get object id public
__construct(Container $dic, ilPlugin $plugin)
static getInstance($a_obj_id)
Get instance.
$DIC
Definition: xapitoken.php:46
Recommended content manager (business logic)
+ Here is the call graph for this function:

Member Function Documentation

◆ _deleteContainerSettings()

static ilContainer::_deleteContainerSettings (   $a_id,
  $a_keyword = null,
  $a_keyword_like = false 
)
static

Definition at line 454 of file class.ilContainer.php.

References $DIC, and $ilDB.

Referenced by ilObjectTileImage\copy(), ilObjectCustomIconImpl\delete(), ilObjectTileImage\delete(), ilObjCategoryGUI\getObjectMetadataGUI(), ilObjectTileImage\persistImageState(), and ilObjCategoryGUI\updateObject().

455  {
456  global $DIC;
457 
458  $ilDB = $DIC->database();
459 
460  if (!$a_id) {
461  return;
462  }
463 
464  $sql = "DELETE FROM container_settings WHERE " .
465  " id = " . $ilDB->quote($a_id, 'integer');
466  if ($a_keyword) {
467  if (!$a_keyword_like) {
468  $sql .= " AND keyword = " . $ilDB->quote($a_keyword, "text");
469  } else {
470  $sql .= " AND " . $ilDB->like("keyword", "text", $a_keyword);
471  }
472  }
473  $ilDB->manipulate($sql);
474  }
global $ilDB
$DIC
Definition: xapitoken.php:46
+ Here is the caller graph for this function:

◆ _exportContainerSettings()

static ilContainer::_exportContainerSettings ( ilXmlWriter  $a_xml,
  $a_obj_id 
)
static

Definition at line 476 of file class.ilContainer.php.

References ilContainerSortingSettings\_cloneSettings(), ilPageObject\_exists(), ilObjStyleSheet\_lookupStandard(), ilBlockSetting\cloneSettingsOfBlock(), ilObject\getId(), ilObjectTranslation\getInstance(), ilObjectFactory\getInstanceByObjId(), getNewsBlockActivated(), getNewsTimeline(), getNewsTimelineAutoEntries(), getNewsTimelineLandingPage(), ilObject\getRefId(), getStyleSheetId(), getUseNews(), ilXmlWriter\xmlData(), ilXmlWriter\xmlEndTag(), and ilXmlWriter\xmlStartTag().

Referenced by ilCategoryXmlWriter\export(), ilCourseXMLWriter\start(), and ilGroupXMLWriter\start().

477  {
478  // container settings
479  $settings = self::_getContainerSettings($a_obj_id);
480  if (sizeof($settings)) {
481  $a_xml->xmlStartTag("ContainerSettings");
482 
483  foreach ($settings as $keyword => $value) {
484  // :TODO: proper custom icon export/import
485  if (stristr($keyword, "icon")) {
486  continue;
487  }
488 
489  $a_xml->xmlStartTag(
490  'ContainerSetting',
491  array(
492  'id' => $keyword,
493  )
494  );
495 
496  $a_xml->xmlData($value);
497  $a_xml->xmlEndTag("ContainerSetting");
498  }
499 
500  $a_xml->xmlEndTag("ContainerSettings");
501  }
502  }
xmlStartTag($tag, $attrs=null, $empty=false, $encode=true, $escape=true)
Writes a starttag.
xmlData($data, $encode=true, $escape=true)
Writes data.
xmlEndTag($tag)
Writes an endtag.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _getContainerDirectory()

static ilContainer::_getContainerDirectory (   $a_id)
static

Get the container directory.

Returns
string container directory

Definition at line 205 of file class.ilContainer.php.

References ilUtil\getWebspaceDir().

Referenced by getContainerDirectory().

206  {
207  return ilUtil::getWebspaceDir() . "/container_data/obj_" . $a_id;
208  }
static getWebspaceDir($mode="filesystem")
get webspace directory
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _getContainerSettings()

static ilContainer::_getContainerSettings (   $a_id)
static

Definition at line 436 of file class.ilContainer.php.

References $DIC, $ilDB, and $res.

Referenced by ilObjExercise\cloneObject(), ilObjCategoryGUI\getActiveBlocks(), and ilTaxonomyClassificationProvider\getActiveTaxonomiesForParentRefId().

437  {
438  global $DIC;
439 
440  $ilDB = $DIC->database();
441 
442  $res = array();
443 
444  $sql = "SELECT * FROM container_settings WHERE " .
445  " id = " . $ilDB->quote($a_id, 'integer');
446  $set = $ilDB->query($sql);
447  while ($row = $ilDB->fetchAssoc($set)) {
448  $res[$row["keyword"]] = $row["value"];
449  }
450 
451  return $res;
452  }
foreach($_POST as $key=> $value) $res
global $ilDB
$DIC
Definition: xapitoken.php:46
+ Here is the caller graph for this function:

◆ _lookupContainerSetting()

static ilContainer::_lookupContainerSetting (   $a_id,
  $a_keyword,
  $a_default_value = null 
)
static

Lookup a container setting.

Parameters
intcontainer id
stringsetting keyword
Returns
string setting value

Definition at line 387 of file class.ilContainer.php.

References $DIC, $ilDB, and ilDBConstants\FETCHMODE_ASSOC.

Referenced by ilObjCategoryGUI\__construct(), ilObjectTileImage\__construct(), ilContSkillMemberTableGUI\__construct(), ilContainerByTypeContentGUI\__construct(), ilObjContentPageGUI\__construct(), ilContainerContentGUI\__construct(), ilAdvancedMDRecord\_getSelectedRecordsByObject(), ilLocatorGUI\addRepositoryItems(), ilObjectCommonSettingFormAdapter\addTitleIconVisibility(), ilObjectCommonSettingFormAdapter\addTopActionsVisibility(), applyContainerUserFilter(), ilObjSession\cloneSettings(), ilContainerGUI\editPageContentObject(), ilContainerGUI\editPageFrameObject(), ilObjectTileImage\exists(), ilObjectCustomIconImpl\exists(), ilContSkillMemberTableGUI\fillRow(), ilContainerGUI\forwardToPageObject(), ilTaxonomyClassificationProvider\getActiveTaxonomiesForParentRefId(), ilContainerGUI\getContainerPageHTML(), ilObjExerciseGUI\getEditFormCustomValues(), ilObjContentPageListGUI\getInfoScreenStatus(), ilObjCategoryListGUI\getInfoScreenStatus(), ilNewsItem\getNewsForRefId(), ilObjCategoryGUI\getObjectMetadataGUI(), ilTaxMDGUI\getSelectableTaxonomies(), ilObjCategoryGUI\getTabs(), ilObjGroupGUI\getTabs(), ilObjCourseGUI\getTabs(), ilObjSessionGUI\getTabs(), ilObjectDataSet\getTypes(), ilObjectMetaDataGUI\hasAdvancedMDSettings(), ilObject\hasAutoRating(), ilObjCategoryGUI\initEditForm(), ilObjCourseGUI\initEditForm(), ilContainerGUI\initListPresentationForm(), ilObjectServiceSettingsGUI\initServiceSettingsForm(), ilContSkillAdminGUI\initSettingsForm(), ilContainerGUI\initStylePropertiesForm(), ilObjectListGUI\insertCommands(), ilObjectGUI\insertHeaderAction(), ilTaggingClassificationProvider\isActive(), ilMembershipNotifications\isActiveForRefId(), ilColumnGUI\isGloballyActivated(), ilBadgeHandler\isObjectActive(), ilCalendarSettings\lookupCalendarActivated(), ilContentPageDataSet\readData(), ilContSkillAdminGUI\saveCompetenceAssignment(), ilContainerGUI\savePageContentObject(), ilObjCategoryGUI\setEditTabs(), ilContainerGUI\setSideColumnReturn(), ilObjRootFolderGUI\setTitleAndDescription(), ilContainerGUI\setTitleAndDescription(), ilAdvancedMDRecordObjectOrderings\sortRecords(), and ilObjContentPage\writeStyleSheetId().

388  {
389  global $DIC;
390 
391  $ilDB = $DIC->database();
392 
393  $q = "SELECT * FROM container_settings WHERE " .
394  " id = " . $ilDB->quote($a_id, 'integer') . " AND " .
395  " keyword = " . $ilDB->quote($a_keyword, 'text');
396  $set = $ilDB->query($q);
397  $rec = $set->fetchRow(ilDBConstants::FETCHMODE_ASSOC);
398 
399  if (isset($rec['value'])) {
400  return $rec["value"];
401  }
402  if ($a_default_value === null) {
403  return '';
404  }
405  return $a_default_value;
406  }
global $ilDB
$DIC
Definition: xapitoken.php:46
+ Here is the caller graph for this function:

◆ _writeContainerSetting()

static ilContainer::_writeContainerSetting (   $a_id,
  $a_keyword,
  $a_value 
)
static
Parameters
$a_id
$a_keyword
$a_value

Definition at line 413 of file class.ilContainer.php.

References $DIC, $ilDB, $log, $query, $res, and ilLoggerFactory\getLogger().

Referenced by ilObjExercise\cloneObject(), ilObjSession\cloneSettings(), ilObjectCustomIconImpl\copy(), ilObjectTileImage\copy(), ilObjectTileImage\createFromImportDir(), ilObjCategoryGUI\getObjectMetadataGUI(), ilCategoryXmlParser\handlerEndTag(), ilGroupXMLParser\handlerEndTag(), ilCourseXMLParser\handlerEndTag(), ilContentPageDataSet\importRecord(), ilObjectDataSet\importRecord(), ilAdvancedMetaDataImporter\importXmlRepresentation(), ilObjectCustomIconImpl\persistIconState(), ilObjectTileImage\persistImageState(), ilObjectCustomIconImpl\remove(), ilContainerGUI\saveListPresentation(), ilContainerGUI\savePageContentObject(), ilContSkillAdminGUI\saveSettings(), ilObjectCommonSettingFormAdapter\saveTitleIconVisibility(), ilObjectCommonSettingFormAdapter\saveTopActionsVisibility(), ilObjCourseGUI\updateObject(), ilObjCategoryGUI\updateObject(), ilObjectServiceSettingsGUI\updateServiceSettingsForm(), ilObjectServiceSettingsGUI\updateToolSettings(), ilContainerGUI\useNewEditorObject(), and ilObjContentPage\writeStyleSheetId().

414  {
415  global $DIC;
416 
417  $ilDB = $DIC->database();
418 
419  $query = "DELETE FROM container_settings WHERE " .
420  "id = " . $ilDB->quote($a_id, 'integer') . " " .
421  "AND keyword = " . $ilDB->quote($a_keyword, 'text');
422  $res = $ilDB->manipulate($query);
423 
425  $log->debug("Write container setting, id: " . $a_id . ", keyword: " . $a_keyword . ", value: " . $a_value);
426 
427  $query = "INSERT INTO container_settings (id, keyword, value) VALUES (" .
428  $ilDB->quote($a_id, 'integer') . ", " .
429  $ilDB->quote($a_keyword, 'text') . ", " .
430  $ilDB->quote($a_value, 'text') .
431  ")";
432 
433  $res = $ilDB->manipulate($query);
434  }
foreach($_POST as $key=> $value) $res
$query
global $ilDB
$DIC
Definition: xapitoken.php:46
static getLogger($a_component_id)
Get component logger.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ addAdditionalSubItemInformation()

ilContainer::addAdditionalSubItemInformation ( $object)

Add additional information to sub item, e.g.

used in courses for timings information etc.

Definition at line 935 of file class.ilContainer.php.

Referenced by getSubItems().

936  {
937  }
+ Here is the caller graph for this function:

◆ addTranslation()

ilContainer::addTranslation (   $a_title,
  $a_desc,
  $a_lang,
  $a_lang_default 
)

Add translation.

Parameters
$a_title
$a_desc
$a_lang
$a_lang_default
Returns
bool

Definition at line 1220 of file class.ilContainer.php.

Referenced by create().

1221  {
1222  if (empty($a_title)) {
1223  $a_title = "NO TITLE";
1224  }
1225 
1226  $this->obj_trans->addLanguage($a_lang, $a_title, $a_desc, $a_lang_default, true);
1227  $this->obj_trans->save();
1228 
1229  return true;
1230  }
+ Here is the caller graph for this function:

◆ applyContainerUserFilter()

ilContainer::applyContainerUserFilter (   $objects,
ilContainerUserFilter  $container_user_filter = null 
)
protected

Apply container user filter on objects.

Todo:

this deserces a decentralized general concept (consumers provide object filter types)

move selects to respective components

Parameters
$objects
ilContainerUserFilter | null$container_user_filter
Returns
array
Exceptions
ilException

Workaround:

Only text fields take care of $parser_value being passed through new ilQueryParser($parser_value), thus other fields pass values by setting directly in the ADT objects. This could go to a new bridge.

Definition at line 1243 of file class.ilContainer.php.

References $db, $DIC, $i, $result, ilObjectSearchFactory\_getAdvancedMDSearchInstance(), ilObjectSearchFactory\_getAdvancedSearchInstance(), _lookupContainerSetting(), ilObject\getId(), ilADTFactory\getInstance(), ilAdvancedMDFieldDefinition\getInstance(), legacyOnlineFilter(), QP_COMBINATION_OR, ilContainerFilterField\STD_FIELD_AUTHOR, ilContainerFilterField\STD_FIELD_COPYRIGHT, ilContainerFilterField\STD_FIELD_DESCRIPTION, ilContainerFilterField\STD_FIELD_KEYWORD, ilContainerFilterField\STD_FIELD_OBJECT_TYPE, ilContainerFilterField\STD_FIELD_ONLINE, ilContainerFilterField\STD_FIELD_TITLE, ilContainerFilterField\STD_FIELD_TITLE_DESCRIPTION, ilContainerFilterField\STD_FIELD_TUTORIAL_SUPPORT, and ilUtil\stripSlashes().

Referenced by getSubItems().

1244  {
1245  global $DIC;
1246  $db = $DIC->database();
1247 
1248  if (is_null($container_user_filter)) {
1249  return $objects;
1250  }
1251 
1252  if ($container_user_filter->isEmpty() && !ilContainer::_lookupContainerSetting($this->getId(), "filter_show_empty", false)) {
1253  return [];
1254  }
1255 
1256 
1257  $obj_ids = array_map(function ($i) {
1258  return $i["obj_id"];
1259  }, $objects);
1260  $filter_data = $container_user_filter->getData();
1261  foreach ($filter_data as $key => $val) {
1262  if (count($obj_ids) == 0) { // stop if no object ids are left
1263  continue;
1264  }
1265  if (!in_array(substr($key, 0, 4), ["adv_", "std_"])) {
1266  continue;
1267  }
1268  if ($val == "") {
1269  continue;
1270  }
1271  $field_id = substr($key, 4);
1272  $val = ilUtil::stripSlashes($val);
1273  $query_parser = new ilQueryParser($val);
1274  if (substr($key, 0, 4) == "std_") {
1275  // object type
1277  $result = null;
1278  $set = $db->queryF(
1279  "SELECT obj_id FROM object_data " .
1280  " WHERE " . $db->in("obj_id", $obj_ids, false, "integer") .
1281  " AND type = %s",
1282  array("text"),
1283  array($val)
1284  );
1285  $result_obj_ids = [];
1286  while ($rec = $db->fetchAssoc($set)) {
1287  $result_obj_ids[] = $rec["obj_id"];
1288  }
1289  $obj_ids = array_intersect($obj_ids, $result_obj_ids);
1290  } elseif ($field_id == ilContainerFilterField::STD_FIELD_ONLINE) {
1291  if (in_array($val, [1,2])) {
1292  $online_where = ($val == 1)
1293  ? " (offline <> " . $db->quote(1, "integer") . " OR offline IS NULL) "
1294  :" offline = " . $db->quote(1, "integer") . " ";
1295  $result = null;
1296  $set = $db->queryF(
1297  "SELECT obj_id FROM object_data " .
1298  " WHERE " . $db->in("obj_id", $obj_ids, false, "integer") .
1299  " AND " . $online_where,
1300  [],
1301  []
1302  );
1303  $result_obj_ids = [];
1304  while ($rec = $db->fetchAssoc($set)) {
1305  $result_obj_ids[] = $rec["obj_id"];
1306  }
1307  $obj_ids = array_intersect($obj_ids, $result_obj_ids);
1308  $obj_ids = $this->legacyOnlineFilter($obj_ids, $objects, $val);
1309  }
1310  } elseif ($field_id == ilContainerFilterField::STD_FIELD_TUTORIAL_SUPPORT) {
1311  $result = null;
1312  $set = $db->queryF(
1313  "SELECT DISTINCT(obj_id) FROM obj_members m JOIN usr_data u ON (u.usr_id = m.usr_id) " .
1314  " WHERE " . $db->in("m.obj_id", $obj_ids, false, "integer") .
1315  " AND " . $db->like("u.lastname", "text", $val) .
1316  " AND m.contact = %s",
1317  array("integer"),
1318  array(1)
1319  );
1320  $result_obj_ids = [];
1321  while ($rec = $db->fetchAssoc($set)) {
1322  $result_obj_ids[] = $rec["obj_id"];
1323  }
1324  $obj_ids = array_intersect($obj_ids, $result_obj_ids);
1325  } elseif ($field_id == ilContainerFilterField::STD_FIELD_COPYRIGHT) {
1326  $result = null;
1327  $set = $db->queryF(
1328  "SELECT DISTINCT(rbac_id) FROM il_meta_rights " .
1329  " WHERE " . $db->in("rbac_id", $obj_ids, false, "integer") .
1330  " AND description = %s ",
1331  array("text"),
1332  array('il_copyright_entry__' . IL_INST_ID . '__' . $val)
1333  );
1334  $result_obj_ids = [];
1335  while ($rec = $db->fetchAssoc($set)) {
1336  $result_obj_ids[] = $rec["rbac_id"];
1337  }
1338  $obj_ids = array_intersect($obj_ids, $result_obj_ids);
1339  } else {
1340  include_once 'Services/Search/classes/class.ilObjectSearchFactory.php';
1341  include_once 'Services/Search/classes/class.ilQueryParser.php';
1342 
1343  #$query_parser->setCombination($this->options['title_ao']);
1344  $query_parser->setCombination(QP_COMBINATION_OR);
1345  $query_parser->parse();
1346  $meta_search = ilObjectSearchFactory::_getAdvancedSearchInstance($query_parser);
1347 
1348  //$meta_search->setFilter($this->filter); // object types ['lm', ...]
1349  switch ($field_id) {
1353  $meta_search->setMode('title_description');
1354  break;
1356  $meta_search->setMode('keyword_all');
1357  break;
1359  $meta_search->setMode('contribute');
1360  break;
1361 
1362  }
1363  //$meta_search->setOptions($this->options);
1364  $result = $meta_search->performSearch();
1365  }
1366  } else { // advanced metadata search
1367  $field = ilAdvancedMDFieldDefinition::getInstance($field_id);
1368 
1369  $field_form = ilADTFactory::getInstance()->getSearchBridgeForDefinitionInstance($field->getADTDefinition(), true, false);
1370  $field_form->setElementId("query[" . $key . "]");
1371  $field_form->validate();
1372 
1380  if ($field instanceof ilAdvancedMDFieldDefinitionSelectMulti) {
1381  $field_form->getADT()->setSelections([$val]);
1382  }
1383  if ($field instanceof ilAdvancedMDFieldDefinitionSelect) {
1384  $adt = $field_form->getADT();
1385  if ($adt instanceof ilADTMultiEnumText) {
1386  $field_form->getADT()->setSelections([$val]);
1387  } else {
1388  $field_form->getADT()->setSelection($val);
1389  }
1390  }
1391 
1392  include_once 'Services/Search/classes/class.ilQueryParser.php';
1393  include_once 'Services/Search/classes/class.ilObjectSearchFactory.php';
1394  $adv_md_search = ilObjectSearchFactory::_getAdvancedMDSearchInstance($query_parser);
1395  //$adv_md_search->setFilter($this->filter); // this could be set to an array of object types
1396  $adv_md_search->setDefinition($field); // e.g. ilAdvancedMDFieldDefinitionSelectMulti
1397  $adv_md_search->setIdFilter(array(0));
1398  $adv_md_search->setSearchElement($field_form); // e.g. ilADTEnumSearchBridgeMulti
1399  $result = $adv_md_search->performSearch();
1400  }
1401 
1402  // intersect results
1403  if ($result instanceof ilSearchResult) {
1404  $result_obj_ids = array_map(
1405  function ($i) {
1406  return $i["obj_id"];
1407  },
1408  $result->getEntries()
1409  );
1410  $obj_ids = array_intersect($obj_ids, $result_obj_ids);
1411  }
1412  }
1413  $objects = array_filter($objects, function ($o) use ($obj_ids) {
1414  return in_array($o["obj_id"], $obj_ids);
1415  });
1416 
1417  return $objects;
1418  }
legacyOnlineFilter($obj_ids, $objects, $val)
Legacy online filter.
$result
static _getAdvancedSearchInstance($query_parser)
get reference of ilFulltextAdvancedSearch
static getInstance()
Get singleton.
static _getAdvancedMDSearchInstance($query_parser)
get advanced meta data search instance
const QP_COMBINATION_OR
getId()
get object id public
static getInstance($a_field_id, $a_type=null)
Get definition instance by type.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
$DIC
Definition: xapitoken.php:46
static _lookupContainerSetting($a_id, $a_keyword, $a_default_value=null)
Lookup a container setting.
$i
Definition: metadata.php:24
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cloneAllObject()

ilContainer::cloneAllObject (   $session_id,
  $client_id,
  $new_type,
  $ref_id,
  $clone_source,
  $options,
  $soap_call = false,
  $a_submode = 1 
)

clone all objects according to this container

Parameters
string$session_id
string$client_id
string$new_type
int$ref_id
int$clone_source
array$options
boolforce soap
intsubmode 1 => copy all, 2 => copy content
Returns
new refid if clone has finished or parameter ref id if cloning is still in progress
array(copy_id => xyz, ref_id => new ref_id)

Definition at line 625 of file class.ilContainer.php.

References $access, $client_id, $error, $ilErr, $ilLog, $ilUser, $log, $rbacsystem, ilObject\$ref_id, $res, $tree, $user, ilCopyWizardOptions\_allocateCopyId(), ilSession\_duplicate(), ilCopyWizardOptions\_getInstance(), ilLoggerFactory\getLogger(), ilSoapFunctions\ilClone(), and ilObjectCopyGUI\SUBMODE_CONTENT_ONLY.

626  {
627  $ilLog = $this->log;
628 
629  include_once('./Services/Link/classes/class.ilLink.php');
630  include_once('Services/CopyWizard/classes/class.ilCopyWizardOptions.php');
631 
632  $ilAccess = $this->access;
635  $tree = $this->tree;
637 
638  // Save wizard options
640  $wizard_options = ilCopyWizardOptions::_getInstance($copy_id);
641  $wizard_options->saveOwner($ilUser->getId());
642  $wizard_options->saveRoot($clone_source);
643 
644  // add entry for source container
645  $wizard_options->initContainer($clone_source, $ref_id);
646 
647  foreach ($options as $source_id => $option) {
648  $wizard_options->addEntry($source_id, $option);
649  }
650  $wizard_options->read();
651  $wizard_options->storeTree($clone_source);
652 
653  include_once './Services/Object/classes/class.ilObjectCopyGUI.php';
654  if ($a_submode == ilObjectCopyGUI::SUBMODE_CONTENT_ONLY) {
655  ilLoggerFactory::getLogger('obj')->info('Copy content only...');
656  ilLoggerFactory::getLogger('obj')->debug('Added mapping, source ID: ' . $clone_source . ', target ID: ' . $ref_id);
657  $wizard_options->read();
658  $wizard_options->dropFirstNode();
659  $wizard_options->appendMapping($clone_source, $ref_id);
660  }
661 
662 
663  #print_r($options);
664  // Duplicate session to avoid logout problems with backgrounded SOAP calls
665  $new_session_id = ilSession::_duplicate($session_id);
666  // Start cloning process using soap call
667  include_once 'Services/WebServices/SOAP/classes/class.ilSoapClient.php';
668 
669  $soap_client = new ilSoapClient();
670  $soap_client->setResponseTimeout(5);
671  $soap_client->enableWSDL(true);
672 
673  $ilLog->write(__METHOD__ . ': Trying to call Soap client...');
674  if ($soap_client->init()) {
675  ilLoggerFactory::getLogger('obj')->info('Calling soap clone method');
676  $res = $soap_client->call('ilClone', array($new_session_id . '::' . $client_id, $copy_id));
677  } else {
678  ilLoggerFactory::getLogger('obj')->warning('SOAP clone call failed. Calling clone method manually');
679  $wizard_options->disableSOAP();
680  $wizard_options->read();
681  include_once('./webservice/soap/include/inc.soap_functions.php');
682  $res = ilSoapFunctions::ilClone($new_session_id . '::' . $client_id, $copy_id);
683  }
684  return array(
685  'copy_id' => $copy_id,
686  'ref_id' => (int) $res
687  );
688  }
static ilClone($sid, $copy_identifier)
$ilErr
Definition: raiseError.php:18
static _getInstance($a_copy_id)
Get instance of copy wizard options.
foreach($_POST as $key=> $value) $res
$ilUser
Definition: imgupload.php:18
static _allocateCopyId()
Allocate a copy for further entries.
static _duplicate($a_session_id)
Duplicate session.
static getLogger($a_component_id)
Get component logger.
$client_id
+ Here is the call graph for this function:

◆ cloneDependencies()

ilContainer::cloneDependencies (   $a_target_id,
  $a_copy_id 
)

Clone object dependencies (container sorting)

public

Parameters
inttarget ref id of new course
intcopy id return bool

Definition at line 585 of file class.ilContainer.php.

References $ilLog, $log, ilContainerSorting\_getInstance(), ilObjItemGroup\fixContainerItemGroupRefsAfterCloning(), ilObject\getId(), ilObjectLP\getInstance(), and ilObject\getRefId().

586  {
587  $ilLog = $this->log;
588 
589  parent::cloneDependencies($a_target_id, $a_copy_id);
590 
591  include_once('./Services/Container/classes/class.ilContainerSorting.php');
592  ilContainerSorting::_getInstance($this->getId())->cloneSorting($a_target_id, $a_copy_id);
593 
594  // fix internal links to other objects
595  ilContainer::fixInternalLinksAfterCopy($a_target_id, $a_copy_id, $this->getRefId());
596 
597  // fix item group references in page content
598  include_once("./Modules/ItemGroup/classes/class.ilObjItemGroup.php");
600 
601  include_once('Services/Object/classes/class.ilObjectLP.php');
602  $olp = ilObjectLP::getInstance($this->getId());
603  $collection = $olp->getCollectionInstance();
604  if ($collection) {
605  $collection->cloneCollection($a_target_id, $a_copy_id);
606  }
607 
608  return true;
609  }
getId()
get object id public
static fixContainerItemGroupRefsAfterCloning($a_source_container, $a_copy_id)
Fix container item group references after a container has been cloned.
getRefId()
get reference id public
static _getInstance($a_obj_id)
get instance by obj_id
static getInstance($a_obj_id)
+ Here is the call graph for this function:

◆ create()

ilContainer::create ( )

Create.

Definition at line 970 of file class.ilContainer.php.

References $DIC, ilObject\$lng, $log, $ret, addTranslation(), ilObject\getDescription(), ilObject\getId(), ilObjectTranslation\getInstance(), ilLoggerFactory\getLogger(), getNewsBlockActivated(), getNewsTimeline(), getNewsTimelineAutoEntries(), getNewsTimelineLandingPage(), getStyleSheetId(), ilObject\getTitle(), getUseNews(), ilObjectServiceSettingsGUI\NEWS_VISIBILITY, ilObjectServiceSettingsGUI\USE_NEWS, and ilObjStyleSheet\writeStyleUsage().

971  {
972  global $DIC;
973 
974  $lng = $DIC->language();
975 
976  $ret = parent::create();
977 
978  // set translation object, since we have an object id now
979  $this->obj_trans = ilObjectTranslation::getInstance($this->getId());
980 
981  // add default translation
982  $this->addTranslation(
983  $this->getTitle(),
984  $this->getDescription(),
985  $lng->getDefaultLanguage(),
986  true
987  );
988 
989  if (((int) $this->getStyleSheetId()) > 0) {
990  include_once("./Services/Style/Content/classes/class.ilObjStyleSheet.php");
992  }
993 
995  $log->debug("Create Container, id: " . $this->getId());
996 
997  self::_writeContainerSetting($this->getId(), "news_timeline", (int) $this->getNewsTimeline());
998  self::_writeContainerSetting($this->getId(), "news_timeline_incl_auto", (int) $this->getNewsTimelineAutoEntries());
999  self::_writeContainerSetting($this->getId(), "news_timeline_landing_page", (int) $this->getNewsTimelineLandingPage());
1000  include_once("./Services/Object/classes/class.ilObjectServiceSettingsGUI.php");
1001  self::_writeContainerSetting($this->getId(), ilObjectServiceSettingsGUI::NEWS_VISIBILITY, (int) $this->getNewsBlockActivated());
1002  self::_writeContainerSetting($this->getId(), ilObjectServiceSettingsGUI::USE_NEWS, (int) $this->getUseNews());
1003 
1004  return $ret;
1005  }
addTranslation($a_title, $a_desc, $a_lang, $a_lang_default)
Add translation.
getNewsTimelineLandingPage()
Get news timline is landing page.
getNewsTimelineAutoEntries()
Get news timeline auto entries.
static writeStyleUsage($a_obj_id, $a_style_id)
Write style usage.
getId()
get object id public
getStyleSheetId()
get ID of assigned style sheet object
getNewsTimeline()
Get news timeline.
getTitle()
get object title public
getDescription()
get object description
getUseNews()
Get use news.
static getInstance($a_obj_id)
Get instance.
$ret
Definition: parser.php:6
$DIC
Definition: xapitoken.php:46
static getLogger($a_component_id)
Get component logger.
getNewsBlockActivated()
Get news block activated.
+ Here is the call graph for this function:

◆ createContainerDirectory()

ilContainer::createContainerDirectory ( )

Create directory for the container.

It is <webspace_dir>/container_data.

Definition at line 177 of file class.ilContainer.php.

References ilObject\getId(), ilUtil\getWebspaceDir(), and ilUtil\makeDir().

178  {
179  $webspace_dir = ilUtil::getWebspaceDir();
180  $cont_dir = $webspace_dir . "/container_data";
181  if (!is_dir($cont_dir)) {
182  ilUtil::makeDir($cont_dir);
183  }
184  $obj_dir = $cont_dir . "/obj_" . $this->getId();
185  if (!is_dir($obj_dir)) {
186  ilUtil::makeDir($obj_dir);
187  }
188  }
getId()
get object id public
static makeDir($a_dir)
creates a new directory and inherits all filesystem permissions of the parent directory You may pass ...
static getWebspaceDir($mode="filesystem")
get webspace directory
+ Here is the call graph for this function:

◆ delete()

ilContainer::delete ( )

delete category and all related data

Returns
boolean true if all object data were removed; false if only a references were removed

Definition at line 695 of file class.ilContainer.php.

696  {
697  // always call parent delete function first!!
698  if (!parent::delete()) {
699  return false;
700  }
701  // delete translations
702  $this->obj_trans->delete();
703 
704  return true;
705  }

◆ deleteTranslation()

ilContainer::deleteTranslation (   $a_lang)

Delete translation.

Parameters
$a_lang

Definition at line 1205 of file class.ilContainer.php.

1206  {
1207  $this->obj_trans->removeLanguage($a_lang);
1208  $this->obj_trans->save();
1209  }

◆ enablePageEditing()

ilContainer::enablePageEditing ( )

Check whether page editing is allowed for container.

Definition at line 957 of file class.ilContainer.php.

References $ilSetting, and $setting.

958  {
960 
961  // @todo: this will need a more general approach
962  if ($ilSetting->get("enable_cat_page_edit")) {
963  return true;
964  }
965  }
global $ilSetting
Definition: privfeed.php:17

◆ filteredSubtree()

ilContainer::filteredSubtree ( )

Note grp/crs currently allow to filter in their whole subtrees Catetories only their direct childs.

Returns
bool

Definition at line 751 of file class.ilContainer.php.

References ilObject\getType(), and isClassificationFilterActive().

Referenced by getInitialSubitems().

751  : bool
752  {
753  if ($this->isClassificationFilterActive() && in_array($this->getType(), ["grp", "crs"])) {
754  return true;
755  }
756  return false;
757  }
getType()
get object type public
isClassificationFilterActive()
Is classification filter active?
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getCompleteDescriptions()

static ilContainer::getCompleteDescriptions ( array  $objects)
static

overwrites description fields to long or short description in an assoc array keys needed (obj_id and description)

Parameters
array$objects
Returns
array

Definition at line 1101 of file class.ilContainer.php.

References $DIC, $ilSetting, ilObject\$long_desc, $obj_definition, ilObject\$type, ilPageObject\_exists(), ilCopyWizardOptions\_getInstance(), ilObject\_lookupObjId(), ilObject\_lookupType(), ilObject\DESC_LENGTH, ilPageObjectFactory\getInstance(), ilObject\getLongDescriptions(), and ilUtil\shortenText().

Referenced by ilContainerContentGUI\renderItem(), and ilContainerContentGUI\renderItemGroup().

1102  {
1103  global $DIC;
1104 
1105  $ilSetting = $DIC->settings();
1106  $ilObjDataCache = $DIC["ilObjDataCache"];
1107  // using long descriptions?
1108  $short_desc = $ilSetting->get("rep_shorten_description");
1109  $short_desc_max_length = $ilSetting->get("rep_shorten_description_length");
1110  if (!$short_desc || $short_desc_max_length > 0) {
1111  // using (part of) shortened description
1112  if ($short_desc && $short_desc_max_length && $short_desc_max_length < ilObject::DESC_LENGTH) {
1113  foreach ($objects as $key => $object) {
1114  $objects[$key]["description"] = ilUtil::shortenText($object["description"], $short_desc_max_length, true);
1115  }
1116  }
1117  // using (part of) long description
1118  else {
1119  $obj_ids = array();
1120  foreach ($objects as $key => $object) {
1121  $obj_ids[] = $object["obj_id"];
1122  }
1123  if (sizeof($obj_ids)) {
1125  foreach ($objects as $key => $object) {
1126  // #12166 - keep translation, ignore long description
1127  if ($ilObjDataCache->isTranslatedDescription($object["obj_id"])) {
1128  $long_desc[$object["obj_id"]] = $object["description"];
1129  }
1130  if ($short_desc && $short_desc_max_length) {
1131  $long_desc[$object["obj_id"]] = ilUtil::shortenText($long_desc[$object["obj_id"]], $short_desc_max_length, true);
1132  }
1133  $objects[$key]["description"] = $long_desc[$object["obj_id"]];
1134  }
1135  }
1136  }
1137  }
1138  return $objects;
1139  }
static shortenText( $a_str, $a_len, $a_dots=false, $a_next_blank=false, $a_keep_extension=false)
shorten a string to given length.
static getLongDescriptions(array $a_obj_ids)
Get long description data.
const DESC_LENGTH
global $ilSetting
Definition: privfeed.php:17
$DIC
Definition: xapitoken.php:46
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getContainerDirectory()

ilContainer::getContainerDirectory ( )

Get the container directory.

Returns
string container directory

Definition at line 195 of file class.ilContainer.php.

References _getContainerDirectory(), and ilObject\getId().

196  {
197  return $this->_getContainerDirectory($this->getId());
198  }
static _getContainerDirectory($a_id)
Get the container directory.
getId()
get object id public
+ Here is the call graph for this function:

◆ getGroupedObjTypes()

ilContainer::getGroupedObjTypes ( )

Get grouped repository object types.

Returns
array array of object types

Definition at line 944 of file class.ilContainer.php.

References $obj_definition, ilObject\$objDefinition, and ilObject\getType().

945  {
947 
948  if (empty($this->type_grps)) {
949  $this->type_grps = $objDefinition->getGroupedRepositoryObjectTypes($this->getType());
950  }
951  return $this->type_grps;
952  }
getType()
get object type public
+ Here is the call graph for this function:

◆ getHiddenFilesFound()

ilContainer::getHiddenFilesFound ( )

Get Found hidden files (set by getSubItems).

Returns
boolean Found hidden files (set by getSubItems)

Definition at line 225 of file class.ilContainer.php.

References $hiddenfilesfound.

226  {
228  }

◆ getInitialSubitems()

ilContainer::getInitialSubitems ( )
protected

Get initial subitems.

Returns
array

Definition at line 764 of file class.ilContainer.php.

References $tree, filteredSubtree(), and ilObject\getRefId().

Referenced by getSubItems().

764  : array
765  {
766  $tree = $this->tree;
767  if ($this->filteredSubtree()) {
768  $objects = $tree->getSubTree($tree->getNodeData($this->getRefId()));
769  } else {
770  $objects = $tree->getChilds($this->getRefId(), "title");
771  }
772  return $objects;
773  }
filteredSubtree()
Note grp/crs currently allow to filter in their whole subtrees Catetories only their direct childs...
getRefId()
get reference id public
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getNewsBlockActivated()

ilContainer::getNewsBlockActivated ( )

Get news block activated.

Returns
bool news block activated

Definition at line 354 of file class.ilContainer.php.

Referenced by _exportContainerSettings(), create(), and update().

355  {
356  return $this->news_block_activated;
357  }
+ Here is the caller graph for this function:

◆ getNewsTimeline()

ilContainer::getNewsTimeline ( )

Get news timeline.

Returns
bool activate news timeline

Definition at line 261 of file class.ilContainer.php.

References $news_timeline.

Referenced by _exportContainerSettings(), create(), isNewsTimelineEffective(), isNewsTimelineLandingPageEffective(), and update().

262  {
263  return $this->news_timeline;
264  }
+ Here is the caller graph for this function:

◆ getNewsTimelineAutoEntries()

ilContainer::getNewsTimelineAutoEntries ( )

Get news timeline auto entries.

Returns
bool include automatically created entries

Definition at line 281 of file class.ilContainer.php.

References $news_timeline_auto_entries.

Referenced by _exportContainerSettings(), create(), and update().

282  {
284  }
+ Here is the caller graph for this function:

◆ getNewsTimelineLandingPage()

ilContainer::getNewsTimelineLandingPage ( )

Get news timline is landing page.

Returns
bool is news timline landing page?

Definition at line 301 of file class.ilContainer.php.

Referenced by _exportContainerSettings(), create(), isNewsTimelineLandingPageEffective(), and update().

302  {
303  return $this->news_timeline_landing_page;
304  }
+ Here is the caller graph for this function:

◆ getObjectTranslation()

ilContainer::getObjectTranslation ( )

Get object translation.

Returns
ilObjectTranslation

Definition at line 159 of file class.ilContainer.php.

References $obj_trans.

Referenced by ilObjStudyProgrammeSettingsGUI\buildForm(), and update().

160  {
161  return $this->obj_trans;
162  }
+ Here is the caller graph for this function:

◆ getOrderType()

ilContainer::getOrderType ( )

Get order type default implementation.

Definition at line 718 of file class.ilContainer.php.

References SORT_TITLE.

719  {
720  return $this->order_type ? $this->order_type : ilContainer::SORT_TITLE;
721  }

◆ getStyleSheetId()

ilContainer::getStyleSheetId ( )

get ID of assigned style sheet object

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

Referenced by _exportContainerSettings(), create(), and update().

234  {
235  return $this->style_id;
236  }
+ Here is the caller graph for this function:

◆ getSubItems()

ilContainer::getSubItems (   $a_admin_panel_enabled = false,
  $a_include_side_block = false,
  $a_get_single = 0,
\ilContainerUserFilter  $container_user_filter = null 
)

Get subitems of container.

Parameters
booladministration panel enabled
boolside blocks enabled
Returns
array

Definition at line 783 of file class.ilContainer.php.

References $i, ilObject\$id, $obj_definition, ilObject\$objDefinition, ilObject\$type, ilContainerSorting\_getInstance(), ilEventItems\_getItemsOfContainer(), ilObjFileAccess\_isFileHidden(), addAdditionalSubItemInformation(), applyContainerUserFilter(), ilObjectListGUI\CONTEXT_REPOSITORY, ilObject\getId(), getInitialSubitems(), ilObject\getRefId(), ilObject\getType(), ilClassificationProvider\getValidProviders(), isClassificationFilterActive(), and setHiddenFilesFound().

788  {
790 
791  // Caching
792  if (is_array($this->items[(int) $a_admin_panel_enabled][(int) $a_include_side_block]) &&
793  !$a_get_single) {
794  return $this->items[(int) $a_admin_panel_enabled][(int) $a_include_side_block];
795  }
796 
797  $objects = $this->getInitialSubitems();
798  $objects = $this->applyContainerUserFilter($objects, $container_user_filter);
799  $objects = self::getCompleteDescriptions($objects);
800 
801  // apply container classification filters
802  $repo = new ilClassificationSessionRepository($this->getRefId());
803  foreach (ilClassificationProvider::getValidProviders($this->getRefId(), $this->getId(), $this->getType()) as $class_provider) {
804  $id = get_class($class_provider);
805  $current = $repo->getValueForProvider($id);
806  if ($current) {
807  $class_provider->setSelection($current);
808  $filtered = $class_provider->getFilteredObjects();
809  $objects = array_filter($objects, function ($i) use ($filtered) {
810  return (is_array($filtered) && in_array($i["obj_id"], $filtered));
811  });
812  //if (count($filtered) > 0) {
813  // var_dump($filtered);
814  // echo "<br><br>";
815  // var_dump($objects);
816  // exit;
817  //}
818  }
819  }
820 
821  $found = false;
822  $all_ref_ids = array();
823 
824  if (!self::$data_preloaded) {
825  include_once("./Services/Object/classes/class.ilObjectListGUIPreloader.php");
827  }
828 
829  include_once('Services/Container/classes/class.ilContainerSorting.php');
830  $sort = ilContainerSorting::_getInstance($this->getId());
831 
832  // TODO: check this
833  // get items attached to a session
834  include_once './Modules/Session/classes/class.ilEventItems.php';
835  $event_items = ilEventItems::_getItemsOfContainer($this->getRefId());
836 
837  $classification_filter_active = $this->isClassificationFilterActive();
838  foreach ($objects as $key => $object) {
839  if ($a_get_single > 0 && $object["child"] != $a_get_single) {
840  continue;
841  }
842 
843  // hide object types in devmode
844  if ($objDefinition->getDevMode($object["type"]) || $object["type"] == "adm"
845  || $object["type"] == "rolf") {
846  continue;
847  }
848 
849  // remove inactive plugins
850  if ($objDefinition->isInactivePlugin($object["type"])) {
851  continue;
852  }
853 
854  // BEGIN WebDAV: Don't display hidden Files, Folders and Categories
855  if (in_array($object['type'], array('file','fold','cat'))) {
856  include_once 'Modules/File/classes/class.ilObjFileAccess.php';
857  if (ilObjFileAccess::_isFileHidden($object['title'])) {
858  $this->setHiddenFilesFound(true);
859  if (!$a_admin_panel_enabled) {
860  continue;
861  }
862  }
863  }
864  // END WebDAV: Don't display hidden Files, Folders and Categories
865 
866  // including event items!
867  if (!self::$data_preloaded) {
868  $preloader->addItem($object["obj_id"], $object["type"], $object["child"]);
869  }
870 
871  // filter out items that are attached to an event
872  if (in_array($object['ref_id'], $event_items) && !$classification_filter_active) {
873  continue;
874  }
875 
876  // filter side block items
877  if (!$a_include_side_block && $objDefinition->isSideBlock($object['type'])) {
878  continue;
879  }
880 
881  $all_ref_ids[] = $object["child"];
882  }
883 
884  // data preloader
885  if (!self::$data_preloaded) {
886  $preloader->preload();
887  unset($preloader);
888 
889  self::$data_preloaded = true;
890  }
891 
892  foreach ($objects as $key => $object) {
893  // see above, objects were filtered
894  if (!in_array($object["child"], $all_ref_ids)) {
895  continue;
896  }
897 
898  // group object type groups together (e.g. learning resources)
899  $type = $objDefinition->getGroupOfObj($object["type"]);
900  if ($type == "") {
901  $type = $object["type"];
902  }
903 
904  // this will add activation properties
905  $this->addAdditionalSubItemInformation($object);
906 
907  $this->items[$type][$key] = $object;
908 
909  $this->items["_all"][$key] = $object;
910  if ($object["type"] != "sess") {
911  $this->items["_non_sess"][$key] = $object;
912  }
913  }
914  $this->items[(int) $a_admin_panel_enabled][(int) $a_include_side_block]
915  = $sort->sortItems($this->items);
916 
917  return $this->items[(int) $a_admin_panel_enabled][(int) $a_include_side_block];
918  }
static getValidProviders($a_parent_ref_id, $a_parent_obj_id, $a_parent_obj_type)
Get all valid providers (for parent container)
static _getItemsOfContainer($a_ref_id)
static _isFileHidden($a_file_name)
Returns true, if a file with the specified name, is usually hidden from the user. ...
setHiddenFilesFound($a_hiddenfilesfound)
Set Found hidden files (set by getSubItems).
Preloader for object list GUIs.
getId()
get object id public
getType()
get object type public
applyContainerUserFilter($objects, ilContainerUserFilter $container_user_filter=null)
Apply container user filter on objects.
addAdditionalSubItemInformation(&$object)
Add additional information to sub item, e.g.
getRefId()
get reference id public
isClassificationFilterActive()
Is classification filter active?
static _getInstance($a_obj_id)
get instance by obj_id
getInitialSubitems()
Get initial subitems.
$i
Definition: metadata.php:24
+ Here is the call graph for this function:

◆ getUseNews()

ilContainer::getUseNews ( )

Get use news.

Returns
bool use news system?

Definition at line 374 of file class.ilContainer.php.

Referenced by _exportContainerSettings(), create(), isNewsTimelineEffective(), isNewsTimelineLandingPageEffective(), and update().

375  {
376  return $this->use_news;
377  }
+ Here is the caller graph for this function:

◆ getViewMode()

ilContainer::getViewMode ( )

Get container view mode.

Definition at line 710 of file class.ilContainer.php.

References VIEW_BY_TYPE.

711  {
713  }

◆ gotItems()

ilContainer::gotItems ( )

Check whether we got any items.

Definition at line 923 of file class.ilContainer.php.

924  {
925  if (is_array($this->items["_all"]) && count($this->items["_all"]) > 0) {
926  return true;
927  }
928  return false;
929  }

◆ isClassificationFilterActive()

ilContainer::isClassificationFilterActive ( )

Is classification filter active?

Returns
bool

Definition at line 732 of file class.ilContainer.php.

References ilObject\$id, ilObject\getId(), ilObject\getRefId(), ilObject\getType(), and ilClassificationProvider\getValidProviders().

Referenced by filteredSubtree(), and getSubItems().

732  : bool
733  {
734  // apply container classification filters
735  $repo = new ilClassificationSessionRepository($this->getRefId());
736  foreach (ilClassificationProvider::getValidProviders($this->getRefId(), $this->getId(), $this->getType()) as $class_provider) {
737  $id = get_class($class_provider);
738  $current = $repo->getValueForProvider($id);
739  if ($current) {
740  return true;
741  }
742  }
743  return false;
744  }
static getValidProviders($a_parent_ref_id, $a_parent_obj_id, $a_parent_obj_type)
Get all valid providers (for parent container)
getId()
get object id public
getType()
get object type public
getRefId()
get reference id public
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isNewsTimelineEffective()

ilContainer::isNewsTimelineEffective ( )

Is news timeline effective?

Returns
bool

Definition at line 311 of file class.ilContainer.php.

References getNewsTimeline(), and getUseNews().

312  {
313  if ($this->getUseNews()) {
314  if ($this->getNewsTimeline()) {
315  return true;
316  }
317  }
318  return false;
319  }
getNewsTimeline()
Get news timeline.
getUseNews()
Get use news.
+ Here is the call graph for this function:

◆ isNewsTimelineLandingPageEffective()

ilContainer::isNewsTimelineLandingPageEffective ( )

Is news timeline landing page effective?

Returns
bool

Definition at line 326 of file class.ilContainer.php.

References getNewsTimeline(), getNewsTimelineLandingPage(), and getUseNews().

327  {
328  if ($this->getUseNews()) {
329  if ($this->getNewsTimeline()) {
330  if ($this->getNewsTimelineLandingPage()) {
331  return true;
332  }
333  }
334  }
335  return false;
336  }
getNewsTimelineLandingPage()
Get news timline is landing page.
getNewsTimeline()
Get news timeline.
getUseNews()
Get use news.
+ Here is the call graph for this function:

◆ legacyOnlineFilter()

ilContainer::legacyOnlineFilter (   $obj_ids,
  $objects,
  $val 
)
protected

Legacy online filter.

This can be removed, once all objects use the central online/offline property

Parameters
$obj_ids
$objects
$val
Returns
mixed

Definition at line 1430 of file class.ilContainer.php.

References $i, ilObject\$type, ilObjDataCollectionAccess\_lookupOnline(), ilObjPortfolioTemplateAccess\_lookupOnlineStatus(), ilObjBookingPoolAccess\_lookupOnlineStatus(), ilObjGlossaryAccess\_lookupOnlineStatus(), ilObjWikiAccess\_lookupOnlineStatus(), and ilObjQuestionPoolAccess\isOnline().

Referenced by applyContainerUserFilter().

1431  {
1432  $legacy_types = ["glo", "wiki", "qpl", "book", "dcl", "prtt"];
1433  foreach ($legacy_types as $type) {
1434  $lobjects = array_filter($objects, function($o) use ($type) {
1435  return ($o["type"] == $type);
1436  });
1437  $lobj_ids = array_map(function($i){
1438  return $i["obj_id"];
1439  }, $lobjects);
1440  switch($type) {
1441  case "glo":
1442  $status = ilObjGlossaryAccess::_lookupOnlineStatus($lobj_ids);
1443  break;
1444  case "wiki":
1445  $status = ilObjWikiAccess::_lookupOnlineStatus($lobj_ids);
1446  break;
1447  case "book":
1448  $status = ilObjBookingPoolAccess::_lookupOnlineStatus($lobj_ids);
1449  break;
1450  case "qpl":
1451  $status = [];
1452  foreach ($lobj_ids as $lid) {
1453  $status[$lid] = ilObjQuestionPoolAccess::isOnline($lid);
1454  }
1455  break;
1456  case "dcl":
1457  $status = [];
1458  foreach ($lobj_ids as $lid) {
1459  $status[$lid] = ilObjDataCollectionAccess::_lookupOnline($lid);
1460  }
1461  break;
1462  case "prtt":
1464  break;
1465  }
1466  foreach($status as $obj_id => $online) {
1467  if ($val == 1 && !$online || $val == 2 && $online) {
1468  if (($key = array_search($obj_id, $obj_ids)) !== false) {
1469  unset($obj_ids[$key]);
1470  }
1471  } else if (!in_array($obj_id, $obj_ids)) {
1472  $obj_ids[] = $obj_id;
1473  }
1474  }
1475  }
1476 
1477  return $obj_ids;
1478  }
static _lookupOnline($a_id)
Check wether datacollection is online.
static _lookupOnlineStatus($a_ids)
Check wether learning module is online (legacy version)
static _lookupOnlineStatus($a_ids)
Check wether booking pool is online (legacy version)
static _lookupOnlineStatus($a_ids)
Check wether booking pool is online (legacy version)
static _lookupOnlineStatus($a_ids)
Check wether learning module is online (legacy version)
static isOnline($a_obj_id)
returns the objects&#39;s ONline status
$i
Definition: metadata.php:24
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ putInTree()

ilContainer::putInTree (   $a_parent_ref)

Definition at line 1010 of file class.ilContainer.php.

References ilObject\_lookupObjId(), and ilObject\getId().

1011  {
1012  parent::putInTree($a_parent_ref);
1013 
1014  // copy title, icon actions visibilities
1015  if (self::_lookupContainerSetting(ilObject::_lookupObjId($a_parent_ref), "hide_header_icon_and_title")) {
1016  self::_writeContainerSetting($this->getId(), "hide_header_icon_and_title", true);
1017  }
1018  if (self::_lookupContainerSetting(ilObject::_lookupObjId($a_parent_ref), "hide_top_actions")) {
1019  self::_writeContainerSetting($this->getId(), "hide_top_actions", true);
1020  }
1021  }
getId()
get object id public
static _lookupObjId($a_id)
+ Here is the call graph for this function:

◆ read()

ilContainer::read ( )

read

public

Parameters

Definition at line 1059 of file class.ilContainer.php.

References ilContainerSortingSettings\_lookupSortMode(), ilObject\getId(), ilObjectTranslation\getInstance(), ilObjStyleSheet\lookupObjectStyle(), readContainerSettings(), setOrderType(), and setStyleSheetId().

Referenced by ilObjOrgUnit\__construct().

1060  {
1061  parent::read();
1062 
1063  include_once("./Services/Container/classes/class.ilContainerSortingSettings.php");
1065 
1066  include_once("./Services/Style/Content/classes/class.ilObjStyleSheet.php");
1068 
1069  $this->readContainerSettings();
1070  $this->obj_trans = ilObjectTranslation::getInstance($this->getId());
1071  }
setStyleSheetId($a_style_id)
set ID of assigned style sheet object
static lookupObjectStyle($a_obj_id)
Lookup object style.
getId()
get object id public
readContainerSettings()
Read container settings.
setOrderType($a_value)
static getInstance($a_obj_id)
Get instance.
static _lookupSortMode($a_obj_id)
lookup sort mode
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ readContainerSettings()

ilContainer::readContainerSettings ( )

Read container settings.

Parameters

Definition at line 1079 of file class.ilContainer.php.

References ilObject\getId(), ilObjectServiceSettingsGUI\NEWS_VISIBILITY, setNewsBlockActivated(), setNewsTimeline(), setNewsTimelineAutoEntries(), setNewsTimelineLandingPage(), setUseNews(), and ilObjectServiceSettingsGUI\USE_NEWS.

Referenced by read().

1080  {
1081  $this->setNewsTimeline(self::_lookupContainerSetting($this->getId(), "news_timeline"));
1082  $this->setNewsTimelineAutoEntries(self::_lookupContainerSetting($this->getId(), "news_timeline_incl_auto"));
1083  $this->setNewsTimelineLandingPage(self::_lookupContainerSetting($this->getId(), "news_timeline_landing_page"));
1084  include_once("./Services/Object/classes/class.ilObjectServiceSettingsGUI.php");
1085  $this->setNewsBlockActivated(self::_lookupContainerSetting(
1086  $this->getId(),
1088  $this->setting->get('block_activated_news', true)
1089  ));
1090  $this->setUseNews(self::_lookupContainerSetting($this->getId(), ilObjectServiceSettingsGUI::USE_NEWS, true));
1091  }
setNewsTimelineAutoEntries($a_val)
Set news timeline auto entries.
setNewsBlockActivated($a_val)
Set news block activated.
setUseNews($a_val)
Set use news.
setNewsTimelineLandingPage($a_val)
Set news timline is landing page.
getId()
get object id public
setNewsTimeline($a_val)
Set news timeline.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ removeTranslations()

ilContainer::removeTranslations ( )

Remove all translations of container.

Definition at line 1195 of file class.ilContainer.php.

1196  {
1197  $this->obj_trans->delete();
1198  }

◆ setHiddenFilesFound()

ilContainer::setHiddenFilesFound (   $a_hiddenfilesfound)

Set Found hidden files (set by getSubItems).

Parameters
boolean$a_hiddenfilesfoundFound hidden files (set by getSubItems)

Definition at line 215 of file class.ilContainer.php.

Referenced by getSubItems().

216  {
217  $this->hiddenfilesfound = $a_hiddenfilesfound;
218  }
+ Here is the caller graph for this function:

◆ setNewsBlockActivated()

ilContainer::setNewsBlockActivated (   $a_val)

Set news block activated.

Parameters
bool$a_valnews block activated

Definition at line 344 of file class.ilContainer.php.

Referenced by readContainerSettings().

345  {
346  $this->news_block_activated = $a_val;
347  }
+ Here is the caller graph for this function:

◆ setNewsTimeline()

ilContainer::setNewsTimeline (   $a_val)

Set news timeline.

Parameters
bool$a_valactivate news timeline

Definition at line 251 of file class.ilContainer.php.

Referenced by readContainerSettings().

252  {
253  $this->news_timeline = $a_val;
254  }
+ Here is the caller graph for this function:

◆ setNewsTimelineAutoEntries()

ilContainer::setNewsTimelineAutoEntries (   $a_val)

Set news timeline auto entries.

Parameters
bool$a_valinclude automatically created entries

Definition at line 271 of file class.ilContainer.php.

Referenced by readContainerSettings().

272  {
273  $this->news_timeline_auto_entries = $a_val;
274  }
+ Here is the caller graph for this function:

◆ setNewsTimelineLandingPage()

ilContainer::setNewsTimelineLandingPage (   $a_val)

Set news timline is landing page.

Parameters
bool$a_valis news timline landing page?

Definition at line 291 of file class.ilContainer.php.

Referenced by readContainerSettings().

292  {
293  $this->news_timeline_landing_page = $a_val;
294  }
+ Here is the caller graph for this function:

◆ setObjectTranslation()

ilContainer::setObjectTranslation ( ilObjectTranslation  $obj_trans)

Get object translation.

Parameters
ilObjectTranslation$obj_trans

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

References $obj_trans.

169  {
170  $this->obj_trans = $obj_trans;
171  }

◆ setOrderType()

ilContainer::setOrderType (   $a_value)

Definition at line 723 of file class.ilContainer.php.

Referenced by ilObjCourse\cloneSettings(), ilObjFolder\read(), ilObjCourse\read(), ilObjGroup\read(), and read().

724  {
725  $this->order_type = $a_value;
726  }
+ Here is the caller graph for this function:

◆ setStyleSheetId()

ilContainer::setStyleSheetId (   $a_style_id)

set ID of assigned style sheet object

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

Referenced by read().

242  {
243  $this->style_id = $a_style_id;
244  }
+ Here is the caller graph for this function:

◆ setUseNews()

ilContainer::setUseNews (   $a_val)

Set use news.

Parameters
bool$a_valuse news system?

Definition at line 364 of file class.ilContainer.php.

Referenced by readContainerSettings().

365  {
366  $this->use_news = $a_val;
367  }
+ Here is the caller graph for this function:

◆ update()

ilContainer::update ( )

Update.

Definition at line 1026 of file class.ilContainer.php.

References $log, $ret, ilObject\getId(), ilLoggerFactory\getLogger(), ilObject\getLongDescription(), getNewsBlockActivated(), getNewsTimeline(), getNewsTimelineAutoEntries(), getNewsTimelineLandingPage(), getObjectTranslation(), getStyleSheetId(), ilObject\getTitle(), getUseNews(), ilObjectServiceSettingsGUI\NEWS_VISIBILITY, ilObjectServiceSettingsGUI\USE_NEWS, and ilObjStyleSheet\writeStyleUsage().

1027  {
1028  $ret = parent::update();
1029 
1030  $trans = $this->getObjectTranslation();
1031  $trans->setDefaultTitle($this->getTitle());
1032  $trans->setDefaultDescription($this->getLongDescription());
1033  $trans->save();
1034 
1035  include_once("./Services/Style/Content/classes/class.ilObjStyleSheet.php");
1037 
1038  $log = ilLoggerFactory::getLogger("cont");
1039  $log->debug("Update Container, id: " . $this->getId());
1040 
1041  self::_writeContainerSetting($this->getId(), "news_timeline", (int) $this->getNewsTimeline());
1042  self::_writeContainerSetting($this->getId(), "news_timeline_incl_auto", (int) $this->getNewsTimelineAutoEntries());
1043  self::_writeContainerSetting($this->getId(), "news_timeline_landing_page", (int) $this->getNewsTimelineLandingPage());
1044  include_once("./Services/Object/classes/class.ilObjectServiceSettingsGUI.php");
1045  self::_writeContainerSetting($this->getId(), ilObjectServiceSettingsGUI::NEWS_VISIBILITY, (int) $this->getNewsBlockActivated());
1046  self::_writeContainerSetting($this->getId(), ilObjectServiceSettingsGUI::USE_NEWS, (int) $this->getUseNews());
1047 
1048  return $ret;
1049  }
getNewsTimelineLandingPage()
Get news timline is landing page.
getNewsTimelineAutoEntries()
Get news timeline auto entries.
static writeStyleUsage($a_obj_id, $a_style_id)
Write style usage.
getId()
get object id public
getStyleSheetId()
get ID of assigned style sheet object
getNewsTimeline()
Get news timeline.
getTitle()
get object title public
getObjectTranslation()
Get object translation.
getUseNews()
Get use news.
$ret
Definition: parser.php:6
getLongDescription()
get object long description (stored in object_description)
static getLogger($a_component_id)
Get component logger.
getNewsBlockActivated()
Get news block activated.
+ Here is the call graph for this function:

Field Documentation

◆ $access

ilContainer::$access
protected

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

Referenced by cloneAllObject(), and ilObjCourse\getSubItems().

◆ $data_preloaded

ilContainer::$data_preloaded = false
static

Definition at line 114 of file class.ilContainer.php.

◆ $db

◆ $error

ilContainer::$error
protected

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

Referenced by cloneAllObject(), and ilObjCourse\validateInfoSettings().

◆ $hiddenfilesfound

ilContainer::$hiddenfilesfound = false
protected

Definition at line 82 of file class.ilContainer.php.

Referenced by getHiddenFilesFound().

◆ $log

◆ $news_timeline

ilContainer::$news_timeline = false
protected

Definition at line 83 of file class.ilContainer.php.

Referenced by getNewsTimeline().

◆ $news_timeline_auto_entries

ilContainer::$news_timeline_auto_entries = false
protected

Definition at line 84 of file class.ilContainer.php.

Referenced by getNewsTimelineAutoEntries().

◆ $obj_definition

ilContainer::$obj_definition
protected

Definition at line 79 of file class.ilContainer.php.

Referenced by getCompleteDescriptions(), getGroupedObjTypes(), and getSubItems().

◆ $obj_trans

ilContainer::$obj_trans = null
protected

Definition at line 124 of file class.ilContainer.php.

Referenced by getObjectTranslation(), and setObjectTranslation().

◆ $order_type

ilContainer::$order_type = 0
protected

Definition at line 81 of file class.ilContainer.php.

◆ $rbacsystem

ilContainer::$rbacsystem
protected

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

Referenced by cloneAllObject().

◆ $recommended_content_manager

ilContainer::$recommended_content_manager
protected

Definition at line 129 of file class.ilContainer.php.

◆ $setting

ilContainer::$setting
protected

Definition at line 119 of file class.ilContainer.php.

Referenced by enablePageEditing().

◆ $tree

◆ $user

ilContainer::$user
protected

Definition at line 74 of file class.ilContainer.php.

Referenced by cloneAllObject().

◆ SORT_ACTIVATION

◆ SORT_CREATION

◆ SORT_DIRECTION_ASC

◆ SORT_DIRECTION_DESC

const ilContainer::SORT_DIRECTION_DESC = 1

◆ SORT_INHERIT

◆ SORT_MANUAL

◆ SORT_NEW_ITEMS_ORDER_ACTIVATION

◆ SORT_NEW_ITEMS_ORDER_CREATION

◆ SORT_NEW_ITEMS_ORDER_TITLE

◆ SORT_NEW_ITEMS_POSITION_BOTTOM

◆ SORT_NEW_ITEMS_POSITION_TOP

◆ SORT_TITLE

◆ VIEW_ARCHIVE

const ilContainer::VIEW_ARCHIVE = 3

Definition at line 90 of file class.ilContainer.php.

◆ VIEW_BY_TYPE

◆ VIEW_DEFAULT

const ilContainer::VIEW_DEFAULT = self::VIEW_BY_TYPE

Definition at line 95 of file class.ilContainer.php.

Referenced by ilObjGroup\getViewMode(), and ilObjGroup\translateViewMode().

◆ VIEW_INHERIT

const ilContainer::VIEW_INHERIT = 6

◆ VIEW_OBJECTIVE

◆ VIEW_SESSIONS

◆ VIEW_SIMPLE

◆ VIEW_TIMING


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