ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
ilObjWiki Class Reference

Class ilObjWiki. More...

+ Inheritance diagram for ilObjWiki:
+ Collaboration diagram for ilObjWiki:

Public Member Functions

 __construct ($a_id=0, $a_call_by_reference=true)
 Constructor public. More...
 
 setOnline ($a_online)
 Set Online. More...
 
 getOnline ()
 Get Online. More...
 
 setRatingOverall ($a_rating)
 Set Enable Rating For Object. More...
 
 getRatingOverall ()
 Get Enable Rating For Object. More...
 
 setRating ($a_rating)
 Set Enable Rating. More...
 
 getRating ()
 Get Enable Rating. More...
 
 setRatingAsBlock ($a_rating)
 Set Enable Rating Side Block. More...
 
 getRatingAsBlock ()
 Get Enable Rating Side Block. More...
 
 setRatingForNewPages ($a_rating)
 Set Enable Rating For New Pages. More...
 
 getRatingForNewPages ()
 Get Enable Rating For New Pages. More...
 
 setRatingCategories ($a_rating)
 Set Enable Rating Categories. More...
 
 getRatingCategories ()
 Get Enable Rating Categories. More...
 
 setPublicNotes ($a_val)
 Set public notes. More...
 
 getPublicNotes ()
 Get public notes. More...
 
 setImportantPages ($a_val)
 Set important pages. More...
 
 getImportantPages ()
 Get important pages. More...
 
 setStartPage ($a_startpage)
 Set Start Page. More...
 
 getStartPage ()
 Get Start Page. More...
 
 setShortTitle ($a_shorttitle)
 Set ShortTitle. More...
 
 getShortTitle ()
 Get ShortTitle. More...
 
 setIntroduction ($a_introduction)
 Set Introduction. More...
 
 getIntroduction ()
 Get Introduction. More...
 
 getStyleSheetId ()
 get ID of assigned style sheet object More...
 
 setStyleSheetId ($a_style_id)
 set ID of assigned style sheet object More...
 
 setPageToc ($a_val)
 Set page toc. More...
 
 getPageToc ()
 Get page toc. More...
 
 setEmptyPageTemplate ($a_val)
 Set empty page template. More...
 
 getEmptyPageTemplate ()
 Get empty page template. More...
 
 setLinkMetadataValues ($a_val)
 Set link md values. More...
 
 getLinkMetadataValues ()
 Get link md values. More...
 
 create ($a_prevent_start_page_creation=false)
 Create new wiki. More...
 
 update ($a_prevent_start_page_creation=false)
 update object data More...
 
 read ()
 Read wiki data. More...
 
 delete ()
 delete object and all related data More...
 
 addImportantPage ($a_page_id, $a_nr=0, $a_indent=0)
 Add important page. More...
 
 isImportantPage ($a_page_id)
 Is page an important page? More...
 
 removeImportantPage ($a_id)
 Remove important page. More...
 
 saveOrderingAndIndentation ($a_ord, $a_indent)
 Save ordering and indentation. More...
 
 fixImportantPagesNumbering ()
 Fix important pages numbering. More...
 
 cloneObject ($a_target_id, $a_copy_id=0, $a_omit_tree=false)
 Clone wiki. More...
 
 getTemplateSelectionOnCreation ()
 Get template selection on creation? If more than one template (including empty page template) is activated -> return true. More...
 
 createWikiPage ($a_page_title, $a_template_page=0)
 Create new wiki page. More...
 
 initUserHTMLExport ()
 Init user html export. More...
 
 startUserHTMLExport ()
 Start user html export. More...
 
 getUserHTMLExportProgress ()
 Get user html export progress. More...
 
 deliverUserHTMLExport ()
 Send user html export file. More...
 
 decorateAdvMDValue ($a_value)
 Decorate adv md value. 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 isOnlineHelpWiki ($a_ref_id)
 Is wiki an online help wiki? More...
 
static checkShortTitleAvailability ($a_short_title)
 Check availability of short title. More...
 
static _lookupRatingOverall ($a_wiki_id)
 Lookup whether rating is activated for whole object. More...
 
static _lookupRating ($a_wiki_id)
 Lookup whether rating is activated. More...
 
static _lookupRatingCategories ($a_wiki_id)
 Lookup whether rating categories are activated. More...
 
static _lookupRatingAsBlock ($a_wiki_id)
 Lookup whether rating side block is activated. More...
 
static _lookupPublicNotes ($a_wiki_id)
 Lookup whether public notes are activated. More...
 
static _lookupLinkMetadataValues ($a_wiki_id)
 Lookup whether metadata should be auto linked. More...
 
static _lookupStartPage ($a_wiki_id)
 Lookup start page. More...
 
static writeStartPage ($a_id, $a_name)
 Write start page. More...
 
static _performSearch ($a_wiki_id, $a_searchterm)
 Search in Wiki. More...
 
static _lookupImportantPages ($a_wiki_id)
 Lookup whether important pages are activated. More...
 
static _lookupImportantPagesList ($a_wiki_id)
 Get important pages list. More...
 
static _lookupMaxOrdNrImportantPages ($a_wiki_id)
 Get important pages list. More...
 
static _lookupPageToc ($a_wiki_id)
 Lookup whether important pages are activated. More...
 
static getAdvMDSubItemTitle ($a_obj_id, $a_sub_type, $a_sub_id)
 
- 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)
 only called in ilTree::saveSubTree More...
 
static setDeletedDates ($a_ref_ids)
 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...
 

Protected Attributes

 $user
 
 $online = false
 
 $public_notes = true
 
 $empty_page_templ = true
 
 $link_md_values = false
 
- Protected Attributes inherited from ilObject
 $objDefinition
 
 $db
 
 $log
 
 $error
 
 $tree
 
 $app_event_handler
 
 $rbacadmin
 
 $rbacreview
 

Static Private Member Functions

static _lookup ($a_wiki_id, $a_field)
 Lookup a data field. More...
 

Additional Inherited Members

- 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
 

Detailed Description

Class ilObjWiki.

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

Definition at line 20 of file class.ilObjWiki.php.

Constructor & Destructor Documentation

◆ __construct()

