ADD Amélioration de l'update des films déjà en BD
[pompage.git] / js / yopyop.js
index 4b48c8a..7ce2340 100644 (file)
@@ -54,7 +54,6 @@ function detailFilm(id)
 // la date de la dernière recherche\r
 var derniereRecherche = new Date();\r
 derniereRecherche.setMinutes(derniereRecherche.getMinutes() - 1);\r
-var motifDerniereRecherche = ""\r
 \r
 var nbPending = 0\r
 \r
@@ -63,38 +62,39 @@ var dernierRandom = 0
 /**\r
   * Permet de mettr en queue les requêtes.\r
   */\r
-function doRecherchePending()\r
+function doRecherchePending(r)\r
 {\r
    nbPending -= 1;\r
    if (nbPending == 0) // si c'est la dernière requête en attente on l'effectue\r
-      doRecherche();\r
+      r == null ? doRecherche() : doRecherche(r);\r
+}\r
+\r
+function doRecherchePendingRandom()\r
+{\r
+   doRecherchePending(true)\r
 }\r
 \r
 /**\r
   * Effectue une recherche, n'affiche que les films qui contiennent le motif recherché
   * Recherche dans le titre, le realisateur, les acteurs, les genres et les pays en fonction des checkbox respectives.\r
-  * f : si pas null alors la recherche est quand même effectué même si le moif est le même que la précédente recherche\r
   * r : si pas null alors n'affiche qu'un film au hasard dans la sélection\r
   */\r
-function doRecherche(f, r)\r
-{\r
+function doRecherche(r)\r
+{ \r
    // le motif à chercher\r
    var motif = document.getElementById("recherche").value\r
    motif = trim(motif)\r
    \r
-   if (f == null && motif == motifDerniereRecherche) return;\r
-      \r
    // empèche de faire deux recherches successive en moins de 800ms\r
    var now = new Date();\r
-   if (now.getTime() < derniereRecherche.getTime() + 800)\r
+   if (now.getTime() - derniereRecherche.getTime() < 800)\r
    {\r
-      // si une recherche à était demandé mais n'a pu aboutir alors on la refait dans certain temps\r
-      setTimeout("doRecherchePending()", 810 - (now.getTime() - derniereRecherche.getTime()));\r
       nbPending += 1\r
+      // si une recherche à était demandé mais n'a pu aboutir alors on la refait dans certain temps\r
+      setTimeout(r == true ? "doRecherchePendingRandom()" : "doRecherchePending()", 900 - (now.getTime() - derniereRecherche.getTime()));\r
       return;\r
    }\r
    \r
-   motifDerniereRecherche = motif;\r
    derniereRecherche = now;\r
       \r
    //dump ("recherche : " + motif + "\r\n");\r
@@ -143,7 +143,7 @@ function doRecherche(f, r)
          lignes[i+1].style.display = "none"\r
       }\r
    }\r
-   \r
+\r
    if (r != null && nbFilmAffiche > 1)\r
    {\r
       var random\r
@@ -191,7 +191,7 @@ function viderRecherche()
    document.getElementById("checkRechercheActeurs").checked = true\r
    document.getElementById("checkRecherchePays").checked = true\r
    document.getElementById("recherche").value = ""\r
-   doRecherche(true)\r
+   doRecherche()\r
 }\r
 \r
 /**\r
@@ -200,15 +200,16 @@ function viderRecherche()
 function toutOuvrir()\r
 {\r
    var lignes = document.getElementById("liste").childNodes\r
-   var ouvrir = true\r
+   var ouvrir = null\r
    for(var i = 0; i < lignes.length; i += 2)\r
    {      \r
       var tableDetails = lignes[i+1].firstChild.firstChild.childNodes\r
       \r
-      if (lignes[i+1].style.display = "table-row")\r
+      // si le film est affiché\r
+      if (lignes[i].style.display == "table-row")\r
       {\r
-         if (i == 0 && lignes[i+1].firstChild.firstChild.style.display == "table")\r
-             ouvrir = false\r
+         if (ouvrir == null)\r
+            ouvrir = lignes[i+1].firstChild.firstChild.style.display == "none"\r
          lignes[i+1].firstChild.firstChild.style.display = ouvrir ? "table" : "none"\r
       }\r
    }\r
@@ -219,7 +220,7 @@ function toutOuvrir()
   */\r
 function tirerUnFilmAuHasard()\r
 {\r
-   doRecherche(true, true);\r
+   doRecherche(true);\r
 }\r
 \r
 /**\r