Changeset 5355 in spip-zone


Ignore:
Timestamp:
Sep 14, 2006, 3:23:54 PM (15 years ago)
Author:
cedric@…
Message:

version qui commence a marcher pas mal ... recupere titre et langue en cron, et panneau d'admin ?exec=liens_tous
ajouter &verifier pour forcer une verif

Location:
_plugins_/checklink
Files:
1 deleted
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/checklink/exec/liens_tous.php

    r5352 r5355  
    1616       
    1717        debut_droite();
    18        
    19         echo recuperer_fond("exec/table_liens",array());
     18        if (_request('verifier')!==NULL){
     19                include_spip('inc/checklink_verification');
     20                if (is_numeric($id_lien=_request('verifier'))) {
     21                        $row = spip_fetch_array(spip_query("SELECT url,date_verif,statut FROM spip_liens WHERE id_lien=$id_lien"));
     22                        if ($row)
     23                                checklink_verifie_lien($row["url"],'', in_array($row['statut'],array('ind','oui'))?'sus':'off');
     24                }
     25                else {
     26                        cron_checklink_verification(1);
     27                }
     28        }
     29        $contexte = array();
     30        if (_request('statut')) $contexte['statut'] = _request('statut');
     31        echo recuperer_fond("exec/table_liens",$contexte);
    2032       
    2133        echo "<br />\n";
  • _plugins_/checklink/exec/table_liens.html

    r5352 r5355  
    77alt="site-24"  /></div><div style='background-color: #C5E41C; color: black; padding: 3px; padding-left: 30px; border-bottom: 1px solid #444444;' class='verdana2'><b>Les sites r&eacute;f&eacute;renc&eacute;s</b></div></div><table width='100%' cellpadding='2' cellspacing='0' border='0'>
    88<tr style='background-color: #dddddd;'>
    9 <td class="arial1" style='border-bottom: 1px solid #444444;' colspan="3">
     9<td class="arial1" style='border-bottom: 1px solid #444444;' colspan="5">
    1010<div class='pagination'>#PAGINATION</div>
    1111</td>
    1212</tr>
    13 <BOUCLE_liens(LIENS){pagination 20}>
     13<BOUCLE_liens(LIENS){statut?}{pagination 20}>
    1414<tr class='tr_liste'>
    15 <td class="arial11"><img src='img_pack/[(#GET{#STATUT})]' alt='Statut #STATUT' /></td>
     15<td class="arial11"><img src='img_pack/[(#GET{#STATUT})]' alt="Statut #STATUT"' /></td>
    1616<td class="arial11">[(#URL|lignes_longues{60})]</td>
    17 <td class="arial11">[<a href='#URL'><:lien_visite_site:></a>]</td>
     17<td class="arial11">[(#LANG*)]</td>
     18<td class="arial11">[<a href='#URL' title="[(#TITRE|texte_backend)]"><:lien_visite_site:></a>]</td>
     19<td class="arial11">[<a href='[(#SELF|parametre_url{verifier,#ID_LIEN})]' title="[(#TITRE|texte_backend)]"><:verifier:></a>]</td>
    1820</tr>
    1921</BOUCLE_liens>
  • _plugins_/checklink/inc/checklink.php

    r5350 r5355  
    8383                        if ($url){
    8484                                if (strpos($url,_DIR_IMG)!==FALSE){
    85                                         if (spip_fetch_array(spip_query("SELECT id_document FROM spip_documents WHERE fichier=".spip_abstract_quote($url))))
     85                                        $url2 = substr($url,strlen(_DIR_RACINE));
     86                                        if (spip_fetch_array(spip_query("SELECT id_document FROM spip_documents WHERE fichier=".spip_abstract_quote($url2))))
    8687                                                $url = null;
    8788                                }
     
    124125                                        else{
    125126                                                // nouveau lien, que l'on presume bon, mais a verifier
    126                                                 $titre = $titre_auto=='non' ? $titre : "(sans titre)";
    127                                                 $lang = $lang_auto=='non' ? $lang : "fr";
     127                                                $titre = $titre_auto=='non' ? $titre : "";
     128                                                $lang = $lang_auto=='non' ? $lang : "";
    128129                                                $statut = 'ind';
    129130                                                $verification = '1';
  • _plugins_/checklink/inc/checklink_verification.php

    r5350 r5355  
    66        $boundary="";
    77        $statut = recuperer_page($url, false, false, 1048576, $datas, $boundary, false, $date_verif);
    8         // inchangee
     8        // inchangee : on met juste a jour les infos
    99        if ($statut==200){
    1010                spip_query("UPDATE spip_liens SET statut='oui',date_verif=NOW() WHERE url=".spip_abstract_quote($url));
     11                spip_log("checklink : $url statut 200");
    1112                return;
    1213        }
    1314        // absente
    14         if (in_array($statut,array())){
     15        if ($statut===false){
    1516                spip_query("UPDATE spip_liens SET statut='$maj_statut',date_verif=NOW() WHERE url=".spip_abstract_quote($url));
     17                spip_log("checklink : $url introuvable, passage a $maj_statut");
    1618                return;
    1719        }
    1820        // presente
    1921        // extraire le titre et la langue
     22        $texte = $statut;
     23        $titre = null;
     24        $lang = null;
     25        if (preg_match(',<title[^>]*>(.*)</title>,Uims',$texte,$reg))
     26                $titre = trim($reg[1]);
     27        else if (preg_match(',<(h[1-6])[^>]*>.*</$1>,Uims',$texte,$reg))
     28                $titre = trim($reg[2]);
    2029
     30        if (preg_match(',<html[^>]*>,Uims',$texte,$reg))
     31                $lang = extraire_attribut($reg[0],'lang');
     32        if (!$lang){
     33                // en depit on cherche un lang= quelque part ...
     34                if (preg_match('/lang\s*=\s*[\'"]?([a-z\-]{2,5})/Uims',$texte,$reg))
     35                        $lang=$reg[1];
     36        }
     37
     38        spip_query("UPDATE spip_liens SET statut='oui',date_verif=NOW() WHERE url=".spip_abstract_quote($url));
     39        if ($titre)
     40                spip_query("UPDATE spip_liens SET titre=".spip_abstract_quote($titre)." WHERE url=".spip_abstract_quote($url)." AND titre_auto='oui'");
     41        if ($lang)
     42                spip_query("UPDATE spip_liens SET lang=".spip_abstract_quote(strtolower($lang))." WHERE url=".spip_abstract_quote($url)." AND lang_auto='oui'");
     43        spip_log("checklink : $url mise a jour, passage a 'oui'");
    2144}
    2245
Note: See TracChangeset for help on using the changeset viewer.