
//window.setTimeout('menushow(0)',100);

function setpic(id, link) {
  var pic=document.getElementById(id);
  if (pic!=null) pic.src=link;
}

function gotoId(id) {
  window.location.href='?id='+id;
}

function uploadInsert(ref_dir, ref_file, insertboth) {
  var fname=document.getElementById("fname");
  var tdir=document.getElementById("tdir");
  if (insertboth) fname.value=ref_file; else fname.value="";
  tdir.value="content/"+ref_dir;
}

function updateSelector(textfieldnum, field) {
  var tf=document.getElementById("var_"+textfieldnum);
  var val=document.getElementById("var_"+textfieldnum+"."+field);
  var origin=tf.value.split(",");
  origin[field]=val.value;
  if (origin[origin.length-1]=="") origin.splice(origin.length-1,1);
  if (origin[origin.length-1]=="") origin.splice(origin.length-1,1);
  tf.value=origin.join(",");
}

function cleanHtml(targetfield) {
  var search = new Array("&auml;","&ouml;","&uuml;","&Auml;","&Ouml;","&Uuml;","&szlig;","&eacute;","&amp;","“", "”");
  var replace = new Array("ä","ö","ü","Ä","Ö","Ü","ß","é", "&","\"", "\"");

  var field=document.getElementById(targetfield);
  if (field.value) {
    var str = field.value;
    for (var i=0; i<replace.length; i++) {
      var attr = new RegExp(search[i],"g");
      str = str.replace(attr, replace[i]);
    } 
    field.value=str;
  }
}

function replaceImgSrc(targetfield) {
  var field=document.getElementById(targetfield);
  if (field.value) {
    // {([A-Za-z0-9._-]{0,64})\.([A-Za-z0-9._-]{0,8})\}
    field.value=field.value.replace(/src="([A-Za-z0-9._-]{0,64})"/gi, "src=\"{$1}\"");
    field.value=field.value.replace(/href="([A-Za-z0-9._-]{0,64})"/gi, "href=\"{$1}\"");
  }
}


function insertLink(linklist, targetfield, keyword) {
  var id=document.getElementById(linklist);
  var field=document.getElementById(targetfield);
  if (id.value>0) {
    ////field.value=field.value.replace("%"+keyword+"=%", "%"+keyword+"="+id.value+"%");

    //insertAtCaret(field, "%"+keyword+"="+id.value+"%");
    //var pos=field.value.indexOf("%"+keyword+"=");
    //setCaretTo(field, pos);

    insertEditor("%"+keyword+"="+id.value+"%", targetfield);
  }
}

	function insertAtCaret(obj, text) {
		if(document.selection) {
			obj.focus();
			var orig = obj.value.replace(/\r\n/g, "\n");
			var range = document.selection.createRange();

			if(range.parentElement() != obj) {
				return false;
			}

			range.text = text;
			
			var actual = tmp = obj.value.replace(/\r\n/g, "\n");

			for(var diff = 0; diff < orig.length; diff++) {
				if(orig.charAt(diff) != actual.charAt(diff)) break;
			}

			for(var index = 0, start = 0; 
				tmp.match(text) 
					&& (tmp = tmp.replace(text, "")) 
					&& index <= diff; 
				index = start + text.length
			) {
				start = actual.indexOf(text, index);
			}
		} else if(obj.selectionStart) {
			var start = obj.selectionStart;
			var end   = obj.selectionEnd;

			obj.value = obj.value.substr(0, start) 
				+ text 
				+ obj.value.substr(end, obj.value.length);
		}
		
		if(start != null) {
			setCaretTo(obj, start + text.length);
		} else {
			obj.value += text;
		}
	}
	
	function setCaretTo(obj, pos) {
		if(obj.createTextRange) {
			var range = obj.createTextRange();
			range.move('character', pos);
			range.select();
		} else if(obj.selectionStart) {
			obj.focus();
			obj.setSelectionRange(pos, pos);
		}
	}

function insertEditor(str, editor)
{
	//CKEDITOR.instances.IDofEditor.insertText('some text here');

	//return;
	//var oEditor = CKEDITOR.instances.var_2;
        //todo: var_2 is the value most time in variable 'editor'
	var oEditor = CKEDITOR.instances.var_2;
	if (oEditor.mode == 'wysiwyg' )
	{
		//alert( oEditor.getData() ) ;
		oEditor.insertHtml( str ) ;
	}
	else
		alert( 'You must be on WYSIWYG mode!' ) ;
}

document.onkeyup = KeyCheck;

function KeyCheck(event) {
	if (!event) event = window.event;
	var keyID = event.keyCode;
	var ctrlKey = event.ctrlKey;
		
	if ((keyID == 89) && (ctrlKey == true)) { 
		document.location.href=document.location.href+'&type=2';
	}
}

