/*
 JavaScript lib.js by martin $ 2008/06/26 02:38:41
*/
var d = document, DE = d.documentElement, UD = 'undefined';

var client = oParts.client;
var caretSelection = "", toolTip, ed, loadingImg;
var ImagePath = 'Images/';
var baseURL = oParts.baseURL;

oParts.loadScript(baseURL + 'js/syntax.js');

function googleIt(query){
 window.open(encodeURI("http://www.google.com/search?hl=ja&ie=UTF-8&oe=UTF-8&q="+query));
}
function wikipediaIt(query){
 window.open("http://ja.wikipedia.org/wiki/%E7%89%B9%E5%88%A5:Search?search="+encodeURIComponent(query));
}

function my_confirm(text){
 text += "削除しますか？";
 if(!confirm(text)) return false; else return true;
}

function readMore(self){
 var s, self = o(self), ob = self.sib(1);
 if(!ob.visible()){
  self.title('記事をたたむ').html('&laquo;やっぱり隠す').css('background-position:0 100%'); s = ob.html();
  if(/corner\-play/.test(s)) cornerPlay(ob.$);
  if(/photo\-effect/.test(s)){
   if(typeof photoEffect != UD) photoEffect.init(ob.$);
  }
  ob.show();
 } else {
  self.title('続きをよむ').html('&raquo;続きを読む').css('background-position:0 0');
  ob.hide();
 }
}

function toggleBox(self, target){
 if(!target) return;
 target.toggle(); tv = target.visible();
 self.css('background-position:' + ['0 100%', '0 0'][tv]);
 self.title(['展 開！', '閉じます'][tv]);
 oParts.cookie.set('PPBLOG_SIDEBAR_'+self.parent(2).id.toUpperCase()+'_STATE', ['+', '-'][tv]);
}

Caret = { // マウスで指定したポイントあるいは文字列に要素を挿入
 get : function(){
  if(typeof ed == UD){
   if(o('#Page1')) ed = o('#Page1');
   else if(o('#c_com')) ed = o('#c_com');
   else ed = o('TEXTAREA').item(0);
  }
  if(client.MSIE){
   if(!d.selection.createRange()) ed.focus();
   ed.selected = d.selection.createRange().duplicate();
  } else if(d.getSelection){
   ed.selected = ed.value.substring(ed.selectionStart, ed.selectionEnd);
  } else ed.selected = ' ';
  return caretSelection = client.MSIE ? ed.selected.text : ed.selected;
 },
 set : function(string){
  if(typeof caretSelection == UD || typeof ed == UD) Caret.get();
  if(client.MSIE){
   if(caretSelection.length > 0){
    ed.selected.text = string;
    ed.selected.select();
   } else {
    ed.focus();
    ed.selected = d.selection.createRange().duplicate();
    ed.selected.text = string;
   }
  } else if(d.getSelection && caretSelection.length >= 0 && ed.selectionStart >= 0){
    var s = ed.selectionStart;
    var scrollTop = ed.scrollTop;
    ed.value = ed.value.slice(0,s) + ed.value.slice(s).replace(caretSelection, string);
    ed.setSelectionRange(eval(s+string.length), eval(s+string.length));
    ed.scrollTop = scrollTop;
    ed.focus();
  } else ed.value += string;
 }
}

function loadComments(uid){
 var commentsDiv = o('#responses-' + uid);
 var tar = oParts.target(), ownerDiv = o('#UID' + uid);
 var cform = o('#comment' + uid), tbform = o('#trackbacks-' + uid);
 if(tar.$.disabled) return;
 if(commentsDiv){ // already loaded and displayed
  if(commentsDiv.visible()){
   o([commentsDiv, cform]).hide();
   tar.html(tar.html().replace(/\[\-\]/, '[+]')).css('white-space: nowrap').title('コメントを表示します');
  } else {
   o([commentsDiv, cform]).show();
   tar.html(tar.html().replace(/\[\+\]/, '[-]')).css('white-space: nowrap').title('表示したコメントを隠します');
  }
 } else {
  tar.$.disabled = true;
  ajaxTooltip('コメント'); if(tbform) tbform.away();
  oParts.server.get(baseURL + 'ajax.php?type=comments&aim='+uid, function(data){
   commentsDiv = oParts.fragment(data);
   ownerDiv.addAfter(commentsDiv); commentsDiv = o('#responses-' + uid).view();
   tar.html(tar.html().replace(/\[\+\]/, '[-]')).title('表示したコメントを隠します');
   toolTip.html(' コメント読み込み完了！ ');
   tar.$.disabled = false;
  });
 }
}