ilObjWiki::__construct (   $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 38 of file class.ilObjWiki.php.

References $DIC, and user().

39  {
40  global $DIC;
41 
42  $this->db = $DIC->database();
43  $this->user = $DIC->user();
44  $this->type = "wiki";
45  parent::__construct($a_id, $a_call_by_reference);
46  }
global $DIC
Definition: saml.php:7
user()
Definition: user.php:4
+ Here is the call graph for this function:

Member Function Documentation

◆ _lookup()

static ilObjWiki::_lookup (   $a_wiki_id,
  $a_field 
)
staticprivate

Lookup a data field.

Parameters
int$a_wiki_idWiki ID
string$a_fieldField Name
Returns
mixed field value

Definition at line 602 of file class.ilObjWiki.php.

References $DIC, $ilDB, and $query.

Referenced by _lookupImportantPages(), _lookupLinkMetadataValues(), _lookupPageToc(), _lookupPublicNotes(), _lookupRating(), _lookupRatingAsBlock(), _lookupRatingCategories(), _lookupRatingOverall(), and _lookupStartPage().

603  {
604  global $DIC;
605 
606  $ilDB = $DIC->database();
607 
608  $query = "SELECT $a_field FROM il_wiki_data WHERE id = " .
609  $ilDB->quote($a_wiki_id, "integer");
610  $set = $ilDB->query($query);
611  $rec = $ilDB->fetchAssoc($set);
612  return $rec[$a_field];
613  }
global $DIC
Definition: saml.php:7
$query
global $ilDB
+ Here is the caller graph for this function:

◆ _lookupImportantPages()

static ilObjWiki::_lookupImportantPages (   $a_wiki_id)
static

Lookup whether important pages are activated.

Parameters
int$a_wiki_idWiki ID
Returns
boolean Important pages activated?

Definition at line 690 of file class.ilObjWiki.php.

References _lookup().

691  {
692  return ilObjWiki::_lookup($a_wiki_id, "imp_pages");
693  }
static _lookup($a_wiki_id, $a_field)
Lookup a data field.
+ Here is the call graph for this function:

◆ _lookupImportantPagesList()

static ilObjWiki::_lookupImportantPagesList (   $a_wiki_id)
static

Get important pages list.

Parameters

Definition at line 701 of file class.ilObjWiki.php.

References $DIC, and $ilDB.

Referenced by ilImportantPagesTableGUI\__construct(), cloneObject(), ilObjWikiGUI\editImportantPagesObject(), ilWikiImportantPagesBlockGUI\fillDataSection(), fixImportantPagesNumbering(), and saveOrderingAndIndentation().

702  {
703  global $DIC;
704 
705  $ilDB = $DIC->database();
706 
707  $set = $ilDB->query(
708  "SELECT * FROM il_wiki_imp_pages WHERE " .
709  " wiki_id = " . $ilDB->quote($a_wiki_id, "integer") . " ORDER BY ord ASC "
710  );
711 
712  $imp_pages = array();
713 
714  while ($rec = $ilDB->fetchAssoc($set)) {
715  $imp_pages[] = $rec;
716  }
717  return $imp_pages;
718  }
global $DIC
Definition: saml.php:7
global $ilDB
+ Here is the caller graph for this function:

◆ _lookupLinkMetadataValues()

static ilObjWiki::_lookupLinkMetadataValues (   $a_wiki_id)
static

Lookup whether metadata should be auto linked.

Parameters
int$a_wiki_idWiki ID
Returns
boolean auto linking activated?

Definition at line 589 of file class.ilObjWiki.php.

References _lookup().

590  {
591  return ilObjWiki::_lookup($a_wiki_id, "link_md_values");
592  }
static _lookup($a_wiki_id, $a_field)
Lookup a data field.
+ Here is the call graph for this function:

◆ _lookupMaxOrdNrImportantPages()

static ilObjWiki::_lookupMaxOrdNrImportantPages (   $a_wiki_id)
static

Get important pages list.

Parameters

Definition at line 726 of file class.ilObjWiki.php.

References $DIC, and $ilDB.

Referenced by addImportantPage().

727  {
728  global $DIC;
729 
730  $ilDB = $DIC->database();
731 
732  $set = $ilDB->query(
733  "SELECT MAX(ord) as m FROM il_wiki_imp_pages WHERE " .
734  " wiki_id = " . $ilDB->quote($a_wiki_id, "integer")
735  );
736 
737  $rec = $ilDB->fetchAssoc($set);
738  return (int) $rec["m"];
739  }
global $DIC
Definition: saml.php:7
global $ilDB
+ Here is the caller graph for this function:

◆ _lookupPageToc()

static ilObjWiki::_lookupPageToc (   $a_wiki_id)
static

Lookup whether important pages are activated.

Parameters
int$a_wiki_idWiki ID
Returns
boolean Important pages activated?

Definition at line 898 of file class.ilObjWiki.php.

References _lookup().

Referenced by ilWikiPageConfig\configureByObjectId().

899  {
900  return ilObjWiki::_lookup($a_wiki_id, "page_toc");
901  }
static _lookup($a_wiki_id, $a_field)
Lookup a data field.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _lookupPublicNotes()

static ilObjWiki::_lookupPublicNotes (   $a_wiki_id)
static

Lookup whether public notes are activated.

Parameters
int$a_wiki_idWiki ID
Returns
boolean public notes activated?

Definition at line 577 of file class.ilObjWiki.php.

References _lookup().

Referenced by ilWikiPageGUI\addHeaderAction(), and ilWikiPageGUI\preview().

578  {
579  return ilObjWiki::_lookup($a_wiki_id, "public_notes");
580  }
static _lookup($a_wiki_id, $a_field)
Lookup a data field.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _lookupRating()

static ilObjWiki::_lookupRating (   $a_wiki_id)
static

Lookup whether rating is activated.

Parameters
int$a_wiki_idWiki ID
Returns
boolean Rating activated?

Definition at line 541 of file class.ilObjWiki.php.

References _lookup().

Referenced by ilWikiFunctionsBlockGUI\fillDataSection(), and ilObjWikiGUI\renderSideBlock().

542  {
543  return ilObjWiki::_lookup($a_wiki_id, "rating");
544  }
static _lookup($a_wiki_id, $a_field)
Lookup a data field.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _lookupRatingAsBlock()

static ilObjWiki::_lookupRatingAsBlock (   $a_wiki_id)
static

Lookup whether rating side block is activated.

Parameters
int$a_wiki_idWiki ID
Returns
boolean Rating side block activated?

Definition at line 565 of file class.ilObjWiki.php.

References _lookup().

566  {
567  return ilObjWiki::_lookup($a_wiki_id, "rating_side");
568  }
static _lookup($a_wiki_id, $a_field)
Lookup a data field.
+ Here is the call graph for this function:

◆ _lookupRatingCategories()

static ilObjWiki::_lookupRatingCategories (   $a_wiki_id)
static

Lookup whether rating categories are activated.

Parameters
int$a_wiki_idWiki ID
Returns
boolean Rating categories activated?

Definition at line 553 of file class.ilObjWiki.php.

References _lookup().

Referenced by ilObjWikiGUI\renderSideBlock().

554  {
555  return ilObjWiki::_lookup($a_wiki_id, "rating_ext");
556  }
static _lookup($a_wiki_id, $a_field)
Lookup a data field.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _lookupRatingOverall()

static ilObjWiki::_lookupRatingOverall (   $a_wiki_id)
static

Lookup whether rating is activated for whole object.

Parameters
int$a_wiki_idWiki ID
Returns
boolean Rating activated?

Definition at line 529 of file class.ilObjWiki.php.

References _lookup().

Referenced by ilWikiPageGUI\addHeaderAction().

530  {
531  return ilObjWiki::_lookup($a_wiki_id, "rating_overall");
532  }
static _lookup($a_wiki_id, $a_field)
Lookup a data field.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _lookupStartPage()

static ilObjWiki::_lookupStartPage (   $a_wiki_id)
static

Lookup start page.

Parameters
int$a_wiki_idWiki ID
Returns
boolean

Definition at line 622 of file class.ilObjWiki.php.

References _lookup().

Referenced by ilWikiHandlerGUI\executeCommand(), ilWikiImportantPagesBlockGUI\fillDataSection(), ilWikiFunctionsBlockGUI\fillDataSection(), ilObjWikiGUI\getGotoLink(), ilWikiPage\getOrphanedPages(), and ilWikiPage\rename().

623  {
624  return ilObjWiki::_lookup($a_wiki_id, "startpage");
625  }
static _lookup($a_wiki_id, $a_field)
Lookup a data field.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _performSearch()

static ilObjWiki::_performSearch (   $a_wiki_id,
  $a_searchterm 
)
static

Search in Wiki.

Definition at line 647 of file class.ilObjWiki.php.

References ilObjectSearchFactory\_getWikiContentSearchInstance().

Referenced by ilObjWikiGUI\performSearchObject(), and ilWikiPageGUI\searchWikiLinkAC().

648  {
649  // query parser
650  include_once 'Services/Search/classes/class.ilQueryParser.php';
651 
652  $query_parser = new ilQueryParser($a_searchterm);
653  $query_parser->setCombination("or");
654  $query_parser->parse();
655 
656  include_once 'Services/Search/classes/class.ilSearchResult.php';
657  $search_result = new ilSearchResult();
658  if ($query_parser->validate()) {
659  include_once 'Services/Search/classes/class.ilObjectSearchFactory.php';
660  $wiki_search = ilObjectSearchFactory::_getWikiContentSearchInstance($query_parser);
661  $wiki_search->setFilter(array('wpg'));
662  $search_result->mergeEntries($wiki_search->performSearch());
663  }
664 
665  $entries = $search_result->getEntries();
666 
667  $found_pages = array();
668  foreach ($entries as $entry) {
669  if ($entry["obj_id"] == $a_wiki_id && is_array($entry["child"])) {
670  foreach ($entry["child"] as $child) {
671  $found_pages[] = array("page_id" => $child);
672  }
673  }
674  }
675 
676  return $found_pages;
677  }
static _getWikiContentSearchInstance($query_parser)
get reference of ilFulltextWikiContentSearch
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ addImportantPage()

ilObjWiki::addImportantPage (   $a_page_id,
  $a_nr = 0,
  $a_indent = 0 
)

Add important page.

Parameters
intpage id

Definition at line 747 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, _lookupMaxOrdNrImportantPages(), ilObject\getId(), and isImportantPage().

748  {
749  $ilDB = $this->db;
750 
751  if (!$this->isImportantPage($a_page_id)) {
752  if ($a_nr == 0) {
753  $a_nr = ilObjWiki::_lookupMaxOrdNrImportantPages($this->getId()) + 10;
754  }
755 
756  $ilDB->manipulate("INSERT INTO il_wiki_imp_pages " .
757  "(wiki_id, ord, indent, page_id) VALUES (" .
758  $ilDB->quote($this->getId(), "integer") . "," .
759  $ilDB->quote($a_nr, "integer") . "," .
760  $ilDB->quote($a_indent, "integer") . "," .
761  $ilDB->quote($a_page_id, "integer") .
762  ")");
763  }
764  }
isImportantPage($a_page_id)
Is page an important page?
getId()
get object id public
static _lookupMaxOrdNrImportantPages($a_wiki_id)
Get important pages list.
global $ilDB
+ Here is the call graph for this function:

◆ checkShortTitleAvailability()

static ilObjWiki::checkShortTitleAvailability (   $a_short_title)
static

Check availability of short title.

Definition at line 504 of file class.ilObjWiki.php.

References $DIC, $ilDB, and $res.

Referenced by ilObjWikiGUI\saveObject(), and ilObjWikiGUI\saveSettingsObject().

505  {
506  global $DIC;
507 
508  $ilDB = $DIC->database();
509 
510  $res = $ilDB->queryF(
511  "SELECT id FROM il_wiki_data WHERE short = %s",
512  array("text"),
513  array($a_short_title)
514  );
515  if ($ilDB->fetchAssoc($res)) {
516  return false;
517  }
518 
519  return true;
520  }
global $DIC
Definition: saml.php:7
foreach($_POST as $key=> $value) $res
global $ilDB
+ Here is the caller graph for this function:

◆ cloneObject()

ilObjWiki::cloneObject (   $a_target_id,
  $a_copy_id = 0,
  $a_omit_tree = false 
)

Clone wiki.

Parameters
inttarget ref_id
intcopy id

Definition at line 909 of file class.ilObjWiki.php.

References $map, ilCopyWizardOptions\_getInstance(), _lookupImportantPagesList(), ilObjStyleSheet\_lookupStandard(), ilRatingCategory\getAllForObject(), ilWikiPage\getAllWikiPages(), ilObject\getId(), getImportantPages(), ilObjectFactory\getInstanceByObjId(), getIntroduction(), getOnline(), ilWikiPage\getPageIdForTitle(), getPageToc(), getPublicNotes(), getRating(), getRatingAsBlock(), getRatingCategories(), getRatingForNewPages(), getRatingOverall(), getShortTitle(), getStartPage(), and getStyleSheetId().

910  {
911  $new_obj = parent::cloneObject($a_target_id, $a_copy_id, $a_omit_tree);
912 
913  //copy online status if object is not the root copy object
914  $cp_options = ilCopyWizardOptions::_getInstance($a_copy_id);
915 
916  if (!$cp_options->isRootNode($this->getRefId())) {
917  $new_obj->setOnline($this->getOnline());
918  }
919 
920  //$new_obj->setTitle($this->getTitle()); // see #20074
921  $new_obj->setStartPage($this->getStartPage());
922  $new_obj->setShortTitle($this->getShortTitle());
923  $new_obj->setRatingOverall($this->getRatingOverall());
924  $new_obj->setRating($this->getRating());
925  $new_obj->setRatingAsBlock($this->getRatingAsBlock());
926  $new_obj->setRatingForNewPages($this->getRatingForNewPages());
927  $new_obj->setRatingCategories($this->getRatingCategories());
928  $new_obj->setPublicNotes($this->getPublicNotes());
929  $new_obj->setIntroduction($this->getIntroduction());
930  $new_obj->setImportantPages($this->getImportantPages());
931  $new_obj->setPageToc($this->getPageToc());
932  $new_obj->update();
933 
934  // set/copy stylesheet
935  include_once("./Services/Style/Content/classes/class.ilObjStyleSheet.php");
936  $style_id = $this->getStyleSheetId();
937  if ($style_id > 0 && !ilObjStyleSheet::_lookupStandard($style_id)) {
938  $style_obj = ilObjectFactory::getInstanceByObjId($style_id);
939  $new_id = $style_obj->ilClone();
940  $new_obj->setStyleSheetId($new_id);
941  $new_obj->update();
942  }
943 
944  // copy content
945  include_once("./Modules/Wiki/classes/class.ilWikiPage.php");
946  $pages = ilWikiPage::getAllWikiPages($this->getId());
947  if (count($pages) > 0) {
948  // if we have any pages, delete the start page first
949  $pg_id = ilWikiPage::getPageIdForTitle($new_obj->getId(), $new_obj->getStartPage());
950  $start_page = new ilWikiPage($pg_id);
951  $start_page->delete();
952  }
953  $map = array();
954  foreach ($pages as $p) {
955  $page = new ilWikiPage($p["id"]);
956  $new_page = new ilWikiPage();
957  $new_page->setTitle($page->getTitle());
958  $new_page->setWikiId($new_obj->getId());
959  $new_page->setTitle($page->getTitle());
960  $new_page->setBlocked($page->getBlocked());
961  $new_page->setRating($page->getRating());
962  $new_page->hideAdvancedMetadata($page->isAdvancedMetadataHidden());
963  $new_page->create();
964 
965  $page->copy($new_page->getId(), "", 0, true);
966  //$new_page->setXMLContent($page->copyXMLContent(true));
967  //$new_page->buildDom(true);
968  //$new_page->update();
969  $map[$p["id"]] = $new_page->getId();
970  }
971 
972  // copy important pages
973  foreach (ilObjWiki::_lookupImportantPagesList($this->getId()) as $ip) {
974  $new_obj->addImportantPage($map[$ip["page_id"]], $ip["ord"], $ip["indent"]);
975  }
976 
977  // copy rating categories
978  include_once("./Services/Rating/classes/class.ilRatingCategory.php");
979  foreach (ilRatingCategory::getAllForObject($this->getId()) as $rc) {
980  $new_rc = new ilRatingCategory();
981  $new_rc->setParentId($new_obj->getId());
982  $new_rc->setTitle($rc["title"]);
983  $new_rc->setDescription($rc["description"]);
984  $new_rc->save();
985  }
986 
987  return $new_obj;
988  }
static _lookupImportantPagesList($a_wiki_id)
Get important pages list.
getRatingOverall()
Get Enable Rating For Object.
getStartPage()
Get Start Page.
getShortTitle()
Get ShortTitle.
getPublicNotes()
Get public notes.
getRatingForNewPages()
Get Enable Rating For New Pages.
getRatingCategories()
Get Enable Rating Categories.
static getAllForObject($a_parent_obj_id)
Get all categories for object.
static getPageIdForTitle($a_wiki_id, $a_title)
Get wiki page object for id and title.
static _lookupStandard($a_id)
Lookup standard flag.
getPageToc()
Get page toc.
static _getInstance($a_copy_id)
Get instance of copy wizard options.
getId()
get object id public
getRatingAsBlock()
Get Enable Rating Side Block.
getStyleSheetId()
get ID of assigned style sheet object
Class ilWikiPage.
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
static getAllWikiPages($a_wiki_id)
Get all pages of wiki.
getIntroduction()
Get Introduction.
Class ilRatingCategory.
getImportantPages()
Get important pages.
getOnline()
Get Online.
getRating()
Get Enable Rating.
+ Here is the call graph for this function:

◆ create()

ilObjWiki::create (   $a_prevent_start_page_creation = false)

Create new wiki.

Definition at line 356 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, getEmptyPageTemplate(), ilObject\getId(), getIntroduction(), getOnline(), getPublicNotes(), getRating(), getShortTitle(), getStartPage(), getStyleSheetId(), and ilObjStyleSheet\writeStyleUsage().

357  {
358  $ilDB = $this->db;
359 
360  parent::create();
361 
362  $ilDB->insert("il_wiki_data", array(
363  "id" => array("integer", $this->getId()),
364  "is_online" => array("integer", (int) $this->getOnline()),
365  "startpage" => array("text", $this->getStartPage()),
366  "short" => array("text", $this->getShortTitle()),
367  "rating" => array("integer", (int) $this->getRating()),
368  "public_notes" => array("integer", (int) $this->getPublicNotes()),
369  "introduction" => array("clob", $this->getIntroduction()),
370  "empty_page_templ" => array("integer", (int) $this->getEmptyPageTemplate()),
371  ));
372 
373  // create start page
374  if ($this->getStartPage() != "" && !$a_prevent_start_page_creation) {
375  include_once("./Modules/Wiki/classes/class.ilWikiPage.php");
376  $start_page = new ilWikiPage();
377  $start_page->setWikiId($this->getId());
378  $start_page->setTitle($this->getStartPage());
379  $start_page->create();
380  }
381 
382  if (((int) $this->getStyleSheetId()) > 0) {
383  include_once("./Services/Style/Content/classes/class.ilObjStyleSheet.php");
385  }
386  }
getStartPage()
Get Start Page.
getShortTitle()
Get ShortTitle.
getPublicNotes()
Get public notes.
static writeStyleUsage($a_obj_id, $a_style_id)
Write style usage.
getEmptyPageTemplate()
Get empty page template.
getId()
get object id public
getStyleSheetId()
get ID of assigned style sheet object
Class ilWikiPage.
getIntroduction()
Get Introduction.
global $ilDB
getOnline()
Get Online.
getRating()
Get Enable Rating.
+ Here is the call graph for this function:

◆ createWikiPage()

ilObjWiki::createWikiPage (   $a_page_title,
  $a_template_page = 0 
)

Create new wiki page.

Parameters
string$a_page_titlepage title
int$a_template_pagetemplate page id
Returns
ilWikiPage new wiki page

Definition at line 1016 of file class.ilObjWiki.php.

References $t, ilAdvancedMDValues\_cloneValues(), getEmptyPageTemplate(), ilObject\getId(), getRating(), getRatingForNewPages(), ilObject\getRefId(), ilWikiUtil\makeDbTitle(), and ilWikiPageTemplate\TYPE_NEW_PAGES.

1017  {
1018  // check if template has to be used
1019  if ($a_template_page == 0) {
1020  if (!$this->getEmptyPageTemplate()) {
1021  include_once("./Modules/Wiki/classes/class.ilWikiPageTemplate.php");
1022  $wt = new ilWikiPageTemplate($this->getId());
1023  $ts = $wt->getAllInfo(ilWikiPageTemplate::TYPE_NEW_PAGES);
1024  if (count($ts) == 1) {
1025  $t = current($ts);
1026  $a_template_page = $t["wpage_id"];
1027  }
1028  }
1029  }
1030 
1031  // create the page
1032  $page = new ilWikiPage();
1033  $page->setWikiId($this->getId());
1034  $page->setTitle(ilWikiUtil::makeDbTitle($a_page_title));
1035  if ($this->getRating() && $this->getRatingForNewPages()) {
1036  $page->setRating(true);
1037  }
1038 
1039  // needed for notification
1040  $page->setWikiRefId($this->getRefId());
1041  $page->create();
1042 
1043  // copy template into new page
1044  if ($a_template_page > 0) {
1045  $orig = new ilWikiPage($a_template_page);
1046  $orig->copy($page->getId());
1047 
1048  // #15718
1049  include_once "Services/AdvancedMetaData/classes/class.ilAdvancedMDValues.php";
1051  $this->getId(),
1052  $this->getId(),
1053  "wpg",
1054  $a_template_page,
1055  $page->getId()
1056  );
1057  }
1058 
1059  return $page;
1060  }
getRatingForNewPages()
Get Enable Rating For New Pages.
getEmptyPageTemplate()
Get empty page template.
getId()
get object id public
static _cloneValues($a_source_id, $a_target_id, $a_sub_type=null, $a_source_sub_id=null, $a_target_sub_id=null)
Clone Advanced Meta Data.
Class ilWikiPage.
static makeDbTitle($a_par)
Handle page GET parameter.
getRefId()
get reference id public
getRating()
Get Enable Rating.
+ Here is the call graph for this function:

