From 633ea8da1060b62c173c6e78efdb6303cd204d6d Mon Sep 17 00:00:00 2001 From: jgaimard <jgaimard@git-test.afi-sa.fr> Date: Thu, 4 Apr 2013 15:25:46 +0000 Subject: [PATCH] Ecoute docs sonores casa --- library/Class/AdminVar.php | 3 ++- library/Class/Indexation.php | 2 +- library/Class/Notice.php | 28 ++++++++++++++++++++-------- 3 files changed, 23 insertions(+), 10 deletions(-) diff --git a/library/Class/AdminVar.php b/library/Class/AdminVar.php index cdc48693b23..593448b3ad1 100644 --- a/library/Class/AdminVar.php +++ b/library/Class/AdminVar.php @@ -66,7 +66,8 @@ class Class_AdminVar extends Storm_Model_Abstract { 'CSS_EDITOR', 'CMS_FORMULAIRES', 'MENU_BOITE', - 'INTERDIRE_MODIF_FICHE_ABONNE' + 'INTERDIRE_MODIF_FICHE_ABONNE', + 'ROOT_URL_ECOUTE' ); diff --git a/library/Class/Indexation.php b/library/Class/Indexation.php index 0294992ab64..17949d1ee1e 100644 --- a/library/Class/Indexation.php +++ b/library/Class/Indexation.php @@ -35,7 +35,7 @@ class Class_Indexation { // Lire formes rejetées $this->articles=array("L'","LE ","LA ","LES ","UN ","UNE "); - $this->inclu=array("AN","AS","OR","U2","AI","LU","XO","DO","RE","MI","FA","SI","AC","DC","XX","B","C","D","E","F","G","H","I","J","K","M","N","P","Q","R","S","T","V","W","X","Y","Z","L","YU","UT","LI","OC","PI","ZU","WU","TO","OZ","ZZ"); + $this->inclu=array("AN","AS","OR","U2","AI","LU","XO","DO","RE","MI","FA","SI","AC","DC","XX","B","C","D","E","F","G","H","I","J","K","M","N","P","Q","R","S","T","V","W","X","Y","Z","L","YU","UT","LI","OC","PI","ZU","WU","TO","OZ","ZZ","XX"); $this->exclu = array("LES","DES","MES","TES","ENTRE","CHEZ","SES","LEUR","MON","ENTRE","POUR","ELLE","ILS","COMME","DANS","EUX","CEUX","MAIS","MEME","SANS", "TOME","VERS","VOUS","CECI","CES","ETC","PARCE","QUE","QUEL","QUELLE","QUELS","QUELLES","PAS","QUI","QUOI","VOS","AFIN","CECI","CELA","LUI","PAR","PUIS","SOI"); diff --git a/library/Class/Notice.php b/library/Class/Notice.php index 7efab580c63..414dee6093a 100644 --- a/library/Class/Notice.php +++ b/library/Class/Notice.php @@ -803,15 +803,25 @@ class Class_Notice extends Storm_Model_Abstract { // ---------------------------------------------------------------- public function getMorceaux() { - // detecter gam - $data=$this->get_subfield('801', 'b'); - foreach($data as $champ) + // detecter url_ecoute en 464$3 + $data=$this->get_subfield('464', '3'); + + if(count($data)>0) + { + $this->root_url_ecoute=Class_AdminVar::get('ROOT_URL_ECOUTE'); + } + else { - if(strtoupper($champ)== "GAM") + // detecter gam + $data=$this->get_subfield('801', 'b'); + foreach($data as $champ) { - $ret=$this->getMorceauxGam(); - $ret['source']="GAM Annecy"; - return $ret; + if(strtoupper($champ)== "GAM") + { + $ret=$this->getMorceauxGam(); + $ret['source']="GAM Annecy"; + return $ret; + } } } @@ -844,7 +854,7 @@ class Class_Notice extends Storm_Model_Abstract { foreach($data as $champs) { $champ=$this->decoupe_bloc_champ($champs); - $titre=$auteur_nom=$auteur_prenom=$duree=$volume=''; + $titre=$auteur_nom=$auteur_prenom=$duree=$volume=$url_ecoute=''; foreach($champ as $sous_champ) { switch($sous_champ['code']) @@ -854,6 +864,7 @@ class Class_Notice extends Storm_Model_Abstract { case 'a' : $auteur_nom=$sous_champ['valeur']; break; case 'b' : $auteur_prenom=$sous_champ['valeur']; break; case 'v' : $volume=$sous_champ['valeur']; break; + case '3' : $url_ecoute=$this->root_url_ecoute.$sous_champ['valeur']; break; } } if(!$titre) continue; @@ -865,6 +876,7 @@ class Class_Notice extends Storm_Model_Abstract { $ret['nb_resultats']=$piste; if($volume > $ret['nombre_volumes']) $ret['nombre_volumes']=$volume; $ret["morceaux"][$volume][$piste]['titre']=$titre; + if($url_ecoute) $ret["morceaux"][$volume][$piste]["url_ecoute"]=$url_ecoute; } return $ret; } -- GitLab