/* ==================================================

 * gd-1.0.1.js
 *
 * Copyright (c) Global design, Inc. All rights reserved.
 * http://www.glode.co.jp/ 
 * Version: 1.0.1
 * Last Modified: 2009/02/19
 * Library&Plugin: jQuery 1.3.1
 
================================================== */

(function(a){a.gd={Uri:function(b){var d=this;this.originalPath=b;this.absolutePath=(function(){var c=document.createElement('span');c.innerHTML='<a href="'+b+'" />';return c.firstChild.href})();var g={'schema':2,'username':5,'password':6,'host':7,'path':9,'query':10,'fragment':11};var h=/^((\w+):)?(\/\/)?((\w+):?(\w+)?@)?([^\/\?:]+):?(\d+)?(\/?[^\?#]+)?\??([^#]+)?#?(\w*)/.exec(this.absolutePath);for(var j in g){this[j]=h[g[j]]}this.querys={};if(this.query){a.each(d.query.split('&'),function(){var c=this.split('=');if(c.length==2)d.querys[c[0]]=c[1]})}},cookie:function(c,b,d){if(typeof b!='undefined'){var d=d||{};if(b===null){b='';d=a.extend({},d);d.expires=-1}var g='';if(d.expires&&(typeof d.expires=='number'||d.expires.toUTCString)){var h;if(typeof d.expires=='number'){h=new Date();h.setTime(h.getTime()+(d.expires*24*60*60*1000))}else{h=d.expires}g='; expires='+h.toUTCString()}var j=d.path?'; path='+(d.path):'',e=d.domain?'; domain='+(d.domain):'',k=d.secure?'; secure':'';document.cookie=[c,'=',encodeURIComponent(b),g,j,e,k].join('')}else{var i=null;if(document.cookie&&document.cookie!=''){var n=document.cookie.split(';');for(var o=0;o<n.length;o++){var l=jQuery.trim(n[o]);if(l.substring(0,c.length+1)==(c+'=')){i=decodeURIComponent(l.substring(c.length+1));break}}}return i}},wrapperWidth:function(c,b,d){var g=a.extend({defaultWidth:'100%'},c,b,d);var h=b+'px',j=d+'px',e=a(document.body).width(),k=a(c),i=k.css('minWidth');if(i==undefined){if(e>b){k.css('width',h)}else if(e<d){k.css('width',j)}else{k.css('width',g.defaultWidth)}}else{return}},searchText:function(c){var b=a.extend({searchId:'tmp_query'},c);var d=a('#'+b.searchId),g=d.attr('value');d.focus(function(){if(a(this).attr('value')==g){a(this).attr('value','')}});d.blur(function(){if(a(this).attr('value')==''){a(this).attr('value',g)}})},textSize:function(c){var b=a.extend({cookieName:'text_size',sizeUpClass:'.text_size_up',sizeDownClass:'.text_size_down',sizeNormalClass:'.text_size_normal',smallSize:'80%',defaultSize:'90%',bigSize1:'110%',bigSize2:'130%',smallStr:'これ以上文字を縮小することはできません。',bigStr:'これ以上文字を拡大することはできません。'},c);var d=a.gd.cookie(b.cookieName),g=a(b.sizeUpClass),h=a(b.sizeDownClass),j=a(b.sizeNormalClass),e=a(document.body);if(d==null){e.css('fontSize',b.defaultSize)}else{e.css('fontSize',d)}g.each(function(){a(this).click(function(){switch(e.css('fontSize')){case b.smallSize:e.css('fontSize',b.defaultSize);break;case b.defaultSize:e.css('fontSize',b.bigSize1);break;case b.bigSize1:e.css('fontSize',b.bigSize2);break;case b.bigSize2:alert(b.bigStr);break;default:e.css('fontSize',b.defaultSize);break}a.gd.cookie(b.cookieName,e.css('fontSize'),{path:'/'});return false})});h.each(function(){a(this).click(function(){switch(e.css('fontSize')){case b.smallSize:alert(b.smallStr);break;case b.defaultSize:e.css('fontSize',b.smallSize);break;case b.bigSize1:e.css('fontSize',b.defaultSize);break;case b.bigSize2:e.css('fontSize',b.bigSize1);break;default:e.css('fontSize',b.defaultSize);break}a.gd.cookie(b.cookieName,e.css('fontSize'),{path:'/'});return false})});j.each(function(){a(this).click(function(){e.css('fontSize',b.defaultSize);a.gd.cookie(b.cookieName,e.css('fontSize'),{path:'/'});return false})})},changeStyle:function(o){var l=a.extend({switchClass:'changestyle',switchChooseClass:'changestyle_c',switchChooseBtn:'changestyle_c_btn',switchChoosedefBtn:'changestyle_d_btn',defaultLinkName:'default'},o);var f=a('.'+l.switchClass),m=a('.'+l.switchChooseClass),q=a('.'+l.switchChooseBtn),s=a('.'+l.switchChoosedefBtn),t='cookies',p=a.gd.cookie(t),r=[];if(p!=null){r=p.split(',')}for(var u=0;u<r.length;u++){var w=a.gd.cookie(r[u]),x=w.split(',');cookieLink=a('link[title='+x[1]+']'),cookieLinkPath=cookieLink.attr('href'),defaultCookieLink=a('link[id='+cookieLink.attr('class')+']');defaultCookieLink.attr('href',cookieLinkPath)}f.each(function(){a(this).click(function(){var c=a(this).attr('id'),b;if(c.indexOf('_'+l.defaultLinkName)>-1){var d=c.replace('_'+l.defaultLinkName,'');c=l.defaultLinkName;b=a('link[title='+c+'][id='+d+']')}else{c=c.replace(/^tmp_(.*)/,'$1');b=a('link[title='+c+']')}var g=b.attr('class');v(c,g,b);return false})});q.each(function(){a(this).click(function(){var c=a(this).attr('name'),b=m.filter('[name='+c+']').filter(':checked'),d=b.attr('value'),g;if(d==l.defaultLinkName){g=a('link[title='+d+'][id='+c+']')}else{g=a('link[title='+d+']')}v(d,c,g);return false})});s.click(function(){var c=l.defaultLinkName,b=a(this).attr('name'),d=m.filter('[value='+l.defaultLinkName+'][name='+b+']');if(c==l.defaultLinkName){changeLink=a('link[title='+c+'][id='+b+']')}else{changeLink=a('link[title='+c+']')}v(c,b,changeLink);d.attr('checked',true);return false});function v(c,b,d){var g=d.attr('href'),h=a('#'+b),j=h.attr('href'),e=a.gd.cookie(b);if((e)==null){e=j+','+c;a.gd.cookie(b,e,{path:'/'})}else{var k=a.gd.cookie(b),i=k.split(','),n;i[1]=c;n=i.join(',');a.gd.cookie(b,n,{path:'/'})}if(d.attr('id')==d.attr('class')){h.attr('href',i[0])}else{h.attr('href',g)}if(p==null){p=b}else if(p.indexOf(b)==-1){p+=(','+b)}a.gd.cookie(t,p,{path:'/'})}},pageScroll:function(p){var r=(function(){var e=a.extend({easing:100,step:30,fps:60,fragment:''},p);e.ms=Math.floor(1000/e.fps);var k;var i={stepCount:0,startY:0,endY:0,lastY:0};function n(){if(i.stepCount==e.step){o(i.hrefdata.absolutePath);window.scrollTo(f(),i.endY)}else if(i.lastY==l()){i.stepCount++;window.scrollTo(f(),s());i.lastY=s();k=setTimeout(n,e.ms)}else{if(l()+q()==m()){o(i.hrefdata.absolutePath)}}}function o(c){location.href=c}function l(){return document.body.scrollTop||document.documentElement.scrollTop}function f(){return document.body.scrollLeft||document.documentElement.scrollLeft}function m(){return document.documentElement.scrollHeight||document.body.scrollHeight}function q(){return(!a.browser.safari&&!a.browser.opera)?document.documentElement.clientHeight||document.body.clientHeight||document.body.scrollHeight:window.innerHeight}function s(){return Math.floor(t(i.startY,i.endY,i.stepCount,e.step,e.easing))}function t(c,b,d,g,h){var j=d/g;return(b-c)*(j+h/(100*Math.PI)*Math.sin(Math.PI*j))+c}return{set:function(c){this.stop();if(c.startY==undefined)c.startY=l();i=a.extend(i,c);i.lastY=i.startY;k=setTimeout(n,e.ms)},stop:function(){clearTimeout(k);i.stepCount=0}}})();a('a[href^=#], area[href^=#]').not('a[href=#], area[href=#]').each(function(){this.hrefdata=new a.gd.Uri(this.getAttribute('href'))}).click(function(){var c=a('#'+this.hrefdata.fragment);if(c.length==0)c=a('a[name='+this.hrefdata.fragment+']');if(c.length){r.set({endY:c.offset().top,hrefdata:this.hrefdata});return false}})},activeLink:function(b,d){var g=a.extend({activeClass:'active',activeThisClass:'active_this',referId:'#tmp_pankuzu'},b,d);var h=String(window.location.href).replace(/index\..*/,''),j=a(b),e=j.find("a"),k=a(g.referId+' a');k=String(k[d]).replace(/index\..*/,'');e.each(function(){this.hrefdata=new a.gd.Uri(this.getAttribute('href'));var c=this.hrefdata.absolutePath.replace(/index\..*/,'');if(c.indexOf('#')==-1){if(h==c){a(this).parent().addClass(g.activeClass);a(this).addClass(g.activeThisClass)}if(k==c){a(this).parent().addClass(g.activeClass)}}})},rollover:function(g){var h=a.extend({onImg:'_on.',offImg:'_off.',activeClass:'active'},g);a(g).each(function(){var d=a(this).find('img').filter('[src*='+h.offImg+']');d.each(function(){var c=a(this).attr('src'),b=this.src;this.preImg=new Image();this.preImg.src=c.replace(h.offImg,h.onImg);if(a(this).parent().parent().hasClass(h.activeClass)){this.src=this.preImg.src;return true}a(this).mouseover(function(){this.src=this.preImg.src});a(this).mouseout(function(){this.src=b})})})},tab:function(l,f){var m=a.extend({tabNavSelector:'tab_menu',activeTabClass:'active',activeImgName:'_on.',nonActiveImgName:'_off.'},l,f),q=' .'+m.tabNavSelector;a(l+q).each(function(){var j=a(this).find('a[href^=#],area[href^=#]').not('a[href=#],area[href^=#]'),e,k=j.find('img[src*='+m.nonActiveImgName+']'),i=new a.gd.Uri(j.filter(':first').attr('href')).fragment;j.each(function(){this.hrefdata=new a.gd.Uri(this.getAttribute('href'));var h='#'+this.hrefdata.fragment;if(e){e=e.add(h)}else{e=a(h)}a(this).click(function(){var g=a(this).closest(q);g.removeClass();g.addClass(m.tabNavSelector);g.addClass(this.hrefdata.fragment);j.parent().removeClass(m.activeTabClass);a(this).parent().addClass(m.activeTabClass);a(this).find('img[src*='+m.nonActiveImgName+']').each(function(){var b=a(this).attr('src'),d=b.replace(m.nonActiveImgName,m.activeImgName);k.each(function(){var c=a(this).attr('src'),c=c.replace(m.activeImgName,m.nonActiveImgName);a(this).attr('src',c)});a(this).attr('src',d)});switch(f){case'normal':e.hide();a(h).show();break;case'fade':e.filter(':visible').fadeOut('slow',function(){a(h).fadeIn('fast')});break;case'slide':e.filter(':visible').animate({height:'1px'},300,'linear',function(){e.filter(':visible').css('height','auto');e.filter(':visible').hide();a(h).slideDown('fast')});break;default:e.filter(':visible').hide();a(h).show();break}return false})});k.each(function(){var c=a(this).attr('src').replace(m.nonActiveImgName,m.activeImgName);this.preImage=new Image();this.preImage.src=c});var n=k.filter(':first');if(n.length>0){var o=n.attr('src').replace(m.nonActiveImgName,m.activeImgName);k.filter(':first').attr('src',o)}j.filter(':first').parent().addClass(m.activeTabClass);e.hide();e.filter(':first').show();a(this).addClass(i)})},switchMenu:function(o,l){var f=a.extend({switchNavSelector:'switch_menu',switchBtn:'switch',switchCnt:'switch_cnt',activeSwitchClass:'active',activeImgName:'_on.',nonActiveImgName:'_off.',activeImgAlt:'メニューを閉じます',nonActiveImgAlt:'メニューを開きます'},o,l);a(o+' .'+f.switchNavSelector).each(function(){var g=a(this).find('.'+f.switchBtn),h=g.find('img[src*='+f.nonActiveImgName+']'),j=a(this).find('.'+f.activeSwitchClass).parent();switchCnt=a(this).find('.'+f.switchCnt);if(j.hasClass(f.switchCnt)){j.addClass(f.activeSwitchClass)};switchCnt.each(function(){if(a(this).hasClass(f.activeSwitchClass)){a(this).parent().addClass(f.activeSwitchClass);return true}if(!a(this).hasClass(f.activeSwitchClass)){a(this).hide()}});var e=a(this).find('.'+f.activeSwitchClass+' a'),k=e.find('img[src*='+f.nonActiveImgName+']'),i=k.attr('src');h.each(function(){var c=a(this).attr('src');this.preImg=new Image();this.preImg.src=c.replace(f.nonActiveImgName,f.activeImgName)});a(this).find('.'+f.activeSwitchClass+' .'+f.switchCnt).addClass(f.activeSwitchClass).show();n(e,i,k);g.click(function(){var c=a(this).nextAll('.'+f.switchCnt).eq(0),b=a(this).find('img[src*='+f.nonActiveImgName+'],img[src*='+f.activeImgName+']'),d=b.attr('src');a(this).parent().toggleClass(f.activeSwitchClass);c.toggleClass(f.activeSwitchClass);switch(l){case'normal':c.toggle();break;case'slide':c.filter(':visible').animate({height:'1px'},300,function(){c.css('height','auto');c.hide()});c.filter(':hidden').slideDown("fast");break;default:c.toggle();break}n(a(this),d,b);return false});function n(c,b,d){if(b){if(c.parent().hasClass(f.activeSwitchClass)){b=b.replace(f.nonActiveImgName,f.activeImgName);d.attr('alt',f.activeImgAlt)}else{b=b.replace(f.activeImgName,f.nonActiveImgName);d.attr('alt',f.nonActiveImgAlt)}c.find('img[src*='+f.nonActiveImgName+'],img[src*='+f.activeImgName+']').attr('src',b)}}})},stripe:function(c,b){var d=a.extend({oddClass:'odd',evenClass:'even'},c,b);a(c).find('li:odd').addClass(d.evenClass);a(c).find('li:even').addClass(d.oddClass);a(b).find('tr:odd').addClass(d.evenClass);a(b).find('tr:even').addClass(d.oddClass)}}})(jQuery);