◆ decorateAdvMDValue()

ilObjWiki::decorateAdvMDValue (   $a_value)

Decorate adv md value.

Parameters
string$a_valuevalue
Returns
string decorated value (includes HTML)

Definition at line 1146 of file class.ilObjWiki.php.

References $url, ilWikiPage\_wikiPageExists(), ilObjWikiGUI\getGotoLink(), ilObject\getId(), and ilObject\getRefId().

1147  {
1148  include_once("./Modules/Wiki/classes/class.ilWikiPage.php");
1149  if (ilWikiPage::_wikiPageExists($this->getId(), $a_value)) {
1150  $url = ilObjWikiGUI::getGotoLink($this->getRefId(), $a_value);
1151  return "<a href='" . $url . "'>" . $a_value . "</a>";
1152  }
1153 
1154  return $a_value;
1155  }
static getGotoLink($a_ref_id, $a_page="")
Get goto link.
getId()
get object id public
static _wikiPageExists($a_wiki_id, $a_title)
Check whether page exists for wiki or not.
getRefId()
get reference id public
$url
+ Here is the call graph for this function:

◆ delete()

ilObjWiki::delete ( )

delete object and all related data

public

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

Definition at line 477 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, $query, ilWikiPage\deleteAllPagesOfWiki(), ilObject\getId(), ilNotification\removeForObject(), and ilNotification\TYPE_WIKI.

