Changeset 1432


Ignore:
Timestamp:
Sep 26, 2010, 5:30:47 PM (10 years ago)
Author:
teymour
Message:

Introduction des filters dans l'alerte pour pouvoir faire les liens depuis la recherche

Location:
cpc/trunk/project
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • cpc/trunk/project/apps/frontend/modules/alerte/actions/actions.class.php

    r1427 r1432  
    3535      $alerte->citoyen_id = $citoyen_id;
    3636    }
     37    $alerte->query = $request->getParameter('query');
     38    $alerte->filter = $request->getParameter('filter');
    3739    $this->form = new AlerteForm($alerte);
    3840    $this->submit = 'Créer';
  • cpc/trunk/project/apps/frontend/modules/alerte/templates/formSuccess.php

    r1427 r1432  
    22<form method="POST">
    33<table><?php
    4 if ($form->getObject()->no_human_query) {
    5 echo "<tr><th>Alerte portant sur</th><td>".$form->getObject()->titre."</td></tr>";
    6 }
    74if ($form->getObject()->citoyen_id) {
    85echo "<tr><th>Email</th><td>".$form->getObject()->Citoyen->email."</td></tr>";
    96}
    107echo $form;
     8if ($form->getObject()->no_human_query) {
     9echo "<tr><th>Alerte portant sur</th><td>".$form->getObject()->titre."</td></tr>";
     10}
     11if ($f = $form->getObject()->filter) {
     12echo "<tr><th>Filtré sur</th><td>".preg_replace('/[\&,] ?/', ', ', preg_replace('/[^=\&\,]+=/i', '', strtolower(urldecode($f))))."</td></tr>";
     13}
    1114?>
    1215<tr><th></th><td><input type="submit" value="<?php echo $submit; ?>"> <?php if ($submit != 'Créer') echo link_to('Supprimer', 'alerte/delete?verif='.$form->getObject()->verif);?></td></tr>
  • cpc/trunk/project/apps/frontend/modules/alerte/templates/listSuccess.php

    r1427 r1432  
    33<?php if (count($alertes)) : ?>
    44<table class="list">
    5 <tr><th>Type d'alerte</th><th>Envoyée au maximum</th><th>Dernier envoi</th></tr>
     5<?php
     6$filter = 0;
     7foreach($alertes as $a)
     8{
     9if ($a->getFilter())
     10$filter = 1;
     11break;
     12}
     13?>
     14<tr><th>Type d'alerte</th><?php if ($filter) echo '<th>Filtre</th>'; ?><th>Envoyée au maximum</th><th>Dernier envoi</th></tr>
    615<?php //'
    716$period = array('HOUR' => 'heure', 'DAY' => 'jour', 'WEEK' => 'semaine', 'MONTH' => 'mois');
     
    1019  echo "<tr><td>";
    1120  echo link_to($a->getTitre(), 'alerte/edit?verif='.$a->verif);
    12   echo "</td><td>une fois par ".$period[$a->getPeriod()]."</td><td>".$a->getLastMail();
     21  echo "</td><td>";
     22  if ($filter) {
     23    echo ($f = $a->getFilter()) ? preg_replace('/[&,] ?/', ', ', preg_replace('/[^=\&\,]+=/i', '', urldecode(strtolower($f)))) : " - ";
     24    echo "</td><td>";
     25  }
     26  echo "une fois par ".$period[$a->getPeriod()]."</td><td>".$a->getLastMail();
    1327  echo "</td><td>";
    1428  echo link_to('<img src="/images/xneth/remove.png"/>', 'alerte/delete?verif='.$a->verif);
  • cpc/trunk/project/apps/frontend/modules/solr/templates/searchSuccess.php

    r1417 r1432  
     1<!-- Mal placé pour éviter conflit avec la layout en cours --->
     2<div class="mail">
     3<?php
     4    $args = '';
     5foreach(array_keys($selected) as $k) {
     6  if ($args)
     7    $args .= '&';
     8  $args.= "$k=".implode(',', array_keys($selected[$k]));
     9}
     10echo link_to('Etre alerté par mail lorsque de nouveaux résoltats sont publiés', 'alerte/create?filter='.urlencode($args).'&query='.urlencode($query));
     11?>
     12</div>
    113<?php
    214
  • cpc/trunk/project/config/doctrine/schema.yml

    r1429 r1432  
    660660  columns:
    661661    email: string(128)
    662     query: string(128)
     662    query: string
     663    filter: string
    663664    titre: string
    664665    confirmed: boolean
  • cpc/trunk/project/lib/form/doctrine/AlerteForm.class.php

    r1427 r1432  
    3333    unset($this->validatorSchema['no_human_query']);
    3434
     35    $this->widgetSchema['filter'] = new sfWidgetFormInputHidden();
     36
    3537    $this->widgetSchema['period'] = new sfWidgetFormChoice(array('choices' => array('HOUR' => 'Une fois par heure', 'DAY' => 'Une fois par jour', 'WEEK' => 'Une fois par semaine', 'MONTH' => 'Une fois par mois')));
    36 
    3738    $this->setDefault('period', 'WEEK');
    3839
     
    4849
    4950    if ($this->getObject()->no_human_query) {
    50       $this->widgetSchema['query']->setHidden(true);
     51      $this->widgetSchema['query'] = new sfWidgetFormInputHidden();
    5152    }
    5253
Note: See TracChangeset for help on using the changeset viewer.