Exemplo n.º 1
0
 public static function registerNew($info)
 {
     global $CFG;
     if (!is_array($info)) {
         return false;
     }
     $info['email'] = preg_replace("/[^0-9a-zA-Z@\\.\\!#\$%\\&\\*+_\\~\\?\\-]/", "", $info['email']);
     $exist_id = self::userExists($info['email']);
     if ($exist_id > 0) {
         $user_info = DB::getRecord('site_users', $exist_id, 0, 1);
         $email = SiteEmail::getRecord('register-existing');
         Email::send($CFG->form_email, $info['email'], $email['title'], $CFG->form_email_from, false, $email['content'], $user_info);
         return false;
     }
     $new_id = self::getNewId();
     if ($new_id > 0) {
         $sql = 'SELECT id FROM fee_schedule ORDER BY from_usd ASC LIMIT 0,1';
         $result = db_query_array($sql);
         $pass1 = self::randomPassword(12);
         //$info['first_name'] = preg_replace("/[^\pL a-zA-Z0-9@\s\._-]/u", "",$info['first_name']);
         //$info['last_name'] = preg_replace("/[^\pL a-zA-Z0-9@\s\._-]/u", "",$info['last_name']);
         //$info['country'] = preg_replace("/[^0-9]/", "",$info['country']);
         $info['user'] = $new_id;
         $info['pass'] = Encryption::hash($pass1);
         $info['date'] = date('Y-m-d H:i:s');
         $info['confirm_withdrawal_email_btc'] = 'Y';
         $info['confirm_withdrawal_email_bank'] = 'Y';
         $info['notify_deposit_btc'] = 'Y';
         $info['notify_deposit_bank'] = 'Y';
         $info['notify_withdraw_btc'] = 'Y';
         $info['notify_withdraw_bank'] = 'Y';
         $info['notify_login'] = '******';
         $info['no_logins'] = 'Y';
         $info['fee_schedule'] = $result[0]['id'];
         $info['default_currency'] = preg_replace("/[^0-9]/", "", $info['default_currency']);
         unset($info['terms']);
         $record_id = db_insert('site_users', $info);
         require_once '../lib/easybitcoin.php';
         $bitcoin = new Bitcoin($CFG->bitcoin_username, $CFG->bitcoin_passphrase, $CFG->bitcoin_host, $CFG->bitcoin_port, $CFG->bitcoin_protocol);
         $new_address = $bitcoin->getnewaddress($CFG->bitcoin_accountname);
         db_insert('bitcoin_addresses', array('address' => $new_address, 'site_user' => $record_id, 'date' => date('Y-m-d H:i:s')));
         $info['pass'] = $pass1;
         $email = SiteEmail::getRecord('register');
         Email::send($CFG->form_email, $info['email'], $email['title'], $CFG->form_email_from, false, $email['content'], $info);
         if ($CFG->email_notify_new_users) {
             $email = SiteEmail::getRecord('register-notify');
             $info['pass'] = false;
             Email::send($CFG->form_email, $CFG->support_email, $email['title'], $CFG->form_email_from, false, $email['content'], $info);
         }
         return true;
     }
 }