478  {
479  $ilDB = $this->db;
480 
481  // always call parent delete function first!!
482  if (!parent::delete()) {
483  return false;
484  }
485 
486  // delete record of table il_wiki_data
487  $query = "DELETE FROM il_wiki_data" .
488  " WHERE id = " . $ilDB->quote($this->getId(), "integer");
489  $ilDB->manipulate($query);
490 
491  // remove all notifications
492  include_once "./Services/Notification/classes/class.ilNotification.php";
494 
495  include_once("./Modules/Wiki/classes/class.ilWikiPage.php");
497 
498  return true;
499  }
static removeForObject($type, $id)
Remove all notifications for given object.
getId()
get object id public
$query
global $ilDB
static deleteAllPagesOfWiki($a_wiki_id)
delete wiki page and al related data
+ Here is the call graph for this function:

◆ deliverUserHTMLExport()

ilObjWiki::deliverUserHTMLExport ( )

Send user html export file.

Definition at line 1128 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, $ilUser, and $user.

1129  {
1130  $ilDB = $this->db;
1131  $ilUser = $this->user;
1132 
1133  include_once("./Modules/Wiki/classes/class.ilWikiUserHTMLExport.php");
1134 
1135  $user_export = new ilWikiUserHTMLExport($this, $ilDB, $ilUser);
1136  return $user_export->deliverFile();
1137  }
Class manages user html export.
$ilUser
Definition: imgupload.php:18
global $ilDB

