diff options
-rw-r--r-- | core/js/js.js | 32 | ||||
-rw-r--r-- | core/templates/layout.user.php | 2 |
2 files changed, 33 insertions, 1 deletions
diff --git a/core/js/js.js b/core/js/js.js index 43ea269c203..bc8c51e40d3 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -82,6 +82,12 @@ var OC={ webroot:oc_webroot, appswebroots:(typeof oc_appswebroots !== 'undefined') ? oc_appswebroots:false, + /** + * Currently logged in user or null if none + * + * @type String + * @deprecated use {@link OC.getCurrentUser} instead + */ currentUser:(typeof oc_current_user!=='undefined')?oc_current_user:false, config: window.oc_config, appConfig: window.oc_appconfig || {}, @@ -272,6 +278,23 @@ var OC={ }, /** + * Returns the currently logged in user or null if there is no logged in + * user (public page mode) + * + * @return {OC.CurrentUser} user spec + * @since 9.0.0 + */ + getCurrentUser: function() { + if (_.isUndefined(this._currentUserDisplayName)) { + this._currentUserDisplayName = document.getElementsByTagName('head')[0].getAttribute('data-user-displayname'); + } + return { + uid: this.currentUser, + displayName: this._currentUserDisplayName + }; + }, + + /** * get the absolute path to an image file * if no extension is given for the image, it will automatically decide * between .png and .svg based on what the browser supports @@ -690,6 +713,15 @@ var OC={ }; /** + * Current user attributes + * + * @typedef {Object} OC.CurrentUser + * + * @property {String} uid user id + * @property {String} displayName display name + */ + +/** * @namespace OC.Plugins */ OC.Plugins = { diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php index 7fe67159bb5..7905f5b7f3a 100644 --- a/core/templates/layout.user.php +++ b/core/templates/layout.user.php @@ -2,7 +2,7 @@ <!--[if lte IE 8]><html class="ng-csp ie ie8 lte9 lte8" data-placeholder-focus="false" lang="<?php p($_['language']); ?>" ><![endif]--> <!--[if IE 9]><html class="ng-csp ie ie9 lte9" data-placeholder-focus="false" lang="<?php p($_['language']); ?>" ><![endif]--> <!--[if (gt IE 9)|!(IE)]><!--><html class="ng-csp" data-placeholder-focus="false" lang="<?php p($_['language']); ?>" ><!--<![endif]--> - <head data-user="<?php p($_['user_uid']); ?>" data-requesttoken="<?php p($_['requesttoken']); ?>" + <head data-user="<?php p($_['user_uid']); ?>" data-user-displayname="<?php p($_['user_displayname']); ?>" data-requesttoken="<?php p($_['requesttoken']); ?>" <?php if ($_['updateAvailable']): ?> data-update-version="<?php p($_['updateVersion']); ?>" data-update-link="<?php p($_['updateLink']); ?>" <?php endif; ?> |