ILIAS  Release_3_10_x_branch Revision 61812
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilObjCategory Class Reference

Class ilObjCategory. More...

+ Inheritance diagram for ilObjCategory:
+ Collaboration diagram for ilObjCategory:

Public Member Functions

 ilObjCategory ($a_id=0, $a_call_by_reference=true)
 Constructor public.
 delete ()
 delete category and all related data
 getTranslations ()
 get all translations from this category
 removeTranslations ()
 addTranslation ($a_title, $a_desc, $a_lang, $a_lang_default)
 updateTranslation ($a_title, $a_desc, $a_lang, $a_lang_default)
 cloneObject ($a_target_id, $a_copy_id=0)
 Clone course (no member data)
- Public Member Functions inherited from ilContainer
 ilContainer ($a_id=0, $a_call_by_reference=true)
 Constructor public.
 createContainerDirectory ()
 Create directory for the container.
 getContainerDirectory ()
 Get the container directory.
 _getContainerDirectory ($a_id)
 Get the container directory.
 getBigIconPath ()
 Get path for big icon.
 getSmallIconPath ()
 Get path for small icon.
 getTinyIconPath ()
 Get path for tiny icon.
 setHiddenFilesFound ($a_hiddenfilesfound)
 Set Found hidden files (set by getSubItems).
 getHiddenFilesFound ()
 Get Found hidden files (set by getSubItems).
 _lookupContainerSetting ($a_id, $a_keyword)
 Lookup a container setting.
 _writeContainerSetting ($a_id, $a_keyword, $a_value)
 _lookupIconPath ($a_id, $a_size="big")
 lookup icon path
 saveIcons ($a_big_icon, $a_small_icon, $a_tiny_icon)
 save container icons
 removeBigIcon ()
 remove big icon
 removeSmallIcon ()
 remove small icon
 removeTinyIcon ()
 remove tiny icon
 getFirstColumn ()
 Get right column.
 cloneDependencies ($a_target_id, $a_copy_id)
 Clone object dependencies (container sorting)
 cloneAllObject ($session_id, $client_id, $new_type, $ref_id, $clone_source, $options, $soap_call=false)
 clone all objects according to this container
 getViewMode ()
 Get container view mode.
 getOrderType ()
 Get order type default implementation.
 setOrderType ($a_value)
 getSubItems ($a_include_hidden_files=false, $a_include_side_block=false)
 Get subitems of container.
 gotItems ()
 Check whether we got any items.
 addAdditionalSubItemInformation (&$object)
 Add additional information to sub item, e.g.
 getGroupedObjTypes ()
 Get grouped repository object types.
 enablePageEditing ()
 Check whether page editing is allowed for container.
 read ()
 read