◆ fixImportantPagesNumbering()

ilObjWiki::fixImportantPagesNumbering ( )

Fix important pages numbering.

Definition at line 857 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, _lookupImportantPagesList(), and ilObject\getId().

Referenced by removeImportantPage().

858  {
859  $ilDB = $this->db;
860 
861  $ipages = ilObjWiki::_lookupImportantPagesList($this->getId());
862 
863  // fix indentation: no 2 is allowed after a 0
864  $c_indent = 0;
865  $fixed = false;
866  foreach ($ipages as $k => $v) {
867  if ($ipages[$k]["indent"] == 2 && $c_indent == 0) {
868  $ipages[$k]["indent"] = 1;
869  $fixed = true;
870  }
871  $c_indent = $ipages[$k]["indent"];
872  }
873 
874  $ord = 10;
875  foreach ($ipages as $k => $v) {
876  $ilDB->manipulate(
877  $q = "UPDATE il_wiki_imp_pages SET " .
878  " ord = " . $ilDB->quote($ord, "integer") .
879  ", indent = " . $ilDB->quote($v["indent"], "integer") .
880  " WHERE wiki_id = " . $ilDB->quote($v["wiki_id"], "integer") .
881  " AND page_id = " . $ilDB->quote($v["page_id"], "integer")
882  );
883  $ord += 10;
884  }
885  }
static _lookupImportantPagesList($a_wiki_id)
Get important pages list.
getId()
get object id public
global $ilDB
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getAdvMDSubItemTitle()

static ilObjWiki::getAdvMDSubItemTitle (   $a_obj_id,
  $a_sub_type,
  $a_sub_id 
)
static

Implements ilAdvancedMetaDataSubItems.

Definition at line 1062 of file class.ilObjWiki.php.

References $DIC, ilObject\$lng, and ilWikiPage\lookupTitle().

1063  {
1064  global $DIC;
1065 
1066  $lng = $DIC->language();
1067 
1068  if ($a_sub_type == "wpg") {
1069  $lng->loadLanguageModule("wiki");
1070  include_once "./Modules/Wiki/classes/class.ilWikiPage.php";
1071  return $lng->txt("wiki_wpg") . ' "' . ilWikiPage::lookupTitle($a_sub_id) . '"';
1072  }
1073  }
static lookupTitle($a_page_id)
Checks whether a page with given title exists.
global $DIC
Definition: saml.php:7
+ Here is the call graph for this function:

◆ getEmptyPageTemplate()

ilObjWiki::getEmptyPageTemplate ( )

Get empty page template.

Returns
boolean empty page template

Definition at line 315 of file class.ilObjWiki.php.

References $empty_page_templ.

Referenced by create(), createWikiPage(), getTemplateSelectionOnCreation(), and update().

316  {
318  }
+ Here is the caller graph for this function:

◆ getImportantPages()

ilObjWiki::getImportantPages ( )

Get important pages.

Returns
boolean important pages

Definition at line 199 of file class.ilObjWiki.php.

Referenced by cloneObject(), and update().

200  {
201  return $this->imp_pages;
202  }
+ Here is the caller graph for this function:

◆ getIntroduction()

ilObjWiki::getIntroduction ( )

Get Introduction.

Returns
string Introduction

Definition at line 259 of file class.ilObjWiki.php.

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

260  {
261  return $this->introduction;
262  }
+ Here is the caller graph for this function:

◆ getLinkMetadataValues()

ilObjWiki::getLinkMetadataValues ( )

Get link md values.

Returns
bool link metadata values

Definition at line 335 of file class.ilObjWiki.php.

References $link_md_values.

Referenced by update().

336  {
337  return $this->link_md_values;
338  }
+ Here is the caller graph for this function:

◆ getOnline()

ilObjWiki::getOnline ( )

Get Online.

Returns
boolean Online

Definition at line 63 of file class.ilObjWiki.php.

References $online.

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

64  {
65  return $this->online;
66  }
+ Here is the caller graph for this function:

◆ getPageToc()

ilObjWiki::getPageToc ( )

Get page toc.

Returns
boolean page toc

Definition at line 295 of file class.ilObjWiki.php.

Referenced by cloneObject(), and update().

296  {
297  return $this->page_toc;
298  }
+ Here is the caller graph for this function:

◆ getPublicNotes()

ilObjWiki::getPublicNotes ( )

Get public notes.

Definition at line 179 of file class.ilObjWiki.php.

References $public_notes.

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

180  {
181  return $this->public_notes;
182  }
+ Here is the caller graph for this function:

◆ getRating()

ilObjWiki::getRating ( )

Get Enable Rating.

Returns
boolean Enable Rating

Definition at line 103 of file class.ilObjWiki.php.

Referenced by cloneObject(), create(), createWikiPage(), and update().