function loadCommentForm(uid, entree){ /* from v1.7.0 */
 var cform = o('#comment' + uid), tbform = o('#trackbacks-' + uid);
 if(!cform) ajaxTooltip('コメントフォーム');
 if(typeof ONAME == UD) oParts.loadScript(baseURL + 'ajax.php?type=info');
 oParts.loadScript(baseURL + 'ajax.php?type=json');
 oParts.loadScript(baseURL + 'js/comment.js');
 var ownerDiv = o('#UID' + uid);
 var tar = oParts.target(), div;
 var closec = 'コメントフォームを閉じます', tocf = 'コメントフォームへ';
 var open = ' コメントする ', close = '　閉じる　';
 var commentsDiv = o('#responses-' + uid);
 if(!cform){
  if(ONAME){
   tar.$.disabled = true;
   oParts.server.get(baseURL + 'ajax.php?type=commentform&UID=' + uid, function(data){
    data = data.replace(/<form id="comment" /, '<form ');
    cform = oParts.fragment(data);
    if(commentsDiv){
     commentsDiv.addAfter(cform); cform = o('#comment' + uid);
    } else {
     ownerDiv.addAfter(cform); cform = o('#comment' + uid);
    }
    cform.view();
    if(!entree) tar.html(close).title(closec);
    if(tbform){
     o('p.comment-intro', cform).item(0).away();
     o('p.trackback-alert', cform).away();
    }
    toolTip.hide();
    tar.$.disabled = false;
   }, false);
  }
 } else {
  if(entree){
   cform.show().view();
  } else {
   tar.title() != closec ? cform.show().view() : cform.hide();
   tar.html(cform.visible() ? close : open).css('white-space: nowrap;').title(cform.visible() ? closec : tocf);
  }
 }
}

function loadTrackBacks(uid, entree){ /* from v1.6.3 */
 var tbform = o('#trackbacks-' + uid), cform = o('#comment' + uid), ownerDiv = o('#UID' + uid);
 var commentsDiv = o('#responses-' + uid), tar = oParts.target();
 var close = 'トラックバックエントリーを閉じます';
 if(!tbform){
  ajaxTooltip('TrackBackフォーム');
  tbform = oParts.create('div#trackbacks-'+uid, null, null, true);
  oParts.server.get(baseURL + 'ajax.php?type=trackback&UID='+uid, function(data){
   tbform.html(data);
   ownerDiv.addAfter(tbform);
   tar.title(close);
   if(cform){
    o('p.comment-intro', cform).item(0).away();
    o('p.trackback-alert', cform).away();
   }
  });
 } else {
  tbform.toggle();
  if(!tbform.visible()){
   tar.title('トラックバックエントリーを表示します');
  } else {
   tbform.view();
   tar.title(close);
  }
 }
}

function ajaxTooltip(prefix){ /* from v1.7.0 */
 var x, y, s, a = arguments, e = oParts.evt, cW = oParts.metrics(0), cH = oParts.metrics(1), scY = oParts.metrics(3);
 if(!a[2]){
  x = e.pageX + (cW/2 < e.pageX ? -200 : 90);
  y = e.pageY - 30; s = loaderAni;
 } else {
  x = (cW - 150) / 2; w = 150; s = a[2];
  y = scY + parseInt((cH - 24) * .35);
 }
 if(!o('#ajaxToolTip')){
  toolTip = oParts.create('div#ajaxToolTip', 'background:ivory; border:1px solid #333; padding:3px 5px; text-align: center; font-size:13px; z-index:10000;');
  toolTip.dimension(x, y - 10, 180, 24).on('click', function(){toolTip.hide();});
 } else {
  toolTip = o('#ajaxToolTip').css('opacity:1;').moveTo(x, y - 10).show();
 }
 var txt = '  ' + prefix + (a[1] || '読み込み中...');
 toolTip.html('<img src="'+s+'" alt="loading..." style="vertical-align:middle;"/> ' + txt).sizeTo(txt.length * 12, 24);
}

