3declare(strict_types=1);
27 $this->access = $access;
32 return $this->
object->getTitle();
37 return $this->
object->getType();
71 throw new LogicException(
"The Legacy Mode in the Learning Sequence requires an LSControlBuilder explicitely.", 1);
76 $ref_id = $this->
object->getRefId();
77 $obj_id = (int) $this->object->getId();
78 $type = $this->
object->getType();
87 if (in_array(
$type, self::GET_VIEW_CMD_FROM_LIST_GUI_FOR)) {
89 $item_list_gui->initItem($ref_id, $obj_id);
90 $view_link = $item_list_gui->getCommandLink(
'view');
91 $view_link = str_replace(
'&',
'&', $view_link);
92 $view_link = ILIAS_HTTP_PATH .
'/' . $view_link;
126 $obj_type = $this->object->
getType();
127 $obj_type_txt = $this->lng->txt(
'obj_' . $obj_type);
128 $icon =
$factory->icon()->standard($obj_type, $obj_type_txt,
'large');
129 $md = $this->
getMetadata((
int) $this->object->getId(), $obj_type);
130 $props = array_merge(
131 [$this->lng->txt(
'obj_type') => $obj_type_txt],
132 $this->getMetadata((
int) $this->object->getId(), $obj_type)
135 $info =
$factory->item()->standard($this->object->getTitle())
136 ->withLeadIcon($icon)
137 ->withDescription($this->object->getDescription())
138 ->withProperties($props);
154 $meta_data[
'language'] = [];
156 $meta_data[
'language'][] =
$section->getLanguage(
$id)->getLanguageCode();
158 $meta_data[
'keywords'] = [];
160 $meta_data[
'keywords'][] =
$section->getKeyword(
$id)->getKeyword();
164 foreach ($meta_data as $md_label =>
$values) {
166 $md_flat[$this->lng->txt($md_label)] = implode(
', ',
$values);
176 ->tableOfContent($this->getObjectTitle(),
'kommando', 666)
179 ->item(
'item1.2', 11)
182 ->node(
'node3', 1111)
185 ->item(
'item3.2.1', 122)
190 ->locator(
'locator_cmd')
200 ->generic(
'cmd 1',
'x', 1)
201 ->generic(
'cmd 2',
'x', 2)
203 ->mode(
'modecmd', [
'm1',
'm2',
'm3'])
211 return $this->lng->txt(
"obj_" .
$type);
if(!array_key_exists('stateid', $_REQUEST)) $state
Handle linkback() response from LinkedIn.
An exception for terminatinating execution or to throw for unit testing.
Keeps the state of a view in a simple stringly type key-value store.
Class ilLegacyKioskModeView.
updateGet(State $state, string $command, int $param=null)
@inheritDoc
debugBuildAllControls(ControlBuilder $builder)
__construct(ilObject $object, ilLanguage $lng, ilAccess $access)
const GET_VIEW_CMD_FROM_LIST_GUI_FOR
buildInitialState(State $empty_state)
@inheritDoc
render(State $state, Factory $factory, URLBuilder $url_builder, array $post=null)
@inheritDoc
updatePost(State $state, string $command, array $post)
@inheritDoc
buildControls(State $state, ControlBuilder $builder)
@inheritDoc
setObject(\ilObject $object)
@inheritDoc
getTitleByType(string $type)
hasPermissionToAccessKioskMode()
@inheritDoc
getMetadata(int $obj_id, string $type)
static _getStaticLink( $a_ref_id, $a_type='', $a_fallback_goto=true, $append="")
Get static link.
static _getListGUIByType($a_type, $a_context=ilObjectListGUI::CONTEXT_REPOSITORY)
Class ilObject Basic functions for all objects.
if(!array_key_exists('StateId', $_REQUEST)) $id
Build controls for the view.
The URLBuilder allows views to get links that are used somewhere inline in the content.
A kiosk mode view on a certain object.
A component is the most general form of an entity in the UI.
This is how the factory for UI elements looks.