ILIAS  Release_5_0_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilObjForum Class Reference

Class ilObjForum. More...

+ Inheritance diagram for ilObjForum:
+ Collaboration diagram for ilObjForum:

Public Member Functions

 __construct ($a_id=0, $a_call_by_reference=true)
 Constructor public.
 create ()
 getDiskUsage ()
 Gets the disk usage of the object in bytes.
 initDefaultRoles ()
 init default roles settings public
 createSettings ()
 setThreadSorting ($a_thr_pk, $a_sorting_value)
- 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
 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)
 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)
 _lookupOwner ($a_id)
 lookup object owner
 _lookupLastUpdate ($a_id, $a_as_string=false)
 lookup last update
 _getLastUpdateOfObjects ($a_objs)
 Get last update for a set of media objects.
 _setDeletedDate ($a_ref_id)
 only called in ilTree::saveSubTree
 _resetDeletedDate ($a_ref_id)
 only called in ilObjectGUI::insertSavedNodes
 _lookupDeletedDate ($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)
 _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
 _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
 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.
 createReference ()
 creates reference for object
 countReferences ()
 count references of object
 delete ()
 delete object or referenced object (in the case of a referenced object, object data is only deleted if last reference is deleted) This function removes an object entirely from system!!
 applyDidacticTemplate ($a_tpl_id)
 Apply template.
 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 ()
 cloneObject ($a_target_id, $a_copy_id=0, $a_omit_tree=false)
 Clone object permissions, put in tree ...
 appendCopyInfo ($a_target_id, $a_copy_id)
 Prepend Copy info if object with same name exists in that container.
 cloneDependencies ($a_target_id, $a_copy_id)
 Clone object dependencies.
 cloneMetaData ($target_obj)
 Copy meta data.
 _lookupCreationDate ($a_id)
 Lookup creation date.

Static Public Member Functions

static lookupForumIdByObjId ($obj_id)
static lookupForumIdByRefId ($ref_id)
static mergeForumUserRead ($merge_source_thread_id, $merge_target_thread_id)
- Static Public Member Functions inherited from ilObject
static _lookupObjIdByImportId ($a_import_id)
static _getAllReferences ($a_id)
 get all reference ids of object
static _lookupTitle ($a_id)
 lookup object title
static _getIdsForTitle ($title, $type= '', $partialmatch=false)
static _lookupDescription ($a_id)
 lookup object description
static _lookupObjId ($a_id)
static setDeletedDates ($a_ref_ids)
 Set deleted date type $ilDB.
static _lookupType ($a_id, $a_reference=false)
 lookup object type
static _lookupObjectId ($a_ref_id)
 lookup object id
static _exists ($a_id, $a_reference=false, $a_type=null)
 checks if an object exists in object_data
static _getObjectsByType ($a_obj_type="", $a_owner="")
 Get objects by type.
static _prepareCloneSelection ($a_ref_ids, $new_type, $show_path=true)
 Prepare copy wizard object selection.
