// 外部スタイルシート切り替えスクリプト stylechange.js Ver2.05 minified (c) Re:move! 2006-2009
// e-mail: cheap.sheep.u@gmail.com
// URL: http://re-move.hp.infoseek.co.jp/

var StyleChange=function(){var t=this;

// 初期設定

t.addSelectForm = false;          // 切り替えフォームを自動挿入する(YES=true, NO=false)
t.addElementId = 'stylechange';  // 切り替えフォームを自動挿入する要素のID
t.formLabel     = new Array(     // 切り替えフォームの前後に追加する文字列
	'スタイル：',                       // 前に追加
	'');                                // 後に追加

t.addSelectNone = true;          // 切り替えフォームに'スタイルを指定しない'の項目を追加する(YES=true, NO=false)
t.addSNoneTitle = 'なし';        // 'スタイルを指定しない'の項目に表示される内容
t.disableStyle  = '_disabled';   // 'スタイルを指定しない'の項目のcookie(スタイルシートのタイトルと被らないものを指定)

t.cookieDomain  = '';            // サーバのドメイン(指定しなければURLのドメイン)
t.cookiePath    = '/';           // サイトのパス(指定しなければそのページ)
t.cookieDays    = 30;            // クッキーの有効期限(日)(0を指定するとブラウザを閉じるまで有効)

t.addStyleSheet = false;         // スタイルシートを追加する(YES=true, NO=false)
t.addStyleList  = new Array(     // 追加するスタイルの名前とURLを指定する
//  タイトル   URL            代替スタイル(=1)
	'hoge',    'hoge.css',    0,
	'fuga',    'fuga.css',    1,
	'piyo',    'piyo.css',    1,
'');

t.defaultStyle = '';             // 優先スタイルシートを指定する(yes='スタイルのタイトル',no='')

// 設定ここまで


t.start.apply(t,arguments)};StyleChange.prototype={t:true,f:false,n:null,c:'DOMContentLoaded',a:'alternate',s:'stylesheet',d:document,w:window,styles:[],cookie:null,changed:false,defaultDisabled:[],config:function(o){var t=this,o1='addSelectForm',o2='addElementId',o3='formLabel',o4='addSelectNone',o5='addSNoneTitle',o6='disableStyle',o7='cookieDomain',o8='cookiePath',o9='cookieDays',o10='addStyleSheet',o11='addStyleList',o12='defaultStyle';if(o[o1])t[o1]=o[o1];if(o[o2])t[o2]=o[o2];if(o[o3])t[o3]=o[o3];if(o[o4])t[o4]=o[o4];if(o[o5])t[o5]=o[o5];if(o[o6])t[o6]=o[o6];if(o[o7])t[o7]=o[o7];if(o[o8])t[o8]=o[o8];if(o[o9])t[o9]=o[o9];if(o[o10])t[o10]=o[o10];if(o[o11])t[o11]=o[o11];if(o[o12])t[o12]=o[o12]},start:function(o){var t=this,c=arguments.callee;t.browser={safari:/webkit/.test(navigator.userAgent.toLowerCase())};if(c.done)return;if(o)t.config(o);t.getDefaultStyle();t.getStyles();t.getCookie();t.addEvent(t.w,t.c,function(){t.load()},t.t);t.addEvent(t.w,'unload',function(){t.unload()},t.f);t.addLink();t.change();t.setDefaultDisabled();c.done=t.t},load:function(){var t=this,c=arguments.callee;if(c.done)return;if(t.addSelectForm)t.insert();c.done=t.t},unload:function(){var t=this,i=0,a=t.styles,l=a.length;if(!t.checkChanged())return;for(;i<l;i++){if(a[i].title&&!a[i].disabled){t.setCookie(a[i].title);return}}t.setCookie(t.disableStyle)},addLink:function(){var t=this,i=0,s,a=t.addStyleList,l=a.length,h;if(!t.addStyleSheet)return;h=t.$n('head')[0];for(;i+2<l;i+=3){s=t.createHTMLElement('link');if(a[i])s.title=a[i];s.type='text/css';s.href=a[i+1];s.rel=(a[i+2]?t.a+' ':'')+t.s;s.disabled=!a[i]&&!a[i+2]?t.f:t.t;h.appendChild(s)}t.getStyles()},createHTMLElement:function(n){var t=this;return t.d.createElementNS?t.d.createElementNS('http://www.w3.org/1999/xhtml',n):t.d.createElement(n)},insert:function(){var t=this,g=t.$(t.addElementId),s,d,i,a,l,m,q;if(!g||!g.appendChild)return;s=t.d.createElement('select');s.onchange=function(){t.select(this)};d=t.findStyle(t.cookie)||t.findPreStyle();for(i=0,a=[],l=t.styles,m=l.length;i<m;i++){q=l[i].title;if(!q||a[q])continue;a[q]=t.t;s.appendChild(t.makeOption(q,d))}if(t.addSelectNone)s.appendChild(t.makeOption(t.addSNoneTitle,d,t.disableStyle));g.appendChild(t.d.createTextNode(t.formLabel[0]));g.appendChild(s);g.appendChild(t.d.createTextNode(t.formLabel[1]))},makeOption:function(q,d,v){var t=this,o;if(!v)v=q;o=t.d.createElement('option');o.value=v;if(d==v)o.selected=o.defaultSelected=t.t;o.appendChild(t.d.createTextNode(q));return o},select:function(o){this.change(o.value)},change:function(q){var t=this,i=0,a=t.styles,l=a.length,n,tt,u=arguments.length;q=q?t.findStyle(q):(t.findStyle(t.cookie)||t.findPreStyle());if(!q)return;for(;i<l;i++){n=a[i];tt=n.title;n.disabled=(tt==q||!tt)?t.f:t.t;if(tt&&t.browser.safari&&!u){n.disabled=!n.disabled;n.disabled=!n.disabled}}if(u)t.changed=t.t;if(t.changed)t.setCookie(q)},addEvent:function(g,e,f,c){var t=this,c=arguments.callee;/*@cc_on @if(@_win32)
if(!c.decoy){var s=t.d.createElement('script');s.id='_decoy_';s.defer=t.t;s.src='javascript:void 0';t.$n('head')[0].appendChild(s);c.decoy=t.t}
@end @*/if(t.w.addEventListener){g=e==t.c?t.w:g;g=g||t.w;g.addEventListener(e,f,c)}else if(e==t.c){/*@cc_on @if(@_win32)
g=g==t.w||g==t.d?t.$('_decoy_'):g;g.onreadystatechange=function(){if(this.readyState=='complete'||this.readyState=='loaded'){f()}};
@end @*/t._addEvent(t.w,'onload',f)}else t._addEvent(g,'on'+e,f)},_addEvent:function(g,e,f){var o=g[e];if(typeof o!='function')g[e]=function(){f()};else g[e]=function(){o();f()}},getStyles:function(){var t=this,l,s,i,r;t.styles=[];if(!t.browser.safari&&t.d.styleSheets)return t.styles=t.d.styleSheets;l=t.$n('link');s=t.$n('style');for(i=0,m=l.length;i<m;i++){r=l[i].rel.toLowerCase();if(r.indexOf(t.s)>=0&&(r.indexOf(t.a)==-1||l[i].title))t.styles.push(l[i])}for(i=0,m=s.length;i<m;i++){t.styles.push(t.browser.safari?s[i].sheet:s[i])}},getDefaultStyle:function(){var t=this,m=t.$n('meta'),i=0,l=m.length;for(;i<l;i++){if(m[i].httpEquiv.toLowerCase()=='default-style')t.defaultStyle=m[i].content}},findStyle:function(q){var t=this,i=0,l=t.styles.length;for(;i<l;i++){if(t.styles[i].title==q)return q}return q==t.disableStyle?q:t.n},findPreStyle:function(){var t=this,i=0,l=t.styles.length,q,n,o,r;if(t.findStyle(t.defaultStyle))return t.defaultStyle;for(;i<l;i++){if(t.styles[i].title){n=t.styles[i];o=n.ownerNode||n.owningElement||n;r=o.rel?o.rel.toLowerCase():'';if(r.indexOf(t.s)>=0&&r.indexOf(t.a)==-1)return n.title;else if(!q)q=n.title}}return q||t.n},setDefaultDisabled:function(){var t=this,i=0,l=t.styles.length,q;t.defaultDisabled=[];for(;i<l;i++){q=t.styles[i].title;if(q&&!(t.defaultDisabled[q])){t.defaultDisabled[q]=t.styles[i].disabled}}},checkChanged:function(){var t=this,i=0,l=t.styles.length,q;for(;i<l;i++){q=t.styles[i].title;if(q&&t.styles[i].disabled!=t.defaultDisabled[q])return t.t}return t.changed},getCookie:function(){var t=this,s,i=0,c=t.d.cookie.split('; ');while(c[i]){if(c[i].substr(0,12)=='stylechange='){s=c[i].substr(12,c[i].length);break}i++}t.cookie=s?unescape(s):t.n},setCookie:function(q){var t=this,d,p,e;d=t.cookieDomain?'; domain='+t.cookieDomain:'';p=t.cookiePath?'; path='+t.cookiePath:'';e=t.cookieDays?'; expires='+new Date(new Date().getTime()+t.cookieDays*86400000).toGMTString():'';t.d.cookie='stylechange='+escape(t.cookie=q)+d+p+e},$:function(s){return document.getElementById(s)},$n:function(s){return document.getElementsByTagName(s)}};

var stylechange = new StyleChange();
