携帯にはなかったので、やってみました。
data/class/pages/mypage/LC_Page_Mypage_DeliveryAddr.php
switch ($this->getMode()) {
// 入力は必ずedit
case 'edit':
// added
if (SC_Display_Ex::detectDevice() === DEVICE_TYPE_MOBILE) {
// 携帯:住所自動入力
if (isset($_POST['submit_address'])) {
// 入力エラーチェック
$this->arrErr = $this->lfCheckErrorZip($_POST);
// 入力エラーの場合は終了
if (count($this->arrErr) == 0) {
// 郵便番号検索文作成
$zipcode = $_POST['zip01'] . $_POST['zip02'];
// 郵便番号検索
$arrAdsList = SC_Utils_Ex::sfGetAddress($zipcode);
// 郵便番号が発見された場合
if (!empty($arrAdsList)) {
$this->arrForm['pref'] = $arrAdsList[0]['state'];
$this->arrForm['addr01'] = $arrAdsList[0]['city']. $arrAdsList[0]['town'];
// 該当無し
} else {
$this->arrErr['zip01'] = '※該当する住所が見つかりませんでした。<br>';
}
}
break;
}
}
// added
$this->arrErr = $objAddress->errorCheck($objFormParam);
// 入力エラーなし
// added
/**
* 入力エラーのチェック.
*
* @param array $arrRequest リクエスト値($_GET)
* @return array $arrErr エラーメッセージ配列
*/
function lfCheckErrorZip($arrRequest) {
// パラメーター管理クラス
$objFormParam = new SC_FormParam_Ex();
// パラメーター情報の初期化
$objFormParam->addParam('郵便番号1', 'zip01', ZIP01_LEN, 'n', array('EXIST_CHECK', 'NUM_COUNT_CHECK', 'NUM_CHECK'));
$objFormParam->addParam('郵便番号2', 'zip02', ZIP02_LEN, 'n', array('EXIST_CHECK', 'NUM_COUNT_CHECK', 'NUM_CHECK'));
// // リクエスト値をセット
$arrData['zip01'] = $arrRequest['zip01'];
$arrData['zip02'] = $arrRequest['zip02'];
$objFormParam->setParam($arrData);
// エラーチェック
$arrErr = $objFormParam->checkError();
return $arrErr;
}
// added
data/Smarty/templates/mobile/mypage/delivery_addr.tpl
【郵便番号】<font color="#FF0000">*</font><br>
<font color="#FF0000"><!--{$arrErr[$key1]}--><!--{$arrErr[$key2]}--></font>
<!--{assign var="size1" value="`$smarty.const.ZIP01_LEN+2`"}-->
<!--{assign var="size2" value="`$smarty.const.ZIP02_LEN+2`"}-->
<input size="<!--{$size1}-->" type="text" name="zip01" value="<!--{if $arrForm.zip01 != ""}--><!--{$arrForm.zip01|h}--><!--{else}--><!--{$zip01|h}--><!--{/if}-->" maxlength="<!--{$smarty.const.ZIP01_LEN}-->" istyle="4">
-
<input size="<!--{$size2}-->" type="text" name="zip02" value="<!--{if $arrForm.zip02 != ""}--><!--{$arrForm.zip02|h}--><!--{else}--><!--{$zip02|h}--><!--{/if}-->" maxlength="<!--{$smarty.const.ZIP02_LEN}-->" istyle="4"><br>
<!--{* added *}-->
<input type="submit" name="submit_address" value="自動住所入力"><br>
郵便番号を入力後、クリックしてください。<br>
<!--{* added *}-->