Bonjour,
J'ai un module qui liste des pays avec différents critères dans ce
tableau.
Je souhaiterai les modifier donc il faudrait que je fasse la
modification dans la meme action.
On m'a dit que je pouvais le faire avec ajax mais ne connaissant pas
ce language, j'aurais besoin d'un petit coup de main s'il vous plait.

Voici mon code:
<div class="alphabet">
        <?php echo '<a href="'.url_for('map_admin_lettre', array('letter' =>
'All')).'" class="espace">All</a>'; ?>
        <?php for($i = 65; $i < 91 ; $i++): ?>
                <?php $letter = chr($i); ?>
                <?php echo '<a href="'.url_for('map_admin_lettre', 
array('letter' =>
$letter)).'" class="espace">'.$letter.'</a>'; ?>
        <?php endfor; ?>
</div>

<?php
        $url = explode('/', $_SERVER['REQUEST_URI']);
        $numpage = $url[count($url) - 1];
        if(is_numeric($numpage))
                $letter = $url[count($url) - 2];
        else
        {
                $letter = $numpage;
                $numpage = 0;
        }

        if(empty($letter)){
                $letter = 'All';
                $numpage = 0;
        }
?>

<?php
function printCircle($number, $name, $id, $letter, $numpage){
        if(!is_numeric($number)) $number =  0;
        $colorArray = array
        (
                '#ff0000',
                '#ff4e00',
                '#ff7800',
                '#ffa800',
                '#e5d523',
                '#ffee00',
                '#c1dc2d',
                '#8fe827',
                '#55d416',
                '#3bc331',
                '#2d9d3f'
        );

        $j = 0;

        if($name == 'risk-level')
        {
                $j = 10 - $number;
        }
        else
        {
                $j = $number;
        }

        if($numpage == 0)
                $url_home = url_for('map_admin_lettre', array('letter' => 
$letter));
        else
                $url_home = url_for('map_admin_lettre_page', array('letter' =>
$letter, 'page' => $numpage));

        return '<form action='.$url_home.' method="post" class="content-
circle"><input class="cercle" style="background-color: '.
$colorArray[$number] .'" value='.$number.'
onfocus="onFocusShowButton(this)" onblur="onBlurHideButton(this)" /
><input type="submit" value="" class="apply"><input type="hidden"
name="id" value="'.$id.'"><input type="hidden" name="name" value="'.
$name.'"></form>';
}
?>

<table class="tableau">
        <thead>
          <tr>
            <th><div class="colonne_titre colonne_titre_gauche">Country</
div></th>
            <th><div class="colonne_titre col_1ligne
colonne_titre_centre">Risk level</div></th>
            <th><div class="colonne_titre col_2lignes
colonne_titre_centre">Growth opportunities</div></th>
            <th><div class="colonne_titre col_2lignes
colonne_titre_centre">Competitive position</div></th>
            <th><div class="colonne_titre colonne_titre_droite">Global
balance</div></th>
          </tr>
        </thead>
        <tbody>
                <?php
                        $i = 0;
                        foreach ($riskPager->getResults() as $risk):
                ?>

                <tr class="<?php echo (($i % 2 == 0) ? 'ligne_1' : 'ligne_2'); 
$i++;?
>">
                        <td class="colonne_gauche"><?php echo $risk->getNom() 
?></td>
        <td class="colonne_centre"><?php echo printCircle($risk-
>getCountryRisk(), "risk-level", $risk->getId(), $letter, $numpage); ?
></td>
        <td class="colonne_centre"><?php echo printCircle($risk-
>getCountryAttractiveness(), "growth-opportunities", $risk->getId(),
$letter, $numpage); ?></td>
        <td class="colonne_centre"><?php echo printCircle($risk-
>getCompetitivePosition(), "competitive-position", $risk->getId(),
$letter, $numpage); ?></td>
        <td class="colonne_droite"><?php echo printCircle(round(($risk-
>getCompetitivePosition()+$risk->getCountryAttractiveness()+$risk-
>getCountryRisk())/3), "global-balance", $risk->getId(), $letter,
$numpage); ?></td>
                </tr>

                <?php
                        endforeach;
                ?>
        </tbody>
</table>


<?php if($riskPager->havetoPaginate()): ?>
        <div class="pagination">
                <a href="<?php echo url_for('map_admin_lettre_page', 
array('letter'
=> $letter, 'page' => '1')) ?>" class="page"><?php echo image_tag("/
images/first.png"); ?></a>
                <a href="<?php echo url_for('map_admin_lettre_page', 
array('letter'
=> $letter, 'page' => $riskPager->getPreviousPage())) ?>"
class="page"><?php echo image_tag("/images/previous.png"); ?></a>
                <?php foreach($riskPager->getLinks() as $page): ?>
                        <?php if ($page == $riskPager->getPage()): ?>
                        <span  class="page"><?php echo $page ?></span>
                <?php else: ?>
                        <a href="<?php echo url_for('map_admin_lettre_page',
array('letter' => $letter, 'page' => $page)) ?>" class="page"><?php
echo $page ?></a>
                <?php endif; ?>
                <?php endforeach; ?>
                <a href="<?php echo url_for('map_admin_lettre_page', 
array('letter'
=> $letter, 'page' => $riskPager->getNextPage())) ?>" class="page"><?
php echo image_tag("/images/next.png"); ?></a>
                <a href="<?php echo url_for('map_admin_lettre_page', 
array('letter'
=> $letter, 'page' => $riskPager->getLastPage())) ?>" class="page"><?
php echo image_tag("/images/last.png"); ?></a>
        </div>

et mon action:
public function executeIndex(sfWebRequest $request)
  {
        $letter = $request->getParameter('letter');
        if($letter == 'All')
                $letter = '';

        $this->riskPager = new sfDoctrinePager('risk',
sfConfig::get('app_max_country_on_page'));
        $this->riskPager->setQuery(Doctrine::getTable('risk')-
>createQuery('a')->where('nom LIKE ?', "$letter%"));
        $this->riskPager->setPage($request->getParameter('page', 1));
        $this->riskPager->init();
  }

Cdt

-- 
Vous recevez ce message, car vous êtes abonné au groupe Google 
Groupes Symfony-fr.
Pour envoyer un message à ce groupe, adressez un e-mail 
à symfony-fr@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse 
symfony-fr+unsubscr...@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe : 
http://groups.google.com/group/symfony-fr?hl=fr

Reply via email to