function loadPage(uid, page){
 ajaxTooltip('次のページを');
 uid = uid.replace(/d$/,'');
 oParts.server.get(baseURL + "ajax.php?type=page&UID="+uid+"&page="+page, function(data){
  var ownerDiv = o("#UID" + uid);
  var articleContent = o(".article-content", ownerDiv);
  articleContent.css('line-height: 1.7;'); ownerDiv.$.scrollIntoView();
  if(client.Opera){
   articleContent.html(''); articleContent.html(data);
   setTimeout(function(){ cornerPlay(articleContent)}, 50);
  } else {
   articleContent.html(data);
   cornerPlay(articleContent);
  }
  if(typeof photoEffect != UD) photoEffect.init(ownerDiv.$);
  if(typeof pettieSyntax != UD) pettieSyntax();
  if(client.Safari) self.pageYOffset = ownerDiv.offsetTop;
 });
}

function loadArticle(uid){
 uid = uid.replace(/d$/,'');
 ajaxTooltip('記事を');
 articleViewer = o('#article-viewer'), offsetY = 160;
 var viewerWidth = parseInt(oParts.metrics(0)-120);
 if(!articleViewer){
  articleViewer = oParts.create('div#article-viewer', 'z-index:5000; display:none;').dimension(60, offsetY, viewerWidth, null);
  var _bt = oParts.create('div', 'background:url(Images/cssbox.png) no-repeat 100% 0; margin:0 0 0 17px; height:17px; padding:0;', articleViewer);
  oParts.create('div', 'margin:0;background:url(Images/cssbox.png) no-repeat 0 0;', _bt).dimension(-17, 0, 17, 17, 'rel');
  var _bl = oParts.create('div', 'background:url(Images/bl.png) repeat-y 0 0; padding-left: 12px; height:100%;', articleViewer); // bor-l
  oParts.create('div', 'height:100%; background:url(Images/br.png) repeat-y 100% 0; padding:0;', _bl); // bor-r
  var _bb = oParts.create('div', 'background:url(Images/cssbox.png) no-repeat 100% 100%; height:17px; margin:0 0 0 17px;', articleViewer); // bor-b
  oParts.create('div', 'margin:0; background:url(Images/cssbox.png) no-repeat left bottom;', _bb).dimension(-17, 0, 17, 17, 'rel'); // bot-l
  articleViewerContent = oParts.create('div', 'background:#fff; height:100%; margin:0 12px 0 0; padding:1em;', _bl.child(0)); // content
  if(client.IE6) articleViewerContent.css('height: 1%;'); // for buggy IE6
  var closeImg1 = oParts.create('img.close-button', 'cursor:pointer;', articleViewer).dimension(0, 0, 75, 16);
  closeImg1.src(closeButton).title('閉じる');
  var closeImg2 = closeImg1.clone(true);
  o([closeImg1, closeImg2]).on('click', function(){
   articleViewer.away();
   if(client.Gecko) o([MozToolTip, MozToolTipShadow]).hide();
  });
  articleViewer.addChild(closeImg2);
  articleViewerContent.on('click', function(){
   setTimeout(
    function(){
     var viewerHeight = articleViewer.css('height');
     closeImg2.moveTo(parseInt(viewerWidth - 100), parseInt(viewerHeight - 35));
    }, 50);
  });
 }
 oParts.server.get(baseURL + "ajax.php?type=article&UID="+uid, function(data){
  if(o('#UID' + uid)){ articleViewer.moveTo(60, offsetY);return;}
  var closeImg1 = articleViewer.child(3), closeImg2 = articleViewer.child(4);
  data = data.split(/\$/);
  articleViewerContent.html(data[0] + data[1] + data[0]);
  if(client.Opera){
   setTimeout(function(){ cornerPlay(articleViewerContent);}, 50);
  } else cornerPlay(articleViewerContent);
  if(typeof photoEffect != UD) photoEffect.init(articleViewerContent.$);
  if(typeof pettieSyntax != UD) pettieSyntax();
  articleViewer.show();
  
  var viewerHeight = articleViewer.css('height');
  closeImg1.moveTo(parseInt(viewerWidth - 100), 15);
  closeImg2.moveTo(parseInt(viewerWidth - 100), parseInt(viewerHeight - 35));
  window.scrollTo(0, offsetY - 50);
 });
}

