function open_popup(url,popwidth,popheight) {
  var popup;
  popup = window.open(url,'survey',"toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,left=0,top=0,width="+popwidth+",height="+popheight);
}

function toggledisplay (id, indicator){
	if (document.getElementById) {
		var obj = document.getElementById(id);
		var indi = document.getElementById(indicator);
		obj.style.display = (obj.style.display=='block'?'none':'block');
		indi.innerHTML = (obj.style.display=='block'?'weniger info V':'mehr info >');
	} else if(document.all) { // IE
		id.style.display = (id.style.display=='block'?'none':'block');
		indi.innerHTML = (id.style.display=='block'?'weniger info V':'mehr info >');
	} else if (document.layers) { // Netscape 4.x
		document.id.style.display = (document.id.style.display=='block'?'none':'block');
		document["indicator"].document.open();
		if (document.id.style.display=='block')
		    document["indicator"].document.write('weniger info V');
		if (document.id.style.display!='block')
		    document["indicator"].document.write('mehr info >');
		document["indicator"].document.close();
	}
}


//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}

function autosubmit_callback(evt,elem) {
  evt = (evt) ? evt : (window.event) ? event : null;
  if (!elem || !$(elem))
    return false;
    
  if (evt)
  {
    var charCode = (evt.charCode) ? evt.charCode :((evt.keyCode) ? evt.keyCode :((evt.which) ? evt.which : 0));
    if (charCode == 13 && $(elem).value.replace(/\s/g,'')!='') {
      $(elem).readOnly=true;
      $(elem).form.submit();    
      return false;
    }
  }
  return true;
}

function set_scrollbottom(input,elem) {
  if (!$(input) || !$(elem))
    return;
    
  if ($(input).checked)
    $(elem).scrollTop=$(elem).scrollHeight+35;
}

function open_popup(url,popwidth,popheight) {
  var popup;
  popup = window.open(url,'survey',"toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,left=0,top=0,width="+popwidth+",height="+popheight);
}

function get_emoticons(id) {
  var imgs = ['smile', 'laughing', 'cool', 'wink', 'kiss', 'frown', 'cry', 'undecided', 'surprised', 'tongueout', 'moneyinmouth', 'yell'];
  var codes = [':-)', ':-))', 'B-)', ';-)', '=*', ':-(', ':-((', ':-/', ':-O', ':-P', '$-)', 'X-(' ];
 
  var out='';
  for (var i=0; i<imgs.length; i++) {    
     out+='<img alt="'+codes[i]+'" src="images/share/emoticons/'+imgs[i]+'.png" class="emoticon" onmouseup="return false;" onmousedown="return false;" ondragstart="return false;" ondragend="return false;" onclick="insert_at_caret($(\''+id+'\'),\' '+codes[i]+' \');return false;" />';
  }
  document.write(out);
}

function insert_at_caret(obj, text) {
  
  if (typeof(tinyMCE)!='undefined' && tinyMCE.activeEditor && tinyMCE.activeEditor.id==obj.id) {
    tinyMCE.activeEditor.focus();
    tinyMCE.activeEditor.selection.setContent(text);
    return;
  }
  
  if (!obj)
    return;
    
  obj.focus();
  if (typeof(document.selection)!='undefined') {
    var range=document.selection.createRange();
    if (range.parentElement()!=obj)
      return;

    range.text=text;
    range.select();
  } else if (typeof (obj.selectionStart)!='undefined') {
    var start=obj.selectionStart;
    obj.value=obj.value.substr(0,start)+text+obj.value.substr(obj.selectionEnd,obj.value.length);
    start+=text.length;
    obj.setSelectionRange(start,start);
  } else {
    obj.value+=text;
  }

  obj.focus();
}

