Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 1834 → Rev 1835

/trunk/jrest/lib/FormateurGroupeColonne.php
10,6 → 10,8
*/
define('SEPARATEUR_IMAGES', " / ");
define('PREFIX_CHAMPS_ETENDUS', "ext:");
// utilisé par formaterUrlUser() [ nécessaire pour le widget d'export)
define('USER_BASEURL', 'http://www.tela-botanica.org/profil:%d');
 
Class FormateurGroupeColonne {
 
24,7 → 26,8
'standard',
'avance',
'etendu',
'baseflor'
'baseflor',
'auteur'
);
 
// les données baseflor à récupérer: colonnes présentes dans cel_references
277,6 → 280,17
'dyna' => array(__CLASS__, 'champsEtendus_ligne'))),
);
}
 
if(isset($groupe_de_champs['auteur'])) {
$colonnes += array(
'observateur' => self::GenColInfo(Array('abbrev' => 'observateur',
'nom' => 'Observateur',
'extra' => 1,
'fonction_data' => 'formaterUrlUser',
'importable' => FALSE)),
);
}
 
return $colonnes;
}
 
299,16 → 313,15
}
 
public static function getLigneObservation(&$obs, &$colonnes, $cel = false) {
 
$ligne_formatee = array();
foreach($colonnes as $abbrev => $colonne) {
$valeur = null;
if($colonne['extra'] == 2 || ! is_null($colonne['dyna'])) continue;
// valeur direct depuis cel_obs ?
// valeur directe depuis cel_obs ?
if(isset($obs[$abbrev])) $valeur = $obs[$abbrev];
// pré-processeur de la champs
// pré-processeur des champs
if(function_exists($colonne['fonction'])) {
$valeur = $colonne['fonction']($valeur);
} elseif(method_exists(__CLASS__, $colonne['fonction'])) {
345,7 → 358,7
$ligne_formatee[] = $valeur;
}
 
// uniquement les champŝ dynamiques
// uniquement les champs dynamiques
foreach($colonnes as $abbrev => $colonne) {
$valeur = null;
if(is_null($colonne['dyna'])) continue;
427,6 → 440,15
return $date_formatee;
}
 
static function formaterUrlUser($obs) {
$is_id = is_numeric($obs['ce_utilisateur']);
return sprintf("%s %s <%s>%s",
$obs['prenom_utilisateur'],
$obs['nom_utilisateur'],
preg_replace(';@.*;', '@...', $obs['courriel_utilisateur']),
$is_id ? sprintf(' (' . USER_BASEURL . ')', $obs['ce_utilisateur']) : '');
}
 
static function getImages_preload($cel, $obsids) {
if(!$obsids) return;
$rec = Cel::db()->requeter(