Changeset 8136 in spip-zone


Ignore:
Timestamp:
Dec 19, 2006, 9:46:10 AM (12 years ago)
Author:
cedric@…
Message:

permettre de joindre des documents aux donnees
fin_gauche pour la conformite en xhtml 1.92
l'option 'lier aux articles' doit etre activee pour permettre de joindre des donnees d'une table a un article

Location:
_plugins_/_stable_/forms/forms_et_tables_1_9_1
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/action/forms_edit.php

    r7901 r8136  
    9191        $moderation = _request('moderation');
    9292        $public = _request('public');
     93        $linkable = _request('linkable');
     94        $documents = _request('documents');
    9395        $html_wrap = _request('html_wrap');
    9496
     
    129131                        "moderation="._q($moderation).", ".
    130132                        "public="._q($public).", ".
     133                        "linkable="._q($linkable?$linkable:'non').", ".
     134                        "documents="._q($documents?$documents:'non').", ".
    131135                        "html_wrap="._q($html_wrap)." ".
    132136                        "WHERE id_form="._q($id_form);
     
    145149                $moderation = $row['moderation'];
    146150                $public = $row['public'];
     151                $linkable = $row['linkable'];
     152                $documents = $row['documents'];
    147153                $email = unserialize($row['email']);
    148154                $champconfirm = $row['champconfirm'];
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/base/forms.php

    r8109 r8136  
    3232        "public" => "ENUM('non', 'oui') DEFAULT 'non' NOT NULL",
    3333        "linkable" => "ENUM('non', 'oui') DEFAULT 'non' NOT NULL",
     34        "documents" => "ENUM('non', 'oui') DEFAULT 'non' NOT NULL",
    3435        'html_wrap' => "text",
    3536        "maj"           => "TIMESTAMP");
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/base/forms_upgrade.php

    r8109 r8136  
    4949
    5050        function Forms_upgrade(){
    51                 $version_base = 0.22;
     51                $version_base = 0.23;
    5252                $current_version = 0.0;
    5353                if (   (isset($GLOBALS['meta']['forms_base_version']) )
     
    192192                        ecrire_meta('forms_base_version',$current_version=0.22);
    193193                }
     194                if ($current_version<0.23){
     195                        spip_query("ALTER TABLE spip_forms ADD documents ENUM('non', 'oui') DEFAULT 'non' NOT NULL AFTER linkable");
     196                        ecrire_meta('forms_base_version',$current_version=0.23);
     197                }
    194198                ecrire_metas();
    195199        }
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/exec/forms_edit.php

    r7901 r8136  
    211211                $row['moderation'] = "priori";
    212212                $row['public'] = "non";
     213                $row['linkable'] = "non";
     214                $row['documents'] = "non";
    213215                $focus = "antifocus";
    214216               
     
    300302        echo $out;
    301303
     304        if ($GLOBALS['spip_version_code']>=1.9203)
     305                echo fin_gauche();
    302306        echo fin_page();
    303307}
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/exec/forms_reponses.php

    r7369 r8136  
    201201
    202202
    203         fin_page();
     203        if ($GLOBALS['spip_version_code']>=1.9203)
     204                echo fin_gauche();
     205        echo fin_page();
    204206}
    205207
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/exec/forms_telecharger.php

    r7346 r8136  
    116116                echo "</div>\n";
    117117        }
    118         fin_page();
     118        if ($GLOBALS['spip_version_code']>=1.9203)
     119                echo fin_gauche();
     120        echo fin_page();
    119121
    120122}
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/exec/forms_tous.php

    r7310 r8136  
    5555        }
    5656       
     57        if ($GLOBALS['spip_version_code']>=1.9203)
     58                echo fin_gauche();
    5759        echo fin_page();
    5860}
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/exec/template/tables_affichage.php

    r8109 r8136  
    4747        }
    4848       
     49        if ($GLOBALS['spip_version_code']>=1.9203)
     50                echo fin_gauche();
    4951        echo fin_page();
    5052}
     
    8688       
    8789
     90        if ($GLOBALS['spip_version_code']>=1.9203)
     91                echo fin_gauche();
    8892        echo fin_page();
    8993}
     
    118122        fin_boite_info();
    119123       
    120         echo afficher_documents_colonne($id_donnee, "donnee", _request('exec'));
     124        $res = spip_query("SELECT documents FROM spip_forms WHERE id_form="._q($id_form));
     125        $row = spip_fetch_array($res);
     126        if ($row['documents']=='oui'){
     127                if ($id_donnee){
     128                        # affichage sur le cote des pieces jointes, en reperant les inserees
     129                        # note : traiter_modeles($texte, true) repere les doublons
     130                        # aussi efficacement que propre(), mais beaucoup plus rapidement
     131                        echo afficher_documents_colonne($id_donnee, "donnee", _request('exec'));
     132                } else {
     133                        # ICI GROS HACK
     134                        # -------------
     135                        # on est en new ; si on veut ajouter un document, on ne pourra
     136                        # pas l'accrocher a l'article (puisqu'il n'a pas d'id_article)...
     137                        # on indique donc un id_article farfelu (0-id_auteur) qu'on ramassera
     138                        # le moment venu, c'est-ˆ-dire lors de la creation de l'article
     139                        # dans editer_article.
     140                        echo afficher_documents_colonne(0-$GLOBALS['auteur_session']['id_auteur'], "donnee", _request('exec'));
     141                }
     142        }
    121143       
    122144        creer_colonne_droite();
     
    147169                echo $liste;
    148170        }
    149 
     171        if ($GLOBALS['spip_version_code']>=1.9203)
     172                echo fin_gauche();
    150173        echo fin_page();
    151174}
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/forms_options.php

    r8107 r8136  
    2828function autoriser_form_modifierdonnee_dist($faire, $type, $id_form, $qui, $opt) {
    2929        // un admin dans le back office a toujours le droit de modifier
     30        if (!$opt['id_donnee']) return false;
    3031        if (($qui['statut'] == '0minirezo')&&!_DIR_RESTREINT) return true;
    3132        $result = spip_query("SELECT * FROM spip_forms WHERE id_form="._q($id_form));
    3233        if (!$row = spip_fetch_array($result)) return false;
    33         if (!$opt['id_donnee']) return false;
    3434        $dejareponse=Forms_verif_cookie_sondage_utilise($id_form);
    3535        if (($row['modifiable'] == 'oui') && $dejareponse) {
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/inc/forms.php

    r8107 r8136  
    490490                                                "WHERE id_donnee="._q($id_donnee));
    491491                                        spip_query("DELETE FROM spip_forms_donnees_champs WHERE id_donnee="._q($id_donnee));
    492                                 } elseif (autoriser('insererdonnee', 'form', $id_form, NULL, array('id_donnee'=>$id_donnee))){
     492                                } elseif ($a=autoriser('insererdonnee', 'form', $id_form, NULL, array('id_donnee'=>$id_donnee))){
    493493                                        spip_query("INSERT INTO spip_forms_donnees (id_form, id_auteur, date, ip, url, confirmation,statut, cookie) ".
    494494                                        "VALUES ("._q($id_form).","._q($id_auteur).", NOW(),"._q($GLOBALS['ip']).","._q($url).", '$confirmation', '$statut',"._q($cookie).")");
    495495                                        $id_donnee = spip_insert_id();
     496                                        # cf. GROS HACK exec/template/tables_affichage
     497                                        # rattrapper les documents associes a cette nouvelle donnee
     498                                        # ils ont un id = 0-id_auteur
     499                                        spip_query("UPDATE spip_documents_donnees SET id_donnee = $id_donnee WHERE id_donnee = ".(0-$GLOBALS['auteur_session']['id_auteur']));
    496500                                }
    497501                                if (!$id_donnee) {
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/inc/forms_edit.php

    r7901 r8136  
    553553        $out .= fin_cadre_enfonce(true);
    554554       
     555        $out .= debut_cadre_enfonce("",true);
     556        $out .= "<input type='checkbox' name='linkable' id='linkable' value='oui'";
     557        if ($row['linkable']=='oui') $out .= "checked='checked' /><label for='linkable'><b>";
     558        else $out .=" /><label for='linkable'>";
     559        $out .= _T("forms:lier_articles");
     560        if ($row['linkable']=='oui') $out .= "</b>";
     561        $out .= "</label><br />";
     562        $out .= "<input type='checkbox' name='documents' id='documents' value='oui'";
     563        if ($row['documents']=='oui') $out .= "checked='checked' /><label for='documents'><b>";
     564        else $out .=" /><label for='documents'>";
     565        $out .= _T("forms:lier_documents");
     566        if ($row['documents']=='oui') $out .= "</b>";
     567        $out .= "</label><br />";
     568        $out .= fin_cadre_enfonce(true);
     569       
    555570        $out .= "<label for='wrap'>"._T("forms:html_wrapper")."</label> :";
    556571        $out .= " &nbsp;<textarea name='html_wrap' id='wrap'  class='verdana2' style='width:90%;height:3em;' >".
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/inc/forms_lier_donnees.php

    r7648 r8136  
    202202        JOIN spip_forms_champs AS c ON c.champ=dc.champ AND c.id_form=d.id_form
    203203        JOIN spip_forms AS f ON f.id_form=d.id_form
    204         WHERE c.specifiant='oui' AND dc.id_donnee="._q($id_donee)." ORDER BY c.rang");
     204        WHERE c.specifiant='oui' AND dc.id_donnee="._q($id_donee)." AND f.linkable='oui' ORDER BY c.rang");
    205205        /*var_dump("SELECT c.titre,dc.valeur FROM spip_forms_donnees_champs AS dc
    206206        JOIN spip_forms_donnees AS d ON d.id_donnee=dc.id_donnee
  • _plugins_/_stable_/forms/forms_et_tables_1_9_1/lang/forms_fr.php

    r8107 r8136  
    9595'liste_choix' => "Liste des choix propos&eacute;s",
    9696'lien_retirer_donnee' =>"Retirer le lien",
     97'lier_articles' => "Permettre d'associer les donn&eacute;es aux articles",
     98'lier_documents' => "Permettre de joindre des documents aux donn&eacute;es",
    9799
    98100'moderation_donnees' => 'Valider les donn&eacute;es avant publication :',
Note: See TracChangeset for help on using the changeset viewer.