Changeset 64924 in spip-zone


Ignore:
Timestamp:
Aug 17, 2012, 1:48:29 PM (9 years ago)
Author:
patfr@…
Message:

Merged revision(s) [64921] from _plugins_/jeux/trunk:

  • Amélioration de la fonction jeux_in_liste($texte, $liste=array())
  • Amélioration de la fonction jeux_trouver_configuration_interne($texte, $param=false) qui peut maintenant renvoyer un paramètre en particulier

........

Location:
_plugins_/jeux/branches/jeux2
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/jeux/branches/jeux2/jeux/qcm.php

    r64912 r64924  
    333333  $id_jeu = _request('id_jeu');
    334334
    335   // parcourir tous les #SEPARATEURS, remplir $tableau et mettre a jour $indexJeux si ajax
     335  // parcourir tous les [separateurs]
    336336  $tableau = jeux_split_texte('qcm', $texte);
    337337  foreach($tableau as $i => $valeur) if ($i & 1) {
     
    373373  $js = jeux_config('une_par_une')?'<script type="text/javascript">qcm_affichage_une_par_une();</script>':'';
    374374
    375   unset($qcms_[$indexJeux]);
    376375  return $tete.$texte.$pied.'</div>'.$js;
    377376}
  • _plugins_/jeux/branches/jeux2/jeux/trous.php

    r64912 r64924  
    143143// traitement du jeu : jeu_{mon_jeu}()
    144144function jeux_trous($texte, $indexJeux, $form=true) {
     145        // initialisation
    145146        $trous_[$indexJeux] = array(
    146147                'propositions'=> array(),
     
    148149        );
    149150        $trous = &$trous_[$indexJeux];
    150         $titre = $html = false; $indexTrou = 0;
    151         // parcourir tous les #SEPARATEURS
     151        $titre = $html = false;
     152        $indexTrou = 0;
     153  // parcourir tous les [separateurs]
    152154        $tableau = jeux_split_texte('trous', $texte);
    153155        foreach($tableau as $i => $valeur) if ($i & 1) {
     
    165167        $texte = trous_inserer_les_trous($trous, $html, $indexJeux);
    166168        // mode correction ?
    167         $correction = jeux_form_correction($indexJeux);
    168         if($correction) sort($trous['score_detaille']);
     169        if($correction = jeux_form_correction($indexJeux))
     170                sort($trous['score_detaille']);
    169171        $id_jeu = _request('id_jeu');
    170172        // recuperation du fond 'jeux/trous.html'
    171173        include_spip('public/assembler');
    172         $fond = recuperer_fond('jeux/trous',
    173                 array('id_jeu' => $id_jeu, 'titre' => $titre,
    174                         'texte' => $texte, 'correction' => $correction,
    175                         'indices' => jeux_config('indices')?trous_afficher_indices($trous):'',
    176                         'fond_score' => $correction?
    177                                 jeux_afficher_score($trous['score'], $indexTrou, $id_jeu, join(', ', $trous['score_detaille']), $categ_score):'',
    178                 )
    179         );
     174        $fond = recuperer_fond('jeux/trous', array(
     175                'id_jeu' => $id_jeu,
     176                'titre' => $titre,
     177                'texte' => $texte,
     178                'correction' => $correction,
     179                'indices' => jeux_config('indices')?trous_afficher_indices($trous):'',
     180                'fond_score' => $correction?
     181                        jeux_afficher_score($trous['score'], $indexTrou, $id_jeu, join(', ', $trous['score_detaille']), $categ_score):'',
     182        ));
    180183        // mise en place du formulaire
    181184        $fond = str_replace(
  • _plugins_/jeux/branches/jeux2/jeux_utils.php

    r64912 r64924  
    115115}
    116116function jeux_in_liste($texte, $liste=array()) {
    117         // eviter un pb d'apostrophe par exemple
    118         $texte = filtrer_entites(corriger_typo($texte));
     117        $texte = filtrer_entites($texte);
    119118        $texte_m = jeux_minuscules($texte);
    120119        foreach($liste as $expr) {
     
    125124                        if(substr($expr,0,$len)===$texte) return true;
    126125                } else {
    127                         if(jeux_minuscules($expr)===$texte_m) return true;
     126                        $expr = jeux_minuscules($expr);
     127                        // corriger_typo peut eviter un pb d'apostrophe par exemple
     128                        if($expr===$texte_m || $expr===corriger_typo($texte_m))
     129                                return true;
    128130                }
    129131        }
     
    241243
    242244// retourne la configuration interne, si le separateur [config] est present
    243 function jeux_trouver_configuration_interne($texte) {
     245// si strlen($param)>0 alors la valeur d'un parametre en particulier est renvoyee
     246// si $param=='' alors un tableau associatif est renvoye
     247function jeux_trouver_configuration_interne($texte, $param=false) {
    244248  $texte = jeux_sans_balise($texte);
    245249  $configuration_interne = array();
     250  $ok_param = false;
    246251  // cas particulier des multi-jeux
    247252  if($p=strpos($texte,'['._JEUX_MULTI_JEUX.']')) $texte = substr($texte,0,$p);
     
    251256        if ($valeur==_JEUX_CONFIG) {
    252257                $lignes = preg_split(",[\r\n]+,", $tableau[$i+1]);
    253                 foreach ($lignes as $ligne) {
    254                         $ligne = trim($ligne);
    255                         if(strlen($ligne)) $configuration_interne[] = preg_replace(',\s*=\s*,', ' = ', $ligne);
     258                foreach ($lignes as $ligne) if(strlen($ligne = trim($ligne))) {
     259                        $configuration_interne[] = $ligne = preg_replace(',\s*=\s*,', ' = ', $ligne);
     260                        if($param!==false) {
     261                                list(,$k, $v) = jeux_parse_ligne_config($ligne);
     262                                if($param==='') $ok_param[$k] = $v;
     263                                elseif($k == $param) $ok_param = $v;
     264                        }
    256265                }
    257266        }
    258267  }
     268  if($param!==false) return $ok_param;
    259269  sort($configuration_interne);
    260270  return $configuration_interne;
  • _plugins_/jeux/branches/jeux2/paquet.xml

    r64877 r64924  
    22        prefix="jeux"
    33        categorie="divers"
    4         version="2.5.0"
     4        version="2.5.1"
    55        etat="test"
    66        compatibilite="[3.0.0;3.0.99]"
  • _plugins_/jeux/branches/jeux2/plugin.xml

    r64877 r64924  
    33        <slogan>Des jeux avec SPIP !</slogan>
    44        <etat>test</etat>
    5         <version>2.5.0</version>
     5        <version>2.5.1</version>
    66        <icon>img/jeux-48.png</icon>
    77        <auteur>Patrice VANNEUFVILLE, Ma&#239;eul Rouquette</auteur>
Note: See TracChangeset for help on using the changeset viewer.