From 35fa92e83c0ac722a75072cf86aa6d529554ca31 Mon Sep 17 00:00:00 2001 From: x2003bruneau Date: Mon, 2 Apr 2007 16:14:10 +0000 Subject: [PATCH] Continue #448: fix search and order with PlSet Finish job on xnet perms git-svn-id: svn+ssh://murphy/home/svn/platal/trunk@1655 839d8a87-29fc-0310-9880-83ba4fa771e5 --- classes/plset.php | 67 +++++++++++++++++++++++++++++--- htdocs/images/icons/null.gif | Bin 0 -> 55 bytes htdocs/images/icons/resultset_first.gif | Bin 0 -> 1083 bytes htdocs/images/icons/resultset_last.gif | Bin 0 -> 1081 bytes include/userset.inc.php | 51 ++++++++++++++---------- include/xnet.inc.php | 27 ++----------- include/xnet/session.inc.php | 8 ++++ include/xorg.inc.php | 4 +- modules/search.php | 10 +++-- modules/search/classes.inc.php | 4 +- modules/xnetgrp.php | 25 +++++------- templates/core/plset.tpl | 4 +- templates/geoloc/country.tpl | 4 +- templates/geoloc/init.tpl | 2 +- templates/include/plview.geoloc.tpl | 6 +-- templates/include/plview.multipage.tpl | 40 ++++++++++++++++--- templates/search/quick.form.tpl | 2 +- 17 files changed, 168 insertions(+), 86 deletions(-) create mode 100644 htdocs/images/icons/null.gif create mode 100644 htdocs/images/icons/resultset_first.gif create mode 100644 htdocs/images/icons/resultset_last.gif diff --git a/classes/plset.php b/classes/plset.php index d2267d0..aa5bfa6 100644 --- a/classes/plset.php +++ b/classes/plset.php @@ -86,6 +86,27 @@ class PlSet return $it; } + public function args() + { + $get = $_GET; + unset($get['n']); + return $get; + } + + protected function encodeArgs(array $args, $encode = false) + { + $qs = '?'; + $sep = $encode ? '&' : '&'; + foreach ($args as $k=>$v) { + if (!$encode) { + $k = urlencode($k); + $v = urlencode($v); + } + $qs .= "$k=$v$sep"; + } + return $encode ? urlencode($qs) : $qs; + } + public function &get($fields, $joins, $where, $groupby, $order, $limitcount = null, $limitfrom = null) { if (!is_null($limitcount)) { @@ -138,10 +159,13 @@ class PlSet if (is_null($view)) { return false; } + $args = $view->args(); $page->changeTpl('core/plset.tpl'); $page->assign('plset_base', $baseurl); $page->assign('plset_mods', $this->mods); $page->assign('plset_mod', $this->mod); + $page->assign('plset_search', $this->encodeArgs($args)); + $page->assign('plset_search_enc', $this->encodeArgs($args, true)); foreach ($this->modParams[$this->mod] as $param=>$value) { $page->assign($this->mod . '_' . $param, $value); } @@ -155,6 +179,7 @@ interface PlView { public function __construct(PlSet &$set, $data, array $params); public function apply(PlatalPage &$page); + public function args(); } abstract class MultipageView implements PlView @@ -165,10 +190,12 @@ abstract class MultipageView implements PlView public $page = 1; public $offset = 0; - protected $order = array(); protected $entriesPerPage = 20; protected $params = array(); + protected $sortkeys = array(); + protected $defaultkey = null; + public function __construct(PlSet &$set, $data, array $params) { $this->set =& $set; @@ -192,20 +219,41 @@ abstract class MultipageView implements PlView return null; } + protected function addSortKey($name, array $keys, $desc, $default = false) + { + $this->sortkeys[$name] = array('keys' => $keys, 'desc' => $desc); + if (!$this->defaultkey || $default) { + $this->defaultkey = $name; + } + } + public function order() { - foreach ($this->order as &$item) { - if ($item{0} == '-') { - $item = substr($item, 1) . ' DESC'; + $order = Env::v('order', $this->defaultkey); + $invert = ($order{0} == '-'); + if ($invert) { + $order = substr($order, 1); + } + $list = array(); + foreach ($this->sortkeys[$order]['keys'] as $item) { + $desc = ($item{0} == '-'); + if ($desc) { + $item = substr($item, 1); } + if ($desc xor $invert) { + $item .= ' DESC'; + } + $list[] = $item; } - return implode(', ', $this->order); + return implode(', ', $list); } abstract public function templateName(); public function apply(PlatalPage &$page) { + $page->assign('order', Env::v('order', $this->defaultkey)); + $page->assign('orders', $this->sortkeys); $page->assign_by_ref('plview', $this); $page->assign_by_ref('set', $this->set->get($this->fields(), @@ -217,9 +265,16 @@ abstract class MultipageView implements PlView $this->offset)); $count = $this->set->count(); $this->pages = intval(ceil($count / $this->entriesPerPage)); - return 'include/plview.multipage.tpl'; } + + public function args() + { + $list = $this->set->args(); + unset($list['page']); + unset($list['order']); + return $list; + } } // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: diff --git a/htdocs/images/icons/null.gif b/htdocs/images/icons/null.gif new file mode 100644 index 0000000000000000000000000000000000000000..4682c2445e3abd9849b34a55eda20b857adf3a1d GIT binary patch literal 55 zcmZ?wbhEHb6krfw_`m=HXU?2a{K>+|z`)3$1LA{Z7?}8a`d6NQ%fEQemRsGM?N}MC E0b&{stpET3 literal 0 HcmV?d00001 diff --git a/htdocs/images/icons/resultset_first.gif b/htdocs/images/icons/resultset_first.gif new file mode 100644 index 0000000000000000000000000000000000000000..f0830ee7aa88dff7555898ee6e7e7c1c7476cd8b GIT binary patch literal 1083 zcmb`GPiWIn9LIm{oE=-+)va^2+LrMPq71|#h!5V&=ly=a_xmQl z-%DsT=o^mOzy_Ouhs`GnVvWwrVr7?%NTrIx7G$BUSsXK&YSW9{@0JL|Jy$h!W4Gc@Ei$ zscX}OX$wqX(bb|%h8>~l%ZF=!*#eXs;6oqIb$Hw#J!TFG0vPPbYftLjgE^-21RiMe(^y0(2e#=9z^j)4?Og}99tS|%BtUuaz_xcqD~jRxM&|k; zDl{4fa{!?JldA4@0hm?*_61e__FPr>Um%Tb04dEZaEn?jiZ%`d{B5s)oSt280@nFC zvH3UNPHP3g9v}gpg#jiT0mkkDJlO&0ehtvN3P7XYPYi?6_xabzi;cbK4wMO0W-?_T-F}6d-=%uww zXB_=Q>&p#8@4W$6XG^e-XlizuJ3JkhU|ZJ-tFzVZF?9!3QIr*4sUk$&JLL+eg2jr~fegFUf literal 0 HcmV?d00001 diff --git a/htdocs/images/icons/resultset_last.gif b/htdocs/images/icons/resultset_last.gif new file mode 100644 index 0000000000000000000000000000000000000000..752b4e135f03615b41e7fe4cad5c37df1519831d GIT binary patch literal 1081 zcmb`GUr19?9LK+#+Dcc>oH}OK)}J+U##Dk?7TW4=V!=%W&8Ka5YZG-|?yff9_Fyny zbP&M^A7+6Jir7QMUW(g`Ebw6v$$gMm(8GNUgeXdG=j;|jBtdlGocsCxIlu3{zjLl{ zi1G9VO)%jd=rDN-=|W{7C8rCDC05Fp6h14b@=B(tq^Q4aVkIYE@~35gs>~A8Uo?4& z;~AOH$(C`+lPt68vT2~m=PI$RoXl5pl9DYdY+B9~lw@8>VQtz)$c=I?}+cJuiM?-1L!w{JU^``g=gZTK>W7x+Y>g! z77RG7sRg+NKghB-_SgQr1yUP$+eK^bpZCXzQ6PeV&P<}_sK!ppA&vVf-xYb0v zSTIbOOt^&65ij8k;UiIvbCg3G7bwqjQMy+m?2fD9$v81S5yKOXBskIlDkgHgK$7&U zgu7@1$de3l7`V~_)NJngCKABYb)e0$=W|+smNB5%yXV`vRc(r{bu)3Nmo%CTo$)GA z_g+Z}FnkYq_yIWk3}}7^RrguF!Rg765ELU}8@({z+38s! z!3ViWHT?e;F_I*Q0(fWn1z|E86K#X!enp7j3_mAE1ea|n&YgGJdfe^{RaF;V=?{wo z3(^DL@3OA=YSY=1H~X2zbG@qvFV=7y1GYn#*H*4iRaTEZdCipF>z<|MjnJFL`i&*O z{Y%VhZ+9@qJKF7fXPw#H!ql9YYIHc74MwI_Z*Mr$+0tfhVp0vuokr7X3sbl5ZE9@R TF^*H$EJtJVBF^o literal 0 HcmV?d00001 diff --git a/include/userset.inc.php b/include/userset.inc.php index db56b4c..bdfb90a 100644 --- a/include/userset.inc.php +++ b/include/userset.inc.php @@ -24,7 +24,7 @@ require_once('user.func.inc.php'); global $globals; -$globals->search->result_where_statement = ' +@$globals->search->result_where_statement = ' LEFT JOIN applis_ins AS ai0 ON (u.user_id = ai0.uid AND ai0.ordre = 0) LEFT JOIN applis_def AS ad0 ON (ad0.id = ai0.aid) LEFT JOIN applis_ins AS ai1 ON (u.user_id = ai1.uid AND ai1.ordre = 1) @@ -57,6 +57,7 @@ class UserSet extends PlSet class SearchSet extends UserSet { + private $score = null; private $order = null; private $quick = false; @@ -88,7 +89,9 @@ class SearchSet extends UserSet if ($qSearch->isEmpty()) { new ThrowError('Recherche trop générale.'); } - parent::__construct($fields->get_select_statement() . ' ' . $globals->search->result_where_statement, + $this->score = $qSearch->get_score_statement(); + parent::__construct("{$fields->get_select_statement()} + {$globals->search->result_where_statement}", $fields->get_where_statement() . (S::logged() && Env::has('nonins') ? ' AND u.perms="pending" AND u.deces=0' : '')); @@ -108,6 +111,14 @@ class SearchSet extends UserSet $this->order = implode(',',array_filter(array($fields->get_order_statement(), 'promo DESC, NomSortKey, prenom'))); } + + public function &get($fields, $joins, $where, $groupby, $order, $limitcount = null, $limitfrom = null) + { + if ($this->score) { + $fields .= ', ' . $this->score; + } + return parent::get($fields, $joins, $where, $groupby, $order, $limitcount, $limitfrom); + } } class MinificheView extends MultipageView @@ -117,7 +128,12 @@ class MinificheView extends MultipageView require_once 'applis.func.inc.php'; global $globals; $this->entriesPerPage = $globals->search->per_page; - $this->order = explode(',', Env::v('order', 'nom,prenom,promo')); + if (@$params['with_score']) { + $this->addSortKey('score', array('-score', '-watch_last', '-promo', 'nom', 'prenom'), 'pertinence'); + } + $this->addSortKey('name', array('nom', 'prenom'), 'nom'); + $this->addSortKey('promo', array('-promo', 'nom', 'prenom'), 'promotion'); + $this->addSortKey('date', array('-watch_last', '-promo', 'nom', 'prenom'), 'dernière modification'); parent::__construct($set, $data, $params); } @@ -171,6 +187,12 @@ class TrombiView extends MultipageView { $this->entriesPerPage = 24; $this->order = explode(',', Env::v('order', 'nom,prenom,promo')); + if (@$params['with_score']) { + $this->addSortKey('score', array('-score', '-watch_last', '-promo', 'nom', 'prenom'), 'pertinence'); + } + $this->addSortKey('name', array('nom', 'prenom'), 'nom'); + $this->addSortKey('promo', array('-promo', 'nom', 'prenom'), 'promotion'); + $this->addSortKey('date', array('-watch_last', '-promo', 'nom', 'prenom'), 'dernière modification'); parent::__construct($set, $data, $params); } @@ -218,19 +240,12 @@ class GeolocView implements PlView is_file(dirname(__FILE__) . '/../modules/geoloc/icon.swf'); } - private function make_qs($urlencode = true) + public function args() { - $qs = ""; - foreach ($_GET as $v=>$a) { - if ($v != 'initfile' && $v != 'n' && $v != 'mapid') { - if (!$urlencode) { - $qs .= $v . '=' . $a . '&'; - } else { - $qs .= urlencode($v) . '=' . urlencode($a) . '&'; - } - } - } - return $qs; + $args = $this->set->args(); + unset($args['initfile']); + unset($args['mapid']); + return $args; } public function apply(PlatalPage &$page) @@ -258,7 +273,6 @@ class GeolocView implements PlView if (!empty($GLOBALS['IS_XNET_SITE'])) { $page->assign('background', 0xF2E9D0); } - $page->assign('querystring', $this->make_qs()); break; case 'city': @@ -282,8 +296,6 @@ class GeolocView implements PlView header('Content-Type: text/xml'); header('Pragma:'); } - $querystring = $this->make_qs(); - $page->assign('searchvars', $querystring); $mapid = Env::has('mapid') ? Env::i('mapid', -2) : false; list($countries, $cities) = geoloc_getData_subcountries($mapid, $this->set, 10); $page->assign('countries', $countries); @@ -300,9 +312,6 @@ class GeolocView implements PlView } $page->assign('protocole', @$_SERVER['HTTPS'] ? 'https' : 'http'); $this->set->get('u.user_id', null, "u.perms != 'pending' AND u.deces = 0", "u.user_id", null); - $url = '?' . $this->make_qs(false); - $page->assign('search_nourlencode', $url); - $page->assign('search', urlencode($url)); return 'include/plview.geoloc.tpl'; } } diff --git a/include/xnet.inc.php b/include/xnet.inc.php index d2104e0..8e13153 100644 --- a/include/xnet.inc.php +++ b/include/xnet.inc.php @@ -25,35 +25,16 @@ require_once('xnet/session.inc.php'); $globals = new PlatalGlobals('XnetSession'); XnetSession::init(); -// {{{ function new_skinned_page() - -function new_skinned_page($tpl_name, $refuse_access = false) +function new_skinned_page($tpl_name) { - global $page, $globals; + global $page; require_once("xnet/page.inc.php"); if (!$page instanceof XnetPage) { - $page = new XnetPage($tpl_name, $type); + $page = new XnetPage($tpl_name); } else { - $page->changeTpl($tpl_name, $type); - } - if ($refuse_access) { - $page->kill("Vous n'avez pas les droits suffisants pour accéder à cette page"); + $page->changeTpl($tpl_name); } } -// }}} -// {{{ function new_annu_page() - -function new_annu_page($tpl_name) -{ - global $globals; - new_skinned_page($tpl_name, - !may_update() - && (!is_member() || $globals->asso('pub') != 'public') - && $globals->asso('cat') != 'Promotions'); -} - -// }}} - // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: ?> diff --git a/include/xnet/session.inc.php b/include/xnet/session.inc.php index f319d80..3fbeac4 100644 --- a/include/xnet/session.inc.php +++ b/include/xnet/session.inc.php @@ -47,12 +47,20 @@ class XnetSession $perms = S::v('perms'); $perms->rmFlag('groupadmin'); $perms->rmFlag('groupmember'); + $perms->rmFlag('groupannu'); if (may_update()) { $perms->addFlag('groupadmin'); $perms->addFlag('groupmember'); + $perms->addFlag('groupannu'); } if (is_member()) { $perms->addFlag('groupmember'); + if ($globals->asso('pub') == 'public') { + $perms->addFlag('groupannu'); + } + } + if ($globals->asso('cat') == 'Promotions') { + $perms->addFlag('groupannu'); } $_SESSION['perms'] = $perms; } diff --git a/include/xorg.inc.php b/include/xorg.inc.php index 6aa6cbf..62bfbe8 100644 --- a/include/xorg.inc.php +++ b/include/xorg.inc.php @@ -53,9 +53,9 @@ function new_skinned_page($tpl_name) { global $page; if (!$page instanceof XorgPage) { - $page = new XorgPage($tpl_name, $type); + $page = new XorgPage($tpl_name); } else { - $page->changeTpl($tpl_name, $type); + $page->changeTpl($tpl_name); } } diff --git a/modules/search.php b/modules/search.php index 2847322..bcb6423 100644 --- a/modules/search.php +++ b/modules/search.php @@ -90,9 +90,11 @@ class SearchModule extends PLModule require_once 'userset.inc.php'; $view = new SearchSet(true, $action == 'geoloc' && substr($subaction, -3) == 'swf'); - $view->addMod('minifiche', 'Minifiches', true); - $view->addMod('trombi', 'Trombinoscope'); - $view->addMod('geoloc', 'Planishpère'); + $view->addMod('minifiche', 'Minifiches', true, array('with_score' => true)); + if (S::logged() && !Env::i('nonins')) { + $view->addMod('trombi', 'Trombinoscope', false, array('with_promo' => true, 'with_score' => true)); + $view->addMod('geoloc', 'Planisphère'); + } $view->apply('search', $page, $action, $subaction); $nb_tot = $view->count(); @@ -133,7 +135,7 @@ class SearchModule extends PLModule require_once 'userset.inc.php'; $view = new SearchSet(false, $action == 'geoloc' && substr($subaction, -3) == 'swf'); $view->addMod('minifiche', 'Minifiches', true); - $view->addMod('trombi', 'Trombinoscope'); + $view->addMod('trombi', 'Trombinoscope', false, array('with_promo' => true)); $view->addMod('geoloc', 'Planishpère'); $view->apply('search', $page, $action, $subaction); diff --git a/modules/search/classes.inc.php b/modules/search/classes.inc.php index c0110eb..9f788a9 100644 --- a/modules/search/classes.inc.php +++ b/modules/search/classes.inc.php @@ -23,7 +23,7 @@ require_once("xorg.misc.inc.php"); // {{{ Global variables used for the search Queries -$globals->search->result_fields = ' +@$globals->search->result_fields = ' u.user_id, u.promo, u.matricule, u.matricule_ax, if(u.nom_usage=\'\', u.nom, u.nom_usage) AS NomSortKey, u.nom_usage,u.date, @@ -54,7 +54,7 @@ else IF(adr.pub='public', gp.pays, '') AS countrytxt, IF(adr.pub='public', gr.name, '') AS region, IF(e.pub='public', e.entreprise, '') AS entreprise,"; -$globals->search->result_where_statement = ' +@$globals->search->result_where_statement = ' LEFT JOIN applis_ins AS ai0 ON (u.user_id = ai0.uid AND ai0.ordre = 0) LEFT JOIN applis_def AS ad0 ON (ad0.id = ai0.aid) LEFT JOIN applis_ins AS ai1 ON (u.user_id = ai1.uid AND ai1.ordre = 1) diff --git a/modules/xnetgrp.php b/modules/xnetgrp.php index bbb557a..9049d47 100644 --- a/modules/xnetgrp.php +++ b/modules/xnetgrp.php @@ -80,16 +80,16 @@ class XnetGrpModule extends PLModule '%grp/edit' => $this->make_hook('edit', AUTH_MDP, 'groupadmin'), '%grp/mail' => $this->make_hook('mail', AUTH_MDP, 'groupadmin'), '%grp/forum' => $this->make_hook('forum', AUTH_MDP, 'groupmember'), - '%grp/annuaire' => $this->make_hook('annuaire', AUTH_MDP), - '%grp/annuaire/vcard' => $this->make_hook('vcard', AUTH_MDP), - '%grp/trombi' => $this->make_hook('trombi', AUTH_MDP), + '%grp/annuaire' => $this->make_hook('annuaire', AUTH_MDP, 'groupannu'), + '%grp/annuaire/vcard' => $this->make_hook('vcard', AUTH_MDP, 'groupmember:groupannu'), + '%grp/trombi' => $this->make_hook('trombi', AUTH_MDP, 'groupannu'), '%grp/subscribe' => $this->make_hook('subscribe', AUTH_MDP), '%grp/unsubscribe' => $this->make_hook('unsubscribe', AUTH_MDP, 'groupmember'), '%grp/change_rights' => $this->make_hook('change_rights', AUTH_MDP), '%grp/admin/annuaire' - => $this->make_hook('admin_annuaire', AUTH_MDP), + => $this->make_hook('admin_annuaire', AUTH_MDP, 'groupadmin'), '%grp/member' => $this->make_hook('admin_member', AUTH_MDP, 'groupadmin'), @@ -326,7 +326,7 @@ class XnetGrpModule extends PLModule function handler_annuaire(&$page) { global $globals; - new_annu_page('xnetgrp/annuaire.tpl'); + $page->changeTpl('xnetgrp/annuaire.tpl'); $sort = Env::v('order'); switch (Env::v('order')) { @@ -436,16 +436,11 @@ class XnetGrpModule extends PLModule function handler_vcard(&$page, $photos = null) { global $globals; - - if (($globals->asso('pub') == 'public' && is_member()) || may_update()) { - $res = XDB::query('SELECT uid - FROM groupex.membres - WHERE asso_id = {?}', $globals->asso('id')); - $vcard = new VCard($res->fetchColumn(), $photos == 'photos', 'Membre du groupe ' . $globals->asso('nom')); - $vcard->do_page($page); - } else { - return PL_FORBIDDEN; - } + $res = XDB::query('SELECT uid + FROM groupex.membres + WHERE asso_id = {?}', $globals->asso('id')); + $vcard = new VCard($res->fetchColumn(), $photos == 'photos', 'Membre du groupe ' . $globals->asso('nom')); + $vcard->do_page($page); } function handler_subscribe(&$page, $u = null) diff --git a/templates/core/plset.tpl b/templates/core/plset.tpl index ef12a7a..c33621f 100644 --- a/templates/core/plset.tpl +++ b/templates/core/plset.tpl @@ -35,7 +35,7 @@ {if $plset_mods|@count > 1}[ {foreach from=$plset_mods key=mod item=desc name=mods} {if $mod neq $plset_mod} - {$desc} {if !$smarty.foreach.mods.last}| {/if} + {$desc} {if !$smarty.foreach.mods.last}| {/if} {/if} {/foreach} ] @@ -43,6 +43,8 @@ +
{include file=$plset_content} +
{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *} diff --git a/templates/geoloc/country.tpl b/templates/geoloc/country.tpl index 1201862..809add5 100644 --- a/templates/geoloc/country.tpl +++ b/templates/geoloc/country.tpl @@ -30,7 +30,7 @@ {if $country.nbPop > 0 or $country.id eq 0} - + {/if} {/foreach} @@ -39,7 +39,7 @@ {foreach from=$cities item="city"} - + {/foreach} diff --git a/templates/geoloc/init.tpl b/templates/geoloc/init.tpl index 7cb6d85..dfc34a8 100644 --- a/templates/geoloc/init.tpl +++ b/templates/geoloc/init.tpl @@ -46,5 +46,5 @@ zoomBarBackgroundColor="{$background}" textCopyright="Les règles de l'annuaire s'appliquent aussi à cette application" autofolder="true" iconSwf="icon.swf" -scriptInfosArea="country?{$querystring}"/> +scriptInfosArea="country{$plset_search}"/> {* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *} diff --git a/templates/include/plview.geoloc.tpl b/templates/include/plview.geoloc.tpl index 2c6bc57..593598c 100644 --- a/templates/include/plview.geoloc.tpl +++ b/templates/include/plview.geoloc.tpl @@ -60,7 +60,7 @@ function searchMapId(f) {if $smarty.request.only_current neq 'on'}

