{
$page->changeTpl('fusionax/names.tpl');
- $res = XDB::query('SELECT COUNT(*)
- FROM fusionax_anciens AS f
- INNER JOIN profiles AS p ON (f.ax_id = p.ax_id)');
- $page->assign('total', $res->fetchOneCell());
-
- $res = XDB::rawFetchOneCell("SELECT COUNT(*)
- FROM fusionax_anciens AS f
- INNER JOIN profiles AS p ON (f.ax_id = p.ax_id)
- INNER JOIN profile_public_names AS ppn ON (p.pid = ppn.pid)
- WHERE IF(f.partic_patro, CONCAT(f.partic_patro, CONCAT(' ', f.Nom_patronymique)), f.Nom_patronymique) NOT IN (ppn.lastname_initial, ppn.lastname_main, ppn.lastname_marital, ppn.lastname_ordinary)
- OR IF(f.partic_nom, CONCAT(f.partic_nom, CONCAT(' ', f.Nom_usuel)), f.Nom_usuel) NOT IN (ppn.lastname_initial, ppn.lastname_main, ppn.lastname_marital, ppn.lastname_ordinary)
- OR f.Nom_complet NOT IN (ppn.lastname_initial, ppn.lastname_main, ppn.lastname_marital, ppn.lastname_ordinary)");
- $page->assign('lastnameIssues', $res);
-
- $res = XDB::rawFetchOneCell('SELECT COUNT(*)
- FROM fusionax_anciens AS f
- INNER JOIN profiles AS p ON (f.ax_id = p.ax_id)
- INNER JOIN profile_public_names AS ppn ON (p.pid = ppn.pid)
- WHERE f.prenom NOT IN (ppn.firstname_initial, ppn.firstname_main, ppn.firstname_ordinary)');
- $page->assign('firstnameIssues', $res);
+ if ($action == 'first') {
+ $res = XDB::rawFetchAllAssoc('SELECT p.pid, p.ax_id, p.hrpid,
+ f.prenom, ppn.firstname_initial, ppn.firstname_main, ppn.firstname_ordinary
+ FROM fusionax_anciens AS f
+ INNER JOIN profiles AS p ON (f.ax_id = p.ax_id)
+ INNER JOIN profile_public_names AS ppn ON (p.pid = ppn.pid)
+ WHERE f.prenom NOT IN (ppn.firstname_initial, ppn.firstname_main, ppn.firstname_ordinary)');
+ $page->assign('firstnameIssues', $res);
+ } elseif ($action == 'last') {
+ $res = XDB::rawFetchAllAssoc("SELECT p.pid, p.ax_id, p.hrpid,
+ f.Nom_patronymique, f.Nom_usuel, f.Nom_complet,
+ ppn.lastname_initial, ppn.lastname_main, ppn.lastname_marital, ppn.lastname_ordinary
+ FROM fusionax_anciens AS f
+ INNER JOIN profiles AS p ON (f.ax_id = p.ax_id)
+ INNER JOIN profile_public_names AS ppn ON (p.pid = ppn.pid)
+ WHERE IF(f.partic_patro, CONCAT(f.partic_patro, CONCAT(' ', f.Nom_patronymique)), f.Nom_patronymique) NOT IN (ppn.lastname_initial, ppn.lastname_main, ppn.lastname_marital, ppn.lastname_ordinary)
+ AND IF(f.partic_nom, CONCAT(f.partic_nom, CONCAT(' ', f.Nom_usuel)), f.Nom_usuel) NOT IN (ppn.lastname_initial, ppn.lastname_main, ppn.lastname_marital, ppn.lastname_ordinary)
+ AND f.Nom_complet NOT IN (ppn.lastname_initial, ppn.lastname_main, ppn.lastname_marital, ppn.lastname_ordinary)");
+ $page->assign('lastnameIssues', $res);
+ } else {
+ $res = XDB::query('SELECT COUNT(*)
+ FROM fusionax_anciens AS f
+ INNER JOIN profiles AS p ON (f.ax_id = p.ax_id)');
+ $page->assign('total', $res->fetchOneCell());
+
+ $res = XDB::rawFetchOneCell("SELECT COUNT(*)
+ FROM fusionax_anciens AS f
+ INNER JOIN profiles AS p ON (f.ax_id = p.ax_id)
+ INNER JOIN profile_public_names AS ppn ON (p.pid = ppn.pid)
+ WHERE IF(f.partic_patro, CONCAT(f.partic_patro, CONCAT(' ', f.Nom_patronymique)), f.Nom_patronymique) NOT IN (ppn.lastname_initial, ppn.lastname_main, ppn.lastname_marital, ppn.lastname_ordinary)
+ AND IF(f.partic_nom, CONCAT(f.partic_nom, CONCAT(' ', f.Nom_usuel)), f.Nom_usuel) NOT IN (ppn.lastname_initial, ppn.lastname_main, ppn.lastname_marital, ppn.lastname_ordinary)
+ AND f.Nom_complet NOT IN (ppn.lastname_initial, ppn.lastname_main, ppn.lastname_marital, ppn.lastname_ordinary)");
+ $page->assign('lastnameIssues', $res);
+
+ $res = XDB::rawFetchOneCell('SELECT COUNT(*)
+ FROM fusionax_anciens AS f
+ INNER JOIN profiles AS p ON (f.ax_id = p.ax_id)
+ INNER JOIN profile_public_names AS ppn ON (p.pid = ppn.pid)
+ WHERE f.prenom NOT IN (ppn.firstname_initial, ppn.firstname_main, ppn.firstname_ordinary)');
+ $page->assign('firstnameIssues', $res);
+ }
+ $page->assign('action', $action);
}
function handler_edu($page, $action = '')
<p></p>
+{if $action eq "first"}
+{if $firstnameIssues|@count eq 0}
+<p>Aucun problème avec les prénoms.</p>
+{else}
+<table class="bicol">
+ <tr>
+ <th>pid</th>
+ <th>ax id</th>
+ <th>hrpid</th>
+ <th colspan="4">Prénoms</th>
+ </tr>
+ <tr>
+ <th></th>
+ <th></th>
+ <th></th>
+ <th>AX</th>
+ <th>initial</th>
+ <th>principal</th>
+ <th>ordinaire</th>
+ </tr>
+{foreach from=$firstnameIssues item=profile}
+ <tr>
+ <td>{$profile.pid}</td>
+ <td>{$profile.ax_id}</td>
+ <td>{$profile.hrpid}</td>
+ <td>{$profile.prenom}</td>
+ <td>{$profile.firstname_initial}</td>
+ <td>{$profile.firstname_main}</td>
+ <td>{$profile.firstname_ordinary}</td>
+ </tr>
+{/foreach}
+</table>
+{/if}
+{elseif $action eq "last"}
+{if $lastnameIssues|@count eq 0}
+<p>Aucun problème avec les noms.</p>
+{else}
+<table class="bicol">
+ <tr>
+ <th>pid</th>
+ <th>ax id</th>
+ <th>hrpid</th>
+ <th colspan="7">Noms</th>
+ </tr>
+ <tr>
+ <th></th>
+ <th></th>
+ <th></th>
+ <th>AX patro</th>
+ <th>AX usuel</th>
+ <th>AX complet</th>
+ <th>initial</th>
+ <th>principal</th>
+ <th>marital</th>
+ <th>ordinaire</th>
+ </tr>
+{foreach from=$lastnameIssues item=profile}
+ <tr>
+ <td>{$profile.pid}</td>
+ <td>{$profile.ax_id}</td>
+ <td>{$profile.hrpid}</td>
+ <td>{$profile.Nom_patronymique}</td>
+ <td>{$profile.Nom_usuel}</td>
+ <td>{$profile.Nom_complet}</td>
+ <td>{$profile.lastname_initial}</td>
+ <td>{$profile.lastname_main}</td>
+ <td>{$profile.lastname_marital}</td>
+ <td>{$profile.lastname_ordinary}</td>
+ </tr>
+{/foreach}
+</table>
+{/if}
+
+{else}
<p>
Il y a {$total} camarades dans l'intersection de nos bases.
</p>
<ul>
- <li>{$lastnameIssues} des noms de l'AX ne sont pas dans les notres.</li>
- <li>{$firstnameIssues} des prénoms de l'AX ne sont pas dans les notres.</li>
+ <li><a href="fusionax/names/last">{$lastnameIssues} des noms de l'AX ne sont pas dans les notres.</a></li>
+ <li><a href="fusionax/names/first">{$firstnameIssues} des prénoms de l'AX ne sont pas dans les notres.</a></li>
</ul>
+{/if}
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}