ILIAS  trunk Revision v12.0_alpha-1329-g1094ddb0c33
privfeed.php
Go to the documentation of this file.
1<?php
2
19require_once __DIR__ . '/../artifacts/bootstrap_default.php';
20entry_point('ILIAS Legacy Initialisation Adapter');
21
23
25
27
28$feed_set = new ilSetting("news");
29
30
31if (!isset($_SERVER['PHP_AUTH_PW']) || !isset($_SERVER['PHP_AUTH_USER'])) {
32 Header("WWW-Authenticate: Basic realm=\"ILIAS Newsfeed\"");
33 Header("HTTP/1.0 401 Unauthorized");
34
35 exit;
36} else {
37 if ($_GET["user_id"] != "" && ilObjUser::_getFeedPass($_GET["user_id"]) != "" &&
38 (md5($_SERVER['PHP_AUTH_PW']) == ilObjUser::_getFeedPass($_GET["user_id"]) &&
39 $_SERVER['PHP_AUTH_USER'] == ilObjUser::_lookupLogin($_GET["user_id"]))
40 && $feed_set->get("enable_private_feed")) {
41 include_once("../components/ILIAS/Feeds/classes/class.ilUserFeedWriter.php");
42 // Third parameter is true for private feed
43 $writer = new ilUserFeedWriter($_GET["user_id"], $_GET["hash"], true);
44 $writer->showFeed();
45 } elseif ($_GET["ref_id"] != "" && md5($_SERVER['PHP_AUTH_PW']) == ilObjUser::_getFeedPass(ilObjUser::_lookupId($_SERVER['PHP_AUTH_USER']))) {
46 include_once("../components/ILIAS/Feeds/classes/class.ilObjectFeedWriter.php");
47 // Second parameter is optional to pass on to database-level to get news for logged-in users
48 $writer = new ilObjectFeedWriter($_GET["ref_id"], ilObjUser::_lookupId($_SERVER['PHP_AUTH_USER']));
49 $writer->showFeed();
50 } else {
51 // send appropriate header, if password is wrong, otherwise
52 // there is no chance to re-enter it (unless, e.g. the browser is closed)
53 if (md5($_SERVER['PHP_AUTH_PW']) != ilObjUser::_getFeedPass(ilObjUser::_lookupId($_SERVER['PHP_AUTH_USER']))) {
54 Header("WWW-Authenticate: Basic realm=\"ILIAS Newsfeed\"");
55 Header("HTTP/1.0 401 Unauthorized");
56 exit;
57 }
58
59 include_once("../components/ILIAS/Feeds/classes/class.ilFeedItem.php");
60 include_once("../components/ILIAS/Feeds/classes/class.ilFeedWriter.php");
61
62 $blankFeedWriter = new ilFeedWriter();
63 $feed_item = new ilFeedItem();
64 $lng->loadLanguageModule("news");
65
66 if ($ilSetting->get('short_inst_name') != "") {
67 $blankFeedWriter->setChannelTitle($ilSetting->get('short_inst_name'));
68 } else {
69 $blankFeedWriter->setChannelTitle("ILIAS");
70 }
71
72
73
74
75 if (!$feed_set->get("enable_private_feed")) {
76 $blankFeedWriter->setChannelAbout(ILIAS_HTTP_PATH);
77 $blankFeedWriter->setChannelLink(ILIAS_HTTP_PATH);
78 // title
79 $feed_item->setTitle($lng->txt("priv_feed_no_access_title"));
80
81 // description
82 $feed_item->setDescription($lng->txt("priv_feed_no_access_body"));
83 $feed_item->setLink(ILIAS_HTTP_PATH);
84 } else {
85 $blankFeedWriter->setChannelAbout(ILIAS_HTTP_PATH);
86 $blankFeedWriter->setChannelLink(ILIAS_HTTP_PATH);
87 // title
88 $feed_item->setTitle($lng->txt("priv_feed_no_auth_title"));
89
90 // description
91 $feed_item->setDescription($lng->txt("priv_feed_no_auth_body"));
92 $feed_item->setLink(ILIAS_HTTP_PATH);
93 }
94 $blankFeedWriter->addItem($feed_item);
95 $blankFeedWriter->showFeed();
96 }
97}
const CONTEXT_RSS_AUTH
Definition: ilContext.php:37
static init(string $a_type)
Init context by type.
Definition: ilContext.php:52
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static initILIAS()
ilias initialisation
static _lookupId(string|array $a_user_str)
static _getFeedPass(int $a_user_id)
static _lookupLogin(int $a_user_id)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
ILIAS Setting Class.
Feed writer for personal user feeds.
exit
$_GET['cmd']
Definition: lti.php:26
global $lng
Definition: privfeed.php:26
global $ilSetting
Definition: privfeed.php:26
$feed_set
Definition: privfeed.php:28
$_SERVER['HTTP_HOST']
Definition: raiseError.php:26
entry_point(string $name)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Definition: result1.php:21