/** * Page のプロセス. * * @return void */ function process() { // 認証可否の判定 SC_Utils_Ex::sfIsSuccess(new SC_Session()); $objView = new SC_AdminView_Ex(); $objView->assignobj($this); $objView->display(MAIN_FRAME); }
/** * Page のプロセス. * * @return void */ public function process($mode) { $objLog = new LC_Upgrade_Helper_Log(); $objJson = new LC_Upgrade_Helper_Json(); $objLog->start($mode); // 管理画面ログインチェック $objLog->log('* admin auth start'); if ($this->isLoggedInAdminPage() !== true) { $objJson->setError(OSTORE_E_C_ADMIN_AUTH); $objJson->display(); $objLog->error(OSTORE_E_C_ADMIN_AUTH); return; } // 認証キーの取得 $public_key = $this->getPublicKey(); $sha1_key = $this->createSeed(); $objLog->log('* public key check start'); if (empty($public_key)) { $objJson->setError(OSTORE_E_C_NO_KEY); $objJson->display(); $objLog->error(OSTORE_E_C_NO_KEY); return; } // リクエストを開始 $objLog->log('* http request start'); $arrPostData = array('eccube_url' => HTTP_URL, 'public_key' => sha1($public_key . $sha1_key), 'sha1_key' => $sha1_key, 'ver' => ECCUBE_VERSION); $objReq = $this->request('products_list', $arrPostData); // リクエストチェック $objLog->log('* http request check start'); if (PEAR::isError($objReq)) { $objJson->setError(OSTORE_E_C_HTTP_REQ); $objJson->display(); $objLog->error(OSTORE_E_C_HTTP_REQ, $objReq); return; } // レスポンスチェック $objLog->log('* http response check start'); if ($objReq->getResponseCode() !== 200) { $objJson->setError(OSTORE_E_C_HTTP_RESP); $objJson->display(); $objLog->error(OSTORE_E_C_HTTP_RESP, $objReq); return; } $body = $objReq->getResponseBody(); $objRet = $objJson->decode($body); // JSONデータのチェック $objLog->log('* json deta check start'); if (empty($objRet)) { $objJson->setError(OSTORE_E_C_FAILED_JSON_PARSE); $objJson->display(); $objLog->error(OSTORE_E_C_FAILED_JSON_PARSE, $objReq); return; } // ステータスチェック $objLog->log('* json status check start'); if ($objRet->status === OSTORE_STATUS_SUCCESS) { $objLog->log('* get products list ok'); $arrProducts = array(); foreach ($objRet->data as $product) { $arrProducts[] = get_object_vars($product); } $objView = new SC_AdminView_Ex(); $objView->assign('arrProducts', $arrProducts); $template = 'ownersstore/products_list.tpl'; if (!$objView->_smarty->template_exists($template)) { $objLog->log('* template not exist, use default template'); // デフォルトテンプレートを使用 $template = DATA_REALDIR . 'Smarty/templates/default/admin/' . $template; } $html = $objView->fetch('ownersstore/products_list.tpl'); $objJson->setSuccess(array(), $html); $objJson->display(); $objLog->end(); return; } else { // 配信サーバー側でエラーを補足 echo $body; $objLog->error($objRet->errcode, $objReq); return; } }
/** * Page のプロセス. * * POST パラメーター "mode" が register の場合は登録処理を行う. * 登録処理の後, 自ページをリロードし, GET パラメーター "mode" を付与する. * 登録に成功し, GET パラメーター "mode" の値が success の場合は * 「登録に成功しました」というメッセージをポップアップで表示する. * 登録に失敗し, GET パラメーター "mode" の値が failure の場合は * 「登録に失敗しました」というメッセージをポップアップで表示する. * * TODO Transaction Token を使用する * * @return void */ function process() { // 認証可否の判定 SC_Utils_Ex::sfIsSuccess(new SC_Session()); switch ($_POST["mode"]) { case "register": if ($this->register($_POST['ga_ua'])) { SC_Response_Ex::reload(array("mode" => "success"), true); exit; } else { SC_Response_Ex::reload(array("mode" => "failure"), true); exit; } break; default: } switch ($_GET["mode"]) { case "success": $this->tpl_onload .= "window.alert('登録に成功しました。');"; break; case "failure": $this->tpl_onload .= "window.alert('登録に失敗しました。');"; break; default: } $objView = new SC_AdminView_Ex(); $objView->assignobj($this); $objView->display(MAIN_FRAME); }