Changeset 2666


Ignore:
Timestamp:
May 12, 2012, 3:58:33 PM (8 years ago)
Author:
teymour
Message:

Optimisations de Bastien Jalllot <http://bastnic.info/>

Location:
cpc/trunk/project
Files:
3 edited

Legend:

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

    r2125 r2666  
    9595        ->where('i.seance_id = ?', $seance_id)
    9696        ->orderBy('i.timestamp ASC');
     97
     98
     99    $parlementaires = Doctrine::getTable('Intervention')->createquery('i')
     100        ->where('i.seance_id = ?', $seance_id)
     101        ->leftJoin('i.Parlementaire p')
     102        ->groupBy('i.parlementaire_id')
     103        ->execute()
     104        ;
     105    $this->parlementaires = array();
     106    foreach ($parlementaires as $p) {
     107      if ($p->parlementaire_id) {
     108        $this->parlementaires[$p->parlementaire_id] = $p->Parlementaire;
     109      }
     110    }
     111
     112    $personnalites = Doctrine::getTable('Intervention')->createquery('i')
     113        ->where('i.seance_id = ?', $seance_id)
     114        ->leftJoin('i.Personnalite p')
     115        ->groupBy('i.personnalite_id')
     116        ->execute()
     117        ;
     118    $this->personnalites = array();
     119    foreach ($personnalites as $p) {
     120      if ($p->personnalite_id) {
     121        $this->personnalites[$p->personnalite_id] = $p->Personnalite;
     122      }
     123    }
     124
    97125    $qtag = Doctrine_Query::create();
    98126    $qtag->from('Tagging tg, tg.Tag t, Intervention i');
  • cpc/trunk/project/apps/frontend/modules/intervention/templates/seanceSuccess.php

    r2414 r2666  
    8484    if ($intervention->hasIntervenant()) {
    8585      $didascalie = 0;
    86       $perso = $intervention->getIntervenant();
     86      $perso = $intervention->getIntervenant($parlementaires, $personnalites);
    8787      if ($titre != 1) {
    8888        echo '<span class="source">';
  • cpc/trunk/project/lib/model/doctrine/Intervention.class.php

    r2617 r2666  
    66class Intervention extends BaseIntervention
    77{
     8
     9  public $perso = null;
     10
    811  public function getLink() {
    912    sfProjectConfiguration::getActive()->loadHelpers(array('Url'));
     
    112115  }
    113116
    114   public function getIntervenant() {
    115     $perso = $this->Parlementaire;
    116     if (!$perso->id)
    117       $perso = $this->Personnalite;
    118     return $perso;
     117  public function getIntervenant(&$parlementaires = null, &$personnalites = null) {
     118    if (is_null($this->perso)) {
     119      if ($this->parlementaire_id) {
     120        $this->perso = $parlementaires[$this->parlementaire_id];
     121      }
     122      if ($this->personnalite_id) {
     123        $this->perso = $personnalites[$this->personnalite_id];
     124      }
     125    }
     126    return $this->perso;
    119127  }
    120128
Note: See TracChangeset for help on using the changeset viewer.