Changeset 80547 in spip-zone


Ignore:
Timestamp:
Feb 6, 2014, 4:30:15 PM (6 years ago)
Author:
cedric@…
Message:

Les actions supprimer ne font que mettre en statut poubelle/refuse, plus de risque de pertes de données à cause d'une action maladroite
on enleve le bouton "Supprimer" sur la page d'un formulaire

Location:
_plugins_/formidable/trunk
Files:
1 deleted
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/formidable/trunk/action/supprimer_formulaire.php

    r65620 r80547  
    1717        // si id_formulaire n'est pas un nombre, on ne fait rien
    1818        if ($id_formulaire = intval($arg)) {
    19                 // On supprime le formulaire lui-même
    20                 $ok = sql_delete(
    21                         'spip_formulaires',
    22                         'id_formulaire = '.$id_formulaire
    23                 );
    24                
    25                 if ($ok){
    26                         // Si c'est bon, on récupère les réponses pour les supprimer
    27                         $reponses = sql_allfetsel(
    28                                 'id_formulaires_reponse',
    29                                 'spip_formulaires_reponses',
    30                                 'id_formulaire = '.$id_formulaire
    31                         );
    32                         $reponses = $reponses ? array_map('reset', $reponses) : false;
    33                
    34                         // On supprime les réponses s'il y en a
    35                         if ($reponses){
    36                                 $ok = sql_delete(
    37                                         'spip_formulaires_reponses',
    38                                         sql_in('id_formulaires_reponse', $reponses)
    39                                 );
    40                        
    41                                 // Si c'est bon, on supprime les champs des réponses
    42                                 if ($ok){
    43                                         $ok = sql_delete(
    44                                                 'spip_formulaires_reponses_champs',
    45                                                 sql_in('id_formulaires_reponse', $reponses)
    46                                         );
    47                                 }
    48                         }
    49                 }
     19
     20                $set = array('statut'=>'poubelle');
     21                include_spip("action/editer_formulaire");
     22                formulaire_modifier($id_formulaire,$set);
     23
    5024        }
    51        
    52         if ($ok){
    53                 if (!$redirect = _request('redirect'))
    54                         $redirect = generer_url_ecrire('formulaires');
    55                
    56                 include_spip('inc/headers');
    57                 redirige_par_entete(str_replace("&","&",urldecode($redirect)));
    58         }
     25
    5926}
    6027
  • _plugins_/formidable/trunk/action/supprimer_formulaires_reponse.php

    r36592 r80547  
    1717        // si id_formulaires_reponse n'est pas un nombre, on ne fait rien
    1818        if ($id_formulaires_reponse = intval($arg)) {
    19                 // On récupère l'id_formulaire pour la redirection
    20                 $id_formulaire = intval(sql_getfetsel(
    21                         'id_formulaire',
    22                         'spip_formulaires_reponses',
    23                         'id_formulaires_reponse = '.$id_formulaires_reponse
    24                 ));
    25                
    26                 // On supprime la réponse
    27                 $ok = sql_delete(
    28                         'spip_formulaires_reponses',
    29                         'id_formulaires_reponse = '.$id_formulaires_reponse
    30                 );
    31                
    32                 // Si c'est bon, on supprime les champs des réponses
    33                 if ($ok){
    34                         $ok = sql_delete(
    35                                 'spip_formulaires_reponses_champs',
    36                                 'id_formulaires_reponse = '.$id_formulaires_reponse
    37                         );
    38                 }
     19
     20                include_spip("action/editer_objet");
     21                $set = array('statut'=>'refuse');
     22                objet_modifier('formulaires_reponse',$id_formulaires_reponse,$set);
     23
    3924        }
    4025       
    41         if ($ok){
    42                 if (!$redirect = _request('redirect'))
    43                         $redirect = parametre_url(generer_url_ecrire('formulaires_reponses'), 'id_formulaire', $id_formulaire);
    44                
    45                 include_spip('inc/headers');
    46                 redirige_par_entete(str_replace("&","&",urldecode($redirect)));
    47         }
    4826}
    4927
  • _plugins_/formidable/trunk/paquet.xml

    r80542 r80547  
    22        prefix="formidable"
    33        categorie="communication"
    4         version="2.0.1"
     4        version="2.0.2"
    55        etat="test"
    66        compatibilite="[3.0.0;3.0.*]"
  • _plugins_/formidable/trunk/prive/squelettes/extra/formulaire.html

    r80512 r80547  
    44        [(#AUTORISER{editer, formulaire}|oui)
    55        [(#URL_ACTION_AUTEUR{dupliquer_formulaire, #ID_FORMULAIRE}|icone_horizontale{<:formidable:formulaires_dupliquer:>,formulaire-dupliquer-24})]
    6         ]
    7         [(#AUTORISER{editer, formulaire, #ID_FORMULAIRE}|oui)
    8         [(#URL_ACTION_AUTEUR{supprimer_formulaire, #ID_FORMULAIRE}|inserer_attribut{'onclick','return confirm("<:formidable:formulaires_supprimer_confirmation:>");'}
    9         |icone_horizontale{<:formidable:formulaires_supprimer:>,formulaire-supprimer-24})]
    106        ]
    117#BOITE_FERMER
Note: See TracChangeset for help on using the changeset viewer.