// ====
// blog editer seesaa.jp
// ====
var edit_target = null;
function SetTag (v) {
	if (! document.selection) return;
	var sel = document.selection.createRange();
	if (! sel.text) return;
	sel.text = '<' + v + '>' + sel.text + '</' + v + '>';
}
function SetLink () {
    if (! document.selection) return;
    var sel = document.selection.createRange();
    if (! sel.text) return;
    var link = prompt('URL: ', 'http://');
    if (link != null) sel.text = '<a href="' + link + '" target="_blank">' + sel.text + '</a>';
}
function SetPictogram (v) {
	if (edit_target) edit_target.value = edit_target.value + v;
}

function addSelection(obj, startTag, endTag) {
  var d = document;
  if(d.selection){  //IE
    var str = document.selection.createRange().text;
    if(str){
      with(obj){
	document.selection.createRange().text = startTag + str + endTag;
	return;
      }
    }
  }
  else if ((obj.selectionEnd - obj.selectionStart) >0) {  //Mozilla
    var startPos = obj.selectionStart;
    var endPos   = obj.selectionEnd;

    obj.value = obj.value.substring(0, startPos)
      + startTag + obj.value.substring(startPos, endPos) + endTag
      + obj.value.substring(endPos, obj.value.length);
    return;
  }
  else {
    obj.value += startTag + endTag;
  }
}

function addTag(obj, tag) {
  var startTag = '<' + tag + '>';
  var endTag   = '</' + tag + '>';
  addSelection(obj, startTag, endTag);
}

function addStyle(obj, tag, style) {
  var startTag = '<' + tag + ' style="' + style + '">';
  var endTag   = '</' + tag + '>';
  addSelection(obj, startTag, endTag);
}

function addLink(obj) {
  var link = prompt('URL: ', 'http://');
  var startTag = '<a href="' + link + '" target="_blank">';
  var endTag   = '</a>';
  if(link != null) addSelection(obj, startTag, endTag);
}

function addStr(obj, str) {
  //IE
  if (document.selection) {
    obj.focus();
    sel = document.selection.createRange();
    sel.text = str;
  }
  //Mozilla
  else if (obj.selectionStart || obj.selectionStart == '0') {
    var startPos = obj.selectionStart;
    var endPos   = obj.selectionEnd;
    obj.value = obj.value.substring(0, startPos)
    + str
    + obj.value.substring(endPos, obj.value.length);
  //Other
  } else {
    obj.value += str;
  }
}

