%@ Language=VBScript %>
<%
dim strSearch, iPage, nbEltsParPage, strNbRes
strNbRes = ""
' récupère les mots recherchés
strSearch = request("ctrlSearch")
' récupère le numéro de la page courante
iPage = request("ipg")
' constante qui définit le nombre de résultat par page
nbEltsParPage = 10
'------------------------------------------------
' fonction qui se charge d'afficher un résultat
'------------------------------------------------
function AffResult(strNum, strTitle, strUrl, strText)
%>
<%
end function
'------------------------------------------------------
' fonction qui se charge d'afficher la pagination
'------------------------------------------------------
function AffPagination(nbElt, nbEltParPage, curPage)
dim noPageSuiv, noPagePrec, nbTotalPages
dim noPageDebut, noPageFin, i
dim nbPageParPage
if curPage = "" then curPage = 1
curPage = curPage + 0
noPageSuiv = curPage + 1
noPagePrec = curPage - 1
nbTotalPages = int(nbElt / nbEltParPage)
if (nbElt mod nbEltParPage) <> 0 then nbTotalPages = nbTotalPages + 1
nbPageParPage = 10
noPageDebut = curPage - (curPage mod nbPageParPage)
if noPageDebut <= 0 then noPageDebut = 1
noPageFin = noPageDebut + nbPageParPage - 1
if noPageFin > nbTotalPages then noPageFin = nbTotalPages
' affiche la pagination si resultat sur plusieurs pages
if nbTotalPages>1 and curPage<=nbTotalPages and curPage>0 then
%>
<%
' affichage du bouton précédent
if noPagePrec>0 then
%>
<%
end if
if nbTotalPages > 1 then
%> Pages : <%
for i=noPageDebut to noPageFin
if curPage = i then
%> <%=i%><%
else
%> <%=i%><%
end if
%> <%
next
end if
' affichage du bouton précédent
if noPageSuiv <= nbTotalPages then
%>
<%
end if
%>
<%
end if
end function
'------------------------------------------------------
' fonction qui se charge d'afficher le message :
' "pas de réponse à la recherche"
'------------------------------------------------------
function AffMessageNoResult()
%>
Pas de réponse trouvée.
<%
end function
'------------------------------------------------------
' fonction qui se charge d'afficher tous les résultats
' de la page sélectionnée (pagination du résultat)
'------------------------------------------------------
function AffResults()
dim i, strTitle, strUrl, strText, iNbRes, iBorneSup
if iPage = "" then iPage = 1
iNbRes = Session("iNbResultats")
iBorneSup = iPage*nbEltsParPage
if iBorneSup > iNbRes then iBorneSup = iNbRes
if iNbRes > 0 then
for i = (iPage-1)*nbEltsParPage+1 to iBorneSup
strTitle = Session("tabResultats")(0, i)
strText = Session("tabResultats")(1, i)
strUrl = Session("tabResultats")(2, i)
call AffResult(i, strTitle, strUrl, strText)
next
call AffPagination(iNbRes, nbEltsParPage, iPage)
else
call AffMessageNoResult()
end if
end function
'------------------------------------------------------
' fonction qui se charge de calculer la recherche
'------------------------------------------------------
function CalculResults()
dim iNbRes
if iPage = "" or Session("iNbResultats") = "" then
call ReadCatalog(strSearch, "uk", "AND")
end if
iNbRes = Session("iNbResultats")
if iNbRes > 0 then
if iNbRes = 1 then
strNbRes = ", (1 réponse trouvée)"
else
strNbRes = ", (" & iNbRes & " réponses trouvées)"
end if
end if
end function
call CalculResults()
%>
Moteur de recherche Boxpock musiques improvisees, contemporaines et electroniques
<%
dim strEMail
' on lit le cookie
strEMail = Request.Cookies("boxpockEMail")
%>