/**
 * SUBMIT
 */
function request(fname) {
    document.forms[fname].submit();
}

/**
 * HTMLエスケープ
 */
function htmlspecialchars(ch) {
    ch = ch.replace(/&/g, "&amp;") ;
    ch = ch.replace(/"/g, "&quot;") ;
    ch = ch.replace(/'/g, "&#039;") ;
    ch = ch.replace(/</g, "&lt;") ;
    ch = ch.replace(/>/g, "&gt;") ;
    return ch ;
}
/**
 * HTMLエスケープを戻す
 */
function htmlspecialchars_decode(ch) {
    ch = ch.replace(/(\&amp;)/g, "&") ;
    ch = ch.replace(/(\&quot;)/g, '"') ;
    ch = ch.replace(/(\&#039;)/g, "'") ;
    ch = ch.replace(/(\&lt;)/g, "<") ;
    ch = ch.replace(/(\&gt;)/g, ">") ;
    return ch ;
}


// 
// ↓↓↓ 以下、                                   ↓↓↓
// ↓↓↓ セレクトボックス連動関連（旧サイトより） ↓↓↓
//

var nextImgPath = "/img/next.gif";
var ngNextImgPath = "/img/next_g.gif";

/**
 * 機種のセレクトボックス生成（外部化）
 */
function createSelectBoxModel(_nextList, item_cnt, i) {
    //HTMLエスケープを戻して表示
    _nextList.options[item_cnt] = new Option(htmlspecialchars_decode(model[i][1]), model[i][0]);
}
/**
 * メーカーのセレクトボックス生成（外部化）
 */
function createSelectBoxMaker(_nextList, item_cnt, i) {
    //HTMLエスケープを戻して表示
    _nextList.options[item_cnt] = new Option(htmlspecialchars_decode(maker[i][1]), maker[i][0]);
}
/**
 * シリーズのセレクトボックス生成（外部化）
 */
function createSelectBoxSeries(_nextList, item_cnt, i) {
    //HTMLエスケープを戻して表示
    _nextList.options[item_cnt] = new Option(htmlspecialchars_decode(series[i][1]), series[i][0]);
}

/**
 * 検索実行(submit)
 */
function searchProducts(_model_element, _type) {
    var form = document.forms["mainForm"];    
    //機種ID
    form.elements["model_id"].value = form.elements[_model_element].value;
    form.submit();
}

function structCarrierMakerModel(){
    var _list1 = document.forms['mainForm'].elements['selectCarrier'];
    var _list2 = document.forms['mainForm'].elements['selectCarrierMaker'];
    var _nextList = document.forms['mainForm'].elements['selectCarrierMakerModel'];
    
    var cnt = model.length;
    var item_cnt = 1;
    var dump = "";
    for (i = 0; i < cnt; i ++){
        if (_list1.value == ""){
            // キャリア未選択
            if (model[i][2] != carrierIdDegitalCamera && model[i][2] != carrierIdDegitalVideo && model[i][2] != carrierIdGame){
                createSelectBoxModel(_nextList, item_cnt, i);
                item_cnt++;
            }
        }
        else if (_list2.value != ""){
        alert('me-ka-');
            // メーカー選択
            if (model[i][2] == _list1.value && model[i][3] == _list2.value){
                createSelectBoxModel(_nextList, item_cnt, i);
                item_cnt++;
            }
        }
        else {
            //　キャリアのみ選択
            if (model[i][2] == _list1.value){
                createSelectBoxModel(_nextList, item_cnt, i);
                item_cnt++;
            }
        }
    }
}        
function structCameraSeriesMaker(){
    var _list1 = document.forms['mainForm'].elements['selectCamera'];
    var _list2 = document.forms['mainForm'].elements['selectCameraSeries'];
    var _nextList = document.forms['mainForm'].elements['selectCameraSeriesModel'];
    var cnt = model.length;
    var item_cnt = 1;
    var dump = "";
    var vals = _list1.value.split("@");

    for (i = 0; i < cnt; i ++){
        if (_list1.value == ""){
            // メーカー未選択
            if (model[i][2] == carrierIdDegitalCamera){
                createSelectBoxModel(_nextList, item_cnt, i);
                item_cnt++;
            }
        }
        else if (_list2.value != ""){
            // シリーズ選択
            if (model[i][3] == _list1.value && model[i][5] == _list2.value){
                createSelectBoxModel(_nextList, item_cnt, i);
                item_cnt++;
            }
        }
        else {
            //　メーカーのみ選択
            if (model[i][3] == vals[0] && model[i][2] == carrierIdDegitalCamera){
                createSelectBoxModel(_nextList, item_cnt, i);
                item_cnt++;
            }
        }
    }
}
function structVideoModel(){
    var _list = document.forms['mainForm'].elements['selectVideo'];
    var _nextList = document.forms['mainForm'].elements['selectVideoModel'];
    var cnt = model.length;
    var item_cnt = 1;
    var dump = "";

    for (i = 0; i < cnt; i ++){
        if (_list.value == ""){
            // メーカー未選択
            if (model[i][2] == carrierIdDegitalVideo){
                createSelectBoxModel(_nextList, item_cnt, i);
                item_cnt++;
            }
        }
        else {
            //　メーカーのみ選択
            if (model[i][3] == _list.value){
                createSelectBoxModel(_nextList, item_cnt, i);
                item_cnt++;
            }
        }
    }
}

function changeCarrier(){
    var _list = document.forms['mainForm'].elements['selectCarrier'];
    var _next1List = document.forms['mainForm'].elements['selectCarrierMaker'];
    var _next2List = document.forms['mainForm'].elements['selectCarrierMakerModel'];
    listStruct(_list, _next1List);
    listStruct(_list, _next2List);
    var ctrl1 = document.getElementById("mobile_next1");
    var ctrl2 = document.getElementById("mobile_next2");
    if (_list.value == ""){
        ctrl1.src = ngNextImgPath;
        ctrl2.src = ngNextImgPath;
        searchOff("mobile_search");
    }
    else {
        ctrl1.src = nextImgPath;
        ctrl2.src = ngNextImgPath;
        searchOff("mobile_search");
    }

    var cnt = maker.length;
    var item_cnt = 1;
    for (i = 0; i < cnt; i ++){
        if (maker[i][2] == _list.value){
            createSelectBoxMaker(_next1List, item_cnt, i);
            item_cnt++;
        }
    }
    structCarrierMakerModel();
}
//携帯電話.メーカー選択
function changeCarrierMaker(){
    var _list = document.forms['mainForm'].elements['selectCarrier'];
    var _list2 = document.forms['mainForm'].elements['selectCarrierMaker'];
    var _nextList = document.forms['mainForm'].elements['selectCarrierMakerModel'];
    listStruct(_list, _nextList);
    var ctrl1 = document.getElementById("mobile_next2");
    if (_list2.value == ""){
        ctrl1.src = ngNextImgPath;
        searchOff("mobile_search");
        structCarrierMakerModel();
        return;
    }
    else {
        ctrl1.src = nextImgPath;
        searchOff("mobile_search");
    }
    var cnt = model.length;
    var item_cnt = 1;
    for (i = 0; i < cnt; i ++){
        if (model[i][2] == _list.value && model[i][3] == _list2.value){
            createSelectBoxModel(_nextList, item_cnt, i);
            item_cnt++;
        }
    }
}
function changeCamera(){
    var _list = document.forms['mainForm'].elements['selectCamera'];
    var _next1List = document.forms['mainForm'].elements['selectCameraSeries'];
    var _next2List = document.forms['mainForm'].elements['selectCameraSeriesModel'];
    listStruct(_list, _next1List);
    listStruct(_list, _next2List);
    var ctrl1 = document.getElementById("camera_next1");
    var ctrl2 = document.getElementById("camera_next2");
    if (_list.value == ""){
        ctrl1.src = ngNextImgPath;
        ctrl2.src = ngNextImgPath;
        searchOff("camera_search");
        structCameraSeriesMaker();
        return;
    }
    else {
        ctrl1.src = nextImgPath;
        ctrl2.src = ngNextImgPath;
        searchOff("camera_search");
    }
    
    var vals = _list.value.split("@");
    var cnt = 0;
    var item_cnt = 1;
    if (vals[1] == "0"){
        ctrl2.src = nextImgPath;
        // シリーズは空で機種を選択
        var cnt = model.length;
        for (i = 0; i < cnt; i ++){
            if (model[i][3] == vals[0] && model[i][2]== carrierIdDegitalCamera){
                createSelectBoxModel(_next2List, item_cnt, i);
                item_cnt++;
            }
        }
    }
    else {
        // シリーズを選択
        var cnt = series.length;
        for (i = 0; i < cnt; i ++){
            if (series[i][2] == vals[0]){
                createSelectBoxSeries(_next1List, item_cnt, i);
                item_cnt++;
            }
        }
        structCameraSeriesMaker();
    }
}
function changeCameraSeries(){
    var _list1 = document.forms['mainForm'].elements['selectCamera'];
    var _list2 = document.forms['mainForm'].elements['selectCameraSeries'];
    var _nextList = document.forms['mainForm'].elements['selectCameraSeriesModel'];
    listStruct(_list2, _nextList);
    var ctrl1 = document.getElementById("camera_next2");
    if (_list2.value == ""){
        ctrl1.src = ngNextImgPath;
        searchOff("camera_search");
        structCameraSeriesMaker();
        return;
    }
    else {
        ctrl1.src = nextImgPath;
        searchOff("camera_search");
    }
    var vals = _list1.value.split("@");
    var cnt = model.length;
    var item_cnt = 1;
    var temp = "";
    for (i = 0; i < cnt; i ++){
        temp += model[i][3] + "==" +  vals[0] + "&&" + model[i][2] + "==" + 001  + "&&" +  model[i][4] + "==" +_list2.value;
        if (model[i][3] == vals[0] && model[i][2]== carrierIdDegitalCamera && model[i][4]==_list2.value){
            createSelectBoxModel(_nextList, item_cnt, i);
            item_cnt++;
        }
    }
}
function changeVideo(){
    var _list = document.forms['mainForm'].elements['selectVideo'];
    var _nextList = document.forms['mainForm'].elements['selectVideoModel'];
    listStruct(_list, _nextList);
    var ctrl1 = document.getElementById("video_next1");
    if (_list.value == ""){
        ctrl1.src = ngNextImgPath;
        searchOff("video_search");
        structVideoModel();
        return;
    }
    else {
        ctrl1.src = nextImgPath;
        searchOff("video_search");
    }
    var cnt = model.length;
    var item_cnt = 1;
    for (i = 0; i < cnt; i ++){
        if (model[i][3] == _list.value && model[i][2]== carrierIdDegitalVideo){
            createSelectBoxModel(_nextList, item_cnt, i);
            item_cnt++;
        }
    }
}
function listStruct(_list, _nextList){
    while(_nextList.lastChild)
    {
        _nextList.removeChild(_nextList.lastChild);
    }
    if (_list.value == ""){
    }
    _nextList.options[0] = new Option("--------", "");
}
function selectedLastItem(_ctrl, _btnDivName){
    var div = document.getElementById(_btnDivName);
    if (_ctrl.value == ""){
        searchOff(_btnDivName);//div.innerHTML = "<img src=\"/img/search_g.gif\" alt=\"この条件で調べる\" width=\"140\" height=\"30\" align=\"right\">";
    }
    else{
        div.innerHTML = "<a href=\"javascript: void(0);\" onclick=\"searchProducts('" + _ctrl.id + "','" + _btnDivName + "'); return false;\"><img src=\"/img/search.gif\" alt=\"この条件で調べる\" width=\"140\" height=\"30\" align=\"right\"></a>";
    }
}
function searchOff(_btnDivName){
    var div = document.getElementById(_btnDivName);
    div.innerHTML = "<img src=\"/img/search_g.gif\" alt=\"この条件で調べる\" width=\"140\" height=\"30\" align=\"right\">";
}
function doPageLoaded() {
    var ctrl = document.forms['mainForm'].elements['selectCarrier'];
    ctrl.value = "";
    var ctrl = document.forms['mainForm'].elements['selectCamera'];
    ctrl.value = "";
    var ctrl = document.forms['mainForm'].elements['selectVideo'];
    ctrl.value = "";
    var ctrl = document.forms['mainForm'].elements['selectGame'];
    ctrl.value = "";
}
