19 declare(strict_types=1);
42 $access = $DIC->access();
48 $wsp = count($additional_params) > 0 &&
49 $additional_params[count($additional_params) - 1] ===
"_wsp";
51 if (is_numeric($additional_params[0] ??
"")) {
52 $posting_id = (
int) $additional_params[0];
55 if ($posting_id > 0 && ($additional_params[1] ??
"" ===
"edit")) {
58 if ($posting_id > 0) {
59 $ctrl->setParameterByClass(\ilBlogPostingGUI::class,
"blpg", $posting_id);
63 $ctrl->setParameterByClass(\ilObjBlogGUI::class,
"wsp_id",
$id);
64 if ($posting_id > 0) {
66 $uri = $ctrl->getLinkTargetByClass([
67 \ilDashboardGUI::class,
68 \ilPersonalWorkspaceGUI::class,
70 \ilBlogPostingGUI::class,
73 $uri = $ctrl->getLinkTargetByClass([
74 \ilSharedResourceGUI::class,
76 \ilBlogPostingGUI::class,
77 ],
"previewFullscreen");
80 $uri = $ctrl->getLinkTargetByClass([
81 \ilSharedResourceGUI::class,
86 $ctrl->setParameterByClass(\ilRepositoryGUI::class,
"ref_id",
$id);
87 if ($posting_id > 0) {
88 if ($edit && $access->checkAccess(
"write",
"",
$id)) {
89 $uri = $ctrl->getLinkTargetByClass([
90 \ilRepositoryGUI::class,
92 \ilBlogPostingGUI::class,
94 } elseif ($access->checkAccess(
"read",
"",
$id)) {
95 $uri = $ctrl->getLinkTargetByClass([
96 \ilRepositoryGUI::class,
98 \ilBlogPostingGUI::class,
99 ],
"previewFullscreen");
102 if ($access->checkAccess(
"read",
"",
$id)) {
103 $uri = $ctrl->getLinkTargetByClass([
104 \ilRepositoryGUI::class,
111 $access->checkAccess(
"visible",
"",
$id)) {
112 $uri = $ctrl->getLinkTargetByClass([
113 \ilRepositoryGUI::class,
118 return $response_factory->
can($uri);
getAdditionalParameters()
handle(Request $request, Context $context, Factory $response_factory)
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins