Changeset 42226 in spip-zone


Ignore:
Timestamp:
Nov 12, 2010, 2:54:18 PM (10 years ago)
Author:
cedric@…
Message:

Une modif majeure sur les formulaires de notation :
il faut passer objet et id_objet dans _objet et _id_objet sinon cela empeche de noter sur une page avec objet ou id_objet dans l'url
Par ailleurs, le plugin se passe bien de CFG si bonux est la.

Location:
_plugins_/notation
Files:
2 added
8 edited
2 moved

Legend:

Unmodified
Added
Removed
  • _plugins_/notation/fonds/notation_config.html

    r28108 r42226  
    11[(#CHEMIN{img_pack/note.gif}|debut_cadre_trait_couleur{1,"",<:notation:configuration_notation:>})]
    2 <div class="ajax">#FORMULAIRE_CONFIG_NOTATION</div>
     2<div class="ajax">#FORMULAIRE_CONFIGURER_NOTATION</div>
    33[(#VAL{1}|fin_cadre_trait_couleur)]
  • _plugins_/notation/formulaires/configurer_notation.html

    r42221 r42226  
    44       
    55<div class="formulaire_spip formulaire_configurer_notation formulaire_configurer_notation_ponderation">
    6 [<div class="formulaire_message formulaire_message_ok">(#ENV*{message_ok})</div>]
    7 [<div class="formulaire_message formulaire_message_erreur">(#ENV*{message_erreur})</div>]
     6[<div class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</div>]
     7[<div class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</div>]
    88
    99<form method="post" action="#ENV{action}"><div>
  • _plugins_/notation/formulaires/jaime.html

    r35290 r42226  
    11<!--formulaire_notation-->
    2 <BOUCLE_note(spip_notations_objets){objet=(#ENV{objet}|objet_type)}{id_objet}>
     2<BOUCLE_note(spip_notations_objets){objet=(#ENV*{_objet}|objet_type)}{id_objet=#ENV*{_id_objet}}>
    33#SET{note_ponderee,#NOTE_PONDEREE}
    44#SET{total,#NOMBRE_VOTES}
    55</BOUCLE_note>
    66<div class="formulaire_notation formulaire_#FORM ajax">
    7         [(#NOTATION_ETOILE{[(#GET{note_ponderee})],[(#ENV*{objet})][(#ENV*{id_objet})]})]
     7        [(#NOTATION_ETOILE{[(#GET{note_ponderee})],[(#ENV*{_objet})][(#ENV*{_id_objet})]})]
    88        [<span class="note">(#GET{total}) [(#GET{total}|>{1}|?{<:notation:votes:>,<:notation:vote:>})]</span>]
    99        [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
     
    1717                            du coup, prefixe par notation_
    1818                        ]
    19                         <input type="hidden" name="notation_id_donnees" id="id_donnees[(#ENV*{_form_id})]" value="[(#ENV*{id_objet})]" />
     19                        <input type="hidden" name="notation_id_donnees" id="id_donnees[(#ENV*{_form_id})]" value="[(#ENV*{_id_objet})]" />
    2020                        <input type="hidden" name="content" id="content[(#ENV*{_form_id})]" value="" />
    2121                        [(#ENV{id_notation}|non)
  • _plugins_/notation/formulaires/jaime_jaimepas.html

    r35290 r42226  
    11<!--formulaire_notation-->
    2 <BOUCLE_note(spip_notations_objets){objet=(#ENV{objet}|objet_type)}{id_objet}>
     2<BOUCLE_note(spip_notations_objets){objet=(#ENV*{_objet}|objet_type)}{id_objet=#ENV*{_id_objet}}>
    33#SET{note,#NOTE}
    44#SET{note_ponderee,#NOTE_PONDEREE}
     
    66</BOUCLE_note>
    77<div class="formulaire_notation formulaire_#FORM ajax">
    8         [(#NOTATION_ETOILE{[(#GET{note_ponderee})],[(#ENV*{objet})][(#ENV*{id_objet})]})]
     8        [(#NOTATION_ETOILE{[(#GET{note_ponderee})],[(#ENV*{_objet})][(#ENV*{_id_objet})]})]
    99        [<span class="note">(#GET{total}) [(#GET{total}|>{1}|?{<:notation:votes:>,<:notation:vote:>})]</span>]
    1010        [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
     
    1818                            du coup, prefixe par notation_
    1919                        ]
    20                         <input type="hidden" name="notation_id_donnees" id="id_donnees[(#ENV*{_form_id})]" value="[(#ENV*{id_objet})]" />
     20                        <input type="hidden" name="notation_id_donnees" id="id_donnees[(#ENV*{_form_id})]" value="[(#ENV*{_id_objet})]" />
    2121                        <input type="hidden" name="content" id="content[(#ENV*{_form_id})]" value="" />
    2222
  • _plugins_/notation/formulaires/notation.html

    r33536 r42226  
    11<!--formulaire_notation-->
    2 <BOUCLE_note(spip_notations_objets){objet=(#ENV{objet}|objet_type)}{id_objet}>
     2<BOUCLE_note(spip_notations_objets){objet=(#ENV*{_objet}|objet_type)}{id_objet=#ENV*{_id_objet}}>
    33#SET{note,#NOTE}
    44#SET{note_ponderee,#NOTE_PONDEREE}
     
    1010                #ACTION_FORMULAIRE{#SELF}
    1111                <div style="display:inline">
    12                         [(#NOTATION_ETOILE_CLICK{[(#GET{note_ponderee})],[(#ENV*{objet})][(#ENV*{id_objet})]})]
     12                        [(#NOTATION_ETOILE_CLICK{[(#GET{note_ponderee})],[(#ENV*{_objet})][(#ENV*{_id_objet})]})]
    1313                        [(#REM) ne pas envoyer une variable commencant par id_
    1414                            sinon elle se retrouve dans l'url (fonctionnement normal de SPIP
    1515                            du coup, prefixe par notation_
    1616                        ]
    17                         <input type="hidden" name="notation_id_donnees" id="id_donnees[(#ENV*{_form_id})]" value="[(#ENV*{id_objet})]" />
     17                        <input type="hidden" name="notation_id_donnees" id="id_donnees[(#ENV*{_form_id})]" value="[(#ENV*{_id_objet})]" />
    1818                        <input type="hidden" name="content" id="content[(#ENV*{_form_id})]" value="" />
    1919                        <input type="submit" class="access" value="Voter"/>
     
    2424
    2525[(#ENV**{editable}|non)
    26         [(#NOTATION_ETOILE{[(#GET{note_ponderee})],[(#ENV*{objet})][(#ENV*{id_objet})]})]
     26        [(#NOTATION_ETOILE{[(#GET{note_ponderee})],[(#ENV*{_objet})][(#ENV*{_id_objet})]})]
    2727        [<span class="note">(#GET{total}) [(#GET{total}|>{1}|?{<:notation:votes:>,<:notation:vote:>})]</span>]
    2828]
  • _plugins_/notation/formulaires/notation.php

    r39065 r42226  
    1515include_spip('inc/session');
    1616
     17/**
     18 * Charger la notation d'un objet
     19 * Attention : $objet est ici en fait le nom de la table
     20 * "articles" et pas "article", ce nommage est malheureux
     21 *
     22 * @param <type> $objet
     23 * @param <type> $id_objet
     24 * @return boolean
     25 */
    1726function formulaires_notation_charger_dist($objet, $id_objet){
    1827
     28        $type = objet_type($objet); // securite
     29        $table = table_objet($type);
    1930        // definition des valeurs de base du formulaire
    2031        $valeurs = array(
    21                 'objet'=>$objet,
    22                 'id_objet'=>$id_objet,
     32                '_objet'=>$table,
     33                '_id_objet'=>$id_objet,
    2334                'editable'=>true,
    2435                '_note_max' => notation_get_nb_notes(),
    25                 '_form_id' => "-$objet$id_objet"
     36                '_form_id' => "-$table$id_objet"
    2637        );
    2738
     
    3950
    4051                $where = array(
    41                         "objet=" . sql_quote(objet_type($objet)),
     52                        "objet=" . sql_quote($type),
    4253                        "id_objet=" . sql_quote($id_objet),
    4354                        );
     
    5566        // peut voter ou modifier son vote ?
    5667        include_spip('inc/autoriser');
    57         if (!autoriser('modifier', 'notation', $id_notation, null, array('objet'=>$objet, 'id_objet'=>$id_objet))) {
     68        if (!autoriser('modifier', 'notation', $id_notation, null, array('objet'=>$type, 'id_objet'=>$id_objet))) {
    5869                $valeurs['editable']=false;
    5970        }
     
    6576function formulaires_notation_verifier_dist($objet, $id_objet){
    6677        $erreurs = array();
     78        $type = objet_type($objet); // securite
     79        $table = table_objet($type);
    6780
    6881        //  s'assurer que l'objet existe bien
    6982        // et que le champ robot n'est pas rempli
    7083        $trouver_table = charger_fonction('trouver_table','base');
    71         $table_objet = $trouver_table($objet);
     84        $table_objet = $trouver_table($table);
    7285        $_id_objet = id_table_objet($table_objet['table']);
    7386
     
    87100
    88101function formulaires_notation_traiter_dist($objet, $id_objet){
     102        $type = objet_type($objet); // securite
     103        $table = table_objet($type);
    89104
    90105        // indiquer dans sa session que ce visiteur a vote
     
    96111        // invalider les caches
    97112        include_spip('inc/invalideur');
    98         suivre_invalideur("id='id_notation/$objet/$id_objet'");
     113        suivre_invalideur("id='id_notation/$type/$id_objet'");
    99114
    100115        if ($GLOBALS["auteur_session"]) {
     
    106121
    107122        // recuperation des champs
    108         $note = intval(_request("notation-$objet$id_objet"));
     123        $note = intval(_request("notation-$table$id_objet"));
    109124        $id_donnees     = _request('notation_id_donnees'); // ne sert a rien ?
    110125
    111126        // Si pas inscrit : recuperer la note de l'objet sur l'IP
    112127        // Sinon rechercher la note de l'auteur
    113         $objet = objet_type($objet);
    114128        $where = array(
    115                 "objet=" . sql_quote($objet),
     129                "objet=" . sql_quote($type),
    116130                "id_objet=" . sql_quote($id_objet),
    117131                );
     
    140154                        // Modifier la note
    141155                        $c = array(
    142                                 "objet" => $objet,
     156                                "objet" => $type,
    143157                                "id_objet" => $id_objet,
    144158                                "note" => $note,
     
    160174                //      <BOUCLE_notes_pond(NOTATIONS_OBJETS){0,10}{!par note_ponderee}>
    161175                // qu'il n'est pas possible de traduire dans une boucle NOTATION facilement.
    162                 notation_recalculer_total($objet,$id_objet);
     176                notation_recalculer_total($type,$id_objet);
    163177        }
    164178
     
    167181        // peut il modifier son vote ?
    168182        include_spip('inc/autoriser');
    169         if (!autoriser('modifier', 'notation', $id_notation, null, array('objet'=>$objet, 'id_objet'=>$id_objet))) {
     183        if (!autoriser('modifier', 'notation', $id_notation, null, array('objet'=>$type, 'id_objet'=>$id_objet))) {
    170184                $res['editable']=false;
    171185        }
  • _plugins_/notation/inc/notation.php

    r35290 r42226  
    4646        static $ponderation="";
    4747        if (!$ponderation) {
     48                include_spip('inc/config'); // lire_config
    4849                $ponderation = lire_config('notation/ponderation',30);
    4950                $ponderation = intval($ponderation);
     
    6364        static $nb = "";
    6465        if (!$nb) {
     66                include_spip('inc/config'); // lire_config
    6567                $nb = intval(lire_config('notation/nombre', 5));
    6668                if ($nb < 1) $nb = 5;
  • _plugins_/notation/inc/notation_autorisations.php

    r28090 r42226  
    1313
    1414function autoriser_notation_modifier_dist($faire, $type, $id, $qui, $opt){
     15        include_spip('inc/config'); // lire_config
    1516        // la config interdit de modifier la note ?
    1617        if ($id AND !lire_config('notation/change_note'))
  • _plugins_/notation/plugin.xml

    r41595 r42226  
    22        <nom><multi>[fr]Notation[en]Rating</multi></nom>
    33        <auteur>JEM - b_b - Matthieu Marcillaud</auteur>
    4         <version>0.7.1</version>
     4        <version>0.8.0</version>
    55        <version_base>0.6.1</version_base>
    66        <etat>stable</etat>
     
    2525        <licence>GNU/GPL</licence>
    2626        <necessite id="spip" version="[2.0.0;]" />
    27         <necessite id="cfg" version="[1.10.4;]" />
     27        <utilise id="cfg" version="[1.10.4;]" />
    2828
    2929        <icon>img_pack/note.gif</icon>
Note: See TracChangeset for help on using the changeset viewer.