function add_rich_text_editor(id,height) {
  tinyMCE.init({
  	theme : "advanced",
	mode : "exact",
	elements : id,
	auto_focus : id, 
	plugins : "bbx,paste",
        paste_auto_cleanup_on_paste : true,
        paste_block_drop: true,
        paste_remove_spans : true,
        paste_remove_styles : true,
        paste_retain_style_properties : false,
        paste_preprocess : function(pl, o) {
          o.content=tinymce.trim(o.content);
          o.content=o.content.replace(/[\r\n\t]/g,' ');
          o.content=o.content.replace(/<a\s+[^>]*?href\s*=\s*['"]?([^\s'"]+)['"]?.*?>(.*?)<\/a>/gi,'[url=$1]$2[/url]');
          o.content=o.content.replace(/<(\/?)([a-zA-Z\d]+)\s+.+?>/g,'<$1$2>');
          o.content=o.content.replace(/<\s*object.*?>.*?<\/object.*?>/gi,'');
          o.content=o.content.replace(/<\s*embed.*?>.*?<\/embed.*?>/gi,'');
          o.content=o.content.replace(/<\s*param.*?>.*?<\/param.*?>/gi,'');
          o.content=o.content.replace(/<\s*style.*?>.*?<\/style.*?>/gi,'');
          o.content=o.content.replace(/<\s*script.*?>.*?<\/script.*?>/gi,'');
          o.content=o.content.replace(/<!-.*?-->/g,'');
          o.content=o.content.replace(/&nbsp;/g,' ');
          o.content=o.content.replace(/&amp;/g,'&');
          o.content=o.content.replace(/<(\/)?(p|br)\s*>/gi,'****BREAK****');
          o.content=o.content.replace(/<(\/)?(u|b|i)\s*>/gi,'[$1$2]');
          o.content=o.content.replace(/<(\/)?(strong)\s*>/gi,'[$1b]');
          o.content=o.content.replace(/<(\/?)([a-zA-Z\d]+).*?>/g,'');
          o.content=o.content.replace(/\[(\/)?(u|b|i)\]/g,'<$1$2>');
          o.content=o.content.replace(/\[url=(.*?)\]\s*\[\/url\]/g,'');
          o.content=o.content.replace(/\[url=(.*?)\](.*?)\[\/url\]/g,'<a href="$1">$2</a>');
          o.content=o.content.replace(/\*\*\*\*BREAK\*\*\*\*/g,'<br/>');
          o.content=o.content.replace(/(<br\/>\s*)+/g,'<br/><br/>');
          o.content=o.content.replace(/[\?&]SES=[a-f0-9]+/g,'');
          o.content=o.content.replace(/(https?:\/\/[a-z]+\.youtube[\-a-z]*\.[a-z]+\/watch)(?=\?).*?[?&](v=[^\s\"'&]+)(&[^\s\"']*)*/,"[youtube]$1?$2[/youtube]");
          o.content=o.content.replace(/(https?:\/\/[a-z]*\.flickr\.[a-z]+\/photos\/(.+?\/)sets\/([^\/]+))(\/[^\s]+)?/,'[flickr]$1/[/flickr]');
        },
        paste_postprocess : function(pl, o) {
        },	
	theme_advanced_buttons1 : "bold,italic,underline,undo,redo,forecolor,removeformat",
	theme_advanced_buttons2 : "",
	theme_advanced_buttons3 : "",
	theme_advanced_toolbar_location : "top",
	theme_advanced_toolbar_align : "center",
	entity_encoding : "raw",
	add_unload_trigger : false,
	remove_linebreaks : false,
	inline_styles : false,
	theme_advanced_more_colors : false,
	convert_fonts_to_spans : false,
	theme_advanced_resizing_min_height : height,
	setup : function(ed) {   
          ed.onInit.add(function() {           
            if (height<=0)
              return;
            var e = tinymce.DOM.get(ed.id + '_tbl'), ifr = tinymce.DOM.get(ed.id + '_ifr'), w = ed.getWin(), dh;
            var h = ed.getParam("theme_advanced_resizing_min_height");
            if (h<=10 || h===undefined)
              return;
              
            dh = e.clientHeight - ifr.clientHeight; 
            ed.theme.resizeTo(ifr.clientWidth, h + dh);
             if (tinymce.isIE) {
            tinymce.DOM.Event.add(ed.getBody(), "dragenter", function(e) {
              return tinymce.DOM.Event.cancel(e);
              });
            } else {
              tinymce.DOM.Event.add(ed.getBody().parentNode, "drop", function(e) {
                  tinymce.dom.Event.cancel(e);
                  tinymce.dom.Event.stop(e);
                  });
            }
          });
        }
     });
          
}