Public Member Functions | |
| _deleteAllLinksOfSource ($a_source_type, $a_source_id) | |
| delete all links of a given source | |
| _saveLink ($a_source_type, $a_source_id, $a_target_type, $a_target_id, $a_target_inst=0) | |
| save internal link information | |
| _getSourcesOfTarget ($a_target_type, $a_target_id, $a_target_inst) | |
| get all sources of a link target | |
| _getTargetsOfSource ($a_source_type, $a_source_id) | |
| get all targets of a source object (e.g., a page) | |
| _getIdForImportId ($a_type, $a_target) | |
| get current id for an import id | |
| _exists ($a_type, $a_target) | |
| check if internal link refers to a valid target | |
| _extractInstOfTarget ($a_target) | |
| extract installation id out of target | |
| _removeInstFromTarget ($a_target) | |
| removes installation id from target string | |
| _extractObjIdOfTarget ($a_target) | |
| extract object id out of target | |
Definition at line 34 of file class.ilInternalLink.php.
| ilInternalLink::_deleteAllLinksOfSource | ( | $ | a_source_type, | |
| $ | a_source_id | |||
| ) |
delete all links of a given source
| string | $a_source_type source type | |
| int | $a_source_if source id |
Definition at line 42 of file class.ilInternalLink.php.
Referenced by SurveyQuestion::_resolveIntLinks(), ASS_Question::_resolveIntLinks(), SurveyQuestion::delete(), ASS_Question::deleteSuggestedSolutions(), ilPageObject::saveInternalLinks(), SurveyQuestion::saveToDb(), ASS_Question::saveToDb(), SurveyQuestion::syncWithOriginal(), and ASS_Question::syncWithOriginal().
{
global $ilias;
$q = "DELETE FROM int_link WHERE source_type='$a_source_type' AND source_id='$a_source_id'";
$ilias->db->query($q);
}
Here is the caller graph for this function:| ilInternalLink::_exists | ( | $ | a_type, | |
| $ | a_target | |||
| ) |
check if internal link refers to a valid target
| string | $a_type target type ("PageObject" | "StructureObject" | "GlossaryItem" | "MediaObject") | |
| string | $a_target target id, e.g. "il__pg_244") |
Definition at line 181 of file class.ilInternalLink.php.
Referenced by ilPageObject::resolveIntLinks().
{
switch($a_type)
{
case "PageObject":
case "StructureObject":
return ilLMObject::_exists($a_target);
break;
case "GlossaryItem":
return ilGlossaryTerm::_exists($a_target);
break;
case "MediaObject":
return ilObjMediaObject::_exists($a_target);
break;
}
return false;
}
Here is the caller graph for this function:| ilInternalLink::_extractInstOfTarget | ( | $ | a_target | ) |
extract installation id out of target
| string | $a_target import target id (e.g. "il_2_pg_22") |
Definition at line 207 of file class.ilInternalLink.php.
Referenced by ilPageObject::resolveIntLinks().
{
if (!is_int(strpos($a_target, "__")))
{
$target = explode("_", $a_target);
if ($target[1] > 0)
{
return $target[1];
}
}
return false;
}
Here is the caller graph for this function:| ilInternalLink::_extractObjIdOfTarget | ( | $ | a_target | ) |
extract object id out of target
| string | $a_target import target id (e.g. "il_2_pg_22") |
Definition at line 243 of file class.ilInternalLink.php.
Referenced by ilLMObject::_exists(), ilGlossaryTerm::_exists(), and ilObjMediaObject::_exists().
{
$target = explode("_", $a_target);
return $target[count($target) - 1];
}
Here is the caller graph for this function:| ilInternalLink::_getIdForImportId | ( | $ | a_type, | |
| $ | a_target | |||
| ) |
get current id for an import id
| string | $a_type target type ("PageObject" | "StructureObject" | "GlossaryItem" | "MediaObject") | |
| string | $a_target import target id (e.g. "il_2_pg_22") |
Definition at line 133 of file class.ilInternalLink.php.
References $id.
Referenced by SurveyQuestion::_resolveInternalLink(), ASS_Question::_resolveInternalLink(), ilMapArea::_resolveIntLinks(), and ilPageObject::resolveIntLinks().
{
switch($a_type)
{
case "PageObject":
$id = ilLMObject::_getIdForImportId($a_target);
if($id > 0)
{
return "il__pg_".$id;
}
break;
case "StructureObject":
$id = ilLMObject::_getIdForImportId($a_target);
if($id > 0)
{
return "il__st_".$id;
}
break;
case "GlossaryItem":
$id = ilGlossaryTerm::_getIdForImportId($a_target);
if($id > 0)
{
return "il__git_".$id;
}
break;
case "MediaObject":
$id = ilObjMediaObject::_getIdForImportId($a_target);
if($id > 0)
{
return "il__mob_".$id;
}
break;
}
return false;
}
Here is the caller graph for this function:| ilInternalLink::_getSourcesOfTarget | ( | $ | a_target_type, | |
| $ | a_target_id, | |||
| $ | a_target_inst | |||
| ) |
get all sources of a link target
| string | $a_target_type target type | |
| int | $a_target_id target id | |
| int | $a_target_inst target installation id |
Definition at line 77 of file class.ilInternalLink.php.
Referenced by ilGlossaryPresentationGUI::listDefinitions(), and ilContObjParser::processPagesToParse().
{
global $ilias;
$q = "SELECT * FROM int_link WHERE ".
"target_type = '$a_target_type' AND ".
"target_id = '$a_target_id' AND ".
"target_inst = '$a_target_inst'";
$source_set = $ilias->db->query($q);
$sources = array();
while ($source_rec = $source_set->fetchRow(DB_FETCHMODE_ASSOC))
{
$sources[$source_rec["source_type"].":".$source_rec["source_id"]] =
array("type" => $source_rec["source_type"], "id" => $source_rec["source_id"]);
}
return $sources;
}
Here is the caller graph for this function:| ilInternalLink::_getTargetsOfSource | ( | $ | a_source_type, | |
| $ | a_source_id | |||
| ) |
get all targets of a source object (e.g., a page)
| string | $a_source_type source type (e.g. "lm:pg" | "dbk:pg") | |
| int | $a_source_id source id |
Definition at line 104 of file class.ilInternalLink.php.
References $q.
Referenced by ilObjContentObject::exportHTMLPages(), ilPageObjectGUI::showPage(), and ilLMPresentationGUI::showPrintView().
{
global $ilDB;
$q = "SELECT * FROM int_link WHERE ".
"source_type = ".$ilDB->quote($a_source_type)." AND ".
"source_id = ".$ilDB->quote($a_source_id);
$target_set = $ilDB->query($q);
$targets = array();
while ($target_rec = $target_set->fetchRow(DB_FETCHMODE_ASSOC))
{
$targets[$target_rec["target_type"].":".$target_rec["target_id"].":".$target_rec["target_inst"]] =
array("type" => $target_rec["target_type"], "id" => $target_rec["target_id"],
"inst" => $target_rec["target_inst"]);
}
return $targets;
}
Here is the caller graph for this function:| ilInternalLink::_removeInstFromTarget | ( | $ | a_target | ) |
removes installation id from target string
| string | $a_target import target id (e.g. "il_2_pg_22") |
Definition at line 225 of file class.ilInternalLink.php.
Referenced by ilPageObject::resolveIntLinks().
{
if (!is_int(strpos($a_target, "__")))
{
$target = explode("_", $a_target);
if ($target[1] > 0)
{
return "il__".$target[2]."_".$target[3];
}
}
return false;
}
Here is the caller graph for this function:| ilInternalLink::_saveLink | ( | $ | a_source_type, | |
| $ | a_source_id, | |||
| $ | a_target_type, | |||
| $ | a_target_id, | |||
| $ | a_target_inst = 0 | |||
| ) |
save internal link information
| string | $a_source_type source type | |
| int | $a_source_if source id | |
| string | $a_target_type target type | |
| int | $a_target_id target id | |
| int | $a_target_inst target installation id |
Definition at line 59 of file class.ilInternalLink.php.
Referenced by SurveyQuestion::_resolveIntLinks(), ASS_Question::_resolveIntLinks(), ilPageObject::saveInternalLinks(), SurveyQuestion::saveToDb(), ASS_Question::saveToDb(), SurveyQuestion::syncWithOriginal(), and ASS_Question::syncWithOriginal().
{
global $ilias;
$q = "REPLACE INTO int_link (source_type, source_id, target_type, target_id, target_inst) VALUES".
" ('$a_source_type', '$a_source_id', '$a_target_type', '$a_target_id', '$a_target_inst')";
$ilias->db->query($q);
}
Here is the caller graph for this function:
1.7.1