static _getIcon ($a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
 Get icon for repository item.
static collectDeletionDependencies (&$deps, $a_ref_id, $a_obj_id, $a_type, $a_depth=0)
 Collect deletion dependencies.
static getDeletionDependencies ($a_obj_id)
 Get deletion dependencies.
static getLongDescriptions (array $a_obj_ids)
 Get long description data.
static getAllOwnedRepositoryObjects ($a_user_id)
 Get all ids of objects user owns.
static hasAutoRating ($a_type, $a_ref_id)
 Check if auto rating is active for parent group/course.

Data Fields

 $Forum
- Data Fields inherited from ilObject
const TITLE_LENGTH = 255
 max length of object title
const DESC_LENGTH = 128
 $ilias
 $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
 $obj_data_record
 object_data record

Static Protected Attributes

static $obj_id_to_forum_id_cache = array()
static $ref_id_to_forum_id_cache = array()
static $forum_statistics_cache = array()
static $forum_last_post_cache = array()

Detailed Description

Class ilObjForum.

Author
Wolfgang Merkens wmerk.nosp@m.ens@.nosp@m.datab.nosp@m.ay.d.nosp@m.e
Version
Id:
class.ilObjForum.php 55665 2014-11-28 08:18:53Z nkrzywon

Definition at line 18 of file class.ilObjForum.php.

Constructor & Destructor Documentation

ilObjForum::__construct (   $a_id = 0,
  $a_call_by_reference = true 
)

Constructor public.

Parameters
integer$a_idreference_id or object_id
boolean$a_call_by_referencetreat the id as reference_id (true) or object_id (false)

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

{
$this->type = 'frm';
parent::__construct($a_id, $a_call_by_reference);
/*
* this constant is used for the information if a single post is marked as new
* All threads/posts created before this date are never marked as new
* Default is 8 weeks
*
*/
$new_deadline = time() - 60 * 60 * 24 * 7 * ($this->ilias->getSetting('frm_store_new') ?
$this->ilias->getSetting('frm_store_new') :
8);
define('NEW_DEADLINE', $new_deadline);
// TODO: needs to rewrite scripts that are using Forum outside this class
$this->Forum = new ilForum();
}

Member Function Documentation

ilObjForum::create ( )
Returns
int

Reimplemented from ilObject.

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

References ilObject\$id, createSettings(), ilObject\getId(), and ilForumProperties\getInstance().

{
require_once 'Modules/Forum/classes/class.ilForumProperties.php';
$properties = ilForumProperties::getInstance($this->getId());
$properties->setDefaultView(1);
$properties->setAnonymisation(0);
$properties->setStatisticsStatus(0);
$properties->setPostActivation(0);
$properties->setThreadSorting(0);
$properties->insert();
$this->createSettings();
$this->saveData();
return $id;
}

+ Here is the call graph for this function:

ilObjForum::createSettings ( )

Definition at line 767 of file class.ilObjForum.php.

References $_GET, ilNewsItem\_getDefaultVisibilityForRefId(), ilBlockSetting\_write(), and ilObject\getId().

Referenced by create().

{
// news settings (public notifications yes/no)
include_once("./Services/News/classes/class.ilNewsItem.php");
$default_visibility = ilNewsItem::_getDefaultVisibilityForRefId($_GET["ref_id"]);
if($default_visibility == "public")
{
ilBlockSetting::_write("news", "public_notifications", 1, 0, $this->getId());
}
return true;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjForum::getDiskUsage ( )

Gets the disk usage of the object in bytes.

public

Returns
integer the disk usage in bytes

Reimplemented from ilObject.

Definition at line 138 of file class.ilObjForum.php.

{
require_once("./Modules/File/classes/class.ilObjFileAccess.php");
return ilObjForumAccess::_lookupDiskUsage($this->id);
}
ilObjForum::initDefaultRoles ( )

init default roles settings public

Returns
array object IDs of created local roles.

Reimplemented from ilObject.

Definition at line 727 of file class.ilObjForum.php.

References ilObjRole\createDefaultRole(), ilObject\getId(), and ilObject\getRefId().

{
include_once './Services/AccessControl/classes/class.ilObjRole.php';
'il_frm_moderator_'.$this->getRefId(),
"Moderator of forum obj_no.".$this->getId(),
'il_frm_moderator',
$this->getRefId()
);
return array();
}

+ Here is the call graph for this function:

static ilObjForum::lookupForumIdByObjId (   $obj_id)
static
Parameters
int$obj_id
Returns
int

Definition at line 847 of file class.ilObjForum.php.

Referenced by ilObjForumGUI\updateThreadObject().

{
if(array_key_exists($obj_id, self::$obj_id_to_forum_id_cache))
{
return (int)self::$obj_id_to_forum_id_cache[$obj_id];
}
self::preloadForumIdsByObjIds(array($obj_id));
return (int)self::$obj_id_to_forum_id_cache[$obj_id];
}

+ Here is the caller graph for this function:

static ilObjForum::lookupForumIdByRefId (   $ref_id)
static
Parameters
int$ref_id
Returns
int

Definition at line 864 of file class.ilObjForum.php.

References ilObject\$ref_id.

{
if(array_key_exists($ref_id, self::$ref_id_to_forum_id_cache))
{
return (int)self::$ref_id_to_forum_id_cache[$ref_id];
}
self::preloadForumIdsByRefIds(array($ref_id));
return (int)self::$ref_id_to_forum_id_cache[$ref_id];
}
static ilObjForum::mergeForumUserRead (   $merge_source_thread_id,
  $merge_target_thread_id 
)
static

Definition at line 1202 of file class.ilObjForum.php.

References $ilDB.

Referenced by ilForum\mergeThreads().

{
global $ilDB;
$ilDB->update('frm_user_read',
array('thread_id' => array('integer', $merge_target_thread_id)),
array('thread_id' => array('integer',$merge_source_thread_id)));
}

+ Here is the caller graph for this function:

ilObjForum::setThreadSorting (   $a_thr_pk,
  $a_sorting_value 
)

Definition at line 832 of file class.ilObjForum.php.

References $ilDB.

{
global $ilDB;
$ilDB->update('frm_threads',
array('thread_sorting' => array('integer',$a_sorting_value)),
array('thr_pk' => array('integer', $a_thr_pk)));
}

Field Documentation

ilObjForum::$Forum

Definition at line 25 of file class.ilObjForum.php.

ilObjForum::$forum_last_post_cache = array()
staticprotected

Definition at line 51 of file class.ilObjForum.php.

ilObjForum::$forum_statistics_cache = array()
staticprotected

Definition at line 45 of file class.ilObjForum.php.

ilObjForum::$obj_id_to_forum_id_cache = array()
staticprotected

Definition at line 33 of file class.ilObjForum.php.

ilObjForum::$ref_id_to_forum_id_cache = array()
staticprotected

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


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