42 protected $cmd = self::CMD_SHOW_CONTENT;
50 public function __construct($a_id = 0, $a_id_type = self::REPOSITORY_NODE_ID, $a_parent_node_id = 0)
53 $this->lng = $DIC[
'lng'];
54 parent::__construct($a_id, $a_id_type, $a_parent_node_id);
55 $this->lng->loadLanguageModule(
'bibl');
69 return self::CMD_VIEW;
91 $ilTabs = $DIC[
'ilTabs'];
92 $ilNavigationHistory = $DIC[
'ilNavigationHistory'];
97 if ($this->
object != null) {
98 $ilNavigationHistory->addItem($this->
object->getRefId(), $link,
"bibl");
103 if ($this->
object instanceof
ilObjBibliographic && !$DIC->access()->checkAccess(
'visible',
"", $this->
object->getRefId())) {
107 $next_class =
$ilCtrl->getNextClass($this);
108 $this->cmd =
$ilCtrl->getCmd();
109 switch ($next_class) {
110 case "ilinfoscreengui":
112 $ilTabs->activateTab(self::TAB_ID_INFO);
115 case "ilcommonactiondispatchergui":
116 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
118 $this->ctrl->forwardCommand($gui);
120 case "ilpermissiongui":
122 $ilTabs->activateTab(self::TAB_ID_PERMISSIONS);
123 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
125 $this->ctrl->forwardCommand($perm_gui);
127 case "ilobjectcopygui":
128 include_once
"./Services/Object/classes/class.ilObjectCopyGUI.php";
130 $cp->setType(
'bibl');
131 $tpl->getStandardTemplate();
132 $this->ctrl->forwardCommand($cp);
136 $ilTabs->setTabActive(self::TAB_ID_RECORDS);
137 include_once(
"./Modules/File/classes/class.ilObjFile.php");
139 $this->ctrl->forwardCommand($file_gui);
143 $ilTabs->setTabActive(self::TAB_EXPORT);
145 $exp_gui->addFormat(
"xml");
146 $this->ctrl->forwardCommand($exp_gui);
149 return parent::executeCommand();
163 $this->ctrl->setCmd(
"showSummary");
164 $this->ctrl->setCmdClass(
"ilinfoscreengui");
178 $this->ctrl->redirectByClass(
'ilPersonalDesktopGUI',
'');
180 $DIC[
'ilTabs']->activateTab(self::TAB_ID_INFO);
181 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
183 $info->enablePrivateNotes();
184 $info->addMetaDataSections($this->
object->getId(), 0, $this->
object->getType());
185 $this->ctrl->forwardCommand(
$info);
195 $ilLocator = $DIC[
'ilLocator'];
196 if (is_object($this->
object)) {
197 $ilLocator->addItem($this->
object->getTitle(), $this->ctrl->getLinkTarget($this,
""),
"",
$this->node_id);
208 public static function _goto($a_target)
212 $id = explode(
"_", $a_target);
213 $DIC[
'ilCtrl']->setTargetScript(
"ilias.php");
214 $DIC[
'ilCtrl']->initBaseClass(
"ilRepositoryGUI");
215 $DIC[
'ilCtrl']->setParameterByClass(
"ilobjbibliographicgui",
"ref_id",
$id[0]);
220 $DIC->ctrl()->redirectByClass(
222 ilRepositoryGUI::class,
223 ilObjBibliographicGUI::class,
225 self::CMD_SHOW_DETAILS
228 $DIC->ctrl()->redirectByClass(
230 ilRepositoryGUI::class,
231 ilObjBibliographicGUI::class,
247 $forms = parent::initCreationForms($a_new_type);
249 $in_file =
new ilFileInputGUI($DIC->language()->txt(
"bibliography file"),
"bibliographic_file");
251 $in_file->setRequired(
true);
252 $forms[self::CFORM_NEW]->addItem($in_file);
253 $this->ctrl->saveParameterByClass(
'ilobjrootfoldergui',
'new_type');
254 $forms[self::CFORM_NEW]->setFormAction($this->ctrl->getFormActionByClass(
'ilobjrootfoldergui',
"save"));
265 if (
$form[self::CFORM_NEW]->checkInput()) {
269 $form->setValuesByPost();
284 $a_new_object->doUpdate();
286 $this->ctrl->redirect($this, self::CMD_EDIT);
299 $ilAccess = $DIC[
'ilAccess'];
300 $ilTabs = $DIC[
'ilTabs'];
302 $ilHelp = $DIC[
'ilHelp'];
309 $ilHelp->setScreenIdComponent(
'bibl');
311 if ($ilAccess->checkAccess(
'read',
"", $this->object->getRefId())) {
312 $ilTabs->addTab(self::TAB_CONTENT,
$lng->txt(self::TAB_CONTENT), $this->ctrl->getLinkTarget($this, self::CMD_SHOW_CONTENT));
315 if ($ilAccess->checkAccess(
'visible',
"", $this->object->getRefId()) || $ilAccess->checkAccess(
'read',
"", $this->object->getRefId())) {
316 $ilTabs->addTab(self::TAB_ID_INFO,
$lng->txt(
"info_short"), $this->ctrl->getLinkTargetByClass(
"ilinfoscreengui",
"showSummary"));
319 if ($ilAccess->checkAccess(
'write',
"", $this->object->getRefId())) {
320 $ilTabs->addTab(
"settings",
$lng->txt(
"settings"), $this->ctrl->getLinkTarget($this,
"editObject"));
323 if ($ilAccess->checkAccess(
"write",
"", $this->object->getRefId())) {
324 $ilTabs->addTab(self::TAB_EXPORT,
$lng->txt(self::TAB_EXPORT), $this->ctrl->getLinkTargetByClass(
"ilexportgui",
""));
327 if ($ilAccess->checkAccess(
'edit_permission',
"", $this->object->getRefId())) {
328 $ilTabs->addTab(self::TAB_ID_PERMISSIONS,
$lng->txt(
"perm_settings"), $this->ctrl->getLinkTargetByClass(
"ilpermissiongui",
"perm"));
337 $form = parent::initEditForm();
341 $in_file->setRequired(
false);
342 $cb_override =
new ilCheckboxInputGUI($this->lng->txt(
"override_entries"),
"override_entries");
345 $form->addItem($cb_override);
346 $form->setFormAction($this->ctrl->getFormAction($this,
"save"));
358 $ilTabs = $DIC[
'ilTabs'];
359 $ilTabs->activateTab(
"settings");
373 $a_values[
"is_online"] = $this->
object->getOnline();
391 $ilAccess = $DIC[
'ilAccess'];
393 $ilTabs = $DIC[
'ilTabs'];
395 if (($ilAccess->checkAccess(
'read',
"", $this->object->getRefId())
396 && $this->
object->getOnline())
397 || $ilAccess->checkAccess(
'write',
"", $this->object->getRefId())
399 $ilTabs->setTabActive(self::TAB_CONTENT);
407 $b->setCaption(
'download_original_file');
408 $b->setUrl(
$ilCtrl->getLinkTargetByClass(
"ilBibliographicDetailsGUI", self::CMD_SEND_FILE));
409 $b->setPrimary(
true);
410 $DIC[
'ilToolbar']->addButtonInstance($b);
412 include_once
"./Modules/Bibliographic/classes/class.ilBibliographicRecordListTableGUI.php";
415 $DIC[
'tpl']->setContent(
$html);
418 $DIC[
'tpl']->setPermanentLink(
"bibl", $this->
object->getRefId());
433 if ($DIC[
'ilAccess']->checkAccess(
'read',
"", $this->
object->getRefId())) {
434 $file_path = $this->bibl_obj->getLegacyAbsolutePath();
436 if (is_file($file_path)) {
453 if ($DIC[
'ilAccess']->checkAccess(
'read',
"", $this->
object->getRefId())) {
455 $this->tpl->setContent($bibGUI->getHTML());
474 $ilAccess = $DIC[
'ilAccess'];
475 if ($ilAccess->checkAccess(
'write',
"", $this->object->getRefId())) {
476 if ($this->
object->getOnline() != $a_form->
getInput(
"is_online")) {
477 $this->
object->setOnline($a_form->
getInput(
"is_online"));
480 if (!empty($_FILES[
'bibliographic_file'][
'name'])) {
481 $this->
addNews($this->bibl_obj->getId(),
'updated');
494 include_once
"./Services/Notification/classes/class.ilNotification.php";
495 switch (
$_GET[
"ntf"]) {
517 $ilNewsItem->setTitle(
$lng->txt(
'news_title_' . $change));
520 $ilNewsItem->setUserId(
$ilUser->getId());
522 $ilNewsItem->setContentTextIsLangVar(
false);
523 $ilNewsItem->create();
534 include_once
'./Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
537 $this->ctrl->redirect($this, self::CMD_VIEW);
548 include_once
'./Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
551 $this->ctrl->redirect($this, self::CMD_VIEW);
585 $a_new_object->writeSourcefileEntriesToDb();
586 parent::afterImport($a_new_object);
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
infoScreenForward()
show information screen
removeFromDeskObject()
Remove from desktop.
Class ilObjBibliographicGUI.
removeFromDesk()
Remove from desktop.
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_node_id=null)
Check permission.
New implementation of ilObjectGUI.
GUI class for the workflow of copying objects.
updateCustom(ilPropertyFormGUI $a_form)
updateSettings
executeCommand()
executeCommand
if(!array_key_exists('StateId', $_REQUEST)) $id
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
afterSave(ilObject $a_new_object)
Post (successful) object creation hook.
static getInstance(ilObjBibliographic $bibl_obj, $entry_id)
static addToDesktop()
Add desktop item public.
sendFile()
provide file as a download
addToDesk()
Add desktop item.
Class ilDataCollectionField.
const TYPE_DATA_COLLECTION
Export User Interface Class.
static deliverFileAttached($path_to_file, $download_file_name='', $mime_type='', $delete_file=false)
void
if(isset($_POST['submit'])) $form
getId()
get object id public
initCreationForms($a_new_type)
static setNotification($type, $user_id, $id, $status=true)
Set notification status for object and user.
__construct($a_id=0, $a_id_type=self::REPOSITORY_NODE_ID, $a_parent_node_id=0)
Create styles array
The data for the language used.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
setTabs()
create tabs (repository/workspace switch)
addNews($obj_id, $change='created')
static removeFromDesktop()
Remove item from personal desktop public.
getEditFormCustomValues(array &$a_values)
initEditCustomForm(ilPropertyFormGUI $a_form)
addToDeskObject()
Add desktop item.
Interface for gui classes (e.g ilLuceneSearchGUI) that offer add/remove to/from desktop.
Create new PHPExcel object
obj_idprivate
showContent()
shows the overview page with all entries in a table
getStandardCmd()
getStandardCmd
prepareOutput($a_show_subobjects=true)
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
Class ilObjBibliographic.
if(empty($password)) $table
addHeaderAction()
Add header action menu.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
afterImport(ilObject $a_new_object)
Post (successful) object import hook.
static _goto($a_target)
_goto Deep link
infoScreen()
this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually...