assign("tdfk_collection", Form::getTdfkAr()); // carinfo_cdから車両情報を取得する $data = WorkUtil::getCarDatas2Cd($carinfo_cd); //保証付きなのに期間と距離が設定されていないとき if ($data['common']['warrty_flg'] == CONST_WARRTY_FLG['ho_yes']['index']) { //保証付き if ($data['common']['warrty_period_type'] == CONST_WARRTY_PERIOD_TYPE['hk_ngh']['index']) { //期間 if (empty($data['common']['warrty_term_year']) && empty($data['common']['warrty_term_month']) && empty($data['common']['warrty_term_day']) ) { $data = ''; } } elseif ($data['common']['warrty_period_type'] == CONST_WARRTY_PERIOD_TYPE['hk_limit']['index']) { // 期限 if (empty($data['common']['warrty_limit_year']) && empty($data['common']['warrty_limit_month']) ) { $data = ''; } } if ($data['common']['warrty_distance_type'] == CONST_WARRTY_DISTANCE_TYPE['d_km']['index']) { //距離 if (empty($data['common']['warrty_distance_km'])) { $data = ''; } } } if ($data == "") { header("HTTP/1.0 404 Not Found"); echo file_get_contents(SITE_PROTOCOL . "://gmocars:culumo_stg_0130@" . SITE_URL . "/error/404.php"); exit; } $data["pic_img"] = array_filter($data["pic"], function ($val, $key) { return !WorkUtil::judempty($val) && preg_match("/file_image\w.+path/u", $key); }, ARRAY_FILTER_USE_BOTH); $data["pic_com"] = array_filter($data["pic"], function ($val, $key) { return !WorkUtil::judempty($val) && preg_match("/file_image\w.+text/u", $key); }, ARRAY_FILTER_USE_BOTH); if ($data["car_type"] != 0) { //展開図がないなら作る (new TenkaizuImage())->getImage($carinfo_cd); } // 閲覧履歴に入れる WorkUtil::addBrowsingPage($data["carinfo_id"], $data["carinfo_cd"]); // 取れなければ取れないで良い $login_id = WorkUtil::getUserLoginId(); $smarty->assign("login_id", $login_id); $agree = WorkUtil::getAgreement($data["carinfo_id"]); // 出品者の詳細情報を取得 $u_seller_data = DbUtil::getUserData($data["user_id"]); // 表示用データを作成する。 $data["disp"] = DbUtil::makeCarinfoDetail($data["detail"]); $smarty->assign("is_exhibition_user", ($data["user_id"] == WorkUtil::getUserLoginId()) ? 1 : 0); $smarty->assign("is_login", (WorkUtil::getUserLoginId()) ? 1 : 0); if (($data["exhibition_flg"] != "1" || !isset($data["disp"]["endtime"]))) { $endmessage = '該当車両は販売終了しました'; if (isset($ml_global_flag) && $ml_global_flag) { postMessage("/special/multilingual/", $endmessage, "SYSTEM_ERROR_MESSAGE"); } postMessage("/list.php", $endmessage, "SYSTEM_ERROR_MESSAGE"); //$smarty->assign("exhibition_flg", 1); //$smarty->assign("exhibition_class", "disabled"); //$smarty->assign("exhibition_class2", "btn_disabled"); } else { $smarty->assign("exhibition_flg", 0); $smarty->assign("exhibition_class", ""); $smarty->assign("exhibition_class2", ""); } //ボタンを無効にする, ストア車両見積もりなので例外 if ($agree["sell_user_id"] == $login_id && $data["car_type"] != CARINFO_CARTYPE_STORE) { // 売り手とログイン会員が同一の場合 $smarty->assign("exhibition_class", "disabled"); } $collabo_id = null; $smarty->assign("collabo_id", $collabo_id); /** * * 車両共通・装備・検査情報取得処理 * */ $params = [ 'con' => $con, 'dbUtil' => $dbUtil, 'carinfo_id' => $data["carinfo_id"], 'raw_flag' => 0 ]; $detail_process = new DetailProcess($params); $data["stick"] = $detail_process->executeProcess(); // 点検情報の文字列を作成する makeMessageData($data["stick"]); // 展開図入力有無確認 $tenkaizu_info = array_filter(array_column($data["stick"]["ins_all"], "ins_nm_en"), function ($item) { return preg_match('/^marc_[0-9]{2}$/', $item); }); // 検査情報表示有無 $check_point_info = array_filter( array( $data["detail"]["exterior_point"], // 外装評価 $data["detail"]["interior_point"], // 内装評価 $data["stick"]["check_point"] // 総合評価 ) ); $check_comment_info = array_filter( array( $data["detail"]["interior_comment"], $data["detail"]["exterior_comment"], $data["stick"]["check_comment"] ) ); $smarty->assign("is_checked_tenkaizu", count($tenkaizu_info) > 0 ? true : false); $smarty->assign("is_checked_point", count($check_point_info) > 0 ? true : false); $smarty->assign("is_checked_comment", count($check_comment_info) > 0 ? true : false); // 税金情報取得 $carinfo_tax = sql\TbCarInfoTax::getCarTax($data["carinfo_id"]); // 金額を税金配列へ追加する $carinfo_tax["price"] = $data["detail"]["car_price"]; // プラン総額設定 $plan_num = 0; $plan_regist_flg = false; foreach (PLAN_GROUP as $key => $group) { $plan_num++; $data["stick"]["amount_{$plan_num}"] = $data["detail"]["is_tax_car_price"] + $data["stick"][$key]; if (!empty($data["stick"][$key])) { $plan_regist_flg = true; } } if ($data["car_type"] == "9" && WorkUtil::judempty($plan_regist_flg)) { // plan が一つも登録されていない header("HTTP/1.0 404 Not Found"); echo file_get_contents(SITE_PROTOCOL . "://gmocars:culumo_stg_0130@" . SITE_URL . "/error/404.php"); exit; } // 税込価格設定 if ($data["car_type"] == "9") {//ストア車両 $data["detail"]["car_price"] = $data['detail']['is_tax_car_price']; } // コメント取得 // $data["com"] = sql\TbCarInfoCom::getCarComment($data["carinfo_id"]); // Newマークチェック Start //$data["new_flg"] = "0"; // 開始日が一週間までは、Newを表示する //if (date("Y-m-d H:i:s", $data["detail"]["startDate"]) > date("Y-m-d H:i:s", strtotime("-1 week"))) { // $data["new_flg"] = "1"; //} // Newマークチェック End $data['selling_point'] = (new Label($data["carinfo_id"]))->getLabels(); if ($post_data["plan_type"] == "") { if ($data["plan_value"] == "1") { $post_data["plan_type"] = "a"; } elseif ($data["plan_trans"] == "1") { $post_data["plan_type"] = "b"; } elseif ($data["plan_escrow"] == "1") { $post_data["plan_type"] = "c"; } } // 質問情報取得 $data["question"] = sql\TbQuestion::getCarQuestion($data["carinfo_id"]); $qestion_id = getRequestData("question_id"); $smarty->assign("question_id", ($qestion_id) ? $qestion_id : 0); chk_insure($data); // 保証車両判定処理 // ボディタイプ設定 set_body_shape_str($data, $con); // お気に入り数設定 $data['bookmark'] = WorkUtil::getBookmarkCar($data["carinfo_id"]); /* お気に入りリスト取得 */ //if ($login_id == "" && isset($_COOKIE[COOKIE_NONUSER_ID])) { if ($login_id == "") { $login_id = $_COOKIE[COOKIE_NONUSER_ID]; } else { //$login_id == ""; } $param_2 = array(); $param_2["status_flg"] = "1"; $param_2["user_id"] = $login_id; // ソート指定 $param_2["sort_f"] = "update_time"; $param_2["sort_ad"] = "DESC"; $add_where_str = ""; //$bookmark_get = $dbUtil->getDataList("tb_bookmark", $param_2, $add_where_str); $bookmark_get = WorkUtil::getBookmark(); $bookmark_list = array(); foreach ($bookmark_get as $val) { $bookmark_list[] .= $val["carinfo_cd"]; } if (in_array($data["carinfo_cd"], $bookmark_list)) { $data['bookmark_chk'] = "added_bookmark"; } else { $data['bookmark_chk'] = ""; } /*-------------------------お気に入りリスト取得----------------------------------*/ /* CtoC点検情報有無チェック */ foreach ($data['stick']['ins_all'] as $value) { if (empty($value['place_id'])) { continue; } switch ($value['place_id']) { case 110: $data['stick']['ins_all_out_check'] = true; break; case 120: $data['stick']['ins_all_in_check'] = true; break; case 130: $data['stick']['ins_all_in_status_check'] = true; break; case 140: /* 傷やへこみ, 「傷なし」を選択している */ if ($value['ins_nm_en'] == 'crack_00' && $value['val_no'] != '1') { $data['stick']['ins_all_hekomi_check'] = true; } break; default: break; } } /*-------------------------CtoC点検情報有無チェック------------------------------*/ $store_car_flg = $data["car_type"] == CARINFO_CARTYPE_STORE ? true : false; // TODO::販売元設定 $sell_source = getSellSource($data, $u_seller_data); if ($store_car_flg) { if (!$sell_source["status_flg"]) { redirect_url("/404.php"); } $sell_source["holiday_str"] = formatWeek($sell_source); $sell_source["dealer_carinfo_cd"] = (new exhibition_info())->getDealerCarinfo($sell_source['dealer_id'], $data["carinfo_id"])["dealer_carinfo_cd"]; } $smarty->assign("sell_source", $sell_source); // 装備データ $eq_list = $store_car_flg ? WorkUtil::getEqList("B1") : WorkUtil::getEqList(); //入力した装備の情報だけに表示されている<-これに対応 foreach ($eq_list as $value) { if (!isset($data['stick'][$value['eq_nm_en']])) { $data['stick'][$value['eq_nm_en']] = 0; } } WorkUtil::mergeEqDatas($data['stick'], $eq_list); if ($store_car_flg) { $ins_mapping = new InspectionMapping(); $eq_en_all = array_column($data['stick']['eq_all'], "eq_nm_en"); $group_display_nm = ""; foreach ($ins_mapping->getGroupSection() as $key => $value) { $cnt = 0; $no_val_cnt = 0; $group_display_nm = $value["name"].":"; foreach ($value["col"] as $col) { $split = "/"; $view_none = "-"; $prev_split = true; $id = array_search($col, $eq_en_all); $data["stick"]["eq_all"][$id]["is_group"] = count($value["col"]); $data["stick"]["eq_all"][$id]["group_display_nm_key"] = $key."_group_display_nm"; $data["stick"]["eq_all"][$id]["group_no_val_cnt_key"] = $key."_group_no_val_cnt"; if ($cnt && $cnt < count($value["col"])) { $group_display_nm .= $split; } if ($data["stick"]["eq_all"][$id]["val"]) { $group_display_nm .= $value["col_short_nm"][array_search($col, array_values($value["col"]))]; } else { $no_val_cnt++; $group_display_nm .= " $view_none "; } $cnt++; if ($cnt == (count($value["col"]))) { if ($no_val_cnt == (count($value["col"]))) { $group_display_nm = $value["name"]; } $data["stick"]["eq_all"][$key."_group_display_nm"] = $group_display_nm; $data["stick"]["eq_all"][$key."_group_no_val_cnt"] = $no_val_cnt; } } } } // DONE::点検データ不足分取得処理 WorkUtil::mergeInsDatas($data['stick']['ins_all'], WorkUtil::getInsList(WorkUtil::carType2InputFlag($data["car_type"]))); $data["stick"]["ins_all_out"] = array_filter($data["stick"]["ins_all"], function ($item) { return $item["place_id"] == 110; }); $data["stick"]["ins_all_in"] = array_filter($data["stick"]["ins_all"], function ($item) { return $item["place_id"] == 120; }); $data["stick"]["ins_all_in_status"] = array_filter($data["stick"]["ins_all"], function ($item) { return $item["place_id"] == 130; }); $data["stick"]["ins_all_in_hekomi"] = array_filter($data["stick"]["ins_all"], function ($item) { return $item["place_id"] == 140; }); /* ディーラ、検査出品 - 点検データ(動作確認)まとめ */ foreach ($data['stick']['ins_all'] as $key => $value) { if ($value['input_flag'] == "B1" || $value['input_flag'] == "F") { $data['stick']['ins_all']['ins_all_place_id_520_obj'][$value['ins_nm_en']] = $value['ins_flag']; } } // 保証選択 if (WorkUtil::is_insure_car($data["car_type"], $data["carinfo_id"])) { // 保証対象車両の場合 $data["insure_display"] = "on"; } else { $data["insure_display"] = null; } // メッセージデータ $faq_service = new FaqService(); $data["question_message"] = $faq_service->getFaq($data["carinfo_id"]); //概算金額 $u_login_dt = WorkUtil::getUserInfo(); $u_pay = array(); $u_pay["trans_type"] = 1; $u_pay["prefecture_id"] = $u_login_dt["prefecture_id"]; $u_pay["u_prefecture_id"] = $u_login_dt["prefecture_id"]; $u_pay["address_1"] = $u_login_dt["address_1"]; $u_pay["is_insure"] = 1; $u_pay["is_number_plate"] = 1; $quotation_info = quotationInfo($u_pay, $data, false); $number_plate_value = $quotation_info["options"]["希望ナンバー登録費用"]; $u_pay["is_number_plate"] = 0; $number_idx = array_search("ナンバープレート代", array_column($quotation_info["quotation"], "name")); $basic_plate_value = quotationInfo($u_pay, $data, false)["quotation"][$number_idx]["value"]; $is_plate_value = $quotation_info["quotation"][$number_idx]["value"]; $insure_value = $quotation_info["options"]["クルモ車両保証費用リスト"]; if (empty($insure_value)) { $dbUtil = new DbUtil(); $param = array(); $param[] = array("colnm" => "carinfo_id", "value" => str4sql($data["carinfo_id"])); $displacement_volume = $dbUtil->getDataOne("tb_carinfo_common", $param)["displacement_volume"]; $insure_m = new GaiparaInsure(); $insure_value = $insure_m->getInsure($data["maker_cd"], $displacement_volume); $insure_value = WorkUtil::getTaxPrice($insure_value); //税込 } foreach ($quotation_info["quotation"] as $id => $value) { if (mb_strpos($value["name"], "希望ナンバー登録費用") === 0 || mb_strpos($value["name"], "クルモ修理保証費用") === 0) { $quotation_info["amount"] -= $value["value"]; unset($quotation_info["quotation"][$id]); } } //ログインしていなければリダイレクト先設定 if (!WorkUtil::getUserLoginId()) { Session::set("MYPAGE_REDIRECT_URL", "/detail/".$carinfo_cd."/"); } $payment_fee1 = array(); //法定費用 $payment_fee2 = array(); //諸経費 foreach ($quotation_info["quotation"] as $k => $v) { switch ($v["name"]) { case "環境性能割": $payment_fee1[$v["name"]] = $v["value"]; break; case "ナンバープレート代": // 初期状態は「希望ナンバー登録費用」オプション選択なしの値 $quotation_info["amount"] -= ($is_plate_value - $basic_plate_value); $payment_fee1[$v["name"]] = $basic_plate_value; break; case "検査登録印紙": $payment_fee1[$v["name"]] = $v["value"]; break; case "車庫証明証紙代": $payment_fee1[$v["name"]] = $v["value"]; break; default: $payment_fee2[$v["name"]] = $v["value"]; break; } } $smarty->assign("number_plate_value", $number_plate_value); $smarty->assign("insure_value", $insure_value); $smarty->assign("payment_fee1", $payment_fee1); $smarty->assign("payment_fee2", $payment_fee2); $smarty->assign("payment_amount", $quotation_info["amount"]); $smarty->assign("basic_plate_value", $basic_plate_value); $smarty->assign("is_plate_value", $is_plate_value); // 支払総額 $all_car_price = $quotation_info["amount"]; $expenses_price = 0; if ($store_car_flg) { $expenses_arr = WorkUtil::extractPlan($data["stick"]); $all_car_price = exhibition_info::getTotalPrice( array( "car_price" => $data["detail"]["is_tax_car_price"], ) + $expenses_arr ); $expenses_price = exhibition_info::getExpensesPrice($expenses_arr); } $smarty->assign("all_car_price", $all_car_price); // 総支払額 $smarty->assign("expenses_price", $expenses_price); // 諸費用 $baseinfo_insmainte = ''; if ($data['common']['reg_insmainte_flg'] == CONST_REG_INSMAINTE_FLG['s_yes']['index']) { $baseinfo_insmainte = '法定整備付'; $baseinfo_insmainte .= "\n" . $data['common']['reg_insmainte_comment']; } else { $baseinfo_insmainte = '法定整備無'; } $smarty->assign("baseinfo_insmainte", $baseinfo_insmainte); // 基本情報内 整備 $baseinfo_warrty = ''; if ($data['common']['warrty_flg'] == CONST_WARRTY_FLG['ho_yes']['index']) { //$baseinfo_warrty = '保証付:'. getArrayData($data['common'], 'warrty_flg_opt') . WorkUtil::warrtyFormat('info', $data['common']); $baseinfo_warrty = '保証付' . "\n" . WorkUtil::warrtyFormat('info', $data['common']); $baseinfo_warrty .= "\n" . $data['common']['warrty_comment']; } else { $baseinfo_warrty = '保証無'; } $smarty->assign("baseinfo_warrty", $baseinfo_warrty); // 基本情報内 保証 // 低金利車両 if (WorkUtil::isRatePrimeCar($data["carinfo_id"])) { $data["stick"]["is_rate_prime_car"] = true; } // 整備履歴 $periodic_check_items = WorkUtil::existPeriodicCheck($data["carinfo_id"]); $isMaintainOldCar = WorkUtil::isMaintainOldCar($data["carinfo_id"]); // sheet $sheet_dt = \DBUtil::getDataOne('tb_carinfo_sheet', [['colnm' => 'id', 'value' => $data['carinfo_id']]]); $data["sheet_path"] = $sheet_dt["sheet_path"]; $data["sheet_ext"] = simpleGetPathInfo($sheet_dt["sheet_path"], PATHINFO_EXTENSION); // 車両情報取得 // pdf,YouTube url $carinfo_link = sql\TbCarinfoOption::getAllforci($data["carinfo_id"]); //pdf num of pages 取得 foreach ($carinfo_link as &$link) { $pdftext = file_get_contents($link['text_value']); $num_page = preg_match_all("/\/Page\W/", $pdftext, $dummy); $link['num_pages'] = $num_page; // Extract width and height from the PDF $width = null; $height = null; // Look for the MediaBox entry in the PDF if (preg_match('/\/MediaBox\s*\[\s*([0-9]+\.?[0-9]*)\s+([0-9]+\.?[0-9]*)\s+([0-9]+\.?[0-9]*)\s+([0-9]+\.?[0-9]*)\s*\]/', $pdftext, $matches)) { $width = floatval($matches[3]) - floatval($matches[1]); $height = floatval($matches[4]) - floatval($matches[2]); } // If width and height were found, store them in the link array $link['width'] = $width; $link['height'] = $height; } function isMobile() { $userAgent = $_SERVER['HTTP_USER_AGENT']; return preg_match('/android|avantgo|blackberry|bada\/|blazer|compal|elaine|fennec|hiptop|iemobile|iphone|ipod|iris|kindle|midp|opera m(ob|in)i|palm( os)?|phone|pie|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i', $userAgent); } $isMobile = isMobile(); $smarty->assign("data", $data); $smarty->assign("carinfo_link", $carinfo_link); $smarty->assign('isMobile', $isMobile); $smarty->assign("u_data", $u_login_dt); $smarty->assign("p_data", $post_data); $smarty->assign("periodic_check_items", $periodic_check_items); $smarty->assign("isMaintainOldCar", $isMaintainOldCar); // meta等の設定 $year = $data["detail"]["sel_year"]; $month = $data["detail"]["sel_month"]; if (($month == "") || ($month == "0")) { $month = 1; } $day = "1"; $str_wareki = WorkUtil::to_wareki($year, $month, $day); $color_nm = getColorName($data["stick"]["color"]); $meta_str = $data["maker_name"] . "," . $data["carname"] . "," . str_replace("\r\n", "", $data["grade_name"]) . "," . $str_wareki . "年式"; if (($data["detail"]["sel_month"] != "") && ($data["detail"]["sel_month"] != "0")) { $meta_str .= $data["detail"]["sel_month"] . "月"; } if ($color_nm != "") { $meta_str .= "," . $color_nm; } $meta_base = $meta_str; $meta_str .= "の中古車を購入するならクルモがお得。".$data["maker_name"] . " " . $data["carname"]."の中古車がすぐに探せます。クルモの中古車情報サイトは売却から購入までサポートがついているから安心。中古車の個人売買が誰でも簡単に安全に取引できるクルマのフリマサービスです。"; $smarty->assign("description", str_replace(',', ' ', $meta_str)); // keyword $keyword_str = ""; $keyword_str .= $meta_base; $keyword_str .= ",中古車,個人間,売買,検索,購入,情報,クルモ"; $smarty->assign("keyword", $keyword_str); // title if ($data["car_new_flg"] == CARINFO_SEPARATION_NEW && (!$data["detail"]["sel_year"] || !$data["detail"]["sel_month"])) { $title_str = $data["maker_name"] . " " . $data["carname"] . " " . "新車"; } else { $title_str = $data["maker_name"] . " " . $data["carname"] . " " . $data["detail"]["sel_year"] . "年"; } if (($data["detail"]["sel_month"] != "") && ($data["detail"]["sel_month"] != "0")) { $title_str .= $data["detail"]["sel_month"] . "月"; } if ($data["car_type"] == CARINFO_CARTYPE_STORE) { $title_str .= "(".(int) ($data["detail"]["is_tax_car_price"] / 10000)."万円) "; } else { $title_str .= "(".(int) ($data["detail"]["car_price"] / 10000)."万円) "; } $title_str .= CULUMO_TITLE; $smarty->assign("title", $title_str); //レコメンド設定 $page_max = 30; $disp_num = 3; $search_dt = array(); $search_dt["p"] = 1; $search_dt["page_max"] = $page_max; $search_dt["order_type"] = 11; $search_dt["maker_cd"] = $data["maker_cd"]; $carinfo_id = $data["carinfo_id"]; $search_dt["body_type"] = $data["detail"]["body_type_cd"]; $search = new carinfoSearch(); $attribute = $search->getSearchAttribute($con); //特定ストア用検索 if ($store_car_flg) { $search_dt['car_type'] = array(); $search_dt['car_type'][] = CARINFO_CARTYPE_STORE; $search_dt['ccd'] = $carinfo_cd; $search_dt["maker_cd"] = ""; $search_dt["body_type"] = ""; } $result = $search->find($con, $search_dt, ["exhibit8_add" => false, "partial" => true, "limit" => [($search_dt["p"] - 1) * $page_max, $page_max], "soldout" => 1]); if (count($result) <= 3) { // おすすめ順データ取得 $search_dt["maker_cd"] = ""; $search_dt["body_type"] = ""; $result = $search->find($con, $search_dt, ["exhibit8_add" => false, "partial" => true, "limit" => [($search_dt["p"] - 1) * $page_max, $page_max], "soldout" => 1]); } $carinfo_dt = array(); $bookmark_get = WorkUtil::getBookmark(); $bookmark_list = array(); foreach ($bookmark_get as $val) { $bookmark_list[] .= $val["carinfo_cd"]; } $carinfo_model = new CarinfoSearchModel($con); $carinfo_dt = $carinfo_model->getCarListSupple('detail_recommend', $result, $bookmark_list, $carinfo_id); // 特選車、検討リストが多い順の表示設定 // $carinfo_dt = WorkUtil::sortSpecialCar($carinfo_dt); //ページ制御用のデータを設定 $smarty->assign("carinfo_dt", $carinfo_dt); if (!empty($data["mycarlife_no"])) { $smarty->assign("available_color", json_encode(AVAILABLE_COLOR[$data["mycarlife_no"] - 1])); //addSession("MYCARLIFE_ESTIMATE", "BUY_SAE_CARINFO_MYCARLIFE", ["mycarlife_no" => $data["mycarlife_no"]]); } //画面表示 if (SITE_TYPE == SITE_TYPE_CULUMO) { if ($store_car_flg && array_key_exists('tbcg_group_restore', $data) && array_key_exists('multilingual', CarGroupList) && count($data['tbcg_group_restore']) > 0 && array_key_exists(CarGroupList['multilingual'], $data['tbcg_group_restore']) && (isset($ml_global_flag) && $ml_global_flag) ) { //多言語でストアの場合 $smarty->assign("page_multilingual", true); $smarty->display("special/multilingual/detail/index.tpl"); } else { $smarty->display("detail/index.tpl"); } } elseif (SITE_TYPE == SITE_TYPE_MINT) { $pagination = new Pagination(); $ctl_url_info = $pagination->getCtlUrlInfo(); // loan payment if ($store_car_flg && !empty($data["carsensor_type"])) { $sellDealer = WorkUtil::getSellDealer($data['carinfo_id']); $dealer_car_info = (new exhibition_info())->getDealerCarinfo($sellDealer['dealer_id'], $data["carinfo_id"]); if (!empty($dealer_car_info)) { $carsensorScraping = new CarsensorScraping(); $sellDealer["dealer_carinfo_cd"] = $dealer_car_info["dealer_carinfo_cd"]; $carsensorDetail = $carsensorScraping::getDetailVersion($sellDealer["dealer_carinfo_cd"], "detail"); $carsensorDetail = json_decode($carsensorDetail, true); if (!empty($carsensorDetail) && !empty($carsensorDetail["loanTableTitle"])) { $carsensorDetail["loanFirstMonthlyPrice"] = $carsensorDetail["loanFirstMonthlyPrice"] ? number_format($carsensorDetail["loanFirstMonthlyPrice"]) . "円" : NOT_SET_INFO; $carsensorDetail["loanAdvancePaymentPrice"] = $carsensorDetail["loanAdvancePaymentPrice"] ? number_format($carsensorDetail["loanAdvancePaymentPrice"]) . "円" : NOT_SET_INFO; $carsensorDetail["loanTotalPaymentPrice"] = $carsensorDetail["loanTotalPaymentPrice"] ? number_format($carsensorDetail["loanTotalPaymentPrice"]) . "円" : NOT_SET_INFO; $carsensorDetail["loanNumberPayment"] = $carsensorDetail["loanNumberPayment"] ? number_format($carsensorDetail["loanNumberPayment"]) . "回" : NOT_SET_INFO; $smarty->assign("carsensor_detail", $carsensorDetail); } } } $smarty->assign("site_url", SITE_PROTOCOL . "://" . SITE_URL); $smarty->assign("ctl_path", $ctl_url_info["ctl_path"]); $smarty->assign("list_head_breadcrumb", "中古車アウトレット"); $smarty->assign("total_price_display_txt", "支払総額"); $smarty->display("detail/mint_index.tpl"); } // if($carinfo["carinfo_type"] < CARINFO_TYPE_BORDER) // { // $set_com .= $smarty->fetch("auction/car_detail_tt.tpl"); // } // else // { // $set_com .= $smarty->fetch("auction/car_detail_factory.tpl"); // } } elseif ($rooting_action == "edit") { //更新画面 } elseif ($rooting_action == "create") { //データ新規保存 } elseif ($rooting_action == "update") { //データ更新 } elseif ($rooting_action == "validation") { //データチェック } elseif ($rooting_action == "show") { //データ表示 } elseif ($rooting_action == "store") { //データ保存 } function calcPriceInfo($data, $post_data) { $sel_month = $data["detail"]["sel_month"]; if ($sel_month == 0) { $sel_month = 1; } $data_ar = array(); $data_ar["maker_cd"] = $data["maker_cd"]; $data_ar["carname_cd"] = $data["carname_cd"]; $data_ar["sel_year"] = $data["detail"]["sel_year"]; // $data_ar["sel_month"] = $data["detail"]["sel_month"]; $data_ar["sel_month"] = $sel_month; $data_ar["plan_type"] = $post_data["plan_type"]; $data_ar["trans_pref_id"] = $data["detail"]["prefecture_id"]; $data_ar["trans_addr1"] = $data["detail"]["address_1"]; $data_ar["get_place_type"] = "1"; $data_ar["get_prefecture_id"] = $post_data["move_tdfk"]; $data_ar["get_address1"] = $post_data["move_addr"]; $data_ar["set_use_flg"] = "1"; $data_ar["car_status"] = "1"; $caclMoney_t = WorkUtil::caclMoney($data_ar); return $caclMoney_t; } function makeMessageData(&$data) { if ($data != "") { $str_buf = ""; if (getArrayData($data, "visually_10") == "2") { if (getArrayData($data, "visually_11") == "1") { AddKbn("スレ", $str_buf); } if (getArrayData($data, "visually_12") == "1") { AddKbn("破れ", $str_buf); } if (getArrayData($data, "visually_13") == "1") { AddKbn("コゲ", $str_buf); } } $data["visually_10_str"] = $str_buf; $str_buf = ""; if (getArrayData($data, "visually_20") == "2") { if (getArrayData($data, "visually_21") == "1") { AddKbn("スレ", $str_buf); } if (getArrayData($data, "visually_22") == "1") { AddKbn("破れ", $str_buf); } if (getArrayData($data, "visually_23") == "1") { AddKbn("コゲ", $str_buf); } if (getArrayData($data, "visually_24") == "1") { AddKbn("破損", $str_buf); } if (getArrayData($data, "visually_25") == "1") { AddKbn("欠損", $str_buf); } } $data["visually_20_str"] = $str_buf; $str_buf = ""; if (getArrayData($data, "visually_30") == "2") { if (getArrayData($data, "visually_31") == "1") { AddKbn("スレ", $str_buf); } if (getArrayData($data, "visually_32") == "1") { AddKbn("破れ", $str_buf); } if (getArrayData($data, "visually_33") == "1") { AddKbn("コゲ", $str_buf); } if (getArrayData($data, "visually_34") == "1") { AddKbn("破損", $str_buf); } if (getArrayData($data, "visually_35") == "1") { AddKbn("欠損", $str_buf); } } $data["visually_30_str"] = $str_buf; $str_buf = ""; if (getArrayData($data, "visually_40") == "2") { if (getArrayData($data, "visually_41") == "1") { AddKbn("スレ", $str_buf); } if (getArrayData($data, "visually_42") == "1") { AddKbn("破れ", $str_buf); } if (getArrayData($data, "visually_43") == "1") { AddKbn("コゲ", $str_buf); } } $data["visually_40_str"] = $str_buf; $str_buf = ""; if (getArrayData($data, "visually_50") == "2") { if (getArrayData($data, "visually_51") == "1") { AddKbn("欠損", $str_buf); } } $data["visually_50_str"] = $str_buf; $str_buf = ""; if (getArrayData($data, "visually_60") == "2") { if (getArrayData($data, "visually_61") == "1") { AddKbn("スレ", $str_buf); } if (getArrayData($data, "visually_62") == "1") { AddKbn("破れ", $str_buf); } if (getArrayData($data, "visually_63") == "1") { AddKbn("汚れ", $str_buf); } if (getArrayData($data, "visually_64") == "1") { AddKbn("コゲ", $str_buf); } } $data["visually_60_str"] = $str_buf; $str_buf = ""; if (getArrayData($data, "visually_70") == "2") { if (getArrayData($data, "visually_71") == "1") { AddKbn("スレ", $str_buf); } if (getArrayData($data, "visually_72") == "1") { AddKbn("破れ", $str_buf); } if (getArrayData($data, "visually_73") == "1") { AddKbn("コゲ", $str_buf); } if (getArrayData($data, "visually_74") == "1") { AddKbn("破損", $str_buf); } if (getArrayData($data, "visually_75") == "1") { AddKbn("欠損", $str_buf); } } $data["visually_70_str"] = $str_buf; } } function AddKbn($word, &$str) { if ($str != "") { $str .= "、"; } $str .= $word; } function getColorName($ccd) { $ret = ""; if ($ccd == "") { return $ret; } $dbUtil = new DbUtil(); $param = array(); $param[] = array("colnm" => "color_cd", "value" => str4sql($ccd)); $f_data = $dbUtil->getDataOne("mt_carcolor", $param); $ret = $f_data["color_name"]; return $ret; } //バリデーション function checkValidation() { } //エラー処理の初期処理 function initError($smarty, $result) { } function chk_insure(&$data) { if ($data['car_type'] == 9) { // クルモ限定直販車両の場合(car_type = 9:クルモ通販車両) if (WorkUtil::is_domestic_car($data['car_type'], $data['carinfo_id'])) { // 国産車の場合 if (WorkUtil::is_year_odd($data['car_type'], $data['carinfo_id'])) { // +13年13万kmの場合 $data += array('insure_flag' => '1'); // 保証付き return true; } else { // それ以外の場合 $data += array('insure_flag' => '0'); // 保証なし return false; } } elseif (WorkUtil::is_domestic_car($data['car_type'], $data['carinfo_id']) == false) { // 正規輸入車の場合 if (WorkUtil::is_year_odd($data['car_type'], $data['carinfo_id'])) { // +7年7万kmの場合 $data += array('insure_flag' => '1'); // 保証付き return true; } else { // それ以外の場合 $data += array('insure_flag' => '0'); // 保証なし return false; } } else { // それ以外の場合 error_log("国産車と正規輸入車以外の車両を検出 in 保証: carinfo_id:".$data['carinfo_id']); $data += array('insure_flag' => '0'); // 保証なし return false; } return true; } elseif ($data['car_type'] == 1) { // C車両の場合(car_type = 1:取扱店出品) if (WorkUtil::is_diagnosis($data['carinfo_id'])) { // 診断機エラーがない場合 if (WorkUtil::is_inspect($data['carinfo_id'])) { // 点検日から1ヶ月以内の車両の場合 if (WorkUtil::is_domestic_car($data['car_type'], $data['carinfo_id'])) { // 国産車の場合 if (WorkUtil::is_year_odd($data['car_type'], $data['carinfo_id'])) { // +13年13万kmの場合 $data += array('insure_flag' => '1'); // 保証付き return true; } else { // それ以外の場合 $data += array('insure_flag' => '0'); // 保証なし return false; } } elseif (WorkUtil::is_domestic_car($data['car_type'], $data['carinfo_id']) == false) { // 正規輸入車の場合 if (WorkUtil::is_year_odd($data['car_type'], $data['carinfo_id'])) { // +7年7万kmの場合 $data += array('insure_flag' => '1'); // 保証付き return true; } else { // それ以外の場合 $data += array('insure_flag' => '0'); // 保証なし return false; } } else { // それ以外の場合 $data += array('insure_flag' => '0'); // 保証なし return false; } } else { // それ以外の場合 return false; } } else { // それ以外の場合 return false; } return true; } else { // それ以外の場合(例 0:個人出品車両など) $data += array('insure_flag' => '0'); // 保証なし return false; } } // ボディタイプ(軽自動車、バンなど)を取得する function set_body_shape_str(&$data, $con) { // データ設定 $carinfo_model = new CarinfoSearchModel($con); $id = $carinfo_model->getBodyFormType($data); $name = $carinfo_model->getBodyFormTypeName($id); $data["detail"] += array('body_type_name' => $name); $data["detail"] += array('body_type_cd' => $id); } // 販売元情報取得 function getSellSource($data, $user) { if ($data['car_type'] == "9") { return WorkUtil::getSellDealer($data['carinfo_id']); } else { return $user['nick_name']; } } //店舗定休日 function formatWeek($fdt) { $week = ""; // 日 if ($fdt['holiday_sun'] == "1") { if ($week != "") { $week .= "、"; } $week .= "日"; } // 月 if ($fdt['holiday_mon'] == "1") { if ($week != "") { $week .= "、"; } $week .= "月"; } // 火 if ($fdt['holiday_tue'] == "1") { if ($week != "") { $week .= "、"; } $week .= "火"; } // 水 if ($fdt['holiday_wed'] == "1") { if ($week != "") { $week .= "、"; } $week .= "水"; } // 木 if ($fdt['holiday_thr'] == "1") { if ($week != "") { $week .= "、"; } $week .= "木"; } // 金 if ($fdt['holiday_fri'] == "1") { if ($week != "") { $week .= "、"; } $week .= "金"; } // 土 if ($fdt['holiday_sat'] == "1") { if ($week != "") { $week .= "、"; } $week .= "土"; } if ($week != "") { $week = '毎週'.$week; } // 祝 if ($fdt['holiday_pub'] == "1") { if ($week != "") { $week .= "、"; } $week .= "祝"; } // // 補足 // if($fdt['holiday_opt'] != "") // { // if($week != "") // { // $week .= "、"; // } // $week .= $fdt['holiday_opt']; // } return $week; }