var yjFsXmlHttpRequestObj;
var yjfscached = 0;
var yjFsSMALL = 0;
var	yjFsMEDIUM = 1;
var	yjFsLARGE = 2;
var yjFsDefVal = yjFsMEDIUM; 
var yjFsCssFiles = [ 'yj2small.css', 'yj2.css', 'yj2large.css'];
var yjFsCssFilePath = "http://i.yimg.jp/images/css/";
var	yjFsMoji_s_off = "http://i.yimg.jp/yui/jp/change_fs/S.gif";
var	yjFsMoji_m_off = "http://i.yimg.jp/yui/jp/change_fs/M.gif";
var	yjFsMoji_l_off = "http://i.yimg.jp/yui/jp/change_fs/L.gif";
var	yjFsMoji_s_on =  "http://i.yimg.jp/yui/jp/change_fs/S_on.gif";
var	yjFsMoji_m_on =  "http://i.yimg.jp/yui/jp/change_fs/M_on.gif";
var	yjFsMoji_l_on =  "http://i.yimg.jp/yui/jp/change_fs/L_on.gif";
var	yjFsMoji_s_over = "http://i.yimg.jp/yui/jp/change_fs/S_over.gif"; 
var	yjFsMoji_m_over = "http://i.yimg.jp/yui/jp/change_fs/M_over.gif"; 
var	yjFsMoji_l_over = "http://i.yimg.jp/yui/jp/change_fs/L_over.gif"; 
var yjSoutImg = new Image();
yjSoutImg.src = yjFsMoji_s_off;
var yjMoutImg = new Image();
yjMoutImg.src = yjFsMoji_m_off;
var yjLoutImg = new Image();
yjLoutImg.src = yjFsMoji_l_off;
var yjSonImg = new Image();
yjSonImg.src = yjFsMoji_s_on;
var yjMonImg = new Image();
yjMonImg.src = yjFsMoji_m_on;
var yjLonImg = new Image();
yjLonImg.src = yjFsMoji_l_on;
var yjSoverImg = new Image();
yjSoverImg.src = yjFsMoji_s_over;
var yjMoverImg = new Image();
yjMoverImg.src = yjFsMoji_m_over;
var yjLoverImg = new Image();
yjLoverImg.src = yjFsMoji_l_over;

var yjFsHtmlString = {'yjSon' : '<img src="' + yjFsMoji_s_on + '" width="16" height="24" alt="小" id="fsIconSmall" align="absmiddle" style="margin-right:2px;">',
                  'yjSoff': '<a href="#" onClick="onYjfs(\'0\');return false;"><img src="' + yjFsMoji_s_off + '" width="16" height="24" alt="小" onMouseout="yjOut(this);" onMouseover="yjOver(this);" id="fsIconSmall" align="absmiddle" style="margin-right:2px;" border="0"></a>',
                  'yjMon' : '<img src="' + yjFsMoji_m_on + '" width="18" height="24" alt="中" id="fsIconMedium" align="absmiddle" style="margin-right:2px;">',
                  'yjMoff': '<a href="#" onClick="onYjfs(\'1\');return false;"><img src="' + yjFsMoji_m_off + '" width="18" height="24" alt="中" onMouseout="yjOut(this);" onMouseover="yjOver(this);" id="fsIconMedium" align="absmiddle" style="margin-right:2px;" border="0"></a>',
                  'yjLon' : '<img src="' + yjFsMoji_l_on + '" width="20" height="24" alt="大" id="fsIconLarge" align="absmiddle" style="margin-right:2px;">',
                  'yjLoff': '<a href="#" onClick="onYjfs(\'2\');return false;"><img src="' + yjFsMoji_l_off + '" width="20" height="24" alt="大" onMouseout="yjOut(this);" onMouseover="yjOver(this);" id="fsIconLarge" align="absmiddle" style="margin-right:2px;" border="0"></a>'
                 };

var yjFsUa = navigator.userAgent;
var yjFsSafari    = yjFsUa.indexOf("Safari")!=-1;
var yjFsKonqueror = yjFsUa.indexOf("Konqueror")!=-1;
var yjFsMozes     = ( (yjFsA=navigator.userAgent.split("Gecko/")[1] ) ? yjFsA.split(" ")[0] : 0 ) >= 20011128 ;
    
function yjFsGetElement(id) { 
     var element = null;
     try {
          element = document.getElementById(id);
     }
     catch (e) {
         element = document.all[id];
     }
     return element;
}

function yjFsCreateXMLHttpRequest(cbFunc) {
    var XMLhttpObject = null;
    try {
        XMLhttpObject = new XMLHttpRequest();
    } catch (e) {
        try {
            XMLhttpObject = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                XMLhttpObject = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {
                return null;
            }
        }
    }
    if (XMLhttpObject) {
        if (window.opera || yjFsSafari || yjFsMozes) {
            XMLhttpObject.onload = cbFunc;
        } else {
            XMLhttpObject.onreadystatechange = cbFunc;
        }
    }
    return XMLhttpObject;
}

function yjFsProcessRequestChangeInit() {
    if (yjFsXmlHttpRequestObj.readyState == 4) {
        if (yjFsXmlHttpRequestObj.status == 200) {
            var jsonData = eval( '(' + yjFsXmlHttpRequestObj.responseText + ')' );
            yjFsDefVal = jsonData["fs"];
            yjFs_Init();
        }
    }
}

function yjFsProcessRequestChangeGet() {
    if (yjFsXmlHttpRequestObj.readyState == 4) {
        if (yjFsXmlHttpRequestObj.status == 200) {
            var jsonData = eval( '(' + yjFsXmlHttpRequestObj.responseText + ')' );
            yjFsDefVal = jsonData["fs"];
            yjfscached = 1;
        }
    }
}

