// $Id: pplog2_sj.js,v 2.43 2005/07/29 00:31:26 UG Exp $

  function DispTag(Sel,MsgStr) {

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    //Opera
    if(Operachk) {
      myComment = document.myForm.comment.value;
      document.myForm.comment.value = myComment + Sel;
    }

    //not IE
    else if (!document.selection) {

      var el         = document.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str_before = el.value.substr(0,st);
      var str        = el.value.substr(st,end-st);
      var str_after  = el.value.substr(end);

      var el2         = document.getElementById('acomment');
      var st2         = el2.selectionStart;
      var end2        = el2.selectionEnd;
      var str2_before = el2.value.substr(0,st2);
      var str2        = el2.value.substr(st2,end2-st2);
      var str2_after  = el2.value.substr(end2);

      if (!str && !str2) {
        if (Sel != 'more' && Sel != 'img' && Sel != 'photo' && Sel != 'imgsrc' && Sel != 'hr') {
          var msg = '範囲選択後「' + MsgStr + '」を押してください。';
          alert(msg);
          return;
        }
      }

      if (Sel == 'a' || Sel == 'imgsrc') {
        if (Sel == 'a') {
          var my_link = prompt('URL: ', 'http://');
          if (my_link == 'http://' || my_link == null) {
            alert('リンクするurlを入力してください');
            return;
          } else {
            if(str) {
              el.value = str_before + '<a href="' + my_link + '" target="_blank">' + str + '</a>' + str_after;
            } else {
              el2.value = str2_before + '<a href="' + my_link + '" target="_blank">' + str + '</a>' + str2_after;
            }
          }
        //画像リンク
        } else {
          var my_imglink = prompt('URL: ', 'http://');
          if (my_imglink == 'http://' || my_imglink == null) {
            alert('画像リンクするurlを入力してください');
            return;
          } else {
            if(window.confirm("【comment】に入力しますか?\n【post script】に入力の場合はキャンセルを押してください。")) {
              el.value = str_before + '<img src="' + my_imglink + '" width="" height="">' + str_after;
              document.myForm.comment.focus();
            } else {
              el2.value = str2_before + '<img src="' + my_imglink + '" width="" height="">' + str2_after;
              document.myForm.acomment.focus();
            }
          }
        }
      } else if (Sel == 'more') {
        el.value = str_before + '!!$more!!' + str_after;
        document.myForm.comment.focus();
      } else if (Sel == 'img') {
        if(window.confirm("【comment】に入力しますか?\n【post script】に入力の場合はキャンセルを押してください。")) {
          el.value = str_before + '!!$img' + MsgStr + '!!' + str_after;
          document.myForm.comment.focus();
        } else {
          el2.value = str2_before + '!!$img' + MsgStr + '!!' + str2_after;
          fo = document.myForm.acomment.focus();
        }
      } else if (Sel == 'photo') {
        if(window.confirm("【comment】に入力しますか?\n【post script】に入力の場合はキャンセルを押してください。")) {
          el.value = str_before + '!!$photo' + MsgStr + '!!' + str_after;
          document.myForm.comment.focus();
        } else {
          el2.value = str2_before + '!!$photo' + MsgStr + '!!' + str2_after;
          document.myForm.acomment.focus();
        }
      } else if (Sel == 'hr') {
        if(window.confirm("【comment】に入力しますか?\n【post script】に入力の場合はキャンセルを押してください。")) {
          el.value = str_before + '<' + Sel + ' />' + str_after;
          document.myForm.comment.focus();
        } else {
          el2.value = str2_before + '<' + Sel + ' />' + str2_after;
          document.myForm.acomment.focus();
        }
      } else {
        if(str) {
          el.value = str_before + '<' + Sel + '>' + str + '</' + Sel + '>' + str_after;
          document.myForm.comment.focus();
        } else {
          el2.value = str2_before + '<' + Sel + '>' + str2 + '</' + Sel + '>' + str2_after;
          document.myForm.acomment.focus();
        }
      }

    //IE
    } else {
      var str = document.selection.createRange().text;
      if (!str) {
        if (Sel != 'more' && Sel != 'img' && Sel != 'photo' && Sel != 'imgsrc' && Sel != 'hr') {
          var msg = '範囲選択後「' + MsgStr + '」を押してください。';
          alert(msg);
          return;
        }
      }
      if (Sel == 'a' || Sel == 'imgsrc') {
        if (Sel == 'a') {
          var my_link = prompt('URL: ', 'http://');
          if (my_link == 'http://' || my_link == null) {
            alert('リンクするurlを入力してください');
            return;
          } else {
            document.selection.createRange().text = '<a href="' + my_link + '" target="_blank">' + str + '</a>';
          }
        //画像リンク
        } else {
          var my_imglink = prompt('URL: ', 'http://');
          if (my_imglink == 'http://' || my_imglink == null) {
            alert('画像リンクするurlを入力してください');
            return;
          } else {
            document.myForm.comment.focus();
            document.selection.createRange().text = '<img src="' + my_imglink + '" width="" height="">';
          }
        }
      } else if (Sel == 'more') {
        document.myForm.comment.focus();
        document.selection.createRange().text = '!!$more!!';
      } else if (Sel == 'img') {
        document.myForm.comment.focus();
        document.selection.createRange().text = '!!$img' + MsgStr + '!!';
      } else if (Sel == 'photo') {
        document.myForm.comment.focus();
        document.selection.createRange().text = '!!$photo' + MsgStr + '!!';
      } else if (Sel == 'hr') {
        document.myForm.comment.focus();
        document.selection.createRange().text = '<' + Sel + ' />';
      } else {
        document.selection.createRange().text = '<' + Sel + '>' + str + '</' + Sel + '>';
      }
    }
  }

  function colorsel(Col) {
    document.fontsel.color.value = Col;
    applydisp();
  }

  function backgroundsel(Back) {
    document.fontsel.background.value = Back;
    applydisp();
  }

  function grad_start(Start) {
    document.gradsel.gstart.value = Start;
    //document.gradsel_ok.gstart.value = Start;
  }

  function grad_middle(Middle) {
    document.gradsel.gmiddle.value = Middle;
    //document.gradsel_ok.gmiddle.value = Middle;
  }

  function grad_end(End) {
    document.gradsel.gend.value = End;
    //document.gradsel_ok.gend.value = End;
  }

  function grad_res(Grad_str) {

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    //Opera
    if(Operachk) {
      myComment = opener.document.myForm.comment.value;
      opener.document.myForm.comment.value = myComment + Grad_str;
    }
    //not IE
    else if (!document.selection) {

      var el         = opener.document.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str_before = el.value.substr(0,st);
      var str        = el.value.substr(st,end-st);
      var str_after  = el.value.substr(end);

      var el2         = opener.document.getElementById('acomment');
      var st2         = el2.selectionStart;
      var end2        = el2.selectionEnd;
      var str2_before = el2.value.substr(0,st2);
      var str2        = el2.value.substr(st2,end2-st2);
      var str2_after  = el2.value.substr(end2);

      if (!str && !str2) {
        var msg = '範囲選択後「グラデ」を押してください。';
        alert(msg);
      } else {
        if(str) {
          el.value = str_before + Grad_str + str_after;
        } else {
          el2.value = str2_before + Grad_str + str2_after;
        }
      }

      //IE
    } else {
      var str = opener.document.selection.createRange().text;
      if (!str) {
        var msg = '範囲選択後「グラデ」を押してください。';
        alert(msg);
      } else {
        opener.document.selection.createRange().text = Grad_str;
      }
    }
    close();
  }

  function grad_getStr() {

    var st = document.gradsel.gstart.value;
    var mi = document.gradsel.gmiddle.value;
    var en = document.gradsel.gend.value;

    if(st == "" || st == "#") { alert("開始色を選んでください。"); return;}
    if(mi == "" || mi == "#") { alert("中間色を選んでください。"); return;}
    if(en == "" || en == "#") { alert("最終色を選んでください。"); return;}

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    var str;

    //Opera
    if(Operachk) {
      var op_str = prompt('グラデーションにする文字を入力してください: ', '');
      if (op_str == null) {
        alert('文字を入力してください');
        return;
      } else {
        ret_str = op_str;
      }
    }
    //not IE
    else if (!document.selection) {

      var el         = opener.document.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str        = el.value.substr(st,end-st);

      var el2         = opener.document.getElementById('acomment');
      var st2         = el2.selectionStart;
      var end2        = el2.selectionEnd;
      var str2        = el2.value.substr(st2,end2-st2);

      if(str) {
        ret_str = str;
      } else {
        ret_str = str2;
      }

    //IE
    } else {
      var ret_str = opener.document.selection.createRange().text;
    }

    if(!ret_str && !Operachk) {
      var msg = '範囲選択後「グラデ」を押してください。';
      alert(msg);
      close();
    }

    document.gradsel.str.value = ret_str;
    document.gradsel.submit();
  }

  function font_res() {
    var Background = document.fontsel.background.value;
    var Color = document.fontsel.color.value;
    var Size = document.fontsel.size.value;

    if (Background != '' && Background != '#') {
      Background = 'background:' + Background + '; '
    } else {
      Background = '';
    }

    if (Color != '' && Color != '#') {
      Color = 'color:' + Color + '; '
    } else {
      Color = '';
    }

    if (Size != 'no') {
      Size = 'font-size:' + Size + ';'
    } else {
      Size = '';
    }

    if (Background != '' || Color != '' || Size !='') {
      Font = '<font style="' + Background + Color + Size + '">';
    } else {
      Font = '';
    }

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    //Opera
    if(Operachk) {
      myComment = opener.document.myForm.comment.value;
      opener.document.myForm.comment.value = myComment + Font + ' </font>';
    }
    //not IE
    else if (!document.selection) {

      var el         = opener.document.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str_before = el.value.substr(0,st);
      var str        = el.value.substr(st,end-st);
      var str_after  = el.value.substr(end);

      var el2         = opener.document.getElementById('acomment');
      var st2         = el2.selectionStart;
      var end2        = el2.selectionEnd;
      var str2_before = el2.value.substr(0,st2);
      var str2        = el2.value.substr(st2,end2-st2);
      var str2_after  = el2.value.substr(end2);

      if (!str && !str2) {
        var msg = '範囲選択後「文字装飾」を押してください。';
        alert(msg);
      } else {
        if (Font != '') {
          if(str) {
            el.value = str_before + Font + str + '</font>' + str_after;
          } else {
            el2.value = str2_before + Font + str + '</font>' + str2_after;
          }
        } else {
          if(str) {
            el.value = str_before + str + str_after;
          } else {
            el2.value = str2_before + str + str2_after;
          }
        }
      }

      //IE
    } else {
      var str = opener.document.selection.createRange().text;
      if (!str) {
        var msg = '範囲選択後「文字装飾」を押してください。';
        alert(msg);
      } else {
        if (Font != '') {
          opener.document.selection.createRange().text = Font + str + '</font>';
        } else {
          opener.document.selection.createRange().text = str;
        }
      }
    }
    close();
  }

  function showLAYER(Msg,S){ 

      if(document.all){
        if (S == "") {
          sub.titlebox.value = Msg;
        } else {
          subs.titlebox.value = Msg;
        }
      } else if(document.layers) {
        if (S == "") {
          document.sub.titlebox.open();
          document.sub.titlebox.write(Msg);
          document.sub.titlebox.close();
        } else {
          document.subs.titlebox.open();
          document.subs.titlebox.write(Msg);
          document.subs.titlebox.close();
        }
      } else {
        if (S == "") {
          document.sub.titlebox.value = Msg;
        } else {
          document.subs.titlebox.value = Msg;
        }
      }
  }

  function get_cook(){
    myCookie = "pplog2=";
    myValue = null;
    myStr = document.cookie + ",";
    myOfst = myStr.indexOf(myCookie);
    if (myOfst != -1){
      myStart = myOfst + myCookie.length;
      myEnd   = myStr.indexOf("," , myStart);
      myValue = unescape(myStr.substring(myStart,myEnd));
    }

    if (myValue == null) {
      return ",,";
    } else {
      return myValue;
    }
  }

  function set_cook(myValue,myValue2,myValue3){
    myCookie = "pplog2";
    myExp = new Date();
    myExp.setTime(myExp.getTime()+(30*24*60*60*1000));
    myItem = myCookie + "=" + escape(myValue) + "," + escape(myValue2) + "," + escape(myValue3);
    myExpires = "; expires="+myExp.toGMTString();
    a = myItem + myExpires;
    document.cookie =  a;
  }

  function tmplautopost(){
    document.tmplautopost.submit();
  }

  function adminformpost(){
    document.adminform.submit();
  }

  function blink() {
    if (!document.all) { return; }
    for (i = 0; i < document.all.length; i++) {
      obj = document.all(i);
      if (obj.className == "blink") {
        if (obj.style.visibility == "visible") {
          obj.style.visibility = "hidden";
        } else {
          obj.style.visibility = "visible";
        }
      }
    }
    setTimeout("blink()", 1000);
  }

  function applydisp() {
    var Background = document.fontsel.background.value;
    var Color = document.fontsel.color.value;
    var Size = document.fontsel.size.value;

    if (Background == '' || Background == '#') {
      Background = '';
    }

    if (Color == '' || Color == '#') {
      Color = '';
    }

    if (Size == 'no') {
      Size = '';
    }

    document.getElementById('str').style.background = Background;
    document.getElementById('str').style.color = Color;
    document.getElementById('str').style.fontSize = Size;
  }

  function future() {
    date = new Date();
    if (date.getFullYear) {
      var y = date.getFullYear();
    } else {
      var y = date.getYear();
      if (y < 1900) { 
        y += 1900;
      }
    }
    
    var m = date.getMonth() + 1;
    var d = date.getDate();

    var frmy = document.myForm.year.value;
    var frmm = document.myForm.month.value;
    var frmd = document.myForm.day.value;

    if(y < frmy || (y == frmy && m < frmm) || (y == frmy && m == frmm && d < frmd)) {
      document.myForm.dispflg[3].disabled = false;
      document.myForm.dispflg[4].disabled = false;
    } else {
      document.myForm.dispflg[3].disabled = true;
      document.myForm.dispflg[4].disabled = true;
      document.myForm.dispflg[0].checked = true;
    }
  }

  function RemoveTags() {

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    //Opera
    if(Operachk) {
      alert('Operaではこの機能は使えません');
      return;
    }

    //not IE
    else if (!document.selection) {

      var el         = document.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str_before = el.value.substr(0,st);
      var str        = el.value.substr(st,end-st);
      var str_after  = el.value.substr(end);

      var el2         = document.getElementById('acomment');
      var st2         = el2.selectionStart;
      var end2        = el2.selectionEnd;
      var str2_before = el2.value.substr(0,st2);
      var str2        = el2.value.substr(st2,end2-st2);
      var str2_after  = el2.value.substr(end2);

      if (!str && !str2) {
        var msg = '範囲選択後「タグ除去」を押してください。';
        alert(msg);
        return;
      } else {
        if(str) {
          str = str.replace(/(<\/?)(\w+)([^>]*>)/ig, "");
          el.value = str_before + str + str_after;
        } else {
          str = str2.replace(/(<\/?)(\w+)([^>]*>)/ig, "");
          el2.value = str2_before + str + str2_after;
        }
      }

    //IE
    } else {
      var str = document.selection.createRange().text;
      if (!str) {
        var msg = '範囲選択後「タグ除去」を押してください。';
        alert(msg);
        return;
      }

      str3 = str.replace(/(<\/?)(\w+)([^>]*>)/ig, "");

      document.selection.createRange().text = str3;

      return;
    }
  }


  function PIconDisp(Sel,ajaxflg) {

    if (ajaxflg) {
      d = document;
    } else {
      d = opener.document;
    }

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    //Opera
    if(Operachk) {
      myComment = d.myForm.comment.value;
      d.myForm.comment.value = myComment + Sel;
    }

    //not IE
    else if (!document.selection) {

      var el         = d.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str_before = el.value.substr(0,st);
      var str        = el.value.substr(st,end-st);
      var str_after  = el.value.substr(end);

      var el2         = d.getElementById('acomment');
      var st2         = el2.selectionStart;
      var end2        = el2.selectionEnd;
      var str2_before = el2.value.substr(0,st2);
      var str2        = el2.value.substr(st2,end2-st2);
      var str2_after  = el2.value.substr(end2);

      if(window.confirm("【comment】に入力しますか?\n【post script】に入力の場合はキャンセルを押してください。")) {
        el.value = str_before + Sel + str_after;
        d.myForm.comment.focus();
      } else {
        el2.value = str2_before + Sel + str2_after;
        d.myForm.acomment.focus();
      }

    //IE
    } else {
      var str = d.selection.createRange().text;
      d.myForm.comment.focus();
      d.selection.createRange().text = Sel;
    }
  }

  function ExApply(Url,Fname) {

    var chgstr = '<a href="' + Url + '" target="_blank">'+Fname+'</a>';

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    //Opera
    if(Operachk) {
      if(window.confirm("【comment】に入力する場合はOK\n【post script】に入力する場合はキャンセル\nを押してください。")) {
        myComment = opener.document.myForm.comment.value;
        if(myComment == "") {
          opener.document.myForm.comment.value = chgstr;
        } else {
          opener.document.myForm.comment.value = myComment + "\n" + chgstr;
        }
      } else {
        if(myComment == "") {
          opener.document.myForm.acomment.value = chgstr;
        } else {
          opener.document.myForm.acomment.value = myComment + "\n" + chgstr;
        }
      }
    }

    //not IE
    else if (!document.selection) {

      var el         = opener.document.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str_before = el.value.substr(0,st);
      var str        = el.value.substr(st,end-st);
      var str_after  = el.value.substr(end);

      var el2         = opener.document.getElementById('acomment');
      var st2         = el2.selectionStart;
      var end2        = el2.selectionEnd;
      var str2_before = el2.value.substr(0,st2);
      var str2        = el2.value.substr(st2,end2-st2);
      var str2_after  = el2.value.substr(end2);

      if(window.confirm("【comment】に入力する場合はOK\n【post script】に入力する場合はキャンセル\nを押してください。")) {
        if(el.value == "") {
          el.value = chgstr;
        } else {
          el.value = str_before + "\n" + chgstr + "\n" + str_after;
        }
        opener.document.myForm.comment.focus();
      } else {
        if(el2.value == "") {
          el2.value = str2_before + "\n" + chgstr + "\n" + str2_after;
        } else {
          el2.value = chgstr;
        }
        opener.document.myForm.acomment.focus();
      }

    //IE
    } else {
      var str = opener.document.selection.createRange().text;
      opener.document.myForm.comment.focus();
      opener.document.selection.createRange().text = "\n" + chgstr + "\n";
    }

    close();
  }

  function del_check(fname,i) {

    if(window.confirm('「'+fname+'」のファイルを削除してもよろしいでしょうか?')){ 
      document.forms[i].submit();

    }

  }

  function DispTagIndex(Sel,MsgStr) {

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    //Opera
    if(Operachk) {
      myComment = document.myForm.comment.value;
      document.myForm.comment.value = myComment + Sel;
    }

    //not IE
    else if (!document.selection) {

      var el         = document.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str_before = el.value.substr(0,st);
      var str        = el.value.substr(st,end-st);
      var str_after  = el.value.substr(end);

      if (!str) {
        var msg = '範囲選択後「' + MsgStr + '」を押してください。';
        alert(msg);
        return;
      }

      el.value = str_before + '<' + Sel + '>' + str + '</' + Sel + '>' + str_after;
      document.myForm.comment.focus();

    //IE
    } else {
      var str = document.selection.createRange().text;
      if (!str) {
        var msg = '範囲選択後「' + MsgStr + '」を押してください。';
        alert(msg);
        return;
      }

      document.selection.createRange().text = '<' + Sel + '>' + str + '</' + Sel + '>';
    }
  }

  function RemoveTagsIndex() {

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    //Opera
    if(Operachk) {
      alert('Operaではこの機能は使えません');
      return;
    }

    //not IE
    else if (!document.selection) {

      var el         = document.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str_before = el.value.substr(0,st);
      var str        = el.value.substr(st,end-st);
      var str_after  = el.value.substr(end);

      if (!str) {
        var msg = '範囲選択後「タグ除去」を押してください。';
        alert(msg);
        return;
      } else {
        str = str.replace(/(<\/?)(\w+)([^>]*>)/ig, "");
        el.value = str_before + str + str_after;
      }

    //IE
    } else {
      var str = document.selection.createRange().text;
      if (!str) {
        var msg = '範囲選択後「タグ除去」を押してください。';
        alert(msg);
        return;
      }

      str3 = str.replace(/(<\/?)(\w+)([^>]*>)/ig, "");

      document.selection.createRange().text = str3;

      return;
    }
  }

  function PIconDispIndex(Sel,ajaxflg) {

    if (ajaxflg) {
      d = document;
    } else {
      d = opener.document;
    }

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    //Opera
    if(Operachk) {
      myComment = d.myForm.comment.value;
      d.myForm.comment.value = myComment + Sel;
    }

    //not IE
    else if (!document.selection) {

      var el         = d.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str_before = el.value.substr(0,st);
      var str        = el.value.substr(st,end-st);
      var str_after  = el.value.substr(end);

      el.value = str_before + Sel + str_after;
      dt.myForm.comment.focus();

    //IE
    } else {
      var str = d.selection.createRange().text;
      d.myForm.comment.focus();
      d.selection.createRange().text = Sel;
    }
  }

  function font_res_index() {
    var Background = document.fontsel.background.value;
    var Color = document.fontsel.color.value;
    var Size = document.fontsel.size.value;

    if (Background != '' && Background != '#') {
      Background = 'background:' + Background + '; '
    } else {
      Background = '';
    }

    if (Color != '' && Color != '#') {
      Color = 'color:' + Color + '; '
    } else {
      Color = '';
    }

    if (Size != 'no') {
      Size = 'font-size:' + Size + ';'
    } else {
      Size = '';
    }

    if (Background != '' || Color != '' || Size !='') {
      Font = '<font style="' + Background + Color + Size + '">';
    } else {
      Font = '';
    }

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    //Opera
    if(Operachk) {
      myComment = opener.document.myForm.comment.value;
      opener.document.myForm.comment.value = myComment + Font + ' </font>';
    }
    //not IE
    else if (!document.selection) {

      var el         = opener.document.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str_before = el.value.substr(0,st);
      var str        = el.value.substr(st,end-st);
      var str_after  = el.value.substr(end);

      if (!str) {
        var msg = '範囲選択後「文字装飾」を押してください。';
        alert(msg);
      } else {
        if (Font != '') {
          el.value = str_before + Font + str + '</font>' + str_after;
        } else {
          el.value = str_before + str + str_after;
        }
      }

      //IE
    } else {
      var str = opener.document.selection.createRange().text;
      if (!str) {
        var msg = '範囲選択後「文字装飾」を押してください。';
        alert(msg);
      } else {
        if (Font != '') {
          opener.document.selection.createRange().text = Font + str + '</font>';
        } else {
          opener.document.selection.createRange().text = str;
        }
      }
    }
    close();
  }

  function grad_res_index(Grad_str) {

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    //Opera
    if(Operachk) {
      myComment = opener.document.myForm.comment.value;
      opener.document.myForm.comment.value = myComment + Grad_str;
    }
    //not IE
    else if (!document.selection) {

      var el         = opener.document.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str_before = el.value.substr(0,st);
      var str        = el.value.substr(st,end-st);
      var str_after  = el.value.substr(end);

      if (!str) {
        var msg = '範囲選択後「グラデ」を押してください。';
        alert(msg);
      } else {
        el.value = str_before + Grad_str + str_after;
      }

      //IE
    } else {
      var str = opener.document.selection.createRange().text;
      if (!str) {
        var msg = '範囲選択後「グラデ」を押してください。';
        alert(msg);
      } else {
        opener.document.selection.createRange().text = Grad_str;
      }
    }
    close();
  }

  function grad_getStr_index() {

    var st = document.gradsel.gstart.value;
    var mi = document.gradsel.gmiddle.value;
    var en = document.gradsel.gend.value;

    if(st == "" || st == "#") { alert("開始色を選んでください。"); return;}
    if(mi == "" || mi == "#") { alert("中間色を選んでください。"); return;}
    if(en == "" || en == "#") { alert("最終色を選んでください。"); return;}

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    var str;

    //Opera
    if(Operachk) {
      var op_str = prompt('グラデーションにする文字を入力してください: ', '');
      if (op_str == null) {
        alert('文字を入力してください');
        return;
      } else {
        ret_str = op_str;
      }
    }
    //not IE
    else if (!document.selection) {

      var el         = opener.document.getElementById('comment');
      var st         = el.selectionStart;
      var end        = el.selectionEnd;
      var str        = el.value.substr(st,end-st);

      ret_str = str;

    //IE
    } else {
      var ret_str = opener.document.selection.createRange().text;
    }

    if(!ret_str && !Operachk) {
      var msg = '範囲選択後「グラデ」を押してください。';
      alert(msg);
      close();
    }

    document.gradsel.str.value = ret_str;
    document.gradsel.submit();
  }

  function XmlHttpObjectLoad() {
    var xmlhttp=false;
    /*@cc_on
    @if (@_jscript_version >= 5)
        try {
            xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (E) {
                xmlhttp = false;
            }
        }
    @else
        xmlhttp = false;
    @end @*/
    if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
        try {
            xmlhttp = new XMLHttpRequest();
            xmlhttp.overrideMimeType("text/xml"); 
        } catch (e) {
            xmlhttp = false;
        }
    }
    return xmlhttp;
  }

  var xmlHttp = XmlHttpObjectLoad();
  var xmlHttp2 = XmlHttpObjectLoad();
  var xmlHttp3 = XmlHttpObjectLoad();

  function ic_disp_popup(id,page,md,scurl) {

    //md = 1 --> admin , md == 0 -->index

    if (!document.getElementById) return;
    if (document.getElementById(id).style.display == "block") {
      if(page == 0) {
        document.getElementById(id).style.display = "none"; return;
      }
    }

    var element = document.getElementById(id);
    if (!xmlHttp) return;
    if (md) {
      xmlHttp.open("GET", scurl+"?mode=icon_image_ajax_admin&page="+page,true);
    } else {
      xmlHttp.open("GET", scurl+"?mode=icon_image_ajax_index&page="+page,true);
    }

    xmlHttp.onreadystatechange=function() {
      if (xmlHttp.readyState==4 && xmlHttp.status == 200) {
        element.innerHTML = xmlHttp.responseText;
        element.style.display = "block";
      } else {
        element.innerHTML = "(´･ω･｀)ﾉ くん せっせとお絵描き中...";
        element.style.display = "block";
      }
    }
    xmlHttp.send(null)
  }

  function b_disp(url) {

    var url2 = '<img src="'+url+'" width="20" height="20" alt="太字" border="0" />';

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    if (!Operachk) {
       document.write('<a href="javascript:DispTag(\'b\',\'太字\')">'+url2+'</a>');
    } else {
       document.write('<a href="javascript:DispTag(\'<b> </b>\')">'+url2+'</a>');
    }

  }

  function i_disp(url) {

    var url2 = '<img src="'+url+'" width="20" height="20" alt="斜体" border="0" />';

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    if (!Operachk) {
       document.write('<a href="javascript:DispTag(\'i\',\'斜体\')">'+url2+'</a>');
    } else {
       document.write('<a href="javascript:DispTag(\'<i> </i>\')">'+url2+'</a>');
    }

  }

  function rm_disp(url) {

    var url2 = '<img src="'+url+'" width="20" height="20" alt="タグ除去" border="0" />';

    Operachk = (navigator.userAgent.indexOf("Opera",0) != -1)?1:0;

    if (!Operachk) {
       document.write('<a href="javascript:RemoveTagsIndex()">'+url2+'</a>');
    }

  }

  function pageview(id,scurl,no) {

    if (!document.getElementById) return;

    var element = document.getElementById(id);
    if (!xmlHttp) return;

    xmlHttp.open("GET", scurl+"?mode=pageview&no="+no,true);

    xmlHttp.onreadystatechange=function() {
      if(xmlHttp.readyState==4 && xmlHttp.status == 200) {
        element.innerHTML = xmlHttp.responseText;
      } else {
        element.innerHTML = "(´･ω･｀)ﾉ くん せっせと計算中...";
      }
    }
    xmlHttp.send(null)
  }

  function pagerank(id,scurl) {

    if (!document.getElementById) return;

    var element = document.getElementById(id);
    if (!xmlHttp2) return;

    xmlHttp2.open("GET", scurl+"?mode=pagerank",true);
    xmlHttp2.onreadystatechange=function() {
       if(xmlHttp2.readyState==4 && xmlHttp2.status == 200) {
        element.innerHTML = xmlHttp2.responseText;
      } else {
        element.innerHTML = "(´･ω･｀)ﾉ くん せっせと考え中...";
      }
    }
    xmlHttp2.send(null)
  }

  function onlinechk(id,scurl) {

    if (!document.getElementById) return;

    var element = document.getElementById(id);
    if (!xmlHttp3) return;

    var last_modified = "Thu, 01 Jun 1970 00:00:00 GMT";

    xmlHttp3.open("GET", scurl+"?mode=online",true);
    xmlHttp3.setRequestHeader("If-Modified-Since", last_modified);

    xmlHttp3.onreadystatechange=function() {
       if(xmlHttp3.readyState==4 && xmlHttp3.status == 200) {
        element.innerHTML = xmlHttp3.responseText;
      } else {
        element.innerHTML = "(´･ω･｀)ﾉ くん せっせと確認中...";
      }
    }
    xmlHttp3.send(null)
  }

  function change_alpha(id,type) {

    if(document.all){
      X = event.clientX + document.documentElement.scrollLeft;
      Y = event.clientY + document.documentElement.scrollTop;

    } else {
      X = 0;
      Y = 0;
    }

    if (!document.getElementById) return;
    document.getElementById(id).className = "alpha";

    msgid = "msg" + id;
    dispmsg(msgid,X,Y,type);

  }

  function change_alpha_default(id) {
    if (!document.getElementById) return;
    document.getElementById(id).className = "";

    msgid = "msg" + id;
    hidemsg(msgid);

  }

  function dispmsg(id,x,y,type) {

    if (!document.getElementById) return;
    document.getElementById(id).style.visibility = "visible";

    //type == 1 --> allimage
    //type == 2 --> pickup
    //type == 3 --> recent
    if(type == 1) {
      document.getElementById(id).style.left = x - 80;
      document.getElementById(id).style.top = y + 30;
    } else if(type == 2) {
      document.getElementById(id).style.left = x - 10;
      document.getElementById(id).style.top = y + 25;
    } else {
      document.getElementById(id).style.left = x - 10;
      document.getElementById(id).style.top = y + 25;
    }
  }

  function hidemsg(id) {

    if (!document.getElementById) return;
    document.getElementById(id).style.visibility = "hidden";

  }

