/** * Page のアクション. * * @return void */ function action() { $objDb = new SC_Helper_DB_Ex(); $mode = $this->getMode(); if (!empty($_POST)) { $objFormParam = new SC_FormParam_Ex(); $objFormParam->setParam($_POST); $this->arrErr = $this->lfCheckError($mode, $objFormParam); if (!empty($this->arrErr['deliv_id'])) { SC_Utils_Ex::sfDispException(); return; } } switch ($mode) { case 'delete': // ランク付きレコードの削除 $objDb->sfDeleteRankRecord("dtb_deliv", "deliv_id", $_POST['deliv_id']); $this->objDisplay->reload(); // PRG pattern break; case 'up': $objDb->sfRankUp("dtb_deliv", "deliv_id", $_POST['deliv_id']); $this->objDisplay->reload(); // PRG pattern break; case 'down': $objDb->sfRankDown("dtb_deliv", "deliv_id", $_POST['deliv_id']); $this->objDisplay->reload(); // PRG pattern break; default: break; } $this->arrDelivList = $this->lfGetDelivList(); }
/** * Page のプロセス. * * @return void */ function process() { $conn = new SC_DBConn(); $objView = new SC_AdminView(); $objSess = new SC_Session(); $objDb = new SC_Helper_DB_Ex(); // 認証可否の判定 SC_Utils_Ex::sfIsSuccess($objSess); if (!isset($_POST['mode'])) { $_POST['mode'] = ""; } switch ($_POST['mode']) { case 'delete': // ランク付きレコードの削除 $objDb->sfDeleteRankRecord("dtb_payment", "payment_id", $_POST['payment_id']); // 再表示 $this->reload(); break; case 'up': $objDb->sfRankUp("dtb_payment", "payment_id", $_POST['payment_id']); // 再表示 $this->reload(); break; case 'down': $objDb->sfRankDown("dtb_payment", "payment_id", $_POST['payment_id']); // 再表示 $this->reload(); break; } $this->arrDelivList = $objDb->sfGetIDValueList("dtb_deliv", "deliv_id", "service_name"); $this->arrPaymentListFree = $this->lfGetPaymentList(2); $objView->assignobj($this); $objView->display(MAIN_FRAME); }
function action() { $objDb = new SC_Helper_DB_Ex(); $objFormParam = new SC_FormParam_Ex(); $this->lfInitParam($objFormParam); $objFormParam->setParam($_POST); $objFormParam->convParam(); $this->tpl_questionnaire_id = $objFormParam->getValue('questionnaire_id'); $mode = $this->getMode(); switch ($mode) { case 'csv': if (is_numeric($this->tpl_questionnaire_id)) { $this->lfDoCSV($this->tpl_questionnaire_id); } break; case 'delete': if (is_numeric($this->tpl_questionnaire_id)) { $objDb->sfDeleteRankRecord('dtb_questionnaire', 'questionnaire_id', $this->tpl_questionnaire_id); $this->objDisplay->reload(); } break; case 'pre_edit': if (is_numeric($this->tpl_questionnaire_id)) { $arrContents = reset($this->lfGetContents($this->tpl_questionnaire_id)); $arrContents['question'] = unserialize($arrContents['question']); $objFormParam->setParam($arrContents); } break; //---- 新規登録/編集登録 //---- 新規登録/編集登録 case 'confirm': $this->arrErr = $this->lfCheckError($objFormParam); if (SC_Utils_Ex::isBlank($this->arrErr)) { // IDの値がPOSTされて来た場合は既存データの編集とみなす $member_id = $_SESSION['member_id']; $this->lfRegistData($objFormParam, $member_id, $this->tpl_questionnaire_id); $this->tpl_onload = "window.alert('登録が完了しました');"; } break; default: break; } $this->arrForm = $objFormParam->getFormParamList(); $this->arrContents = $this->lfGetContents(); }
/** * Page のプロセス. * * @return void */ function process() { $conn = new SC_DBConn(); $objView = new SC_AdminView(); $objSess = new SC_Session(); $objQuery = new SC_Query(); $objDb = new SC_Helper_DB_Ex(); // 認証可否の判定 SC_Utils_Ex::sfIsSuccess($objSess); if (!isset($_POST['mode'])) { $_POST['mode'] = ""; } switch ($_POST['mode']) { case 'delete': // ランク付きレコードの削除 $objDb->sfDeleteRankRecord("dtb_deliv", "deliv_id", $_POST['deliv_id']); // 再表示 SC_Utils_Ex::sfReload(); break; case 'up': $objDb->sfRankUp("dtb_deliv", "deliv_id", $_POST['deliv_id']); // 再表示 SC_Utils_Ex::sfReload(); break; case 'down': $objDb->sfRankDown("dtb_deliv", "deliv_id", $_POST['deliv_id']); // 再表示 SC_Utils_Ex::sfReload(); break; default: break; } // 配送業者一覧の取得 $col = "deliv_id, name, service_name"; $where = "del_flg = 0"; $table = "dtb_deliv"; $objQuery->setorder("rank DESC"); $this->arrDelivList = $objQuery->select($col, $table, $where); $objView->assignobj($this); $objView->display(MAIN_FRAME); }
/** * Page のアクション. * * @return void */ function action() { $objDb = new SC_Helper_DB_Ex(); $mode = $this->getMode(); if (!empty($_POST)) { $objFormParam = new SC_FormParam_Ex(); $objFormParam->addParam('配送業者ID', 'payment_id', INT_LEN, 'n', array('NUM_CHECK', 'MAX_LENGTH_CHECK')); $objFormParam->setParam($_POST); $objFormParam->convParam(); $arrErr = $objFormParam->checkError(); if (!empty($this->arrErr['payment_id'])) { trigger_error('', E_USER_ERROR); return; } $post = $objFormParam->getHashArray(); } switch ($this->getMode()) { case 'delete': // ランク付きレコードの削除 $objDb->sfDeleteRankRecord('dtb_payment', 'payment_id', $post['payment_id']); // 再表示 $this->objDisplay->reload(); break; case 'up': $objDb->sfRankUp('dtb_payment', 'payment_id', $post['payment_id']); // 再表示 $this->objDisplay->reload(); break; case 'down': $objDb->sfRankDown('dtb_payment', 'payment_id', $post['payment_id']); // 再表示 $this->objDisplay->reload(); break; } $this->arrDelivList = $objDb->sfGetIDValueList('dtb_deliv', 'deliv_id', 'service_name'); $this->arrPaymentListFree = $this->lfGetPaymentList(); }
/** * Page のプロセス. * * @return void */ function process() { $conn = new SC_DBConn(); $objView = new SC_AdminView(); $objQuery = new SC_Query(); $objDb = new SC_Helper_DB_Ex(); // 認証可否の判定 $objSess = new SC_Session(); SC_Utils_Ex::sfIsSuccess($objSess); $get_check = false; // 規格IDのチェック if (SC_Utils_Ex::sfIsInt($_GET['class_id'])) { // 規格名の取得 $this->tpl_class_name = $objQuery->get("dtb_class", "name", "class_id = ?", array($_GET['class_id'])); if ($this->tpl_class_name != "") { // 規格IDの引き継ぎ $this->arrHidden['class_id'] = $_GET['class_id']; $get_check = true; } } if (!$get_check) { // 規格登録ページに飛ばす。 $this->sendRedirect($this->getLocation(URL_CLASS_REGIST)); exit; } if (!isset($_POST['mode'])) { $_POST['mode'] = ""; } if (isset($_POST['class_id'])) { if (!SC_Utils_Ex::sfIsInt($_POST['class_id'])) { SC_Utils_Ex::sfDispError(""); } } // 新規作成 or 編集 switch ($_POST['mode']) { // 登録ボタン押下 case 'edit': // POST値の引き継ぎ $this->arrForm = $_POST; // 入力文字の変換 $_POST = $this->lfConvertParam($_POST); // エラーチェック $this->arrErr = $this->lfErrorCheck(); if (count($this->arrErr) <= 0) { if ($_POST['classcategory_id'] == "") { $this->lfInsertClass(); // DBへの書き込み } else { $this->lfUpdateClass(); // DBへの書き込み } // 再表示 $this->reload($_GET['class_id']); //sfReload("class_id=" . $_GET['class_id']); } else { // POSTデータを引き継ぐ $this->tpl_classcategory_id = $_POST['classcategory_id']; } break; // 削除 // 削除 case 'delete': // ランク付きレコードの削除 $where = "class_id = " . SC_Utils_Ex::sfQuoteSmart($_POST['class_id']); $objDb->sfDeleteRankRecord("dtb_classcategory", "classcategory_id", $_POST['classcategory_id'], $where, true); break; // 編集前処理 // 編集前処理 case 'pre_edit': // 編集項目をDBより取得する。 $where = "classcategory_id = ?"; $name = $objQuery->get("dtb_classcategory", "name", $where, array($_POST['classcategory_id'])); // 入力項目にカテゴリ名を入力する。 $this->arrForm['name'] = $name; // POSTデータを引き継ぐ $this->tpl_classcategory_id = $_POST['classcategory_id']; break; case 'down': $where = "class_id = " . SC_Utils_Ex::sfQuoteSmart($_POST['class_id']); $objDb->sfRankDown("dtb_classcategory", "classcategory_id", $_POST['classcategory_id'], $where); break; case 'up': $where = "class_id = " . SC_Utils_Ex::sfQuoteSmart($_POST['class_id']); $objDb->sfRankUp("dtb_classcategory", "classcategory_id", $_POST['classcategory_id'], $where); break; default: break; } // 規格分類の読込 $where = "del_flg <> 1 AND class_id = ?"; $objQuery->setorder("rank DESC"); $this->arrClassCat = $objQuery->select("name, classcategory_id", "dtb_classcategory", $where, array($_GET['class_id'])); $objView->assignobj($this); $objView->display(MAIN_FRAME); }
/** * Page のプロセス. * * @return void */ function process() { $conn = new SC_DBConn(); $objView = new SC_AdminView(); $objSess = new SC_Session(); $objDb = new SC_Helper_DB_Ex(); // 認証可否の判定 SC_Utils_Ex::sfIsSuccess($objSess); // パラメータ管理クラス $this->objFormParam = new SC_FormParam(); // パラメータ情報の初期化 $this->lfInitParam(); // POST値の取得 $this->objFormParam->setParam($_POST); // 通常時は親カテゴリを0に設定する。 $this->arrForm['parent_category_id'] = isset($_POST['parent_category_id']) ? $_POST['parent_category_id'] : ""; if (!isset($_POST['mode'])) { $_POST['mode'] = ""; } switch ($_POST['mode']) { case 'edit': $this->objFormParam->convParam(); $arrRet = $this->objFormParam->getHashArray(); $this->arrErr = $this->lfCheckError($arrRet); if (count($this->arrErr) == 0) { if ($_POST['category_id'] == "") { $objQuery = new SC_Query(); $count = $objQuery->count("dtb_category"); if ($count < CATEGORY_MAX) { $this->lfInsertCat($_POST['parent_category_id']); } else { print "カテゴリの登録最大数を超えました。"; } } else { $this->lfUpdateCat($_POST['category_id']); } } else { $this->arrForm = array_merge($this->arrForm, $this->objFormParam->getHashArray()); $this->arrForm['category_id'] = $_POST['category_id']; } break; case 'pre_edit': // 編集項目のカテゴリ名をDBより取得する。 $oquery = new SC_Query(); $where = "category_id = ?"; $cat_name = $oquery->get("dtb_category", "category_name", $where, array($_POST['category_id'])); $description = $oquery->get("dtb_category", "description", $where, array($_POST['category_id'])); // 入力項目にカテゴリ名を入力する。 $this->arrForm['category_name'] = $cat_name; $this->arrForm['description'] = $description; // POSTデータを引き継ぐ $this->arrForm['category_id'] = $_POST['category_id']; break; case 'delete': $objQuery = new SC_Query(); // 子カテゴリのチェック $where = "parent_category_id = ? AND del_flg = 0"; $count = $objQuery->count("dtb_category", $where, array($_POST['category_id'])); if ($count != 0) { $this->arrErr['category_name'] = "※ 子カテゴリが存在するため削除できません。<br>"; } // 登録商品のチェック $table = "dtb_product_categories AS T1 LEFT JOIN dtb_products AS T2 ON T1.product_id = T2.product_id"; $where = "T1.category_id = ? AND T2.del_flg = 0"; $count = $objQuery->count($table, $where, array($_POST['category_id'])); if ($count != 0) { $this->arrErr['category_name'] = "※ カテゴリ内に商品が存在するため削除できません。<br>"; } if (!isset($this->arrErr['category_name'])) { // ランク付きレコードの削除(※処理負荷を考慮してレコードごと削除する。) $objDb->sfDeleteRankRecord("dtb_category", "category_id", $_POST['category_id'], "", true); } break; case 'up': $objQuery = new SC_Query(); $objQuery->begin(); $up_id = $this->lfGetUpRankID($objQuery, "dtb_category", "parent_category_id", "category_id", $_POST['category_id']); if ($up_id != "") { // 上のグループのrankから減算する数 $my_count = $this->lfCountChilds($objQuery, "dtb_category", "parent_category_id", "category_id", $_POST['category_id']); // 自分のグループのrankに加算する数 $up_count = $this->lfCountChilds($objQuery, "dtb_category", "parent_category_id", "category_id", $up_id); if ($my_count > 0 && $up_count > 0) { // 自分のグループに加算 $this->lfUpRankChilds($objQuery, "dtb_category", "parent_category_id", "category_id", $_POST['category_id'], $up_count); // 上のグループから減算 $this->lfDownRankChilds($objQuery, "dtb_category", "parent_category_id", "category_id", $up_id, $my_count); } } $objQuery->commit(); break; case 'down': $objQuery = new SC_Query(); $objQuery->begin(); $down_id = $this->lfGetDownRankID($objQuery, "dtb_category", "parent_category_id", "category_id", $_POST['category_id']); if ($down_id != "") { // 下のグループのrankに加算する数 $my_count = $this->lfCountChilds($objQuery, "dtb_category", "parent_category_id", "category_id", $_POST['category_id']); // 自分のグループのrankから減算する数 $down_count = $this->lfCountChilds($objQuery, "dtb_category", "parent_category_id", "category_id", $down_id); if ($my_count > 0 && $down_count > 0) { // 自分のグループから減算 $this->lfUpRankChilds($objQuery, "dtb_category", "parent_category_id", "category_id", $down_id, $my_count); // 下のグループに加算 $this->lfDownRankChilds($objQuery, "dtb_category", "parent_category_id", "category_id", $_POST['category_id'], $down_count); } } $objQuery->commit(); break; case 'tree': break; case 'csv': require_once CLASS_EX_PATH . "helper_extends/SC_Helper_CSV_Ex.php"; $objCSV = new SC_Helper_CSV_Ex(); // オプションの指定 $option = "ORDER BY rank DESC"; // CSV出力タイトル行の作成 $arrOutput = SC_Utils_Ex::sfSwapArray($objCSV->sfgetCsvOutput(5, " WHERE csv_id = 5 AND status = 1")); if (count($arrOutput) <= 0) { break; } $arrOutputCols = $arrOutput['col']; $arrOutputTitle = $arrOutput['disp_name']; $head = SC_Utils_Ex::sfGetCSVList($arrOutputTitle); $where = "del_flg = 0"; $data = $objCSV->lfGetCategoryCSV($where, $option, $arrval, $arrOutputCols); // CSVを送信する。 SC_Utils_Ex::sfCSVDownload($head . $data, 'category'); exit; break; default: $this->arrForm['parent_category_id'] = 0; break; } $this->arrList = $this->lfGetCat($this->arrForm['parent_category_id']); $this->arrTree = $objDb->sfGetCatTree($this->arrForm['parent_category_id']); $objView->assignobj($this); $objView->display(MAIN_FRAME); }
/** * Page のプロセス. * * @return void */ function process() { $conn = new SC_DBConn(); $objView = new SC_AdminView(); $objSess = new SC_Session(); $objQuery = new SC_Query(); $objDb = new SC_Helper_DB_Ex(); // 認証可否の判定 SC_Utils_Ex::sfIsSuccess($objSess); if (!isset($_POST['mode'])) { $_POST['mode'] = ""; } // 要求判定 switch ($_POST['mode']) { // 編集処理 case 'edit': // POST値の引き継ぎ $this->arrForm = $_POST; // 入力文字の変換 $this->arrForm = $this->lfConvertParam($this->arrForm); // エラーチェック $this->arrErr = $this->lfErrorCheck(); if (count($this->arrErr) <= 0) { if ($_POST['class_id'] == "") { $this->lfInsertClass($this->arrForm); // 新規作成 } else { $this->lfUpdateClass($this->arrForm); // 既存編集 } // 再表示 $this->reload(); } else { // POSTデータを引き継ぐ $this->tpl_class_id = $_POST['class_id']; } break; // 削除 // 削除 case 'delete': $objDb->sfDeleteRankRecord("dtb_class", "class_id", $_POST['class_id'], "", true); $objQuery = new SC_Query(); $objQuery->delete("dtb_classcategory", "class_id = ?", $_POST['class_id']); // 再表示 $this->reload(); break; // 編集前処理 // 編集前処理 case 'pre_edit': // 編集項目をDBより取得する。 $where = "class_id = ?"; $class_name = $objQuery->get("dtb_class", "name", $where, array($_POST['class_id'])); // 入力項目にカテゴリ名を入力する。 $this->arrForm['name'] = $class_name; // POSTデータを引き継ぐ $this->tpl_class_id = $_POST['class_id']; break; case 'down': $objDb->sfRankDown("dtb_class", "class_id", $_POST['class_id']); // 再表示 $this->reload(); break; case 'up': $objDb->sfRankUp("dtb_class", "class_id", $_POST['class_id']); // 再表示 $this->reload(); break; default: break; } // 規格の読込 $where = "del_flg <> 1"; $objQuery->setorder("rank DESC"); $this->arrClass = $objQuery->select("name, class_id", "dtb_class", $where); $this->arrClassCatCount = SC_Utils_Ex::sfGetClassCatCount(); $objView->assignobj($this); $objView->display(MAIN_FRAME); }
/** * Page のプロセス. * * @return void */ function process() { $objView = new SC_AdminView(); $objDb = new SC_Helper_DB_Ex(); $objDate = new SC_Date(); // 登録・更新検索開始年 $objDate->setStartYear(RELEASE_YEAR); $objDate->setEndYear(DATE("Y")); $this->arrStartYear = $objDate->getYear(); $this->arrStartMonth = $objDate->getMonth(); $this->arrStartDay = $objDate->getDay(); // 登録・更新検索終了年 $objDate->setStartYear(RELEASE_YEAR); $objDate->setEndYear(DATE("Y")); $this->arrEndYear = $objDate->getYear(); $this->arrEndMonth = $objDate->getMonth(); $this->arrEndDay = $objDate->getDay(); // 認証可否の判定 $objSess = new SC_Session(); SC_Utils_Ex::sfIsSuccess($objSess); if (!isset($_POST['mode'])) { $_POST['mode'] = ""; } //キャンペーンの編集時 if (isset($_POST['campaign_id']) && SC_Utils_Ex::sfIsInt($_POST['campaign_id']) && $_POST['mode'] == "camp_search") { $objQuery = new SC_Query(); $search_data = $objQuery->get("dtb_campaign", "search_condition", "campaign_id = ? ", array($_POST['campaign_id'])); $arrSearch = unserialize($search_data); foreach ($arrSearch as $key => $val) { $_POST[$key] = $val; } } // POST値の引き継ぎ $this->arrForm = $_POST; // 検索ワードの引き継ぎ foreach ($_POST as $key => $val) { if (ereg("^search_", $key) || ereg("^campaign_", $key)) { switch ($key) { case 'search_product_flag': case 'search_status': $this->arrHidden[$key] = SC_Utils_Ex::sfMergeParamCheckBoxes($val); if (!is_array($val)) { $this->arrForm[$key] = split("-", $val); } break; default: $this->arrHidden[$key] = $val; break; } } } // ページ送り用 $this->arrHidden['search_pageno'] = isset($_POST['search_pageno']) ? $_POST['search_pageno'] : ""; // 商品削除 if ($_POST['mode'] == "delete") { if ($_POST['category_id'] != "") { // ランク付きレコードの削除 $where = "category_id = " . SC_Utils_Ex::sfQuoteSmart($_POST['category_id']); $objDb->sfDeleteRankRecord("dtb_products", "product_id", $_POST['product_id'], $where); } else { $objDb->sfDeleteRankRecord("dtb_products", "product_id", $_POST['product_id']); } // 子テーブル(商品規格)の削除 $objQuery = new SC_Query(); $objQuery->delete("dtb_products_class", "product_id = ?", array($_POST['product_id'])); // 件数カウントバッチ実行 $objDb->sfCategory_Count($objQuery); } if ($_POST['mode'] == "search" || $_POST['mode'] == "csv" || $_POST['mode'] == "delete" || $_POST['mode'] == "delete_all" || $_POST['mode'] == "camp_search") { // 入力文字の強制変換 $this->lfConvertParam(); // エラーチェック $this->arrErr = $this->lfCheckError(); $where = "del_flg = 0"; $view_where = "del_flg = 0"; // 入力エラーなし if (count($this->arrErr) == 0) { $arrval = array(); foreach ($this->arrForm as $key => $val) { $val = SC_Utils_Ex::sfManualEscape($val); if ($val == "") { continue; } switch ($key) { case 'search_product_id': // 商品ID $where .= " AND product_id = ?"; $view_where .= " AND product_id = ?"; $arrval[] = $val; break; case 'search_product_class_name': //規格名称 $where_in = " (SELECT classcategory_id FROM dtb_classcategory WHERE class_id IN (SELECT class_id FROM dtb_class WHERE name LIKE ?)) "; $where .= " AND product_id IN (SELECT product_id FROM dtb_products_class WHERE classcategory_id1 IN " . $where_in; $where .= " OR classcategory_id2 IN" . $where_in . ")"; $view_where .= " AND product_id IN (SELECT product_id FROM dtb_products_class WHERE classcategory_id1 IN " . $where_in; $view_where .= " OR classcategory_id2 IN" . $where_in . ")"; $arrval[] = "%{$val}%"; $arrval[] = "%{$val}%"; $view_where = $where; break; case 'search_name': // 商品名 $where .= " AND name ILIKE ?"; $view_where .= " AND name ILIKE ?"; $arrval[] = "%{$val}%"; break; case 'search_category_id': // カテゴリー list($tmp_where, $tmp_arrval) = $objDb->sfGetCatWhere($val); if ($tmp_where != "") { $where .= " AND product_id IN (SELECT product_id FROM dtb_product_categories WHERE " . $tmp_where . ")"; $view_where .= " AND product_id IN (SELECT product_id FROM dtb_product_categories WHERE " . $tmp_where . ")"; $arrval = array_merge((array) $arrval, (array) $tmp_arrval); } break; case 'search_product_code': // 商品コード $where .= " AND product_id IN (SELECT product_id FROM dtb_products_class WHERE product_code ILIKE ? GROUP BY product_id)"; $view_where .= " AND EXISTS (SELECT product_id FROM dtb_products_class as cls WHERE cls.product_code ILIKE ? AND dtb_products.product_id = cls.product_id GROUP BY cls.product_id )"; $arrval[] = "%{$val}%"; break; case 'search_startyear': // 登録更新日(FROM) $date = SC_Utils_Ex::sfGetTimestamp($_POST['search_startyear'], $_POST['search_startmonth'], $_POST['search_startday']); $where .= " AND update_date >= '" . $_POST['search_startyear'] . "/" . $_POST['search_startmonth'] . "/" . $_POST['search_startday'] . "'"; $view_where .= " AND update_date >= '" . $_POST['search_startyear'] . "/" . $_POST['search_startmonth'] . "/" . $_POST['search_startday'] . "'"; break; case 'search_endyear': // 登録更新日(TO) $date = SC_Utils_Ex::sfGetTimestamp($_POST['search_endyear'], $_POST['search_endmonth'], $_POST['search_endday']); $date = date('Y/m/d', strtotime($date) + 86400); $where .= " AND update_date < date('" . $date . "')"; $view_where .= " AND update_date < date('" . $date . "')"; break; case 'search_product_flag': //種別 global $arrSTATUS; $search_product_flag = SC_Utils_Ex::sfSearchCheckBoxes($val); if ($search_product_flag != "") { $where .= " AND product_flag LIKE ?"; $view_where .= " AND product_flag LIKE ?"; $arrval[] = $search_product_flag; } break; case 'search_status': // ステータス $tmp_where = ""; foreach ($val as $element) { if ($element != "") { if ($tmp_where == "") { $tmp_where .= "AND (status = ? "; } else { $tmp_where .= "OR status = ? "; } $arrval[] = $element; } } if ($tmp_where != "") { $tmp_where .= ")"; $where .= " {$tmp_where}"; $view_where .= " {$tmp_where}"; } break; default: break; } } $order = "update_date DESC, product_id DESC"; $objQuery = new SC_Query(); switch ($_POST['mode']) { case 'csv': require_once CLASS_EX_PATH . "helper_extends/SC_Helper_CSV_Ex.php"; $objCSV = new SC_Helper_CSV_Ex(); // オプションの指定 $option = "ORDER BY {$order}"; // CSV出力タイトル行の作成 $arrOutput = SC_Utils_Ex::sfSwapArray($objCSV->sfgetCsvOutput(1, " WHERE csv_id = 1 AND status = 1")); if (count($arrOutput) <= 0) { break; } $arrOutputCols = $arrOutput['col']; $arrOutputTitle = $arrOutput['disp_name']; $head = SC_Utils_Ex::sfGetCSVList($arrOutputTitle); $data = $objCSV->lfGetProductsCSV($where, $option, $arrval, $arrOutputCols); // CSVを送信する。 SC_Utils_Ex::sfCSVDownload($head . $data); exit; break; case 'delete_all': // 検索結果の取得 $col = "product_id"; $from = "vw_products_nonclass AS noncls "; $arrProducts = $objQuery->select($col, $from, $where, $arrval); // 検索結果をすべて削除 $sqlval['del_flg'] = 1; $where = "product_id = ?"; if (count($arrProducts) > 0) { foreach ($arrProducts as $key => $val) { $objQuery->update("dtb_products", $sqlval, $where, array($arrProducts[$key]["product_id"])); } } break; default: // 読み込む列とテーブルの指定 $col = "product_id, name, category_id, main_list_image, status, product_code, price01, price02, stock, stock_unlimited"; $from = "vw_products_nonclass AS noncls "; // 行数の取得 $linemax = $objQuery->count("dtb_products", $view_where, $arrval); $this->tpl_linemax = $linemax; // 何件が該当しました。表示用 // ページ送りの処理 if (is_numeric($_POST['search_page_max'])) { $page_max = $_POST['search_page_max']; } else { $page_max = SEARCH_PMAX; } // ページ送りの取得 $objNavi = new SC_PageNavi($this->arrHidden['search_pageno'], $linemax, $page_max, "fnNaviSearchPage", NAVI_PMAX); $startno = $objNavi->start_row; $this->arrPagenavi = $objNavi->arrPagenavi; //キャンペーン商品検索時は、全結果の商品IDを変数に格納する if (isset($_POST['search_mode']) && $_POST['search_mode'] == 'campaign') { $arrRet = $objQuery->select($col, $from, $where, $arrval); if (count($arrRet) > 0) { $arrRet = sfSwapArray($arrRet); $pid = implode("-", $arrRet['product_id']); $this->arrHidden['campaign_product_id'] = $pid; } } // 取得範囲の指定(開始行番号、行数のセット) // if(DB_TYPE != "mysql") $objQuery->setlimitoffset($page_max, $startno); $objQuery->setlimitoffset($page_max, $startno); // 表示順序 $objQuery->setorder($order); // 検索結果の取得 $this->arrProducts = $objQuery->select($col, $from, $where, $arrval); // 各商品ごとのカテゴリIDを取得 if (count($this->arrProducts) > 0) { foreach ($this->arrProducts as $key => $val) { $this->arrProducts[$key]["categories"] = $objDb->sfGetCategoryId($val["product_id"]); $objDb->g_category_on = false; } } } } } // カテゴリの読込 list($this->arrCatKey, $this->arrCatVal) = $objDb->sfGetLevelCatList(false); $this->arrCatList = $this->lfGetIDName($this->arrCatKey, $this->arrCatVal); // 画面の表示 $objView->assignobj($this); $objView->display(MAIN_FRAME); }
/** * ニュースの削除. * * @param integer $news_id ニュースID * @return void */ public function deleteNews($news_id) { $objDb = new SC_Helper_DB_Ex(); // ランク付きレコードの削除 $objDb->sfDeleteRankRecord('dtb_news', 'news_id', $news_id); }
/** * 削除する新着情報以降のrankを1つ繰り上げる。 * @param Integer $news_id * @param Integer $rank */ function computeRankForDelete($news_id, $rank) { SC_Helper_DB_Ex::sfDeleteRankRecord('dtb_news', 'news_id', $news_id); }
/** * 会員規約の削除. * * @param integer $kiyaku_id 会員規約ID * @return void */ public function deleteKiyaku($kiyaku_id) { $objDb = new SC_Helper_DB_Ex(); // ランク付きレコードの削除 $objDb->sfDeleteRankRecord('dtb_kiyaku', 'kiyaku_id', $kiyaku_id); }
/** * カテゴリーの削除 * * @param int $category_id カテゴリーID * @return void */ public function delete($category_id) { $objDb = new SC_Helper_DB_Ex(); // ランク付きレコードの削除(※処理負荷を考慮してレコードごと削除する。) $objDb->sfDeleteRankRecord('dtb_category', 'category_id', $category_id, '', true); }
/** * 休日の削除. * * @param integer $holiday_id 休日ID * @return void */ public function delete($holiday_id) { $objDb = new SC_Helper_DB_Ex(); // ランク付きレコードの削除 $objDb->sfDeleteRankRecord('dtb_holiday', 'holiday_id', $holiday_id, '', true); }
/** * メーカー情報削除. * * @param integer $maker_id メーカーID * @return void */ function lfDelete($maker_id) { $objDb = new SC_Helper_DB_Ex(); $objDb->sfDeleteRankRecord('dtb_maker', 'maker_id', $maker_id, '', true); }
/** * 配送方法の削除. * * @param integer $deliv_id 配送方法ID * @return void */ public function delete($deliv_id) { $objDb = new SC_Helper_DB_Ex(); // ランク付きレコードの削除 $objDb->sfDeleteRankRecord('dtb_deliv', 'deliv_id', $deliv_id); }
/** * 支払方法の削除. * * @param integer $payment_id 支払方法ID * @return void */ public function delete($payment_id) { $objDb = new SC_Helper_DB_Ex(); // ランク付きレコードの削除 $objDb->sfDeleteRankRecord('dtb_payment', 'payment_id', $payment_id); }
/** * 規格情報を削除する. * * @param integer $class_id 規格ID * @param SC_Helper_DB $objDb SC_Helper_DBのインスタンス * @return integer 削除件数 */ function lfDeleteClass($class_id) { $objDb = new SC_Helper_DB_Ex(); $objQuery =& SC_Query_Ex::getSingletonInstance(); $ret = $objDb->sfDeleteRankRecord('dtb_class', 'class_id', $class_id, '', true); $where = 'class_id = ?'; $objQuery->delete('dtb_classcategory', $where, array($class_id)); return $ret; }
/** * メーカー情報削除. * * @param integer $maker_id メーカーID * @return void */ function lfDelete($maker_id) { $objDb = new SC_Helper_DB_Ex(); $objDb->sfDeleteRankRecord("dtb_maker", "maker_id", $maker_id, "", true); }
/** * Page のアクション. * * @return void */ function action() { $objDb = new SC_Helper_DB_Ex(); $mode = $this->getMode(); $objFormParam = new SC_FormParam_Ex(); $this->lfInitParam($mode, $objFormParam); $objFormParam->setParam($_REQUEST); $objFormParam->convParam(); $this->arrErr = $this->lfCheckError($mode, $objFormParam); $is_error = !SC_Utils_Ex::isBlank($this->arrErr); $this->kiyaku_id = $objFormParam->getValue('kiyaku_id'); if ($is_error) { trigger_error('', E_USER_ERROR); return; } // 要求判定 switch ($mode) { // 編集処理 case 'confirm': // POST値の引き継ぎ $this->arrForm = $_POST; if (!$is_error) { if ($this->kiyaku_id == '') { $result = $this->lfInsertClass($this->arrForm, $_SESSION['member_id']); // 新規作成 } else { $result = $this->lfUpdateClass($this->arrForm, $this->kiyaku_id); // 既存編集 } if ($result !== FALSE) { $arrPram = array('kiyaku_id' => $result, 'msg' => 'on'); SC_Response_Ex::reload($arrPram, true); SC_Response_Ex::actionExit(); } } break; // 削除 // 削除 case 'delete': $objDb->sfDeleteRankRecord('dtb_kiyaku', 'kiyaku_id', $this->kiyaku_id, '', true); // 再表示 $this->objDisplay->reload(); break; case 'down': $objDb->sfRankDown('dtb_kiyaku', 'kiyaku_id', $this->kiyaku_id); // 再表示 $this->objDisplay->reload(); break; case 'up': $objDb->sfRankUp('dtb_kiyaku', 'kiyaku_id', $this->kiyaku_id); // 再表示 $this->objDisplay->reload(); break; default: if (isset($_GET['msg']) && $_GET['msg'] == 'on') { // 完了メッセージ $this->tpl_onload = "alert('登録が完了しました。');"; } break; } $this->arrForm = $objFormParam->getFormParamList(); if (!$is_error) { // 規約一覧を取得 $this->arrKiyaku = $this->lfGetKiyakuList(); // kiyaku_id が指定されている場合には規約データの取得 if (!SC_Utils_Ex::isBlank($this->kiyaku_id)) { // 編集項目を取得する。 $arrKiyakuData = $this->lfGetKiyakuDataByKiyakuID($this->kiyaku_id); // 入力項目にカテゴリ名を入力する。 $this->arrForm['kiyaku_title'] = $arrKiyakuData[0]['kiyaku_title']; $this->arrForm['kiyaku_text'] = $arrKiyakuData[0]['kiyaku_text']; // POSTデータを引き継ぐ $this->tpl_kiyaku_id = $this->kiyaku_id; } } else { // 画面にエラー表示しないため, ログ出力 GC_Utils_Ex::gfPrintLog('Error: ' . print_r($this->arrErr, true)); } }
/** * 規格情報を削除する. * * @param integer $class_id 規格ID * @param SC_Helper_DB $objDb SC_Helper_DBのインスタンス * @return integer 更新件数 */ function lfDeleteClass($class_id) { $objDb = new SC_Helper_DB_Ex(); $objQuery =& SC_Query_Ex::getSingletonInstance(); $objDb->sfDeleteRankRecord("dtb_class", "class_id", $class_id, "", true); $where = "class_id = ?"; $ret = $objQuery->delete("dtb_classcategory", $where, array($class_id)); return $ret; }
/** * 規格分類情報を削除する * * @param integer $class_id 規格ID * @param integer $classcategory_id 規格分類ID * @return void */ function lfDeleteClassCat($class_id, $classcategory_id) { $objDb = new SC_Helper_DB_Ex(); $where = 'class_id = ' . SC_Utils_Ex::sfQuoteSmart($class_id); $objDb->sfDeleteRankRecord('dtb_classcategory', 'classcategory_id', $classcategory_id, $where, true); }
/** * 商品IDの配列からおすすめ商品を削除. * * @param array $productIDs 商品ID * @return void */ public function deleteByProductIDs($productIDs) { $objDb = new SC_Helper_DB_Ex(); $arrList = $this->getList(); foreach ($arrList as $recommend) { if (in_array($recommend['product_id'], $productIDs)) { $objDb->sfDeleteRankRecord('dtb_best_products', 'best_id', $recommend['best_id'], '', TRUE); } } }
/** * Page のアクション. * * @return void */ function action() { $objDb = new SC_Helper_DB_Ex(); $objDate = new SC_Date_Ex(); $this->arrMonth = $objDate->getMonth(); $this->arrDay = $objDate->getDay(); $mode = $this->getMode(); if (!empty($_POST)) { $objFormParam = new SC_FormParam_Ex(); $this->lfInitParam($mode, $objFormParam); $objFormParam->setParam($_POST); $objFormParam->convParam(); $holiday_id = $objFormParam->getValue('holiday_id'); $this->arrErr = $this->lfCheckError($mode, $objFormParam); if (!empty($this->arrErr['holiday_id'])) { SC_Utils_Ex::sfDispException(); return; } $post = $objFormParam->getHashArray(); } // 要求判定 switch ($mode) { // 編集処理 case 'edit': // POST値の引き継ぎ $this->arrForm = $this->arrForm = $_POST; if (count($this->arrErr) <= 0) { // 新規作成 if ($post['holiday_id'] == "") { $this->lfInsertClass($this->arrForm, $_SESSION['member_id']); } else { $this->lfUpdateClass($this->arrForm, $post['holiday_id']); } // 再表示 $this->objDisplay->reload(); } else { // POSTデータを引き継ぐ $this->tpl_holiday_id = $post['holiday_id']; } break; // 削除 // 削除 case 'delete': $objDb->sfDeleteRankRecord("dtb_holiday", "holiday_id", $post['holiday_id'], "", true); // 再表示 $this->objDisplay->reload(); break; // 編集前処理 // 編集前処理 case 'pre_edit': // 編集項目を取得する。 $arrHolidayData = $this->lfGetHolidayDataByHolidayID($post['holiday_id']); // 入力項目にカテゴリ名を入力する。 $this->arrForm['title'] = $arrHolidayData[0]['title']; $this->arrForm['month'] = $arrHolidayData[0]['month']; $this->arrForm['day'] = $arrHolidayData[0]['day']; // POSTデータを引き継ぐ $this->tpl_holiday_id = $post['holiday_id']; break; case 'down': $objDb->sfRankDown("dtb_holiday", "holiday_id", $post['holiday_id']); // 再表示 $this->objDisplay->reload(); break; case 'up': $objDb->sfRankUp("dtb_holiday", "holiday_id", $post['holiday_id']); // 再表示 $this->objDisplay->reload(); break; default: break; } $this->arrHoliday = $this->lfGetHolidayList(); // POSTデータを引き継ぐ $this->tpl_holiday_id = $holiday_id; }
/** * メーカーの削除. * * @param integer $maker_id メーカーID * @return void */ public function delete($maker_id) { $objDb = new SC_Helper_DB_Ex(); // ランク付きレコードの削除 $objDb->sfDeleteRankRecord('dtb_maker', 'maker_id', $maker_id, '', true); }