Postado Agosto 27, 2013 11 anos Galera, estou com um problema, meu otserv e website está funcionando tudo ok, mas fui verificar se o sistema de Lost Account estava funcionando e me deparei com erros nele... Ele não envia email para recuperação de senha, e nem recuperada a account quando usa a recovery key, podem me ajudar por favor? obrigado rep+ ai pra quem ajudar!
Postado Agosto 27, 2013 11 anos Olá amigo, poste seu 'lostaccount.php' e seu 'config/config.php', para eu tentar te ajudar ... Abraço! STYLLER OT 2022
Postado Agosto 28, 2013 11 anos Autor lostaccount.php <?PHP if($config['site']['send_emails']) { if($action == '') { $main_content .= ' <b>Welcome to the Lost Account Interface!</b><br /><br /> <img src="images/bullet.gif" /> If you have lost access to your account, this interface can help you. Of course, you need to prove that your claim to the account is justified.<br /> <br /><img src="images/bullet.gif" /> Enter the requested data and follow the instructions carefully. <br /><img src="images/bullet.gif" /> Please understand there is no way to get access to your lost account if the interface cannot help you. <br /><img src="images/bullet.gif" /> Two further options to change account data are available if you have a registered account. <br /><br /> <FORM ACTION="?subtopic=lostaccount&action=step1" METHOD=post> <INPUT TYPE=hidden NAME="character" VALUE=""> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Please enter your character name</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> <INPUT TYPE=text NAME="nick" VALUE="" SIZE="40"><br /> </TD></TR> </TABLE> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>What do you want?</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> <INPUT TYPE=radio NAME="action_type" VALUE="email"> Send me new password and my account name to account e-mail adress.<br /> <INPUT TYPE=radio NAME="action_type" VALUE="reckey"> I got <b>recovery key</b> and want set new password and e-mail adress to my account.<br /> </TD></TR> </TABLE> <br /> <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></center> </TD></TR></FORM></TABLE></TABLE>'; } elseif($action == 'step1' && $_REQUEST['action_type'] == '') $main_content .= '<div class="TableContainer"> <div class="CaptionContainer"> <div class="CaptionInnerContainer"> <span class="CaptionEdgeLeftTop" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionEdgeRightTop" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionBorderTop" style="background-image: url('.$layout_name.'/images/content/table-headline-border.gif);"></span> <span class="CaptionVerticalLeft" style="background-image: url('.$layout_name.'/images/content/box-frame-vertical.gif);"></span> <div class="Text">Error</div> <span class="CaptionVerticalRight" style="background-image: url('.$layout_name.'/images/content/box-frame-vertical.gif);"></span> <span class="CaptionBorderBottom" style="background-image: url('.$layout_name.'/images/content/table-headline-border.gif);"></span> <span class="CaptionEdgeLeftBottom" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionEdgeRightBottom" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> </div> </div> <table class="Table1" cellpadding="0" cellspacing="0"> <tbody><tr> <td> <div class="InnerTableContainer"> <table style="width: 100%;"> <tbody> <tr> <td> Please select action. </td> </tr> </tbody> </table> </div> </td> </tr> </tbody> </table> </div> <BR /><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="?subtopic=lostaccount" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></FORM></TABLE></TABLE>'; elseif($action == 'step1' && $_REQUEST['action_type'] == 'email') { $nick = stripslashes($_REQUEST['nick']); if(check_name($nick)) { $player = new OTS_Player(); $account = new OTS_Account(); $player->find($nick); if($player->isLoaded()) $account = $player->getAccount(); if($account->isLoaded()) { if($account->getCustomField('next_email') < time()) $main_content .= 'Please enter e-mail to account with this character.<br /><br /> <FORM ACTION="?subtopic=lostaccount&action=sendcode" METHOD=post> <INPUT TYPE=hidden NAME="character" VALUE=""> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Please enter e-mail to account</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> Character: <INPUT TYPE=text NAME="nick" VALUE="'.$nick.'" SIZE="40" readonly="readonly" hidden="hidden"><b>'.$nick.'</b><br /> E-mail to account:<INPUT TYPE=text NAME="email" VALUE="" SIZE="40"><br /> </TD></TR> </TABLE> <br /> <table width="100%"> <tbody> <tr align="center"> <td> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr><td style="border: 0px none;"> <a href="javascript:void();"> <div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif);"></div> <input class="ButtonText" name="Continue" alt="Continue" src="'.$layout_name.'/images/buttons/_sbutton_continue.gif" type="image"> </div> </div> </a> </td> </tr> <tr> </tr> </tbody> </table> </td> <td> <table border="0" cellpadding="0" cellspacing="0"> <tbody> <tr> <td style="border: 0px none;"> <a href="javascript:void();" onclick=location.href="index.php?subtopic=lostaccount"><div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif); visibility: hidden;"></div> <input class="ButtonText" name="Back" alt="Back" src="'.$layout_name.'/images/buttons/_sbutton_back.gif" type="image"> </table> </td> </tr> </tbody> </table></form>'; else { $insec = $account->getCustomField('next_email') - time(); $minutesleft = floor($insec / 60); $secondsleft = $insec - ($minutesleft * 60); $timeleft = $minutesleft.' minutes '.$secondsleft.' seconds'; $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Successfully</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>Account of selected character <b>'.$nick.'</b> received e-mail in last '.ceil($config['site']['email_lai_sec_interval'] / 60).' minutes. <br />You must wait '.$timeleft.' before you can use <b>Lost Account Interface</b> again.</td> </tr> </TABLE>'; } } else $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Error Message</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>Player or account of player <b>'.$nick.'</b> doesn\'t exist.</td> </tr> </TABLE> <br /> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr><td style="border: 0px none;"> <a href="javascript:void();" onclick=location.href="index.php?subtopic=lostaccount"> <div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif);"></div> <input class="ButtonText" name="Back" alt="Back" src="'.$layout_name.'/images/buttons/_sbutton_back.gif" type="image"> </div> </div> </a> </td> </tr> <tr> </tr> </tbody> </table>'; } else $main_content .= '<div class="TableContainer"> <div class="CaptionContainer"> <div class="CaptionInnerContainer"> <span class="CaptionEdgeLeftTop" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionEdgeRightTop" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionBorderTop" style="background-image: url('.$layout_name.'/images/content/table-headline-border.gif);"></span> <span class="CaptionVerticalLeft" style="background-image: url('.$layout_name.'/images/content/box-frame-vertical.gif);"></span> <div class="Text">Error</div> <span class="CaptionVerticalRight" style="background-image: url('.$layout_name.'/images/content/box-frame-vertical.gif);"></span> <span class="CaptionBorderBottom" style="background-image: url('.$layout_name.'/images/content/table-headline-border.gif);"></span> <span class="CaptionEdgeLeftBottom" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionEdgeRightBottom" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> </div> </div> <table class="Table1" cellpadding="0" cellspacing="0"> <tbody><tr> <td> <div class="InnerTableContainer"> <table style="width: 100%;"> <tbody> <tr> <td> Invalid player name format. If you have other characters on account try with other name. </td> </tr> </tbody> </table> </div> </td> </tr> </tbody> </table> </div>'; } elseif($action == 'sendcode') { $email = $_REQUEST['email']; $nick = stripslashes($_REQUEST['nick']); if(check_name($nick)) { $player = new OTS_Player(); $account = new OTS_Account(); $player->find($nick); if($player->isLoaded()) $account = $player->getAccount(); if($account->isLoaded()) { if($account->getCustomField('next_email') < time()) { if($account->getEMail() == $email) { $acceptedChars = '123456789zxcvbnmasdfghjklqwertyuiop'; $newcode = NULL; for($i=0; $i < 30; $i++) { $cnum[$i] = $acceptedChars{mt_rand(0, 33)}; $newcode .= $cnum[$i]; } $mailBody = '<html> <body> <h3>Your account name and password!</h3> <p>You or someone else requested new password for'.$config['server']['url'].' your account on server <a href="><b>'.$config['server]['serverName'].'</b></a> with this e-mail.</p> <p>Account name: '.$account->getName().'</p> <p>Password: <i>You will set new password when you press on link.</i></p> <br /> <p>Press on link to set new password. This link will work until next >new password request< in Lost Account Interface.</p> <p><a href="'.$config['server']['url'].'/?subtopic=lostaccount&action=checkcode&code=.$newcode.'&character='.urlencode($nick).'">'.$config['server]['url'].'/?subtopic=lostaccount&action=checkcode&code='.$newcode.'&character='.urlencode($nick).'</a></p> <p>or open page: <i>'.$config['server']['url'].'/?subtopic=lostaccount&action=checkcode</i> and in field "code" write <b>'.$newcode.'</b></p> <br /><p>If you don\'t want to change password to your account just delete this e-mail. <p><u>It\'s automatic e-mail from OTS Lost Account System. Do not reply!</u></p> </body> </html>'; require("phpmailer/class.phpmailer.php"); $mail = new PHPMailer(); if ($config['site']['smtp_enabled'] == "yes") { $mail->IsSMTP(); $mail->Host = $config['site']['smtp_host']; $mail->Port = (int)$config['site']['smtp_port']; $mail->SMTPAuth = ($config['site']['smtp_auth'] ? true : false); $mail->Username = $config['site']['smtp_user']; $mail->Password = $config['site']['smtp_pass']; } else $mail->IsMail(); $mail->IsHTML(true); $mail->From = $config['site']['mail_address']; $mail->AddAddress($account->getCustomField('email')); $mail->Subject = $config['server']['serverName']." - Link to >set new password to account<"; $mail->Body = $mailBody; if($mail->Send()) { $account->setCustomField('email_code', $newcode); $account->setCustomField('next_email', (time() + $config['site']['email_lai_sec_interval'])); $main_content .= '<br />Link with informations needed to set new password has been sent to account e-mail address. You should receive this e-mail in 15 minutes. Please check your inbox/spam directory.'; } else { $account->setCustomField('next_email', (time() + 60)); $main_content .= '<br /><TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Critical Error</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>An error occorred while sending email! Try again or contact with admin.</td> </tr> </TABLE>'; } } else $main_content .= ' <div class="TableContainer"> <div class="CaptionContainer"> <div class="CaptionInnerContainer"> <span class="CaptionEdgeLeftTop" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionEdgeRightTop" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionBorderTop" style="background-image: url('.$layout_name.'/images/content/table-headline-border.gif);"></span> <span class="CaptionVerticalLeft" style="background-image: url('.$layout_name.'/images/content/box-frame-vertical.gif);"></span> <div class="Text">Error</div> <span class="CaptionVerticalRight" style="background-image: url('.$layout_name.'/images/content/box-frame-vertical.gif);"></span> <span class="CaptionBorderBottom" style="background-image: url('.$layout_name.'/images/content/table-headline-border.gif);"></span> <span class="CaptionEdgeLeftBottom" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionEdgeRightBottom" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> </div> </div> <table class="Table1" cellpadding="0" cellspacing="0"> <tbody><tr> <td> <div class="InnerTableContainer"> <table style="width: 100%;"> <tbody> <tr> <td> Invalid e-mail to account of character <b>'.$nick.'</b>. Try again </td> </tr> </tbody> </table> </div> </td> </tr> </tbody> </table> </div>'; } else { $insec = $account->getCustomField('next_email') - time(); $minutesleft = floor($insec / 60); $secondsleft = $insec - ($minutesleft * 60); $timeleft = $minutesleft.' minutes '.$secondsleft.' seconds'; $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Successfully</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>Account of selected character <b>'.$nick.'</b> received e-mail in last '.ceil($config['site']['email_lai_sec_interval'] / 60).' minutes. <br />You must wait '.$timeleft.' before you can use <b>Lost Account Interface</b> again.</td> </tr> </TABLE>'; } } else $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Error Message</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>Player or account of player <b>'.$nick.'</b> doesn\'t exist.</td> </tr> </TABLE> <br /> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr><td style="border: 0px none;"> <a href="javascript:void();" onclick=location.href="index.php?subtopic=lostaccount"> <div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif);"></div> <input class="ButtonText" name="Back" alt="Back" src="'.$layout_name.'/images/buttons/_sbutton_back.gif" type="image"> </div> </div> </a> </td> </tr> <tr> </tr> </tbody> </table>'; } else $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Error</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>Invalid player name format. If you have other characters on account try with other name.</td> </tr> </TABLE> <br /> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr><td style="border: 0px none;"> <a href="javascript:void();" onclick=location.href="index.php?subtopic=lostaccount"> <div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif);"></div> <input class="ButtonText" name="Back" alt="Back" src="'.$layout_name.'/images/buttons/_sbutton_back.gif" type="image"> </div> </div> </a> </td> </tr> <tr> </tr> </tbody> </table>'; $main_content .= '<BR /><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="?subtopic=lostaccount&action=step1&action_type=email&nick='.urlencode($nick).'" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></FORM></TABLE></TABLE>'; } elseif($action == 'step1' && $_REQUEST['action_type'] == 'reckey') { $nick = stripslashes($_REQUEST['nick']); if(check_name($nick)) { $player = new OTS_Player(); $account = new OTS_Account(); $player->find($nick); if($player->isLoaded()) $account = $player->getAccount(); if($account->isLoaded()) { $account_key = $account->getCustomField('key'); if(!empty($account_key)) { $main_content .= 'If you enter right recovery key you will see form to set new e-mail and password to account. To this e-mail will be send your new password and account name.<br /> <FORM ACTION="?subtopic=lostaccount&action=step2" METHOD=post> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Please enter your recovery key</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> Character name: <INPUT TYPE=text NAME="nick" VALUE="'.$nick.'" SIZE="40" readonly="readonly"><BR /> Recovery key: <INPUT TYPE=text NAME="key" VALUE="" SIZE="40"><br /> </TD></TR> </TABLE> <br /> <table width="100%"> <tbody> <tr align="center"> <td> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr><td style="border: 0px none;"> <a href="javascript:void();"> <div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif);"></div> <input class="ButtonText" name="Continue" alt="Continue" src="'.$layout_name.'/images/buttons/_sbutton_continue.gif" type="image"> </div> </div> </a> </td> </tr> <tr> </tr> </tbody> </table> </td> <td> <table border="0" cellpadding="0" cellspacing="0"> <tbody> <tr> <td style="border: 0px none;"> <a href="index.php?subtopic=lostaccount"><div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif); visibility: hidden;"></div> <input class="ButtonText" name="Back" alt="Back" src="'.$layout_name.'/images/buttons/_sbutton_back.gif" type="image"> </table> </a> </td> </tr> </tbody> </table>'; } else $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Error Message</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>Account of this character has no recovery key!</td> </tr> </TABLE>'; } else $main_content .= ' <br /> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr><td style="border: 0px none;"> <a href="javascript:void();" onclick=location.href="index.php?subtopic=lostaccount"> <div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif);"></div> <input class="ButtonText" name="Back" alt="Back" src="'.$layout_name.'/images/buttons/_sbutton_back.gif" type="image"> </div> </div> </a> </td> </tr> <tr> </tr> </tbody> </table>'; } else $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Error</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>Invalid player name format. If you have other characters on account try with other name.</td> </tr> </TABLE> <br /> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr><td style="border: 0px none;"> <a href="javascript:void();" onclick=location.href="index.php?subtopic=lostaccount"> <div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif);"></div> <input class="ButtonText" name="Back" alt="Back" src="'.$layout_name.'/images/buttons/_sbutton_back.gif" type="image"> </div> </div> </a> </td> </tr> <tr> </tr> </tbody> </table>'; $main_content .= '<BR /></TABLE>'; } elseif($action == 'step2') { $rec_key = trim($_REQUEST['key']); $nick = stripslashes($_REQUEST['nick']); if(check_name($nick)) { $player = new OTS_Player(); $account = new OTS_Account(); $player->find($nick); if($player->isLoaded()) $account = $player->getAccount(); if($account->isLoaded()) { $account_key = $account->getCustomField('key'); if(!empty($account_key)) { if($account_key == $rec_key) { $main_content .= '<script type="text/javascript"> function validate_required(field,alerttxt) { with (field) { if (value==null||value==""||value==" ") {alert(alerttxt);return false;} else {return true} } } function validate_email(field,alerttxt) { with (field) { apos=value.indexOf("@"); dotpos=value.lastIndexOf("."); if (apos<1||dotpos-apos<2) {alert(alerttxt);return false;} else {return true;} } } function validate_form(thisform) { with (thisform) { if (validate_required(email,"Please enter your e-mail!")==false) {email.focus();return false;} if (validate_email(email,"Invalid e-mail format!")==false) {email.focus();return false;} if (validate_required(passor,"Please enter password!")==false) {passor.focus();return false;} if (validate_required(passor2,"Please repeat password!")==false) {passor2.focus();return false;} if (passor2.value!=passor.value) {alert(\'Repeated password is not equal to password!\');return false;} } } </script>'; $main_content .= 'Set new password and e-mail to your account.<br /> <FORM ACTION="?subtopic=lostaccount&action=step3" onsubmit="return validate_form(this)" METHOD=post> <INPUT TYPE=hidden NAME="character" VALUE=""> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Please enter new password and e-mail</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="31%">Account of character:</td> <td width="69%"><b>'.$nick.'</b></td> </tr> <tr> <td>New password:</td> <td><input id="passor" TYPE="password" NAME="passor" VALUE="" SIZE="40" /></td> </tr> <tr> <td>Repeat new password:</td> <td><INPUT id="passor2" TYPE="password" NAME="passor" VALUE="" SIZE="40"/></td> </tr> <tr> <td>New e-mail address:</td> <td><INPUT id="email" TYPE=text NAME="email" VALUE="" SIZE="40"></td> </tr> </table> <INPUT TYPE=hidden NAME="key" VALUE="'.$rec_key.'"> </TD></TR> </TABLE> <br /> <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></center> </TD></TR></FORM></TABLE></TABLE>'; } else $main_content .= ' <div class="TableContainer"> <div class="CaptionContainer"> <div class="CaptionInnerContainer"> <span class="CaptionEdgeLeftTop" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionEdgeRightTop" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionBorderTop" style="background-image: url('.$layout_name.'/images/content/table-headline-border.gif);"></span> <span class="CaptionVerticalLeft" style="background-image: url('.$layout_name.'/images/content/box-frame-vertical.gif);"></span> <div class="Text">Error</div> <span class="CaptionVerticalRight" style="background-image: url('.$layout_name.'/images/content/box-frame-vertical.gif);"></span> <span class="CaptionBorderBottom" style="background-image: url('.$layout_name.'/images/content/table-headline-border.gif);"></span> <span class="CaptionEdgeLeftBottom" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> <span class="CaptionEdgeRightBottom" style="background-image: url('.$layout_name.'/images/content/box-frame-edge.gif);"></span> </div> </div> <table class="Table1" cellpadding="0" cellspacing="0"> <tbody><tr> <td> <div class="InnerTableContainer"> <table style="width: 100%;"> <tbody> <tr> <td> <b style="color: red;">Wrong recovery key!</b> </td> </tr> </tbody> </table> </div> </td> </tr> </tbody> </table> </div>'; } else $main_content .= 'Account of this character has no recovery key!'; } else $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Error Message</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>Player or account of player <b>'.$nick.'</b> doesn\'t exist.</td> </tr> </TABLE> <br /> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr><td style="border: 0px none;"> <a href="javascript:void();" onclick=location.href="index.php?subtopic=lostaccount"> <div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif);"></div> <input class="ButtonText" name="Back" alt="Back" src="'.$layout_name.'/images/buttons/_sbutton_back.gif" type="image"> </div> </div> </a> </td> </tr> <tr> </tr> </tbody> </table>'; } else $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Error</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>Invalid player name format. If you have other characters on account try with other name.</td> </tr> </TABLE> <br /> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr><td style="border: 0px none;"> <a href="javascript:void();" onclick=location.href="index.php?subtopic=lostaccount"> <div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif);"></div> <input class="ButtonText" name="Back" alt="Back" src="'.$layout_name.'/images/buttons/_sbutton_back.gif" type="image"> </div> </div> </a> </td> </tr> <tr> </tr> </tbody> </table>'; $main_content .= '<BR /><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="?subtopic=lostaccount&action=step1&action_type=reckey&nick='.urlencode($nick).'" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></FORM></TABLE></TABLE>'; } elseif($action == 'step3') { $rec_key = trim($_REQUEST['key']); $nick = stripslashes($_REQUEST['nick']); $new_pass = trim($_REQUEST['passor']); $new_email = trim($_REQUEST['email']); if(check_name($nick)) { $player = new OTS_Player(); $account = new OTS_Account(); $player->find($nick); if($player->isLoaded()) $account = $player->getAccount(); if($account->isLoaded()) { $account_key = $account->getCustomField('key'); if(!empty($account_key)) { if($account_key == $rec_key) { if(check_password($new_pass)) { if(check_mail($new_email)) { $account->setEMail($new_email); $account->setPassword(password_ency($new_pass)); $account->save(); $main_content .= 'Your account name, new password and new e-mail.<br /> <FORM ACTION="?subtopic=accountmanagement" onsubmit="return validate_form(this)" METHOD=post> <INPUT TYPE=hidden NAME="character" VALUE=""> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Your account name, new password and new e-mail</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="20%">Account name:</td> <td width="70%"><b>'.$account->getName().'</td> </tr> <tr> <td>New password:</td> <td><b>'.$new_pass.'</td> </tr> <tr> <td>New e-mail address:</td> <td><b>'.$new_email.'</td> </tr> </table>'; if($account->getCustomField('next_email') < time()) { $mailBody = '<html> <body> <h3>Your account name and new password!</h3> <p>Changed password and e-mail to your account in Lost Account Interface on server <a href="'.$config['server']['url'].'"><b>'.$config['server']['serverName'].'</b></a></p> <p>Account name: <b>'.$account->getName().'</b></p> <p>New password: <b>'.$new_pass.'</b></p> <p>E-mail: <b>'.$new_email.'</b> (this e-mail)</p> <br /> <p><u>It\'s automatic e-mail from OTS Lost Account System. Do not reply!</u></p> </body> </html>'; require("phpmailer/class.phpmailer.php"); $mail = new PHPMailer(); if ($config['site']['smtp_enabled'] == "yes") { $mail->IsSMTP(); $mail->Host = $config['site']['smtp_host']; $mail->Port = (int)$config['site']['smtp_port']; $mail->SMTPAuth = ($config['site']['smtp_auth'] ? true : false); $mail->Username = $config['site']['smtp_user']; $mail->Password = $config['site']['smtp_pass']; } else $mail->IsMail(); $mail->IsHTML(true); $mail->From = $config['site']['mail_address']; $mail->AddAddress($account->getCustomField('email')); $mail->Subject = $config['server']['serverName']." - New password to your account"; $mail->Body = $mailBody; if($mail->Send()) { $main_content .= '<br /><small>Sent e-mail with your account name and password to new e-mail. You should receive this e-mail in 15 minutes. You can login now with new password!'; } else { $main_content .= '<br /><small>An error occorred while sending email! You will not receive e-mail with this informations.'; } } else { $main_content .= '<br /><small>You will not receive e-mail with this informations.'; } $main_content .= '<INPUT TYPE=hidden NAME="account_login" VALUE="'.$account->getId().'"> <INPUT TYPE=hidden NAME="password_login" VALUE="'.$new_pass.'"> </TD></TR></TABLE><br /> <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <INPUT TYPE=image NAME="Login" ALT="Login" SRC="'.$layout_name.'/images/buttons/sbutton_login.gif" BORDER=0 WIDTH=120 HEIGHT=18></center> </TD></TR></FORM></TABLE></TABLE>'; } else $main_content .= 'Wrong e-mail format.'; } else $main_content .= 'Wrong password format. Use only a-Z, A-Z, 0-9'; } else $main_content .= 'Wrong recovery key!'; } else $main_content .= 'Account of this character has no recovery key!'; } else $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Error Message</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>Player or account of player <b>'.$nick.'</b> doesn\'t exist.</td> </tr> </TABLE> <br /> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr><td style="border: 0px none;"> <a href="javascript:void();" onclick=location.href="index.php?subtopic=lostaccount"> <div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif);"></div> <input class="ButtonText" name="Back" alt="Back" src="'.$layout_name.'/images/buttons/_sbutton_back.gif" type="image"> </div> </div> </a> </td> </tr> <tr> </tr> </tbody> </table>'; } else $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <tr BGCOLOR="'.$config['site']['vdarkborder'].'"> <td CLASS="white"><b>Error</b></td> </tr> <tr BGCOLOR='.$config['site']['darkborder'].'> <td>Invalid player name format. If you have other characters on account try with other name.</td> </tr> </TABLE> <br /> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr><td style="border: 0px none;"> <a href="javascript:void();" onclick=location.href="index.php?subtopic=lostaccount"> <div class="BigButton" style="background-image: url('.$layout_name.'/images/buttons/sbutton.gif);"> <div onmouseover="MouseOverBigButton(this);" onmouseout="MouseOutBigButton(this);"><div class="BigButtonOver" style="background-image: url('.$layout_name.'/images/buttons/sbutton_over.gif);"></div> <input class="ButtonText" name="Back" alt="Back" src="'.$layout_name.'/images/buttons/_sbutton_back.gif" type="image"> </div> </div> </a> </td> </tr> <tr> </tr> </tbody> </table>'; $main_content .= '<BR /><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="?subtopic=lostaccount&action=step1&action_type=reckey&nick='.urlencode($nick).'" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></FORM></TABLE></TABLE>'; } elseif($action == 'checkcode') { $code = trim($_REQUEST['code']); $character = stripslashes(trim($_REQUEST['character'])); if(empty($code) || empty($character)) $main_content .= 'Please enter code from e-mail and name of one character from account. Then press Submit.<br /> <FORM ACTION="?subtopic=lostaccount&action=checkcode" METHOD=post> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Code & character name</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> Your code: <INPUT TYPE=text NAME="code" VALUE="" SIZE="40")><BR /> Character: <INPUT TYPE=text NAME="character" VALUE="" SIZE="40")><BR /> </TD></TR> </TABLE> <br /> <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></center> </TD></TR></FORM></TABLE></TABLE>'; else { $player = new OTS_Player(); $account = new OTS_Account(); $player->find($character); if($player->isLoaded()) $account = $player->getAccount(); if($account->isLoaded()) { if($account->getCustomField('email_code') == $code) { $main_content .= '<script type="text/javascript"> function validate_required(field,alerttxt) { with (field) { if (value==null||value==""||value==" ") {alert(alerttxt);return false;} else {return true} } } function validate_form(thisform) { with (thisform) { if (validate_required(passor,"Please enter password!")==false) {passor.focus();return false;} if (validate_required(passor2,"Please repeat password!")==false) {passor2.focus();return false;} if (passor2.value!=passor.value) {alert(\'Repeated password is not equal to password!\');return false;} } } </script> Please enter new password to your account and repeat to make sure you remember password.<br /> <FORM ACTION="?subtopic=lostaccount&action=setnewpassword" onsubmit="return validate_form(this)" METHOD=post> <INPUT TYPE=hidden NAME="character" VALUE="'.$character.'"> <INPUT TYPE=hidden NAME="code" VALUE="'.$code.'"> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Code & account name</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> New password: <INPUT TYPE=password ID="passor" NAME="passor" VALUE="" SIZE="40")><BR /> Repeat new password: <INPUT TYPE=password ID="passor2" NAME="passor2" VALUE="" SIZE="40")><BR /> </TD></TR> </TABLE> <br /> <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></center> </TD></TR></FORM></TABLE></TABLE>'; } else $error= 'Wrong code to change password.'; } else $error = 'Account of this character or this character doesn\'t exist.'; } if(!empty($error)) $main_content .= '<font color="red"><b>'.$error.'</b></font><br />Please enter code from e-mail and name of one character from account. Then press Submit.<br /> <FORM ACTION="?subtopic=lostaccount&action=checkcode" METHOD=post> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Code & character name</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> Your code: <INPUT TYPE=text NAME="code" VALUE="" SIZE="40")><BR /> Character: <INPUT TYPE=text NAME="character" VALUE="" SIZE="40")><BR /> </TD></TR> </TABLE> <br /> <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></center> </TD></TR></FORM></TABLE></TABLE>'; } elseif($action == 'setnewpassword') { $newpassword = $_REQUEST['passor']; $code = $_REQUEST['code']; $character = stripslashes($_REQUEST['character']); $main_content .= ''; if(empty($code) || empty($character) || empty($newpassword)) $main_content .= '<font color="red"><b>Error. Try again.</b></font><br />Please enter code from e-mail and name of one character from account. Then press Submit.<br /> <br /><FORM ACTION="?subtopic=lostaccount&action=checkcode" METHOD=post> <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <INPUT TYPE=image NAME="Back" ALT="Back" SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" BORDER=0 WIDTH=120 HEIGHT=18></center> </TD></TR></FORM></TABLE></TABLE>'; else { $player = new OTS_Player(); $account = new OTS_Account(); $player->find($character); if($player->isLoaded()) $account = $player->getAccount(); if($account->isLoaded()) { if($account->getCustomField('email_code') == $code) { if(check_password($newpassword)) { $account->setPassword(password_ency($newpassword)); $account->save(); $account->setCustomField('email_code', ''); $main_content .= 'New password to your account is below. Now you can login.<br /> <INPUT TYPE=hidden NAME="character" VALUE="'.$character.'"> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Changed password</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> New password: <b>'.$newpassword.'</b><BR /> Account name: <i>(Already on your e-mail)</i><BR />'; $mailBody = '<html> <body> <h3>Your account name and password!</h3> <p>Changed password to your account in Lost Account Interface on server <a href="'.$config['server']['url'].'"><b>'.$config['server']['serverName'].'</b></a></p> <p>Account name: <b>'.$account->getName().'</b></p> <p>New password: <b>'.$newpassword.'</b></p> <br /> <p><u>It\'s automatic e-mail from OTS Lost Account System. Do not reply!</u></p> </body> </html>'; require("phpmailer/class.phpmailer.php"); $mail = new PHPMailer(); if ($config['site']['smtp_enabled'] == "yes") { $mail->IsSMTP(); $mail->Host = $config['site']['smtp_host']; $mail->Port = (int)$config['site']['smtp_port']; $mail->SMTPAuth = ($config['site']['smtp_auth'] ? true : false); $mail->Username = $config['site']['smtp_user']; $mail->Password = $config['site']['smtp_pass']; } else $mail->IsMail(); $mail->IsHTML(true); $mail->From = $config['site']['mail_address']; $mail->AddAddress($account->getCustomField('email')); $mail->Subject = $config['server']['serverName']." - New password to your account"; $mail->Body = $mailBody; if($mail->Send()) { $main_content .= '<br /><small>New password work! Sent e-mail with your password and account name. You should receive this e-mail in 15 minutes. You can login now with new password!'; } else { $main_content .= '<br /><small>New password work! An error occorred while sending email! You will not receive e-mail with new password.'; } $main_content .= '</TD></TR> </TABLE> <br /> <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <FORM ACTION="?subtopic=accountmanagement" METHOD=post> <INPUT TYPE=image NAME="Login" ALT="Login" SRC="'.$layout_name.'/images/buttons/sbutton_login.gif" BORDER=0 WIDTH=120 HEIGHT=18></center> </TD></TR></FORM></TABLE></TABLE>'; } else $error= 'Wrong password format. Use only a-z, A-Z, 0-9.'; } else $error= 'Wrong code to change password.'; } else $error = 'Account of this character or this character doesn\'t exist.'; } if(!empty($error)) $main_content .= '<font color="red"><b>'.$error.'</b></font><br />Please enter code from e-mail and name of one character from account. Then press Submit.<br /> <FORM ACTION="?subtopic=lostaccount&action=checkcode" METHOD=post> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Code & character name</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> Your code: <INPUT TYPE=text NAME="code" VALUE="" SIZE="40")><BR /> Character: <INPUT TYPE=text NAME="character" VALUE="" SIZE="40")><BR /> </TD></TR> </TABLE> <br /> <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></center> </TD></TR></FORM></TABLE></TABLE>'; } } else $main_content .= '<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="5" WIDTH="100%"> <TR BGCOLOR="'.$config['site']['vdarkborder'].'"> <TD CLASS="white"><b>System in maintence</b></td> </TR> <TR BGCOLOR='.$config['site']['darkborder'].'><TD>Account maker is not configured to send e-mails, you can\'t use <b>Lost Account Interface</b>. Contact with admin to get help.</TD> </TR> </TABLE>'; ?> config.php <?PHP $config['site']['worlds'] = array(0 => 'Glacial OT'); $config['site']['quests'] = array('Annihilator' => 5000,'Demon Helmet' => 2645,'Pits of Inferno' => 5550); // list of quests, 'questname' => storage-id, // ACCOUNT config $config['site']['one_email'] = 0; // one e-mail can be used only to create one account 0 / 1 $config['site']['email_days_to_change'] = 2; // how many days user need to change e-mail to account - block hackers $config['site']['newaccount_premdays'] = 0; // how many days receive new account $config['site']['access_tickers'] = 3; //ReCapatha http://recaptcha.net/whyrecaptcha.html $config['site']['publickey'] = "6LfZAAoAAAAAALswKC2UCdCo_wf3ilh_C0qBhQJs "; // Public Key $config['site']['privkey'] = "6LfZAAoAAAAAAA7_sZX1ZPomaqqTKBka5t6so0Un";; // Private Key // Sistema automatico Pagseguro by otprojects.com.br // Seu email cadastrado no pagseguro $config['pagseguro']['email'] = 'seuemailaqui'; // Nome do Produto $config['pagseguro']['produtoNome'] = 'Premium Points'; // USE ONLY IF YOU CONFIGURED E-MAIL AND IT WORK $config['site']['create_account_verify_mail'] = 1; // when create account player must use right e-mail, he will receive random password to account like on RL tibia, 1 = yes, 0 = no $config['site']['generate_new_reckey'] = 1; // let player generate new recovery key, he will receive e-mail with new rec key (not display on page, hacker can't generate rec key) $config['site']['generate_new_reckey_price'] = 7; // you can get some Premium Points for new rec key $config['site']['send_mail_when_change_password'] = 1; // send e-mail with new password when change password to account, set 0 if someone abuse to send spam $config['site']['send_mail_when_generate_reckey'] = 1; // send e-mail with rec key (key is displayed on page anyway when generate), set 0 if someone abuse to send spam $config['site']['send_register_email'] = 1; // send e-mail when register account // CHARACTER config, format: ID_of_vocation => 'Name of Character to copy', load vocation name from $vocation_name[0] (below) $config['site']['newchar_vocations'][0] = array(1 => 'Sorcerer Sample', 2 => 'Druid Sample', 3 => 'Paladin Sample', 4 => 'Knight Sample'); $config['site']['newchar_vocations'][1] = array(1 => 'Sorcerer Sample', 2 => 'Druid Sample', 3 => 'Paladin Sample', 4 => 'Knight Sample'); // sample, if rook only: $config['site']['newchar_vocations'][0] = array(0 => 'Rook Sample'); $config['site']['newchar_towns'][0] = array(2,4,13); $config['site']['newchar_towns'][1] = array(2,4); // sample, if all players should spawn in one city (city with ID 2): $config['site']['newchar_towns'] = array(2); // list of vocations on ots (world 0) $vocation_name[0][0] = array(0 => 'None', 1 => 'Sorcerer', 2 => 'Druid', 3 => 'Paladin', 4 => 'Knight'); // id => 'name' , $vocation_name[0] - promotion level 0, $vocation_name[0] - for world ID 0 $vocation_name[0][1] = array(1 => 'Master Sorcerer', 2 => 'Elder Druid', 3 => 'Royal Paladin', 4 => 'Elite Knight'); // id => 'name' , $vocation_name[1] - promotion level 1, $vocation_name[0] - for world ID 0 // list of vocations on ots (world 1) $vocation_name[1][0] = array(0 => 'None', 1 => 'Sorcerer', 2 => 'Druid', 3 => 'Paladin', 4 => 'Knight'); // id => 'name' , $vocation_name[0] - promotion level 0, $vocation_name[1] - for world ID 1 $vocation_name[1][1] = array(1 => 'Master Sorcerer', 2 => 'Elder Druid', 3 => 'Royal Paladin', 4 => 'Elite Knight'); // id => 'name' , $vocation_name[1] - promotion level 1, $vocation_name[1] - for world ID 1 // list of towns on ots $towns_list[0] = array(2 => 'Thais', 13 => 'Yalahar', 4 => 'Carlin', 7 => 'Darashia'); // list of towns, id => 'name', $towns_list[0] - for world id 0 $towns_list[1] = array(0 => 'Venore', 1 => 'Edron', 2 => 'Thais', 3 => 'Carlin'); // list of towns, id => 'name', $towns_list[1] - for world id 1 // list of monsters on ots - names blocked, you can generate list of your monsters in acc. maker admin panel ( Reload Monsters ) $config['site']['monsters'] = array("amazon","valkyrie","carrion worm","rotworm","rotworm queen","cockroach","kongra","merlkin","sibang","crystal spider","giant spider","poison spider","scorpion","spider","tarantula","achad","axeitus headbanger","bloodpaw","bovinus","colerian the barbarian","cursed gladiator","frostfur","orcus the cruel","rocky","the hairy one","avalanche","drasilla","grimgor guteater","kreebosh the exile","slim","spirit of earth","spirit of fire","spirit of water","the dark dancer","the hag","darakan the executioner","deathbringer","fallen mooh'tah master ghar","gnorre chyllson","norgle glacierbeard","svoren the mad","the masked marauder","the obliverator","the pit lord","webster","barbarian bloodwalker","barbarian brutetamer","barbarian headsplitter","barbarian skullhunter","bear","panda","polar bear","braindeath","beholder","elder beholder","gazer","chicken","dire penguin","flamingo","parrot","penguin","seagull","terror bird","bazir","infernatil","thul","munster","son of verminor","xenia","zoralurk","big boss trolliver","foreman kneebiter","mad technomancer","man in the cave","lord of the elements","the count","the plasmother","dracola","the abomination","the handmaiden","mr. punish","the countess sorrow","the imperor","massacre","apocalypse","brutus bloodbeard","deadeye devious","demodras","dharalion","fernfang","ferumbras","general murius","ghazbaran","grorlam","lethal lissy","morgaroth","necropharus","orshabaal","ron the ripper","the evil eye","the horned fox","the old widow","tiquandas revenge","apprentice sheng","dog","hellhound","war wolf","winter wolf","wolf","chakoya toolshaper","chakoya tribewarden","chakoya windcaller","blood crab","crab","frost giant","frost giantess","ice golem","yeti","acolyte of the cult","adept of the cult","enlightened of the cult","novice of the cult","ungreez","dark torturer","demon","destroyer","diabolic imp","fire devil","fury","hand of cursed fate","juggernaut","nightmare","plaguesmith","blue djinn","efreet","green djinn","marid","frost dragon","wyrm","sea serpent","dragon lord","dragon","hydra","dragon hatchling","dragon lord hatchling","frost dragon hatchling","dwarf geomancer","dwarf guard","dwarf soldier","dwarf","dworc fleshhunter","dworc venomsniper","dworc voodoomaster","elephant","mammoth","elf arcanist","elf scout","elf","charged energy elemental","energy elemental","massive energy elemental","overcharged energy elemental","energy overlord","cat","lion","tiger","azure frog","coral frog","crimson frog","green frog","orchid frog","toad","jagged earth elemental","muddy earth elemental","earth elemental","massive earth elemental","earth overlord","gargoyle","stone golem","ghost","phantasm","phantasm","pirate ghost","spectre","cyclops smith","cyclops drone","behemoth","cyclops","slick water elemental","roaring water elemental","ice overlord","water elemental","massive water elemental","ancient scarab","butterfly","bug","centipede","exp bug","larva","scarab","wasp","lizard sentinel","lizard snakecharmer","lizard templar","minotaur archer","minotaur guard","minotaur mage","minotaur","squirrel","goblin demon","badger","bat","deer","the halloween hare","hyaena","pig","rabbit","silver rabbit","skunk","wisp","dark monk","monk","tha exp carrier","necromancer","priestess","orc berserker","orc leader","orc rider","orc shaman","orc spearman","orc warlord","orc warrior","orc","goblin leader","goblin scavenger","goblin","goblin assassin","assasin","bandit","black knight","hero","hunter","nomad","smuggler","stalker","poacher","wild warrior","ashmunrah","dipthrah","mahrdis","morguthis","omruc","rahemos","thalas","vashresamun","pirate buccaneer","pirate corsair","pirate cutthroat","pirate marauder","carniphila","spit nettle","fire overlord","massive fire elemental","blistering fire elemental","blazing fire elemental","fire elemental","hellfire fighter","quara constrictor scout","quara hydromancer scout","quara mantassin scout","quara pincher scout","quara predator scout","quara constrictor","quara hydromancer","quara mantassin","quara pincher","quara predator","cave rat","rat","cobra","crocodile","serpent spawn","snake","wyvern","black sheep","sheep","mimic","betrayed wraith","bonebeast","demon skeleton","lost soul","pirate skeleton","skeleton","skeleton warrior","undead dragon","defiler","slime2","slime","bog raider","ice witch","warlock","witch","bones","fluffy","grynch clan goblin","hacker","minishabaal","primitive","tibia bug","undead minion","annihilon","hellgorak","latrivan","madareth","zugurosh","ushuriel","golgordan","thornback tortoise","tortoise","eye of the seven","deathslicer","flamethrower","magicthrower","plaguethrower","poisonthrower","shredderthrower","troll champion","frost troll","island troll","swamp troll","troll","banshee","blightwalker","crypt shambler","ghoul","lich","mummy","vampire","grim reaper","trainer","forest dragon","knight","paladin","druid","sorcerer","guard","mercenary","thief","toxiros","pyramo","lazarus","zathroth","goshnar","durin","demora","orc champion","lumenia","dracula","alezzo","prince almirith","elf warlord","random noob","magebomb"); // list of NPCs on ots - names blocked $config['site']['npc'] = array('alice', 'oarkhal', 'equer', 'parkhal', 'leoric', 'sarkhal', 'pallo', 'riona', 'her miona', 'varkhal', 'eura', 'blitz', 'markhal', 'wengo', 'larkhal'); $config['site']['max_players_per_account'] = 35; // max. number of characters on account $config['archez']['secret'] = array(2, 6, 7, 13, 16, 17, 18, 23, 24, 26, 29, 30, 31, 32, 34, 35, 37, 43, 44, 46, 51, 53, 54, 62, 63, 65, 66, 68, 73, 80, 81, 82, 83); $config['archez']['achievements'] = array( 1 => 'Allow Cookies?', 2 => 'Backpack Tourist', 3 => 'Bearhugger', 4 => 'Bone Brother', 5 => 'Chorister', 6 => 'Fountain of Life', 7 => 'Here, Fishy Fishy!', 8 => 'Honorary Barbarian', 9 => 'Huntsman', 10 => 'Just in Time', 11 => 'Matchmaker', 12 => 'Nightmare Knight', 13 => 'Party Animal', 14 => 'Secret Agent', 15 => 'Talented Dancer', 16 => 'Territorial', 17 => 'Worm Whacker', 18 => 'Allowance Collector', 19 => 'Amateur Actor', 20 => 'Animal Activist', 21 => 'Beach Tamer', 22 => 'Blessed!', 23 => 'Exquisite Taste', 24 => 'Fireworks in the Sky', 25 => 'Greenhorn', 26 => 'Jinx', 27 => 'Lucid Dreamer', 28 => 'Mathemagician', 29 => 'Masquerader', 30 => 'Ministrel', 31 => 'Poet Laureate', 32 => 'Quick as a Turtle', 33 => 'Sea Scout', 34 => 'Steampunked', 35 => 'Superstitios', 36 => 'The Milkman', 37 => 'Turncoat', 38 => 'Vive la Resistance', 39 => 'Archpostman', 40 => 'Clay Fighter', 41 => 'Efreet Ally', 42 => 'Ghostwisperer', 43 => 'His True Face', 44 => 'Ice Sculptor', 45 => 'King Tibanus Fan', 46 => 'Marblelous', 47 => 'Marid Ally', 48 => 'Passionate Kisser', 49 => 'Perfect Fool', 50 => 'Recognised Trader', 51 => 'Rockstar', 52 => 'Scrapper', 53 => 'Vanity', 54 => 'Wayfarer', 55 => 'Champion of Chazorai', 56 => 'Culinary Master', 57 => 'Explorer', 58 => 'Follower of Azerus', 59 => 'Follower of Palimuth', 60 => 'Friend of the Apes', 61 => 'Golem in the Gears', 62 => 'High-Flyer', 63 => 'Interior Decorator', 64 => 'Master Thief', 65 => 'Polisher', 66 => 'Potion Addict', 67 => 'Ruthless', 68 => 'Ship\'s Kobold', 69 => 'Top AVIN Agent', 70 => 'Top CGB Agent', 71 => 'Top TBI Agent', 72 => 'Annihilator', 73 => 'Castlemania', 74 => 'Elite Hunter', 75 => 'High Inquisitor', 76 => 'Jamjam', 77 => 'Lord of the Elements', 78 => 'Warlord of Svargrond', 79 => 'Master of the Nexus', 80 => 'Razing!', 81 => 'Dread Lord', 82 => 'Lord Protector', 83 => 'Herbicide' ); // GUILDS config $config['site']['guild_need_level'] = 20; // minimum level to create guild $config['site']['guild_need_pacc'] = 0; // guild need pacc 0 / 1 $config['site']['guild_image_size_kb'] = 200; // maximum size of image in KB $config['site']['guild_description_chars_limit'] = 1000; // limit of guild description $config['site']['guild_description_lines_limit'] = 6; // limit of lines, if description has more lines it will be showed as long text, without 'enters' $config['site']['guild_motd_chars_limit'] = 150; // limit of MOTD (show in game?) // E-MAIL config $config['site']['send_emails'] = 1; // is acc. maker configured to send e-mails? $config['site']['mail_address'] = "[email protected]"; // e-mail address $config['site']['smtp_enabled'] = "yes"; // send by smtp or mail function (set 0 if use mail function) $config['site']['smtp_host'] = "smtp.gmail.com"; // address $config['site']['smtp_port'] = 465; // port $config['site']['smtp_auth'] = "yes"; // need authorization? (set 0 if not need auth) $config['site']['smtp_user'] = "[email protected]"; // login $config['site']['smtp_pass'] = "MINHA SENHA"; // password // ACC MAKER OPTIONS config $config['site']['access_tickers'] = 3; // acess level needed to create/edit tickers $config['site']['access_news'] = 3; // access level needed to edit news $config['site']['access_admin_panel'] = 3; // access level needed to open admin panel $config['site']['news_big_limit'] = 3; // limit of news on latest news page $config['site']['news_ticks_limit'] = 5; // limit of ticker news on latest news page $config['site']['show_creationdate'] = 1; // show date of character creation 1 = yes, 0 = no (when use Search Player) $config['site']['last_deaths_limit'] = 40; // max. number of death on last death page $config['site']['players_group_id_block'] = 4; // don't show in statistics players with group ID higher (or equal) then (show tutors, senior tutors and normal players) $config['site']['support_group_id'] = 2; // on game masters list show players with group id 2 or higher $config['site']['shop_system'] = 1; // show server shop page? 1 = yes, 0 = no, use only if you installed LUA scripts of shop $config['site']['download_page'] = 1; // show download page? 1 = yes, 0 = no $config['site']['serverinfo_page'] = 1; // show server info page? 1 = yes, 0 = no $config['site']['verify_code_shop'] = 0; // show verify code when player try to check premium code $config['site']['gallery_page'] = 1; // show gallery page? 1 = yes, 0 = no $config['site']['email_lai_sec_interval'] = 180; // time in seconds between e-mails to one account from lost account interface, block spam $config['site']['show_marriage_info'] = 0; // show marriage, 1 = yes, 0 = no $config['site']['show_skills_info'] = 1;//show players skills, 1 = yes, 0 = no $config['site']['show_vip_status'] = 1;// show vip status, 1 = yes, 0 = no $config['site']['show_vip_storage'] = 0;// the storage of vip $config['site']['show_outfit'] = 1;// show outfit, 1 = yes, 0 = no $config['site']['show_signature'] = 1;// show signature, 1 = yes, 0 = no $config['site']['screenoftheday'] = 1;// show screenshot of the day $config['site']['worldtransfer'] = 1;//1-Enable/0-Disable Character World Transfer $config['site']['worldtransferprice'] = 10;//Price for Character World Transfer $config['site']['transfermonths'] = 6;//Months for which you cannot make World Transfer with a character // layout, available layouts: rasta,tibiacom,darkritual $config['site']['layout'] = "tibiacom"; // layout name ?> OBS: LÁ EM PASSWORD MARQUEI COMO "MINHASENHA" MAS É A SENHA DO MEU EMAIL MESMO Editado Agosto 28, 2013 11 anos por henriqerocha (veja o histórico de edições)
Postado Agosto 28, 2013 11 anos Já verificou se o e-mail está dentro do lixo eletronico ? 愛"A alma permanece em suas criações" 平(Não dou suporte por mensagem privada.)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.