input('gid'); $level=$request->input('level',0); $lang=$request->input('lang',env('DEFAULT_LOCALE','pu')); $userid = $request->UserID; $lang=['pu'=>'pt','en'=>'en','sp'=>'es'][$lang]??$lang; $protocol = $request->isSecure() ? 'https://' : 'http://'; $domain = $protocol . $request->getHost(); $rid=substr($gid,2); $params=[ 'norot'=>1, 'lang'=>$lang, 'level'=>$level, 'gid'=>$rid, 'UserID'=>$userid, 't'=>time() ]; $params['sign'] = ApiSign::sign($params); $url="$domain/api/pgsoft/lunchorg?".http_build_query($params); switch(substr($gid,0,2)){ //igt case "92": $url = "$domain/api/igt/lunchorg?".http_build_query($params); break; //jili case "91": $url = "$domain/api/jiligames/lunchorg?".http_build_query($params); break; //pg case "90": $url="$domain/api/pgsoft/lunchorg?".http_build_query($params); break; default: $url="$domain/api/pp-0-/lunchorg?".http_build_query($params); break; } return redirect($url); } public function gameLunch(Request $request) { $gid = $request->input('gid'); $user = $request->user(); if (!$user) { $userid = $request->UserID; $GlobalUID = 'a1b1c1-b53b-'.ServerService::GetLocalSign().'-' . $userid; $user=GlobalUserInfo::getGameUserInfo('UserID',$userid); if(!$user){ $user=AccountsInfo::find($userid); } }else{ $GlobalUID = $user->GlobalUID; $userid = $user->UserID; } $lang = GlobalUserInfo::getLocaleByUserID($userid,$request->input('language', env('DEFAULT_LOCALE', 'en'))); $gamecard = GameCard::where('gid', $gid)->where('brand', 'PragmaticPlay')->first(); if($gamecard){ $gamecard->increment('play_num', 1); LogGamecardClick::recordClick($gamecard->id, $userid); GameCard::$enableStateCheck = false; } $gameName=$gamecard->title; $data = ['UserID' => ServerService::GlobalToUserID($GlobalUID)]; $Currency = env("CONFIG_24680_CURRENCY", "USD"); $CurrencySymbol = env("CONFIG_24680_DOLLAR", "$"); $data['currency'] = $Currency; $data['dollar'] = $CurrencySymbol; if(!is_array($user))$user=$user->toArray(); $data = array_merge($data, $user); $session = $data; $token = md5($GlobalUID.'|'.microtime()); Redis::setex($token, 7200, json_encode($session)); $gamecode=$gid; $short2=substr($gamecode, 0, 2); $host='test.pgn-nmu2nd.com'; $game_url='https://'.$host.'/'; $hide_logo=PPGameIDs::$ids[$gamecode]['hide_logo']||false; return view('game.ppsim.html5', compact('host', 'token','gamecode','short2','lang','gameName','game_url','hide_logo')); } public function leaveOrg(Request $request){ $UserID = $request->UserID; try { DB::connection('write')->table('QPTreasureDB.dbo.GameScoreLocker') ->where('UserID', $UserID) ->delete(); } catch (\Throwable $e) { } return ''; } public function gameLunchOrg(Request $request) { $gid = $request->input('gid'); $level=$request->input('level',0); $lang=$request->input('lang',env('DEFAULT_LOCALE','pu')); $lang=['pu'=>'pt','en'=>'en','sp'=>'es'][$lang]??$lang; // $lang='pt'; $userid = $request->UserID; $GlobalUID = 'a1b1c1-b53b-'.ServerService::GetLocalSign().'-' . $userid; GameCard::$enableStateCheck = false; // $gamecard = GameCard::where('gid', $gid)->first(); // $in_gameid = OuroGameService::getUserInGame($userid, $GlobalUID); // if ($in_gameid != intval($gamecard->id)) { // Util::WriteLog('24680game', compact('in_gameid', 'gamecard', 'GlobalUID')); //// die; // } // // $gamecard = GameCard::where('gid', $gid)->where('brand', 'PGSoft')->first(); // $gamecard->increment('play_num', 1); // //$this->logGameClick($gamecard->id,$userid); // // LogGamecardClick::recordClick($gamecard->id, $userid); // $lang = GlobalUserInfo::getLocale(); $supportLang = ['en' => "en-US", 'da' => "da-DK", 'es' => "es-AR", 'id' => "id-ID", 'ja' => "ja-JP", 'ko' => "ko-KR", 'pt' => "pt-BR", 'th' => "th-TH", 'vi' => "vi-VN", 'zh' => "zh-CN", 'my' => "my-MM"]; if (!in_array($lang, array_keys($supportLang))) { $lang = 'en'; } $lang=$supportLang[$lang]; $cdnserver = 'https://sjj.pgn-nmu2nd.com'; $LogonPass='123'; $sign = GlobalUserInfo::genGuuidSign((object)compact('GlobalUID','LogonPass')); $or = $this->convertString(env('JILI_GAME_DOMAIN','jj.pgn-nmu2nd.com')); // $api = $this->convertString('orgbr.pgn-nmu2nd.com'); // $api = $this->convertString('api.pgn-nmu2nd.com'); $data=['UserID'=>ServerService::GlobalToUserID($GlobalUID)]; $gameIdToCodes=[302=>'mcp',51=>'mc',49=>'fullhouse',403=>'fullhouse3',300=>'fg3',223=>'fgp',109=>'fg',35=>'ols2',258=>'dl',47=>'bfs',421=>'lj']; $params = ['lang' => $lang, 'ssoKey' => $sign, 'apiId' => 2,'gameId'=>$gid,'gs'=>$or,'domain_platform'=>$or,'domain_gs'=>$or,'be'=>$or]; $url = $cdnserver . "/{$gameIdToCodes[$gid]}/index.html?" . http_build_query($params).'&iu=true&legalLang=true'; // https://jj.pgn-nmu2nd.com/mcp/index.html?ssoKey=1e790573d14d23bf6c3c330e3edeef8a1d8b3cae&lang=en-US&legalLang=true&gameId=302&gs=moc.dn2umn-ngp.jj&domain_platform=moc.dn2umn-ngp.jj&domain_gs=semagilij&be=moc.dn2umn-ngp.jj&iu=true&apiId=2&demo=true $trans="no-rotated-iframe-container"; $posClass = "defaultPos"; $iconClass="widthIcon"; if(in_array($gid,[49,403])){ $iconClass="heightIcon"; if (strpos(strtolower($request->header('User-Agent')), 'iphone') !== false) { $posClass = "iosPos"; $iconClass="widthIcon"; $trans="rotated-iframe-container"; } } $leaveUrl=$request->getSchemeAndHttpHost().'/api/jiligames/leave?UserID='.$userid; echo ' JiliGames
'; return ""; } private function convertString($input) { return strrev($input); } }