X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;ds=inline;f=web%2Findex_wr.php;h=fe7a798f23d61a0da5c55352a91f5dbac100873f;hb=36d1e27085681388ea4989bdd62aad522ddf0dc6;hp=14c7f79fc1573f30f8cb565794326a1a3e8cf2f7;hpb=3834934333bc49c745beaf1e373986d308b66255;p=brisk.git
diff --git a/web/index_wr.php b/web/index_wr.php
index 14c7f79..fe7a798 100644
--- a/web/index_wr.php
+++ b/web/index_wr.php
@@ -79,10 +79,12 @@ $mlang_indwr = array( 'btn_backtotab' => array( 'it' => 'Torna ai tavoli.',
);
-function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
+function index_wr_main(&$room, $remote_addr_full, $get, $post, $cookie)
{
GLOBAL $G_shutdown, $G_black_list, $G_lang, $G_room_help, $G_room_about, $G_room_passwdhowto, $mlang_indwr;
+ $remote_addr = addrtoipv4($remote_addr_full);
+
log_load("index_wr.php");
if (($mesg = gpcs_var('mesg', $get, $post, $cookie)) === FALSE)
@@ -91,7 +93,7 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
if (($sess = gpcs_var('sess', $get, $post, $cookie)) === FALSE)
$sess = "";
-
+
if (DEBUGGING == "local" && $remote_addr != '127.0.0.1') {
echo "Debugging time!";
return (FALSE);
@@ -103,18 +105,18 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
/* if the IP is banned, exit without do nothing */
if (array_search($remote_addr, $G_black_list) !== FALSE) {
- sleep(5);
+ // TODO: find a way to add a nonblocking sleep(5) here
return (FALSE);
}
$is_spawn = FALSE;
-
+
log_wr(0, 'index_wr.php: COMM: '.xcapemesg($mesg));
log_wr('COMM: '.xcapemesg($mesg));
-
+
$curtime = time();
$dt = date("H:i ", $curtime);
-
+
if (($user = $room->get_user($sess, &$idx)) == FALSE) {
$argz = explode('|', xcapemesg($mesg));
@@ -182,7 +184,6 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
else if ($argz[0] == 'whysupport') {
echo show_notify(str_replace("\n", " ", $G_room_whysupport[$G_lang]), 0, $mlang_indwr['btn_close'][$G_lng], 400, 200);
}
-
else {
log_wr("Get User Error");
echo "Get User Error:" + $argz[0];
@@ -191,8 +192,6 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
return TRUE;
}
-
-
$argz = explode('|', xcapemesg($mesg));
log_wr('POSTSPLIT: '.$argz[0]);
@@ -200,9 +199,46 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
// LACC UPDATED
$user->lacc = $curtime;
+ if (array_search($user->ip, $G_black_list) !== FALSE) {
+ // TODO: find a way to add a nonblocking sleep(5) here
+ return (FALSE);
+ }
+
if ($argz[0] == 'ping') {
log_wr("PING RECEIVED");
}
+ else if ($argz[0] == 'prefs') {
+ if ($argz[1] == 'save') {
+ if (!isset($post['prefs'])) {
+ return FALSE;
+ }
+
+ if (($prefs = Client_prefs::from_json($post['prefs'])) == FALSE) {
+ $prefs = Client_prefs::from_user($user);
+ }
+ $prefs->store($user, TRUE);
+ }
+ else { // reset case as default
+ $prefs = Client_prefs::from_user($user);
+ }
+ $user->comm[$user->step % COMM_N] = "gst.st = ".($user->step+1)."; ";
+ $user->comm[$user->step % COMM_N] .= sprintf('prefs_load(\'%s\', true, %s);', json_encode($prefs),
+ 'false');
+ $user->step_inc();
+
+ if ($argz[1] == 'save') {
+ if ($user->stat == 'room' && $user->subst == 'standup') {
+ $room->standup_update($user);
+ }
+ else if ($user->stat == 'room' && $user->subst == 'sitdown') {
+ log_main("chatt_send pre table update");
+ $room->table_update($user);
+ log_main("chatt_send post table update");
+ }
+ }
+ echo "1";
+ return TRUE;
+ }
else if ($argz[0] == 'shutdown') {
log_auth($user->sess, "Shutdown session.");
@@ -244,13 +280,13 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
}
else {
/* MLANG: "E\' occorso un errore durante il salvataggio, riprova o contatta l\'amministratore." */
- $mesg_to_user = sprintf('chatt_sub("%s", [2, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['commerr'][$G_lang]);
+ $mesg_to_user = sprintf('chatt_sub("%s", [2, 0, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['commerr'][$G_lang]);
}
}
else {
/* MLANG: "Per autenticare qualcuno devi a tua volta essere autenticato." */
- $mesg_to_user = sprintf('chatt_sub("%s", [2, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['warrmust'][$G_lang]);
+ $mesg_to_user = sprintf('chatt_sub("%s", [2, 0, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['warrmust'][$G_lang]);
}
if ($mesg_to_user != "") {
@@ -297,19 +333,19 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
}
else {
/* MLANG: "Il database è temporaneamente irraggiungibile, riprova più tardi o contatta l\'amministratore." */
- $mesg_to_user = sprintf('chatt_sub("%s", [2, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['coerrdb'][$G_lang]);
+ $mesg_to_user = sprintf('chatt_sub("%s", [2, 0, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['coerrdb'][$G_lang]);
$user->comm[$user->step % COMM_N] = "gst.st = ".($user->step+1)."; ";
}
}
else {
/* MLANG: "E\' occorso un errore durante il salvataggio, riprova o contatta l\'amministratore." */
- $mesg_to_user = sprintf('chatt_sub("%s", [2, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['commerr'][$G_lang]);
+ $mesg_to_user = sprintf('chatt_sub("%s", [2, 0, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['commerr'][$G_lang]);
}
}
else {
/* MLANG: "Per autenticare qualcuno devi a tua volta essere autenticato." */
- $mesg_to_user = sprintf('chatt_sub("%s", [2, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['mesgmust'][$G_lang]);
+ $mesg_to_user = sprintf('chatt_sub("%s", [2, 0, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['mesgmust'][$G_lang]);
}
if ($mesg_to_user != "") {
@@ -319,9 +355,6 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
$user->step_inc();
}
}
-
-
-
else if ($argz[0] == 'poll') {
GLOBAL $G_with_poll, $G_poll_name;
if (($cli_choose = gpcs_var('cli_choose', $get, $post, $cookie)) === FALSE)
@@ -353,7 +386,7 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
log_wr("INFO:SKIP:argz == poll name: [".$cli_poll_name."] AUTH: ".($user->flags & USER_FLAG_AUTH));
if (($user->flags & USER_FLAG_AUTH) != USER_FLAG_AUTH) {
// MLANG: Per partecipare al sondaggio devi essere autenticato.
- $mesg_to_user = sprintf('chatt_sub("%s", [2, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['pollmust'][$G_lang]);
+ $mesg_to_user = sprintf('chatt_sub("%s", [2, 0, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['pollmust'][$G_lang]);
log_wr("break1");
break;
}
@@ -372,7 +405,7 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
if (($poll_lock = Poll::lock_data(TRUE)) == FALSE) {
/* MLANG: "E\' occorso un errore durante il salvataggio, riprova o contatta l\'amministratore." */
- $mesg_to_user = sprintf('chatt_sub("%s", [2, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['commerr'][$G_lang]);
+ $mesg_to_user = sprintf('chatt_sub("%s", [2, 0, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['commerr'][$G_lang]);
log_wr("break3");
break;
}
@@ -381,7 +414,7 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
$fp = @fopen(LEGAL_PATH."/".$G_poll_name.".txt", 'w+');
if ($fp == FALSE) {
- $mesg_to_user = sprintf('chatt_sub("%s", [2, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['commerr'][$G_lang]);
+ $mesg_to_user = sprintf('chatt_sub("%s", [2, 0, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['commerr'][$G_lang]);
log_wr("break4");
break;
}
@@ -434,7 +467,24 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
echo "$echont";
}
-
+ else if ($argz[0] == 'moderate') {
+ // TODO: add certification check
+ if (1 == 1) {
+ 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);
+ }
+ else {
+ /* disable moderation */
+ $moder_enable = 'false';
+ $user->flags_vlt_set(0, USER_FLAG_MODER);
+ }
+ $user->comm[$user->step % COMM_N] = sprintf("gst.st = %d; moderate(%s);",
+ $user->step+1, $moder_enable);
+ $user->step_inc();
+ }
+ }
/******************
* *
* STAT: room *
@@ -537,13 +587,13 @@ function index_wr_main(&$room, $remote_addr, $get, $post, $cookie)
/* MLANG: "Il server sta per essere riavviato, non possono avere inizio nuove partite.", "Il tavolo a cui volevi sederti richiede autentifica.", "Il tavolo si è appena liberato, ci si potrà sedere tra %d secondi." */
if ($G_shutdown) {
- $user->comm[$user->step % COMM_N] .= sprintf('chatt_sub("%s", [2, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['shutmsg'][$G_lang]);
+ $user->comm[$user->step % COMM_N] .= sprintf('chatt_sub("%s", [2, 0, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['shutmsg'][$G_lang]);
}
else if ($table->auth_only && (($user->flags & USER_FLAG_AUTH) == 0)) {
- $user->comm[$user->step % COMM_N] .= sprintf('chatt_sub("%s", [2, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['mustauth'][$G_lang]);
+ $user->comm[$user->step % COMM_N] .= sprintf('chatt_sub("%s", [2, 0, "%s"],"%s");', $dt, NICKSERV, $mlang_indwr['mustauth'][$G_lang]);
}
else {
- $user->comm[$user->step % COMM_N] .= sprintf('chatt_sub("%s", [2, "%s"],"%s%d%s");', $dt, NICKSERV, $mlang_indwr['tabwait_a'][$G_lang], $table->wakeup_time - $curtime, $mlang_indwr['tabwait_b'][$G_lang]);
+ $user->comm[$user->step % COMM_N] .= sprintf('chatt_sub("%s", [2, 0, "%s"],"%s%d%s");', $dt, NICKSERV, $mlang_indwr['tabwait_a'][$G_lang], $table->wakeup_time - $curtime, $mlang_indwr['tabwait_b'][$G_lang]);
}
$user->step_inc();
return TRUE;