SOY CMS / SOY Shop

ブログトップ

SOY Shopプラグインの解説 ユーザカスタムフィールド3

2014年03月02日

前回のユーザカスタムフィールドの入力した値の確認の表示についてを書きました。

今回は注文確定時のデータの保存についてを見ていきます。

SOY Shopプラグインの解説 ユーザカスタムフィールド2





Cart04ページでご注文を確定した直後に、

soyshop.user.customfield.phpのregister関数が呼ばれます。


function register($mypage, $userId){
	$this->prepare();

	foreach($this->list as $obj){

		//途中省略

		$object = new SOYShop_UserAttribute();
		$object->setUserId($userId);
		$object->setFieldId($obj->getFieldId());
		$object->setValue($value);

		try{
			$this->dao->insert($object);
		}catch(Exception $e){
			error_log(var_export($e,true));
		}

		//管理画面モード以外はセッションを削除
		if(isset($mypage)){
			$key = self::getAttributeKey($obj->getFieldId());
			$mypage->clearAttribute($key);
		}
	}
}

ユーザカスタムフィールド関数では、フォームで登録した際にセッションに入れた値を呼び出し、

データベースに値を挿入した後にセッションから値を削除しています。




残りのclear関数は、Cart02ページのお客様情報からCart01ページのカートの確認の際に呼ばれ、

ユーザカスタムフィールド(common_user_customfield)では何も処理を行いません。