public static function make_token($pass_len)
 {
     //seed the random generator
     mt_srand(RandomStringModel::make_seed());
     //create password
     $password = "";
     for ($loop = 0; $loop < $pass_len; $loop++) {
         switch (mt_rand(0, 2)) {
             case 0:
                 $password .= mt_rand(0, 9);
                 break;
                 // Number (0-9)
             // Number (0-9)
             case 1:
                 $password .= chr(mt_rand(97, 122));
                 break;
                 // Alpha Lower (a-z)
             // Alpha Lower (a-z)
             case 2:
                 $password .= chr(mt_rand(65, 90));
                 break;
                 // Alpha Upper (A-Z)
         }
     }
     return $password;
 }
 public function createTransactionAction()
 {
     //      Load cac model can thiet
     Zend_Loader::loadClass('UserModel');
     Zend_Loader::loadClass('RandomStringModel');
     Zend_Loader::loadClass('TransactionModel');
     $user_model = new UserModel();
     $transaction_model = new TransactionModel();
     $params = $this->_arrParam;
     if ($this->_request->isPost()) {
         if (isset($params['game_id']) && !empty($params['platform'])) {
             try {
                 if (!empty($this->_user)) {
                     $user = $user_model->getUserById($this->_user->user_id);
                     if (!empty($user) && count($user)) {
                         $transaction_id = RandomStringModel::make_token(16);
                         $data = array("transaction_id" => $transaction_id, "user_id" => $user['user_id'], "game_id" => $params['game_id'], "status" => 1, "created_time" => date("Y-m-d H:i:s"));
                         $transaction_model->insert($data);
                         $data = array("code" => 1, "content" => array("transaction_id" => $transaction_id));
                     } else {
                         $data = array("code" => 0, "content" => "Invalid user");
                     }
                 } else {
                     $data = array("code" => 0, "content" => "Authentication failed");
                 }
             } catch (exception $e) {
                 $data = array("code" => 0, "content" => "Error in server");
             }
         } else {
             $data = array("code" => 0, "content" => "Invalid parameters");
         }
         echo json_encode($data);
     }
     exit;
 }