Changeset 93431 in spip-zone


Ignore:
Timestamp:
Dec 7, 2015, 4:51:02 PM (6 years ago)
Author:
cedric@…
Message:

Report de r93430 : Utiliser partout autoriser(modifierurl) au lieu de autoriser(modifier) car cette derniere repond false quand l'objet n'existe plus en base, et dans ce cas precis on veut pouvoir supprimer l'URL
autoriser(modifierurl) verifie donc si l'objet existe encore en base et dans le cas contraire on s'en remet a autoriser(administrer,url)

Location:
_core_/plugins/urls_etendues
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • _core_/plugins/urls_etendues

  • _core_/plugins/urls_etendues/action/supprimer_url.php

    r93427 r93431  
    3333        if($row = sql_fetsel('*','spip_urls',$where)){
    3434
    35                 if (autoriser('modifier',$row['type'],$row['id_objet'])){
     35                if (autoriser('modifierurl',$row['type'],$row['id_objet'])){
    3636                        sql_delete('spip_urls',$where);
    3737                }
  • _core_/plugins/urls_etendues/action/urls_liberer.php

    r89285 r93431  
    2020
    2121        include_spip('inc/autoriser');
    22         if (autoriser('modifier',$type,$id)){
    23                 $arg = explode('-',$arg);
    24                 $type = array_shift($arg);
    25                 $id = array_shift($arg);
    26                 $url = implode('-',$arg);
    27 
     22        $arg = explode('-',$arg);
     23        $type = array_shift($arg);
     24        $id = array_shift($arg);
     25        $url = implode('-',$arg);
     26        if (autoriser('modifierurl',$type,$id)){
    2827                include_spip('action/editer_url');
    2928                url_delete($type, $id, $url);
  • _core_/plugins/urls_etendues/action/urls_verrouiller.php

    r89285 r93431  
    2020
    2121        include_spip('inc/autoriser');
    22         if (autoriser('modifier',$type,$id)){
    23                 $arg = explode('-',$arg);
    24                 $type = array_shift($arg);
    25                 $id = array_shift($arg);
    26                 $url = implode('-',$arg);
    27 
     22        $arg = explode('-',$arg);
     23        $type = array_shift($arg);
     24        $id = array_shift($arg);
     25        $url = implode('-',$arg);
     26        if (autoriser('modifierurl',$type,$id)){
    2827                include_spip('action/editer_url');
    2928                url_verrouiller($type, $id, $url);
  • _core_/plugins/urls_etendues/paquet.xml

    r93427 r93431  
    22        prefix="urls"
    33        categorie="statistique"
    4         version="1.5.4"
     4        version="1.5.5"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.1.*]"
  • _core_/plugins/urls_etendues/prive/objets/editer/url.html

    r59279 r93431  
    22<div class="editer_urls">
    33        [<span class='link'>
    4                 #SET{auth,#AUTORISER{modifier,#OBJET,#ID_OBJET}}
     4                #SET{auth,#AUTORISER{modifierurl,#OBJET,#ID_OBJET}}
    55                [(#GET{auth})
    66                <a href="#"
  • _core_/plugins/urls_etendues/prive/objets/liste/urls.html

    r81380 r93431  
    3535                        <td class='parent'>[(#ID_PARENT|?{#ID_PARENT})]</td>
    3636                        <td class='date secondaire'>[(#DATE|affdate_jourcourt)]</td>
    37                         <td class='action'>[(#AUTORISER{modifier,#TYPE,#ID_OBJET})[(#BOUTON_ACTION{[(#CHEMIN_IMAGE{supprimer-12}|balise_img{<:urls:bouton_supprimer_url:>})],[(#URL_ACTION_AUTEUR{supprimer_url,[(#ID_PARENT)-#URL],#SELF})],ajax})]]</td>
     37                        <td class='action'>[(#AUTORISER{modifierurl,#TYPE,#ID_OBJET})[(#BOUTON_ACTION{[(#CHEMIN_IMAGE{supprimer-12}|balise_img{<:urls:bouton_supprimer_url:>})],[(#URL_ACTION_AUTEUR{supprimer_url,[(#ID_PARENT)-#URL],#SELF})],ajax})]]</td>
    3838                </tr>
    3939        </BOUCLE_liste_urls>
  • _core_/plugins/urls_etendues/prive/squelettes/navigation/controler_urls.html

    r70295 r93431  
    11[(#AUTORISER{administrer,url}|sinon_interdire_acces)]
    22#BOITE_OUVRIR{'',raccourcis}
    3 [(#AUTORISER{modifier})
     3[(#AUTORISER{modifierurl})
    44
    55<p><:urls:actualiser_toutes_explication:></p>
  • _core_/plugins/urls_etendues/urls_pipeline.php

    r93092 r93431  
    2626}
    2727
     28function autoriser_modifierurl($faire, $type='', $id=0, $qui = NULL, $opt = NULL){
     29        if (autoriser('modifier',$type,$id,$qui,$opt)){
     30                return true;
     31        }
     32
     33        // si pas le droit de 'modifier', regarder d'un peu plus pres pourquoi
     34        if (!$type OR !intval($id)) {
     35                return false;
     36        }
     37        // verifier si l'objet existe encore en base
     38        $table_sql = table_objet_sql($type);
     39        $primary = id_table_objet($type);
     40        if (!sql_countsel($table_sql,"$primary=".intval($id))){
     41                return autoriser('administrer','url');
     42        }
     43        return false;
     44}
     45
    2846function urls_afficher_fiche_objet($flux){
    2947        if (isset($GLOBALS['meta']['urls_activer_controle'])
Note: See TracChangeset for help on using the changeset viewer.