本文整理汇总了PHP中ilObject::cloneObject方法的典型用法代码示例。如果您正苦于以下问题:PHP ilObject::cloneObject方法的具体用法?PHP ilObject::cloneObject怎么用?PHP ilObject::cloneObject使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ilObject
的用法示例。
在下文中一共展示了ilObject::cloneObject方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: cloneObject
/**
* Clone
*
* @access public
* @param int target id
* @param int copy id
*
*/
public function cloneObject($a_target_id, $a_copy_id = 0)
{
global $ilDB, $ilLog;
$new_obj = parent::cloneObject($a_target_id, $a_copy_id);
$fb = $this->getFeedBlock();
include_once "./Services/Block/classes/class.ilExternalFeedBlock.php";
$new_feed_block = new ilExternalFeedBlock();
$new_feed_block->setContextObjId($new_obj->getId());
$new_feed_block->setContextObjType("feed");
if (is_object($fb)) {
$new_feed_block->setFeedUrl($fb->getFeedUrl());
$new_feed_block->setTitle($fb->getTitle());
}
$new_feed_block->create();
return $new_obj;
}
示例2: cloneObject
public function cloneObject($a_target_id, $a_copy_id = 0, $a_omit_tree = false)
{
global $rbacreview;
require_once 'Modules/Chatroom/classes/class.ilChatroom.php';
$original_room = ilChatroom::byObjectId($this->getId());
$newObj = parent::cloneObject($a_target_id, $a_copy_id, $a_omit_tree);
$objId = $newObj->getId();
$original_settings = $original_room->getSettings();
$room = new ilChatroom();
$original_settings['object_id'] = $objId;
$room->saveSettings($original_settings);
// rbac log
include_once "Services/AccessControl/classes/class.ilRbacLog.php";
$rbac_log_roles = $rbacreview->getParentRoleIds($newObj->getRefId(), false);
$rbac_log = ilRbacLog::gatherFaPa($newObj->getRefId(), array_keys($rbac_log_roles), true);
ilRbacLog::add(ilRbacLog::CREATE_OBJECT, $newObj->getRefId(), $rbac_log);
return $newObj;
}
示例3: cloneObject
/**
* Clone object
*
* @access public
* @param int ref_id of target container
* @param int copy id
* @return object new svy object
*/
public function cloneObject($a_target_id, $a_copy_id = 0)
{
global $ilDB;
$this->loadFromDb();
// Copy settings
$newObj = parent::cloneObject($a_target_id, $a_copy_id);
$this->cloneMetaData($newObj);
$newObj->updateMetaData();
$newObj->setAuthor($this->getAuthor());
$newObj->setIntroduction($this->getIntroduction());
$newObj->setOutro($this->getOutro());
$newObj->setEvaluationAccess($this->getEvaluationAccess());
$newObj->setStartDate($this->getStartDate());
$newObj->setEndDate($this->getEndDate());
$newObj->setInvitation($this->getInvitation());
$newObj->setInvitationMode($this->getInvitationMode());
$newObj->setAnonymize($this->getAnonymize());
$newObj->setShowQuestionTitles($this->getShowQuestionTitles());
$newObj->setTemplate($this->getTemplate());
$newObj->setPoolUsage($this->getPoolUsage());
$newObj->setViewOwnResults($this->hasViewOwnResults());
$newObj->setMailOwnResults($this->hasMailOwnResults());
// #12661
if ($this->get360Mode()) {
$newObj->set360Mode(true);
$newObj->set360SelfEvaluation($this->get360SelfEvaluation());
$newObj->set360SelfAppraisee($this->get360SelfAppraisee());
$newObj->set360SelfRaters($this->get360SelfRaters());
$newObj->set360Results($this->get360Results());
$newObj->set360SkillService($this->get360SkillService());
}
// reminder/notification
$newObj->setReminderStatus($this->getReminderStatus());
$newObj->setReminderStart($this->getReminderStart());
$newObj->setReminderEnd($this->getReminderEnd());
$newObj->setReminderFrequency($this->getReminderFrequency());
$newObj->setReminderTarget($this->getReminderTarget());
// reminder_last_sent must not be copied!
$newObj->setTutorNotificationStatus($this->getTutorNotificationStatus());
$newObj->setTutorNotificationRecipients($this->getTutorNotificationRecipients());
$newObj->setTutorNotificationTarget($this->getTutorNotificationTarget());
$question_pointer = array();
// clone the questions
$mapping = array();
include_once "./Modules/SurveyQuestionPool/classes/class.SurveyQuestion.php";
foreach ($this->questions as $key => $question_id) {
$question = ilObjSurvey::_instanciateQuestion($question_id);
if ($question) {
$question->id = -1;
$original_id = SurveyQuestion::_getOriginalId($question_id, false);
$question->saveToDb($original_id);
$newObj->questions[$key] = $question->getId();
$question_pointer[$question_id] = $question->getId();
$mapping[$question_id] = $question->getId();
}
}
//copy online status if object is not the root copy object
$cp_options = ilCopyWizardOptions::_getInstance($a_copy_id);
if (!$cp_options->isRootNode($this->getRefId())) {
$newObj->setStatus($this->isOnline() ? self::STATUS_ONLINE : self::STATUS_OFFLINE);
}
$newObj->saveToDb();
$newObj->cloneTextblocks($mapping);
// #14929
if ($this->get360Mode() && $this->get360SkillService()) {
include_once "./Modules/Survey/classes/class.ilSurveySkill.php";
$src_skills = new ilSurveySkill($this);
$tgt_skills = new ilSurveySkill($newObj);
foreach ($mapping as $src_qst_id => $tgt_qst_id) {
$qst_skill = $src_skills->getSkillForQuestion($src_qst_id);
if ($qst_skill) {
$tgt_skills->addQuestionSkillAssignment($tgt_qst_id, $qst_skill["base_skill_id"], $qst_skill["tref_id"]);
}
}
}
// clone the questionblocks
$questionblocks = array();
$questionblock_questions = array();
$result = $ilDB->queryF("SELECT * FROM svy_qblk_qst WHERE survey_fi = %s", array('integer'), array($this->getSurveyId()));
if ($result->numRows() > 0) {
while ($row = $ilDB->fetchAssoc($result)) {
array_push($questionblock_questions, $row);
$questionblocks[$row["questionblock_fi"]] = $row["questionblock_fi"];
}
}
// create new questionblocks
foreach ($questionblocks as $key => $value) {
$questionblock = ilObjSurvey::_getQuestionblock($key);
$questionblock_id = ilObjSurvey::_addQuestionblock($questionblock["title"], $questionblock["owner_fi"], $questionblock["show_questiontext"], $questionblock["show_blocktitle"]);
$questionblocks[$key] = $questionblock_id;
}
// create new questionblock questions
//.........这里部分代码省略.........
示例4: cloneObject
/**
* Creates a 1:1 copy of the object and places the copy in a given repository
*
* @access public
*/
function cloneObject($a_target_id, $a_copy_id = 0)
{
global $ilLog;
$newObj = parent::cloneObject($a_target_id, $a_copy_id);
$newObj->setOnline($this->getOnline());
$newObj->saveToDb();
// clone the questions in the question pool
$questions =& $this->getQplQuestions();
foreach ($questions as $question_id) {
$newObj->copyQuestion($question_id, $newObj->getId());
}
// clone meta data
include_once "./Services/MetaData/classes/class.ilMD.php";
$md = new ilMD($this->getId(), 0, $this->getType());
$new_md =& $md->cloneMD($newObj->getId(), 0, $newObj->getType());
// update the metadata with the new title of the question pool
$newObj->updateMetaData();
return $newObj;
}
示例5: cloneObject
/**
* Clone HTML learning module
*
* @param int target ref_id
* @param int copy id
*/
public function cloneObject($a_target_id, $a_copy_id = 0)
{
global $ilDB, $ilUser, $ilias;
$new_obj = parent::cloneObject($a_target_id, $a_copy_id);
$this->cloneMetaData($new_obj);
$new_obj->setTitle($this->getTitle());
$new_obj->setDescription($this->getDescription());
$new_obj->setShowLicense($this->getShowLicense());
$new_obj->setShowBibliographicalData($this->getShowBibliographicalData());
// copy content
$new_obj->populateByDirectoy($this->getDataDirectory());
$new_obj->setStartFile($this->getStartFile());
$new_obj->update();
return $new_obj;
}
示例6: cloneObject
/**
* Clone scorm object
*
* @param int target ref_id
* @param int copy id
*/
public function cloneObject($a_target_id, $a_copy_id = 0)
{
global $ilDB, $ilUser, $ilias;
$new_obj = parent::cloneObject($a_target_id, $a_copy_id);
$this->cloneMetaData($new_obj);
// copy properties
$new_obj->setTitle($this->getTitle());
$new_obj->setDescription($this->getDescription());
$new_obj->setSubType($this->getSubType());
$new_obj->setAPIAdapterName($this->getAPIAdapterName());
$new_obj->setAPIFunctionsPrefix($this->getAPIFunctionsPrefix());
$new_obj->setAutoReviewChar($this->getAutoReviewChar());
$new_obj->setDefaultLessonMode($this->getDefaultLessonMode());
$new_obj->setEditable($this->getEditable());
$new_obj->setMaxAttempt($this->getMaxAttempt());
// $new_obj->getModuleVersion($this->getModuleVersion()); ??
$new_obj->setModuleVersion(1);
$new_obj->setCreditMode($this->getCreditMode());
$new_obj->setAssignedGlossary($this->getAssignedGlossary());
$new_obj->setTries($this->getTries());
$new_obj->setSession($this->getSession());
$new_obj->setNoMenu($this->getNoMenu());
$new_obj->setHideNavig($this->getHideNavig());
$new_obj->setSequencing($this->getSequencing());
$new_obj->setInteractions($this->getInteractions());
$new_obj->setObjectives($this->getObjectives());
$new_obj->setComments($this->getComments());
$new_obj->setTime_from_lms($this->getTime_from_lms());
$new_obj->setDebug($this->getDebug());
$new_obj->setLocalization($this->getLocalization());
$new_obj->setSequencingExpertMode($this->getSequencingExpertMode());
$new_obj->setDebugPw($this->getDebugPw());
$new_obj->setOpenMode($this->getOpenMode());
$new_obj->setWidth($this->getWidth());
$new_obj->setHeight($this->getHeight());
$new_obj->setAutoContinue($this->getAutoContinue());
$new_obj->setAuto_last_visited($this->getAuto_last_visited());
$new_obj->setCheck_values($this->getCheck_values());
$new_obj->setOfflineMode($this->getOfflineMode());
$new_obj->setAutoSuspend($this->getAutoSuspend());
$new_obj->update();
// set/copy stylesheet
/* include_once("./Services/Style/classes/class.ilObjStyleSheet.php");
$style_id = $this->getStyleSheetId();
if ($style_id > 0 && !ilObjStyleSheet::_lookupStandard($style_id))
{
$style_obj = $ilias->obj_factory->getInstanceByObjId($style_id);
$new_id = $style_obj->ilClone();
$new_obj->setStyleSheetId($new_id);
$new_obj->update();
}*/
// up to this point $new_obj is of type ilobjsahslearning module
// create instance of correct subtype and call forward it to
// cloneIntoNewObject method
switch ($this->getSubType()) {
case "scorm":
include_once "./Modules/ScormAicc/classes/class.ilObjSCORMLearningModule.php";
$source_obj = new ilObjSCORMLearningModule($this->getRefId());
$new_obj = new ilObjSCORMLearningModule($new_obj->getRefId());
break;
case "scorm2004":
include_once "./Modules/Scorm2004/classes/class.ilObjSCORM2004LearningModule.php";
$source_obj = new ilObjSCORM2004LearningModule($this->getRefId());
$new_obj = new ilObjSCORM2004LearningModule($new_obj->getRefId());
break;
case "aicc":
include_once "./Modules/ScormAicc/classes/class.ilObjAICCLearningModule.php";
$source_obj = new ilObjAICCLearningModule($this->getRefId());
$new_obj = new ilObjAICCLearningModule($new_obj->getRefId());
break;
case "hacp":
include_once "./Modules/ScormAicc/classes/class.ilObjHACPLearningModule.php";
$source_obj = new ilObjHACPLearningModule($this->getRefId());
$new_obj = new ilObjHACPLearningModule($new_obj->getRefId());
break;
}
// copy data directory
$new_obj->populateByDirectoy($source_obj->getDataDirectory());
// copy authored content ...
if ($new_obj->getEditable()) {
$source_obj->copyAuthoredContent($new_obj);
} else {
// ... or read manifest file
$new_obj->readObject();
}
return $new_obj;
}
示例7: cloneObject
/**
* Clone exercise (no member data)
*
* @access public
* @param int target ref_id
* @param int copy id
*/
public function cloneObject($a_target_id, $a_copy_id = 0)
{
global $ilDB;
// Copy settings
$new_obj = parent::cloneObject($a_target_id, $a_copy_id);
$new_obj->setInstruction($this->getInstruction());
$new_obj->setTimestamp($this->getTimestamp());
$new_obj->setPassMode($this->getPassMode());
$new_obj->saveData();
$new_obj->setPassNr($this->getPassNr());
$new_obj->setShowSubmissions($this->getShowSubmissions());
$new_obj->setCompletionBySubmission($this->isCompletionBySubmissionEnabled());
$new_obj->update();
// Copy assignments
include_once "./Modules/Exercise/classes/class.ilExAssignment.php";
ilExAssignment::cloneAssignmentsOfExercise($this->getId(), $new_obj->getId());
//$tmp_file_obj =& new ilFileDataExercise($this->getId());
//$tmp_file_obj->ilClone($new_obj->getId());
//unset($tmp_file_obj);
// Copy learning progress settings
include_once 'Services/Tracking/classes/class.ilLPObjSettings.php';
$obj_settings = new ilLPObjSettings($this->getId());
$obj_settings->cloneSettings($new_obj->getId());
unset($obj_settings);
return $new_obj;
}
示例8: cloneObject
/**
* Creates a 1:1 copy of the object and places the copy in a given repository
*
* @access public
*/
function cloneObject($a_target_id, $a_copy_id = 0)
{
global $ilLog;
$newObj = parent::cloneObject($a_target_id, $a_copy_id);
//copy online status if object is not the root copy object
$cp_options = ilCopyWizardOptions::_getInstance($a_copy_id);
if (!$cp_options->isRootNode($this->getRefId())) {
$newObj->setOnline($this->getOnline());
}
$newObj->setShowTaxonomies($this->getShowTaxonomies());
$newObj->saveToDb();
// clone the questions in the question pool
$questions =& $this->getQplQuestions();
$questionIdsMap = array();
foreach ($questions as $question_id) {
$newQuestionId = $newObj->copyQuestion($question_id, $newObj->getId());
$questionIdsMap[$question_id] = $newQuestionId;
}
// clone meta data
include_once "./Services/MetaData/classes/class.ilMD.php";
$md = new ilMD($this->getId(), 0, $this->getType());
$new_md =& $md->cloneMD($newObj->getId(), 0, $newObj->getType());
// update the metadata with the new title of the question pool
$newObj->updateMetaData();
require_once 'Modules/TestQuestionPool/classes/class.ilQuestionPoolTaxonomiesDuplicator.php';
$duplicator = new ilQuestionPoolTaxonomiesDuplicator();
$duplicator->setSourceObjId($this->getId());
$duplicator->setSourceObjType($this->getType());
$duplicator->setTargetObjId($newObj->getId());
$duplicator->setTargetObjType($newObj->getType());
$duplicator->setQuestionIdMapping($questionIdsMap);
$duplicator->duplicate();
$duplicatedTaxKeyMap = $duplicator->getDuplicatedTaxonomiesKeysMap();
$newObj->setNavTaxonomyId($duplicatedTaxKeyMap->getMappedTaxonomyId($this->getNavTaxonomyId()));
$newObj->saveToDb();
return $newObj;
}
示例9: cloneObject
final function cloneObject($a_target_id, $a_copy_id = null, $a_omit_tree = false)
{
if ($this->beforeCloneObject()) {
$new_obj = parent::cloneObject($a_target_id, $a_copy_id, $a_omit_tree);
if ($new_obj) {
$this->doCloneObject($new_obj, $a_target_id, $a_copy_id);
return $new_obj;
}
}
}
示例10: cloneObject
/**
* Clone container settings
*
* @access public
* @param int target ref_id
* @param int copy id
* @return object new object
*/
public function cloneObject($a_target_id, $a_copy_id = 0)
{
$new_obj = parent::cloneObject($a_target_id, $a_copy_id);
include_once './Services/Container/classes/class.ilContainerSortingSettings.php';
$sorting = new ilContainerSortingSettings($new_obj->getId());
$sorting->setSortMode($this->getOrderType());
$sorting->update();
// copy content page
include_once "./Services/COPage/classes/class.ilPageObject.php";
if (ilPageObject::_exists($this->getType(), $this->getId())) {
$orig_page = new ilPageObject($this->getType(), $this->getId());
$new_page_object = new ilPageObject($this->getType());
$new_page_object->setParentId($new_obj->getId());
$new_page_object->setId($new_obj->getId());
$new_page_object->createFromXML();
$new_page_object->setXMLContent($orig_page->getXMLContent());
$new_page_object->buildDom();
$new_page_object->update();
}
return $new_obj;
}
示例11: cloneObject
/**
* Clone container settings
*
* @access public
* @param int target ref_id
* @param int copy id
* @return object new object
*/
public function cloneObject($a_target_id, $a_copy_id = 0)
{
global $ilLog;
$new_obj = parent::cloneObject($a_target_id, $a_copy_id);
include_once './Services/Container/classes/class.ilContainerSortingSettings.php';
$sorting = new ilContainerSortingSettings($new_obj->getId());
$sorting->setSortMode($this->getOrderType());
$sorting->update();
// copy content page
include_once "./Services/Container/classes/class.ilContainerPage.php";
if (ilContainerPage::_exists("cont", $this->getId())) {
$orig_page = new ilContainerPage($this->getId());
$orig_page->copy($new_obj->getId(), "cont", $new_obj->getId());
}
// #10271 - copy start objects page
include_once "./Services/Container/classes/class.ilContainerStartObjectsPage.php";
if (ilContainerStartObjectsPage::_exists("cstr", $this->getId())) {
$orig_page = new ilContainerStartObjectsPage($this->getId());
$orig_page->copy($new_obj->getId(), "cstr", $new_obj->getId());
}
// #10271
foreach (self::_getContainerSettings($this->getId()) as $keyword => $value) {
self::_writeContainerSetting($new_obj->getId(), $keyword, $value);
// copy custom icons
if ($keyword == "icon_custom" && $value) {
// see saveIcons()
$new_obj->createContainerDirectory();
$tgt_dir = $new_obj->getContainerDirectory();
$src_dir = $this->getContainerDirectory();
$file = "icon_custom.svg";
$src_file = $src_dir . "/" . $file;
if (file_exists($src_file)) {
copy($src_file, $tgt_dir . "/" . $file);
}
}
}
return $new_obj;
}
示例12: cloneObject
public function cloneObject($a_target_id, $a_copy_id = 0, $a_omit_tree = false)
{
$new_obj = parent::cloneObject($a_target_id, $a_copy_id, $a_omit_tree);
$new_obj->setOffline($this->isOffline());
$new_obj->setScheduleType($this->getScheduleType());
$new_obj->setPublicLog($this->hasPublicLog());
$smap = null;
if ($this->getScheduleType() == self::TYPE_FIX_SCHEDULE) {
$new_obj->setNumberOfSlots($this->getNumberOfSlots());
// schedules
include_once "Modules/BookingManager/classes/class.ilBookingSchedule.php";
foreach (ilBookingSchedule::getList($this->getId()) as $item) {
$schedule = new ilBookingSchedule($item["booking_schedule_id"]);
$smap[$item["booking_schedule_id"]] = $schedule->doClone($new_obj->getId());
}
}
// objects
include_once "Modules/BookingManager/classes/class.ilBookingObject.php";
foreach (ilBookingObject::getList($this->getId()) as $item) {
$bobj = new ilBookingObject($item["booking_object_id"]);
$bobj->doClone($new_obj->getId(), $smap);
}
$new_obj->update();
return $new_obj;
}
示例13: cloneObject
/**
* Clone wiki
*
* @param int target ref_id
* @param int copy id
*/
public function cloneObject($a_target_id, $a_copy_id = 0)
{
global $ilDB, $ilUser, $ilias;
$new_obj = parent::cloneObject($a_target_id, $a_copy_id);
$new_obj->setTitle($this->getTitle());
$new_obj->setStartPage($this->getStartPage());
$new_obj->setShortTitle($this->getShortTitle());
$new_obj->setRatingOverall($this->getRatingOverall());
$new_obj->setRating($this->getRating());
$new_obj->setRatingAsBlock($this->getRatingAsBlock());
$new_obj->setRatingForNewPages($this->getRatingForNewPages());
$new_obj->setRatingCategories($this->getRatingCategories());
$new_obj->setPublicNotes($this->getPublicNotes());
$new_obj->setIntroduction($this->getIntroduction());
$new_obj->setImportantPages($this->getImportantPages());
$new_obj->setPageToc($this->getPageToc());
$new_obj->update();
// set/copy stylesheet
include_once "./Services/Style/classes/class.ilObjStyleSheet.php";
$style_id = $this->getStyleSheetId();
if ($style_id > 0 && !ilObjStyleSheet::_lookupStandard($style_id)) {
$style_obj = $ilias->obj_factory->getInstanceByObjId($style_id);
$new_id = $style_obj->ilClone();
$new_obj->setStyleSheetId($new_id);
$new_obj->update();
}
// copy content
include_once "./Modules/Wiki/classes/class.ilWikiPage.php";
$pages = ilWikiPage::getAllPages($this->getId());
if (count($pages) > 0) {
// if we have any pages, delete the start page first
$pg_id = ilWikiPage::getPageIdForTitle($new_obj->getId(), $new_obj->getStartPage());
$start_page = new ilWikiPage($pg_id);
$start_page->delete();
}
$map = array();
foreach ($pages as $p) {
$page = new ilWikiPage($p["id"]);
$new_page = new ilWikiPage();
$new_page->setTitle($page->getTitle());
$new_page->setWikiId($new_obj->getId());
$new_page->setTitle($page->getTitle());
$new_page->setBlocked($page->getBlocked());
$new_page->setRating($page->getRating());
$new_page->hideAdvancedMetadata($page->isAdvancedMetadataHidden());
$new_page->create();
$page->copy($new_page->getId(), "", 0, true);
//$new_page->setXMLContent($page->copyXMLContent(true));
//$new_page->buildDom(true);
//$new_page->update();
$map[$p["id"]] = $new_page->getId();
}
// copy important pages
foreach (ilObjWiki::_lookupImportantPagesList($this->getId()) as $ip) {
$new_obj->addImportantPage($map[$ip["page_id"]], $ip["ord"], $ip["indent"]);
}
// copy rating categories
include_once "./Services/Rating/classes/class.ilRatingCategory.php";
foreach (ilRatingCategory::getAllForObject($this->getId()) as $rc) {
$new_rc = new ilRatingCategory();
$new_rc->setParentId($new_obj->getId());
$new_rc->setTitle($rc["title"]);
$new_rc->setDescription($rc["description"]);
$new_rc->save();
}
return $new_obj;
}
示例14: cloneObject
/**
* Clone media cast
*
* @param int target ref_id
* @param int copy id
*/
public function cloneObject($a_target_id, $a_copy_id = 0)
{
global $ilDB, $ilUser, $ilias;
$new_obj = parent::cloneObject($a_target_id, $a_copy_id);
$new_obj->setTitle($this->getTitle());
$new_obj->setPublicFiles($this->getPublicFiles());
$new_obj->setDownloadable($this->getDownloadable());
$new_obj->setDefaultAccess($this->getDefaultAccess());
$new_obj->setOrder($this->getOrder());
$new_obj->update();
// copy items
$this->copyItems($new_obj);
// copy order!?
return $new_obj;
}
示例15: cloneObject
/**
* Clone
*
* @access public
* @param int target id
* @param int copy id
*
*/
public function cloneObject($a_target_id, $a_copy_id = 0)
{
$new_obj = parent::cloneObject($a_target_id, $a_copy_id);
$this->cloneMetaData($new_obj);
// object created now copy other settings
include_once 'Modules/WebResource/classes/class.ilLinkResourceItems.php';
$links = new ilLinkResourceItems($this->getId());
$links->cloneItems($new_obj->getId());
// append copy info weblink title
if (ilLinkResourceItems::_isSingular($new_obj->getId())) {
$first = ilLinkResourceItems::_getFirstLink($new_obj->getId());
ilLinkResourceItems::updateTitle($first['link_id'], $new_obj->getTitle());
}
return $new_obj;
}