function loadMedia(ob, movf, ftype){ /* from ppBlog v1.5.5 */
 var clsid;
 if(ob.href.match(/\.3gp|x\-mpeg/)){
  clsid = client.MSIE ? 'classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab"' :
               'type="video/3gpp" data="'+movf+'"';
 } else clsid = 'type="'+ftype+'" data="'+movf+'"';
 ob.style.display = "none";
 ob.parentNode.parentNode.innerHTML += '<div class="media-part">'
  + '<h6 title="動画へのダイレクトリンク">::<a class="media-link" href="'+movf+'">'+movf+'</a>::</h6>'
  + '<object '+clsid+' width="176" height="160">'
  + '<param name="type" value="'+ftype+'" />'
  + '<param name="src" value="'+movf+'" />'
  + '<param name="autoplay" value="true" />'
  + '</object></div>';
}

function cornerPlay(elm){
 var RS = oParts.query('.corner-play', elm);
 if(RS) oParts.server.get(baseURL + 'js/cornerplay.js', function(script){eval(script);});
}

function AjaxLogIn(){
 var id = o('#ID').$, pwd = o('#PWD').$, submit = o('#loginSubmit').$;
 submit.disabled = true;
 if(typeof MD5 == 'object'){
  var auto = (o('#auto_login') && o('#auto_login').checked()) ? 1 : 0;
  oParts.server.post(baseURL + 'admin.php', 'mode=login&ID='+MD5.$(id.value)+'&PWD='+MD5.$(pwd.value)+'&type=ajax&auto_login='+auto,
   function(to){
    if(to.match(/\.php[\?|]$/)){
     d.write('<script type="text\/javascript">window.location.href="'+to+'";<\/script>');
    } else {
     alert(to);
     submit.disabled = false;
     id.focus();
    }
   }
  );
 } else alert("md5.js module Not Loaded!");
}

function AjaxLogInForm(){
 oParts.loadScript(baseURL + 'js/md5.js');
 var info = oParts.loadScript(baseURL + 'ajax.php?type=info');
 var loginCS = new Image(14,14).src = baseURL + 'Images/dialog-close.png';
 var cW = oParts.metrics(0), dH = oParts.metrics(2); 
 var BS = oParts.create('div', 'background-color:#708090; z-index:999; opacity: 0.73;').dimension(0, 0, cW, dH);
 var IO = oParts.create('div', 'z-index:1000; text-align:center;').dimension(Math.round((cW-270)/2), -160, 270, 160);
 IO.css('border:outset 3px #aaa; border-top-width:0; background:#ccc url(Images/login-bg.png) repeat-x; padding:5px 20px 0 20px;');
 var UI = '<h3 style="font-weight: 800;">ppBlog*Login</h3>\n';
 var CS = oParts.create('img', 'cursor:pointer;').title(' 閉じる ').src(loginCS);
 if(info && AUTO_LOGIN){
  IO.dimension(null, 0, null, 120);
  UI += '<p style="line-height:1.3;">自動ログインが有効です.<br />ログインモードに移ります.</p>'
      + '<p><input id="auto_login" name="auto_login" type="hidden" value="1" /></p>';
 } else {
  IO.sizeTo(null, (SOLO ? 180 : 160));
  UI += '<p style="font-weight:600; line-height:1;"><label for="ID"> I D </label><input type="text" name="ID" id="ID" /><br />'
     + '<label for="PWD">PWD </label><input type="password" name="PWD" id="PWD" /></p>'
     + (SOLO ? '<p><label for="auto_login" title="次回から自動ログインモードになります">auto-login mode?</label> '
     + '<input id="auto_login" name="auto_login" type="checkbox" value="1" style="vertical-align: middle;" /><br /></p>\n' : '\n')
     + '<p><button type="submit" id="loginSubmit">&nbsp;</button></p>';
 }
 IO.html(UI); IO.addChild(CS); CS.dimension(287, 4, 14, 14);
 CS.on('click', function(){ o([BS, IO]).away();});
 if(info && AUTO_LOGIN){
  oParts.server.post(baseURL + 'admin.php', "mode=login&type=auto_login&ref="+location.search, function(to){
   if(/\.php/.test(to)){
    if(/</.test(to)) to = baseURL + 'admin.php';
    setTimeout('window.location.replace("'+to+'");', 1200);
   }
  });
 } else {
  var fieldcss = "color:#333; height:21px; vertical-align:middle; padding:2px 8px 0 9px; width:160px; border-width:0;"
              + "margin-bottom: 5px; background: transparent url(Images/txtfield-bg.png) no-repeat 0 0;"
              + 'font: 600 15px "Trebuchet MS", Tahoma, Verdana, Arial, Helvetica;';
  var btncss = "margin:9px auto 0 auto;width:64px; height:28px; border-width:0; cursor:pointer;"
             + "background: transparent url(Images/submit-button.png) no-repeat;";
  o('#loginSubmit').css(btncss).title('Check it out').on('click', AjaxLogIn);
  o('#ID').css(fieldcss).css('margin-left:10px'); o('#PWD').css(fieldcss);
  var slideDown = function(ob){ob.style.top = (parseInt(ob.style.top)+10) +'px'};
  slideDown.loop(30, 16)(IO.$);
  setTimeout(function(){o('#ID').$.focus()}, 1000);
 }
}

