From 79270914e952308fb164792b4c1b0879a23ce5d1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Rapha=C3=ABl=20Barrois?= Date: Tue, 21 Jun 2011 23:54:45 +0200 Subject: [PATCH] Fix profile display. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Raphaël Barrois --- modules/profile.php | 17 +++++++++-------- templates/profile/profile.tpl | 19 +++++++++---------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/modules/profile.php b/modules/profile.php index 4c9f998..b9c5698 100644 --- a/modules/profile.php +++ b/modules/profile.php @@ -224,13 +224,14 @@ class ProfileModule extends PLModule } // Determines the access level at which the profile will be displayed. - if (!S::logged() || !S::user()->checkPerms('directory_ax') || Env::v('view') == 'public') { - $view = 'public'; - } else if (!S::user()->checkPerms('directory_private') || Env::v('view') == 'ax') { - $view = 'ax'; + if (Env::v('view') == 'public') { + $view = ProfileVisibility::VIS_PUBLIC; + } else if (Env::v('view') == 'ax') { + $view = ProfileVisibility::VIS_AX; } else { - $view = 'private'; + $view = ProfileVisibility::VIS_PRIVATE; } + $vis = ProfileVisibility::defaultForRead($view); // Display pending picture if (S::logged() && Env::v('modif') == 'new') { @@ -241,7 +242,7 @@ class ProfileModule extends PLModule if (is_null($pid)) { $owner = User::getSilent($id); if ($owner) { - $profile = $owner->profile(true, Profile::FETCH_ALL, $view); + $profile = $owner->profile(true, Profile::FETCH_ALL, $vis); if ($profile) { $pid = $profile->id(); } @@ -249,7 +250,7 @@ class ProfileModule extends PLModule } else { // Fetches profile's and profile's owner information and redirects to // marketing if the owner has not subscribed and the requirer has logged in. - $profile = Profile::get($pid, Profile::FETCH_ALL, $view); + $profile = Profile::get($pid, Profile::FETCH_ALL, $vis); $owner = $profile->owner(); } if (is_null($pid)) { @@ -271,7 +272,7 @@ class ProfileModule extends PLModule $page->setTitle($profile->fullName()); // Determines and displays the virtual alias. - if (!is_null($owner) && $profile->alias_pub == 'public') { + if (!is_null($owner) && $profile->isVisible($profile->alias_pub)) { $page->assign('virtualalias', $owner->emailAlias()); } diff --git a/templates/profile/profile.tpl b/templates/profile/profile.tpl index 823f592..13004b4 100644 --- a/templates/profile/profile.tpl +++ b/templates/profile/profile.tpl @@ -47,7 +47,7 @@ $($.closeOnEsc); {assign var=photo value=$profile->getPhoto(false)} {if $photo}Photo de {$profile->fullName()}{/if} - {if $logged && $view eq 'private' && ( $profile->section|smarty:nodefaults || $profile->getBinets()|smarty:nodefaults || ($owner && $owner->groups(true,true)|smarty:nodefaults))} + {if $logged && $profile->isVisible(#ProfileVisibility::VIS_AX#) && ( $profile->section|smarty:nodefaults || $profile->getBinets()|smarty:nodefaults || ($owner && $owner->groups(true,true)|smarty:nodefaults))}

À l'X…

{if $profile->section}
Section : {$profile->section}
{/if} @@ -55,7 +55,7 @@ $($.closeOnEsc); {if $binets|@count}
Binet{if count($binets) > 1}s{/if} : {', '|implode:$profile->getBinetsNames()}
{/if} - {if $owner && $view eq 'private'} + {if $owner && $profile->isVisible(#ProfileVisibility::VIS_AX#)} {assign var=groups value=$owner->groups(true,true)} {if $groups|@count}
Groupe{if count($groups) > 1}s{/if} et institution{if count($groups) > 1}s{/if} X :
@@ -68,8 +68,7 @@ $($.closeOnEsc); {/if} - {* 458752 stands for 0x70000 = Profile::NETWORKING_ALL *} - {assign var=networking value=$profile->getNetworking(458752)} + {assign var=networking value=$profile->getNetworking(#Profile::NETWORKING_ALL#)} {if count($networking) > 0}

Sur le web...

{foreach from=$networking item=network} @@ -93,7 +92,7 @@ $($.closeOnEsc);
{if $profile->isFemale()}•{/if} - {if $view eq 'private'}{$profile->private_name}{else}{$profile->public_name}{/if} + {if $profile->isVisible(#ProfileVisibility::VIS_PRIVATE#)}{$profile->private_name}{else}{$profile->public_name}{/if} {if $logged}  {if !$profile->isDead()}{* @@ -122,7 +121,7 @@ $($.closeOnEsc); {/if}
- {if $logged && $view eq 'private' && $owner && $owner->state eq 'active'} + {if $logged && $profile->isVisible(#ProfileVisibility::VIS_AX#) && $owner && $owner->state eq 'active'}