本文整理汇总了PHP中SC_Helper_Customer_Ex::sfCustomerOtherDelivParam方法的典型用法代码示例。如果您正苦于以下问题:PHP SC_Helper_Customer_Ex::sfCustomerOtherDelivParam方法的具体用法?PHP SC_Helper_Customer_Ex::sfCustomerOtherDelivParam怎么用?PHP SC_Helper_Customer_Ex::sfCustomerOtherDelivParam使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SC_Helper_Customer_Ex
的用法示例。
在下文中一共展示了SC_Helper_Customer_Ex::sfCustomerOtherDelivParam方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: action
/**
* Page のAction.
*
* @return void
*/
function action()
{
$objCustomer = new SC_Customer_Ex();
$ParentPage = MYPAGE_DELIVADDR_URLPATH;
// GETでページを指定されている場合には指定ページに戻す
if (isset($_GET['page'])) {
$ParentPage = htmlspecialchars($_GET['page'], ENT_QUOTES);
} else {
if (isset($_POST['ParentPage'])) {
$ParentPage = htmlspecialchars($_POST['ParentPage'], ENT_QUOTES);
}
}
$this->ParentPage = $ParentPage;
/*
* ログイン判定 及び 退会判定
* 未ログインでも, 複数配送設定ページからのアクセスの場合は表示する
*
* TODO 購入遷移とMyPageで別クラスにすべき
*/
if (!$objCustomer->isLoginSuccess(true) && $ParentPage != MULTIPLE_URLPATH) {
$this->tpl_onload = "fnUpdateParent('" . $this->getLocation($_POST['ParentPage']) . "'); window.close();";
}
// other_deliv_id のあるなしで追加か編集か判定しているらしい
$_SESSION['other_deliv_id'] = $_REQUEST['other_deliv_id'];
// パラメーター管理クラス,パラメーター情報の初期化
$objFormParam = new SC_FormParam_Ex();
SC_Helper_Customer_Ex::sfCustomerOtherDelivParam($objFormParam);
$objFormParam->setParam($_POST);
$this->arrForm = $objFormParam->getHashArray();
switch ($this->getMode()) {
// 入力は必ずedit
case 'edit':
$this->arrErr = SC_Helper_Customer_Ex::sfCustomerOtherDelivErrorCheck($objFormParam);
// 入力エラーなし
if (empty($this->arrErr)) {
// TODO ここでやるべきではない
if (in_array($_POST['ParentPage'], $this->validUrl)) {
$this->tpl_onload = "fnUpdateParent('" . $this->getLocation($_POST['ParentPage']) . "'); window.close();";
} else {
SC_Utils_Ex::sfDispSiteError(CUSTOMER_ERROR);
}
if ($objCustomer->isLoginSuccess(true)) {
$this->lfRegistData($objFormParam, $objCustomer->getValue("customer_id"));
} else {
$this->lfRegistDataNonMember($objFormParam);
}
if (SC_Display_Ex::detectDevice() === DEVICE_TYPE_MOBILE) {
// モバイルの場合、元のページに遷移
SC_Response_Ex::sendRedirect($this->getLocation($_POST['ParentPage']));
exit;
}
}
break;
case 'multiple':
// 複数配送先用
break;
default:
if ($_GET['other_deliv_id'] != "") {
$arrOtherDeliv = $this->lfGetOtherDeliv($objCustomer->getValue("customer_id"), $_SESSION['other_deliv_id']);
//不正アクセス判定
if (!$objCustomer->isLoginSuccess(true) || count($arrOtherDeliv) == 0) {
SC_Utils_Ex::sfDispSiteError(CUSTOMER_ERROR);
}
//別のお届け先情報取得
$this->arrForm = $arrOtherDeliv[0];
}
break;
}
if (SC_Display_Ex::detectDevice() === DEVICE_TYPE_MOBILE) {
$this->tpl_mainpage = 'mypage/delivery_addr.tpl';
} else {
$this->setTemplate('mypage/delivery_addr.tpl');
}
}