var ie = navigator.appName.indexOf('Microsoft Internet Explorer') >= 0?1:0;
var ff = navigator.userAgent.indexOf('Gecko') >= 0?1:0;

var btn_images = {
    'systemkaigi' : [
            {
                'static' : 'http://www.hiranosuke.jp/common/images/global_navi_btn1.gif',
                'rollover' : 'http://www.hiranosuke.jp/common/images/global_navi_btn1_r.gif'
            }
    ],
    'contact' : [
            {
                'static' : 'http://www.hiranosuke.jp/common/images/global_navi_btn2.gif',
                'rollover' : 'http://www.hiranosuke.jp/common/images/global_navi_btn2_r.gif'
            }
    ],
    'syakyo' : [
            {
                'static' : 'http://www.hiranosuke.jp/common/images/global_navi_btn3.gif',
                'rollover' : 'http://www.hiranosuke.jp/common/images/global_navi_btn3_r.gif'
            }
    ],
    'kaigohokenka' : [
            {
                'static' : 'http://www.hiranosuke.jp/common/images/global_navi_btn4.gif',
                'rollover' : 'http://www.hiranosuke.jp/common/images/global_navi_btn4_r.gif'
            }
    ],
    'links' : [
            {
                'static' : 'http://www.hiranosuke.jp/common/images/global_navi_btn5.gif',
                'rollover' : 'http://www.hiranosuke.jp/common/images/global_navi_btn5_r.gif'
            }
    ],
    'search_btn' : [
            {
                'static' : 'http://www.hiranosuke.jp/common/images/search_btn_a.gif',
                'rollover' : 'http://www.hiranosuke.jp/common/images/search_btn_a_r.gif'
            }
    ]
};

function swapImage(obj) {
    obj.src = eval('btn_images.' + obj.id + '[0].rollover');
}

function swapImageRestore(obj) {
    var loc = window.location.href;
    var dir = loc.substr(7).split('\/');
    if (dir[1] != obj.id) {
        obj.src = eval('btn_images.' + obj.id + '[0].static');
    }
}

function subCateCTRL(obj) {
var obj_node_len = obj.parentNode.childNodes.length;
        for(i=0; i<obj_node_len; i++) {
            if (obj.parentNode.childNodes[i].className == "ssc-hide") {
                obj.parentNode.childNodes[i].className = "ssc-visible";
                if (obj.firstChild.className != undefined) {
                    obj.firstChild.style.display = 'none';
                    obj.firstChild.nextSibling.style.display = 'inline';
                } else if (obj.firstChild.nextSibling.className != undefined) {
                    obj.firstChild.nextSibling.style.display = 'none';
                    obj.firstChild.nextSibling.nextSibling.style.display = 'inline';
                }
                break;
            }
            if (obj.parentNode.childNodes[i].className == "ssc-visible") {
                obj.parentNode.childNodes[i].className = "ssc-hide";
                if (obj.firstChild.className != undefined) {
                    obj.firstChild.style.display = 'inline';
                    obj.firstChild.nextSibling.style.display = 'none';
                } else if (obj.firstChild.nextSibling.className != undefined) {
                    obj.firstChild.nextSibling.style.display = 'inline';
                    obj.firstChild.nextSibling.nextSibling.style.display = 'none';
                }
                break;
            }
        }
}


function backNumbCTRL(obj) {
         if (obj.firstChild.nodeValue) {
            var tmp_obj_str = obj.firstChild.nodeValue.substr(2);
         }

         if (obj.parentNode.nextSibling.className != undefined) {
             if (obj.parentNode.nextSibling.className == "bn-hide") {
                 obj.parentNode.nextSibling.className = "bn-visible";
                 obj.firstChild.style.display = 'none';
                 obj.firstChild.nextSibling.style.display = 'inline';
             } else if (obj.parentNode.nextSibling.className == "bn-visible") {
                 obj.parentNode.nextSibling.className = "bn-hide";
                 obj.firstChild.style.display = 'inline';
                 obj.firstChild.nextSibling.style.display = 'none';
             }
          } else if(obj.parentNode.nextSibling.nextSibling.className != undefined) {
             if (obj.parentNode.nextSibling.nextSibling.className == "bn-hide") {
                 obj.parentNode.nextSibling.nextSibling.className = "bn-visible";
                 obj.firstChild.style.display = 'none';
                 obj.firstChild.nextSibling.style.display = 'inline';
             } else if (obj.parentNode.nextSibling.nextSibling.className == "bn-visible") {
                 obj.parentNode.nextSibling.nextSibling.className = "bn-hide";
                 obj.firstChild.style.display = 'inline';
                 obj.firstChild.nextSibling.style.display = 'none';
             }
          } 
}


