Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjoern Schiessle <schiessle@owncloud.com>2013-11-22 16:55:38 +0400
committerBjoern Schiessle <schiessle@owncloud.com>2013-11-22 16:55:38 +0400
commit7e4f50d4e385e1d55b7839146a82dd48cb657c2a (patch)
treed602013381911dbacce79727cef73e4788809364 /lib/private/user.php
parent391f267d380f0d098d730d3bc74633192cc13570 (diff)
add incognito mode, allows to hide my user ID. For example, this is useful to access public resources while a user is still logged in
Diffstat (limited to 'lib/private/user.php')
-rw-r--r--lib/private/user.php14
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/private/user.php b/lib/private/user.php
index f15fdf1dbbc..5bd36006750 100644
--- a/lib/private/user.php
+++ b/lib/private/user.php
@@ -54,6 +54,9 @@ class OC_User {
private static $_setupedBackends = array();
+ // bool, stores if a user want to access a resource anonymously, e.g if he opens a public link
+ private static $incognitoMode = false;
+
/**
* @brief registers backend
* @param string $backend name of the backend
@@ -320,6 +323,15 @@ class OC_User {
}
/**
+ * @brief set incognito mode, e.g. if a user wants to open a public link
+ * @param bool $status
+ */
+ public static function setIncognitoMode($status) {
+ self::$incognitoMode = $status;
+
+ }
+
+ /**
* Supplies an attribute to the logout hyperlink. The default behaviour
* is to return an href with '?logout=true' appended. However, it can
* supply any attribute(s) which are valid for <a>.
@@ -354,7 +366,7 @@ class OC_User {
*/
public static function getUser() {
$uid = OC::$session ? OC::$session->get('user_id') : null;
- if (!is_null($uid)) {
+ if (!is_null($uid) && self::$incognitoMode === false) {
return $uid;
} else {
return false;