public function facebooksigninAction()
 {
     $VTs = new clsSystem();
     //先初始化
     $VTs->initialization('oauth');
     //-----------BI開始------------
     //設定資訊陣列
     $uidInfo = array();
     $uidInfo["status"] = false;
     //接收已於Google驗證好的資料
     if ($_POST["authResponse"]["accessToken"]) {
         //1. 先與Google做AccessToken的認證
         $url = "https://graph.facebook.com/v2.5/me?access_token=" . $_POST["authResponse"]["accessToken"];
         $facebookLoginInfo = $VTs->Json2Data($VTs->UrlDataGet($url));
         $facebookUserID = $facebookLoginInfo->id;
         $facebookUserName = $facebookLoginInfo->name;
         //$VTs->debug($facebookLoginInfo);
         //exit();
         //1-1. 確認認證無誤
         if ($facebookUserID) {
             //2. 執行查詢看資料庫是否已有新增過
             //執行查詢
             $strSQL = "select * from thirdparty_oauth where thirdparty_uid = '" . $facebookUserID . "'";
             $data = $VTs->QueryData($strSQL);
             //2-1. 沒有新增過,準備新增
             if (empty($data)) {
                 //執行新增
                 $strSQL = "insert into thirdparty_oauth(thirdparty_uid,userName,oauth_type, approveCode, approveStatus) values('" . $facebookUserID . "','" . $facebookUserName . "',1,'1234',0)";
                 $VTs->ExecuteNonQuery($strSQL);
                 //2-2. 重新執行查詢,並取得UUID
                 $strSQL = "select * from thirdparty_oauth where thirdparty_uid='" . $facebookUserID . "'";
                 $data = $VTs->QueryData($strSQL);
             }
             $uuid = $data[0]["uuid"];
             //驗證USER是否已存在Token
             $strSQL = "select uuid from token where uuid='" . $uuid . "'";
             $TokenData = $VTs->QueryData($strSQL);
             //產生Token,會回傳Login_Code、Access_Token
             $loginArr = $VTs->CreatLoginCodeAndToken($uuid);
             //存到Token資料表中,以供後續Oauth使用
             if ($uuid) {
                 if (empty($TokenData)) {
                     $strSQL = "insert into token(uuid,login_code,access_token,login_from,login_type) values('" . $uuid . "','" . $loginArr["Login_Code"] . "','" . $loginArr["Access_Token"] . "','" . $_SERVER["REMOTE_ADDR"] . "',1)";
                 } else {
                     $strSQL = "update token set login_code='" . $loginArr["Login_Code"] . "',access_token='" . $loginArr["Access_Token"] . "',login_from='" . $_SERVER["REMOTE_ADDR"] . "',login_date='" . date("Y-m-d H:i:s") . "' where uuid='" . $uuid . "'";
                 }
             } else {
                 echo "System error";
                 exit;
             }
             //確定存取Token到資料表中
             $VTs->QueryData($strSQL);
             //紀錄SESSION
             $_SESSION["uuid"] = $uuid;
             $_SESSION["name"] = $data[0]["userName"];
             $_SESSION["mail"] = $data[0]["userMail"];
             $_SESSION["LoginCode"] = $loginArr["Login_Code"];
             $uidInfo["LoginCode"] = $loginArr["Login_Code"];
             $uidInfo["status"] = true;
         } else {
             //1-2. 未通過驗證
             $uidInfo["error"] = 'The Accound is not Sing up!';
             $uidInfo["code"] = '6';
         }
     } else {
         $uidInfo["error"] = 'You did not have Facebook access token!';
         $uidInfo["code"] = '5';
     }
     $this->viewContnet['pageContent'] = $VTs->Data2Json($uidInfo);
     //-----------BI結束------------
     //關閉資料庫連線
     $VTs->DBClose();
     //釋放
     $VTs = null;
     return new ViewModel($this->viewContnet);
 }