function yjFsProcessRequestChangeSet() {
    if (yjFsXmlHttpRequestObj.readyState == 4) {
        if (yjFsXmlHttpRequestObj.status == 200) {
            var response = yjFsXmlHttpRequestObj.responseText;
            if ( response.indexOf("success") > 0)  {
                yjfscached = 0;
            }
        }
    }
}

function yjFsInit() {
    if (yjfscached == 1) {
        return;
    } else {
        var url= '/lib/ctlFs_1_0.php?';
        yjFsXmlHttpRequestObj = yjFsCreateXMLHttpRequest(yjFsProcessRequestChangeInit);
        if (yjFsXmlHttpRequestObj) {
            yjFsXmlHttpRequestObj.open("GET", url, true);
            yjFsXmlHttpRequestObj.send("");
        } 
    }
    yjfscached = 1;
}

function yjFsGet() {
    if (yjfscached == 1) {
        return;
    } else {
        var url= '/lib/ctlFs_1_0.php?';
        var d = new Date();
        url += 'd=' + d.getTime();
        yjFsXmlHttpRequestObj = yjFsCreateXMLHttpRequest(yjFsProcessRequestChangeGet);
        if (yjFsXmlHttpRequestObj) {
            yjFsXmlHttpRequestObj.open("GET", url, false);
            yjFsXmlHttpRequestObj.send("");
        } 
    }
}

function yjFsSet(val) {
    var url = '/lib/ctlFs_1_0.php?';
    var d = new Date();
    url += 'd=' + d.getTime() + '&';
    url += val;
    yjFsXmlHttpRequestObj = yjFsCreateXMLHttpRequest(yjFsProcessRequestChangeSet);
    if (yjFsXmlHttpRequestObj) {
        yjFsXmlHttpRequestObj.open("GET", url, false);
        yjFsXmlHttpRequestObj.send("");
    }
}

function yjFsGetValue(key) {
    yjFsGet();
    if (key == 'fs') {
        return yjFsDefVal;
    }
}

function yjFsSetValue(size) {
    var allValue = 'fs=' + size;
    yjFsSet(allValue);
}

function yjFs_Init() {
	var sizeVal = yjFsGetValue('fs');
    var yjfsCtlObj = yjFsGetElement('yjFsCtl');
    if(yjfsCtlObj) {
        var tmpHtml = '<span class="fss">文字サイズ：</span>';
	    tmpHtml += '<span id="yjfsS"></span>';
        tmpHtml += '<span id="yjfsM"></span>';
        tmpHtml += '<span id="yjfsL"></span>';
        tmpHtml += '<img src="http://i.yimg.jp/images/news/navi/line2.gif" align="absmiddle" style="margin-right:2px;" alt="">';
        yjfsCtlObj.innerHTML = tmpHtml;
    }
    yjFsChangeContents(sizeVal);
}


function onYjfs(size) {
    var intSize = parseInt(size);
    if ( intSize >= yjFsSMALL && intSize <= yjFsLARGE ) {
        yjFsSetValue(size);
        yjFsChangeContents(size);
	}
	return false;
}

function yjFsChangeContents(sizeVal) {
	var cssObj = yjFsGetElement("yjFsCss");
    if (cssObj) {
        cssObj.href = yjFsCssFilePath + yjFsCssFiles[sizeVal];
    }

	var yjSObj = yjFsGetElement("yjfsS");
	var yjMObj = yjFsGetElement("yjfsM");
	var yjLObj = yjFsGetElement("yjfsL");
    if (sizeVal == yjFsSMALL ) {
		if (yjSObj) {
            yjSObj.innerHTML = yjFsHtmlString['yjSon'];
        }
		if (yjMObj) {
           yjMObj.innerHTML = yjFsHtmlString['yjMoff'];
        }
		if (yjLObj) {
            yjLObj.innerHTML = yjFsHtmlString['yjLoff'];
        }
    } else if (sizeVal == yjFsMEDIUM ) {
        if (yjSObj) {
            yjSObj.innerHTML = yjFsHtmlString['yjSoff'];
        }
		if (yjMObj) {
           yjMObj.innerHTML = yjFsHtmlString['yjMon'];
        }
		if (yjLObj) {
            yjLObj.innerHTML = yjFsHtmlString['yjLoff'];
        }
    } else if (sizeVal == yjFsLARGE ) {
        if (yjSObj) {
            yjSObj.innerHTML = yjFsHtmlString['yjSoff'];
        }
		if (yjMObj) {
           yjMObj.innerHTML = yjFsHtmlString['yjMoff'];
        }
		if (yjLObj) {
            yjLObj.innerHTML = yjFsHtmlString['yjLon'];
        }
    }
}

function yjOut(obj) {
    var tgtId = obj.id;
    var tgtSize = obj.id.substring(6);
    var tgtObj = yjFsGetElement(tgtId);
    if (tgtObj) {
        if (tgtSize == 'Small') {
            tgtObj.src = yjSoutImg.src;
        } else if (tgtSize == 'Medium') {
            tgtObj.src = yjMoutImg.src;
        } else if (tgtSize == 'Large') {
            tgtObj.src = yjLoutImg.src;
        }
    }
}

function yjOver(obj) {
    var tgtId = obj.id;
    var tgtSize = obj.id.substring(6);
    var tgtObj = yjFsGetElement(tgtId);
    if (tgtObj) {
        if (tgtSize == 'Small') {
            tgtObj.src = yjSoverImg.src;
        } else if (tgtSize == 'Medium') {
            tgtObj.src = yjMoverImg.src;
        } else if (tgtSize == 'Large') {
            tgtObj.src = yjLoverImg.src;
        }
    }
}