function imagePop(e, path, w, h){

 var cW = oParts.metrics(0), cH = oParts.metrics(1), dH = oParts.metrics(2), scY = oParts.metrics(3);
 var ev = oParts.evt.target, ratio, ow = w, oh = h, imgPop;
 if(o('#article-viewer')) articleViewer.moveTo(60, -100000);
 if(w > cW-20 || h > cH-70){
  ratio = Math.min((cW-20)/w, (cH-70)/h);
  w = Math.round(w * ratio); h = Math.round(h * ratio);
 } else ratio = 1;
 if(!imgPop){
  var imgWrap = oParts.create('div', 'background:#fff; z-index:9999; border:1px solid #aaa; padding:10px;');
  imgWrap.dimension(Math.round((cW-w)/2), Math.round((cH-h-67)/2+scY), w, h + 45);
  var imgCaption = oParts.create('p', 'text-align:right; font:500 9pt/1.5 Trebuchet MS; color:navy; display:none;', imgWrap);
  imgCaption.dimension(0, h + 20, w, null);
  imgPop = oParts.create('img', 'background:#fff; border:1px solid #aaa; display:none;', imgWrap).dimension(10, 10, w, h);
  var Screen = oParts.create('div', 'z-index:999').dimension(0, 0, cW, dH).css('background:url('+screenBack+')');
  loadingImg = oParts.create('img', 'background:#fff; z-index:999', imgWrap).moveTo(Math.round(imgWrap.W * .5), Math.round(imgWrap.H * .5));
  var closeImg = oParts.create('img', 'cursor:pointer', imgWrap).dimension(imgWrap.W-68, 15, 75, 16).src(closeButton).title('閉じる');
  if(ratio < 1){
   var expand = oParts.create('img', 'z-index:1000; cursor:pointer; display:none;', imgWrap).dimension(12, 12, 34, 34);
   expand.title(' 実物大で表示 ').src(expandImg);
   expand.active = false;
  }
  loadingImg.src(loadingAni);
  if(client.IE6) Screen.css('opacity:.73');
  var caption = (typeof ev._title == UD) ? ev.title : ev._title;
  caption = caption.replace(/[\r\n]+/g,'<br/>').replace(/\s/g,'&nbsp;');
  caption = caption.split(/<br\/?>/);
  if(caption.length > 1){
   imgCaption.html(caption[0]+'<br />'+caption[1]+' ('+ow+'×'+oh+')');
  } else imgCaption.html('画像をクリックすると閉じます <img src="'+ImagePath+'info2.png" width="21" height="14" alt="info" />');
  imgPop.src(path);
  var imgReady = function(){
   o([imgPop, imgCaption]).show(); loadingImg.hide();
   if(expand) expand.show();
  }
  imgPop.$.complete ? imgReady() : imgPop.on('load', imgReady);
  o([closeImg, imgPop]).on('click', function(){
   if(o('#article-viewer')) articleViewer.moveTo(60, 160);
   if(client.Gecko) o([MozToolTip, MozToolTipShadow]).hide();
   o([imgWrap, Screen]).away();
   imgPop = null;
  });
  if(ratio < 1){
   expand.on('click', function(){
    if(!expand.active){
     imgWrap.dimension(0, scY, ow+3, oh); imgPop.sizeTo(ow, oh); Screen.sizeTo(null, Screen.H < oh ? oh + 20 : null);
     closeImg.moveTo(imgWrap.W - 69, null);
     expand.title(' ウィンドウのサイズに合わせる ').src(unexpandImg); expand.active = true;
    } else {
     imgWrap.dimension(Math.round((cW-w) / 2), Math.round((cH-h-67) / 2 + scY), w, h+45);
     imgPop.sizeTo(w, h); closeImg.moveTo(imgWrap.W-66, null); Screen.sizeTo(null, Screen.H);
     expand.title(' 実物大で表示 ').src(expandImg); expand.active = false;
    }
   });
  } //#ratio==1
  imgPop.title('マウスクリックで閉じます').css('cursor: url('+ImagePath+'zoomout.cur), pointer');
 } //#imgPop==null
}

