// グローバル変数定義 var initCategory; var xmlurl = "/-/media/cojp/product/support_info/video/scancut/xml/movieconfig-scancut.xml"; // // XML情報取得 // function getXmlData() { var http = new JKL.ParseXML(xmlurl); http.setOutputArrayElements(["movie", "prod"]); var data = http.parse(); return data; } // // GETパラメータの値を配列で取得する // function GetQueryString() { var result = {}; if (1 < window.location.search.length) { // 最初の1文字 (?記号) を除いた文字列を取得する var query = window.location.search.substring(1); // クエリの区切り記号 (&) で文字列を配列に分割する var parameters = query.split('&'); for (var i = 0; i < parameters.length; i++) { // パラメータ名とパラメータ値に分割する var element = parameters[i].split('='); var paramName = decodeURIComponent(element[0]); var paramValue = decodeURIComponent(element[1]); // パラメータ名をキーとして連想配列に追加する result[paramName] = paramValue; } } return result; } // // 初期表示時の処理 // function initMovies() { // GETパラメータからカテゴリを取得する initCategory = getSelectedCategory(); // 初期表示の動画を設定する initDisplays(initCategory); } // // 選択されているカテゴリを取得する // function getSelectedCategory() { var selectedCategory; var bRet; var getParams; // GETパラメータを全て連想配列として取得する getParams = GetQueryString(); // 引数チェック bRet = 'prod' in getParams; // 引数にprodが存在しない場合 if (!bRet) { selectedCategory = "all"; } // 引数にprodが存在する場合 else { selectedCategory = getParams['prod'] } return selectedCategory; } // // 動画情報の初期ディスプレイ表示/非表示切り替え // function initDisplays(selectedCategory) { var movieNo; var categoryName; var data = getXmlData(); var numOfMovie = data["movieconfig"]["movie"].length; var resultDisplay = {}; var cnt = 0; for (var k = 0; k < numOfMovie; k++) { // 配列の初期化 categoryName = new Array(); // 要素の取得 categoryName = data["movieconfig"]["movie"][k]["prod"]; movieNo = data["movieconfig"]["movie"][k]["movieno"]; if (!document.getElementById(movieNo)) { continue; } for (var i = 0; i < categoryName.length; i++) { // 選択されたカテゴリだった場合 if (categoryName[i] == selectedCategory) { resultDisplay[movieNo] = "block"; cnt++; break; } else { resultDisplay[movieNo] = "none"; } } } // 選択されたカテゴリの動画があった場合 if (0 != cnt) { for (key in resultDisplay) { document.getElementById(key).style.display = resultDisplay[key]; } } else { for (key in resultDisplay) { document.getElementById(key).style.display = "block"; } initCategory = "all"; } }