Fix Swift Emu R5A3

Results 1 to 9 of 9
  1. #1
    Newbie Jonathanbcstorm is offline
    MemberRank
    Nov 2013 Join Date
    12Posts

    Fix Swift Emu R5A3

    Hello guys :)

    I post this topic to have some help for fix swift emu!
    Could you help me to fix:

    • Group badge
    • add Diamonds
    • the extended profile


    When I click on my character, extended profile don't opened..
    And if you know.. how to put the new habbo.com catalog !


    Thank you very much.. :)



    PS: Sorry for my bad English, I'm French.
    Last edited by Jonathanbcstorm; 17-12-13 at 11:55 PM.


  2. #2
    Member jales is offline
    MemberRank
    Sep 2011 Join Date
    55Posts

    Re: Fix Swift Emu R5A3

    I managed to fix the groups emblem, the problem is not in the emulator but on habbo-imaging will soon make available to donwload.

  3. #3
    Newbie Jonathanbcstorm is offline
    MemberRank
    Nov 2013 Join Date
    12Posts

    Re: Fix Swift Emu R5A3

    Quote Originally Posted by jales View Post
    I managed to fix the groups emblem, the problem is not in the emulator but on habbo-imaging will soon make available to donwload.
    Yeah I know, I have up the habbo-imaging and config the external_variables but badge group doesn't work yet :/

  4. #4
    Member jales is offline
    MemberRank
    Sep 2011 Join Date
    55Posts

    Re: Fix Swift Emu R5A3

    Try looking at your .htaccess the problem may be it.

  5. #5
    Newbie Jonathanbcstorm is offline
    MemberRank
    Nov 2013 Join Date
    12Posts

    Re: Fix Swift Emu R5A3

    Quote Originally Posted by jales View Post
    Try looking at your .htaccess the problem may be it.
    I don't have the .htaccess but I have a .gitignore !
    The problem can come by this file ?

  6. #6
    Member Wilcock is offline
    MemberRank
    Sep 2012 Join Date
    PlutoLocation
    54Posts

    Re: Fix Swift Emu R5A3

    the extended profile

    Make a page like user.php or something and put this in it:
    Spoiler:
    <?php
    $username = "root";
    $password = "password";
    $host = "localhost";
    $database = "database";


    $connect = mysql_connect($host, $username, $password);
    $select = mysql_select_db($database, $connect);


    if(!$connect || !$select){
    die("No database connection");
    } else {
    $query = mysql_query("SELECT * FROM users");
    if (!$query){
    die("query wasn't successful");
    } else {
    while($row = mysql_fetch_assoc($query)){
    $query2 = mysql_query("INSERT INTO user_info(user_id, bans, cautions, reg_timestamp, login_timestamp, cfhs, cfhs_abusive) VALUES ('" . $row["id"] . "', '0', '0', '1234', '1234', '0', '0')");
    }
    if (!$query2){
    echo "query2 wasn't succesful";
    } else {
    echo "Script was succesful";
    }
    }
    }
    ?>


    and if U R using Revcms replace your class.users with:
    Spoiler:
    <?php

    namespace Revolution;
    if(!defined('IN_INDEX')) { die('Sorry, you cannot access this file.'); }
    class users implements iUsers
    {

    /*-------------------------------Authenticate-------------------------------------*/

    final public function isLogged()
    {
    if(isset($_SESSION['user']['id']))
    {
    return true;
    }

    return false;
    }

    /*-------------------------------Checking of submitted data-------------------------------------*/

    final public function validName($username)
    {
    if(strlen($username) <= 25 && ctype_alnum($username))
    {
    return true;
    }

    return false;
    }

    final public function validEmail($email)
    {
    return preg_match("/^[a-z0-9_\.-]+@([a-z0-9]+([\-]+[a-z0-9]+)*\.)+[a-z]{2,7}$/i", $email);
    }

    final public function validSecKey($seckey)
    {
    if(is_numeric($seckey) && strlen($seckey) == 4)
    {
    return true;
    }

    return false;
    }

    final public function nameTaken($username)
    {
    global $engine;

    if($engine->num_rows("SELECT * FROM users WHERE username = '" . $username . "' LIMIT 1") > 0)
    {
    return true;
    }

    return false;
    }

    final public function emailTaken($email)
    {
    global $engine;

    if($engine->num_rows("SELECT * FROM users WHERE mail = '" . $email . "' LIMIT 1") > 0)
    {
    return true;
    }

    return false;
    }

    final public function userValidation($username, $password)
    {
    global $engine;
    if($engine->num_rows("SELECT * FROM users WHERE username = '" . $username . "' AND password = '" . $password . "' LIMIT 1") > 0)
    {
    return true;
    }

    return false;
    }

    /*-------------------------------Stuff related to bans-------------------------------------*/

    final public function isBanned($value)
    {
    global $engine;
    if($engine->num_rows("SELECT * FROM bans WHERE value = '" . $value . "' LIMIT 1") > 0)
    {
    return true;
    }

    return false;
    }

    final public function getReason($value)
    {
    global $engine;
    return $engine->result("SELECT reason FROM bans WHERE value = '" . $value . "' LIMIT 1");
    }

    final public function hasClones($ip)
    {
    global $engine;
    if($engine->num_rows("SELECT * FROM users WHERE ip_reg = '" . $_SERVER['REMOTE_ADDR'] . "'") == 1)
    {
    return true;
    }

    return false;
    }

    /*-------------------------------Login or Register user-------------------------------------*/

    final public function register()
    {
    global $core, $template, $_CONFIG;

    if(isset($_POST['register']))
    {
    unset($template->form->error);

    $template->form->setData();

    if($this->validName($template->form->reg_username))
    {
    if(!$this->nameTaken($template->form->reg_username))
    {
    if($this->validEmail($template->form->reg_email))
    {
    if(!$this->emailTaken($template->form->reg_email))
    {
    if(strlen($template->form->reg_password) > 6)
    {
    if($template->form->reg_password == $template->form->reg_rep_password)
    {
    if(isset($template->form->reg_seckey))
    {
    if($this->validSecKey($template->form->reg_seckey))
    {
    //Continue
    }
    else
    {
    $template->form->error = 'Secret key must only have 4 numbers';
    return;
    }
    }
    if($this->isBanned($_SERVER['REMOTE_ADDR']) == false)
    {
    if(!$this->hasClones($_SERVER['REMOTE_ADDR']))
    {
    if(!isset($template->form->reg_gender)) { $template->form->reg_gender = 'M'; }
    if(!isset($template->form->reg_figure)) { $template->form->reg_figure = $_CONFIG['hotel']['figure']; }

    $this->addUser($template->form->reg_username, $core->hashed($template->form->reg_password), $template->form->reg_email, $_CONFIG['hotel']['motto'], $_CONFIG['hotel']['credits'], $_CONFIG['hotel']['pixels'], 1, $template->form->reg_figure, $template->form->reg_gender, $core->hashed($template->form->reg_key));

    $this->turnOn($template->form->reg_username);

    header('Location: ' . $_CONFIG['hotel']['url'] . '/me');
    exit;
    }
    else
    {
    $template->form->error = 'Sorry, but you cannot register twice';
    }
    }
    else
    {
    $template->form->error = 'Sorry, it appears you are IP banned.<br />';
    $template->form->error .= 'Reason: ' . $this->getReason($_SERVER['REMOTE_ADDR']);
    return;
    }
    }
    else
    {
    $template->form->error = 'Password does not match repeated password';
    return;
    }

    }
    else
    {
    $template->form->error = 'Password must have more than 6 characters';
    return;
    }
    }
    else
    {
    $template->form->error = 'Email: <b>' . $template->form->reg_email . '</b> is already registered';
    return;
    }
    }
    else
    {
    $template->form->error = 'Email is not valid';
    return;
    }
    }
    else
    {
    $template->form->error = 'Username is already registered';
    return;
    }
    }
    else
    {
    $template->form->error = 'Username is invalid';
    return;
    }
    }
    }

    final public function login()
    {
    global $template, $_CONFIG, $core;

    if(isset($_POST['login']))
    {
    $template->form->setData();
    unset($template->form->error);

    if($this->nameTaken($template->form->log_username))
    {
    if($this->isBanned($template->form->log_username) == false || $this->isBanned($_SERVER['REMOTE_ADDR']) == false)
    {
    if($this->userValidation($template->form->log_username, $core->hashed($template->form->log_password)))
    {
    $this->turnOn($template->form->log_username);
    $this->updateUser($_SESSION['user']['id'], 'ip_last', $_SERVER['REMOTE_ADDR']);
    $template->form->unsetData();
    header('Location: ' . $_CONFIG['hotel']['url'] . '/me');
    exit;
    }
    else
    {
    $template->form->error = 'Details do not match';
    return;
    }
    }
    else
    {
    $template->form->error = 'Sorry, it appears this user is banned<br />';
    $template->form->error .= 'Reason: ' . $this->getReason($template->form->log_username);
    return;
    }
    }
    else
    {
    $template->form->error = 'Username does not exist';
    return;
    }
    }
    }
    final public function ref($post){
    if(!$this->nameTaken($post)){
    echo'The user you reffered does not exist';
    }else{
    global $engine;
    $this->addUser($template->form->reg_username, $core->hashed($template->form->reg_password), $template->form->reg_email, $_CONFIG['hotel']['motto'], $_CONFIG['hotel']['credits'], $_CONFIG['hotel']['pixels'], 1, $template->form->reg_figure, $template->form->reg_gender, $core->hashed($template->form->reg_key));
    $engine->query("UPDATE users SET credits=(`credits`+1000) WHERE username='".$post."'");
    $engine->query("UPDATE users SET ref=(`ref`+1) WHERE username='".$post."'");
    }
    }
    final public function loginHK()
    {
    global $template, $_CONFIG, $core;

    if(isset($_POST['login']))
    {
    $template->form->setData();
    unset($template->form->error);

    if(isset($template->form->username) && isset($template->form->password))
    {
    if($this->nameTaken($template->form->username))
    {
    if($this->userValidation($template->form->username, $core->hashed($template->form->password)))
    {
    if(($this->getInfo($_SESSION['user']['id'], 'rank')) >= 4)
    {
    $_SESSION["in_hk"] = true;
    header("Location:".$_CONFIG['hotel']['url']."/ase/dash");
    exit;
    }
    else
    {
    $template->form->error = 'Incorrect access level.';
    return;
    }
    }
    else
    {
    $template->form->error = 'Incorrect password.';
    return;
    }
    }
    else
    {
    $template->form->error = 'User does not exist.';
    return;
    }
    }

    $template->form->unsetData();
    }
    }

    final public function help()
    {
    global $template, $_CONFIG;
    $template->form->setData();

    if(isset($template->form->help))
    {
    $to = $_CONFIG['hotel']['email'];
    $subject = "Help from RevCMS user - " . $this->getInfo($_SESSION['user']['id'], 'username');
    $body = $template->form->question;

    if (mail($to, $subject, $body))
    {
    $template->form->error = 'Message successfully sent! We will answer you shortly!';
    }
    else
    {
    $template->form->error = 'Message delivery failed.';
    }
    }
    }

    /*-------------------------------Account settings-------------------------------------*/

    final public function updateAccount()
    {
    global $template, $_CONFIG, $core, $engine;

    if(isset($_POST['account']))
    {

    if(isset($_POST['acc_motto']) && strlen($_POST['acc_motto']) < 30 && $_POST['acc_motto'] != $this->getInfo($_SESSION['user']['id'], 'motto'))
    {
    $this->updateUser($_SESSION['user']['id'], 'motto', $engine->secure($_POST['acc_motto']));
    header('Location: '.$_CONFIG['hotel']['url'].'/account');
    exit;
    }
    else
    {
    $template->form->error = 'Motto is invalid.';
    }

    if(isset($_POST['acc_email']) && $_POST['acc_email'] != $this->getInfo($_SESSION['user']['id'], 'mail'))
    {
    if($this->validEmail($_POST['acc_email']))
    {
    $this->updateUser($_SESSION['user']['id'], 'mail', $engine->secure($_POST['acc_email']));
    header('Location: '.$_CONFIG['hotel']['url'].'/account');
    exit;
    }
    else
    {
    $template->form->error = 'Email is not valid';
    return;
    }
    }

    if(!empty($_POST['acc_old_password']) && !empty($_POST['acc_new_password']))
    {
    if($this->userValidation($this->getInfo($_SESSION['user']['id'], 'username'), $core->hashed($_POST['acc_old_password'])))
    {
    if(strlen($_POST['acc_new_password']) >= 8)
    {
    $this->updateUser($_SESSION['user']['id'], 'password', $core->hashed($_POST['acc_new_password']));
    header('Location: '.$_CONFIG['hotel']['url'].'/me');
    exit;
    }
    else
    {
    $template->form->error = 'New password is too short';
    return;
    }
    }
    else
    {
    $template->form->error = 'Current password is wrong';
    return;
    }
    }
    }
    }


    final public function turnOn($k)
    {
    $j = $this->getID($k);
    $this->createSSO($j);
    $_SESSION['user']['id'] = $j;
    $this->cacheUser($j);
    unset($j);
    }

    /*-------------------------------Loggin forgotten-------------------------------------*/

    final public function forgotten()
    {
    global $template, $_CONFIG, $core;

    if(isset($_POST['forgot']))
    {

    $template->form->setData();
    unset($template->form->error);

    if($this->nameTaken($template->form->for_username))
    {
    if(strlen($template->form->for_password) > 6)
    {
    if($this->getInfo($this->getID($template->form->for_username), 'seckey') == $core->hashed($template->form->for_key))
    {
    $this->updateUser($this->getID($template->form->for_username), 'password', $core->hashed($template->form->for_password));
    $template->form->error = 'Account recovered! Go <b><a href="index">here</a></b> to login!';
    return;
    }
    else
    {
    $template->form->error = 'Secret key is incorrect';
    return;
    }
    }
    else
    {
    $template->form->error = 'Password must have more than 6 characters.';
    return;
    }
    }
    else
    {
    $template->form->error = 'Username does not exist';
    return;
    }
    }
    }

    /*-------------------------------Create SSO auth_ticket-------------------------------------*/

    final public function createSSO($k)
    {
    $sessionKey = 'RevCMS-'.rand(9,999).'/'.substr(sha1(time()).'/'.rand(9,9999999).'/'.rand(9,9999999).'/'.rand(9,9999999),0,33);

    $this->updateUser($k, 'auth_ticket', $sessionKey);

    unset($sessionKey);
    }

    /*-------------------------------Adding/Updating/Deleting users-------------------------------------*/

    final public function addUser($username, $password, $email, $motto, $credits, $pixels, $rank, $figure, $gender, $seckey)
    {

    if($_POST['ref']){
    $ref = $_POST['ref'];
    $this->ref($ref);
    }else{

    global $engine;
    $sessionKey = 'RevCMS-'.rand(9,999).'/'.substr(sha1(time()).'/'.rand(9,9999999).'/'.rand(9,9999999).'/'.rand(9,9999999),0,33);
    $engine->query("INSERT INTO users (username, password, mail, motto, credits, activity_points, rank, look, gender, seckey, ip_last, ip_reg, account_created, last_online, auth_ticket) VALUES('" . $username . "', '" . $password . "', '" . $email . "', '" . $motto . "', '" . $credits . "', '" . $pixels . "', '" . $rank . "', '" . $figure . "', '" . $gender . "', '" . $seckey . "', '" . $_SERVER['REMOTE_ADDR'] . "', '" . $_SERVER['REMOTE_ADDR'] . "', '" . time() . "', '" . time() . "', '" . $sessionKey . "')");
    $user_id = $this->getID($username);
    $engine->query("INSERT INTO user_info (user_id, bans, cautions, reg_timestamp, login_timestamp, cfhs, cfhs_abusive) VALUES ('". $user_id ."', '0', '0', UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), '0', '0')");
    unset($sessionKey);
    }
    }

    final public function deleteUser($k)
    {
    global $engine;
    $engine->query("DELETE FROM users WHERE id = '" . $k . "' LIMIT 1");
    $engine->query("DELETE FROM items WHERE userid = '" . $k . "' LIMIT 1");
    $engine->query("DELETE FROM rooms WHERE ownerid = '" . $k . "' LIMIT 1");
    }

    final public function updateUser($k, $key, $value)
    {
    global $engine;
    $engine->query("UPDATE users SET " . $key . " = '" . $engine->secure($value) . "' WHERE id = '" . $k . "' LIMIT 1");
    $_SESSION['user'][$key] = $engine->secure($value);
    }

    /*-------------------------------Handling user information-------------------------------------*/

    final public function cacheUser($k)
    {
    global $engine;
    $userInfo = $engine->fetch_assoc("SELECT username, rank, motto, mail, credits, activity_points, look, auth_ticket, ip_last FROM users WHERE id = '" . $k . "' LIMIT 1");

    foreach($userInfo as $key => $value)
    {
    $this->setInfo($key, $value);
    }
    }

    final public function setInfo($key, $value)
    {
    global $engine;
    $_SESSION['user'][$key] = $engine->secure($value);
    }

    final public function getInfo($k, $key)
    {
    global $engine;
    if(!isset($_SESSION['user'][$key]))
    {
    $value = $engine->result("SELECT $key FROM users WHERE id = '" . $engine->secure($k) . "' LIMIT 1");
    if($value != null)
    {
    $this->setInfo($key, $value);
    }
    }

    return $_SESSION['user'][$key];
    }



    /*-------------------------------Get user ID or Username-------------------------------------*/

    final public function getID($k)
    {
    global $engine;
    return $engine->result("SELECT id FROM users WHERE username = '" . $engine->secure($k) . "' LIMIT 1");
    }

    final public function getUsername($k)
    {
    global $engine;
    return $this->getInfo($_SESSION['user']['id'], 'username');
    }

    }
    ?>


    The new users will get user_info if you do that.

  7. #7
    Newbie Jonathanbcstorm is offline
    MemberRank
    Nov 2013 Join Date
    12Posts

    Re: Fix Swift Emu R5A3

    Quote Originally Posted by Wilcock View Post
    the extended profile

    Make a page like user.php or something and put this in it:
    Spoiler:
    <?php
    $username = "root";
    $password = "password";
    $host = "localhost";
    $database = "database";


    $connect = mysql_connect($host, $username, $password);
    $select = mysql_select_db($database, $connect);


    if(!$connect || !$select){
    die("No database connection");
    } else {
    $query = mysql_query("SELECT * FROM users");
    if (!$query){
    die("query wasn't successful");
    } else {
    while($row = mysql_fetch_assoc($query)){
    $query2 = mysql_query("INSERT INTO user_info(user_id, bans, cautions, reg_timestamp, login_timestamp, cfhs, cfhs_abusive) VALUES ('" . $row["id"] . "', '0', '0', '1234', '1234', '0', '0')");
    }
    if (!$query2){
    echo "query2 wasn't succesful";
    } else {
    echo "Script was succesful";
    }
    }
    }
    ?>


    and if U R using Revcms replace your class.users with:
    Spoiler:
    <?php

    namespace Revolution;
    if(!defined('IN_INDEX')) { die('Sorry, you cannot access this file.'); }
    class users implements iUsers
    {

    /*-------------------------------Authenticate-------------------------------------*/

    final public function isLogged()
    {
    if(isset($_SESSION['user']['id']))
    {
    return true;
    }

    return false;
    }

    /*-------------------------------Checking of submitted data-------------------------------------*/

    final public function validName($username)
    {
    if(strlen($username) <= 25 && ctype_alnum($username))
    {
    return true;
    }

    return false;
    }

    final public function validEmail($email)
    {
    return preg_match("/^[a-z0-9_\.-]+@([a-z0-9]+([\-]+[a-z0-9]+)*\.)+[a-z]{2,7}$/i", $email);
    }

    final public function validSecKey($seckey)
    {
    if(is_numeric($seckey) && strlen($seckey) == 4)
    {
    return true;
    }

    return false;
    }

    final public function nameTaken($username)
    {
    global $engine;

    if($engine->num_rows("SELECT * FROM users WHERE username = '" . $username . "' LIMIT 1") > 0)
    {
    return true;
    }

    return false;
    }

    final public function emailTaken($email)
    {
    global $engine;

    if($engine->num_rows("SELECT * FROM users WHERE mail = '" . $email . "' LIMIT 1") > 0)
    {
    return true;
    }

    return false;
    }

    final public function userValidation($username, $password)
    {
    global $engine;
    if($engine->num_rows("SELECT * FROM users WHERE username = '" . $username . "' AND password = '" . $password . "' LIMIT 1") > 0)
    {
    return true;
    }

    return false;
    }

    /*-------------------------------Stuff related to bans-------------------------------------*/

    final public function isBanned($value)
    {
    global $engine;
    if($engine->num_rows("SELECT * FROM bans WHERE value = '" . $value . "' LIMIT 1") > 0)
    {
    return true;
    }

    return false;
    }

    final public function getReason($value)
    {
    global $engine;
    return $engine->result("SELECT reason FROM bans WHERE value = '" . $value . "' LIMIT 1");
    }

    final public function hasClones($ip)
    {
    global $engine;
    if($engine->num_rows("SELECT * FROM users WHERE ip_reg = '" . $_SERVER['REMOTE_ADDR'] . "'") == 1)
    {
    return true;
    }

    return false;
    }

    /*-------------------------------Login or Register user-------------------------------------*/

    final public function register()
    {
    global $core, $template, $_CONFIG;

    if(isset($_POST['register']))
    {
    unset($template->form->error);

    $template->form->setData();

    if($this->validName($template->form->reg_username))
    {
    if(!$this->nameTaken($template->form->reg_username))
    {
    if($this->validEmail($template->form->reg_email))
    {
    if(!$this->emailTaken($template->form->reg_email))
    {
    if(strlen($template->form->reg_password) > 6)
    {
    if($template->form->reg_password == $template->form->reg_rep_password)
    {
    if(isset($template->form->reg_seckey))
    {
    if($this->validSecKey($template->form->reg_seckey))
    {
    //Continue
    }
    else
    {
    $template->form->error = 'Secret key must only have 4 numbers';
    return;
    }
    }
    if($this->isBanned($_SERVER['REMOTE_ADDR']) == false)
    {
    if(!$this->hasClones($_SERVER['REMOTE_ADDR']))
    {
    if(!isset($template->form->reg_gender)) { $template->form->reg_gender = 'M'; }
    if(!isset($template->form->reg_figure)) { $template->form->reg_figure = $_CONFIG['hotel']['figure']; }

    $this->addUser($template->form->reg_username, $core->hashed($template->form->reg_password), $template->form->reg_email, $_CONFIG['hotel']['motto'], $_CONFIG['hotel']['credits'], $_CONFIG['hotel']['pixels'], 1, $template->form->reg_figure, $template->form->reg_gender, $core->hashed($template->form->reg_key));

    $this->turnOn($template->form->reg_username);

    header('Location: ' . $_CONFIG['hotel']['url'] . '/me');
    exit;
    }
    else
    {
    $template->form->error = 'Sorry, but you cannot register twice';
    }
    }
    else
    {
    $template->form->error = 'Sorry, it appears you are IP banned.<br />';
    $template->form->error .= 'Reason: ' . $this->getReason($_SERVER['REMOTE_ADDR']);
    return;
    }
    }
    else
    {
    $template->form->error = 'Password does not match repeated password';
    return;
    }

    }
    else
    {
    $template->form->error = 'Password must have more than 6 characters';
    return;
    }
    }
    else
    {
    $template->form->error = 'Email: <b>' . $template->form->reg_email . '</b> is already registered';
    return;
    }
    }
    else
    {
    $template->form->error = 'Email is not valid';
    return;
    }
    }
    else
    {
    $template->form->error = 'Username is already registered';
    return;
    }
    }
    else
    {
    $template->form->error = 'Username is invalid';
    return;
    }
    }
    }

    final public function login()
    {
    global $template, $_CONFIG, $core;

    if(isset($_POST['login']))
    {
    $template->form->setData();
    unset($template->form->error);

    if($this->nameTaken($template->form->log_username))
    {
    if($this->isBanned($template->form->log_username) == false || $this->isBanned($_SERVER['REMOTE_ADDR']) == false)
    {
    if($this->userValidation($template->form->log_username, $core->hashed($template->form->log_password)))
    {
    $this->turnOn($template->form->log_username);
    $this->updateUser($_SESSION['user']['id'], 'ip_last', $_SERVER['REMOTE_ADDR']);
    $template->form->unsetData();
    header('Location: ' . $_CONFIG['hotel']['url'] . '/me');
    exit;
    }
    else
    {
    $template->form->error = 'Details do not match';
    return;
    }
    }
    else
    {
    $template->form->error = 'Sorry, it appears this user is banned<br />';
    $template->form->error .= 'Reason: ' . $this->getReason($template->form->log_username);
    return;
    }
    }
    else
    {
    $template->form->error = 'Username does not exist';
    return;
    }
    }
    }
    final public function ref($post){
    if(!$this->nameTaken($post)){
    echo'The user you reffered does not exist';
    }else{
    global $engine;
    $this->addUser($template->form->reg_username, $core->hashed($template->form->reg_password), $template->form->reg_email, $_CONFIG['hotel']['motto'], $_CONFIG['hotel']['credits'], $_CONFIG['hotel']['pixels'], 1, $template->form->reg_figure, $template->form->reg_gender, $core->hashed($template->form->reg_key));
    $engine->query("UPDATE users SET credits=(`credits`+1000) WHERE username='".$post."'");
    $engine->query("UPDATE users SET ref=(`ref`+1) WHERE username='".$post."'");
    }
    }
    final public function loginHK()
    {
    global $template, $_CONFIG, $core;

    if(isset($_POST['login']))
    {
    $template->form->setData();
    unset($template->form->error);

    if(isset($template->form->username) && isset($template->form->password))
    {
    if($this->nameTaken($template->form->username))
    {
    if($this->userValidation($template->form->username, $core->hashed($template->form->password)))
    {
    if(($this->getInfo($_SESSION['user']['id'], 'rank')) >= 4)
    {
    $_SESSION["in_hk"] = true;
    header("Location:".$_CONFIG['hotel']['url']."/ase/dash");
    exit;
    }
    else
    {
    $template->form->error = 'Incorrect access level.';
    return;
    }
    }
    else
    {
    $template->form->error = 'Incorrect password.';
    return;
    }
    }
    else
    {
    $template->form->error = 'User does not exist.';
    return;
    }
    }

    $template->form->unsetData();
    }
    }

    final public function help()
    {
    global $template, $_CONFIG;
    $template->form->setData();

    if(isset($template->form->help))
    {
    $to = $_CONFIG['hotel']['email'];
    $subject = "Help from RevCMS user - " . $this->getInfo($_SESSION['user']['id'], 'username');
    $body = $template->form->question;

    if (mail($to, $subject, $body))
    {
    $template->form->error = 'Message successfully sent! We will answer you shortly!';
    }
    else
    {
    $template->form->error = 'Message delivery failed.';
    }
    }
    }

    /*-------------------------------Account settings-------------------------------------*/

    final public function updateAccount()
    {
    global $template, $_CONFIG, $core, $engine;

    if(isset($_POST['account']))
    {

    if(isset($_POST['acc_motto']) && strlen($_POST['acc_motto']) < 30 && $_POST['acc_motto'] != $this->getInfo($_SESSION['user']['id'], 'motto'))
    {
    $this->updateUser($_SESSION['user']['id'], 'motto', $engine->secure($_POST['acc_motto']));
    header('Location: '.$_CONFIG['hotel']['url'].'/account');
    exit;
    }
    else
    {
    $template->form->error = 'Motto is invalid.';
    }

    if(isset($_POST['acc_email']) && $_POST['acc_email'] != $this->getInfo($_SESSION['user']['id'], 'mail'))
    {
    if($this->validEmail($_POST['acc_email']))
    {
    $this->updateUser($_SESSION['user']['id'], 'mail', $engine->secure($_POST['acc_email']));
    header('Location: '.$_CONFIG['hotel']['url'].'/account');
    exit;
    }
    else
    {
    $template->form->error = 'Email is not valid';
    return;
    }
    }

    if(!empty($_POST['acc_old_password']) && !empty($_POST['acc_new_password']))
    {
    if($this->userValidation($this->getInfo($_SESSION['user']['id'], 'username'), $core->hashed($_POST['acc_old_password'])))
    {
    if(strlen($_POST['acc_new_password']) >= 8)
    {
    $this->updateUser($_SESSION['user']['id'], 'password', $core->hashed($_POST['acc_new_password']));
    header('Location: '.$_CONFIG['hotel']['url'].'/me');
    exit;
    }
    else
    {
    $template->form->error = 'New password is too short';
    return;
    }
    }
    else
    {
    $template->form->error = 'Current password is wrong';
    return;
    }
    }
    }
    }


    final public function turnOn($k)
    {
    $j = $this->getID($k);
    $this->createSSO($j);
    $_SESSION['user']['id'] = $j;
    $this->cacheUser($j);
    unset($j);
    }

    /*-------------------------------Loggin forgotten-------------------------------------*/

    final public function forgotten()
    {
    global $template, $_CONFIG, $core;

    if(isset($_POST['forgot']))
    {

    $template->form->setData();
    unset($template->form->error);

    if($this->nameTaken($template->form->for_username))
    {
    if(strlen($template->form->for_password) > 6)
    {
    if($this->getInfo($this->getID($template->form->for_username), 'seckey') == $core->hashed($template->form->for_key))
    {
    $this->updateUser($this->getID($template->form->for_username), 'password', $core->hashed($template->form->for_password));
    $template->form->error = 'Account recovered! Go <b><a href="index">here</a></b> to login!';
    return;
    }
    else
    {
    $template->form->error = 'Secret key is incorrect';
    return;
    }
    }
    else
    {
    $template->form->error = 'Password must have more than 6 characters.';
    return;
    }
    }
    else
    {
    $template->form->error = 'Username does not exist';
    return;
    }
    }
    }

    /*-------------------------------Create SSO auth_ticket-------------------------------------*/

    final public function createSSO($k)
    {
    $sessionKey = 'RevCMS-'.rand(9,999).'/'.substr(sha1(time()).'/'.rand(9,9999999).'/'.rand(9,9999999).'/'.rand(9,9999999),0,33);

    $this->updateUser($k, 'auth_ticket', $sessionKey);

    unset($sessionKey);
    }

    /*-------------------------------Adding/Updating/Deleting users-------------------------------------*/

    final public function addUser($username, $password, $email, $motto, $credits, $pixels, $rank, $figure, $gender, $seckey)
    {

    if($_POST['ref']){
    $ref = $_POST['ref'];
    $this->ref($ref);
    }else{

    global $engine;
    $sessionKey = 'RevCMS-'.rand(9,999).'/'.substr(sha1(time()).'/'.rand(9,9999999).'/'.rand(9,9999999).'/'.rand(9,9999999),0,33);
    $engine->query("INSERT INTO users (username, password, mail, motto, credits, activity_points, rank, look, gender, seckey, ip_last, ip_reg, account_created, last_online, auth_ticket) VALUES('" . $username . "', '" . $password . "', '" . $email . "', '" . $motto . "', '" . $credits . "', '" . $pixels . "', '" . $rank . "', '" . $figure . "', '" . $gender . "', '" . $seckey . "', '" . $_SERVER['REMOTE_ADDR'] . "', '" . $_SERVER['REMOTE_ADDR'] . "', '" . time() . "', '" . time() . "', '" . $sessionKey . "')");
    $user_id = $this->getID($username);
    $engine->query("INSERT INTO user_info (user_id, bans, cautions, reg_timestamp, login_timestamp, cfhs, cfhs_abusive) VALUES ('". $user_id ."', '0', '0', UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), '0', '0')");
    unset($sessionKey);
    }
    }

    final public function deleteUser($k)
    {
    global $engine;
    $engine->query("DELETE FROM users WHERE id = '" . $k . "' LIMIT 1");
    $engine->query("DELETE FROM items WHERE userid = '" . $k . "' LIMIT 1");
    $engine->query("DELETE FROM rooms WHERE ownerid = '" . $k . "' LIMIT 1");
    }

    final public function updateUser($k, $key, $value)
    {
    global $engine;
    $engine->query("UPDATE users SET " . $key . " = '" . $engine->secure($value) . "' WHERE id = '" . $k . "' LIMIT 1");
    $_SESSION['user'][$key] = $engine->secure($value);
    }

    /*-------------------------------Handling user information-------------------------------------*/

    final public function cacheUser($k)
    {
    global $engine;
    $userInfo = $engine->fetch_assoc("SELECT username, rank, motto, mail, credits, activity_points, look, auth_ticket, ip_last FROM users WHERE id = '" . $k . "' LIMIT 1");

    foreach($userInfo as $key => $value)
    {
    $this->setInfo($key, $value);
    }
    }

    final public function setInfo($key, $value)
    {
    global $engine;
    $_SESSION['user'][$key] = $engine->secure($value);
    }

    final public function getInfo($k, $key)
    {
    global $engine;
    if(!isset($_SESSION['user'][$key]))
    {
    $value = $engine->result("SELECT $key FROM users WHERE id = '" . $engine->secure($k) . "' LIMIT 1");
    if($value != null)
    {
    $this->setInfo($key, $value);
    }
    }

    return $_SESSION['user'][$key];
    }



    /*-------------------------------Get user ID or Username-------------------------------------*/

    final public function getID($k)
    {
    global $engine;
    return $engine->result("SELECT id FROM users WHERE username = '" . $engine->secure($k) . "' LIMIT 1");
    }

    final public function getUsername($k)
    {
    global $engine;
    return $this->getInfo($_SESSION['user']['id'], 'username');
    }

    }
    ?>


    The new users will get user_info if you do that.
    Thank you, but I want to speak of this extended profile :


  8. #8
    Member jales is offline
    MemberRank
    Sep 2011 Join Date
    55Posts

    Re: Fix Swift Emu R5A3

    Quote Originally Posted by Jonathanbcstorm View Post
    Thank you, but I want to speak of this extended profile :

    You should update packets emulator to work. There's a whole process, you should change the swf and so on.

    Sorry my english. I'm brazilian.

  9. #9
    Newbie Jonathanbcstorm is offline
    MemberRank
    Nov 2013 Join Date
    12Posts

    Re: Fix Swift Emu R5A3

    Quote Originally Posted by jales View Post
    You should update packets emulator to work. There's a whole process, you should change the swf and so on.

    Sorry my english. I'm brazilian.
    Oh ok, thank you so much :)



Advertisement