function initCSSHover(){
 if(client.MSIE){
  if(o('#theme-selector')){
   var root = o('#theme-selector');
   root.on('mouseover', function(){this.className+=' over';});
   root.on('mouseout', function(){this.className=this.className.replace(/ over/, '');});
  }
 }
}

oParts.start(function(){
 var state, sidebars = 'pages,comments,trackbacks,recently,tags,categories,archives,others';
 ImagePath = o('#ppBlogCSS') ? o('#ppBlogCSS').$.href.replace(/(^ht.+?\/theme\/[^/]+?\/).+$/, '$1') + 'Images/' : ImagePath;
 oParts.imgloader({
  'loadingAni' : 'loading.gif',
  'loaderAni' : 'loader.gif',
  'expandImg' : 'expand.png',
  'unexpandImg' : 'unexpand.png',
  'screenBack' : 'screen.png',
  'closeButton' : 'button-close.png'
 }, ImagePath);
 
 if(client.IE6) initCSSHover();

 if(typeof photoEffect != UD) photoEffect.init();
 o(d).on('click', function(){
  var cmt, non, p, s, pid, tar = oParts.target();
  try {
   if(tar.klass('expand-icon')){
    p = tar.parent(2), pid = p.id, s = p.child(1);
    if(p && s) toggleBox(tar, s);
   }
   if(tar.klass('comment-entree') || tar.klass('trackback-entree')){
    cmt = tar.className == 'comment-entree' ? 1 : 0;
    non = /#responses$/.test(tar.$.href) ? 1 : 0;
    while (tar.parent()){
     if(tar.id && /^UID([0-9]+$)/.test(tar.id)){pid = tar.id.slice(3); break;}
     tar = tar.parent();
    }
    if(pid){
     oParts.evt.preventDefault();
     if(cmt){
      non ? loadComments(pid) : loadCommentForm(pid, true);
     } else loadTrackBacks(pid, true);
    }
   }
   if(tar.$.nodeName == 'A'){
    if((' ' + tar.$.rel + ' ').indexOf('external') > 0){
     tar.$.target = '_blank';
    }
    if(/#weblog$/.test(tar.$.href)){
     tar.cancelEvent();
     o('#weblog').view(true);
    }
   }
   if(tar.id == 'login-entree'){tar.cancelEvent(); AjaxLogInForm();}
  } catch (e){}
 }); //#onclick
 
 cornerPlay(d);

 o(d).on('mouseover', function(){
  try {
   var tar = oParts.evt.target;
   if(tar.nodeName == 'A' && tar.rel){
    if((' ' + tar.rel + ' ').indexOf('external') > 0){
     if(tar.title == '') tar.title = '新しいウィンドウ(タブ)で開きます';
    }
   }
  } catch(e){};
 });

 if(client.Gecko) oParts.loadScript(baseURL + 'js/firefoxtooltip.js');

 sidebars.split(',').forEach(function(id){
  var c, ul, $id;
  c = oParts.cookie.get('PPBLOG_SIDEBAR_'+id.toUpperCase()+'_STATE') || '-';
  $id = o('#' + id);
  if($id){
   ul = $id.child(1);
   if(ul){
    c == '+' ? ul.hide() : ul.show();
   } else return;
   var uv = ul.visible(), t = $id.child(0).child(0);
   t.css('background-position:' + ['0 100%', '0 0'][uv]).title(['展開！', '閉じます'][uv]);
  }
 });
 if(typeof pettieSyntax != UD) pettieSyntax();
});

window.alert = function(s){
 if(!confirm(s)) this.alert = function(){ return false};
}

