From d9bcf68e395d6156645a7974b1a992aa6e6c00aa Mon Sep 17 00:00:00 2001 From: Marius Cramer <m.cramer@pixcept.de> Date: Mon, 14 Oct 2013 08:57:25 -0400 Subject: [PATCH] Added missing empty directories from svn import --- interface/web/js/jquery.ispconfigsearch.js | 39 ++++++++++++++++++++++++++++++--------- 1 files changed, 30 insertions(+), 9 deletions(-) diff --git a/interface/web/js/jquery.ispconfigsearch.js b/interface/web/js/jquery.ispconfigsearch.js index 211dcd7..7a8115c 100644 --- a/interface/web/js/jquery.ispconfigsearch.js +++ b/interface/web/js/jquery.ispconfigsearch.js @@ -1,5 +1,5 @@ /* -Copyright (c) 2012, ISPConfig UG +Copyright (c) 2012, ISPConfig UG (haftungsbeschränkt) All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -33,11 +33,15 @@ timeout: 500, minChars: 2, resultBox: '-resultbox', + resultBoxPosition: 's', // n = north, e = east, s = south, w = west cssPrefix: 'gs-', fillSearchField: false, fillSearchFieldWith: 'title', - resultsText: '$ of % results', + ResultsTextPrefix: '', + resultsLimit: '$ of % results', noResultsText: 'No results.', + noResultsLimit: '0 results', + searchFieldWatermark: 'Search', displayEmptyCategories: false, runJS: true }; @@ -48,6 +52,7 @@ settings.resultBox = $(this).attr('id')+settings.resultBox; $(this).attr('autocomplete', 'off'); + if($(this).val() == '') $(this).val(settings.searchFieldWatermark); $(this).wrap('<div class="'+settings.cssPrefix+'container" />'); $(this).after('<ul id="'+settings.resultBox+'" class="'+settings.cssPrefix+'resultbox" style="display:none;"></ul>'); var searchField = $(this); @@ -60,7 +65,7 @@ // query value var q = searchField.val(); - if (settings.minChars > q.length || q == ''){ + if (settings.minChars > q.length || (q == '' && settings.minChars > 0)){ resultBox.fadeOut(); resetTimer(timeout); } else { @@ -91,7 +96,7 @@ } if (!resultsFound){ - output += '<li class="'+settings.cssPrefix+'cheader"><p class="'+settings.cssPrefix+'cheader-title">'+settings.noResultsText+'</p><p class="'+settings.cssPrefix+'cheader-limit">0 results</p></li>'; + output += '<li class="'+settings.cssPrefix+'cheader"><p class="'+settings.cssPrefix+'cheader-title">'+(settings.ResultsTextPrefix == '' ? '' : settings.ResultsTextPrefix+': ')+settings.noResultsText+'</p><p class="'+settings.cssPrefix+'cheader-limit">'+settings.noResultsLimit+'</p></li>'; } else { $.each(data, function(i, category){ @@ -100,7 +105,7 @@ var limit = category['cheader']['limit']; var cnt = 0; - output += '<li class="'+settings.cssPrefix+'cheader"><p class="'+settings.cssPrefix+'cheader-title">'+category['cheader']['title']+'</p><p class="'+settings.cssPrefix+'cheader-limit">'+settings.resultsText.replace("%", category['cheader']['total']).replace("$", (category['cheader']['limit'] < category['cdata'].length ? category['cheader']['limit'] : category['cdata'].length))+'</p></li>'; + output += '<li class="'+settings.cssPrefix+'cheader"><p class="'+settings.cssPrefix+'cheader-title">'+(settings.ResultsTextPrefix == '' ? '' : settings.ResultsTextPrefix+': ')+category['cheader']['title']+'</p><p class="'+settings.cssPrefix+'cheader-limit">'+settings.resultsLimit.replace("%", category['cheader']['total']).replace("$", (category['cheader']['limit'] < category['cdata'].length ? category['cheader']['limit'] : category['cdata'].length))+'</p></li>'; var fillSearchFieldCode = (settings.fillSearchField) ? 'document.getElementById(\''+searchField.attr('id')+'\').value = \'%\';' : ''; //var fillSearchFieldCode = 'document.getElementById(\''+searchField.attr('id')+'\').value = \'%\';'; @@ -111,12 +116,10 @@ var link = '<a href="'+((item['url'] != undefined) ? item['url'] : 'javascript:void(0);')+'" '+((item['onclick'] != undefined) ? ' onclick="'+fillSearchFieldCode.replace("%", item[settings.fillSearchFieldWith])+(settings.runJS ? item['onclick'] : '')+'"' : '')+((item['target'] != undefined) ? ' target="'+item['target']+'"' : '')+'>'; output += '<li class="'+settings.cssPrefix+'cdata">'+link+"\n"; - output += '<table border="0" cellspacing="0" cellpadding="0" width="100%"><tr><td>'; output += '<p>'; - output += (item['title'] != undefined) ? '<span class="'+settings.cssPrefix+'cdata-title">'+item['title']+"</span><br />\n" : ''; + output += (item['title'] != undefined) ? '<span class="'+settings.cssPrefix+'cdata-title">'+item['title']+"</span>\n": ''; output += (item['description'] != undefined) ? ''+item['description']+''+"\n" : ''; output += '</p>'+"\n"; - output += '</td></tr></table>'; output += '</a></li>'+"\n"; } cnt++; @@ -125,7 +128,19 @@ }); } - resultBox.html(output).css({'position' : 'absolute', 'top' : searchField.position().top+searchField.outerHeight(), 'right' : '0'}).fadeIn(); + //resultBox.html(output).css({'position' : 'absolute', 'top' : searchField.position().top+searchField.outerHeight(), 'right' : '0'}).fadeIn(); + if(settings.resultBoxPosition == 'n'){ + resultBox.html(output).css({'position' : 'absolute', 'top' : searchField.position().top-resultBox.outerHeight(), 'left' : searchField.position().left+searchField.outerWidth()-resultBox.outerWidth()}).fadeIn(); + } + if(settings.resultBoxPosition == 'e'){ + resultBox.html(output).css({'position' : 'absolute', 'top' : searchField.position().top, 'left' : searchField.position().left+searchField.outerWidth()}).fadeIn(); + } + if(settings.resultBoxPosition == 's'){ + resultBox.html(output).css({'position' : 'absolute', 'top' : searchField.position().top+searchField.outerHeight(), 'left' : searchField.position().left+searchField.outerWidth()-resultBox.outerWidth()}).fadeIn(); + } + if(settings.resultBoxPosition == 'w'){ + resultBox.html(output).css({'position' : 'absolute', 'top' : searchField.position().top, 'left' : searchField.position().left-resultBox.outerWidth()}).fadeIn(); + } searchField.removeClass(settings.cssPrefix+'loading'); } @@ -137,11 +152,17 @@ searchField.blur(function(){ resultBox.fadeOut(); + if (searchField.val() == ''){ + searchField.val(settings.searchFieldWatermark); + } }); searchField.focus(function(){ if (searchField.val() == previousQ && searchField.val() != ''){ resultBox.fadeIn(); + } else if(searchField.val() == settings.searchFieldWatermark){ + searchField.val(''); + if(settings.minChars == 0) searchField.trigger('keyup'); } else if (searchField.val() != ''){ searchField.trigger('keyup'); } -- Gitblit v1.9.1