- Public Member Functions inherited from ilObject
 ilObject ($a_id=0, $a_reference=true)
 Constructor public.
 withReferences ()
 determines wehter objects are referenced or not (got ref ids or not)
 read ($a_force_db=false)
 read object data from db into object
 getId ()
 get object id public
 setId ($a_id)
 set object id public
 setRefId ($a_id)
 set reference id public
 getRefId ()
 get reference id public
 getType ()
 get object type public
 setType ($a_type)
 set object type public
 getPresentationTitle ()
 get presentation title Normally same as title Overwritten for sessions
 getTitle ()
 get object title public
 getUntranslatedTitle ()
 get untranslated object title public
 setTitle ($a_title)
 set object title
 getDescription ()
 get object description
 setDescription ($a_desc)
 set object description
 getLongDescription ()
 get object long description (stored in object_description)
 getImportId ()
 get import id
 setImportId ($a_import_id)
 set import id
 _lookupObjIdByImportId ($a_import_id)
 getOwner ()
 get object owner
 getOwnerName ()
 _lookupOwnerName ($a_owner_id)
 lookup owner name for owner id
 setOwner ($a_owner)
 set object owner
 getCreateDate ()
 get create date public
 getLastUpdateDate ()
 get last update date public
 setObjDataRecord ($a_record)
 set object_data record (note: this method should only be called from the ilObjectFactory class)
 create ()
 create
 update ()
 update object in db
 MDUpdateListener ($a_element)
 Meta data update listener.
 createMetaData ()
 create meta data entry
 updateMetaData ()
 update meta data entry
 deleteMetaData ()
 delete meta data entry
 updateOwner ()
 update owner of object in db
 _getIdForImportId ($a_import_id)
 get current object id for import id (static)
 _getAllReferences ($a_id)
 get all reference ids of object
 _lookupTitle ($a_id)
 lookup object title
 _lookupDescription ($a_id)
 lookup object description
 _lookupLastUpdate ($a_id, $a_as_string=false)
 lookup last update
 _getLastUpdateOfObjects ($a_objs)
 Get last update for a set of media objects.
 _lookupObjId ($a_id)
 _setDeletedDate ($a_ref_id)
 only called in ilTree::saveSubTree
 _resetDeletedDate ($a_ref_id)
 only called in ilObjectGUI::insertSavedNodes
 _writeTitle ($a_obj_id, $a_title)
 write title to db (static)
 _writeDescription ($a_obj_id, $a_desc)
 write description to db (static)
 _writeImportId ($a_obj_id, $a_import_id)
 write import id to db (static)
 _lookupType ($a_id, $a_reference=false)
 lookup object type
 _isInTrash ($a_ref_id)
 checks wether object is in trash
 _hasUntrashedReference ($a_obj_id)
 checks wether an object has at least one reference that is not in trash
 _lookupObjectId ($a_ref_id)
 lookup object id
 _getObjectsDataForType ($a_type, $a_omit_trash=false)
 get all objects of a certain type
 putInTree ($a_parent_ref)
 maybe this method should be in tree object!?
 setPermissions ($a_parent_ref)
 set permissions of object
 createReference ()
 creates reference for object
 countReferences ()
 count references of object
 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
 createRoleFolder ()
 creates a local role folder
 notify ($a_event, $a_ref_id, $a_parent_non_rbac_id, $a_node_id, $a_params=0)
 notifys an object about an event occured Based on the event passed, each object may decide how it reacts.
 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.
 cloneMetaData ($target_obj)
 Copy meta data.

Additional Inherited Members

- Static Public Member Functions inherited from ilObject
static _getIdsForTitle ($title, $type= '')
 _exists ($a_id, $a_reference=false)
 checks if an object exists in object_data
static _getObjectsByType ($a_obj_type="")
 Get objects by type.
static _prepareCloneSelection ($a_ref_ids, $new_type)
 Prepare copy wizard object selection.
