Changeset 7729 in spip-zone


Ignore:
Timestamp:
Dec 4, 2006, 1:30:36 AM (12 years ago)
Author:
patfr@…
Message:

un peu de menage dans les langues et les styles...
et un pendu ?

Location:
_plugins_/_stable_/jeux
Files:
1 added
13 edited
5 copied
1 moved

Legend:

Unmodified
Added
Removed
  • _plugins_/_stable_/jeux/inc/kakuro.todo

    r7713 r7729  
    1515
    1616Insere un kakuro dans vos articles !
    17 -----------------------------------------------------
     17------------------------------------
    1818
    1919balises du plugin : <jeux></jeux>
  • _plugins_/_stable_/jeux/inc/mots_croises.php

    r7713 r7729  
    5555    // entetes : formulaire + grille
    5656    $grille .= (!$solution)? "<form class=\"grille\" action=\"".self()."\" method=\"post\">\n"
    57                 : "<div class=\"solution\"><h2 class=\"spip\">"._T('motscroises:solution')." : </h2>" ;
     57                : "<div class=\"solution\"><h2 class=\"spip\">"._T('jeux:solution')." : </h2>" ;
    5858    $grille .= '<table class="grille" cellspacing="0" border="0" summary="'
    5959                . _T('motscroises:table_summary',Array('hauteur'=>$hauteur,'largeur'=>$largeur))
     
    9696       
    9797        (!$solution) ? $grille.="<br /><input id=\"solution\" name=\"solution[]\" type=\"checkbox\"value=\"1\" /><label for=\"solution\" >"._T('motscroises:afficher_solution')."</label><br />\n
    98 <input type=\"submit\" value=\""._T('motscroises:verifier')."\" name=\"bouton_envoi\" /></form>\n" : $grille.="</div>";
     98<input type=\"submit\" value=\""._T('jeux:verifier')."\" name=\"bouton_envoi\" /></form>\n" : $grille.="</div>";
    9999
    100100        return $grille;
     
    133133          list($nbr_erreurs, $nbr_vides) = comparaison_grille($solution, $indexJeux);
    134134          return '<strong class="erreur">'
    135                 . (($nbr_erreurs==0)?_T('motscroises:aucune_erreur'):(
    136                  ($nbr_erreurs==1)?_T('motscroises:une_erreur'):_T("motscroises:nombre_erreurs", Array('err'=>$nbr_erreurs))
     135                . (($nbr_erreurs==0)?_T('jeux:aucune_erreur'):(
     136                 ($nbr_erreurs==1)?_T('jeux:une_erreur'):_T("jeux:nombre_erreurs", Array('err'=>$nbr_erreurs))
    137137                ))
    138                 . (($nbr_vides==0)?(($nbr_erreurs==0)?'. '._T('motscroises:bravo'):''):(
     138                . (($nbr_vides==0)?(($nbr_erreurs==0)?'. '._T('jeux:bravo'):''):(
    139139                 ($nbr_vides==1)?' - '._T('motscroises:une_vide'):' - '._T("motscroises:nombre_vides", Array('vid'=>$nbr_vides))
    140140                ))
  • _plugins_/_stable_/jeux/inc/pendu.todo

    r7715 r7729  
    22
    33# le code de ce fichier php reste encore à ecrire...
     4# à visiter :
     5# http://perso.orange.fr/jeux.lulu/html/pendu/penduSom.htm
     6# http://www.alablague.com/pendu/default.asp
     7# liste de mots :
     8# http://www.lexique.org/listes/liste_mots.php
    49
    510#---------------------------------------------------#
     
    1116/*
    1217
    13 Insere un rebus dans vos articles !
    14 -----------------------------------------------------
     18Insere un jeu de pendu dans vos articles !
     19------------------------------------------
    1520
    1621balises du plugin : <jeux></jeux>
    17 separateurs obligatoires : [devinette], [reponse]
     22separateurs obligatoires : [pendu]
    1823separateurs optionnels   : [titre], [texte]
    1924
     
    2227
    2328<jeux>
    24         [devinette]
    25         Comment appelle t-on un patron de la nouvelle économie ?
    26         [reponse]
    27         Un e-responsable
    28        
    29         [devinette]
    30         Quel est le point commun entre un contrôleur des impôts et un spermatozoïde ?
    31         [reponse]
    32         Tous les 2 ont 1 chance sur 3 millions de devenir un jour un être humain.
     29        [titre]
     30        Le Jazz...
     31        [pendu]
     32        morton oliver armstrong ellington whiteman henderson nichols dorsey beiderbecke
     33        teagarden freeman kaminsky teschemacher davis goodman wilson hampton crosby parker
     34        gillespie powell monk clarke johnson mulligan evans hawkins basie coltrane coleman
    3335</jeux>
     36
     37*/
     38
     39
     40/*
     41TROMBONE XYLOPHONE TAMBOUR PIANO GUITARE VIOLON FLUTE ACCORDEON TROMPETTE DJEMBE SAXOPHONE VIOLONCELLE CLARINETTE HARMONICA TAMBOURIN CASTAGNETTES HAUTBOIS CONTREBASSE HARPE TAM-TAM TRIANGLE CYMBALE FLUTE A BEC FLUTE TRAVERSIERE BANJO GUITARE ELECTRIQUE CORNEMUSE ORGUE MARACAS GROSSE CAISSE VIBRAPHONE BANDONEON BONGOS GUIMBARDE EPINETTE VIELLE PIPEAU CLAIRON BUGLE CLAVES FLUTE DE PAN BALAFON MIRLITON GRELOT TIMBALE DARBOUKA LUTH CARILLON GONG BASSON CLAVECIN HELICON CITHARE MANDOLINE CORNET A PISTONS ALTO COR CAISSE CLAIRE SYNTHETISEUR TUBA
     42
     43compositeurs :
     44albeniz bach bartok beethoven bellini berg berlioz bizet borodine boulez brahms britten bruch bruckner charpentier chausson chopin corelli couperin debussy delalande dukas dvorak falla faure franck gluck gounod granados grieg haendel haynd honegger janacek lalo lassus liszt lully machaut mahler massenet mendelsshon messiaen milhaud monteverdi moussorgski mozart offenbach gershwin paganini palestrina pergolesi poulenc prokofiev puccini purcell rachmaninov rameau ravel rossini roussel satie scarlatti schmitt schonberg schubert schumann schutz sibelius smetana strauss stravinski tchaikovski telemann varese verdi vivaldi wagner weber webern
     45
     46instruments :
     47flute piccolo syrinx flageolet hautbois cor basson contrebasson clarinette saxophone trompette trombone cornet tuba bugle cornemuse accordeon harmonica harmonium orgue harpe lyre luth mandoline guitare viele violon alto violoncelle contrebasse clavecin epinette piano glockenspiel celesta xylophone marimba vibraphone timbales tambour bongoes catagnettes claves cymbales eoliphone gong maracas tambourin templeblock triangle
     48                 
     49jazz :
     50morton oliver armstrong ellington whiteman henderson nichols dorsey beiderbecke teagarden freeman kaminsky teschemacher davis goodman wilson hampton crosby parker gillespie powell monk clarke johnson mulligan evans hawkins basie coltrane coleman
     51                 
     52danses :
     53allemande bourree chaconne courante forlane gaillarde gavotte gigue menuet passacaille passepied pavane sarabande barcarolle bolero czarda ecossaise habanera laendler mazurka passamezzo polka polonaise ragtime rigaudon saltarelle tango tarentelle tourdion valse
     54
     55chanson francaise :
     56adamo aubert aznavour balavoine barbara bashung becaud berger birkin bourvil brassens brel brillant bruel cabrel clerc cordy couture croisille daho dalida dassin dion duteil fabian farmer ferrat ferre fiori gainsbourg goldman gotainer hallyday hardy higelin jonasz kaas lama lapointe lara lavilliers mitchell mouskouri moustaki murat nougaro obispo pagny paradis piaf polnareff voulzy renaud sanson sardou sheller souchon torr trenet vartan
     57
     58
     59*/
  • _plugins_/_stable_/jeux/inc/qcm.php

    r7713 r7729  
    1414
    1515balises du plugin : <jeux></jeux>
    16 separateurs obligatoires : [titre], [qcm]
    17 separateurs optionnels   : [texte]
     16separateurs obligatoires : [qcm] // TODO : le titre optionnel...
     17separateurs optionnels   : [titre], [texte]
    1818
    1919Exemple de syntaxe dans l'article :
     
    156156
    157157function qcm_les_points($phrase, $points) {
    158     $pointsHTML = '<span class="spip_qcm_point"> ('.$points. _T('qcm:qcm_point'.($points>1?'s':'')).')</span>';
     158    $pointsHTML = '<span class="jeux_point"> ('.$points. _T('jeux:point'.($points>1?'s':'')).')</span>';
    159159        if (ereg('^(.*)( ?:)( *)$', $phrase, $eregResult)) $phrase = $eregResult[1].$pointsHTML.$eregResult[2].$eregResult[3];
    160160          else $phrase .= $pointsHTML;
     
    176176  } else $pointsQ = 1;
    177177
    178   $codeHTML = "<div class=\"spip_qcm_question\">".definir_puce().$question.'</div>';
     178  $codeHTML = "<div class=\"qcm_question\">".definir_puce().$question.'</div>';
    179179  if (!$corrigee){
    180180    // affichage sans correction :
    181      $codeHTML.="\n<div class=\"spip_qcm_proposition\">";
     181     $codeHTML.="\n<div class=\"qcm_proposition\">";
    182182
    183183      // Si il ya plus de 5 choix, on utilise une liste
    184184      if(count($qcms[$indexQCM]['propositions'])>5){
    185         $codeHTML.='<select name="'.$nomVarSelect.'" class="spip_qcm_select">';
     185        $codeHTML.='<select name="'.$nomVarSelect.'" class="qcm_select">';
    186186                foreach($qcms[$indexQCM]['propositions'] as $i=>$valeur) $codeHTML.="<option value=\"$i\">$valeur</option>";
    187187                $codeHTML.='</select>';
     
    206206               
    207207                // la reponse donnee & precision des points eventuels de la mauvaise reponse...
    208                 $codeHTML.='<div class="spip_qcm_reponse">'
    209                          .((($pointsR==$pointsQ) || ($pointsR==0))?_T('qcm:qcm_introReponse'):qcm_les_points(_T('qcm:qcm_introReponse'), $pointsR))
     208                $codeHTML.='<div class="qcm_reponse">'
     209                         .((($pointsR==$pointsQ) || ($pointsR==0))?_T('jeux:votre_choix'):qcm_les_points(_T('jeux:votre_choix'), $pointsR))
    210210                         .$qcms[$indexQCM]['propositions'][$_POST[$nomVarSelect]].'</div>';
    211211
     
    215215        if ($qcms[$indexQCM]['bonnereponse']==$_POST[$nomVarSelect])
    216216        // Si c'est juste
    217                         $codeHTML .= '<div class="spip_qcm_correction_juste">'._T('qcm:qcm_reponseJuste').'</div>';
     217                        $codeHTML .= '<div class="qcm_correction_juste">'._T('qcm:qcm_reponseJuste').'</div>';
    218218        // Si c'est faux
    219          else $codeHTML .= '<div class="spip_qcm_correction_faux">'._T('qcm:qcm_reponseFausse').'</div>';
     219         else $codeHTML .= '<div class="qcm_correction_faux">'._T('qcm:qcm_reponseFausse').'</div>';
    220220           
    221221        // les precisions eventuelles
    222222        if ($qcms[$indexQCM]['precisions'][$_POST[$nomVarSelect]]<>"")
    223              $codeHTML.='<div align="center"><div class="spip_qcm_precision">'
     223             $codeHTML.='<div align="center"><div class="qcm_precision">'
    224224                                 .$qcms[$indexQCM]['precisions'][$_POST[$nomVarSelect]]
    225225                         .'</div></div>';
    226226
    227227        // pas de reponse postee...
    228         } else $codeHTML.='<div class="spip_qcm_correction_null">'._T('qcm:qcm_reponseNulle').'</div>';
     228        } else $codeHTML.='<div class="qcm_correction_null">'._T('qcm:qcm_reponseNulle').'</div>';
    229229           
    230230        $codeHTML.='<br />';
     
    253253  $indexQCM = $qcm_score = 0;
    254254  $qcms['nbquestions'] = $qcms['totalscore'] = $qcms['totalpropositions'] = 0;
    255   $tableau = jeux_split_texte('qcm', $texte);
    256   $horizontal = $vertical = $solution = $html = false;
     255          $horizontal = $vertical = $solution = $html = false;
    257256  $titre = _T('qcm:qcm_titre');
    258257
     
    279278  $texte = qcm_inserer_les_qcm($html, $indexJeux, $gestionPoints);
    280279
    281   $tete = '<div class="spip_qcm"><div class="spip_qcm_titre">'.$titre.'<hr /></div>';
     280  $tete = '<div class="spip_qcm"><div class="jeux_titre">'.$titre.'<hr /></div>';
    282281  if (!isset($_POST["var_correction_".$indexJeux])) {
    283282        $tete .= "\n".'<form method="post" action="">';
    284283        $pied = '<br>
    285284        <input type="hidden" name="var_correction_'.$indexJeux.'" value="yes">
    286         <div align="center"><input type="submit" value="'._T('qcm:qcm_corriger').'" class="spip_qcm_bouton_corriger"></div>
     285        <div align="center"><input type="submit" value="'._T('jeux:corriger').'" class="jeux_bouton_corriger"></div>
    287286        </form>';
    288287  } else {
    289288      // On ajoute le score final
    290       $pied = '<center><div class="spip_qcm_score">'._T('qcm:qcm_score')
     289      $pied = '<center><div class="jeux_score">'._T('jeux:score')
    291290                                . "&nbsp;$qcm_score&nbsp;/&nbsp;".$qcms['totalscore'].'<br>'
    292                                 . ($qcm_score==$qcms['totalscore']?_T('qcm:qcm_bravo'):'').'</div></center>'
    293                                 . '<div class="spip_qcm_bouton_corriger" align="right">[ <a href="'
    294                                 . parametre_url(self(),'var_mode','recalcul').'">'._T('qcm:qcm_reinitialiser').'</a> ]</div>';
     291                                . ($qcm_score==$qcms['totalscore']?_T('jeux:bravo'):'').'</div></center>'
     292                                . '<div class="jeux_bouton_corriger" align="right">[ <a href="'
     293                                . parametre_url(self(),'var_mode','recalcul').'">'._T('jeux:reinitialiser').'</a> ]</div>';
    295294  }
    296295 
  • _plugins_/_stable_/jeux/inc/rebus.todo

    r7713 r7729  
    22
    33# le code de ce fichier php reste encore à ecrire...
     4# a voir :
     5# http://www.vif.com/users/webaluc/cyberrebus/
    46
    57#---------------------------------------------------#
  • _plugins_/_stable_/jeux/inc/trous.php

    r7718 r7729  
    2626<jeux>
    2727        [texte]
    28         Ceci est un simple test de closure (exercice à trous).
    29         L'utilisateur entre ses réponses dans les espaces vides,
    30         presse ensuite le bouton "Contrôle"
     28        Ceci est un exemple de closure (exercice à trous).
     29        L'utilisateur doit entrer ses
    3130        [trou]
    32         pour
     31        réponses
    3332        [texte]
    34         découvrir ce qui est correct dans sa réponse et obtenir un score.
    35         Pour chaque mot manquant, jusqu'à quatre réponses correctes
     33        dans les espaces vides.
     34        Pour chaque mot manquant, plusieurs réponses correctes
     35        peuvent être acceptées. Par exemple, ce 
    3636        [trou]
    37         peuvent
    38         [texte]
    39         être acceptées. Par exemple, ce 
    40         [trou]
    41         trou
    42         vide
    43         blanc
     37        trou, vide, blanc
    4438        [texte]
    4539        autorise les réponses "trou", "vide" ou "blanc".
    4640</jeux>
    4741
     42La liste des mots a placer apres [trou] peut accepter
     43les separateurs usuels :
     44        retours à la ligne, tabulations, espaces
     45        virgules, point-virgules, points
     46Pour une expression comprenant des espaces, utiliser les
     47guillemets ou le signe + :
     48        par ex. : "afin de" est equivalent a : afin+de
     49
    4850*/
    4951
    50 function trous_inserer_le_trou($indexTrou, $corriger) {
    51   global $propositionsTROUS;
    52   /*
    53   global $qcms, $qcm_score;
    54   if ($qcms[$indexQCM]['propositions']==0) return '';
     52function trous_inserer_le_trou($indexJeux, $indexTrou, $size, $corriger) {
     53  global $propositionsTROUS, $scoreTROUS;
    5554
    5655  // Initialisation du code a retourner
    57   $nomVarSelect = 'var_Q'.$indexQCM;
    58   $question = trim(str_replace('&nbsp;', ' ', $qcms[$indexQCM]['question']));
     56  $nomVarSelect = "var{$indexJeux}_T{$indexTrou}";
     57  $mots = $propositionsTROUS[$indexTrou];
    5958 
    60   // affichage des points dans la question
    61   if ($gestionPoints) {
    62     $pointsQ = $qcms[$indexQCM]['maxscore'];
    63         $question = qcm_les_points($question, $pointsQ);
    64   } else $pointsQ = 1;
    65 
    66   $codeHTML = "<div class=\"spip_qcm_question\">".definir_puce().$question.'</div>';
    6759  if (!$corriger){
    6860    // affichage sans correction :
    69      $codeHTML.="\n<div class=\"spip_qcm_proposition\">";
    70 
    71       // Si il ya plus de 5 choix, on utilise une liste
    72       if(count($qcms[$indexQCM]['propositions'])>5){
    73         $codeHTML.='<select name="'.$nomVarSelect.'" class="spip_qcm_select">';
    74                 foreach($qcms[$indexQCM]['propositions'] as $i=>$valeur) $codeHTML.="<option value=\"$i\">$valeur</option>";
    75                 $codeHTML.='</select>';
    76       }
    77       // Sinon des radio boutons
    78       else {
    79                 foreach($qcms[$indexQCM]['propositions'] as $i=>$valeur)
    80           $codeHTML.='<input type="radio" name="'.$nomVarSelect
    81                         . '" value="'.$i.'" id="'.$nomVarSelect.$i.'"><label for="'.$nomVarSelect.$i.'">'
    82                 . $valeur.'</label><br />';
    83        }
    84        $codeHTML.="</div><br />";
    85        
    86     }   //Fin du cas sans correction
     61     $codeHTML = " <input name=\"trou$indexTrou\" size=\"$size\" onfocus=\"TrackFocus($indexTrou)\" type=\"text\"> "
     62         ." (".join('|', $mots).")";
     63  }
    8764
    8865  // Sinon on affiche la correction
    8966  else {
    90  
     67 /*
    9168         if ($_POST[$nomVarSelect]) {
    9269                // les points de la reponse donnee...
     
    9471               
    9572                // la reponse donnee & precision des points eventuels de la mauvaise reponse...
    96                 $codeHTML.='<div class="spip_qcm_reponse">'
    97                          .((($pointsR==$pointsQ) || ($pointsR==0))?_T('qcm:qcm_introReponse'):qcm_les_points(_T('qcm:qcm_introReponse'), $pointsR))
     73                $codeHTML.='<div class="qcm_reponse">'
     74                         .((($pointsR==$pointsQ) || ($pointsR==0))?_T('jeux:votre_choix'):qcm_les_points(_T('jeux:votre_choix'), $pointsR))
    9875                         .$qcms[$indexQCM]['propositions'][$_POST[$nomVarSelect]].'</div>';
    9976
     
    10380        if ($qcms[$indexQCM]['bonnereponse']==$_POST[$nomVarSelect])
    10481        // Si c'est juste
    105                         $codeHTML .= '<div class="spip_qcm_correction_juste">'._T('qcm:qcm_reponseJuste').'</div>';
     82                        $codeHTML .= '<div class="qcm_correction_juste">'._T('qcm:qcm_reponseJuste').'</div>';
    10683        // Si c'est faux
    107          else $codeHTML .= '<div class="spip_qcm_correction_faux">'._T('qcm:qcm_reponseFausse').'</div>';
     84         else $codeHTML .= '<div class="qcm_correction_faux">'._T('qcm:qcm_reponseFausse').'</div>';
    10885           
    109         // les precisions eventuelles
    110         if ($qcms[$indexQCM]['precisions'][$_POST[$nomVarSelect]]<>"")
    111              $codeHTML.='<div align="center"><div class="spip_qcm_precision">'
    112                                  .$qcms[$indexQCM]['precisions'][$_POST[$nomVarSelect]]
    113                          .'</div></div>';
    114 
    11586        // pas de reponse postee...
    116         } else $codeHTML.='<div class="spip_qcm_correction_null">'._T('qcm:qcm_reponseNulle').'</div>';
     87        } else $codeHTML.='<div class="qcm_correction_null">'._T('qcm:qcm_reponseNulle').'</div>';
    11788           
    11889        $codeHTML.='<br />';
    119      
     90*/     
    12091  } //Fin du cas avec correction
     92
    12193  return $codeHTML;
    122   */
    123   return " <input name=\"trou$indexTrou\" size=\"9\" onfocus=\"TrackFocus($indexTrou)\" type=\"text\"> ";
    12494}
    12595
     
    12999        $indexTROU = intval($eregResult[1]);
    130100        list($texteAvant, $texteApres) = explode($eregResult[0], $chaine, 2);
     101        $texteApres = trous_inserer_les_trous($texteApres, $indexJeux);
     102        $sizeInput = 0;
     103        foreach($propositionsTROUS as $trou) foreach($trou as $mot) $sizeInput = max($sizeInput, strlen($mot));
    131104        $chaine = $texteAvant.jeux_rem('TROU-DEBUT', $indexTROU)
    132                 . trous_inserer_le_trou($indexTROU, isset($_POST["var_correction_".$indexJeux]))
     105                . trous_inserer_le_trou($indexJeux, $indexTROU, $sizeInput, isset($_POST["var_correction_".$indexJeux]))
    133106                . jeux_rem('TROU-FIN', $indexTROU)
    134                 . trous_inserer_les_trous($texteApres, $indexJeux);
     107                . $texteApres;
    135108  }
    136109  return $chaine;
     
    150123                // remplacement des trous par : <ATTENTE_TROU>ii</ATTENTE_TROU>
    151124                $html .= "<ATTENTE_TROU>$indexTrou</ATTENTE_TROU>";
    152                 $propositionsTROUS[$indexTrou] = split("\n", $tableau[$i+1]);
     125                $propositionsTROUS[$indexTrou] = jeux_liste_mots($tableau[$i+1]);
    153126                $indexTrou++;
    154127          }
     
    158131  $texte = trous_inserer_les_trous($html, $indexJeux);
    159132
    160   $tete = '<div class="spip_qcm"><div class="spip_qcm_titre">'.$titre.'<hr /></div>';
     133  $tete = '<div class="jeux">' . ($titre?'<div class="jeux_titre">'.$titre.'<hr /></div>':'');
    161134  if (!isset($_POST["var_correction_".$indexJeux])) {
    162135        $tete .= "\n".'<form method="post" action="">';
    163136        $pied = '<br>
    164137        <input type="hidden" name="var_correction_'.$indexJeux.'" value="yes">
    165         <div align="center"><input type="submit" value="'._T('jeux:jeux_corriger').'" class="spip_jeux_bouton_corriger"></div>
     138        <div align="center"><input type="submit" value="'._T('jeux:corriger').'" class="jeux_bouton_corriger"></div>
    166139        </form>';
    167140  } else {
    168141      // On ajoute le score final
    169       $pied = '<center><div class="spip_jeux_score">'._T('jeux:jeux_score')
     142      $pied = '<center><div class="jeux_score">'._T('jeux:jeux_score')
    170143                                . "&nbsp;$qcm_score&nbsp;/&nbsp;".$qcms['totalscore'].'<br>'
    171                                 . ($qcm_score==$qcms['totalscore']?_T('jeux:jeux_bravo'):'').'</div></center>'
    172                                 . '<div class="spip_qcm_bouton_corriger" align="right">[ <a href="'
     144                                . ($qcm_score==$qcms['totalscore']?_T('jeux:bravo'):'').'</div></center>'
     145                                . '<div class="jeux_bouton_corriger" align="right">[ <a href="'
    173146                                . parametre_url(self(),'var_mode','recalcul').'">'._T('trous:trous_reinitialiser').'</a> ]</div>';
    174147  }
    175148 
    176149  unset($propositionsTROUS);
    177   return $texte;
    178150 
    179   return $tete
    180     . ($titre?"<span class=\"trous_titre\">$titre</span><br />":'')
    181         . ($html?"<br /><span class=\"trous_trous\">$html</span>":'')
    182         . $pied;
     151  return $tete.$texte.$pied;
    183152}
    184153?>
  • _plugins_/_stable_/jeux/jeux_config.php

    r7718 r7729  
    66#  Licence : GPL                                    #
    77#---------------------------------------------------#
     8# exemples de jeux avec les mots :
     9# http://www.cc-concarneaucornouaille.fr/net_bibli/portail/jouer%20avec%20les%20mots.htm
     10# http://d.ch.free.fr/index.html
     11# jeux musicaux :
     12# http://www.metronimo.com/fr/jeux/
    813
    914// balises du plugin a inserer dans les articles
     
    2934define('_JEUX_AUTEUR', 'auteur');
    3035define('_JEUX_RECUEIL', 'recueil');
     36define('_JEUX_PENDU', 'pendu');
    3137
    3238// liste des separateurs autorises dans les jeux.
     
    4147        'textes' => array(_JEUX_TITRE, _JEUX_TEXTE, _JEUX_POESIE, _JEUX_CITATION, _JEUX_AUTEUR, _JEUX_RECUEIL),
    4248        'trous' => array(_JEUX_TITRE, _JEUX_TEXTE, _JEUX_TROU),
     49//      'pendu' => array(_JEUX_TITRE, _JEUX_TEXTE, _JEUX_PENDU),
    4350);
    4451
     
    5865        'textes' => array(_JEUX_POESIE, _JEUX_CITATION),
    5966        'trous' => array(_JEUX_TROU),
     67//      'pendu' => array(_JEUX_PENDU),
    6068);
    6169
     
    6371// dossier jeux/style/
    6472global $jeux_header_public;
    65 $jeux_header_public = array('jeux','qcm');
     73$jeux_header_public = array('jeux','qcm', 'mots_croises');
    6674
    6775// liste des css a placer dans le header prive
    6876// dossier jeux/style/
    6977global $jeux_header_prive;
    70 $jeux_header_prive = array('jeux-prive','qcm');
     78$jeux_header_prive = array('jeux','qcm', 'mots_croises-prive');
    7179
    7280// liste des js a placer dans le header prive
  • _plugins_/_stable_/jeux/jeux_utils.php

    r7718 r7729  
    2525}
    2626
     27// retourne un tableau de mots ou d'expressions a partir d'un texte
     28function jeux_liste_mots($texte) {
     29                $texte = filtrer_entites($texte);
     30                $texte = preg_replace("/[,;\.\|\s\t\n\r]+/", " ", $texte);
     31                $split = split('"', $texte);
     32                $c = count($split);
     33                for($i=0; $i<$c; $i++) if ($i & 1) $split[$i] = str_replace(' ','+', $split[$i]);
     34                $texte = join('', $split);
     35                $texte = str_replace(" ","\t", $texte);
     36                $texte = str_replace("+"," ", $texte);
     37                return array_unique(split("\t", $texte));
     38}
    2739// ajoute un module jeu a la bibliotheque
    2840function include_jeux($jeu, &$texte, $indexJeux) {
  • _plugins_/_stable_/jeux/lang/jeux_en.php

    r7715 r7729  
    55$GLOBALS[$GLOBALS['idx_lang']] = array(
    66
    7 'qcm_titre' => "Here is an MCQ",
     7'votre_choix'   => "Your answer: ",
     8'bravo'                 => "Congratulation !",
    89
    9 'qcm_reponseJuste' => " You were correct!",
    10 'qcm_reponseFausse' => " You were incorrect!",
    11 'qcm_reponseNulle' => "You didn't answer this question!",
    12 'qcm_reinitialiser' => "Restart",
    13 'qcm_introReponse' => "Your answer: ",
    14 'qcm_bravo' => "Congratulation !",
     10'corriger'              => "Check",
     11'verifier'              => 'V&eacute;rifier',
     12'solution'              =>'Solution',
     13'score'                 => "Score:",
    1514
    16 'qcm_corriger' => "Check",
    17 'qcm_score' => "Score:",
     15'point' => "&nbsp;pt",
     16'points' => "&nbsp;pts"
    1817
    19 'qcm_point' => "&nbsp;pt",
    20 'qcm_points' => "&nbsp;pts"
     18'reinitialiser'         => "Restart",
     19
     20'aucune_erreur'         =>'No error',
     21'une_erreur'            => 'An error',
     22'nombre_erreurs'        => '@err@ errors',
    2123
    2224);
  • _plugins_/_stable_/jeux/lang/jeux_fr.php

    r7715 r7729  
    55$GLOBALS[$GLOBALS['idx_lang']] = array(
    66
    7 'qcm_titre' => "Voici un QCM",
     7'votre_choix' => "Votre choix : ",
     8'bravo' => "Bravo !",
    89
    9 'qcm_reponseJuste' => "La r&eacute;ponse est juste",
    10 'qcm_reponseFausse' => "La r&eacute;ponse est fausse",
    11 'qcm_reponseNulle' => "Vous n'avez pas r&eacute;pondu",
    12 'qcm_reinitialiser' => "R&eacute;initialiser le QCM",
    13 'qcm_introReponse' => "Votre choix : ",
    14 'qcm_bravo' => "Bravo !",
     10'corriger'              => "Corriger",
     11'verifier'              => 'V&eacute;rifier',
     12'solution'              =>'Solution',
     13'score'                 => "Score&nbsp;:",
    1514
    16 'qcm_corriger' => "Corriger",
    17 'qcm_score' => "Score&nbsp;:",
     15'point'         => "&nbsp;pt",
     16'points'        => "&nbsp;pts"
    1817
    19 'qcm_point' => "&nbsp;pt",
    20 'qcm_points' => "&nbsp;pts"
     18'reinitialiser'         => "R&eacute;initialiser",
     19
     20'aucune_erreur'         =>'Aucune erreur',
     21'une_erreur'            => 'Une erreur',
     22'nombre_erreurs'        => '@err@ erreurs',
    2123
    2224);
  • _plugins_/_stable_/jeux/lang/jeux_it.php

    r7715 r7729  
    55$GLOBALS[$GLOBALS['idx_lang']] = array(
    66
    7 'afficher_solution'     =>'Visualizza la soluzione (in fondo alla pagina)',
     7'votre_choix'           => "Votre choix : ",    // TODO
     8'bravo'                         => "Bravo !",
     9
     10'corriger'              => "Corriger",  // TODO
    811'verifier'              => 'Controlla',
    912'solution'              =>'Soluzione',
    10 'aucune_erreur'         =>'Nessun errore',
    11 'titre'         =>'Schema di parole crociate',
    12 'table_summary'         =>'Schema di parole crociate di @largeur@ colonne e @hauteur@ righe',
    13 'ligne'                 =>'riga @n@',
    14 'colonne'               =>'colonna @n@',
     13'score'                 => "Score&nbsp;:",      // TODO
    1514
    16 'horizontalement'       => 'Orizzontali:',
    17 'verticalement'         => 'Verticali:',
     15'point'         => "&nbsp;pt",          // TODO
     16'points'        => "&nbsp;pts"          // TODO
     17
     18'reinitialiser'         => "R&eacute;initialiser",              // TODO
     19
     20'aucune_erreur'         => 'Nessun errore',
     21'une_erreur'            => 'Un errore',
    1822'nombre_erreurs'        => '@err@ errori',
    19 'une_erreur'            => 'Un errore',
    20 'nombre_vides'          => '@vid@ caselle bianche',
    21 'une_vide'                      => 'Una casella bianca',
    22 'bravo'                 => 'Bravo!'
    2323
    2424);
  • _plugins_/_stable_/jeux/lang/motscroises_fr.php

    r7652 r7729  
    55$GLOBALS[$GLOBALS['idx_lang']] = array(
    66
     7'titre'         =>'Grille de mots-crois&eacute;s',
     8
    79'afficher_solution'     =>'Afficher la solution (en bas de page)',
    8 'verifier'              => 'V&eacute;rifier',
    9 'solution'              =>'Solution',
    10 'aucune_erreur'         =>'Aucune erreur',
    11 'titre'         =>'Grille de mots-crois&eacute;s',
    1210'table_summary'         =>'Grille de mots-crois&eacute;s de @largeur@ colonnes sur @hauteur@ lignes',
    1311'ligne'                 =>'ligne @n@',
     
    1614'horizontalement'       => 'Horizontalement&nbsp;:',
    1715'verticalement'         => 'Verticalement&nbsp;:',
    18 'nombre_erreurs'        => '@err@ erreurs',
    19 'une_erreur'            => 'Une erreur',
     16
    2017'nombre_vides'          => '@vid@ cases vides',
    2118'une_vide'                      => 'Une case vide',
    22 'bravo'                 => 'Bravo !'
    2319
    2420);
  • _plugins_/_stable_/jeux/lang/motscroises_it.php

    r7652 r7729  
    55$GLOBALS[$GLOBALS['idx_lang']] = array(
    66
     7'titre'         =>'Schema di parole crociate',
     8
    79'afficher_solution'     =>'Visualizza la soluzione (in fondo alla pagina)',
    8 'verifier'              => 'Controlla',
    9 'solution'              =>'Soluzione',
    10 'aucune_erreur'         =>'Nessun errore',
    11 'titre'         =>'Schema di parole crociate',
    1210'table_summary'         =>'Schema di parole crociate di @largeur@ colonne e @hauteur@ righe',
    1311'ligne'                 =>'riga @n@',
     
    1614'horizontalement'       => 'Orizzontali:',
    1715'verticalement'         => 'Verticali:',
    18 'nombre_erreurs'        => '@err@ errori',
    19 'une_erreur'            => 'Un errore',
     16
    2017'nombre_vides'          => '@vid@ caselle bianche',
    2118'une_vide'                      => 'Una casella bianca',
    22 'bravo'                 => 'Bravo!'
    2319
    2420);
  • _plugins_/_stable_/jeux/lang/qcm_en.php

    r7652 r7729  
    1010'qcm_reponseFausse' => " You were incorrect!",
    1111'qcm_reponseNulle' => "You didn't answer this question!",
    12 'qcm_reinitialiser' => "Restart",
    13 'qcm_introReponse' => "Your answer: ",
    14 'qcm_bravo' => "Congratulation !",
    15 
    16 'qcm_corriger' => "Check",
    17 'qcm_score' => "Score:",
    18 
    19 'qcm_point' => "&nbsp;pt",
    20 'qcm_points' => "&nbsp;pts"
    2112
    2213);
  • _plugins_/_stable_/jeux/lang/qcm_fr.php

    r7652 r7729  
    1010'qcm_reponseFausse' => "La r&eacute;ponse est fausse",
    1111'qcm_reponseNulle' => "Vous n'avez pas r&eacute;pondu",
    12 'qcm_reinitialiser' => "R&eacute;initialiser le QCM",
    13 'qcm_introReponse' => "Votre choix : ",
    14 'qcm_bravo' => "Bravo !",
    15 
    16 'qcm_corriger' => "Corriger",
    17 'qcm_score' => "Score&nbsp;:",
    18 
    19 'qcm_point' => "&nbsp;pt",
    20 'qcm_points' => "&nbsp;pts"
    2112
    2213);
  • _plugins_/_stable_/jeux/styles/jeux.css

    r7652 r7729  
    1 .grille td.noir {
    2         background-color:#000000;
    3         color:#000000;
     1.jeux_titre{
     2  text-align : center;
     3  font-size : 14;
     4  font-weight : bold;
     5  color :  #3F5264;
    46}
    57
    6 table.grille input, table.grille th{min-width:1.5em;
    7 width:1.5em;
    8 text-align:center;
    9 vertical-align:middle;
    10 height:1.5em;}
    11 table.grille td{border:1px solid black;text-align:center}
    12 .grille td.coin,table.grille input,.grille th{border:0px solid black}
    13 .erreur{float:left;}
    14 
    15 table.grille label{display:none}
    16 
    17 
    18 
    19 .horizontal ol{list-style-type:upper-alpha}
    20 
    21 .vertical, .horizontal{float:left;
    22 font-size:90%;
    23 max-width:49%;
    24 width:auto;
    25 margin-right:5%;
    26 margin-left:5%}
    27 //.horizontal .vertical {float:left}
    28 
    29 form.grille{float:left;
    30 clear:both;
    31 
    32 padding:0;
    33 padding-right:2%;
    34 margin:0;
    35 
    36 width:auto;
     8.jeux_bouton_corriger{
     9 color :  #3F5264;
     10 font-size : 10; 
     11 font-weight : bold;
     12 background-color : #FFEADE;
    3713}
    3814
    39 p.spip {clear:both}
    40 
    41 h4.grille{
    42         margin:0;
    43         padding:0;
    44         font-weight:bold;
     15.jeux_score{   
     16  text-align:center;
     17  width:20%;
     18  font-family : arial, helvetica, sans-serif;
     19  color :  red;
     20  font-size : 12;
     21  font-weight : bold;
     22  border: 2px solid green;
     23  padding: 3px;
    4524}
    4625
    47 .horizontal ol,.vertical ol{margin:0;
    48 list-style-position:inside;
     26.jeux_point{
     27  font-size : 10;
     28  font-weight : normal;
     29  color :  #3F5264;
    4930}
    50 .horizontal >ol, .vertical > ol{list-style-position:outside;}
    5131
    52 
    53 .grille{margin:0;padding:0}
    54 
    55 .solution{clear:both}
    56 
     32.jeux_erreur{
     33  font-family : arial, helvetica, sans-serif;
     34  color :  red;
     35  font-size : 14;
     36}
  • _plugins_/_stable_/jeux/styles/mots_croises.css

    r7715 r7729  
     1/*
    12.grille td.noir {
    23        background-color:#000000;
     
    5556.solution{clear:both}
    5657
     58*/
     59td.noir {
     60        background-color:#000000;
     61        color:#000000;
     62}
     63
     64table.motscroises0 {
     65        border:0;
     66        padding:0;
     67        width:100%;
     68        text-align:left;
     69}       
     70
     71table.grille {
     72        border:0;
     73        padding:0;
     74}       
     75
     76table.grille input, table.grille th{
     77        min-width:1.5em;
     78        width:1.5em;
     79        text-align:center;
     80        vertical-align:middle;
     81        height:1.5em;
     82        border:0;
     83}
     84
     85table.grille td{
     86        border:1px solid black;
     87        text-align:center;
     88        margin:0;
     89        padding:0;
     90}
     91
     92.grille td.coin{
     93        border:0px;
     94}
     95
     96table.grille label{
     97        display:none
     98}
     99
     100.vertical, .horizontal{
     101        float:left;
     102        font-size:90%;
     103        text-align:left;
     104       
     105/*
     106        min-width:18em;
     107        width:18em;
     108        margin-right:0.8em;
     109        margin-left:0.8em;
     110*/
     111        max-width:42%;
     112        width:42%;
     113        margin-right:3%;
     114        margin-left:3%;
     115}
     116
     117.horizontal li{
     118        list-style-type:upper-alpha;
     119}
     120
     121.vertical li{
     122        list-style-type:decimal;
     123}
     124
     125/*.horizontal .vertical {float:left}*/
     126
     127form.grille{
     128        float:left;
     129        clear:both;
     130        padding:0;
     131        padding-right:2%;
     132        margin:0;
     133        width:auto;
     134}
     135/*
     136p.spip {
     137        clear:both
     138}
     139*/
     140
     141h4.grille{
     142        margin:0.8em;
     143        padding:0;
     144        font-weight:bold
     145}
     146
     147
     148.horizontal ol, .vertical ol{
     149        margin:0;
     150        list-style-position:inside;
     151}
     152
     153.horizontal > ol, .vertical > ol{
     154        list-style-position:outside;
     155}
     156
     157.grille{
     158        margin:0;
     159        padding:0;
     160}
     161
     162.solution{
     163        clear:both;
     164}
     165
     166
     167.erreur{
     168/*      float:left;*/
     169        clear:both;
     170        text-align:left;
     171}
  • _plugins_/_stable_/jeux/styles/qcm.css

    r7652 r7729  
    22 */
    33
    4 .spip_qcm
     4.qcm
    55
    66  text-align:left;
     
    1515}
    1616
    17 .spip_qcm_question{
     17.qcm_question{
    1818  font-size : 12;
    1919  font-weight : bold;
     
    2121 }
    2222
    23 .spip_qcm_proposition{
     23.qcm_proposition{
    2424  font-size : 10;
    2525  color :  #3F5264;
    2626 }
    2727
    28 .spip_qcm_reponse{
     28.qcm_reponse{
    2929  font-size : 10;
    3030  color :  #3F5264;
    3131 }
    3232
    33 .spip_qcm_precision{
     33.qcm_precision{
    3434  margin-left: 0;
    3535  margin-top: 5;
     
    4646}
    4747
    48 .spip_qcm_correction_faux{
     48.qcm_correction_faux{
    4949  font-size : 10;
    5050  text-align:center;
     
    5757}
    5858
    59 .spip_qcm_correction_juste{
     59.qcm_correction_juste{
    6060  font-size : 10;
    6161  text-align:center;
     
    6868}
    6969
    70 .spip_qcm_correction_null{
     70.qcm_correction_null{
    7171  font-size : 10; 
    7272  font-weight : bold;
    7373}
    7474
    75 
    76 .spip_qcm_bouton_corriger{
    77  color :  #3F5264;
    78   font-size : 10; 
    79   font-weight : bold;
    80  background-color : #FFEADE;
    81 }
    82 
    83 .spip_qcm_select{
     75.qcm_select{
    8476  color :  #3F5264;
    8577  font-size : 10; 
    8678  background-color : #F3EEEA;
    8779}
    88 
    89 
    90 .spip_qcm_titre{
    91   text-align : center;
    92   font-size : 14;
    93   font-weight : bold;
    94   color :  #3F5264;
    95 }
    96 
    97 .spip_qcm_point{
    98   font-size : 10;
    99   font-weight : normal;
    100   color :  #3F5264;
    101 }
    102 
    103 .spip_qcm_score{   
    104   text-align:center;
    105   width:20%;
    106   font-family : arial, helvetica, sans-serif;
    107   color :  red;
    108   font-size : 12;
    109   font-weight : bold;
    110   border: 2px solid green;
    111   padding: 3px;
    112 }
    113 
    114 .spip_qcm_erreur{
    115   font-family : arial, helvetica, sans-serif;
    116   color :  red;
    117   font-size : 14;
    118 }
Note: See TracChangeset for help on using the changeset viewer.