104  {
105  return $this->rating;
106  }
+ Here is the caller graph for this function:

◆ getRatingAsBlock()

ilObjWiki::getRatingAsBlock ( )

Get Enable Rating Side Block.

Returns
boolean

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

Referenced by cloneObject(), and update().

124  {
125  return $this->rating_block;
126  }
+ Here is the caller graph for this function:

◆ getRatingCategories()

ilObjWiki::getRatingCategories ( )

Get Enable Rating Categories.

Returns
boolean

Definition at line 163 of file class.ilObjWiki.php.

Referenced by cloneObject(), and update().

164  {
165  return $this->rating_categories;
166  }
+ Here is the caller graph for this function:

◆ getRatingForNewPages()

ilObjWiki::getRatingForNewPages ( )

Get Enable Rating For New Pages.

Returns
boolean

Definition at line 143 of file class.ilObjWiki.php.

Referenced by cloneObject(), createWikiPage(), and update().

144  {
145  return $this->rating_new_pages;
146  }
+ Here is the caller graph for this function:

◆ getRatingOverall()

ilObjWiki::getRatingOverall ( )

Get Enable Rating For Object.

Returns
boolean Enable Rating

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

Referenced by cloneObject(), and update().

84  {
85  return $this->rating_overall;
86  }
+ Here is the caller graph for this function:

◆ getShortTitle()

ilObjWiki::getShortTitle ( )

Get ShortTitle.

Returns
string ShortTitle

Definition at line 239 of file class.ilObjWiki.php.

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

240  {
241  return $this->shorttitle;
242  }
+ Here is the caller graph for this function:

◆ getStartPage()

ilObjWiki::getStartPage ( )

Get Start Page.

Returns
string Start Page

Definition at line 219 of file class.ilObjWiki.php.

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

220  {
221  return $this->startpage;
222  }
+ Here is the caller graph for this function:

◆ getStyleSheetId()

ilObjWiki::getStyleSheetId ( )

get ID of assigned style sheet object

Definition at line 267 of file class.ilObjWiki.php.

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

268  {
269  return $this->style_id;
270  }
+ Here is the caller graph for this function:

◆ getTemplateSelectionOnCreation()

ilObjWiki::getTemplateSelectionOnCreation ( )

Get template selection on creation? If more than one template (including empty page template) is activated -> return true.

Returns
boolean true, if manual template selection needed

Definition at line 996 of file class.ilObjWiki.php.

References getEmptyPageTemplate(), ilObject\getId(), and ilWikiPageTemplate\TYPE_NEW_PAGES.

997  {
998  $num = (int) $this->getEmptyPageTemplate();
999  include_once("./Modules/Wiki/classes/class.ilWikiPageTemplate.php");
1000  $wt = new ilWikiPageTemplate($this->getId());
1001  $ts = $wt->getAllInfo(ilWikiPageTemplate::TYPE_NEW_PAGES);
1002  $num += count($ts);
1003  if ($num > 1) {
1004  return true;
1005  }
1006  return false;
1007  }
getEmptyPageTemplate()
Get empty page template.
getId()
get object id public
+ Here is the call graph for this function:

◆ getUserHTMLExportProgress()

ilObjWiki::getUserHTMLExportProgress ( )

Get user html export progress.

Returns
array progress info

Definition at line 1114 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, $ilUser, and $user.

1115  {
1116  $ilDB = $this->db;
1117  $ilUser = $this->user;
1118 
1119  include_once("./Modules/Wiki/classes/class.ilWikiUserHTMLExport.php");
1120 
1121  $user_export = new ilWikiUserHTMLExport($this, $ilDB, $ilUser);
1122  return $user_export->getProgress();
1123  }
Class manages user html export.
$ilUser
Definition: imgupload.php:18
global $ilDB

◆ initUserHTMLExport()

ilObjWiki::initUserHTMLExport ( )

Init user html export.

Parameters

Definition at line 1081 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, $ilUser, and $user.

1082  {
1083  $ilDB = $this->db;
1084  $ilUser = $this->user;
1085 
1086  include_once("./Modules/Wiki/classes/class.ilWikiUserHTMLExport.php");
1087 
1088  $user_export = new ilWikiUserHTMLExport($this, $ilDB, $ilUser);
1089  $user_export->initUserHTMLExport();
1090  }
Class manages user html export.
$ilUser
Definition: imgupload.php:18
global $ilDB

◆ isImportantPage()

ilObjWiki::isImportantPage (   $a_page_id)

Is page an important page?

Parameters

Definition at line 772 of file class.ilObjWiki.php.

References ilObject\$db, and $ilDB.

Referenced by addImportantPage().

773  {
774  $ilDB = $this->db;
775 
776  $set = $ilDB->query(
777  "SELECT * FROM il_wiki_imp_pages WHERE " .
778  " wiki_id = " . $ilDB->quote($this->getId(), "integer") . " AND " .
779  " page_id = " . $ilDB->quote($a_page_id, "integer")
780  );
781  if ($rec = $ilDB->fetchAssoc($set)) {
782  return true;
783  }
784  return false;
785  }
global $ilDB
+ Here is the caller graph for this function:

◆ isOnlineHelpWiki()

static ilObjWiki::isOnlineHelpWiki (   $a_ref_id)
static

Is wiki an online help wiki?

Returns
boolean true, if current wiki is an online help wiki

Definition at line 345 of file class.ilObjWiki.php.

Referenced by ilObjWikiGUI\isOnlineHelpWiki().

346  {
347  if ($a_ref_id > 0 && $a_ref_id == OH_REF_ID) {
348  // return true;
349  }
350  return false;
351  }
+ Here is the caller graph for this function:

◆ read()

ilObjWiki::read ( )

Read wiki data.

Definition at line 440 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, $query, ilObject\getId(), ilObjStyleSheet\lookupObjectStyle(), setEmptyPageTemplate(), setImportantPages(), setIntroduction(), setLinkMetadataValues(), setOnline(), setPageToc(), setPublicNotes(), setRating(), setRatingAsBlock(), setRatingCategories(), setRatingForNewPages(), setRatingOverall(), setShortTitle(), setStartPage(), and setStyleSheetId().

441  {
442  $ilDB = $this->db;
443 
444  parent::read();
445 
446  $query = "SELECT * FROM il_wiki_data WHERE id = " .
447  $ilDB->quote($this->getId(), "integer");
448  $set = $ilDB->query($query);
449  $rec = $ilDB->fetchAssoc($set);
450 
451  $this->setOnline($rec["is_online"]);
452  $this->setStartPage($rec["startpage"]);
453  $this->setShortTitle($rec["short"]);
454  $this->setRatingOverall($rec["rating_overall"]);
455  $this->setRating($rec["rating"]);
456  $this->setRatingAsBlock($rec["rating_side"]);
457  $this->setRatingForNewPages($rec["rating_new"]);
458  $this->setRatingCategories($rec["rating_ext"]);
459  $this->setPublicNotes($rec["public_notes"]);
460  $this->setIntroduction($rec["introduction"]);
461  $this->setImportantPages($rec["imp_pages"]);
462  $this->setPageToc($rec["page_toc"]);
463  $this->setEmptyPageTemplate($rec["empty_page_templ"]);
464  $this->setLinkMetadataValues($rec["link_md_values"]);
465 
466  include_once("./Services/Style/Content/classes/class.ilObjStyleSheet.php");
468  }
setImportantPages($a_val)
Set important pages.
setOnline($a_online)
Set Online.
setIntroduction($a_introduction)
Set Introduction.
setPublicNotes($a_val)
Set public notes.
static lookupObjectStyle($a_obj_id)
Lookup object style.
setRatingCategories($a_rating)
Set Enable Rating Categories.
setStyleSheetId($a_style_id)
set ID of assigned style sheet object
setRatingAsBlock($a_rating)
Set Enable Rating Side Block.
setEmptyPageTemplate($a_val)
Set empty page template.
getId()
get object id public
$query
setShortTitle($a_shorttitle)
Set ShortTitle.
setStartPage($a_startpage)
Set Start Page.
setLinkMetadataValues($a_val)
Set link md values.
setRating($a_rating)
Set Enable Rating.
setRatingForNewPages($a_rating)
Set Enable Rating For New Pages.
global $ilDB
setRatingOverall($a_rating)
Set Enable Rating For Object.
setPageToc($a_val)
Set page toc.
+ Here is the call graph for this function:

