From 1e865041b513cbdec96cfe155d9072e1546d4144 Mon Sep 17 00:00:00 2001 From: Vincent Zanotti Date: Fri, 10 Apr 2009 02:02:55 +0200 Subject: [PATCH] Fixes the hruid generation when mass-importing a new promotion. Signed-off-by: Vincent Zanotti --- core | 2 +- modules/admin.php | 13 ++++++++----- modules/axletter.php | 2 +- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/core b/core index adc69ce..82ccb54 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit adc69ced9c75421c5ee596fbd0a3426fffb9940c +Subproject commit 82ccb5452cd953d71c49e0075d9ecbbb2f6b5456 diff --git a/modules/admin.php b/modules/admin.php index b233c91..3c5b87a 100644 --- a/modules/admin.php +++ b/modules/admin.php @@ -691,13 +691,14 @@ class AdminModule extends PLModule $page->assign('bans', $bans); } - function getHruid($line, $key) + function getHruid($line, $partial_result, $key) { - var_dump($line); - if (!isset($line['nom']) || !isset($line['prenom']) || !isset($line['promo'])) { + if (!isset($partial_result['nom']) || + !isset($partial_result['prenom']) || + !isset($partial_result['promo'])) { return null; } - return make_forlife($line['prenom'], $line['nom'], $line['promo']); + return make_forlife($partial_result['prenom'], $partial_result['nom'], $partial_result['promo']); } function getMatricule($line, $key) @@ -738,9 +739,11 @@ class AdminModule extends PLModule $fields = array('hruid', 'nom', 'nom_ini', 'prenom', 'naissance_ini', 'prenom_ini', 'promo', 'promo_sortie', 'flags', 'matricule', 'matricule_ax', 'perms'); - $importer->forceValue('hruid', array($this, 'getHruid')); $importer->forceValue('promo', $promo); $importer->forceValue('promo_sortie', $promo + 3); + // The hruid generation callback is set last, so that it is called once 'promo' + // has already been computed for that line. + $importer->forceValue('hruid', array($this, 'getHruid')); break; case 'ax': $fields = array('matricule', 'matricule_ax'); diff --git a/modules/axletter.php b/modules/axletter.php index 9414f8d..9159b46 100644 --- a/modules/axletter.php +++ b/modules/axletter.php @@ -365,7 +365,7 @@ class AXLetterModule extends PLModule return $id ? $id : '0'; } - function createHash($line, $key) + function createHash($line, $partial_result, $key) { $hash = implode(time(), $line) . rand(); $hash = md5($hash); -- 2.1.4