Changeset 11730 for branches/comu/html/cp/default/application.php
- Timestamp:
- 2007/03/11 06:27:25 (19 years ago)
- File:
-
- 1 edited
-
branches/comu/html/cp/default/application.php (modified) (13 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/comu/html/cp/default/application.php
r11729 r11730 7 7 require_once("../../require.php"); 8 8 9 //---- ページ表示クラス9 //---- ¥Ú¡¼¥¸É½¼¨¥¯¥é¥¹ 10 10 class LC_Page { 11 11 … … 13 13 $this->tpl_mainpage = TEMPLATE_DIR . '/campaign/application.tpl'; 14 14 /* 15 session_start 時のno-cacheヘッダーを抑制することで16 「戻る」ボタン使用時の有効期限切れ表示を抑制する。17 private-no-expire: クライアントのキャッシュを許可する。15 session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç 16 ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤Î͸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£ 17 private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£ 18 18 */ 19 19 session_cache_limiter('private-no-expire'); … … 26 26 $objCustomer = new SC_Customer(); 27 27 $objCampaignSess = new SC_CampaignSession(); 28 // クッキー管理クラス28 // ¥¯¥Ã¥¡¼´ÉÍý¥¯¥é¥¹ 29 29 $objCookie = new SC_Cookie(COOKIE_EXPIRE); 30 30 31 $objLoginFormParam = new SC_FormParam(); // ログインフォーム用32 lfInitLoginFormParam(); // 初期設定33 $objLoginFormParam->setParam($_POST); // POST 値の取得34 35 // ディレクトリ名を取得31 $objLoginFormParam = new SC_FormParam(); // ¥í¥°¥¤¥ó¥Õ¥©¡¼¥àÍÑ 32 lfInitLoginFormParam(); // ½é´üÀßÄê 33 $objLoginFormParam->setParam($_POST); // POSTÃͤμèÆÀ 34 35 // ¥Ç¥£¥ì¥¯¥È¥ê̾¤ò¼èÆÀ 36 36 $dir_name = dirname($_SERVER['PHP_SELF']); 37 37 $arrDir = split('/', $dir_name); 38 38 $dir_name = $arrDir[count($arrDir) -1]; 39 39 40 /* セッションにキャンペーンデータを書き込む*/41 // キャンペーンからの遷移という情報を保持40 /* ¥»¥Ã¥·¥ç¥ó¤Ë¥¥ã¥ó¥Ú¡¼¥ó¥Ç¡¼¥¿¤ò½ñ¤¹þ¤à */ 41 // ¥¥ã¥ó¥Ú¡¼¥ó¤«¤é¤ÎÁ«°Ü¤È¤¤¤¦¾ðÊó¤òÊÝ»ý 42 42 $objCampaignSess->setIsCampaign(); 43 // キャンペーンIDを保持43 // ¥¥ã¥ó¥Ú¡¼¥óID¤òÊÝ»ý 44 44 $campaign_id = $objQuery->get("dtb_campaign", "campaign_id", "directory_name = ? AND del_flg = 0", array($dir_name)); 45 45 $objCampaignSess->setCampaignId($campaign_id); 46 // キャンペーンディレクトリ名を保持46 // ¥¥ã¥ó¥Ú¡¼¥ó¥Ç¥£¥ì¥¯¥È¥ê̾¤òÊÝ»ý 47 47 $objCampaignSess->setCampaignDir($dir_name); 48 48 49 // キャンペーンが開催中かをチェック49 // ¥¥ã¥ó¥Ú¡¼¥ó¤¬³«ºÅÃæ¤«¤ò¥Á¥§¥Ã¥¯ 50 50 if(lfCheckActive($dir_name)) { 51 51 $status = CAMPAIGN_TEMPLATE_ACTIVE; … … 57 57 58 58 switch($_POST['mode']) { 59 // ログインチェック59 // ¥í¥°¥¤¥ó¥Á¥§¥Ã¥¯ 60 60 case 'login': 61 61 $objLoginFormParam->toLower('login_email'); 62 62 $objPage->arrErr = $objLoginFormParam->checkError(); 63 63 $arrForm = $objLoginFormParam->getHashArray(); 64 // クッキー保存判定64 // ¥¯¥Ã¥¡¼ÊݸȽÄê 65 65 if($arrForm['login_memory'] == "1" && $arrForm['login_email'] != "") { 66 66 $objCookie->setCookie('login_email', $_POST['login_email']); … … 70 70 71 71 if(count($objPage->arrErr) == 0) { 72 // ログイン判定72 // ¥í¥°¥¤¥óȽÄê 73 73 if(!$objCustomer->getCustomerDataFromEmailPass($arrForm['login_pass'], $arrForm['login_email'])) { 74 // 仮登録の判定74 // ²¾ÅÐÏ¿¤ÎȽÄê 75 75 $objQuery = new SC_Query; 76 76 $where = "email = ? AND status = 1 AND del_flg = 0"; … … 83 83 } 84 84 } else { 85 // 重複申込チェック85 // ½ÅÊ£¿½¹þ¥Á¥§¥Ã¥¯ 86 86 $orverlapping_flg = $objQuery->get("dtb_campaign", "orverlapping_flg", "campaign_id = ?", array($objCampaignSess->getCampaignId())); 87 87 88 88 if($orverlapping_flg) { 89 89 if(lfOverlappingCheck($objCustomer->getValue('customer_id'))) { 90 $objPage->arrErr['login_email'] = " ※ 複数回ご応募することは出来ません。";90 $objPage->arrErr['login_email'] = "¢¨ Ê£¿ô²ó¤´±þÊ礹¤ë¤³¤È¤Ï½ÐÍè¤Þ¤»¤ó¡£"; 91 91 } 92 92 } 93 93 94 94 if(count($objPage->arrErr) == 0) { 95 // 申込情報を登録95 // ¿½¹þ¾ðÊó¤òÅÐÏ¿ 96 96 lfRegistCampaignOrder($objCustomer->getValue('customer_id')); 97 // 完了ページへリダイレクト97 // ´°Î»¥Ú¡¼¥¸¤Ø¥ê¥À¥¤¥ì¥¯¥È 98 98 header("location: ". CAMPAIGN_URL . "$dir_name/complete.php"); 99 99 } … … 104 104 break; 105 105 } 106 // 入力情報を渡す106 // ÆþÎϾðÊó¤òÅϤ¹ 107 107 $objPage->arrForm = $_POST; 108 108 $objPage->dir_name = $dir_name; 109 109 $objPage->tpl_dir_name = CAMPAIGN_TEMPLATE_PATH . $dir_name . "/" . $status; 110 110 111 //---- ページ表示111 //----¡¡¥Ú¡¼¥¸É½¼¨ 112 112 $objView->assignobj($objPage); 113 113 $objView->display($objPage->tpl_mainpage); … … 117 117 118 118 /* 119 * 関数名:lfInitLoginFormParam()120 * 説明 :ログインフォームを初期化121 * 戻り値:無し119 * ´Ø¿ô̾¡§lfInitLoginFormParam() 120 * ÀâÌÀ¡¡¡§¥í¥°¥¤¥ó¥Õ¥©¡¼¥à¤ò½é´ü²½ 121 * Ìá¤êÃÍ¡§Ìµ¤· 122 122 */ 123 123 function lfInitLoginFormParam() { 124 124 global $objLoginFormParam; 125 $objLoginFormParam->addParam(" 記憶する", "login_memory", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));126 $objLoginFormParam->addParam(" メールアドレス", "login_email", STEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));127 $objLoginFormParam->addParam(" パスワード", "login_pass", STEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));128 } 129 130 /* 131 * 関数名:lfCheckActive()132 * 引数1 :ディレクトリ名133 * 説明 :キャンペーン中かチェック134 * 戻り値:キャンペーン中なら true 終了ならfalse125 $objLoginFormParam->addParam("µ²±¤¹¤ë", "login_memory", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 126 $objLoginFormParam->addParam("¥á¡¼¥ë¥¢¥É¥ì¥¹", "login_email", STEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK")); 127 $objLoginFormParam->addParam("¥Ñ¥¹¥ï¡¼¥É", "login_pass", STEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK")); 128 } 129 130 /* 131 * ´Ø¿ô̾¡§lfCheckActive() 132 * °ú¿ô1 ¡§¥Ç¥£¥ì¥¯¥È¥ê̾ 133 * ÀâÌÀ¡¡¡§¥¥ã¥ó¥Ú¡¼¥óÃæ¤«¥Á¥§¥Ã¥¯ 134 * Ìá¤êÃÍ¡§¥¥ã¥ó¥Ú¡¼¥óÃæ¤Ê¤é true ½ªÎ»¤Ê¤é false 135 135 */ 136 136 function lfCheckActive($directory_name) { … … 142 142 $arrRet = $objQuery->select($col, "dtb_campaign", "directory_name = ? AND del_flg = 0", array($directory_name)); 143 143 144 // 開始日時・停止日時を成型144 // ³«»ÏÆü»þ¡¦Ää»ßÆü»þ¤òÀ®·¿ 145 145 $start_date = (date("YmdHis", strtotime($arrRet[0]['start_date']))); 146 146 $end_date = (date("YmdHis", strtotime($arrRet[0]['end_date']))); 147 147 $now_date = (date("YmdHis")); 148 148 149 // キャンペーンが開催期間で、かつ申込制限内である149 // ¥¥ã¥ó¥Ú¡¼¥ó¤¬³«ºÅ´ü´Ö¤Ç¡¢¤«¤Ä¿½¹þÀ©¸ÂÆâ¤Ç¤¢¤ë 150 150 if($now_date > $start_date && $now_date < $end_date 151 151 && ($arrRet[0]['limit_count'] > $arrRet[0]['total_count'] || $arrRet[0]['limit_count'] < 1)) { … … 157 157 158 158 /* 159 * 関数名:lfRegistCampaignOrder()160 * 説明 :キャンペーン受注情報を保存161 * 引数1 :顧客ID162 * 戻り値:無し159 * ´Ø¿ô̾¡§lfRegistCampaignOrder() 160 * ÀâÌÀ¡¡¡§¥¥ã¥ó¥Ú¡¼¥ó¼õÃí¾ðÊó¤òÊݸ 161 * °ú¿ô1 ¡§¸ÜµÒID 162 * Ìá¤êÃÍ¡§Ìµ¤· 163 163 */ 164 164 function lfRegistCampaignOrder($customer_id) { … … 168 168 $campaign_id = $objCampaignSess->getCampaignId(); 169 169 170 // 受注データを取得170 // ¼õÃí¥Ç¡¼¥¿¤ò¼èÆÀ 171 171 $cols = " 172 172 customer_id, … … 201 201 $sqlval['create_date'] = 'now()'; 202 202 203 // INSERT の実行203 // INSERT¤Î¼Â¹Ô 204 204 $objQuery->insert("dtb_campaign_order", $sqlval); 205 205 206 // 申し込み数の更新206 // ¿½¤·¹þ¤ß¿ô¤Î¹¹¿· 207 207 $total_count = $objQuery->get("dtb_campaign", "total_count", "campaign_id = ?", array($campaign_id)); 208 208 $arrCampaign['total_count'] = $total_count += 1; … … 212 212 213 213 /* 214 * 関数名:lfOverlappingCheck()215 * 説明 :重複応募チェック216 * 引数1 :顧客ID217 * 戻り値:フラグ (重複があったら true 重複がなかったらfalse)214 * ´Ø¿ô̾¡§lfOverlappingCheck() 215 * ÀâÌÀ¡¡¡§½ÅÊ£±þÊç¥Á¥§¥Ã¥¯ 216 * °ú¿ô1 ¡§¸ÜµÒID 217 * Ìá¤êÃÍ¡§¥Õ¥é¥° (½ÅÊ£¤¬¤¢¤Ã¤¿¤é true ½ÅÊ£¤¬¤Ê¤«¤Ã¤¿¤é false) 218 218 */ 219 219 function lfOverlappingCheck($customer_id) {
Note: See TracChangeset
for help on using the changeset viewer.