- [Ne voir que les adresses principales] + [Ne voir que les adresses principales]

{/if} @@ -75,7 +75,7 @@ function searchMapId(f) - + pages > 1}
{if $plview->page neq 1} - << - < + {icon name=resultset_first title="Première page"}{* + *}{icon name=resultset_previous title="Page précédente"} + {else} + {icon name=null title=""}{icon name=null title=""} {/if} {section name=page loop=$plview->pages+1 start=1} {if $smarty.section.page.index eq $plview->page} {$plview->page} {else} - {$smarty.section.page.index} + {$smarty.section.page.index} {/if} {/section} {if $plview->page neq $plview->pages} - > - >> + {icon name=resultset_next title="Page suivante"}{* + *}{icon name=resultset_last title="Dernière page"} + {else} + {icon name=null title=""}{icon name=null title=""} {/if}
{/if} {/capture} +{capture name=order} +{if $plset_count > 1} +
+ Trier par : + {foreach from=$orders key=name item=sort} + [ + {if $name eq $order} + tri ascendant + {$sort.desc} + {elseif $order eq "-$name"} + tri ascendant + {$sort.desc} + {else} + {$sort.desc} + {/if} + ]  + {/foreach} +
+{/if} +{/capture} + + {$smarty.capture.pages|smarty:nodefaults} +{$smarty.capture.order|smarty:nodefaults} +
{include file=$plview->templateName()}
+{$smarty.capture.order|smarty:nodefaults} + {$smarty.capture.pages|smarty:nodefaults} {* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *} diff --git a/templates/search/quick.form.tpl b/templates/search/quick.form.tpl index 4bdf86b..9231222 100644 --- a/templates/search/quick.form.tpl +++ b/templates/search/quick.form.tpl @@ -39,7 +39,7 @@ Activer la recherche par proximité sonore
Mettre les fiches modifiées récemment en premier -
Chercher uniquement des non inscrits +
Chercher uniquement des non inscrits {else} -- 2.1.4