◆ removeImportantPage()

ilObjWiki::removeImportantPage (   $a_id)

Remove important page.

Parameters
intpage id

Definition at line 792 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, and fixImportantPagesNumbering().

793  {
794  $ilDB = $this->db;
795 
796  $ilDB->manipulate(
797  "DELETE FROM il_wiki_imp_pages WHERE "
798  . " wiki_id = " . $ilDB->quote($this->getId(), "integer")
799  . " AND page_id = " . $ilDB->quote($a_id, "integer")
800  );
801 
803  }
fixImportantPagesNumbering()
Fix important pages numbering.
global $ilDB
+ Here is the call graph for this function:

◆ saveOrderingAndIndentation()

ilObjWiki::saveOrderingAndIndentation (   $a_ord,
  $a_indent 
)

Save ordering and indentation.

Parameters

Definition at line 811 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, _lookupImportantPagesList(), ilObject\getId(), and ilUtil\sortArray().

812  {
813  $ilDB = $this->db;
814 
815  $ipages = ilObjWiki::_lookupImportantPagesList($this->getId());
816 
817  foreach ($ipages as $k => $v) {
818  if (isset($a_ord[$v["page_id"]])) {
819  $ipages[$k]["ord"] = (int) $a_ord[$v["page_id"]];
820  }
821  if (isset($a_indent[$v["page_id"]])) {
822  $ipages[$k]["indent"] = (int) $a_indent[$v["page_id"]];
823  }
824  }
825  $ipages = ilUtil::sortArray($ipages, "ord", "asc", true);
826 
827  // fix indentation: no 2 is allowed after a 0
828  $c_indent = 0;
829  $fixed = false;
830  foreach ($ipages as $k => $v) {
831  if ($ipages[$k]["indent"] == 2 && $c_indent == 0) {
832  $ipages[$k]["indent"] = 1;
833  $fixed = true;
834  }
835  $c_indent = $ipages[$k]["indent"];
836  }
837 
838  $ord = 10;
839  reset($ipages);
840  foreach ($ipages as $k => $v) {
841  $ilDB->manipulate(
842  $q = "UPDATE il_wiki_imp_pages SET " .
843  " ord = " . $ilDB->quote($ord, "integer") . "," .
844  " indent = " . $ilDB->quote($v["indent"], "integer") .
845  " WHERE wiki_id = " . $ilDB->quote($v["wiki_id"], "integer") .
846  " AND page_id = " . $ilDB->quote($v["page_id"], "integer")
847  );
848  $ord += 10;
849  }
850 
851  return $fixed;
852  }
static sortArray( $array, $a_array_sortby, $a_array_sortorder=0, $a_numeric=false, $a_keep_keys=false)
sortArray
static _lookupImportantPagesList($a_wiki_id)
Get important pages list.
getId()
get object id public
global $ilDB
+ Here is the call graph for this function:

◆ setEmptyPageTemplate()

ilObjWiki::setEmptyPageTemplate (   $a_val)

Set empty page template.

Parameters
boolean$a_valempty page template

Definition at line 305 of file class.ilObjWiki.php.

Referenced by read().

306  {
307  $this->empty_page_templ = $a_val;
308  }
+ Here is the caller graph for this function:

◆ setImportantPages()

ilObjWiki::setImportantPages (   $a_val)

Set important pages.

Parameters
boolean$a_valimportant pages

Definition at line 189 of file class.ilObjWiki.php.

Referenced by read().

190  {
191  $this->imp_pages = $a_val;
192  }
+ Here is the caller graph for this function:

◆ setIntroduction()

ilObjWiki::setIntroduction (   $a_introduction)

Set Introduction.

Parameters
string$a_introductionIntroduction

Definition at line 249 of file class.ilObjWiki.php.

Referenced by read().

250  {
251  $this->introduction = $a_introduction;
252  }
+ Here is the caller graph for this function:

◆ setLinkMetadataValues()

ilObjWiki::setLinkMetadataValues (   $a_val)

Set link md values.

Parameters
bool$a_vallink metadata values

Definition at line 325 of file class.ilObjWiki.php.

Referenced by read().

326  {
327  $this->link_md_values = $a_val;
328  }
+ Here is the caller graph for this function:

◆ setOnline()

ilObjWiki::setOnline (   $a_online)

Set Online.

Parameters
boolean$a_onlineOnline

Definition at line 53 of file class.ilObjWiki.php.

Referenced by read().

54  {
55  $this->online = $a_online;
56  }
+ Here is the caller graph for this function:

◆ setPageToc()

ilObjWiki::setPageToc (   $a_val)

Set page toc.

Parameters
boolean$a_valpage toc

Definition at line 285 of file class.ilObjWiki.php.

Referenced by read().

286  {
287  $this->page_toc = $a_val;
288  }
+ Here is the caller graph for this function:

◆ setPublicNotes()

ilObjWiki::setPublicNotes (   $a_val)

Set public notes.

Definition at line 171 of file class.ilObjWiki.php.

Referenced by read().

172  {
173  $this->public_notes = $a_val;
174  }
+ Here is the caller graph for this function:

◆ setRating()

ilObjWiki::setRating (   $a_rating)

Set Enable Rating.

Parameters
boolean$a_ratingEnable Rating

Definition at line 93 of file class.ilObjWiki.php.

Referenced by read().

94  {
95  $this->rating = (bool) $a_rating;
96  }
+ Here is the caller graph for this function:

◆ setRatingAsBlock()

ilObjWiki::setRatingAsBlock (   $a_rating)

Set Enable Rating Side Block.

Parameters
boolean$a_rating

Definition at line 113 of file class.ilObjWiki.php.

Referenced by read().

114  {
115  $this->rating_block = (bool) $a_rating;
116  }
+ Here is the caller graph for this function:

◆ setRatingCategories()

ilObjWiki::setRatingCategories (   $a_rating)

Set Enable Rating Categories.

Parameters
boolean$a_rating

Definition at line 153 of file class.ilObjWiki.php.

Referenced by read().

154  {
155  $this->rating_categories = (bool) $a_rating;
156  }
+ Here is the caller graph for this function:

◆ setRatingForNewPages()

ilObjWiki::setRatingForNewPages (   $a_rating)

