From 46b0825543d5a3ed5088ef7d9213f639a9dd8a63 Mon Sep 17 00:00:00 2001 From: "Matteo Nastasi (mop)" Date: Tue, 28 May 2013 10:02:10 +0200 Subject: [PATCH] managed close moderate window event and the moderate message argument --- web/commons.js | 14 ++++++++------ web/index_wr.php | 2 +- web/moderation.php | 6 ++++++ 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/web/commons.js b/web/commons.js index f1bab59..1dcb266 100644 --- a/web/commons.js +++ b/web/commons.js @@ -491,6 +491,7 @@ Moderate.prototype = { this.tout = 0; } if (this.win) { + this.win.onbeforeunload = null; this.win.close(); this.win = null; } @@ -531,9 +532,14 @@ Moderate.prototype = { post_onload: function() { $(this.win, 'mainbody').innerHTML = "GHE SEMU"; + this.win.anc = this; this.enabled = true; }, + onunload: function() { + act_moderate(); + }, + is_enabled: function() { return (this.enabled); }// , @@ -541,7 +547,7 @@ Moderate.prototype = { //add: function(item) { // this.item.append(new ModerateItem(item)); //} - // send_mesg("moderate|"+(enable ? "true" | "false")); + // send_mesg("moderate|"+(enable ? "false" | "true")); } @@ -554,15 +560,11 @@ var g_moder = new Moderate(); function act_moderate() { - send_mesg("moderate|"+(g_moder.is_enabled() ? "true" : "false")); + send_mesg("moderate|"+(g_moder.is_enabled() ? "false" : "true")); } -// send_mesg("moderate|false"); -// return false; -// } - // // build table with js // g_moder.item = new Array; diff --git a/web/index_wr.php b/web/index_wr.php index f47071c..fe7a798 100644 --- a/web/index_wr.php +++ b/web/index_wr.php @@ -470,7 +470,7 @@ function index_wr_main(&$room, $remote_addr_full, $get, $post, $cookie) else if ($argz[0] == 'moderate') { // TODO: add certification check if (1 == 1) { - if ($user->flags_vlt_get(USER_FLAG_MODER) == 0) { + if ($user->flags_vlt_get(USER_FLAG_MODER) == 0 && $argz[1] == 'true') { /* enable moderation */ $moder_enable = 'true'; $user->flags_vlt_set(USER_FLAG_MODER, USER_FLAG_MODER); diff --git a/web/moderation.php b/web/moderation.php index 482d4ea..ceb06f9 100644 --- a/web/moderation.php +++ b/web/moderation.php @@ -6,6 +6,12 @@ window.is_loaded = false; window.onload = function() { window.is_loaded = true; } + +window.onbeforeunload = function() { + if (typeof(window.anc) != 'undefined') { + window.anc.onunload(); + } +} // --> -- 2.17.1