Changeset 3080


Ignore:
Timestamp:
Jan 28, 2013, 3:21:36 PM (8 years ago)
Author:
nosdeputes
Message:

fix links amdmts pr simplifions

Location:
cpc/trunk/project/apps/frontend/modules
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • cpc/trunk/project/apps/frontend/modules/amendement/templates/showSuccess.php

    r2876 r3080  
    3838<div class="sujet">
    3939  <h3><?php $sujet = $amendement->getSujet();
    40     if ($titreloi && preg_match('/^(.*)?(article\s*)((\d+|premier).*)$/i', $sujet, $match)) {
    41       $art = preg_replace('/premier/i', '1er', $match[3]);
    42       $art = preg_replace('/\s+/', '-', $art);
    43       $sujet = $match[1].link_to($match[2].$match[3], '@loi_article?loi='.$titreloi->texteloi_id.'&article='.$art);
     40    if ($titreloi && preg_match('/^(.*)?(art(\.|icle)\s*)((\d+|premier).*)$/i', $sujet, $match)) {
     41      $art = preg_replace('/premier/i', '1er', $match[4]);
     42      $art = strtolower(preg_replace('/\s+/', '-', $art));
     43      $sujet = $match[1].link_to($match[2].$match[4], '@loi_article?loi='.$titreloi->texteloi_id.'&article='.$art);
    4444    }
    4545    if ($titreloi)
     
    5353<div class="texte_intervention">
    5454  <?php $texte = $amendement->getTexte();
    55   if ($titreloi && preg_match('/alin(e|é)a\s*(\d+)[^\d]/', $texte, $match)) {
    56     $link = link_to('alinéa '.$match[2], '@loi_article?loi='.$titreloi->texteloi_id.'&article='.$art.'#alinea_'.$match[2]);
    57     $texte = preg_replace('/(alin(e|é)a\s*\d+)([^\d])/', $link.'\3', $texte);
     55  if ($titreloi && preg_match('/alin..?as?..?(\d+)[^\d]/', $texte, $match)) {
     56    $link = link_to('alinéa '.$match[1], '@loi_article?loi='.$titreloi->texteloi_id.'&article='.$art.'#alinea_'.$match[1]);
     57    $texte = preg_replace('/(alin..?as?..?\d+)([^\d])/', $link.'\2', $texte);
    5858  }
    5959  echo myTools::escape_blanks($texte); ?>
  • cpc/trunk/project/apps/frontend/modules/loi/actions/actions.class.php

    r3074 r3080  
    2121      $likestr = '';
    2222      foreach ($articles as $article) {
    23         $like = 'a.sujet LIKE "%article '.preg_replace('/1.?er/', 'premier', $article->titre).'"';
     23        $like = 'a.sujet LIKE "%art% '.preg_replace('/1.?er?/', 'premier', $article->titre).'%"';
     24        if (preg_match("/(1.?er?|premier)(.*)$/i", $article->titre, $match))
     25          $like .= ' OR a.sujet LIKE "titre" OR a.sujet LIKE "%art% 1e%"';
    2426        if ($likestr == '') $likestr = $like;
    2527        else $likestr .= ' OR '.$like;
    2628      }
    27       if (!$likestr === '') $admts->andWhere($likestr);
     29      if ($likestr != '') $admts->andWhere($likestr);
    2830    }
    2931    foreach ($admts->fetchArray() as $adt) {
    30       $art = preg_replace('/premier/', '1er', strtolower($adt['sujet']));
    31       $art = preg_replace("/(l'\s?)?article\s/", '', $art);
     32      $art = str_replace("È", "è", preg_replace('/premier/', '1er', strtolower($adt['sujet'])));
     33      $art = trim(preg_replace("/[l'\s]*art(\.|icle)?\s*/", ' ', $art));
    3234      if (preg_match('/(adopté|favorable)/i', $adt['sort'], $match)) $add = array($adt['numero'].' <b>'.strtolower($match[1]).'</b>');
    3335      else $add = array($adt['numero']);
    3436      if (isset($amendements[$art])) $amendements[$art] = array_merge($amendements[$art], $add);
    3537      else $amendements[$art] = $add;
    36       if ($alineas && !preg_match('/(avant|après)/', $art) && preg_match('/alin(e|é)a\s*(\d+)[^\d]/', $adt['texte'], $match)) {
    37         $al = $art.'-'.$match[2];
     38      if ($alineas && !(preg_match('/(avant|après)/', $art))) { if (preg_match("/alin..?as?..?(\d+)[^\d]/", $adt['texte'], $match)) {
     39        $al = $art.'-'.$match[1];
    3840        if (isset($amendements[$al])) $amendements[$al] = array_merge($amendements[$al], $add);
    3941        else $amendements[$al] = $add;
    4042      }
    41     }
     43    } }
    4244    return $amendements;
    4345  }
  • cpc/trunk/project/apps/frontend/modules/loi/templates/articleSuccess.php

    r3065 r3080  
    1313<br/>
    1414<?php $arttitre = strtolower($article->titre);
    15   if (isset($amendements['avant '.$arttitre])) {
     15if (isset($amendements['titre']) && preg_match('/[1i]er$/', $article->titre)) {
     16  echo '<p><b>Amendement';
     17  if (count($amendements['titre']) > 1) echo 's';
     18  echo ' proposant une modification du titre&nbsp;:</b> ';
     19  foreach ($amendements['titre'] as $adt)
     20    echo link_to('n°&nbsp;'.$adt, '@amendement?loi='.$loi->texteloi_id.'&numero='.preg_replace('/^([A-Z]{1,3})?(\d+)\s+.*$/', '\1\2', $adt)).' ';
     21  echo '</p>';
     22}
     23if (isset($amendements['avant '.$arttitre])) {
    1624  echo '<p><b>Amendement';
    1725  if (count($amendements['avant '.$arttitre]) > 1) echo 's';
     
    2533<?php foreach ($alineas as $a) {
    2634  $options = array('a'=>$a, 'slug_article'=>$article->slug, 'comment' => 1);
    27   $al = $arttitre.'-'.$a->numero;
     35  $al = strtolower($arttitre.'-'.$a->numero);
    2836  if (isset($amendements[$al])) $options = array_merge($options, array('amendements' => $amendements[$al], 'loi' => $loi->texteloi_id));
    2937  include_partial('alinea', $options);
Note: See TracChangeset for help on using the changeset viewer.