Set Enable Rating For New Pages.

Parameters
boolean$a_rating

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

Referenced by read().

134  {
135  $this->rating_new_pages = (bool) $a_rating;
136  }
+ Here is the caller graph for this function:

◆ setRatingOverall()

ilObjWiki::setRatingOverall (   $a_rating)

Set Enable Rating For Object.

Parameters
boolean$a_ratingEnable Rating

Definition at line 73 of file class.ilObjWiki.php.

Referenced by read().

74  {
75  $this->rating_overall = (bool) $a_rating;
76  }
+ Here is the caller graph for this function:

◆ setShortTitle()

ilObjWiki::setShortTitle (   $a_shorttitle)

Set ShortTitle.

Parameters
string$a_shorttitleShortTitle

Definition at line 229 of file class.ilObjWiki.php.

Referenced by read().

230  {
231  $this->shorttitle = $a_shorttitle;
232  }
+ Here is the caller graph for this function:

◆ setStartPage()

ilObjWiki::setStartPage (   $a_startpage)

Set Start Page.

Parameters
string$a_startpageStart Page

Definition at line 209 of file class.ilObjWiki.php.

References ilWikiUtil\makeDbTitle().

Referenced by read().

210  {
211  $this->startpage = ilWikiUtil::makeDbTitle($a_startpage);
212  }
static makeDbTitle($a_par)
Handle page GET parameter.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setStyleSheetId()

ilObjWiki::setStyleSheetId (   $a_style_id)

set ID of assigned style sheet object

Definition at line 275 of file class.ilObjWiki.php.

Referenced by read().

276  {
277  $this->style_id = $a_style_id;
278  }
+ Here is the caller graph for this function:

◆ startUserHTMLExport()

ilObjWiki::startUserHTMLExport ( )

Start user html export.

Parameters

Definition at line 1098 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, $ilUser, and $user.

1099  {
1100  $ilDB = $this->db;
1101  $ilUser = $this->user;
1102 
1103  include_once("./Modules/Wiki/classes/class.ilWikiUserHTMLExport.php");
1104 
1105  $user_export = new ilWikiUserHTMLExport($this, $ilDB, $ilUser);
1106  $user_export->startUserHTMLExport();
1107  }
Class manages user html export.
$ilUser
Definition: imgupload.php:18
global $ilDB

◆ update()

ilObjWiki::update (   $a_prevent_start_page_creation = false)

update object data

public

Returns
boolean

Definition at line 394 of file class.ilObjWiki.php.

References ilObject\$db, $ilDB, ilWikiPage\exists(), getEmptyPageTemplate(), ilObject\getId(), getImportantPages(), getIntroduction(), getLinkMetadataValues(), getOnline(), getPageToc(), getPublicNotes(), getRating(), getRatingAsBlock(), getRatingCategories(), getRatingForNewPages(), getRatingOverall(), getShortTitle(), getStartPage(), getStyleSheetId(), League\Flysystem\Adapter\Polyfill\update(), and ilObjStyleSheet\writeStyleUsage().

395  {
396  $ilDB = $this->db;
397 
398  if (!parent::update()) {
399  return false;
400  }
401 
402  $ilDB->update("il_wiki_data", array(
403  "is_online" => array("integer", $this->getOnline()),
404  "startpage" => array("text", $this->getStartPage()),
405  "short" => array("text", $this->getShortTitle()),
406  "rating_overall" => array("integer", $this->getRatingOverall()),
407  "rating" => array("integer", $this->getRating()),
408  "rating_side" => array("integer", (bool) $this->getRatingAsBlock()), // #13455
409  "rating_new" => array("integer", $this->getRatingForNewPages()),
410  "rating_ext" => array("integer", $this->getRatingCategories()),
411  "public_notes" => array("integer", $this->getPublicNotes()),
412  "introduction" => array("clob", $this->getIntroduction()),
413  "imp_pages" => array("integer", $this->getImportantPages()),
414  "page_toc" => array("integer", $this->getPageToc()),
415  "link_md_values" => array("integer", $this->getLinkMetadataValues()),
416  "empty_page_templ" => array("integer", $this->getEmptyPageTemplate())
417  ), array(
418  "id" => array("integer", $this->getId())
419  ));
420 
421  // check whether start page exists
422  include_once("./Modules/Wiki/classes/class.ilWikiPage.php");
423  if (!ilWikiPage::exists($this->getId(), $this->getStartPage())
424  && !$a_prevent_start_page_creation) {
425  $start_page = new ilWikiPage();
426  $start_page->setWikiId($this->getId());
427  $start_page->setTitle($this->getStartPage());
428  $start_page->create();
429  }
430 
431  include_once("./Services/Style/Content/classes/class.ilObjStyleSheet.php");
433 
434  return true;
435  }
getRatingOverall()
Get Enable Rating For Object.
getStartPage()
Get Start Page.
getLinkMetadataValues()
Get link md values.
getShortTitle()
Get ShortTitle.
getPublicNotes()
Get public notes.
getRatingForNewPages()
Get Enable Rating For New Pages.
getRatingCategories()
Get Enable Rating Categories.
static writeStyleUsage($a_obj_id, $a_style_id)
Write style usage.
getPageToc()
Get page toc.
getEmptyPageTemplate()
Get empty page template.
getId()
get object id public
getRatingAsBlock()
Get Enable Rating Side Block.
getStyleSheetId()
get ID of assigned style sheet object
Class ilWikiPage.
update($pash, $contents, Config $config)
static exists($a_wiki_id, $a_title)
Checks whether a page with given title exists.
getIntroduction()
Get Introduction.
global $ilDB
getImportantPages()
Get important pages.
getOnline()
Get Online.
getRating()
Get Enable Rating.
+ Here is the call graph for this function:

◆ writeStartPage()

static ilObjWiki::writeStartPage (   $a_id,
  $a_name 
)
static

Write start page.

Definition at line 630 of file class.ilObjWiki.php.

References $DIC, $ilDB, and ilWikiUtil\makeDbTitle().

Referenced by ilWikiPage\rename().

631  {
632  global $DIC;
633 
634  $ilDB = $DIC->database();
635 
636  include_once("./Modules/Wiki/classes/class.ilWikiUtil.php");
637  $ilDB->manipulate(
638  "UPDATE il_wiki_data SET " .
639  " startpage = " . $ilDB->quote(ilWikiUtil::makeDbTitle($a_name), "text") .
640  " WHERE id = " . $ilDB->quote($a_id, "integer")
641  );
642  }
global $DIC
Definition: saml.php:7
static makeDbTitle($a_par)
Handle page GET parameter.
global $ilDB
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ $empty_page_templ

ilObjWiki::$empty_page_templ = true
protected

Definition at line 29 of file class.ilObjWiki.php.

Referenced by getEmptyPageTemplate().

◆ $link_md_values

ilObjWiki::$link_md_values = false
protected

Definition at line 30 of file class.ilObjWiki.php.

Referenced by getLinkMetadataValues().

◆ $online

ilObjWiki::$online = false
protected

Definition at line 27 of file class.ilObjWiki.php.

Referenced by getOnline().

◆ $public_notes

ilObjWiki::$public_notes = true
protected

Definition at line 28 of file class.ilObjWiki.php.

Referenced by getPublicNotes().

◆ $user

ilObjWiki::$user
protected

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