ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
ilObjLinkResourceGUI Class Reference

Class ilObjLinkResourceGUI. More...

+ Inheritance diagram for ilObjLinkResourceGUI:
+ Collaboration diagram for ilObjLinkResourceGUI:

Public Member Functions

 getType ()
 Functions that must be overwritten. More...
 
 executeCommand ()
 execute command More...
 
 save ()
 Save new object @access public. More...
 
 editLink ()
 Edit a single link. More...
 
 updateLink ()
 Save after editing. More...
 
 addLink ()
 Add an additional link. More...
 
 saveAddLink ()
 Save form data. More...
 
 view ()
 View object. More...
 
 infoScreen ()
 this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually, if everything works through ilCtrl in the future this may be changed More...
 
 infoScreenForward ()
 show information screen More...
 
 history ()
 
 formatInvalidLinkArray (Array $row)
 
 saveLinkCheck ()
 
 refreshLinkCheck ()
 
 __initLinkChecker ()
 
 setTabs ()
 get tabs @access public More...
 
 __prepareOutput ()
 
 addLocatorItems ()
 Functions to be overwritten. More...
 
 callDirectLink ()
 
 callLink ()
 
- Public Member Functions inherited from ilObject2GUI
 __construct ($a_id=0, $a_id_type=self::REPOSITORY_NODE_ID, $a_parent_node_id=0)
 Constructor. More...
 
executeCommand ()
 execute command More...
 
 delete ()
 Display delete confirmation form (repository/workspace switch) More...
 
 confirmedDelete ()
 Delete objects (repository/workspace switch) More...
 
 getHTML ()
 
 withReferences ()
 Final/Private declaration of unchanged parent methods. More...
 
 setCreationMode ($a_mode=true)
 if true, a creation screen is displayed the current $_GET[ref_id] don't belong to the current class! the mode is determined in ilrepositorygui More...
 
 getCreationMode ()
 get creation mode More...
 
 isVisible ()
 
 trash ()
 
 undelete ()
 
 cancelDelete ()
 
 removeFromSystem ()
 
 cloneAll ()
 
 view ()
 view object content (repository/workspace switch) More...
 
 getType ()
 Functions that must be overwritten. More...
 
 create ()
 Deleted in ilObject. More...
 
 save ()
 
 edit ()
 
 update ()
 
 cancel ()
 
 importFile ()
 Import. More...
 
- Public Member Functions inherited from ilObjectGUI
 ilObjectGUI ($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=true)
 Constructor @access public. More...
 
