Changeset 87574 in spip-zone for _plugins_/correction_liens_internes


Ignore:
Timestamp:
Feb 21, 2015, 7:28:51 PM (5 years ago)
Author:
maieul@…
Message:

et maintenant, corriger dans le cas où on a copié une url du privé

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/correction_liens_internes/trunk/correction_liens_internes_pipelines.php

    r87573 r87574  
    1414    return $flux;
    1515}
     16function correction_liens_internes_correction_url_prive($mauvaise_url,$composants_url){
     17        // Pour le cas où on a copié-collé une URL depuis espace public.
     18        $ancre = $composants_url["fragment"];
     19        $args =array();
     20        parse_str($composants_url["query"],$args);
     21        $exec = str_replace("_edit","",$args["exec"]); #prendre en compte les _edit
     22        if (array_key_exists("id_".$exec,$args)){
     23                $objet=$exec;
     24                $id_objet = $args["id_".$objet];
     25        }       
     26        return array($objet,$id_objet,$ancre);
     27}
     28
    1629function correction_liens_internes_correction_url_public($mauvaise_url,$composants_url){
    1730        // Pour le cas où on a copié-collé une URL depuis espace public.
     
    5871        $mauvaise_url = $lien[1];
    5972        $composants_url =  parse_url($mauvaise_url);   
    60         list ($objet, $id_objet,$ancre) = correction_liens_internes_correction_url_public($mauvaise_url,$composants_url);
     73
     74        // Url copiée depuis le privé ou depuis le public?
     75        if (strrpos($composants_url['path'],_DIR_RESTREINT_ABS)!=False){
     76                list ($objet, $id_objet,$ancre) = correction_liens_internes_correction_url_prive($mauvaise_url,$composants_url);
     77
     78        }
     79        else{
     80                list ($objet, $id_objet,$ancre) = correction_liens_internes_correction_url_public($mauvaise_url,$composants_url);
     81        }
    6182        if($objet && $id_objet){
    6283                if(isset($racc[$objet])){
Note: See TracChangeset for help on using the changeset viewer.