unlock_data added to garbage_manager and unescapeHTML
authorMatteo Nastasi (mop) <nastasi@alternativeoutput.it>
Fri, 7 Mar 2008 08:51:36 +0000 (08:51 +0000)
committerMatteo Nastasi (mop) <nastasi@alternativeoutput.it>
Fri, 7 Mar 2008 08:51:36 +0000 (08:51 +0000)
web/Obj/brisk.phh
web/briskin5/Obj/briskin5.phh
web/commons.js
web/index_rd.php

index 543a57e..add31a7 100644 (file)
@@ -768,6 +768,7 @@ class Room {
            else {
              log_main("ERROR: table ".$table_idx." unrecoverable join");
            }
+           Briskin5::unlock_data($sem);
          } // bri::lock_data
        } //  if ($table_cur->player_n == PLAYERS_N) {
       } //  for ($table_idx = 0 ; $table_idx < TABLES_N ; $table_idx++) {
index 11c7df3..bfaddf4 100644 (file)
@@ -248,12 +248,13 @@ class Briskin5 {
     log_wr("LOCK_DATA ".FTOK_PATH."/table".$table_idx);
     //  echo "LOCK: ".FTOK_PATH."/main";
     //  exit;
-    if (($tok = ftok(FTOK_PATH."/table".$table_idx, "B")) == -1) {
+    // FIXME monitor this step
+    if (($tok = @ftok(FTOK_PATH."/table".$table_idx, "B")) == -1) {
       echo "FTOK FAILED";
       exit;
     }
-    // echo "FTOK ".$tok."<br>";
-    if (($res = sem_get($tok)) == FALSE) {
+    // FIXME monitor this step
+    if (($res = @sem_get($tok)) == FALSE) {
       echo "SEM_GET FAILED";
       exit;
     }
index d286372..08b36a4 100644 (file)
@@ -701,15 +701,15 @@ function set_names(so,ea,ne,nw,we)
 {
 //    alert("EA: "+ea);
     $("name").innerHTML = so; 
-    $("name").title = so
+    $("name").title = unescapeHTML(so)
     $("name_ea").innerHTML = ea;
-    $("name_ea").title = ea;
+    $("name_ea").title = unescapeHTML(ea);
     $("name_ne").innerHTML = ne;
-    $("name_ne").title = ne;
+    $("name_ne").title = unescapeHTML(ne);
     $("name_nw").innerHTML = nw;
-    $("name_nw").title = nw;
+    $("name_nw").title = unescapeHTML(nw);
     $("name_we").innerHTML = we;
-    $("name_we").title = we;
+    $("name_we").title = unescapeHTML(we);
 
     return;
 }
@@ -899,6 +899,36 @@ function room_checkspace(emme,tables,inpe)
     $("esco").innerHTML = "<input class=\"button\" name=\"logout\" type=\"button\" value=\"Esco.\" onclick=\"window.onunload = null; act_logout();\" type=\"button\">";
 }
 
+function  unescapeHTML(cont) {
+    var div = document.createElement('div');
+    var memo = "";
+    var i;
+
+    div.innerHTML = cont;
+    if (div.childNodes[0]) {
+        if (div.childNodes.length > 1) {
+            if (div.childNodes.toArray)
+                alert("si puo");
+            else {
+                var length = div.childNodes.length, results = new Array(length);
+            while (length--)
+                results[length] = div.childNodes[length];
+                
+            for (i=0 ; i<results.length ; i++)
+               memo = memo + results[i].nodeValue;
+            }
+
+            return (memo);
+        }
+        else {
+            return (div.childNodes[0].nodeValue);
+        }
+    }
+    else {
+        return ('');
+    }
+}
+
 function playsound(tag, sound) {
    // g_withflash is a global var
    if (g_withflash) {
index e2516ea..d91afd0 100644 (file)
@@ -219,7 +219,7 @@ function maincheck($sess, $cur_stat, $cur_subst, $cur_step, &$new_stat, &$new_su
            Room::unlock_data($sem);
            ignore_user_abort(FALSE);
            log_load("RESYNC");
-           return (page_sync($user->sess, $to_stat == "table" ? "briskin5/index.php" : "index.php"));
+           return (page_sync($user->sess, ($to_stat == "table" ? "briskin5/index.php" : "index.php"), $user->table, $user->table_token));
          }
          log_rd2("lost history, refresh from scratch");
          $new_step = -1;