case 'profile':
$this->UpdateOnDismiss();
- pl_redirect('profile/edit');
+ pl_redirect('profile/edit/' . $this->user->profile()->hrpid);
break;
case 'photo':
case 'geoloc':
$this->UpdateOnDismiss();
- pl_redirect('profile/edit/adresses');
+ pl_redirect('profile/edit/' . $this->user->profile()->hrpid . '/adresses');
+ break;
+
+ case 'merge':
+ $this->UpdateOnDismiss();
+ $flags = self::ListMergeIssues($this->user->profile());
+ if ($flags->hasFlag('job')) {
+ pl_redirect('profile/edit/' . $this->user->profile()->hrpid . '/emploi');
+ } else if ($flags->hasFlag('address')) {
+ pl_redirect('profile/edit/' . $this->user->profile()->hrpid . '/adresses');
+ } else {
+ pl_redirect('profile/edit/' . $this->user->profile()->hrpid);
+ }
break;
}
}
parent::Prepare($page);
$profile = $this->user->profile();
+ $page->assign('profile_merge', self::ListMergeIssues($profile));
$page->assign('profile_incitation', $profile->is_old);
$page->assign('profile_last_update', $profile->last_change);
$page->assign('photo_incitation', !$profile->has_photo);
return true;
}
+ private static function ListMergeIssues(Profile $profile)
+ {
+ if (Platal::globals()->merge->state != 'done') {
+ return null;
+ }
+ $flags = XDB::fetchOneCell('SELECT issues
+ FROM profile_merge_issues
+ WHERE pid = {?}', $profile->id());
+ if (!$flags) {
+ return null;
+ }
+ return new PlFlagSet($flags);
+ }
+
public static function IsCandidate(User &$user, $candidate)
{
$profile = $user->profile();
if (!$profile) {
return false;
}
- return !$profile->has_photo || $profile->is_old;
+ return !$profile->has_photo || $profile->is_old
+ || !is_null(self::ListMergeIssues($profile));
}
}
{* *}
{**************************************************************************}
-{if $profile_incitation}
+{if $profile_merge}
+ La récente fusion des annuaires de l'AX et de Polytechnique.org a mis à jour des incertitudes sur
+ ton profil. Afin de lever ces incertitudes, peux-tu vérifier et revalider les éléments suivants :
+ <a href="{$reminder->baseurl()}/merge" style="text-decoration: none">
+ {foreach from=$profile_merge item=field name=flags}
+ {if $field eq 'name'}ton nom{*
+ *}{elseif $field eq 'job'}tes activités professionnelles{*
+ *}{elseif $field eq 'address'}tes adresses{*
+ *}{elseif $field eq 'promo'}ta promotion d'étude{*
+ *}{elseif $field eq 'phone'}tes numéros de téléphone{*
+ *}{elseif $field eq 'education'}tes formations{*
+ *}{/if}{if !$smarty.flags.last}, {/if}
+ {/foreach}
+ </a>
+{elseif $profile_incitation}
La dernière mise à jour de ta <a href="profile/{$smarty.session.hruid}" class="popup2">fiche</a>
date du {$profile_last_update|date_format}. Il est possible qu'elle ne soit pas à jour.
Si tu souhaites la modifier,