executeCommand ()
 execute command More...
 
 withReferences ()
 determines wether objects are referenced or not (got ref ids or not) More...
 
 setCreationMode ($a_mode=true)
 if true, a creation screen is displayed the current $_GET[ref_id] don't belong to the current class! the mode is determined in ilrepositorygui More...
 
 getCreationMode ()
 get creation mode More...
 
 getAdminTabs (&$tabs_gui)
 administration tabs show only permissions and trash folder More...
 
 getHTML ()
 
 confirmedDeleteObject ()
 confirmed deletion of object -> objects are moved to trash or deleted immediately, if trash is disabled More...
 
 cancelDeleteObject ()
 cancel deletion of object More...
 
 cancelObject ($in_rep=false)
 cancel action and go back to previous page @access public More...
 
 createObject ()
 create new object form More...
 
 cancelCreation ()
 cancel create action and go back to repository parent More...
 
 saveObject ()
 save object More...
 
 editObject ()
 edit object More...
 
 addExternalEditFormCustom (ilPropertyFormGUI $a_form)
 
 updateObject ()
 updates object entry in object_data More...
 
 getFormAction ($a_cmd, $a_formaction="")
 get form action for command (command is method name without "Object", e.g. More...
 
 isVisible ($a_ref_id, $a_type)
 
 viewObject ()
 list childs of current object More...
 
 deleteObject ($a_error=false)
 Display deletion confirmation screen. More...
 
 cloneAllObject ()
 Clone single (not container object) Method is overwritten in ilContainerGUI. More...
 
 formatInvalidLinkArray (Array $row)
 

Static Public Member Functions

static _goto ($a_target, $a_additional=null)
 
- Static Public Member Functions inherited from ilObject2GUI
static handleAfterSaveCallback (ilObject $a_obj, $a_callback_ref_id)
 After creation callback. More...
 
- Static Public Member Functions inherited from ilObjectGUI
static _gotoRepositoryRoot ($a_raise_error=false)
 Goto repository root. More...
 
static _gotoRepositoryNode ($a_ref_id, $a_cmd="frameset")
 Goto repository root. More...
 

Data Fields

const VIEW_MODE_VIEW = 1
 
const VIEW_MODE_MANAGE = 2
 
const VIEW_MODE_SORT = 3
 
const LINK_MOD_CREATE = 1
 
const LINK_MOD_EDIT = 2
 
const LINK_MOD_ADD = 3
 
- Data Fields inherited from ilObject2GUI
 $tree
 
const OBJECT_ID = 0
 
const REPOSITORY_NODE_ID = 1
 
const WORKSPACE_NODE_ID = 2
 
const REPOSITORY_OBJECT_ID = 3
 
const WORKSPACE_OBJECT_ID = 4
 
const PORTFOLIO_OBJECT_ID = 5
 
- Data Fields inherited from ilObjectGUI
const COPY_WIZARD_NEEDS_PAGE = 1
 
 $ilias
 
 $objDefinition
 
 $tpl
 
 $tree
 
 $lng
 
 $data
 
 $object
 
 $ref_id
 
 $obj_id
 
 $maxcount
 
 $formaction
 
 $return_location
 
 $target_frame
 
 $tab_target_script
 
 $actions
 
 $sub_objects
 
 $omit_locator = false
 
const CFORM_NEW = 1
 
const CFORM_IMPORT = 2
 
const CFORM_CLONE = 3
 

Protected Member Functions

 initCreateForm ($a_new_type)
 Init object creation form. More...
 
 afterSave (ilObject $a_new_object)
 Post (successful) object creation hook. More...
 
 settings ()
 Edit settings Title, Description, Sorting. More...
 
 saveSettings ()
 Save container settings. More...
 
 initFormSettings ()
 Show settings form. More...
 
 deleteParameter ()
 Delete a dynamic parameter. More...
 
 deleteParameterForm ()
 
 updateLinks ()
 Update all visible links. More...
 
 setValuesFromLink ($a_link_id)
 Set form values from link. More...
 
 checkLinkInput ($a_mode, $a_webr_id=0, $a_link_id=0)
 Check input after creating a new link. More...
 
 initFormLink ($a_mode)
 Show create/edit single link. More...
 
 isContainerMetaDataRequired ()
 Check if a new container title is required Necessary if there is more than one link. More...
 
 switchViewMode ()
 Switch between "View" "Manage" and "Sort". More...
 
 editLinks ()
 Start with manage mode. More...
 
 manage ()
 Manage links. More...
 
 showLinks ()
 Show all active links. More...
 
 sort ()
 Sort web links. More...
 
 saveSorting ()
 Save nmanual sorting. More...
 
 showToolbar ($a_tpl_var)
 Show toolbar. More...
 
 confirmDeleteLink ()
 Show delete confirmation screen. More...
 
 deleteLinks ()
 Delete links. More...
 
 deactivateLink ()
 Deactivate links. More...
 
 linkChecker ()
 Show link validation. More...
 
 activateTabs ($a_active_tab, $a_active_subtab='')
 Activate tab and subtabs. More...
 
 handleSubItemLinks ($a_target)
 
 redirectToLink ($a_ref_id, $a_obj_id, $a_url)
 
- Protected Member Functions inherited from ilObject2GUI
 afterConstructor ()
 Do anything that should be done after constructor in here. More...
 
 assignObject ()
 create object instance as internal property (repository/workspace switch) More...
 
 getAccessHandler ()
 Get access handler. More...
 
 setLocator ()
 set Locator More...
 
 deleteConfirmation ()
 Display delete confirmation form (workspace specific) More...
 
 deleteConfirmedObjects ()
 Delete objects (workspace specific) More...
 
 prepareOutput ()
 prepare output More...
 
 setTitleAndDescription ()
 called by prepare output More...
 
 showUpperIcon ()
 
 omitLocator ($a_omit=true)
 
 getTargetFrame ($a_cmd, $a_target_frame="")
 get target frame for command (command is method name without "Object", e.g. More...
 
 setTargetFrame ($a_cmd, $a_target_frame)
 set specific target frame for command More...
 
 getCenterColumnHTML ()
 Get center column. More...
 
 getRightColumnHTML ()
 Display right column. More...
 
 setColumnSettings ($column_gui)
 May be overwritten in subclasses. More...
 
 checkPermission ($a_perm, $a_cmd="")
 
 showPossibleSubObjects ()
 show possible subobjects (pulldown menu) More...
 
 redirectToRefId ()
 
 fillCloneTemplate ($a_tpl_varname, $a_type)
 Fill object clone template This method can be called from any object GUI class that wants to offer object cloning. More...
 
 fillCloneSearchTemplate ($a_tpl_varname, $a_type)
 
 searchCloneSource ()
 
 buildCloneSelect ($existing_objs)
 
 addAdminLocatorItems ()
 
 setTabs ()
 create tabs (repository/workspace switch) More...
 
 getReturnLocation ()
 Deprecated functions. More...
 
 setReturnLocation ()
 
 showActions ()
 
 getTitlesByRefId ()
 
 getTabs ()
 
 __showButton ()
 
 hitsperpageObject ()
 
 __initTableGUI ()
 
 __setTableGUIBasicData ()
 
 addLocatorItems ()
 Functions to be overwritten. More...
 
 initCreationForms ($a_new_type)
 Init creation froms. More...
 
 putObjectInTree (ilObject $a_obj, $a_parent_node_id=null)
 Add object to tree at given position. More...
 
 checkPermissionBool ($a_perm, $a_cmd="", $a_type="", $a_node_id=null)
 Check permission. More...
 
 initHeaderAction ($a_sub_type=null, $a_sub_id=null)
 Add header action menu. More...
 
 redrawHeaderAction ()
 Updating icons after ajax call. More...
 
 getPermanentLinkWidget ($a_append=null, $a_center=false)
 
 handleAutoRating (ilObject $a_new_obj)
 Activate rating automatically if parent container setting. More...
 
- Protected Member Functions inherited from ilObjectGUI
 assignObject ()
 
 prepareOutput ()
 prepare output More...
 
 setTitleAndDescription ()
 called by prepare output More...
 
 initHeaderAction ($a_sub_type=null, $a_sub_id=null)
 Add header action menu. More...
 
 insertHeaderAction ($a_list_gui)
 Insert header action into main template. More...
 
 addHeaderAction ()
 Add header action menu. More...
 
 redrawHeaderActionObject ()
 Ajax call: redraw action header only. More...
 
 showMountWebfolderIcon ()
 
 setTabs ()
 set admin tabs @access public More...
 
 setAdminTabs ()
 set admin tabs @access public More...
 
 setLocator ()
 set Locator More...
 
 addLocatorItems ()
 should be overwritten to add object specific items (repository items are preloaded) More...
 
 omitLocator ($a_omit=true)
 
 addAdminLocatorItems ($a_do_not_add_object=false)
 should be overwritten to add object specific items (repository items are preloaded) More...
 
 initCreationForms ($a_new_type)
 Init creation froms. More...
 
 getCreationFormsHTML (array $a_forms)
 Get HTML for creation forms (accordion) More...
 
 initCreateForm ($a_new_type)
 Init object creation form. More...
 
 initDidacticTemplate (ilPropertyFormGUI $form)
 Show didactic template types. More...
 
 addDidacticTemplateOptions (array &$a_options)
 Add custom templates. More...
 
 getDidacticTemplateVar ($a_type)
 Get didactic template setting from creation screen. More...
 
 putObjectInTree (ilObject $a_obj, $a_parent_node_id=null)
 Add object to tree at given position. More...
 
 afterSave (ilObject $a_new_object)
 Post (successful) object creation hook. More...
 
 initEditForm ()
 Init object edit form. More...
 
 initEditCustomForm (ilPropertyFormGUI $a_form)
 Add custom fields to update form. More...
 
 getEditFormValues ()
 Get values for edit form. More...
 
 getEditFormCustomValues (array &$a_values)
 Add values to custom edit fields. More...
 
 validateCustom (ilPropertyFormGUI $a_form)
 Validate custom values (if not possible with checkInput()) More...
 
 updateCustom (ilPropertyFormGUI $a_form)
 Insert custom update form values into object. More...
 
 afterUpdate ()
 Post (successful) object update hook. More...
 
 initImportForm ($a_new_type)
 Init object import form. More...
 
 importFileObject ($parent_id=null, $a_catch_errors=true)
 Import. More...
 
 afterImport (ilObject $a_new_object)
 Post (successful) object import hook. More...
 
 setFormAction ($a_cmd, $a_formaction)
 set specific form action for command More...
 
 getReturnLocation ($a_cmd, $a_location="")
 get return location for command (command is method name without "Object", e.g. More...
 
 setReturnLocation ($a_cmd, $a_location)
 set specific return location for command More...
 
 getTargetFrame ($a_cmd, $a_target_frame="")
 get target frame for command (command is method name without "Object", e.g. More...
 
 setTargetFrame ($a_cmd, $a_target_frame)
 set specific target frame for command More...
 
 showPossibleSubObjects ()
 show possible subobjects (pulldown menu) More...
 
 getTemplateFile ($a_cmd, $a_type="")
 get a template blockfile format: tpl. More...
 
 getTitlesByRefId ($a_ref_ids)
 get Titles of objects this method is used for error messages in methods cut/copy/paste More...
 
 getTabs (&$tabs_gui)
 get tabs abstract method. More...
 
 __showButton ($a_cmd, $a_text, $a_target='')
 
 hitsperpageObject ()
 
__initTableGUI ()
 
 __setTableGUIBasicData (&$tbl, &$result_set, $a_from="")
 standard implementation for tables use 'from' variable use different initial setting of table More...
 
 redirectToRefId ($a_ref_id, $a_cmd="")
 redirects to (repository) view per ref id usually to a container and usually used at the end of a save/import method where the object gui type (of the new object) doesn't match with the type of the current $_GET["ref_id"] value More...
 
 fillCloneTemplate ($a_tpl_varname, $a_type)
 Fill object clone template This method can be called from any object GUI class that wants to offer object cloning. More...
 
 getCenterColumnHTML ()
 Get center column. More...
 
 getRightColumnHTML ()
 Display right column. More...
 
 setColumnSettings ($column_gui)
 May be overwritten in subclasses. More...
 
 checkPermission ($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
 Check permission and redirect on error. More...
 
 checkPermissionBool ($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
 Check permission. More...
 
 enableDragDropFileUpload ()
 Enables the file upload into this object by dropping files. More...
 
 handleAutoRating (ilObject $a_new_obj)
 Activate rating automatically if parent container setting. More...
 

Additional Inherited Members

- Protected Attributes inherited from ilObject2GUI
 $object_id
 
 $node_id
 
 $creation_forms = array()
 
 $id_type = array()
 
 $parent_id
 
 $access_handler
 
- Protected Attributes inherited from ilObjectGUI
 $tmp_import_dir
 

Detailed Description

Member Function Documentation

◆ __initLinkChecker()

ilObjLinkResourceGUI::__initLinkChecker ( )

Definition at line 1292 of file class.ilObjLinkResourceGUI.php.

1293 {
1294 global $ilDB;
1295
1296 include_once './Services/LinkChecker/classes/class.ilLinkChecker.php';
1297
1298 $this->link_checker_obj =& new ilLinkChecker($ilDB,false);
1299 $this->link_checker_obj->setObjId($this->object->getId());
1300
1301 return true;
1302 }
class for checking external links in page objects Normally used in Cron jobs, but should be extensibl...
global $ilDB

References $ilDB.

Referenced by linkChecker(), and refreshLinkCheck().

+ Here is the caller graph for this function:

◆ __prepareOutput()

ilObjLinkResourceGUI::__prepareOutput ( )

Definition at line 1435 of file class.ilObjLinkResourceGUI.php.

1436 {
1437 // output objects
1438 $this->tpl->addBlockFile("CONTENT", "content", "tpl.adm_content.html");
1439 $this->tpl->addBlockFile("STATUSLINE", "statusline", "tpl.statusline.html");
1440
1441 $this->tpl->setLocator();
1442
1443 // output message
1444 if ($this->message)
1445 {
1446 ilUtil::sendInfo($this->message);
1447 }
1448
1449 // display infopanel if something happened
1451 }
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static infoPanel($a_keep=true)

References ilUtil\infoPanel(), and ilUtil\sendInfo().

Referenced by executeCommand().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _goto()

static ilObjLinkResourceGUI::_goto (   $a_target,
  $a_additional = null 
)
static

Definition at line 1558 of file class.ilObjLinkResourceGUI.php.

1559 {
1560 global $ilAccess, $ilErr, $lng;
1561
1562 if($a_additional && substr($a_additional, -3) == "wsp")
1563 {
1564 $_GET["baseClass"] = "ilsharedresourceGUI";
1565 $_GET["wsp_id"] = $a_target;
1566 include("ilias.php");
1567 exit;
1568 }
1569
1570 // Will be replaced in future releases by ilAccess::checkAccess()
1571 if ($ilAccess->checkAccess("read", "", $a_target))
1572 {
1573 ilUtil::redirect("ilias.php?baseClass=ilLinkResourceHandlerGUI&ref_id=$a_target");
1574 }
1575 else
1576 {
1577 // to do: force flat view
1578 if ($ilAccess->checkAccess("visible", "", $a_target))
1579 {
1580 ilUtil::redirect("ilias.php?baseClass=ilLinkResourceHandlerGUI&ref_id=".$a_target."&cmd=infoScreen");
1581 }
1582 else
1583 {
1584 if ($ilAccess->checkAccess("read", "", ROOT_FOLDER_ID))
1585 {
1586 ilUtil::sendFailure(sprintf($lng->txt("msg_no_perm_read_item"),
1589 }
1590 }
1591 }
1592
1593 $ilErr->raiseError($lng->txt("msg_no_perm_read"), $ilErr->FATAL);
1594 }
$_GET["client_id"]
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
static _lookupObjId($a_id)
static _lookupTitle($a_id)
lookup object title
static redirect($a_script)
http redirect to other script
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
exit
Definition: login.php:54

References $_GET, $ilErr, ilObjectGUI\$lng, ilObjectGUI\_gotoRepositoryRoot(), ilObject\_lookupObjId(), ilObject\_lookupTitle(), exit, ilUtil\redirect(), and ilUtil\sendFailure().

+ Here is the call graph for this function:

◆ activateTabs()

ilObjLinkResourceGUI::activateTabs (   $a_active_tab,
  $a_active_subtab = '' 
)
protected

Activate tab and subtabs.

Parameters
string$a_active_tab
string$a_active_subtab[optional]
Returns

Definition at line 1311 of file class.ilObjLinkResourceGUI.php.

1312 {
1313 global $ilCtrl, $ilTabs, $lng;
1314
1315 switch($a_active_tab)
1316 {
1317 case 'content':
1318 if($this->checkPermissionBool('write'))
1319 {
1320 $this->lng->loadLanguageModule('cntr');
1321
1322 $this->ctrl->setParameter($this,'switch_mode',self::VIEW_MODE_VIEW);
1323 $ilTabs->addSubTab('id_content_view',
1324 $lng->txt('view'),
1325 $this->ctrl->getLinkTarget($this,'switchViewMode')
1326 );
1327 $this->ctrl->setParameter($this,'switch_mode',self::VIEW_MODE_MANAGE);
1328 $ilTabs->addSubTab('id_content_manage',
1329 $lng->txt('cntr_manage'),
1330 $this->ctrl->getLinkTarget($this,'switchViewMode')
1331 );
1332 include_once './Modules/WebResource/classes/class.ilLinkResourceItems.php';
1333 include_once './Services/Container/classes/class.ilContainerSortingSettings.php';
1334 include_once './Services/Container/classes/class.ilContainer.php';
1335 if((ilLinkResourceItems::lookupNumberOfLinks($this->object->getId()) > 1)
1337 {
1338 $this->ctrl->setParameter($this,'switch_mode',self::VIEW_MODE_SORT);
1339 $ilTabs->addSubTab('id_content_ordering',
1340 $this->lng->txt('cntr_ordering'),
1341 $this->ctrl->getLinkTarget($this,'switchViewMode')
1342 );
1343 }
1344
1345 $ilCtrl->clearParameters($this);
1346 $ilTabs->activateSubTab($a_active_subtab);
1347 }
1348 }
1349
1350 $ilTabs->activateTab('id_content');
1351 }
static _lookupSortMode($a_obj_id)
lookup sort mode
static lookupNumberOfLinks($a_webr_id)
Get number of assigned links.
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_node_id=null)
Check permission.
global $ilCtrl
Definition: ilias.php:18

References $ilCtrl, ilObjectGUI\$lng, ilContainerSortingSettings\_lookupSortMode(), ilObject2GUI\checkPermissionBool(), ilLinkResourceItems\lookupNumberOfLinks(), and ilContainer\SORT_MANUAL.

Referenced by addLink(), confirmDeleteLink(), editLink(), manage(), saveAddLink(), showLinks(), sort(), and updateLinks().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ addLink()

ilObjLinkResourceGUI::addLink ( )

Add an additional link.

Returns

Definition at line 353 of file class.ilObjLinkResourceGUI.php.

354 {
355 $this->checkPermission('write');
356 $this->activateTabs('content','id_content_view');
357
358 $this->initFormLink(self::LINK_MOD_ADD);
359 $this->tpl->setContent($this->form->getHTML());
360 }
activateTabs($a_active_tab, $a_active_subtab='')
Activate tab and subtabs.
initFormLink($a_mode)
Show create/edit single link.
checkPermission($a_perm, $a_cmd="")

References activateTabs(), ilObject2GUI\checkPermission(), and initFormLink().

+ Here is the call graph for this function:

◆ addLocatorItems()

ilObjLinkResourceGUI::addLocatorItems ( )

Functions to be overwritten.

Reimplemented from ilObject2GUI.

Definition at line 1453 of file class.ilObjLinkResourceGUI.php.

1454 {
1455 global $ilLocator;
1456
1457 if (is_object($this->object))
1458 {
1459 $ilLocator->addItem($this->object->getTitle(),$this->ctrl->getLinkTarget($this),"",$this->object->getRefId(), "webr");
1460 }
1461 }

◆ afterSave()

ilObjLinkResourceGUI::afterSave ( ilObject  $a_new_object)
protected

Post (successful) object creation hook.

Parameters
ilObject$a_new_object

Reimplemented from ilObjectGUI.

Definition at line 170 of file class.ilObjLinkResourceGUI.php.

171 {
172 // Save link
173 $this->link->setLinkResourceId($a_new_object->getId());
174 $link_id = $this->link->add();
175 $this->link->updateValid(true);
176
177 ilUtil::sendSuccess($this->lng->txt('webr_link_added'));
178
179 // personal workspace
180 if($this->id_type == self::WORKSPACE_NODE_ID)
181 {
182 $this->ctrl->redirect($this, "editLinks");
183 }
184 // repository
185 else
186 {
187 ilUtil::redirect("ilias.php?baseClass=ilLinkResourceHandlerGUI&ref_id=".
188 $a_new_object->getRefId()."&cmd=switchViewMode&switch_mode=2");
189 }
190 }
getRefId()
get reference id @access public
getId()
get object id @access public
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.

References ilObject\getId(), ilObject\getRefId(), ilUtil\redirect(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ callDirectLink()

ilObjLinkResourceGUI::callDirectLink ( )

Definition at line 1497 of file class.ilObjLinkResourceGUI.php.

1498 {
1499 $obj_id = $this->object->getId();
1500
1501 include_once './Modules/WebResource/classes/class.ilLinkResourceItems.php';
1503 {
1505 if($url["target"])
1506 {
1507 $url["target"] = $this->handleSubItemLinks($url["target"]);
1508
1509 include_once './Modules/WebResource/classes/class.ilParameterAppender.php';
1511 {
1513 }
1514
1515 $this->redirectToLink($this->ref_id, $obj_id, $url["target"]);
1516 }
1517 }
1518 }
static _getFirstLink($a_webr_id)
Get first link item Check before with _isSingular() if there is more or less than one.
static _isSingular($a_webr_id)
Check whether there is only one active link in the web resource.
redirectToLink($a_ref_id, $a_obj_id, $a_url)
static _append($a_link_data)
static _isEnabled()
Check if dynamic parameters are enabled.
$url
Definition: shib_logout.php:72

References ilObjectGUI\$obj_id, $url, ilParameterAppender\_append(), ilLinkResourceItems\_getFirstLink(), ilParameterAppender\_isEnabled(), ilLinkResourceItems\_isSingular(), handleSubItemLinks(), and redirectToLink().

+ Here is the call graph for this function:

◆ callLink()

ilObjLinkResourceGUI::callLink ( )

Definition at line 1520 of file class.ilObjLinkResourceGUI.php.

1521 {
1522 if($_REQUEST["link_id"])
1523 {
1524 $obj_id = $this->object->getId();
1525
1526 include_once './Modules/WebResource/classes/class.ilLinkResourceItems.php';
1527 $items = new ilLinkResourceItems($obj_id);
1528 $item = $items->getItem($_REQUEST["link_id"]);
1529 if($item["target"])
1530 {
1531 $item["target"] = $this->handleSubItemLinks($item["target"]);
1532
1533 include_once './Modules/WebResource/classes/class.ilParameterAppender.php';
1535 {
1536 $item = ilParameterAppender::_append($item);
1537 }
1538 ilLoggerFactory::getLogger('webr')->debug('Redirecting to: '. $item['target']);
1539 $this->redirectToLink($this->ref_id, $obj_id, $item["target"]);
1540 }
1541 }
1542 }
Class ilObjLinkResourceGUI.
static getLogger($a_component_id)
Get component logger.
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
Definition: index.php:7

References $_REQUEST, ilObjectGUI\$obj_id, ilParameterAppender\_append(), ilParameterAppender\_isEnabled(), ilLoggerFactory\getLogger(), handleSubItemLinks(), and redirectToLink().

+ Here is the call graph for this function:

◆ checkLinkInput()

ilObjLinkResourceGUI::checkLinkInput (   $a_mode,
  $a_webr_id = 0,
  $a_link_id = 0 
)
protected

Check input after creating a new link.

Parameters
object$a_mode
object$a_webr_id[optional]
object$a_link_id[optional]
Returns

Definition at line 598 of file class.ilObjLinkResourceGUI.php.

599 {
600 $valid = $this->form->checkInput();
601
602 include_once './Modules/WebResource/classes/class.ilLinkResourceItems.php';
603 $this->link = new ilLinkResourceItems($a_webr_id);
604 $this->link->setTarget(str_replace('"', '', ilUtil::stripSlashes($this->form->getInput('tar'))));
605 $this->link->setTitle($this->form->getInput('tit'));
606 $this->link->setDescription($this->form->getInput('des'));
607 $this->link->setDisableCheckStatus($this->form->getInput('che'));
608
609 if($a_mode == self::LINK_MOD_CREATE)
610 {
611 $this->link->setActiveStatus(true);
612 }
613 else
614 {
615 $this->link->setActiveStatus($this->form->getInput('act'));
616 }
617
618 if($a_mode == self::LINK_MOD_EDIT)
619 {
620 $this->link->setValidStatus($this->form->getInput('vali'));
621 }
622 else
623 {
624 $this->link->setValidStatus(true);
625 }
626
628 {
629 return $valid;
630 }
631
632 $this->dynamic = new ilParameterAppender($a_webr_id);
633 $this->dynamic->setName($this->form->getInput('nam'));
634 $this->dynamic->setValue($this->form->getInput('val'));
635 if(!$this->dynamic->validate())
636 {
637 switch($this->dynamic->getErrorCode())
638 {
640 $this->form->getItemByPostVar('nam')->setAlert($this->lng->txt('links_no_name_given'));
641 return false;
642
644 $this->form->getItemByPostVar('val')->setAlert($this->lng->txt('links_no_value_given'));
645 return false;
646
648 // Nothing entered => no error
649 return $valid;
650 }
651 $this->dynamic = null;
652 }
653 return $valid;
654 }
const LINKS_ERR_NO_NAME
const LINKS_ERR_NO_VALUE
const LINKS_ERR_NO_NAME_VALUE
Class ilParameterAppender.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
$valid

References $valid, ilParameterAppender\_isEnabled(), LINKS_ERR_NO_NAME, LINKS_ERR_NO_NAME_VALUE, LINKS_ERR_NO_VALUE, and ilUtil\stripSlashes().

Referenced by save(), saveAddLink(), and updateLink().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ confirmDeleteLink()

ilObjLinkResourceGUI::confirmDeleteLink ( )
protected

Show delete confirmation screen.

Returns

Definition at line 1017 of file class.ilObjLinkResourceGUI.php.

1018 {
1019 $this->checkPermission('write');
1020 $this->activateTabs('content','id_content_view');
1021
1022 $link_ids = array();
1023
1024 if(is_array($_POST['link_ids']))
1025 {
1026 $link_ids =$_POST['link_ids'];
1027 }
1028 elseif(isset($_GET['link_id']))
1029 {
1030 $link_ids = array($_GET['link_id']);
1031 }
1032
1033 if(!count($link_ids) > 0)
1034 {
1035 ilUtil::sendFailure($this->lng->txt('select_one'));
1036 $this->view();
1037 return false;
1038 }
1039
1040 include_once './Modules/WebResource/classes/class.ilLinkResourceItems.php';
1041 $links = new ilLinkResourceItems($this->object->getId());
1042
1043 include_once 'Services/Utilities/classes/class.ilConfirmationGUI.php';
1044 $confirm = new ilConfirmationGUI();
1045 $confirm->setFormAction($this->ctrl->getFormAction($this,'view'));
1046 $confirm->setHeaderText($this->lng->txt('webr_sure_delete_items'));
1047 $confirm->setConfirm($this->lng->txt('delete'), 'deleteLinks');
1048 $confirm->setCancel($this->lng->txt('cancel'), 'view');
1049
1050 foreach($link_ids as $link_id)
1051 {
1052 $link = $links->getItem($link_id);
1053 $confirm->addItem('link_ids[]', $link_id,$link['title']);
1054 }
1055 $this->tpl->setContent($confirm->getHTML());
1056 }
Confirmation screen class.
$_POST['username']
Definition: cron.php:12

References $_GET, $_POST, activateTabs(), ilObject2GUI\checkPermission(), ilUtil\sendFailure(), and view().

+ Here is the call graph for this function:

◆ deactivateLink()

ilObjLinkResourceGUI::deactivateLink ( )
protected

Deactivate links.

Returns

Definition at line 1083 of file class.ilObjLinkResourceGUI.php.

1084 {
1085 global $ilCtrl;
1086
1087 $this->checkPermission('write');
1088
1089 include_once './Modules/WebResource/classes/class.ilLinkResourceItems.php';
1090 $links = new ilLinkResourceItems($this->object->getId());
1091
1092 if(!$_GET['link_id'])
1093 {
1094 ilUtil::sendFailure($this->lng->txt('select_one'),true);
1095 $ilCtrl->redirect($this,'view');
1096 }
1097
1098 $links->setLinkId((int) $_GET['link_id']);
1099 $links->updateActive(false);
1100
1101 ilUtil::sendSuccess($this->lng->txt('webr_inactive_success'),true);
1102 $ilCtrl->redirect($this,'view');
1103 }

References $_GET, $ilCtrl, ilObject2GUI\checkPermission(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ deleteLinks()

ilObjLinkResourceGUI::deleteLinks ( )
protected

Delete links.

Returns

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

1063 {
1064 global $ilCtrl;
1065
1066 $this->checkPermission('write');
1067
1068 include_once './Modules/WebResource/classes/class.ilLinkResourceItems.php';
1069 $links = new ilLinkResourceItems($this->object->getId());
1070
1071 foreach($_POST['link_ids'] as $link_id)
1072 {
1073 $links->delete($link_id);
1074 }
1075 ilUtil::sendSuccess($this->lng->txt('webr_deleted_items'),true);
1076 $ilCtrl->redirect($this,'view');
1077 }

References $_POST, $ilCtrl, ilObject2GUI\checkPermission(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ deleteParameter()

ilObjLinkResourceGUI::deleteParameter ( )
protected

Delete a dynamic parameter.

Returns

Definition at line 407 of file class.ilObjLinkResourceGUI.php.

408 {
409 global $ilCtrl;
410
411 $this->checkPermission('write');
412
413 $this->ctrl->setParameter($this,'link_id',(int) $_GET['link_id']);
414
415 if(!isset($_GET['param_id']))
416 {
417 ilUtil::sendFailure($this->lng->txt('select_one'),TRUE);
418 $ilCtrl->redirect($this,'view');
419 }
420
421 include_once './Modules/WebResource/classes/class.ilParameterAppender.php';
422 $param = new ilParameterAppender($this->object->getId());
423 $param->delete((int) $_GET['param_id']);
424
425 ilUtil::sendSuccess($this->lng->txt('links_parameter_deleted'),true);
426 $ilCtrl->redirect($this,'editLinks');
427 }

References $_GET, $ilCtrl, ilObject2GUI\checkPermission(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ deleteParameterForm()

ilObjLinkResourceGUI::deleteParameterForm ( )
protected

Definition at line 429 of file class.ilObjLinkResourceGUI.php.

430 {
431 global $ilCtrl;
432
433 $this->checkPermission('write');
434
435 if(!isset($_GET['param_id']))
436 {
437 ilUtil::sendFailure($this->lng->txt('select_one'),TRUE);
438 $ilCtrl->redirect($this,'view');
439 }
440
441 include_once './Modules/WebResource/classes/class.ilParameterAppender.php';
442 $param = new ilParameterAppender($this->object->getId());
443 $param->delete((int) $_GET['param_id']);
444
445 ilUtil::sendSuccess($this->lng->txt('links_parameter_deleted'),true);
446 $ilCtrl->redirect($this,'view');
447
448 }

References $_GET, $ilCtrl, ilObject2GUI\checkPermission(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ editLink()

ilObjLinkResourceGUI::editLink ( )

Edit a single link.

Returns

Definition at line 298 of file class.ilObjLinkResourceGUI.php.

299 {
300 global $ilCtrl;
301
302 $this->checkPermission('write');
303 $this->activateTabs('content','id_content_view');
304
305 if(!(int) $_GET['link_id'])
306 {
307 ilUtil::sendFailure($this->lng->txt('select_one'),true);
308 $ilCtrl->redirect($this,'view');
309 }
310
311 $this->initFormLink(self::LINK_MOD_EDIT);
312 $this->setValuesFromLink((int) $_GET['link_id']);
313 $this->tpl->setContent($this->form->getHTML());
314 }
setValuesFromLink($a_link_id)
Set form values from link.

References $_GET, $ilCtrl, activateTabs(), ilObject2GUI\checkPermission(), initFormLink(), ilUtil\sendFailure(), and setValuesFromLink().

+ Here is the call graph for this function:

◆ editLinks()

ilObjLinkResourceGUI::editLinks ( )
protected

Start with manage mode.

Returns

Definition at line 860 of file class.ilObjLinkResourceGUI.php.

861 {
862 $_GET['switch_mode'] = self::VIEW_MODE_MANAGE;
863 $this->switchViewMode();
864 }
switchViewMode()
Switch between "View" "Manage" and "Sort".

References $_GET, switchViewMode(), and VIEW_MODE_MANAGE.

+ Here is the call graph for this function:

◆ executeCommand()

ilObjLinkResourceGUI::executeCommand ( )

execute command

Reimplemented from ilObject2GUI.

Definition at line 37 of file class.ilObjLinkResourceGUI.php.

38 {
39 global $ilCtrl, $ilTabs, $ilErr, $ilAccess;
40
41
42 //if($this->ctrl->getTargetScript() == 'link_resources.php')
43 if($_GET["baseClass"] == 'ilLinkResourceHandlerGUI')
44 {
45 $_GET['view_mode'] = isset($_GET['switch_mode']) ? $_GET['switch_mode'] : $_GET['view_mode'];
46 $ilCtrl->saveParameter($this, 'view_mode');
47 $this->__prepareOutput();
48 }
49
50 $this->lng->loadLanguageModule("webr");
51
52 $next_class = $this->ctrl->getNextClass($this);
53 $cmd = $this->ctrl->getCmd();
54
55 switch($next_class)
56 {
57 case "ilinfoscreengui":
58 $this->prepareOutput();
59 $this->infoScreenForward(); // forwards command
60 break;
61
62 case 'ilobjectmetadatagui':
63 $this->checkPermission('write'); // #18563
64 $this->prepareOutput();
65 $ilTabs->activateTab('id_meta_data');
66 include_once 'Services/Object/classes/class.ilObjectMetaDataGUI.php';
67 $md_gui = new ilObjectMetaDataGUI($this->object);
68 $this->ctrl->forwardCommand($md_gui);
69 break;
70
71 case 'ilpermissiongui':
72 $this->prepareOutput();
73 $ilTabs->activateTab('id_permissions');
74 include_once("Services/AccessControl/classes/class.ilPermissionGUI.php");
75 $perm_gui =& new ilPermissionGUI($this);
76 $ret =& $this->ctrl->forwardCommand($perm_gui);
77 break;
78
79 case 'ilobjectcopygui':
80 $this->prepareOutput();
81 include_once './Services/Object/classes/class.ilObjectCopyGUI.php';
82 $cp = new ilObjectCopyGUI($this);
83 $cp->setType('webr');
84 $this->ctrl->forwardCommand($cp);
85 break;
86
87 case 'ilexportgui':
88 $this->prepareOutput();
89 $this->tabs_gui->setTabActive('export');
90 include_once './Services/Export/classes/class.ilExportGUI.php';
91 $exp = new ilExportGUI($this);
92 $exp->addFormat('xml');
93 $this->ctrl->forwardCommand($exp);
94 break;
95
96 case "ilcommonactiondispatchergui":
97 include_once("Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
99 $this->ctrl->forwardCommand($gui);
100 break;
101
102 case "ilpropertyformgui":
103 include_once './Services/Form/classes/class.ilPropertyFormGUI.php';
104 $this->initFormLink(self::LINK_MOD_EDIT);
105 $this->ctrl->forwardCommand($this->form);
106 break;
107
108 case "ilinternallinkgui":
109 $this->lng->loadLanguageModule("content");
110 require_once("./Services/Link/classes/class.ilInternalLinkGUI.php");
111 $link_gui = new ilInternalLinkGUI("RepositoryItem", 0);
112 $link_gui->filterLinkType("PageObject");
113 $link_gui->filterLinkType("GlossaryItem");
114 $link_gui->filterLinkType("RepositoryItem");
115 $link_gui->setFilterWhiteList(true);
116 $link_gui->setMode("asynch");
117 $ilCtrl->forwardCommand($link_gui);
118 break;
119
120 default:
121 if(!$cmd)
122 {
123 $this->ctrl->setCmd("view");
124 }
125 parent::executeCommand();
126 }
127
128 if(!$this->getCreationMode())
129 {
130 // Fill meta header tags
131 include_once('Services/MetaData/classes/class.ilMDUtils.php');
132 ilMDUtils::_fillHTMLMetaTags($this->object->getId(),$this->object->getId(),'webr');
133
134 $this->addHeaderAction();
135 }
136 return true;
137 }
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
Export User Interface Class.
Class ilInternalLinkGUI.
static _fillHTMLMetaTags($a_rbac_id, $a_obj_id, $a_type)
Fill html meta tags.
infoScreenForward()
show information screen
prepareOutput()
prepare output
getCreationMode()
get creation mode
GUI class for the workflow of copying objects.
addHeaderAction()
Add header action menu.
Class ilObjectMetaDataGUI.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
$cmd
Definition: sahs_server.php:35

References $_GET, $cmd, $ilCtrl, $ilErr, $ret, __prepareOutput(), ilMDUtils\_fillHTMLMetaTags(), ilObjectGUI\addHeaderAction(), ilObject2GUI\checkPermission(), ilObject2GUI\getCreationMode(), ilCommonActionDispatcherGUI\getInstanceFromAjaxCall(), infoScreenForward(), initFormLink(), and ilObject2GUI\prepareOutput().

+ Here is the call graph for this function:

◆ formatInvalidLinkArray()

ilObjLinkResourceGUI::formatInvalidLinkArray ( Array  $row)
See also
ilLinkCheckerGUIRowHandling::formatInvalidLinkArray()
Parameters
arrayUnformatted array
Returns
array Formatted array @access public

Implements ilLinkCheckerGUIRowHandling.

Definition at line 1167 of file class.ilObjLinkResourceGUI.php.

1168 {
1169 $this->object->items_obj->readItem($row['page_id']);
1170 $row['title'] = $this->object->items_obj->getTitle();
1171
1172 require_once 'Services/UIComponent/AdvancedSelectionList/classes/class.ilAdvancedSelectionListGUI.php';
1174 $actions->setSelectionHeaderClass('small');
1175 $actions->setItemLinkClass('xsmall');
1176 $actions->setListTitle($this->lng->txt('actions'));
1177 $actions->setId($row['page_id']);
1178 $this->ctrl->setParameter($this, 'link_id', $row['page_id']);
1179 $actions->addItem(
1180 $this->lng->txt('edit'),
1181 '',
1182 $this->ctrl->getLinkTarget($this, 'editLink')
1183 );
1184 $this->ctrl->clearParameters($this);
1185 $row['action_html'] = $actions->getHTML();
1186
1187 return $row;
1188 }
User interface class for advanced drop-down selection lists.

References ilObjectGUI\$actions, and $row.

◆ getType()

ilObjLinkResourceGUI::getType ( )

Functions that must be overwritten.

Reimplemented from ilObject2GUI.

Definition at line 32 of file class.ilObjLinkResourceGUI.php.

33 {
34 return "webr";
35 }

◆ handleSubItemLinks()

ilObjLinkResourceGUI::handleSubItemLinks (   $a_target)
protected

Definition at line 1463 of file class.ilObjLinkResourceGUI.php.

1464 {
1465 // #15647 - handle internal links
1466 include_once "Services/Form/classes/class.ilFormPropertyGUI.php";
1467 include_once "Services/Form/classes/class.ilLinkInputGUI.php";
1468 if(ilLinkInputGUI::isInternalLink($a_target))
1469 {
1470 include_once("./Services/Link/classes/class.ilLink.php");
1471
1472 // #10612
1473 $parts = explode("|", $a_target);
1474
1475 if ($parts[0] == "term")
1476 {
1477 // #16894
1479 0,
1480 "git",
1481 true,
1482 "&target=git_".$parts[1]
1483 );
1484 }
1485
1486 if ($parts[0] == "page")
1487 {
1488 $parts[0] = "pg";
1489 }
1490
1491 $a_target = ilLink::_getStaticLink($parts[1], $parts[0]);
1492 }
1493
1494 return $a_target;
1495 }
static isInternalLink($a_value)

References ilLink\_getStaticLink(), and ilLinkInputGUI\isInternalLink().

Referenced by callDirectLink(), and callLink().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ history()

ilObjLinkResourceGUI::history ( )

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

1147 {
1148 global $ilTabs;
1149
1150 $this->checkPermission('write');
1151 $ilTabs->activateTab('id_history');
1152
1153 include_once("./Services/History/classes/class.ilHistoryTableGUI.php");
1154 $hist_gui = new ilHistoryTableGUI($this, "history", $this->object->getId(), $this->object->getType);
1155 $hist_gui->initTable();
1156 $this->tpl->setContent($hist_gui->getHTML());
1157 }
Copyright (c) 1998-2014 ILIAS open source, Extended GPL, see docs/LICENSE Date: 24....

References ilObject2GUI\checkPermission().

+ Here is the call graph for this function:

◆ infoScreen()

ilObjLinkResourceGUI::infoScreen ( )

this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually, if everything works through ilCtrl in the future this may be changed

Definition at line 1111 of file class.ilObjLinkResourceGUI.php.

1112 {
1113 $this->ctrl->setCmd("showSummary");
1114 $this->ctrl->setCmdClass("ilinfoscreengui");
1115 $this->infoScreenForward();
1116 }

References infoScreenForward().

+ Here is the call graph for this function:

◆ infoScreenForward()

ilObjLinkResourceGUI::infoScreenForward ( )

show information screen

Definition at line 1121 of file class.ilObjLinkResourceGUI.php.

1122 {
1123 global $ilTabs;
1124
1125 $this->checkPermission('visible');
1126 $ilTabs->activateTab('id_info');
1127
1128 include_once("./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
1129 $info = new ilInfoScreenGUI($this);
1130
1131 $info->enablePrivateNotes();
1132
1133 // standard meta data
1134 $info->addMetaDataSections($this->object->getId(),0, $this->object->getType());
1135
1136 if($this->id_type == self::WORKSPACE_NODE_ID)
1137 {
1138 $info->addProperty($this->lng->txt("perma_link"), $this->getPermanentLinkWidget());
1139 }
1140
1141 // forward the command
1142 $this->ctrl->forwardCommand($info);
1143 }
Class ilInfoScreenGUI.
$info
Definition: example_052.php:80

References $info, and ilObject2GUI\checkPermission().

Referenced by executeCommand(), and infoScreen().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initCreateForm()

ilObjLinkResourceGUI::initCreateForm (   $a_new_type)
protected

Init object creation form.

Parameters
string$a_new_type
Returns
ilPropertyFormGUI

Reimplemented from ilObjectGUI.

Definition at line 139 of file class.ilObjLinkResourceGUI.php.

140 {
141 $this->initFormLink(self::LINK_MOD_CREATE);
142 return $this->form;
143 }

References initFormLink().

+ Here is the call graph for this function:

◆ initFormLink()

ilObjLinkResourceGUI::initFormLink (   $a_mode)
protected

Show create/edit single link.

Parameters
intform mode
Returns

Definition at line 662 of file class.ilObjLinkResourceGUI.php.

663 {
664 global $ilTabs;
665
666 $ilTabs->activateTab("id_content");
667
668 include_once './Services/Form/classes/class.ilPropertyFormGUI.php';
669 $this->form = new ilPropertyFormGUI();
670
671 switch($a_mode)
672 {
674 // Header
675 $this->ctrl->setParameter($this,'new_type','webr');
676 $this->form->setTitle($this->lng->txt('webr_new_link'));
677 $this->form->setTableWidth('600px');
678
679 // Buttons
680 $this->form->addCommandButton('save', $this->lng->txt('webr_add'));
681 $this->form->addCommandButton('cancel', $this->lng->txt('cancel'));
682 break;
683
685 // Header
686 $this->form->setTitle($this->lng->txt('webr_new_link'));
687
688 // Buttons
689 $this->form->addCommandButton('saveAddLink', $this->lng->txt('webr_add'));
690 $this->form->addCommandButton('view', $this->lng->txt('cancel'));
691 break;
692
694 // Header
695 $this->ctrl->setParameter($this,'link_id',(int) $_REQUEST['link_id']);
696 $this->form->setTitle($this->lng->txt('webr_edit'));
697
698 // Buttons
699 $this->form->addCommandButton('updateLink', $this->lng->txt('save'));
700 $this->form->addCommandButton('view', $this->lng->txt('cancel'));
701 break;
702 }
703
704
705 $this->form->setFormAction($this->ctrl->getFormAction($this));
706
707 if($a_mode == self::LINK_MOD_ADD and $this->isContainerMetaDataRequired())
708 {
709 ilUtil::sendInfo($this->lng->txt('webr_container_info'));
710
711
712 $this->form->setTitle($this->lng->txt('webr_edit_list'));
713
714 // List Title
715 $title = new ilTextInputGUI($this->lng->txt('webr_list_title'),'lti');
716 $title->setRequired(true);
717 $title->setSize(40);
718 $title->setMaxLength(127);
719 $this->form->addItem($title);
720
721 // List Description
722 $desc = new ilTextAreaInputGUI($this->lng->txt('webr_list_desc'),'tde');
723 $desc->setRows(3);
724 $desc->setCols(40);
725 $this->form->addItem($desc);
726
727 // Addtional section
728 $sect = new ilFormSectionHeaderGUI();
729 $sect->setTitle($this->lng->txt('webr_add'));
730 $this->form->addItem($sect);
731 }
732
733 // Target
734 /*
735 $tar = new ilTextInputGUI($this->lng->txt('webr_link_target'),'tar');
736 $tar->setValue("http://");
737
738 $tar->setSize(40);
739 $tar->setMaxLength(500);
740 */
741 include_once 'Services/Form/classes/class.ilLinkInputGUI.php';
742 $tar = new ilLinkInputGUI($this->lng->txt('webr_link_target'),'tar');
743 $tar->setInternalLinkFilterTypes(array("PageObject", "GlossaryItem", "RepositoryItem"));
744
745 $tar->setRequired(true);
746 $this->form->addItem($tar);
747
748 // Title
749 $tit = new ilTextInputGUI($this->lng->txt('webr_link_title'),'tit');
750 $tit->setRequired(true);
751 $tit->setSize(40);
752 $tit->setMaxLength(127);
753 $this->form->addItem($tit);
754
755 // Description
756 $des = new ilTextAreaInputGUI($this->lng->txt('description'),'des');
757 $des->setRows(3);
758 $des->setCols(40);
759 $this->form->addItem($des);
760
761
762 if($a_mode != self::LINK_MOD_CREATE)
763 {
764 // Active
765 $act = new ilCheckboxInputGUI($this->lng->txt('active'),'act');
766 $act->setChecked(true);
767 $act->setValue(1);
768 $this->form->addItem($act);
769
770 // Check
771 $che = new ilCheckboxInputGUI($this->lng->txt('webr_disable_check'),'che');
772 $che->setValue(1);
773 $this->form->addItem($che);
774 }
775
776 // Valid
777 if($a_mode == self::LINK_MOD_EDIT)
778 {
779 $val = new ilCheckboxInputGUI($this->lng->txt('valid'),'vali');
780 $this->form->addItem($val);
781 }
782
783 if(ilParameterAppender::_isEnabled() && $a_mode != self::LINK_MOD_CREATE)
784 {
785 $dyn = new ilNonEditableValueGUI($this->lng->txt('links_dyn_parameter'));
786 $dyn->setInfo($this->lng->txt('links_dynamic_info'));
787
788
789 if(count($links = ilParameterAppender::_getParams((int) $_GET['link_id'])))
790 {
791 $ex = new ilCustomInputGUI($this->lng->txt('links_existing_params'),'ex');
792 $dyn->addSubItem($ex);
793
794 foreach($links as $id => $link)
795 {
796 $p = new ilCustomInputGUI();
797
798 $ptpl = new ilTemplate('tpl.link_dyn_param_edit.html',true,true,'Modules/WebResource');
799 $ptpl->setVariable('INFO_TXT',ilParameterAppender::parameterToInfo($link['name'], $link['value']));
800 $this->ctrl->setParameter($this,'param_id',$id);
801 $ptpl->setVariable('LINK_DEL',$this->ctrl->getLinkTarget($this,'deleteParameterForm'));
802 $ptpl->setVariable('LINK_TXT',$this->lng->txt('delete'));
803 $p->setHtml($ptpl->get());
804 $dyn->addSubItem($p);
805 }
806 }
807
808 // Existing parameters
809
810 // New parameter
811 if($a_mode != self::LINK_MOD_CREATE)
812 {
813 #$new = new ilCustomInputGUI($this->lng->txt('links_add_param'),'');
814 #$dyn->addSubItem($new);
815 }
816
817 // Dynyamic name
818 $nam = new ilTextInputGUI($this->lng->txt('links_name'),'nam');
819 $nam->setSize(12);
820 $nam->setMaxLength(128);
821 $dyn->addSubItem($nam);
822
823 // Dynamic value
824 $val = new ilSelectInputGUI($this->lng->txt('links_value'),'val');
825 $val->setOptions(ilParameterAppender::_getOptionSelect());
826 $val->setValue(0);
827 $dyn->addSubItem($val);
828
829 $this->form->addItem($dyn);
830 }
831 }
This class represents a checkbox property in a property form.
This class represents a custom property in a property form.
This class represents a section header in a property form.
This class represents a external and/or internal link in a property form.
This class represents a non editable value in a property form.
isContainerMetaDataRequired()
Check if a new container title is required Necessary if there is more than one link.
static parameterToInfo($a_name, $a_value)
Get info text describing an existing dynamic link.
static _getOptionSelect()
Get options as array.
static _getParams($a_link_id)
Get dynamic parameter definitions.
This class represents a property form user interface.
This class represents a selection list property in a property form.
special template class to simplify handling of ITX/PEAR
This class represents a text area property in a property form.
This class represents a text property in a property form.

References $_GET, $_REQUEST, ilParameterAppender\_getOptionSelect(), ilParameterAppender\_getParams(), ilParameterAppender\_isEnabled(), isContainerMetaDataRequired(), LINK_MOD_ADD, LINK_MOD_CREATE, LINK_MOD_EDIT, ilParameterAppender\parameterToInfo(), and ilUtil\sendInfo().

Referenced by addLink(), editLink(), executeCommand(), initCreateForm(), save(), saveAddLink(), and updateLink().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initFormSettings()

ilObjLinkResourceGUI::initFormSettings ( )
protected

Show settings form.

Returns

Definition at line 245 of file class.ilObjLinkResourceGUI.php.

246 {
247 include_once './Services/Form/classes/class.ilPropertyFormGUI.php';
248 $this->form = new ilPropertyFormGUI();
249 $this->form->setFormAction($this->ctrl->getFormAction($this,'saveSettings'));
250 $this->form->setTitle($this->lng->txt('webr_edit_settings'));
251
252 // Title
253 $tit = new ilTextInputGUI($this->lng->txt('webr_list_title'),'tit');
254 $tit->setValue($this->object->getTitle());
255 $tit->setRequired(true);
256 $tit->setSize(40);
257 $tit->setMaxLength(127);
258 $this->form->addItem($tit);
259
260 // Description
261 $des = new ilTextAreaInputGUI($this->lng->txt('webr_list_desc'),'des');
262 $des->setValue($this->object->getDescription());
263 $des->setCols(40);
264 $des->setRows(3);
265 $this->form->addItem($des);
266
267 // Sorting
268 include_once './Services/Container/classes/class.ilContainerSortingSettings.php';
269 include_once './Services/Container/classes/class.ilContainer.php';
270
271 $sor = new ilRadioGroupInputGUI($this->lng->txt('webr_sorting'),'sor');
272 $sor->setRequired(true);
273 include_once './Services/Container/classes/class.ilContainerSortingSettings.php';
274 $sor->setValue(ilContainerSortingSettings::_lookupSortMode($this->object->getId()));
275
276 $opt = new ilRadioOption(
277 $this->lng->txt('webr_sort_title'),
279 );
280 $sor->addOption($opt);
281
282 $opm = new ilRadioOption(
283 $this->lng->txt('webr_sort_manual'),
285 );
286 $sor->addOption($opm);
287 $this->form->addItem($sor);
288
289 $this->form->addCommandButton('saveSettings', $this->lng->txt('save'));
290 $this->form->addCommandButton('view', $this->lng->txt('cancel'));
291 }
This class represents a property in a property form.
This class represents an option in a radio group.

References ilContainerSortingSettings\_lookupSortMode(), ilContainer\SORT_MANUAL, and ilContainer\SORT_TITLE.

Referenced by saveSettings(), and settings().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isContainerMetaDataRequired()

ilObjLinkResourceGUI::isContainerMetaDataRequired ( )
protected

Check if a new container title is required Necessary if there is more than one link.

Returns

Definition at line 838 of file class.ilObjLinkResourceGUI.php.

839 {
840 include_once './Modules/WebResource/classes/class.ilLinkResourceItems.php';
841 return ilLinkResourceItems::lookupNumberOfLinks($this->object->getId()) == 1;
842 }

References ilLinkResourceItems\lookupNumberOfLinks().

Referenced by initFormLink(), saveAddLink(), updateLink(), and updateLinks().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ linkChecker()

ilObjLinkResourceGUI::linkChecker ( )
protected

Show link validation.

Returns

Definition at line 1194 of file class.ilObjLinkResourceGUI.php.

1195 {
1196 global $ilias, $ilUser, $tpl, $ilTabs;
1197
1198 $this->checkPermission('write');
1199 $ilTabs->activateTab('id_link_check');
1200
1201 $this->__initLinkChecker();
1202 $this->object->initLinkResourceItemsObject();
1203
1204 require_once './Services/LinkChecker/classes/class.ilLinkCheckerTableGUI.php';
1205
1206 $toolbar = new ilToolbarGUI();
1207
1208 if((bool)$ilias->getSetting('cron_web_resource_check'))
1209 {
1210 include_once './Services/LinkChecker/classes/class.ilLinkCheckNotify.php';
1211 include_once 'Services/Form/classes/class.ilPropertyFormGUI.php';
1212
1213 $chb = new ilCheckboxInputGUI($this->lng->txt('link_check_message_a'), 'link_check_message');
1214 $chb->setValue(1);
1215 $chb->setChecked((bool)ilLinkCheckNotify::_getNotifyStatus($ilUser->getId(), $this->object->getId()));
1216 $chb->setOptionTitle($this->lng->txt('link_check_message_b'));
1217
1218 $toolbar->addInputItem($chb);
1219 $toolbar->addFormButton($this->lng->txt('save'), 'saveLinkCheck');
1220 $toolbar->setFormAction($this->ctrl->getLinkTarget($this, 'saveLinkCheck'));
1221 }
1222
1223 $tgui = new ilLinkCheckerTableGUI($this, 'linkChecker');
1224 $tgui->setLinkChecker($this->link_checker_obj)
1225 ->setRowHandler($this)
1226 ->setRefreshButton($this->lng->txt('refresh'), 'refreshLinkCheck');
1227
1228 return $tpl->setContent($tgui->prepareHTML()->getHTML().$toolbar->getHTML());
1229 }
_getNotifyStatus($a_usr_id, $a_obj_id)
class ilLinkCheckerTableGUI
global $ilUser
Definition: imgupload.php:15

References ilObjectGUI\$ilias, $ilUser, ilObjectGUI\$tpl, __initLinkChecker(), ilLinkCheckNotify\_getNotifyStatus(), and ilObject2GUI\checkPermission().

Referenced by refreshLinkCheck(), and saveLinkCheck().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ manage()

ilObjLinkResourceGUI::manage ( )
protected

Manage links.

Returns

Definition at line 915 of file class.ilObjLinkResourceGUI.php.

916 {
917 $this->checkPermission('write');
918 $this->activateTabs('content','id_content_manage');
919
920 $this->tpl->addBlockFile('ADM_CONTENT','adm_content','tpl.webr_manage.html','Modules/WebResource');
921 $this->showToolbar('ACTION_BUTTONS');
922
923 include_once './Modules/WebResource/classes/class.ilWebResourceEditableLinkTableGUI.php';
924 $table = new ilWebResourceEditableLinkTableGUI($this,'view');
925 $table->parse();
926
927 include_once './Services/Link/classes/class.ilInternalLinkGUI.php';
929
930 $this->tpl->addJavaScript("Modules/WebResource/js/intLink.js");
931 $this->tpl->addJavascript("Services/Form/js/Form.js");
932
933 $this->tpl->setVariable('TABLE_LINKS',$table->getHTML().$js);
934 }
getInitHTML($a_url, $a_move_to_body=false)
Get initialisation HTML to use interna link editing.
showToolbar($a_tpl_var)
Show toolbar.
$js

References $js, activateTabs(), ilObject2GUI\checkPermission(), ilInternalLinkGUI\getInitHTML(), and showToolbar().

Referenced by view().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ redirectToLink()

ilObjLinkResourceGUI::redirectToLink (   $a_ref_id,
  $a_obj_id,
  $a_url 
)
protected

Definition at line 1544 of file class.ilObjLinkResourceGUI.php.

1545 {
1546 global $ilUser;
1547
1548 if($a_url)
1549 {
1550 require_once('Services/Tracking/classes/class.ilChangeEvent.php');
1551 ilChangeEvent::_recordReadEvent("webr", $a_ref_id, $a_obj_id,
1552 $ilUser->getId());
1553
1554 ilUtil::redirect($a_url);
1555 }
1556 }
_recordReadEvent($a_type, $a_ref_id, $obj_id, $usr_id, $isCatchupWriteEvents=true, $a_ext_rc=false, $a_ext_time=false)
Records a read event and catches up with write events.

References $ilUser, ilChangeEvent\_recordReadEvent(), and ilUtil\redirect().

Referenced by callDirectLink(), and callLink().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ refreshLinkCheck()

ilObjLinkResourceGUI::refreshLinkCheck ( )

Definition at line 1258 of file class.ilObjLinkResourceGUI.php.

1259 {
1260 $this->__initLinkChecker();
1261
1262 if(!$this->link_checker_obj->checkPear())
1263 {
1264 ilUtil::sendFailure($this->lng->txt('missing_pear_library'));
1265 $this->linkChecker();
1266
1267 return false;
1268 }
1269
1270
1271 $this->object->initLinkResourceItemsObject();
1272
1273 // Set all link to valid. After check invalid links will be set to invalid
1274 $this->object->items_obj->updateValidByCheck();
1275
1276 foreach($this->link_checker_obj->checkWebResourceLinks() as $invalid)
1277 {
1278 $this->object->items_obj->readItem($invalid['page_id']);
1279 $this->object->items_obj->setActiveStatus(false);
1280 $this->object->items_obj->setValidStatus(false);
1281 $this->object->items_obj->update(false);
1282 }
1283
1284 $this->object->items_obj->updateLastCheck();
1285 ilUtil::sendSuccess($this->lng->txt('link_checker_refreshed'));
1286
1287 $this->linkChecker();
1288
1289 return true;
1290 }
linkChecker()
Show link validation.

References __initLinkChecker(), linkChecker(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ save()

ilObjLinkResourceGUI::save ( )

Save new object @access public.

Reimplemented from ilObject2GUI.

Definition at line 149 of file class.ilObjLinkResourceGUI.php.

150 {
151 global $ilCtrl;
152
153 $this->initFormLink(self::LINK_MOD_CREATE);
154 if($this->checkLinkInput(self::LINK_MOD_CREATE,0,0))
155 {
156 // Save new object
157 $_POST['title'] = $_POST['tit'];
158 $_POST['desc'] = $_POST['des'];
159 parent::save();
160 }
161 else
162 {
163 // Data incomplete or invalid
164 ilUtil::sendFailure($this->lng->txt('err_check_input'));
165 $this->form->setValuesByPost();
166 $this->tpl->setContent($this->form->getHTML());
167 }
168 }
checkLinkInput($a_mode, $a_webr_id=0, $a_link_id=0)
Check input after creating a new link.

References $_POST, $ilCtrl, checkLinkInput(), initFormLink(), and ilUtil\sendFailure().

+ Here is the call graph for this function:

◆ saveAddLink()

ilObjLinkResourceGUI::saveAddLink ( )

Save form data.

Returns

Definition at line 366 of file class.ilObjLinkResourceGUI.php.

367 {
368 global $ilCtrl;
369
370 $this->checkPermission('write');
371
372 $this->initFormLink(self::LINK_MOD_ADD);
373 if($this->checkLinkInput(self::LINK_MOD_ADD,$this->object->getId(),0))
374 {
375 if($this->isContainerMetaDataRequired())
376 {
377 // Save list data
378 $this->object->setTitle($this->form->getInput('lti'));
379 $this->object->setDescription($this->form->getInput('tde'));
380 $this->object->update();
381 }
382
383 // Save Link
384 $link_id = $this->link->add();
385 $this->link->updateValid(true);
386
387 // Dynamic parameters
388 if(ilParameterAppender::_isEnabled() and is_object($this->dynamic))
389 {
390 $this->dynamic->add($link_id);
391 }
392 ilUtil::sendSuccess($this->lng->txt('webr_link_added'),true);
393 $ilCtrl->redirect($this,'view');
394 }
395 // Error handling
396 ilUtil::sendFailure($this->lng->txt('err_check_input'));
397 $this->form->setValuesByPost();
398
399 $this->activateTabs('content','id_content_view');
400 $this->tpl->setContent($this->form->getHTML());
401 }

References $ilCtrl, ilParameterAppender\_isEnabled(), activateTabs(), checkLinkInput(), ilObject2GUI\checkPermission(), initFormLink(), isContainerMetaDataRequired(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ saveLinkCheck()

ilObjLinkResourceGUI::saveLinkCheck ( )

Definition at line 1231 of file class.ilObjLinkResourceGUI.php.

1232 {
1233 global $ilDB,$ilUser;
1234
1235 include_once './Services/LinkChecker/classes/class.ilLinkCheckNotify.php';
1236
1237 $link_check_notify =& new ilLinkCheckNotify($ilDB);
1238 $link_check_notify->setUserId($ilUser->getId());
1239 $link_check_notify->setObjId($this->object->getId());
1240
1241 if($_POST['link_check_message'])
1242 {
1243 ilUtil::sendSuccess($this->lng->txt('link_check_message_enabled'));
1244 $link_check_notify->addNotifier();
1245 }
1246 else
1247 {
1248 ilUtil::sendSuccess($this->lng->txt('link_check_message_disabled'));
1249 $link_check_notify->deleteNotifier();
1250 }
1251 $this->linkChecker();
1252
1253 return true;
1254 }
class for checking external links in page objects.

References $_POST, $ilDB, $ilUser, linkChecker(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ saveSettings()

ilObjLinkResourceGUI::saveSettings ( )
protected

Save container settings.

Returns

Definition at line 212 of file class.ilObjLinkResourceGUI.php.

213 {
214 global $ilTabs;
215
216 $this->checkPermission('write');
217 $ilTabs->activateTab('id_settings');
218
219 $this->initFormSettings();
220 if($this->form->checkInput())
221 {
222 $this->object->setTitle($this->form->getInput('tit'));
223 $this->object->setDescription($this->form->getInput('des'));
224 $this->object->update();
225
226 include_once './Services/Container/classes/class.ilContainerSortingSettings.php';
227 $sort = new ilContainerSortingSettings($this->object->getId());
228 $sort->setSortMode($this->form->getInput('sor'));
229 $sort->update();
230
231 ilUtil::sendSuccess($this->lng->txt('settings_saved'),true);
232 $this->ctrl->redirect($this,'settings');
233 }
234
235 $this->form->setValuesByPost();
236 ilUtil::sendFailure($this->lng->txt('err_check_input'));
237 $this->tpl->setContent($this->form->getHTML());
238 }
initFormSettings()
Show settings form.

References ilObject2GUI\checkPermission(), initFormSettings(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ saveSorting()

ilObjLinkResourceGUI::saveSorting ( )
protected

Save nmanual sorting.

Returns

Definition at line 976 of file class.ilObjLinkResourceGUI.php.

977 {
978 $this->checkPermission('write');
979
980 include_once './Services/Container/classes/class.ilContainerSorting.php';
981 $sort = ilContainerSorting::_getInstance($this->object->getId());
982 $sort->savePost((array) $_POST['position']);
983
984 ilUtil::sendSuccess($this->lng->txt('settings_saved'),true);
985 $this->view();
986 }
static _getInstance($a_obj_id)
get instance by obj_id

References $_POST, ilContainerSorting\_getInstance(), ilObject2GUI\checkPermission(), ilUtil\sendSuccess(), and view().

+ Here is the call graph for this function:

◆ setTabs()

ilObjLinkResourceGUI::setTabs ( )

get tabs @access public

Reimplemented from ilObject2GUI.

Definition at line 1358 of file class.ilObjLinkResourceGUI.php.

1359 {
1360 global $ilTabs, $lng, $ilHelp;
1361
1362 $ilHelp->setScreenIdComponent("webr");
1363
1364 if ($this->checkPermissionBool('read'))
1365 {
1366 $ilTabs->addTab("id_content",
1367 $lng->txt("content"),
1368 $this->ctrl->getLinkTarget($this, "view"));
1369 }
1370
1371 if ($this->checkPermissionBool('visible'))
1372 {
1373 $ilTabs->addTab("id_info",
1374 $lng->txt("info_short"),
1375 $this->ctrl->getLinkTarget($this, "infoScreen"));
1376 }
1377
1378 if($this->checkPermissionBool('write') and !$this->getCreationMode())
1379 {
1380 include_once './Modules/WebResource/classes/class.ilLinkResourceItems.php';
1381 if(ilLinkResourceItems::lookupNumberOfLinks($this->object->getId()) > 1)
1382 {
1383 $ilTabs->addTab("id_settings",
1384 $lng->txt("settings"),
1385 $this->ctrl->getLinkTarget($this, "settings"));
1386 }
1387
1388 }
1389
1390 if ($this->checkPermissionBool('write'))
1391 {
1392 $ilTabs->addTab("id_history",
1393 $lng->txt("history"),
1394 $this->ctrl->getLinkTarget($this, "history"));
1395 }
1396
1397 if ($this->checkPermissionBool('write'))
1398 {
1399 // Check if pear library is available
1400 if(@include_once('HTTP/Request.php'))
1401 {
1402 $ilTabs->addTab("id_link_check",
1403 $lng->txt("link_check"),
1404 $this->ctrl->getLinkTarget($this, "linkChecker"));
1405 }
1406 }
1407
1408 if ($this->checkPermissionBool('write'))
1409 {
1410 include_once "Services/Object/classes/class.ilObjectMetaDataGUI.php";
1411 $mdgui = new ilObjectMetaDataGUI($this->object);
1412 $mdtab = $mdgui->getTab();
1413 if($mdtab)
1414 {
1415 $ilTabs->addTab("id_meta_data",
1416 $lng->txt("meta_data"),
1417 $mdtab);
1418 }
1419 }
1420
1421 if($this->checkPermissionBool('write'))
1422 {
1423 $ilTabs->addTab(
1424 'export',
1425 $this->lng->txt('export'),
1426 $this->ctrl->getLinkTargetByClass('ilexportgui','')
1427 );
1428 }
1429
1430 // will add permission tab if needed
1431 parent::setTabs();
1432 }

References ilObjectGUI\$lng, ilObject2GUI\checkPermissionBool(), ilObject2GUI\getCreationMode(), and ilLinkResourceItems\lookupNumberOfLinks().

+ Here is the call graph for this function:

◆ settings()

ilObjLinkResourceGUI::settings ( )
protected

Edit settings Title, Description, Sorting.

Returns

Definition at line 197 of file class.ilObjLinkResourceGUI.php.

198 {
199 global $ilTabs;
200
201 $this->checkPermission('write');
202 $ilTabs->activateTab('id_settings');
203
204 $this->initFormSettings();
205 $this->tpl->setContent($this->form->getHTML());
206 }

References ilObject2GUI\checkPermission(), and initFormSettings().

+ Here is the call graph for this function:

◆ setValuesFromLink()

ilObjLinkResourceGUI::setValuesFromLink (   $a_link_id)
protected

Set form values from link.

Parameters
object$a_link_id
Returns

Definition at line 567 of file class.ilObjLinkResourceGUI.php.

568 {
569 include_once './Modules/WebResource/classes/class.ilLinkResourceItems.php';
570 $link = new ilLinkResourceItems($this->object->getId());
571
572 $values = $link->getItem($a_link_id);
573
575 {
576 }
577
578 $this->form->setValuesByArray(
579 array(
580 'tit' => $values['title'],
581 'tar' => $values['target'],
582 'des' => $values['description'],
583 'act' => (int) $values['active'],
584 'che' => (int) $values['disable_check'],
585 'vali' => (int) $values['valid']
586 )
587 );
588 }

References ilParameterAppender\_isEnabled().

Referenced by editLink().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ showLinks()

ilObjLinkResourceGUI::showLinks ( )
protected

Show all active links.

Returns

Definition at line 940 of file class.ilObjLinkResourceGUI.php.

941 {
942 $this->checkPermission('read');
943 $this->activateTabs('content','id_content_view');
944
945 include_once './Modules/WebResource/classes/class.ilWebResourceLinkTableGUI.php';
946 $table = new ilWebResourceLinkTableGUI($this,'showLinks');
947 $table->parse();
948
949 $this->tpl->addBlockFile('ADM_CONTENT','adm_content','tpl.webr_view.html','Modules/WebResource');
950 $this->showToolbar('ACTION_BUTTONS');
951 $this->tpl->setVariable('LINK_TABLE',$table->getHTML());
952 }
TableGUI class for search results.

References activateTabs(), ilObject2GUI\checkPermission(), and showToolbar().

Referenced by view().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ showToolbar()

ilObjLinkResourceGUI::showToolbar (   $a_tpl_var)
protected

Show toolbar.

Parameters
string$a_tpl_varName of template variable
Returns

Definition at line 994 of file class.ilObjLinkResourceGUI.php.

995 {
996 if(!$this->checkPermissionBool('write'))
997 {
998 return;
999 }
1000
1001 include_once './Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
1002 $tool = new ilToolbarGUI();
1003 $tool->setFormAction($this->ctrl->getFormAction($this));
1004 $tool->addButton(
1005 $this->lng->txt('webr_add'),
1006 $this->ctrl->getLinkTarget($this,'addLink')
1007 );
1008
1009 $this->tpl->setVariable($a_tpl_var,$tool->getHTML());
1010 return;
1011 }

References ilObject2GUI\checkPermissionBool().

Referenced by manage(), showLinks(), and sort().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sort()

ilObjLinkResourceGUI::sort ( )
protected

Sort web links.

Returns

Definition at line 958 of file class.ilObjLinkResourceGUI.php.

959 {
960 $this->checkPermission('write');
961 $this->activateTabs('content','id_content_ordering');
962
963 include_once './Modules/WebResource/classes/class.ilWebResourceLinkTableGUI.php';
964 $table = new ilWebResourceLinkTableGUI($this,'sort',true);
965 $table->parse();
966
967 $this->tpl->addBlockFile('ADM_CONTENT','adm_content','tpl.webr_view.html','Modules/WebResource');
968 $this->showToolbar('ACTION_BUTTONS');
969 $this->tpl->setVariable('LINK_TABLE',$table->getHTML());
970 }

References activateTabs(), ilObject2GUI\checkPermission(), and showToolbar().

Referenced by view().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ switchViewMode()

ilObjLinkResourceGUI::switchViewMode ( )
protected

Switch between "View" "Manage" and "Sort".

Returns

Definition at line 848 of file class.ilObjLinkResourceGUI.php.

849 {
850 global $ilCtrl;
851
852 $_REQUEST['view_mode'] = $_GET['view_mode'] = (int) $_GET['switch_mode'];
853 $this->view();
854 }

References $_GET, $_REQUEST, $ilCtrl, and view().

Referenced by editLinks().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateLink()

ilObjLinkResourceGUI::updateLink ( )

Save after editing.

Returns

Definition at line 320 of file class.ilObjLinkResourceGUI.php.

321 {
322 global $ilCtrl;
323
324 $this->initFormLink(self::LINK_MOD_EDIT);
325 if($this->checkLinkInput(self::LINK_MOD_EDIT,$this->object->getId(),(int) $_REQUEST['link_id']))
326 {
327 $this->link->setLinkId((int) $_REQUEST['link_id']);
328 $this->link->update();
329 if(ilParameterAppender::_isEnabled() and is_object($this->dynamic))
330 {
331 $this->dynamic->add((int) $_REQUEST['link_id']);
332 }
333
334 if($this->isContainerMetaDataRequired())
335 {
336 $this->object->setTitle($this->form->getInput('tit'));
337 $this->object->setDescription($this->form->getInput('des'));
338 $this->object->update();
339 }
340
341 ilUtil::sendSuccess($this->lng->txt('settings_saved'),true);
342 $ilCtrl->redirect($this,'view');
343 }
344 ilUtil::sendFailure($this->lng->txt('err_check_input'));
345 $this->form->setValuesByPost();
346 $this->tpl->setContent($this->form->getHTML());
347 }

References $_REQUEST, $ilCtrl, ilParameterAppender\_isEnabled(), checkLinkInput(), initFormLink(), isContainerMetaDataRequired(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ updateLinks()

ilObjLinkResourceGUI::updateLinks ( )
protected

Update all visible links.

Returns

Definition at line 455 of file class.ilObjLinkResourceGUI.php.

456 {
457 global $ilCtrl;
458
459 $this->checkPermission('write');
460 $this->activateTabs('content','');
461
462 if(!is_array($_POST['ids']))
463 {
464 ilUtil::sendFailure($this->lng->txt('select_one'),TRUE);
465 $ilCtrl->redirect($this,'view');
466 }
467
468 // Validate
469 $invalid = array();
470 foreach($_POST['ids'] as $link_id)
471 {
472 $data = $_POST['links'][$link_id];
473
474 // handle internal links
475 if($_POST['tar_'.$link_id.'_ajax_type'] &&
476 $_POST['tar_'.$link_id.'_ajax_id'])
477 {
478 $data['tar'] = $_POST['links'][$link_id]['tar'] =
479 $_POST['tar_'.$link_id.'_ajax_type'].'|'.
480 $_POST['tar_'.$link_id.'_ajax_id'];
481 }
482
483
484 if(!strlen($data['tit']))
485 {
486 $invalid[] = $link_id;
487 continue;
488 }
489 if(!strlen($data['tar']))
490 {
491 $invalid[] = $link_id;
492 continue;
493 }
494 if($data['nam'] and !$data['val'])
495 {
496 $invalid[] = $link_id;
497 continue;
498 }
499 if(!$data['nam'] and $data['val'])
500 {
501 $invalid[] = $link_id;
502 continue;
503 }
504 }
505
506 if(count($invalid))
507 {
508 ilUtil::sendFailure($this->lng->txt('err_check_input'));
509 $this->tpl->addBlockFile('ADM_CONTENT','adm_content','tpl.webr_manage.html','Modules/WebResource');
510
511 include_once './Modules/WebResource/classes/class.ilWebResourceEditableLinkTableGUI.php';
512 $table = new ilWebResourceEditableLinkTableGUI($this,'view');
513 $table->setInvalidLinks($invalid);
514 $table->parseSelectedLinks($_POST['ids']);
515 $table->updateFromPost();
516 $this->tpl->setVariable('TABLE_LINKS',$table->getHTML());
517 return false;
518 }
519
520 include_once './Modules/WebResource/classes/class.ilLinkResourceItems.php';
521 $links = new ilLinkResourceItems($this->object->getId());
522
523 // Save Settings
524 foreach($_POST['ids'] as $link_id)
525 {
526 $data = $_POST['links'][$link_id];
527
528 $orig = ilLinkResourceItems::lookupItem($this->object->getId(),$link_id);
529
530 $links->setLinkId($link_id);
531 $links->setTitle(ilUtil::stripSlashes($data['tit']));
532 $links->setDescription(ilUtil::stripSlashes($data['des']));
533 $links->setTarget(str_replace('"', '', ilUtil::stripSlashes($data['tar'])));
534 $links->setActiveStatus((int) $data['act']);
535 $links->setDisableCheckStatus((int) $data['che']);
536 $links->setLastCheckDate($orig['last_check']);
537 $links->setValidStatus((int) $data['vali']);
538 $links->update();
539
540 if(strlen($data['nam']) and $data['val'])
541 {
542 $param = new ilParameterAppender($this->object->getId());
543 $param->setName(ilUtil::stripSlashes($data['nam']));
544 $param->setValue((int) $data['val']);
545 $param->add($link_id);
546 }
547
548 if($this->isContainerMetaDataRequired())
549 {
550 $this->object->setTitle(ilUtil::stripSlashes($data['tit']));
551 $this->object->setDescription(ilUtil::stripSlashes($data['des']));
552 $this->object->update();
553 }
554
555 // TODO: Dynamic parameters
556 }
557
558 ilUtil::sendSuccess($this->lng->txt('settings_saved'),TRUE);
559 $ilCtrl->redirect($this,'view');
560 }
static lookupItem($a_webr_id, $a_link_id)

References $_POST, ilObjectGUI\$data, $ilCtrl, activateTabs(), ilObject2GUI\checkPermission(), isContainerMetaDataRequired(), ilLinkResourceItems\lookupItem(), ilUtil\sendFailure(), ilUtil\sendSuccess(), and ilUtil\stripSlashes().

+ Here is the call graph for this function:

◆ view()

ilObjLinkResourceGUI::view ( )

View object.

Returns

Reimplemented from ilObject2GUI.

Definition at line 871 of file class.ilObjLinkResourceGUI.php.

872 {
873 global $ilErr, $ilTabs;
874
875 $ilTabs->activateTab("id_content");
876
877 $this->checkPermission('read');
878
879 if (strtolower($_GET["baseClass"]) == "iladministrationgui")
880 {
881 parent::view();
882 return true;
883 }
884 else
885 {
886 switch((int) $_REQUEST['view_mode'])
887 {
889 $this->manage();
890 break;
891
893 // #14638
894 include_once './Services/Container/classes/class.ilContainerSortingSettings.php';
896 {
897 $this->sort();
898 break;
899 }
900 // fallthrough
901
902 default:
903 $this->showLinks();
904 break;
905 }
906 }
907 $GLOBALS['tpl']->setPermanentLink($this->object->getType(),$this->object->getRefId());
908 return true;
909 }
showLinks()
Show all active links.
$GLOBALS['PHPCAS_CLIENT']
This global variable is used by the interface class phpCAS.
Definition: CAS.php:276

References $_GET, $_REQUEST, $GLOBALS, $ilErr, ilContainerSortingSettings\_lookupSortMode(), ilObject2GUI\checkPermission(), manage(), showLinks(), sort(), ilContainer\SORT_MANUAL, VIEW_MODE_MANAGE, and VIEW_MODE_SORT.

Referenced by confirmDeleteLink(), saveSorting(), and switchViewMode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ LINK_MOD_ADD

const ilObjLinkResourceGUI::LINK_MOD_ADD = 3

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

Referenced by initFormLink().

◆ LINK_MOD_CREATE

const ilObjLinkResourceGUI::LINK_MOD_CREATE = 1

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

Referenced by initFormLink().

◆ LINK_MOD_EDIT

const ilObjLinkResourceGUI::LINK_MOD_EDIT = 2

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

Referenced by initFormLink().

◆ VIEW_MODE_MANAGE

const ilObjLinkResourceGUI::VIEW_MODE_MANAGE = 2

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

Referenced by editLinks(), and view().

◆ VIEW_MODE_SORT

const ilObjLinkResourceGUI::VIEW_MODE_SORT = 3

Definition at line 26 of file class.ilObjLinkResourceGUI.php.

Referenced by view().

◆ VIEW_MODE_VIEW

const ilObjLinkResourceGUI::VIEW_MODE_VIEW = 1

Definition at line 24 of file class.ilObjLinkResourceGUI.php.


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