Changeset 104104 in spip-zone


Ignore:
Timestamp:
Apr 27, 2017, 2:37:12 PM (3 years ago)
Author:
kent1@…
Message:

Faire une redirection sur la page d'édition de l'objet plus propre

Utiliser les fonction d'édition d'objet si possible

Refuser le traitement en ajax

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/titre_de_logo/trunk/formulaires/editer_titre_logo.php

    r104099 r104104  
    1616
    1717function formulaires_editer_titre_logo_charger_dist($objet, $id_objet, $retour = '', $options = array()) {
    18 
    1918        $exec = (_request('exec')) ? _request('exec') : '';
    2019        $objet = objet_type($objet);
     
    3534                return false;
    3635        }
    37         // Si on a des options, on les stocke
    38         if (!is_array($options)) {
    39                 $options = unserialize($options);
    40                 if (is_array($options) and array_key_exists('_pipelines', $options)) {
    41                         // Comme on est un formulaire dans un formulaire,
    42                         // on enlève le _pipeline du premier formulaire
    43                         unset($options['_pipelines']);
    44                 }
    45                 if (is_array($options) and array_key_exists('_options', $options)) {
    46                         $options = array_merge($options, $options['_options']);
    47                         // Comme on est un formulaire dans un formulaire,
    48                         // on enlève le _options du premier formulaire
    49                         unset($options['_options']);
    50                 }
    51         }
    5236
    53         $requete_sql = sql_fetsel('titre_logo,descriptif_logo', $table_objet, "$_id_objet=$id_objet");
     37        $requete_sql = sql_fetsel('titre_logo,descriptif_logo', $table_objet, $_id_objet.'='.intval($id_objet));
    5438        if ($requete_sql) {
    5539                $titre_logo = $requete_sql['titre_logo'];
     
    6347                'descriptif_logo' => $descriptif_logo,
    6448                'exec' => $exec,
    65                 //'logo_on' => $options['logo_on'],
    6649                '_options' => $options,
    67                 );
     50        );
    6851
    6952        return $valeurs;
     
    8366        $_id_objet = id_table_objet($objet);
    8467
    85         sql_updateq(
    86                 $table_objet,
    87                 array('titre_logo' => $titre_logo, 'descriptif_logo' => $descriptif_logo),
    88                 $_id_objet.'='.$id_objet
    89         );
    90         $update_sql = sql_fetsel(
    91                 'titre_logo,descriptif_logo',
    92                 $table_objet,
    93                 'titre_logo='.sql_quote($titre_logo).' AND descriptif_logo='.sql_quote($descriptif_logo)
    94         );
     68        if (include_spip('action/editer_'.$objet) && function_exists($objet.'_modifier')) {
     69                $function = charger_fonction('modifier', $objet);
     70                $erreur = $function($id_objet, array('titre_logo' => $titre_logo, 'descriptif_logo' => $descriptif_logo));
     71                if (!$modif) {
     72                        $update_sql = true;
     73                }
     74        } else {
     75                $update_sql = sql_updateq(
     76                        $table_objet,
     77                        array('titre_logo' => $titre_logo, 'descriptif_logo' => $descriptif_logo),
     78                        $_id_objet.'='.intval($id_objet)
     79                );
     80        }
    9581
    9682        if ($update_sql) {
     83                refuser_traiter_formulaire_ajax();
    9784                $res['message_ok'] = _T('info_modification_enregistree');
    98                 $res['redirect'] = "index.php?exec=$objet&$_id_objet=$id_objet";
     85                $res['redirect'] = generer_url_entite($id_objet, $objet);
    9986        } else {
    10087                $res['message_erreur'] = _T('avis_erreur');
Note: See TracChangeset for help on using the changeset viewer.