Changeset 7727 in spip-zone


Ignore:
Timestamp:
Dec 2, 2006, 2:55:02 PM (12 years ago)
Author:
fil@…
Message:

widgets fonctionnent (au moins un peu) avec forms_et_tables_1.9.1_compatible_sans_doute

Location:
_plugins_/_stable_/widgets
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/_stable_/widgets/action/widgets_html.php

    r7642 r7727  
    1414        $f = charger_fonction($type.'_'.$champ, 'controleurs', true)
    1515        OR $f = charger_fonction($champ, 'controleurs', true)
     16        OR $f = charger_fonction($type, 'controleurs', true)
    1617        OR $f = 'controleur_dist';
    1718        list($html,$status) = $f($regs);
  • _plugins_/_stable_/widgets/action/widgets_store.php

    r7642 r7727  
    7676                    }
    7777
     78                                // recuperer l'existant pour calculer son md5 et verifier
     79                                // qu'il n'a pas ete modifie entre-temps
     80
     81                                // on fait une exception pour forms_donnees, on verra plus tard
     82                                // comment faire ca de maniere generique
     83                                if ($type != 'forms_donnees') {
     84
    7885                                $data = array();
    7986                                foreach ($content as $champtable => $val) {
     
    93100                        break;
    94101                    }
     102                                } // fin exception
     103
    95104                    $modifs[] = array($type, $modele, $id, $content, $wid);
    96105                }
     
    140149                                    $fun = 'revisions_sites';
    141150                                    break;
     151                               
     152                                # plugin forms&tables
     153                                case 'forms_donnees':
     154                                        include_spip('inc/forms');
     155                                        $fun = 'Forms_revision_donnee';
     156                                        break;
     157
    142158                                // cas geres de la maniere la plus standard
    143159                                case 'auteur':
     
    182198
    183199        // et maintenant refaire l'affichage des widgets modifies
     200        include_spip('inc/texte');
    184201        foreach ($modifs as $m) {
    185202                list($type, $modele, $id, $content, $wid) = $modif;
     
    199216            }
    200217            // vues par defaut
     218            else
     219           
     220            // cas de forms
     221            if ($type == 'forms_donnees') {
     222                $q = "SELECT valeur FROM spip_forms_donnees_champs WHERE champ="._q($modele)." AND id_donnee="._q($id);
     223                        $s = spip_query($q);
     224                        if ($t = spip_fetch_array($s))
     225                                $return[$wid] = typo($t['valeur']);
     226            }
    201227            else {
    202228                // Par precaution on va rechercher la valeur
     
    207233
    208234                // seul spip core sait rendre les donnees
    209                 include_spip('inc/texte');
    210235                if (in_array($modele,
    211236                array('chapo', 'texte', 'descriptif', 'ps'))) {
Note: See TracChangeset for help on using the changeset viewer.