var isGecko = false;
if(navigator){
    if(navigator.userAgent){
        if(navigator.userAgent.indexOf("Gecko/") != -1){
            isGecko = true;
        }
    }
}

function openPanel(url, name) {
    var p = window.open(url, name, 'width=575,height=400,resizable=yes,scrollbars=yes');
    p.focus();
    return p;
}

function openPanelPreview(url, name) {
    var p = window.open(url, name, 'width=200,height=500,resizable=yes,scrollbars=yes');
    p.focus();
    return p;
}

function openPanelLarge(url, name) {
    var p = window.open(url, name, 'width=575,height=680,resizable=yes,scrollbars=yes');
    p.focus();
    return p;
}

function getSelectionRange(e) {
    var str;
    if (document.selection) {
	str = document.selection.createRange().text;
    }
    else if(isGecko){
	var start = e.selectionStart;
	var end = e.selectionEnd;
	str = e.value.substring(start, end);
    }
    else {
        str = '';
    }
    return str;
}

function setSelectionRange(e, v) {
    if(document.selection) {
	if(getSelectionRange(e))
	    document.selection.createRange().text = v;
	else
	    e.value = e.value + v;
    }
    else if(isGecko){
	var start = e.selectionStart;
	var end = e.selectionEnd;
	var len = e.textLength;
	var str = e.value.substring(start, end);
	var head = e.value.substring(0, start);
	var foot = e.value.substring(end, len);
	e.value = head + v + foot;
    }
    else {
        e.value = e.value + v;
    }
}

function tag(e, v, a) {
     var sv = a ? v + " " + a : v;
     var str = getSelectionRange(e);
     setSelectionRange(e, '<' + sv + '>' + str + '</' + v + '>');
}

function linkPrompt(e) {
    var link = prompt('URL: ', '');
    if(link != null)
	setLink(e, link);
}

function setLink(e, url) {
    var attrs = 'href="' + url + '"';
    tag(e, 'a', attrs);
}

function setSearchLink(e) {
    var query = getSelectionRange(e);
    var searchLink = "http://search.livedoor.com/search/?ie=utf8&lr=lang_ja&c=ld_blogjp_sl&q="
    if(query) {
	searchLink += encodeURIComponent(query);
	var attrs = 'href="' + searchLink + '"' + ' target="_blank"';
	tag(e, 'a', attrs);
    }
}

function checkAll(form, flag) {
    for (var i = 0; i < form.elements.length; i++) {
	var e = form.elements[i];
	if(e.type == 'checkbox'){
	    e.checked = flag;
	}
    }
}

function submitOnce(button) {
    submitOnce = function() {
        alert("ただいま処理中です。しばらくお待ち下さい。");
        return false;
    }
    button.disabled = true;
    return true;
}

function setDateTime(form, name) {
    var d = new Date();
    var YYYY = d.getFullYear();
    var MM = d.getMonth() + 1;
    var DD = d.getDate();
    var H = d.getHours();
    var M = d.getMinutes();
    var list = ['YYYY', 'MM', 'DD', 'H', 'M'];
    for(var i = 0; i < list.length; i++) {
	var form_name = name + "_" + list[i];
	form[form_name].value = eval(list[i]);
    }
}

function setStartPage() {
      var b = document.body;
      var ua = navigator.userAgent;
      var ie = ua.indexOf("MSIE");
      var iever = parseInt(ua.substring(ie+5, ie+6));
      var os = ua.indexOf("Windows");
      if(ie > 0 && iever >= 5 && os > 0 && !window.opera){
	 var homepage = "http://www.livedoor.com";
	 var jumpto = "http://www.livedoor.com/r/set_blog/";
	 b.style.behavior = "url('#default#homepage')";
	 var is_home =
	     b.isHomePage(homepage) || b.isHomePage(homepage + "/");
          if(is_home)
              alert("livedoor はすでにスタートページに設定されています。");
          else
              b.setHomePage(homepage + "/");
	 is_home =
	     b.isHomePage(homepage) || b.isHomePage(homepage + "/");
	 if(is_home) {
	     document.location.replace(jumpto);
	 } else {
	     document.location.replace(homepage);
	 }
      }
      else {
          document.location.href="http://helpguide.livedoor.com/start.html";
      }
}
