// rollover
function initRollOverImages() {
  var image_cache = new Object();
  $("img.on").each(function(i) {
    var imgsrc = this.src;
    var dot = this.src.lastIndexOf('.');
    var imgsrc_ro = this.src.substr(0, dot) + '_ro' + this.src.substr(dot, 4);
    image_cache[this.src] = new Image();
    image_cache[this.src].src = imgsrc_ro;
    $(this).hover(
      function() { this.src = imgsrc_ro; },
      function() { this.src = imgsrc; });
  });
}

$(document).ready(initRollOverImages);


//popup
function initOpenNewWindow() {
  var popupEvent = function(event) {
    var option = this.href.replace(/^[^\?]+\??/,'').replace(/&/g, ',');
    window.open(this.href, this.rel, option).focus();
    event.preventDefault();
    event.stopPropagation();
  }
  $("a.popup").each(function(i) {
      $(this).click(popupEvent);
      $(this).keypress(popupEvent);
  });
}

$(document).ready(initOpenNewWindow);


//printer friendly
function replace_css(id,url){
  if(!document.getElementById) return false;
  var element = document.getElementById(id);
  if(!element || !element.cloneNode) return false;
  var new_node = element.cloneNode(true);
  new_node.href = url;
  element.parentNode.replaceChild(new_node,element);
  return true;
}

function changeCSS(){
  setTimeout("replace_css('ritsumei','../global/css/print_def.css')",5000);
}

function changeCSS02(){
  setTimeout("replace_css('ritsumei','../global/css/print_def.css')",100);
}


// scrolling page top
function backToTop() {
var x1 = x2 = x3 = 0;
var y1 = y2 = y3 = 0;
if (document.documentElement) {
x1 = document.documentElement.scrollLeft || 0;
y1 = document.documentElement.scrollTop || 0;
}
if (document.body) {
x2 = document.body.scrollLeft || 0;
y2 = document.body.scrollTop || 0;
}
x3 = window.scrollX || 0;
y3 = window.scrollY || 0;
var x = Math.max(x1, Math.max(x2, x3));
var y = Math.max(y1, Math.max(y2, y3));
window.scrollTo(Math.floor(x / 2), Math.floor(y / 2));
if (x > 0 || y > 0) {
window.setTimeout("backToTop()", 25);
}
}


//close window
function closeWin(){
	window.opener = window;
	var win = window.open(location.href,"_self");
	win.close();
}

//loadsubContents
function loadSubContents(uri) {
$(document).ready(function (){	
	jQuery().ajaxStart(function() { jQuery(".loading").show(); });
 jQuery().ajaxStop(function() { jQuery(".loading").hide(); });
	$("#extra-contents").load(uri);
	 });
}

//Cross Browser Script Support
(function(){
// the garble control for safari (XMLHttpRequest#responseText)
var func01 = function(text){
var esc = escape( text );
if( esc.indexOf("%u") < 0 && esc.indexOf("%") > -1 ){
	text = decodeURIComponent( esc );
}
return text;
};

// For AjaxPages.js
if(window.AjaxPages != undefined){
if(navigator.appVersion.indexOf("KHTML") > -1 ){ // for safari
	var _load=AjaxPages.prototype.load;
	AjaxPages.prototype.load = function(){
			return this.template = func01(_load.apply(this, arguments));
	};
}
}

// For jQuery.js
if(window.jQuery != undefined){
if(navigator.appVersion.indexOf("KHTML") > -1 ){ // for safari
	var _httpData=window.jQuery.httpData;
	window.jQuery.httpData=function(r, type){
			try{
					var ct = r.getResponseHeader("content-type");
					var data = !type && ct && ct.indexOf("xml") >= 0;
					data = type == "xml" || data ? r.responseXML : func01(r.responseText);

					// If the type is "script", eval it in global context
					if ( type == "script" )
					jQuery.globalEval( data );

					// Get the JavaScript object, if JSON is used.
					if ( type == "json" )
					eval( "data = " + data );

					// evaluate scripts within html
					if ( type == "html" )
					jQuery("<div>").html(data).evalScripts();

					return data;
			}catch(e){
					return _httpData.apply(this. arguments);
			}
	};
}
}
})();