function moreDispCTRL(ctrl, targID) {
    var obj = document.getElementById(targID);
    if (obj.className == 'hide') {
        obj.className = 'visible';
        ctrl.firstChild.nodeValue = '>>続きを閉じる';
        return;
    }
    if (obj.className == 'visible') {
        obj.className = 'hide';
        ctrl.firstChild.nodeValue = '>>続きを読む';
        return;
    }
}


SetEventListner(document,'click',EvnetControl,false);


window.onload = function() {
onLoadedEvents();
emptyColumnCTRL();
}

function emptyColumnCTRL() {
    var clm = document.getElementsByTagName('div');
    for (i=0; i<clm.length; i++) {
        if (clm[i].className != 'entry-body') {
            continue;
        }
        if (clm[i].offsetHeight < 100) {
            clm[i].innerHTML = '<br><br><br><br>' + clm[i].innerHTML;
        }
    }
}


function EvnetControl(e) {

	var targ = null;
	if ( !ie ) {
		targ = e.target;
	} else {
		targ = event.srcElement;
	}

	function err_func(status) {
		alert(status);
	}
	switch (targ.tagName) {
		case 'AREA' :
			if (targ.id) {
                               switch (targ.id) {
                                  case 'fs' :
                                       _bodyFontControl('70%');
                                  break;
                                  case 'fm' :
                                       _bodyFontControl('100%');
                                  break;
                                  case 'fb' :
                                       _bodyFontControl('130%');
                                  break;
                                  default :
                                  break;
                               }
                            };
		break;
		default :
		break;
	}
}

function onLoadedEvents() {
    var loc = window.location.href;
    if (reg_exp(/index_.*\.html/,loc)) {
        if (document.getElementById('new-entries')) {
            document.getElementById('new-entries').style.display = 'none';
        }
        if (document.getElementById('top-news')) {
            document.getElementById('top-news').style.display = 'none';
        }
    }
    loc = loc.replace('\\', '\/');
    var dir = loc.substr(7).split('\/');
    if (document.getElementById(dir[1])) {
        document.getElementById(dir[1]).src = eval('btn_images.' + dir[1] + '[0].rollover');
    }
    
    if (document.getElementById('search')) {
        var targ_btn = document.getElementById('search_btn');
        var targ_obj = document.getElementById('search');
        SetEventListner(targ_btn,'click',function(){replaceToSpace(targ_obj)},false);
        
        var HTMLStrings = '<p style="width:200px;padding:10px;margin:0px;font-size:12px;background-color:#fffdd7;border:1px solid #ccc;">';
        HTMLStrings += '複数のキーワードで検索する場合は、各キーワードを半角スペースで区切って入力してください。';
        HTMLStrings += '</p>'; 
        SetEventListner(targ_obj,'focus',function(){chipHelp(targ_obj, 'on', 0, -3, HTMLStrings)},false);
        SetEventListner(targ_obj,'blur',function(){chipHelp(targ_obj, 'off', 0, -3, HTMLStrings)},false);
        SetEventListner(targ_obj,'keydown',function(){chipHelp(targ_obj, 'off', 0, -3, HTMLStrings)},false);
    }
    textHighlight();
}

function textHighlight() {
    var target = document.getElementById('search-result');
    if (target) {
        var targ_obj = target.getElementsByTagName('DIV');
        var search_str = document.getElementById('search').value;
        if (search_str) {
            var search_strings = search_str.split(' ');
            for(n=0; n<search_strings.length; n++) {
                if (search_strings[n] != '') {
                    replaceToHighlight(targ_obj, search_strings[n]);
                }
            }
        }
    }
}

