Files
databap/masks/search.html

81 lines
2.4 KiB
HTML
Executable File

<div id="search">
<div class="step_box round">
<p class="step_nb_box">Recherche</p>
<input type="text" name="repeat_query" id="repeat_query" class="step_line_item inc_border round" maxlength="200" value="">
<div id="sub_button_box"></div>
<p class="summary"><span id="search_count">0</span> résultat<span id="search_multi">s</span> pour la recherche "<span id="search_words"></span>".</p>
</div>
<div id="search_container">
<div id="list_container" class="standalone"></div>
</div>
</div>
<script type="text/javascript">
databap.pageInit = function()
{
self.initScrollBar('#main', '#search_container', '#list_container');
self.tmp('searched_words', '');
if($('#query').val()!=databap.consts.search_box_text) search();
//Double link
$('#query').change(function(){$('#repeat_query').val($(this).val());});
$('#sub_button_box').addButton('search', 'Chercher', function(){$('#repeat_query').trigger('keyup');}, 'sub_button', 'inc_border inverse');
$('#repeat_query')
.addDefaultValue(self.consts.search_box_text, $('#query').val())
.change(function(){$('#query').val($(this).val());})
.keyup(function(e){if(e.which==13 || e.isTrigger) search();})
.width('calc(50% - '+$('#sub_button').outerWidth(true)+'px)');
//Init's end
databap.setInitEnd(true);
};
databap.onResize = function()
{
self.setScrollBarSize('maximize');
}
function search()
{
//search words
var searchWords = $.trim($('#query').val());
//check already searched words
if((databap.tmp('searched_words')=='' || databap.tmp('searched_words')!=searchWords) && searchWords.length > 2)
{
//filter requests to not flood the server
if(/*window.tempWords !== undefined && tempWords == searchWords && */!databap.vars.loading)
{
//saving searched words
databap.tmp('searched_words', searchWords);
databap.getInfo
(
'search',
function(asItems)
{
$Container = databap.$main.find('#list_container');
$Container.empty();
$('#search_words').text(searchWords);
$('#search_count').text(asItems.length);
$('#search_multi').toggle(asItems.length>1);
if(asItems.length==0) $Container.append('Aucun r&eacute;sultat trouv&eacute;.');
else
{
for(iRankId in asItems) databap.appendItem(asItems[iRankId], $Container, false);
databap.addSuccessIcon();
}
},
{keywords:searchWords},
'json',
function(){},
true
);
}
else
{
//tempWords = searchWords;
setTimeout(databap.search, 300);
}
}
};
</script>