Changeset 32206 in spip-zone


Ignore:
Timestamp:
Oct 18, 2009, 7:21:58 PM (11 years ago)
Author:
apachot@…
Message:

récupérer les infos d'un auteur avec les webservices
exple : http://www.risom.fr/spip.php?page=author_see&id=24075

Location:
_plugins_/spip-pmb/2_0_0
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/spip-pmb/2_0_0/author_see.html

    r31958 r32206  
    1 [(#SET{tab_resultat,[(#ENV{id}|pmb_auteur_extraire{[(#CONFIG{spip_pmb/url})],[(#ENV{pmb_page}|sinon{1})]})]})
     1[(#SET{tab_resultat,[(#ENV{id}|pmb_auteur_extraire{[(#CONFIG{spip_pmb/url})]})]})
    22]<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
    33<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="#LANG" lang="#LANG" dir="#LANG_DIR">
    44<head>
    5 <title>[(#GET{tab_resultat}|pmb_tableau2_valeur{0,titre_auteur}|textebrut) - ][(#NOM_SITE_SPIP|textebrut)]</title>[
     5<title>[(#GET{tab_resultat}|pmb_notice_champ{'author_name'}|textebrut) - ][(#NOM_SITE_SPIP|textebrut)]</title>[
    66<meta name="description" content="(#GET{tab_resultat}|pmb_tableau2_valeur{0,infos_auteur}|attribut_html)" />
    77]<INCLURE{fond=inc-head}>
     
    1919
    2020        [(#REM) Fil d'Ariane ]
    21         <div id="hierarchie"><a href="#URL_SITE_SPIP/"><:accueil_site:></a> &gt; <:pmb:auteurs:> &gt; [(#GET{tab_resultat}|pmb_tableau2_valeur{0,titre_auteur}|pmb_remplacer{"Auteur ",""}|couper{80})]</div>
     21        <div id="hierarchie"><a href="#URL_SITE_SPIP/"><:accueil_site:></a> &gt; <:pmb:auteurs:> &gt; [(#GET{tab_resultat}|pmb_notice_champ{'author_name'}|couper{80})]</div>
    2222        <div class="cartouche">
    2323                        <div class="surlignable">
    24                                 <h1 class="entry-title[ (#GET{tab_resultat}|pmb_tableau2_valeur{0,titre_auteur}|pmb_remplacer{"Auteur ",""}|strlen|>{30}|?{'titre-long',''})][ (#GET{tab_resultat}|pmb_tableau2_valeur{0,infos_auteur}|?{'','pas-de-texte'})]">
    25                                         [(#GET{tab_resultat}|pmb_tableau2_valeur{0,titre_auteur}|pmb_remplacer{"Auteur ",""}|image_typo{police=togase.ttf,taille=30,couleur=333300,largeur=600})]
     24                                <h1 class="entry-title[ (#GET{tab_resultat}|pmb_notice_champ{'author_name'}|strlen|>{30}|?{'titre-long',''})]">
     25                                        [(#GET{tab_resultat}|pmb_notice_champ{'author_name'}|image_typo{police=togase.ttf,taille=30,couleur=333300,largeur=600})]
    2626                                </h1>
    2727                        </div>
    2828        </div>
    29         [<div class="corps-conteneur surlignable">
    30                         <div class="texte entry-content">(#GET{tab_resultat}|pmb_tableau2_valeur{0,infos_auteur})</div>
    31         </div>]
    32 
     29        <div class="corps-conteneur surlignable">
     30                        <div class="pmb-ouvrage-infos">
     31                       
     32                        [<p><:pmb:author_date:> : (#GET{tab_resultat}|pmb_notice_champ{'author_date'})</p>]
     33                        [<p><:pmb:author_web:> : <a href="[(#GET{tab_resultat}|pmb_notice_champ{'author_web'})]">(#GET{tab_resultat}|pmb_notice_champ{'author_web'})</a></p>]
     34                        [<p><:pmb:author_lieu:> : (#GET{tab_resultat}|pmb_notice_champ{'author_lieu'})</p>]
     35                        [<p><:pmb:author_ville:> : (#GET{tab_resultat}|pmb_notice_champ{'author_ville'})</p>]
     36                        [<p><:pmb:author_pays:> : (#GET{tab_resultat}|pmb_notice_champ{'author_pays'})</p>]
     37                       
     38                       
     39                </div>
     40                [<div class="texte entry-content">(#GET{tab_resultat}|pmb_notice_champ{'author_comment'}|ucfirst)</div>]
     41        </div>
    3342        <div class="menu articles ouvrages">
    34                        
     43                        [(#SET{tab_notices,[(#GET{tab_resultat}|pmb_notice_champ{'notice_ids'})]})]
    3544                        <B_tab_resultat>
    3645                        <h2><:pmb:ouvrages:></h2>
    3746                        <ul>
    38                                 <BOUCLE_tab_resultat(POUR){tableau #GET{tab_resultat}}>
     47                                <BOUCLE_tab_resultat(POUR){tableau #GET{tab_notices}}>
     48                                        [(#COMPTEUR_BOUCLE|>{1}|?{' ',''})
     49                                        <li>
     50                                                [(#GET{tab_notices}|pmb_tableau2_valeur{#CLE, logo_src}|oui)
     51                                                    [(#REM|?{'','<img />'}|inserer_attribut{class,spip_logos}|inserer_attribut{src,[(#GET{tab_notices}|pmb_tableau2_valeur{#CLE, logo_src}|copie_locale)]}|image_reduire{130,0})]
     52                                                ]
     53                                                <h3[(#ENV{look_TITLE}|oui) class="surlignable"]><a href="index.php?page=notice_display&id=[(#GET{tab_notices}|pmb_tableau2_valeur{#CLE, id})]">[(#GET{tab_notices}|pmb_tableau2_valeur{#CLE, titre})]</a></h3>
     54                                                [<small[(#ENV{look_AUTHOR}|oui) class="surlignable"]><:par_auteur:> (#GET{tab_notices}|pmb_tableau2_valeur{#CLE, lesauteurs})</small>]
     55                                                [(#ENV{look_PUBLISHER}|oui)[[(#GET{tab_notices}|pmb_tableau2_valeur{#CLE, lesauteurs}|oui)<br />]<small class="surlignable">&eacute;diteur : (#GET{tab_notices}|pmb_tableau2_valeur{#CLE, editeur})</small>]]
     56                                       
     57                                                [<div class="introduction entry-content[(#ENV{look_ABSTRACT}|oui) surlignable]">(#GET{tab_notices}|pmb_tableau2_valeur{#CLE, resume}|couper{300,'...'})</div>]
     58                                                <a class="lire-la-suite pas_surlignable" title="[(#GET{tab_notices}|pmb_tableau2_valeur{#CLE, titre})]" href="index.php?page=notice_display&id=[(#GET{tab_notices}|pmb_tableau2_valeur{#CLE, id})]"><:lire_la_suite:> +</a>
    3959
    40                                
    41                                 [(#COMPTEUR_BOUCLE|>{1}|?{' ',''})
    42                                         <li>
    43                                                 [(#REM|?{'','<img />'}|inserer_attribut{class,spip_logos}|inserer_attribut{src,[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, logo_src}|copie_locale)]}|image_reduire{130,0})]
    44        
    45                                                 <h3><a href="index.php?page=notice_display&id=[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, id})]&seule=1">[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, titre})]</a></h3>
    46                                                 [<small><:par_auteur:> (#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, lesauteurs})</small>]
    47                                        
    48                                                 [<div class="introduction entry-content">(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, resume}|couper{300,'...'})</div>]
    49                                                 <a class="lire-la-suite" title="[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, titre})]" href="index.php?page=notice_display&id=[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, id})]&seule=1"><:pmb:lire_la_suite:> +</a>
    50 
    51                                         </li>
    52                                 ]
     60                                        </li>]
    5361                                </BOUCLE_tab_resultat>
    5462                        </ul>
    5563
    56                         [(#GET{tab_resultat}|pmb_tableau2_valeur{0,nav_bar})]
    57 
     64                       
    5865                        </B_tab_resultat>
    5966                                <:pmb:pas_d_ouvrages_trouves:>
  • _plugins_/spip-pmb/2_0_0/inc-recherche-catalogue.html

    r32157 r32206  
    2525                                                    [(#REM|?{'','<img />'}|inserer_attribut{class,spip_logos}|inserer_attribut{src,[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, logo_src}|copie_locale)]}|image_reduire{130,0})]
    2626                                                ]
    27                                                 <h3[(#ENV{look_TITLE}|oui) class="surlignable"]><a href="index.php?page=notice_display&id=[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, id})]&seule=1">[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, titre})]</a></h3>
     27                                                <h3[(#ENV{look_TITLE}|oui) class="surlignable"]><a href="index.php?page=notice_display&id=[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, id})]">[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, titre})]</a></h3>
    2828                                                [<small[(#ENV{look_AUTHOR}|oui) class="surlignable"]><:par_auteur:> (#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, lesauteurs})</small>]
    2929                                                [(#ENV{look_PUBLISHER}|oui)[[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, lesauteurs}|oui)<br />]<small class="surlignable">&eacute;diteur : (#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, editeur})</small>]]
    3030                                       
    3131                                                [<div class="introduction entry-content[(#ENV{look_ABSTRACT}|oui) surlignable]">(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, resume}|couper{300,'...'})</div>]
    32                                                 <a class="lire-la-suite pas_surlignable²" title="[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, titre})]" href="index.php?page=notice_display&id=[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, id})]&seule=1"><:lire_la_suite:> +</a>
     32                                                <a class="lire-la-suite pas_surlignable²" title="[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, titre})]" href="index.php?page=notice_display&id=[(#GET{tab_resultat}|pmb_tableau2_valeur{#CLE, id})]"><:lire_la_suite:> +</a>
    3333
    3434                                </li>
  • _plugins_/spip-pmb/2_0_0/lang/pmb_fr.php

    r32159 r32206  
    5555'resultats' => 'R&eacute;sultats',
    5656'a' => '&agrave;',
    57 'sur' => 'sur'
    58 
    59 
     57'sur' => 'sur',
     58'author_date' => 'Date',
     59'author_web' => 'Site internet',
     60'author_comment' => 'Commentaire',
     61'author_lieu' => 'Lieu',
     62'author_ville' => 'Ville',
     63'author_pays' => 'Pays'
    6064);
    6165?>
  • _plugins_/spip-pmb/2_0_0/notice_display.html

    r32159 r32206  
    7474               
    7575                <div class="pmb-ouvrage-infos">
    76                         [<p><:pmb:auteur:> : <a href="[(#URL_PAGE{author_see}|parametre_url{id,[(#GET{notice}|pmb_notice_champ{'id_auteur'})]})]">(#GET{notice}|pmb_notice_champ{'lesauteurs'})</a></p>]
     76                        [<p><:pmb:auteur:> : [(#GET{notice}|pmb_notice_champ{'id_auteur'}|oui)
     77                                                  <a href="[(#URL_PAGE{author_see}|parametre_url{id,[(#GET{notice}|pmb_notice_champ{'id_auteur'})]})]">
     78                                              ]
     79                                             (#GET{notice}|pmb_notice_champ{'lesauteurs'})
     80                                             [(#GET{notice}|pmb_notice_champ{'id_auteur'}|oui)</a>]
     81                        </p>]
    7782                        [<p><:pmb:serie:> : (#GET{notice}|pmb_notice_champ{'serie'})</p>]
    7883                        [<p><:pmb:type:> : (#GET{notice}|pmb_notice_champ{'type'})</p>]
    79                         [<p><:pmb:editeur:> : <a href="[(#URL_PAGE{publisher_see}|parametre_url{id,[(#GET{notice}|pmb_notice_champ{'id_editeur'})]})]">(#GET{notice}|pmb_notice_champ{'editeur'})</a></p>]
    80                         [<p><:pmb:collection:> : <a href="[(#URL_PAGE{coll_see}|parametre_url{id,[(#GET{notice}|pmb_notice_champ{'id_collection'})]})]">(#GET{notice}|pmb_notice_champ{'collection'})</a></p>]
     84                        [<p><:pmb:editeur:> : [(#GET{notice}|pmb_notice_champ{'id_editeur'}|oui)<a href="[(#URL_PAGE{publisher_see}|parametre_url{id,[(#GET{notice}|pmb_notice_champ{'id_editeur'})]})]">](#GET{notice}|pmb_notice_champ{'editeur'})[(#GET{notice}|pmb_notice_champ{'id_editeur'}|oui)</a>]</p>]
     85                        [<p><:pmb:collection:> : [(#GET{notice}|pmb_notice_champ{'id_collection'}|oui)<a href="[(#URL_PAGE{coll_see}|parametre_url{id,[(#GET{notice}|pmb_notice_champ{'id_collection'})]})]">](#GET{notice}|pmb_notice_champ{'collection'})[(#GET{notice}|pmb_notice_champ{'id_collection'}|oui)</a>]</p>]
    8186                        [<p><:pmb:format:> : (#GET{notice}|pmb_notice_champ{'format'})</p>]
    8287                        [<p><:pmb:annee_publication:> : (#GET{notice}|pmb_notice_champ{'annee_publication'})</p>]
  • _plugins_/spip-pmb/2_0_0/pmb_mes_fonctions.php

    r32159 r32206  
    215215}
    216216
    217 function pmb_auteur_extraire($id_auteur, $url_base, $pmb_page=1, $mode='auto') {
    218         $tableau_resultat = Array();
    219        
    220         if ($htmldom = pmb_charger_page($url_base, "index.php?lvl=author_see&page=".$pmb_page."&id=".$id_auteur,$mode)) {
    221                         $tableau_resultat[0] = Array();
    222                         $tableau_resultat[0]['nav_bar'] = $htmldom->find('.navbar',0)->outertext;
    223                         $tableau_resultat[0]['nav_bar'] = pmb_transformer_nav_bar($tableau_resultat[0]['nav_bar']);
    224                         $tableau_resultat[0]['titre_auteur'] = $htmldom->find('#aut_see h3',0)->innertext;
    225                        
    226                         $resultats_recherche = $htmldom->find('.notice-child');
    227                         $tableau_resultat[0]['nb_resultats'] = count($resultats_recherche);
    228                         $i = 1;
    229                         foreach($resultats_recherche as $res) {
    230                                 $tableau_resultat[$i] = Array();                               
    231                                 pmb_parser_notice_apercu($res, $tableau_resultat[$i]);
    232                                 $i++;
    233                         }       
    234         }
     217function pmb_auteur_extraire($id_auteur, $url_base) {
     218        $tableau_resultat = Array();
     219       
     220        pmb_ws_charger_wsdl($ws, $url_base);
     221        try {
     222              $result = $ws->pmbesAuthors_get_author_information_and_notices($id_auteur,0);
     223              if ($result) {
     224                  $tableau_resultat['author_id'] = $result['information']->author_id;
     225                  $tableau_resultat['author_type'] = $result['information']->author_type;
     226                  $tableau_resultat['author_name'] = $result['information']->author_name;
     227                  $tableau_resultat['author_rejete'] = $result['information']->author_rejete;
     228                  $tableau_resultat['author_see'] = $result['information']->author_see;
     229                  $tableau_resultat['author_date'] = $result['information']->author_date;
     230                  $tableau_resultat['author_web'] = $result['information']->author_web;
     231                  $tableau_resultat['author_comment'] = $result['information']->author_comment;
     232                  $tableau_resultat['author_lieu'] = $result['information']->author_lieu;
     233                  $tableau_resultat['author_ville'] = $result['information']->author_ville;
     234                  $tableau_resultat['author_pays'] = $result['information']->author_pays;
     235                  $tableau_resultat['author_subdivision'] = $result['information']->author_subdivision;
     236                  $tableau_resultat['author_numero'] = $result['information']->author_numero;
     237                  $tableau_resultat['notice_ids'] = Array();
     238
     239                  $liste_notices = Array();
     240                  foreach($result['notice_ids'] as $cle=>$valeur) {
     241                    $liste_notices[] = $valeur;
     242                  }
     243                  pmb_ws_recuperer_tab_notices($liste_notices, $ws, $tableau_resultat['notice_ids']);
     244                  $cpt=0;
     245                  foreach($liste_notices as $notice) {
     246                    $tableau_resultat['notice_ids'][$cpt]['id'] = $notice;
     247                    $cpt++;
     248                  }
     249                }
     250        } catch (SoapFault $fault) {
     251                print("Erreur : ".$fault->faultcode." : ".$fault->faultstring);
     252        }
    235253        return $tableau_resultat;
    236254
     
    655673
    656674}
     675//récuperer une notice en xml via les webservices
     676function pmb_ws_recuperer_tab_notices ($listenotices, &$ws, &$tresultat) {
     677       
     678       
     679        try {   
     680       
     681        $tresultat['id'] = $id_notice;
     682                  $r=$ws->pmbesNotices_fetchNoticeList($listenotices,"pmb_xml_unimarc","utf8",true,true);
     683                  $cpt=0;
     684                  foreach($r as $value) {
     685                      $tresultat[$cpt] = Array();
     686                      pmb_ws_parser_notice_xml($id_notice, $value, $tresultat[$cpt]);
     687                      $cpt++;
     688                  }
     689               
     690
     691        } catch (SoapFault $fault) {
     692                print("Erreur : ".$fault->faultcode." : ".$fault->faultstring);
     693        }
     694
     695       
     696
     697}
    657698
    658699//charger les webservices
Note: See TracChangeset for help on using the changeset viewer.