function replaceToHighlight(targ_obj, search_str) {
    
    if (reg_exp(/[a-z]{1}/, search_str) || reg_exp(/\d{1}/, search_str)) {
        return false;
    }
    

    for (i=0; i<targ_obj.length; i++) {
        if (targ_obj[i].innerHTML != undefined) {
            var tmp_str = targ_obj[i].innerHTML;
            var tmp_reg_str = stripTags(tmp_str);
            if (reg_exp(search_str, tmp_reg_str)) {
                var rep_str = new RegExp(search_str, "gi");
                try {
                    targ_obj[i].innerHTML = tmp_str.replace(rep_str, '<strong style="background-color:#fffca2;color:#333;">' + search_str + '</strong>');
                } catch(e) {
                    continue;
                }
            }
        }
    }
}

function replaceToSpace(targ) {
    targ.value = targ.value.replace(/　/g, ' ');
}

function chipHelp(targ, status,  offsetX, offsetY, HTMLStrings) {
    var mode = 'render';
    
    if (targ == '[object]') {
        mode = 'render';    
    }

    switch (mode) {
        case 'render' :
            if (document.getElementById('chip-help')) {
                var r_elem = document.getElementById('chip-help');
                document.getElementsByTagName('BODY')[0].removeChild(r_elem);
            } else {
                if (status == 'on') {
                    var targ_posi = getElemPositon(targ);
                    var elem = document.createElement('DIV');
                    elem.id = 'chip-help';
                    elem.innerHTML = HTMLStrings;
                    elem.style.position = 'absolute';
                    elem.style.zIndex = 1000000;
                    document.getElementsByTagName('BODY')[0].appendChild(elem);
                    elem.style.left = targ_posi.X + offsetX + 'px';
                    elem.style.top = targ_posi.Y + offsetY - elem.offsetHeight + 'px';
                    SetEventListner(
                        window,
                        'resize',
                        function(){
                            var targ_posi = getElemPositon(targ);
                            elem.style.left = targ_posi.X + offsetX + 'px';
                        },
                        false
                    );
                }
            }
        break;
        case 'view_ctrl' :
            if (document.getElementById(targ).style.display == 'none') {
                document.getElementById(targ).style.display = 'block';
            } else {
                document.getElementById(targ).style.display = 'none';
            }
        break;
        default :
        break;
    }


}

function getElemPositon(targ) {
	elmpos = new Object();
	elmpos.X = targ.offsetLeft;
	elmpos.Y = targ.offsetTop;
	elm = targ;
	while(elm.offsetParent) {
		elm = elm.offsetParent;
		elmpos.X += elm.offsetLeft;
		elmpos.Y += elm.offsetTop;
	}
    return elmpos;
}


//正規表現関数
function reg_exp(exp,str) {
	var exp = new RegExp(exp);
	var res = str.match(exp);
	return res;
}

function stripTags(str) {
	var reg = undefined;
	reg = new RegExp(/<(.*?)>/gi);
	str = str.replace(reg, '');

	reg = new RegExp(/<\/(.*?)>/gi);
	str = str.replace(reg, '');
	
	return str;
};

function _bodyFontControl(param) {
         var _body = document.getElementsByTagName('body')[0];
         if (!_body ) {
            _bodyFontControl(param);
         } else {
           _body.style.fontSize = param;
           _setCookieis('font-settings', param, 1);
         }
}

function _setCookieis(cname, cvalue, cdate) {
         if (!cname && !cvalue) {
             return false;
         }
         document.cookie = 'expires=Thu,01-Jan-70 00:00:01 GMT;path=/';
         var _cname = cname;
         var _cvalue = escape(cvalue);
         var _cdate = new Date();
         _cdate.setTime(_cdate.getTime() + (eval(cdate)*1000*60*60*24));
         var _expdate = _cdate.toGMTString;
         document.cookie = _cname + '=' + cvalue + ';expires=' + _expdate + ';path=/';
         return true;
}

function SetEventListner(element,eventtype,functions,cap) {
	try {
		element.addEventListener(eventtype,functions,cap);
	} catch(e) {
		element.attachEvent('on' + eventtype,functions,cap);
	} finally {
	}
}

function ResetEventListner(element,eventtype,functions,capture) {
	try {
		element.rmoveEventListener(eventtype,functions,capture);
	} catch(e) {
		element.detachEvent('on' + eventtype,functions,capture);
	} finally {
	}
}


function EventControl(e) {
	// バブリング抑止
	try {
		e.stopPropagation();
	} catch(e) {
		window.event.cancelBubble = true;
	} finally {
	}
	
	try {
		e.preventDefault();
	} catch(e) {
		window.event.returnValue = false;
	} finally {
	}
}