/** * (non-PHPdoc) * * @see LC_Page_Admin::init() */ function init() { parent::init(); $this->objDb = new SC_Helper_DB_Ex(); $this->tpl_mainpage = 'basis/device_android.tpl'; $this->tpl_subno = 'device_android'; $this->tpl_mainno = 'basis'; $this->tpl_pager = 'pager.tpl'; $this->tpl_maintitle = '基本情報管理'; $this->tpl_subtitle = 'Android 対応機種設定>対応機種一覧'; $masterdata = new SC_DB_MasterData_Ex(); $this->arrPageMax = $masterdata->getMasterData("mtb_page_max"); $this->arrOsVersion = $masterdata->getMasterData("cp_mtb_android_os_version"); $this->arrCarrier = $masterdata->getMasterData("cp_mtb_carrier"); $this->arrStatus = $masterdata->getMasterData("mtb_disp"); $this->arrStatusColor = $masterdata->getMasterData("mtb_product_status_color"); $objCategory = new SC_Helper_Category_Ex(false); $arrCategory = $objCategory->getList(false); $this->arrCategory = SC_Utils_Ex::sfArrKeyValue($arrCategory, "category_id", "category_name"); $this->arrCategory2 = $arrCategory; $objDate = new SC_Date_Ex(2000, date("Y") + 1); $this->arrDeviceReleaseYear = $objDate->getYear("", date("Y"), ""); $this->arrMonth = $objDate->getMonth(true); $this->arrDay = $objDate->getDay(true); $this->arrDisplaySize = $masterdata->getMasterData("cp_mtb_device_displaysize"); array_walk($this->arrDisplaySize, function (&$v) { $v = explode(",", $v); }); }
/** * (non-PHPdoc) * * @see LC_Page_Admin::init() */ function init() { parent::init(); $this->csv_id = '7'; $this->tpl_mainpage = 'basis/device_android_edit_csv.tpl'; $this->tpl_mainno = 'basis'; $this->tpl_subno = 'device_android_edit'; $this->tpl_pager = 'pager.tpl'; $this->tpl_maintitle = '基本情報管理'; $this->tpl_subtitle = 'Android 対応機種設定>CSVアップロード'; $objCategory = new SC_Helper_Category_Ex(); $this->arrCategory = $objCategory->getList(true); }
/** * Page のアクション. * * @return void */ public function action() { $objDb = new SC_Helper_DB_Ex(); $objCategory = new SC_Helper_Category_Ex(); $this->tpl_pageno = isset($_POST['pageno']) ? $_POST['pageno'] : ''; // 通常時は親カテゴリを0に設定する。 $this->arrForm['parent_category_id'] = isset($_POST['parent_category_id']) ? $_POST['parent_category_id'] : 0; $this->arrForm['product_id'] = isset($_POST['product_id']) ? $_POST['product_id'] : ''; switch ($this->getMode()) { case 'up': $this->lfRankUp($objDb, $this->arrForm['parent_category_id'], $this->arrForm['product_id']); break; case 'down': $this->lfRankDown($objDb, $this->arrForm['parent_category_id'], $this->arrForm['product_id']); break; case 'move': $this->lfRankMove($objDb, $this->arrForm['parent_category_id'], $this->arrForm['product_id']); break; case 'tree': // カテゴリの切替は、ページ番号をクリアする。 $this->tpl_pageno = ''; break; case 'renumber': $this->lfRenumber($this->arrForm['parent_category_id']); break; default: break; } $this->arrTree = $objCategory->getTree(); $this->arrParentID = $objCategory->getTreeTrail($this->arrForm['parent_category_id']); $this->arrProductsList = $this->lfGetProduct($this->arrForm['parent_category_id']); $arrBread = $objCategory->getTreeTrail($this->arrForm['parent_category_id'], FALSE); $this->tpl_bread_crumbs = SC_Utils_Ex::jsonEncode(array_reverse($arrBread)); }
public function init() { parent::init(); $objCategory = new SC_Helper_Category_Ex(); $this->arrCommonCategory = $objCategory->getList(true); $this->arrCommonCategoryTree = $objCategory->getTree(); $this->arrCommonCategoryList = array(); foreach ($this->arrCommonCategoryTree as $tree) { if (is_array($tree["children"]) && count($tree["children"]) > 0) { foreach ($tree["children"] as $stree) { $this->arrCommonCategoryList[$stree["category_id"]] = array($tree["category_name"], $stree["category_name"]); $this->arrCommonCategoryList[$stree["category_id"]] = implode(" > ", $this->arrCommonCategoryList[$stree["category_id"]]); } } else { $this->arrCommonCategoryList[$tree["category_id"]] = $tree["category_name"]; } } }
/** * カテゴリツリーの取得. * * @param array $arrParentCategoryId 親カテゴリの配列 * @param boolean $count_check 登録商品数をチェックする場合はtrue * @return array $arrRet カテゴリツリーの配列を返す */ public function lfGetCatTree($arrParentCategoryId, $count_check = false) { $objCategory = new SC_Helper_Category_Ex($count_check); $arrTree = $objCategory->getTree(); $this->arrParentID = array(); foreach ($arrParentCategoryId as $category_id) { $arrParentID = $objCategory->getTreeTrail($category_id); $this->arrParentID = array_merge($this->arrParentID, $arrParentID); $this->root_parent_id[] = $arrParentID[0]; } return $arrTree; }
/** * 選択中の商品のカテゴリを取得する. * * @param integer $product_id プロダクトID * @param integer $category_id カテゴリID * @param bool $closed 非表示の商品を含む場合はtrue * @return array 選択中の商品のカテゴリIDの配列 * */ public function sfGetCategoryId($product_id, $category_id = 0, $closed = false) { if ($closed) { $status = ''; } else { $status = 'status = 1'; } $category_id = (int) $category_id; $product_id = (int) $product_id; $objCategory = new SC_Helper_Category_Ex(); if ($objCategory->isValidCategoryId($category_id, $closed)) { $category_id = array($category_id); } elseif (SC_Utils_Ex::sfIsInt($product_id) && $product_id != 0 && SC_Helper_DB_Ex::sfIsRecord('dtb_products', 'product_id', $product_id, $status)) { $objQuery =& SC_Query_Ex::getSingletonInstance(); $category_id = $objQuery->getCol('category_id', 'dtb_product_categories', 'product_id = ?', array($product_id)); } else { // 不正な場合は、空の配列を返す。 $category_id = array(); } return $category_id; }
/** * ページタイトルの設定 * * @param string|null $mode * @return str */ public function lfGetPageTitle($mode, $category_id = 0) { if ($mode == 'search') { return '検索結果'; } elseif ($category_id == 0) { return '全商品'; } else { $objCategory = new SC_Helper_Category_Ex(); $arrCat = $objCategory->get($category_id); return $arrCat['category_name']; } }
/** * 編集対象のカテゴリ名を, 入力ボックスへ表示する. * * @param SC_FormParam $objFormParam * @return void */ public function doPreEdit(&$objFormParam) { $category_id = $objFormParam->getValue('category_id'); $objCategory = new SC_Helper_Category_Ex(); $arrRes = $objCategory->get($category_id); $objFormParam->setParam($arrRes); $this->arrForm = $objFormParam->getHashArray(); }
function init() { parent::init(); $objCustomer = new SC_Customer_Ex(); if (isset($_GET["sid"]) && isset($_GET["admin"])) { $sid = $_REQUEST["sid"]; $email = $objCustomer->getValue("email"); $osid = session_id(); if ($osid != $sid) { session_destroy(); session_id($sid); session_start(); } $objCustomer->setLogin($email); $get = $_GET; unset($get["sid"]); SC_Response_Ex::reload($get, true); } $objQuery = SC_Query_Ex::getSingletonInstance(); $objProduct = new SC_Product_Ex(); if (GC_Utils_Ex::isFrontFunction() && $this->skip_load_page_layout == false) { $objCustomer = new SC_Customer_Ex(); // 画面更新毎に情報を更新する if ($objCustomer->isLoginSuccess()) { // 初回アクセス時に更新 $objCustomer->updateSession(); $this->tpl_login = true; $this->tpl_point = $objCustomer->getValue("point"); $this->tpl_customer_id = $objCustomer->getValue("customer_id"); $this->tpl_first_buy_date = $objCustomer->getValue("first_buy_date"); $this->tpl_carrier = $objCustomer->getValue("carrier"); $downloadable_days = $this->arrSiteInfo["downloadable_days"]; $downloadable_days_unlimited = $this->arrSiteInfo["downloadable_days_unlimited"]; $date = null; if ($downloadable_days_unlimited) { $date = SC_Utils_Ex::sfGetTimestamp(RELEASE_YEAR, 1, 1, false); $date2 = SC_Utils_Ex::sfGetTimestamp(9999, 12, 31, false); } else { $xdate = strtotime("-{$downloadable_days} day"); $date = SC_Utils_Ex::sfGetTimestamp(date("Y", $xdate), date("m", $xdate), date("d", $xdate), false); $xdate = strtotime("+{$downloadable_days} day"); $date2 = SC_Utils_Ex::sfGetTimestamp(date("Y", $xdate), date("m", $xdate), date("d", $xdate), false); } $this->downloadable_days = $date; $this->downloadable_days2 = $date2; $objPurchase = new SC_Helper_Purchase_Ex(); $arrOrderId = $objQuery->getCol("order_id", "dtb_order", "payment_date > ? AND customer_id = ?", array($date, $this->tpl_customer_id)); $this->arrRedownloadProduct = array(); foreach ($arrOrderId as $order_id) { $arrOrderDetail = $objPurchase->getOrderDetail($order_id, true); $this->arrRedownloadProduct = array_merge($this->arrRedownloadProduct, $arrOrderDetail); } // 再ダウンロード可能な商品一覧 $this->arrRedownloadProduct = SC_Utils_Ex::makeArrayIDToKey("product_id", $this->arrRedownloadProduct); foreach ($this->arrRedownloadProduct as $product_id => $row) { $row["product"] = $objProduct->getDetail($product_id); $this->arrRedownloadProduct[$product_id] = $row; } } else { $this->tpl_login = false; $this->tpl_point = 0; $this->tpl_customer_id = 0; $this->tpl_first_buy_date = null; $this->tpl_carrier = 9; $this->arrRedownloadProduct = array(); } $objDb = new SC_Helper_DB_Ex(); if ($objDb->sfColumnExists("cp_dtb_customer_transaction", "id")) { $where = " customer_id = ? AND transaction_status = ? AND continue_account_id IS NOT NULL AND del_flg = 0"; $arrWhereVal = array($this->tpl_customer_id, 40); if ($objQuery->exists("cp_dtb_customer_transaction", $where, $arrWhereVal)) { // OK } else { switch (basename(dirname($_SERVER["SCRIPT_NAME"]))) { case "au": break; default: if ($objCustomer->isLoginSuccess()) { $objCustomer->EndSession(); SC_Response_Ex::reload(); } break; } } } $objCategory = new SC_Helper_Category_Ex(); $this->arrCommonCategory = $objCategory->getList(true); $this->arrCommonCategoryTree = $objCategory->getTree(); $detect = new Mobile_Detect(); $script_file = $_SERVER["SCRIPT_NAME"]; $script_file = ltrim($script_file, "/"); $script_file2 = str_replace("ios/", "", $script_file); if ($detect->is("iOS")) { if (file_exists(HTML_REALDIR . "ios/{$script_file}")) { SC_Response_Ex::sendRedirect(HTTP_URL . "ios/{$script_file}", $_GET); } } elseif (strcmp($script_file, $script_file2) !== 0) { SC_Response_Ex::sendRedirect(HTTP_URL . "{$script_file2}", $_GET); } $_SESSION["is_android"] = $detect->is("AndroidOS"); if ($detect->isMobile() == false) { // NG $this->device_support = false; } elseif ($detect->is("iOS")) { if ($detect->match("iPhone")) { // OK $this->device_support = true; } elseif ($detect->match("iPod")) { // NG $this->device_support = false; } elseif ($detect->match("iPad")) { // NG $this->device_support = false; } else { // NG $this->device_support = false; } $version = $detect->version("iOS", $detect::VERSION_TYPE_FLOAT); if ($version < 6) { // NG $this->device_support = false; } } elseif ($detect->match("Android") == false) { // NG $this->device_support = false; } elseif (class_exists("SC_DeviceAndroidSelect_Ex", true)) { $useragent = array(); if (preg_match("|.*; ([^;]+) Build/.*|", $_SERVER["HTTP_USER_AGENT"], $useragent)) { $device = new SC_DeviceAndroidSelect_Ex(array("search_device_user_agent_word" => $useragent[1], "search_status" => 1)); $this->device_support = $device->exists(); $this->tpl_device = $device->getOne(); } } elseif ($detect->match("Android")) { // OK $this->device_support = true; } else { // NG $this->device_support = false; } } if ($this->device_support) { GC_Utils_Ex::gfPrintLog("対応端末:" . $_SERVER['HTTP_USER_AGENT']); return; } else { GC_Utils_Ex::gfPrintLog("非対応端末:" . $_SERVER['HTTP_USER_AGENT']); if (is_a($this, "LC_Page_Index")) { SC_Response_Ex::sendRedirect(HTTP_URL . "unsupported/index.php"); } elseif (is_a($this, "LC_Page_Unsupported")) { // 非対応端末表示を行わない return; } elseif (is_a($this, "LC_Page_Entry_Kiyaku")) { // 非対応端末表示を行わない return; } elseif ($this->not_unsupported) { // 非対応端末表示を行わない return; } else { SC_Response_Ex::sendRedirect(HTTP_URL . "unsupported/index.php"); } } }