static _getIcon ($a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
- Data Fields inherited from ilContainer
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_ILINC = 7
const SORT_TITLE = 0
const SORT_MANUAL = 1
const SORT_ACTIVATION = 2
- Protected Attributes inherited from ilContainer
 $order_type = 0
 $hiddenfilesfound = false

Detailed Description

Class ilObjCategory.

Author
Stefan Meyer smeye.nosp@m.r@da.nosp@m.tabay.nosp@m..de
Version
Id:
class.ilObjCategory.php 18018 2008-11-20 13:33:08Z smeyer

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

Member Function Documentation

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

Definition at line 133 of file class.ilObjCategory.php.

References ilObject\getId().

{
global $ilDB;
if (empty($a_title))
{
$a_title = "NO TITLE";
}
$q = "INSERT INTO object_translation ".
"(obj_id,title,description,lang_code,lang_default) ".
"VALUES ".
"(".$ilDB->quote($this->getId()).",".
$ilDB->quote($a_title).",".$ilDB->quote($a_desc).",".
$ilDB->quote($a_lang).",".$ilDB->quote($a_lang_default).")";
$this->ilias->db->query($q);
return true;
}

+ Here is the call graph for this function:

ilObjCategory::cloneObject (   $a_target_id,
  $a_copy_id = 0 
)

Clone course (no member data)

public

Parameters
inttarget ref_id
intcopy id

Reimplemented from ilContainer.

Definition at line 183 of file class.ilObjCategory.php.

References ilContainer\getBigIconPath(), ilContainer\getSmallIconPath(), ilContainer\getTinyIconPath(), and getTranslations().

{
global $ilDB,$ilUser;
$new_obj = parent::cloneObject($a_target_id,$a_copy_id);
/* done in class.ilContainer
include_once('./Services/Container/classes/class.ilContainerSortingSettings.php');
ilContainerSortingSettings::_cloneSettings($this->getId(),$new_obj->getId());
*/
$first = true;
$translations = $this->getTranslations();
if(is_array($translations['Fobject']))
{
foreach($translations['Fobject'] as $num => $translation)
{
$new_obj->addTranslation($translation['title'],$translation['desc'],$translation['lang'],$first);
if($first)
{
$first = false;
}
}
}
// clone icons
$new_obj->saveIcons($this->getBigIconPath(),
$this->getSmallIconPath(),
$this->getTinyIconPath());
return $new_obj;
}

+ Here is the call graph for this function:

ilObjCategory::delete ( )

delete category and all related data

public

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

Reimplemented from ilObject.

Definition at line 66 of file class.ilObjCategory.php.

References ilObjUserFolder\_updateUserFolderAssignment(), ilObject\getId(), and USER_FOLDER_ID.

{
global $ilDB,$ilAppEventHandler;
// always call parent delete function first!!
if (!parent::delete())
{
return false;
}
// put here category specific stuff
include_once('./Services/User/classes/class.ilObjUserFolder.php');
$query = "DELETE FROM object_translation WHERE obj_id = ".$ilDB->quote($this->getId());
$this->ilias->db->query($query);
$ilAppEventHandler->raise('Modules/Category',
'delete',
array('object' => $this,
'obj_id' => $this->getId()));
return true;
}

+ Here is the call graph for this function:

ilObjCategory::getTranslations ( )

get all translations from this category

public

Returns
array

Definition at line 97 of file class.ilObjCategory.php.

References $data, DB_FETCHMODE_OBJECT, and ilObject\getId().

Referenced by cloneObject().

{
global $ilDB;
$q = "SELECT * FROM object_translation WHERE obj_id = ".
$ilDB->quote($this->getId())." ORDER BY lang_default DESC";
$r = $this->ilias->db->query($q);
$num = 0;
while ($row = $r->fetchRow(DB_FETCHMODE_OBJECT))
{
$data["Fobject"][$num]= array("title" => $row->title,
"desc" => $row->description,
"lang" => $row->lang_code
);
$num++;
}
// first entry is always the default language
$data["default_language"] = 0;
return $data ? $data : array();
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjCategory::ilObjCategory (   $a_id = 0,
  $a_call_by_reference = true 
)

Constructor public.

Parameters
integerreference_id or object_id
booleantreat the id as reference_id (true) or object_id (false)

Definition at line 47 of file class.ilObjCategory.php.

References $ilBench, and ilContainer\ilContainer().

{
global $ilBench;
$ilBench->start("Core", "ilObjCategory_Constructor");
$this->type = "cat";
$this->ilContainer($a_id,$a_call_by_reference);
$ilBench->stop("Core", "ilObjCategory_Constructor");
}

+ Here is the call graph for this function:

ilObjCategory::removeTranslations ( )

Definition at line 123 of file class.ilObjCategory.php.

References ilObject\getId().

{
global $ilDB;
$q = "DELETE FROM object_translation WHERE obj_id= ".
$ilDB->quote($this->getId());
$this->ilias->db->query($q);
}

+ Here is the call graph for this function:

ilObjCategory::updateTranslation (   $a_title,
  $a_desc,
  $a_lang,
  $a_lang_default 
)

Definition at line 154 of file class.ilObjCategory.php.

References $ilLog, and ilObject\getId().

{
global $ilDB, $ilLog;
if (empty($a_title))
{
$a_title = "NO TITLE";
}
$q = "UPDATE object_translation ".
"SET title = ". $ilDB->quote($a_title).",".
"description = ".$ilDB->quote($a_desc).",".
"lang_code = ".$ilDB->quote($a_lang) . ",".
"lang_default = ".$ilDB->quote($a_lang_default)." ".
"WHERE ".
" obj_id = ".$ilDB->quote($this->getId());
$this->ilias->db->query($q);
return true;
}

+ Here is the call graph for this function:


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