background-color: #fafafa;
background-repeat: no-repeat;
background-position: center center;
- margin:0px;
-
+ margin: 0px;
+ height: 800px;
padding: 0px;
align: center;
<?php echo $mlang_room['passwarn'][$G_lang];?><br><br>
- <button onclick="$('apprentice_div').style.display = 'inline-block';">Vuoi ottenere un accesso da apprendista ?</button><br><br>
+ <button onclick="$('apprentice_div').style.display = ($('apprentice_div').style.display == 'none' ? 'inline-block' : 'none');">Vuoi ottenere un accesso da apprendista ?</button><br><br>
<div id="apprentice_div" style="display: none; background-color: #ffd780; border: 1px solid #ffae00; padding: 8px;">
<br>
Inserisci il tuo nickname e il tuo indirizzo e-mail.<br>
- Il tuo nickname non può essere più lungo di 12 caratteri, <br>deve essere composto soltanto da lettere non accentate e numeri,<br>senza ripetere lo stesso carattere per più di 3 volte consecutive.<br><br>
+ Il tuo nickname non può essere più lungo di 12 caratteri,<br>deve essere composto soltanto da lettere non accentate e numeri,<br>senza ripetere lo stesso carattere per più di 3 volte consecutive.<br><br>
<form accept-charset="utf-8" method="post" action="" onsubmit="return j_new_apprentice(this);">
- <input type="hidden" name="new_apprentice" value="666">
+ <input type="hidden" name="realsub" value="666">
<table class="login">
<tr><td>nickname:</td>
<td><input id="nameid" class="input_text" name="cli_name" type="text" size="24" maxlength="12" value=""></td></tr>
<tr><td>e-mail:</td>
<td><input id="emailid" class="input_text" name="cli_email" type="text" size="24" maxlength="512" value=""></td></tr>
- <tr><td colspan="2"><input id="sub" value="<?php echo $mlang_room['btn_send'][$G_lang];?>" type="submit" class="button"></td></tr>
+ <tr><td colspan="2"><table style="margin: auto;"><tr><td><input id="send" onclick="submit_click(this);" value="<?php echo $mlang_room['btn_prefs_send'][$G_lang];?>" type="submit" class="button"></td>
+ <td><input id="close" onclick="submit_click(this);" value="<?php echo $mlang_room['btn_prefs_close'][$G_lang];?>" type="submit" class="button"></td></tr></table></td></tr>
</table>
</form></div>
<br><br>
<?php echo $mlang_room['browwarn'][$G_lang];?><br>
</div>
- <br><br><br><br>
- <br><br><br><br>
- <br><br><br><br>
- <br><br><br><br>
- <br><br><br><br>
<div id="imgct"></div>
<div id="logz"></div>
<tr><td colspan="2" style="text-align: center;">
<!-- MLANG: Garantisci per un tuo conoscente: -->
<input id="subid" name="sub" value=
-"<?php echo $mlang_room['btn_send'][$G_lang]; ?>"
+"<?php echo $mlang_room['btn_prefs_send'][$G_lang]; ?>"
type="submit" onclick="this.form.elements['realsub'].value = 'invia';" class="button">
<!-- MLANG: Garantisci per un tuo conoscente: -->
<input id="cloid" name="clo" value=
-"<?php echo $mlang_room['btn_close'][$G_lang]; ?>"
+"<?php echo $mlang_room['btn_prefs_close'][$G_lang]; ?>"
type="submit" class="button" onclick="this.form.elements['realsub'].value = 'chiudi';"></td></tr>
</table>
</form>
<tr><td><img title="messaggio" class="nobo" src="img/mesgtoadm_mesg<?php echo $G_lng;?>.png"></td>
<td><textarea id="mesgid" class="input_text" name="mesg" cols="40" rows="8" wrap="soft"></textarea></td></tr>
<tr><td colspan="2" style="text-align: center;">
- <input id="subid" name="sub" value="<?php echo $mlang_room['btn_send'][$G_lang];?>" type="submit" onclick="this.form.elements['realsub'].value = 'invia';" class="button">
-<input id="cloid" name="clo" value="<?php echo $mlang_room['btn_close'][$G_lang];?>" type="submit" class="button" onclick="this.form.elements['realsub'].value = 'chiudi';"></td></tr>
+ <input id="subid" name="sub" value="<?php echo $mlang_room['btn_prefs_send'][$G_lang];?>" type="submit" onclick="submit_click(this);" class="button">
+<input id="cloid" name="clo" value="<?php echo $mlang_room['btn_prefs_close'][$G_lang];?>" type="submit" class="button" onclick="submit_click(this);"></td></tr>
</table>
</form>
</div>
/*
* brisk - index_wr.php
*
- * Copyright (C) 2006-2014 Matteo Nastasi
+ * Copyright (C) 2006-2015 Matteo Nastasi
* mailto: nastasi@alternativeoutput.it
* matteo.nastasi@milug.org
* web: http://www.alternativeoutput.it
'en' => '<br>You or someone with your same IP address is standing up from a table without the permission of the other players <br><br>You will wait '),
'badsit_b' => array( 'it' => ' prima di poterti sedere nuovamente.<br><br>Se non sei stato tu ad alzarti e possiedi un login con password, autenticandoti con quello, potrai accedere.',
'en' => ' before you can sit down again. If you don\'t leave the table and you have a login with a password, authenticating with this one you will access'),
+ 'nu_netguard' => array('it' => "Di recente è già arrivata una richiesta da un indirizzo IP simile al tuo, riprova tra qualche tempo.",
+ 'en' => "EN di recente è già arrivata una richiesta da un indirizzo IP simile al tuo, riprova tra qualche tempo."),
+ 'nu_unkerr' => array('it' => "Si è verificato un errore inatteso, contattare l'amministratore.",
+ 'en' => "EN Si è verificato un errore inatteso, contattare l'amministratore."),
'nu_loginau' => array('it' => "login già in uso",
'en' => "login already in use"),
'nu_emailau' => array('it' => "email già utilizzata",
log_load("index_wr.php");
$remote_addr = addrtoipv4($remote_addr_full);
+ $remote_ip = ip2int($remote_addr);
if (($mesg = gpcs_var('mesg', $get, $post, $cookie)) === FALSE)
unset($mesg);
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 if ($argz[0] == 'apprendice') {
+ else if ($argz[0] == 'apprentice') {
if (($cli_name = gpcs_var('cli_name', $get, $post, $cookie)) === FALSE)
$cli_name = "";
if (($bdb = BriskDB::create()) == FALSE)
break;
- // FIXME: CHECK IP AS PREVIOUS REQUIRER
+ // check IP address as previous requirer
+ if ($bdb->selfreg_check($remote_ip) == FALSE) {
+ $mesg_to_user = $mlang_indwr['nu_netguard'][$G_lang];
+ break;
+ }
$cli_name = urldecode($cli_name);
$cli_email = urldecode($cli_email);
$mail_item = new MailDBItem($mail_code, $usr_obj->code, MAIL_TYP_CHECK,
$curtime, $subj, $body_txt, $body_htm, $hash);
- if (brisk_mail($cli_email, $subj, $body_txt, $body_htm) == FALSE) {
- // mail error
- fprintf(STDERR, "ERROR: mail send FAILED\n");
- break;
- }
-
// save the mail
if ($mail_item->store($bdb) == FALSE) {
// store mail error
break;
}
- echo "1";
+ // check IP address as previous requirer
+ if ($bdb->selfreg_set($remote_ip) == FALSE) {
+ $mesg_to_user = $mlang_indwr['nu_unkerr'][$G_lang];
+ break;
+ }
+
+ if (brisk_mail($cli_email, $subj, $body_txt, $body_htm) == FALSE) {
+ // mail error
+ fprintf(STDERR, "ERROR: mail send FAILED\n");
+ break;
+ }
+
$bdb->transaction('COMMIT');
+ fprintf(STDERR, "REMOTE: %d\n", $remote_ip);
+ echo "1";
return TRUE;
} while(FALSE);
$bdb->transaction('ROLLBACK');
}
$bdb->transaction('COMMIT');
- singlemsg("Verifica della e-mail andata a buon fine.", "Verifica della e-mail andata a buon fine.");
+ singlemsg("Verifica della e-mail andata a buon fine.", "Verifica della e-mail andata a buon fine.<br>Riceverai a breve una email con la tua nuova password.<br>Benvenuto!");
$errcode = 0;
} while (FALSE);
if ($errcode) {
* brisk - room.css
*
* Copyright (C) 2006-2012 Matteo Nastasi
- * mailto: nastasi@alternativeoutput.it
+ * mailto: nastasi@alternativeoutput.it
* matteo.nastasi@milug.org
* web: http://www.alternativeoutput.it
*
body.* {
- margin:0px;
+ margin: 0px;
padding: 0px;
}
}
div.proflash {
- border: 1px solid gray;
+ border: 1px solid gray;
background-color: RGB(246,246,246);
text-align: center;
align: center;
top: -13px;
align: center:
text-align: center;
- padding:2px;
+ padding:2px;
clear:left;
}
left: 6px;
top: 6px;
z-index: 20;
- background-color: white;
+ background-color: white;
}
table.floaty {
table.placings td
{
- border: 1px solid gray;
- padding: auto;
+ border: 1px solid gray;
+ padding: auto;
margin: auto;
vertical-align: top;
text-align: center;
div.room_div {
- position: relative;
+ position: relative;
}
-div.table_act {
+div.table_act {
position: absolute;
align: right;
text-align: right;
div.room_standup {
- position: absolute;
+ position: absolute;
vertical-align: "top";
top: 26px;
width: 100%;
}
table.room_standup {
- position: relative;
+ position: relative;
width: 100%;
border: 1px solid gray;
border-spacing: 0px;
table.room_standup td {
position: relative;
- border: 0px none gray;
+ border: 0px none gray;
vertical-align: top;
align: left;
}
-table.login {
+table.login {
margin: auto;
border: 1px solid gray;
margin-top: 8px;
background-color: #f0f0f0
}
-table.login td {
+table.login td {
padding: 4px;
vertical-align: middle;
}
table.table_standup {
border-spacing: 0px;
- width: 100%;
+ width: 100%;
margin: 0px;
padding:0px;
}
text-align: center;
}
-.proxhr {
+.proxhr {
position: relative;
top: 10px;
width: 100%;
text-align: center;
}
-.webstart_hilite {
- background: #ffd780;
+.webstart_hilite {
+ background: #ffd780;
border: 1px solid #ffae00;
- padding: 6px;
+ padding: 6px;
text-align: center;
}
visibility: hidden;
border: 1px solid gray;
text-align: left;
- width: 100px;
+ width: 100px;
padding: 8px;
}
visibility: hidden;
}
-.room_standup_orig {
+.room_standup_orig {
position: absolute;
}
-td.tickbut {
- visibility: hidden;
+td.tickbut {
+ visibility: hidden;
width: 0px;
text-align: left;
vertical-align: top;
padding: 0px;
}
-img.tickbut {
+img.tickbut {
border: 0px solid black;
cursor: pointer;
margin-top:4px;
}
-function j_new_apprendice(form)
+function j_new_apprentice(form)
{
var ret = { ret: '' };
var token;
do {
+ if (form.elements['realsub'].value == "close") {
+ $('apprentice_div').style.display = 'none';
+ break;
+ }
+
if (j_check_login(form.elements['nameid'].value, ret) == false ||
j_check_email(form.elements['emailid'].value, ret) == false) {
var no;
do {
- if (form.elements['realsub'].value == "chiudi") {
+ if (form.elements['realsub'].value == "cloid") {
$('mesgtoadmbox').style.visibility = "hidden";
break;
}
d'ora in poi potrai utilizzare l' utente 'mopz' e la password 'ienxedsiyndo'.
Benvenuto e buone partite, mop.";
- $body_htm_full = "Ciao, sono l' amministratore del sito di Brisk.</br></br>
-La verifica del tuo indirizzo di posta elettronica e del tuo nickname è andata a buon fine, per accedere al sito d'ora in poi potrai usare l' utente 'mopz' e la password 'ienxedsiyndo'.</br>
-Benvenuto e buone partite, mop.</br>";
+ $body_htm_full = "Ciao, sono l' amministratore del sito di Brisk.<br><br>
+La verifica del tuo indirizzo di posta elettronica e del tuo nickname è andata a buon fine, per accedere al sito d'ora in poi potrai usare l' utente 'mopz' e la password 'ienxedsiyndo'.<br>
+Benvenuto e buone partite, mop.<br>";
$html = '<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>mysòóbject test</title></head><body><b>my Bòóody</b><a href="http://www.alternativeoutput.it/">Clicca quì</a></body></html>';
d'ora in poi potrai utilizzare l' utente 'mopz' e la password 'ienxedsiyndo'.
Benvenuto e buone partite, mop.";
- $body_htm = "Ciao, sono l' amministratore del sito di Brisk.</br></br>
-La verifica del tuo indirizzo di posta elettronica e del tuo nickname è andata a buon fine, per accedere al sito d'ora in poi potrai usare l' utente 'mopz' e la password 'ienxedsiyndo'.</br>
-Benvenuto e buone partite, mop.</br>";
+ $body_htm = "Ciao, sono l' amministratore del sito di Brisk.<br><br>
+La verifica del tuo indirizzo di posta elettronica e del tuo nickname è andata a buon fine, per accedere al sito d'ora in poi potrai usare l' utente 'mopz' e la password 'ienxedsiyndo'.<br>
+Benvenuto e buone partite, mop.<br>";
$body_htm_full = sprintf("<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"><title>%s</title></head><body>%s</body></html>",
$subject, $body_htm);
echo "ERROR";
}
-?>
\ No newline at end of file
+?>
/*
* brisk - test_db.php
*
- * Copyright (C) 2014 Matteo Nastasi
+ * Copyright (C) 2014-2015 Matteo Nastasi
* mailto: nastasi@alternativeoutput.it
* matteo.nastasi@milug.org
* web: http://www.alternativeoutput.it
succ("CREATE TABLE test_ip");
foreach ($arr_ip as $i) {
- $v = ip2int($i);
+ $v = ip2four($i);
$msg = sprintf(" INSERT INTO test_ip [%s] val: [%d (%x)]", $i, $v, $v);
if ($bdb->query(sprintf("INSERT INTO test_ip (ip, atime) VALUES (%d, '1999-01-08 04:05:06');", $v)) == FALSE) {
}
succ($msg);
}
+ printf("<br>\n");
+ foreach ($arr_ip as $i) {
+ $cmp = int2four(ip2int($i) & 0xffffff00);
+ $msk = int2four(0xffffff00);
+ $cmp_que = sprintf("SELECT * FROM test_ip WHERE (ip & %d = %d);", $msk, $cmp);
+ if (($cmp_pg = $bdb->query($cmp_que)) == FALSE) {
+ printf("%s<br>\n", $bdb->last_error());
+ fail("SELECT * FROM test_ip");
+ break;
+ }
+ succ($cmp_que);
+
+ for ($r = 0 ; $r < pg_numrows($cmp_pg) ; $r++) {
+ $cmp_obj = pg_fetch_object($cmp_pg, $r);
+
+ if ($ip_obj->ip & $msk != $cmp) {
+ fail(sprintf(" Expected: %s, retrieved: %s", int2ip($cmp), int2ip($ip_obj->ip & $msk)));
+ }
+ else {
+ succ(sprintf(" Expected: %s (%s)", int2ip($cmp), int2ip($cmp_obj->ip)));
+ }
+ // printf("RET IP: %d IP: %s<br>\n", $ip_obj->ip, $v));
+ }
+ }
+ printf("<br>\n");
if (($ip_pg = $bdb->query(sprintf("SELECT * FROM test_ip ORDER BY code;"))) == FALSE) {
printf("%s<br>\n", $bdb->last_error());