summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/css/header.css2
-rw-r--r--core/js/avatar.js10
-rw-r--r--core/templates/layout.user.php10
-rw-r--r--lib/private/helper.php15
-rw-r--r--lib/private/templatelayout.php3
5 files changed, 26 insertions, 14 deletions
diff --git a/core/css/header.css b/core/css/header.css
index f83ef451ce6..33eb7e25cc6 100644
--- a/core/css/header.css
+++ b/core/css/header.css
@@ -239,6 +239,8 @@
display: inline-block;
margin-right: 5px;
cursor: pointer;
+ height: 32px;
+ width: 32px;
}
#header .avatardiv img {
opacity: 1;
diff --git a/core/js/avatar.js b/core/js/avatar.js
index 6835f6ef0ac..8ff136d67ca 100644
--- a/core/js/avatar.js
+++ b/core/js/avatar.js
@@ -1,15 +1,5 @@
$(document).ready(function(){
if (OC.currentUser) {
- var callback = function() {
- // do not show display name on mobile when profile picture is present
- if($('#header .avatardiv').children().length > 0) {
- $('#header .avatardiv').addClass('avatardiv-shown');
- }
- };
-
- $('#header .avatardiv').avatar(
- OC.currentUser, 32, undefined, true, callback
- );
// Personal settings
$('#avatar .avatardiv').avatar(OC.currentUser, 128);
}
diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php
index 9445175efcf..09630435b77 100644
--- a/core/templates/layout.user.php
+++ b/core/templates/layout.user.php
@@ -65,13 +65,17 @@
</a>
<div id="logo-claim" style="display:none;"><?php p($theme->getLogoClaim()); ?></div>
<div id="settings" class="svg">
- <span id="expand" tabindex="0" role="link">
+ <div id="expand" tabindex="0" role="link">
<?php if ($_['enableAvatars']): ?>
- <div class="avatardiv"></div>
+ <div class="avatardiv"<?php if (!$_['userAvatarSet']) { print_unescaped(' style="display: none"'); } ?>>
+ <?php if ($_['userAvatarSet']): ?>
+ <img src="<?php p(link_to('', 'index.php').'/avatar/'.$_['user_uid'].'/32?requesttoken='.$_['requesttoken']); ?>">
+ <?php endif; ?>
+ </div>
<?php endif; ?>
<span id="expandDisplayName"><?php p(trim($_['user_displayname']) != '' ? $_['user_displayname'] : $_['user_uid']) ?></span>
<img class="svg" alt="" src="<?php print_unescaped(image_path('', 'actions/caret.svg')); ?>" />
- </span>
+ </div>
<div id="expanddiv">
<ul>
<?php foreach($_['settingsnavigation'] as $entry):?>
diff --git a/lib/private/helper.php b/lib/private/helper.php
index 823e82ceeb1..628af14fa08 100644
--- a/lib/private/helper.php
+++ b/lib/private/helper.php
@@ -280,6 +280,21 @@ class OC_Helper {
}
/**
+ * shows whether the user has an avatar
+ * @param string $user username
+ * @return bool avatar set or not
+ **/
+ public static function userAvatarSet($user) {
+ $avatar = new \OC_Avatar($user);
+ $image = $avatar->get(1);
+ if ($image instanceof \OC_Image) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ /**
* Make a human file size
* @param int $bytes file size in bytes
* @return string a human readable file size
diff --git a/lib/private/templatelayout.php b/lib/private/templatelayout.php
index f5f079c8b2a..cbaadd5768f 100644
--- a/lib/private/templatelayout.php
+++ b/lib/private/templatelayout.php
@@ -76,6 +76,7 @@ class OC_TemplateLayout extends OC_Template {
$this->assign( 'user_uid', OC_User::getUser() );
$this->assign( 'appsmanagement_active', strpos(OC_Request::requestUri(), OC_Helper::linkToRoute('settings_apps')) === 0 );
$this->assign('enableAvatars', $this->config->getSystemValue('enable_avatars', true));
+ $this->assign('userAvatarSet', \OC_Helper::userAvatarSet(OC_User::getUser()));
} else if ($renderAs == 'error') {
parent::__construct('core', 'layout.guest', '', false);
$this->assign('bodyid', 'body-login');
@@ -89,7 +90,7 @@ class OC_TemplateLayout extends OC_Template {
if(empty(self::$versionHash)) {
self::$versionHash = md5(implode(',', OC_App::getAppVersions()));
}
-
+
$useAssetPipeline = self::isAssetPipelineEnabled();
if ($useAssetPipeline) {
$this->append( 'jsfiles', OC_Helper::linkToRoute('js_config', array('v' => self::$versionHash)));