profiles popup menu in sidebar

This commit is contained in:
Fabio Comuni 2011-09-05 16:55:40 +02:00
parent c7a9b1ae32
commit 08e54234e3
4 changed files with 53 additions and 6 deletions

View file

@ -860,9 +860,36 @@ function profile_sidebar($profile, $block = 0) {
$connect = False; $connect = False;
// show edit to yourself // show edit profile to yourself
if ($profile['uid'] == local_user()) { if ($profile['uid'] == local_user()) {
$profile['edit'] = array($a->get_baseurl(). '/profiles', t('Profiles'),"", t('Manage/edit profiles')); $profile['edit'] = array($a->get_baseurl(). '/profiles', t('Profiles'),"", t('Manage/edit profiles'));
$r = q("SELECT * FROM `profile` WHERE `uid` = %d",
local_user());
$profile['menu'] = array(
'chg_photo' => t('Change profile photo'),
'cr_new' => t('Create New Profile'),
'entries' => array(),
);
if(count($r)) {
foreach($r as $rr) {
$profile['menu']['entries'][] = array(
'photo' => $rr['thumb'],
'id' => $rr['id'],
'alt' => t('Profile Image'),
'profile_name' => $rr['profile-name'],
'visible' => (($rr['is-default']) ? '<strong>' . t('visible to everybody') . '</strong>'
: '<a href="' . $a->get_baseurl() . '/profperm/' . $rr['id'] . '" />' . t('Edit visibility') . '</a>')
);
}
}
} }

View file

@ -2,8 +2,21 @@
<div class="tool"> <div class="tool">
<div class="fn label">$profile.name</div> <div class="fn label">$profile.name</div>
{{ if $profile.edit }}<a class="icon s16 edit ttright" href="$profile.edit.0" title="$profile.edit.3"><span>$profile.edit.1</span></a>{{ endif }} {{ if $profile.edit }}
<div class="action">
<a class="icon s16 edit ttright" href="#" rel="#profiles-menu" title="$profile.edit.3"><span>$profile.edit.1</span></a>
<ul id="profiles-menu" class="menu-popup">
{{ for $profile.menu.entries as $e }}
<li><a href="profiles/$e.id"><img src='$e.photo'>$e.profile_name</a></li>
{{ endfor }}
<li><a href="profile_photo" >$profile.menu.chg_photo</a></li>
<li><a href="profiles/new" id="profile-listing-new-link">$profile.menu.cr_new</a></li>
</ul>
</div> </div>
{{ endif }}
</div>
{{ if $pdesc }}<div class="title">$profile.pdesc</div>{{ endif }} {{ if $pdesc }}<div class="title">$profile.pdesc</div>{{ endif }}
<div id="profile-photo-wrapper"><img class="photo" width="175" height="175" src="$profile.photo" alt="$profile.name"></div> <div id="profile-photo-wrapper"><img class="photo" width="175" height="175" src="$profile.photo" alt="$profile.name"></div>

View file

@ -35,7 +35,7 @@ a:hover {color: @LinkHover; text-decoration: underline; }
.tool { .tool {
height: auto; overflow: auto; height: auto; overflow: auto;
.label { float: left;} .label { float: left;}
.icon { float: right; } .action { float: right; }
} }
/* popup notifications */ /* popup notifications */
@ -168,11 +168,11 @@ ul.menu-popup {
.shadow(); .shadow();
a { display: block; color: @MenuItem; padding: 5px 10px;} a { display: block; color: @MenuItem; padding: 5px 10px; text-decoration: none;}
a:hover { background-color: @MenuItemHoverBg; } a:hover { background-color: @MenuItemHoverBg; }
.menu-sep { border-top: 1px solid @MenuItemSeparator; } .menu-sep { border-top: 1px solid @MenuItemSeparator; }
li { float: none; overflow: auto; height: auto; display: block; } li { float: none; overflow: auto; height: auto; display: block; }
li img { float: left; width: 16px; height: 16px; padding-right: 5px;}
.empty { .empty {
padding: 5px; padding: 5px;
text-align: center; text-align: center;

View file

@ -92,7 +92,7 @@ a:hover {
.tool .label { .tool .label {
float: left; float: left;
} }
.tool .icon { .tool .action {
float: right; float: right;
} }
/* popup notifications */ /* popup notifications */
@ -268,6 +268,7 @@ ul.menu-popup a {
display: block; display: block;
color: #2d2d2d; color: #2d2d2d;
padding: 5px 10px; padding: 5px 10px;
text-decoration: none;
} }
ul.menu-popup a:hover { ul.menu-popup a:hover {
background-color: #bdcdd4; background-color: #bdcdd4;
@ -281,6 +282,12 @@ ul.menu-popup li {
height: auto; height: auto;
display: block; display: block;
} }
ul.menu-popup li img {
float: left;
width: 16px;
height: 16px;
padding-right: 5px;
}
ul.menu-popup .empty { ul.menu-popup .empty {
padding: 5px; padding: 5px;
text-align: center; text-align: center;