/* * Copyright (c) 2014 * * This file is licensed under the Affero General Public License version 3 * or later. * * See the COPYING-README file. * */ //translations for result type ids, can be extended by apps OC.search.resultTypes={ file: t('core','File'), folder: t('core','Folder'), image: t('core','Image'), audio: t('core','Audio') }; OC.search.catagorizeResults=function(results){ var types={}; for(var i=0;i2){ $('#searchbox').val(''); if (FileList && typeof FileList.unfilter === 'function') { //TODO add hook system FileList.unfilter(); } }; if ($('#searchbox').val().length === 0) { if (FileList && typeof FileList.unfilter === 'function') { //TODO add hook system FileList.unfilter(); } } }; OC.search.showResults=function(results){ if(results.length === 0){ return; } if(!OC.search.showResults.loaded){ var parent=$('
'); $('body').append(parent); parent.load(OC.filePath('search','templates','part.results.php'),function(){ OC.search.showResults.loaded=true; $('#searchresults').click(function(event){ OC.search.hide(); event.stopPropagation(); }); $(document).click(function(event){ OC.search.hide(); if (FileList && typeof FileList.unfilter === 'function') { //TODO add hook system FileList.unfilter(); } }); OC.search.lastResults=results; OC.search.showResults(results); }); }else{ var types=OC.search.catagorizeResults(results); $('#searchresults').show(); $('#searchresults tr.result').remove(); var index=0; for(var typeid in types){ var type=types[typeid]; if(type.length>0){ for(var i=0;i= 0) ... * }; */ if(OC.search.customResults[typeid]){ OC.search.customResults[typeid](row, type[i]); } $('#searchresults tbody').append(row); } } } $('#searchresults').on('click', 'result', function () { if ($(this).data('type') === 'Files') { //FIXME use ajax to navigate to folder & highlight file } }); } }; OC.search.showResults.loaded=false; OC.search.renderCurrent=function(){ if($('#searchresults tr.result')[OC.search.currentResult]){ var result=$('#searchresults tr.result')[OC.search.currentResult]; $('#searchresults tr.result').removeClass('current'); $(result).addClass('current'); } };