////////////////////////////////////////////////
// cms2add template engine
// $Revision: 111 $
//
// Lizenzbedingungen siehe licence.html
// Projekt-URL: www.cms2add.de
//
// Copyright (C) 2004 - 2009  Holger Münzer
////////////////////////////////////////////////

//________________________________________Common________________________________

 //enets only
 function paymentwin(){
   neu=window.open('neuroendocrine/payment/normal_form.php','','width=625,height=430,menubar=yes,toolbar=yes,location=no,status=yes,scrollbars=yes,resizable=no,screenX=100, screenY=100, left=100, top=100');
   }

 function go2(link) {
   location.href = link;
   }

 $(document).ready(function(){                                                  //onLOAD
   //enets only
   $("textarea.foldup").focus(function(){
     $(this).animate({ height: '+=100' }, 300 );
     });
   $("textarea.foldup").blur(function(){
     $(this).animate({ height: '-=100' }, 300 );
     });

   var content_width = $("#content").width();
   $("a[rel='lightbox']").colorbox({rel:'nofollow',photo:true});
   $("a[rel^='lightbox']").colorbox({photo:true,current:'Bild {current} von {total}'});
   $("a[rel='lightframe']").colorbox({innerWidth:(content_width+20)+'px',height:'80%',iframe:true,rel:'nofollow'});
   $("a[rel='slideshow']").colorbox({slideshow:true,photo:true,slideshowStart:'Start',slideshowStop:'Stop'});
   $("a[rel=external]").attr('target','_blank');                                  //external links
   $("input[rel=autofocus]").focus().select();                                    //autofocus
   $("input[title][type=text]").each(function(){                                  //internal labels
     if($(this).val() == '')
     $(this).val($(this).attr('title')).addClass('legend');
     });
   $("input[title][type=text]").blur(function(){
     if($(this).val() == '')
     $(this).val($(this).attr('title')).addClass('legend');
     });
   $("input[title][type=text]").focus(function(){
     if($(this).val() == $(this).attr('title'))
     $(this).val('').removeClass('legend');
     });
   $("input.store_caret").bind('select click keyup', function() {                 //store caret
     storeCaret(this);
     });
   $("input.store_field").bind('select click keyup', function() {
     storeField(this);
     });
   $("select[rel=submit]").change(function(){
     var parent = this;
     $("select[name=" + $(parent).attr('name') + "]").each(function() {
       if(parent != this) $(this).attr('disabled',true);
       });
     SUBMIT();
     });
   if($("input[type!=image][alt],textarea[alt]").length){
     var options = {activation: 'focus', titleAttribute: 'alt', splitTitle: '#', showTitle: false, cursor: 'default', dropShadow: false, fx: {open: 'fadeIn', openSpeed: '10'}, cluetipClass: 'rounded', arrows: true};
     $.ajax({ url: 'scripts/cluetip/jquery.cluetip.min.js', dataType: "script", cache: true, success: function(){ $("input[type!=image][alt],textarea[alt]").cluetip(options); }});
     }
   if(typeof(tinyMCE) != 'undefined') tinyMCE.init({                              //init tinyMCE
     mode : "specific_textareas",
     editor_selector : "tiny",
     theme : "advanced",
     language : "en",
     content_css : "styles/tiny.css",
     popup_css_add : "styles/tiny.css",
     body_class : "standard",
     plugins : "tabfocus,safari,table,advhr,cimage,clink,inlinepopups,media,contextmenu,paste",
     theme_advanced_buttons1 : "bold,italic,underline,strikethrough,forecolor,|,undo,redo,removeformat,|,link,anchor,image,media,|,table,charmap,advhr,|,code",
     theme_advanced_buttons2 : "justifyleft,justifycenter,justifyright,justifyfull,|,bullist,numlist,|,outdent,indent,blockquote,|,formatselect,fontsizeselect",
     theme_advanced_buttons3 : "",
     theme_advanced_toolbar_location : "external",
     theme_advanced_toolbar_align : "left",
     //enets only
     theme_advanced_cimage_styles : "Left=img_left;Right=img_right;Inline=img_inline",
     theme_advanced_clink_rels : "External=external;Lightbox=lightbox;Lightbox grouped=lightbox_;Lightframe=lightframe;Slideshow=slideshow",
     theme_advanced_statusbar_location : "bottom",
     theme_advanced_resizing : true,
     theme_advanced_resize_horizontal : false,
     extended_valid_elements : "iframe[src|width|height|name|align],script[src]",
     tabfocus_elements : ':prev,:next',
     entity_encoding : "numeric",
     forced_root_block : '',
     setup : function(ed) {
       ed.onInit.add(function(ed) {
         tinymce.dom.Event.add(ed.getWin(), 'focus', function(e) {
           field = null;
           });
         });
       }
     });
   $("form").submit(function(){                                                 //onSUBMIT
     remove_labels();
     });
   });

 function SUBMIT() {                                                            //SUBMIT
   remove_labels();
   document.forms[0].submit();
   }

 function remove_labels(){                                                      //remove internal label
   $("input[title][type=text]").each(function(){
     if($(this).val() == $(this).attr('title')) $(this).val('');
     });
   }

//________________________________________Layers________________________________

 function hide_select(){
   if (navigator.appName != 'Microsoft Internet Explorer') return;
   if (navigator.appVersion.match(/MSIE (\d+)/)[1]*1 > 6) return;
   for (var i = 0; i < document.forms[0].length; ++i) {
     if(document.forms[0].elements[i].type != "select-one") continue;
     document.forms[0].elements[i].style.visibility = 'hidden';
     }
   }
 function show_select(){
   if (navigator.appName != 'Microsoft Internet Explorer') return;
   if (navigator.appVersion.match(/MSIE (\d+)/)[1]*1 > 6) return;
   for (var i = 0; i < document.forms[0].length; ++i) {
     if(document.forms[0].elements[i].type != "select-one") continue;
     document.forms[0].elements[i].style.visibility = 'visible';
     }
   }

//________________________________________Checkboxes____________________________

 function setboxes(loop, state){
   for (var i = 0; i < document.forms[0].length; ++i) {
     if(document.forms[0].elements[i].type != "checkbox") continue;
     if (!document.forms[0].elements[i].getAttribute("rel")) continue;
     if (loop != document.forms[0].elements[i].getAttribute("rel")) continue;
     document.forms[0].elements[i].checked = state;
     }
   }

//________________________________________BCode_________________________________

 var field = "";
 function storeCaret(input) {
   field = input;
   field.insertable = true;
   if (field.createTextRange) field.caretPos = document.selection.createRange().duplicate();
   if(typeof(tinyMCE) != 'undefined') tinyMCE.activeEditor = null;
   }
 function storeField(input) {
   field = input;
   if(typeof(tinyMCE) != 'undefined') tinyMCE.activeEditor = null;
   }
 function unsetcode() {
   if(field){
     if(field.caretPos) {                                                        // IE
       field.caretPos.text = field.caretPos.text.replace(/\[[^\]]+\]/g,"");
       return;
       }
     if(typeof field.selectionStart != 'undefined') {                            // Gecko
       var startpos = field.selectionStart;
       var endpos = field.selectionEnd;
       var area = field.value.substring(startpos, endpos);
       area = area.replace(/\[[^\]]+\]/g,"");
       field.value = field.value.substr(0, startpos) + area + field.value.substr(endpos);
       return;
       }
     field.value = field.value.replace(/\[[^\]]+\]/g,"");                        // Other
     return;
     }
   if(tinyMCE.activeEditor){
     var text = tinyMCE.activeEditor.selection.getContent();
     if(!text) return;
     tinyMCE.execCommand('mceReplaceContent',false,text.replace(/\[[^\]]+\]/g,""));
     return;
     }
   //enets only
   alert("Please set the cursor");
   }
 function spancode(text,block) {
   var bcode = text.split(" ");
   if(bcode.length < 2) bcode = text.split("=");
   var start = "[" + text + "]";
   var end =  "[/" + bcode[0] + "]";
   if(block){
     start = start + '\n';
     end = '\n' + end;
     }
   if(field){
     insert(start,end);
     return;
     }
   if(tinyMCE.activeEditor){
     tinyMCE.execCommand('mceReplaceContent',false,start+'{$selection}'+end);
     return;
     }
   //enets only
   alert("Please set the cursor");
   }
 function setcode(text){
   setstring('['+text+']');
   }
 function setstring(text){
   if(field){
     insert(text,'');
     return;
     }
   if(tinyMCE.activeEditor){
     tinyMCE.execCommand('mceReplaceContent',false,text);
     return;
     }
   //enets only
   alert("Please set the cursor");
   }
 function setfield(){
   var code = document.forms[0].select_field.value;
   if(!code) return;
   setcode(code);
   }
 function setcondition(){
   var code = document.forms[0].select_condition.value;
   if(!code) return;
   spancode(code);
   }
 function insert(start,end) {
   if(!field) return;
   field.focus();
   if(!field.insertable){                                        //Replace only
     field.value = start + end;
     return;
     }
   if(field.caretPos) {                                          // IE
     field.caretPos.text = start + field.caretPos.text + end;
     return;
     }
   if(typeof field.selectionStart != 'undefined') {              // Gecko
     var startpos = field.selectionStart;
     var endpos = field.selectionEnd;
     var area = field.value.substring(startpos, endpos);
     field.value = field.value.substr(0, startpos) + start + area + end + field.value.substr(endpos);
     var pos;
     if (area.length == 0) pos = startpos + start.length;
     else pos = startpos + start.length + area.length + end.length;
     field.selectionStart = pos;
     field.selectionEnd = pos;
     return;
     }
   field.value = field.value + start + end;                      // Other
   }
 function setimage(bcode,src,extra,alt){
   if(field){
     setstring('['+ bcode +']');
     return;
     }
   if(tinyMCE.activeEditor && src){
     var ed = tinyMCE.activeEditor;
     tinyMCE.execCommand('mceInsertContent', false, '<img id="__mce_tmp" />', {skip_undo : 1});
     if(alt){
       alt = ed.dom.encode(alt);
       ed.dom.setAttribs('__mce_tmp', { 'src' : src, 'class' : extra, 'id' : '', 'alt' : alt, 'title' : alt });
       }
     else ed.dom.setAttribs('__mce_tmp', { 'src' : src, 'class' : extra, 'id' : '' });
     ed.undoManager.add();
     return;
     }
   //enets only
   alert("Please set the cursor");
   }
 function setlink(bcode,href){
   if(field){
     spancode(bcode);
     return;
     }
   if(tinyMCE.activeEditor && href){
     var ed = tinyMCE.activeEditor;
     tinyMCE.execCommand("CreateLink", false, "#mce_temp_url#", {skip_undo : 1});
     tinymce.each(ed.dom.select("a"), function(n) {
       if (ed.dom.getAttrib(n, 'href') == '#mce_temp_url#') {
         ed.dom.setAttribs(n, { href : href, 'class' : 'link' });
         }
       });
     return;
     }
   //enets only
   alert("Please set the cursor");
   }
 function setthumb(bcode,src,thumb,alt){
   if(field){
     setstring('['+ bcode +']');
     return;
     }
   if(tinyMCE.activeEditor){
     var ed = tinyMCE.activeEditor;
     if(alt){
       alt = ed.dom.encode(alt);
       text = '<a rel="lightbox_" href="' + src + '" title="' + alt + '"><img src="' + thumb + '" alt="' + alt + '" /></a>';
       }
     else text = '<a rel="lightbox_" href="' + src + '"><img src="' + thumb + '" alt="" /></a>';
     tinyMCE.execCommand('mceReplaceContent',false,text);
     return;
     }
   //enets only
   alert("Please set the cursor");
   }
 function setflash(bcode,src,width,height,style,bgcolor){
   if(field){
     setstring('['+ bcode +']');
     return;
     }
   if(tinyMCE.activeEditor){
     if(!src || !width || !height) return;
     text = (style ? '<div class="' + style + '">' : '') + '<object data="' + src + '" width="' + width + '" height="' + height + '" type="application/x-shockwave-flash"><param name="src" value="' + src + '" />' + (bgcolor ? '<param name="bgcolor" value="' + bgcolor + '" />' : '<param name="wmode" value="transparent" />') + '</object>' + (style ? '</div>' : '');
     tinyMCE.execCommand('mceReplaceContent',false,text);
     return;
     }
   //enets only
   alert("Please set the cursor");
   }

//______________________________________Dynamic Layers__________________________

 function create_input(name,value){
   if(document.forms[0].elements[name]) return;
   var el = document.createElement('input');
   el.type = 'hidden';
   el.name = name;
   el.value = value;
   document.forms[0].appendChild(el);
   }
 function view(target){
   if(document.getElementById(target)){
     $("#" + target).show();
     return;
     }
   create_input('show_layer',target);
   SUBMIT();
   }
 function help(topic){
   create_input('show_layer','help');
   create_input('help_quick',topic);
   SUBMIT();
   }
 function picdate(date_formated,target){
   if (!document.getElementById) return;
   if(date_formated){
     var date = date_formated.split(".");
     var year = date[2] * 1;
     var month = date[1] * 1;
     }
   var now = new Date();
   if(year < 1900 || year > 2100 || month < 1 || month > 12){
     var year = now.getFullYear();
     var month = now.getMonth()+1;
     }
   if (!document.getElementById('pic_date')){
     create_input('show_layer','pic_date');
     create_input('date_quick',year + '-' + month + '-1');
     if(target) create_input('pic_target',target);
     SUBMIT();
     return;
     }
   $("#pic_date").show();
   //enets only
   var wday = new Array("Mo", "Tu", "We", "Th", "Fr", "Sa", "Su");
   var mon = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
   var month_1st = new Date(year, month-1, 1);
   var month_last = new Date(year, month, 0);
   var start_empty = new Array(6,0,1,2,3,4,5);
   var end_empty = new Array(0,6,5,4,3,2,1);
   var year_start = now.getFullYear() + 5;
   var year_end = now.getFullYear() - 60;
   var scheduler = "";
   var z = 0;
   //build calendar
   //enets only
   scheduler += '<div class="calendar_title"><a href="javascript:picdate(\'01.' + (month>1?(month-1):12) + '.' + (month>1?year:(year-1)) + '\')"><img src="./images/icon_prev.gif" alt="Last Month" /></a> ';
   scheduler += '<select class="select" style="vertical-align: middle;" onchange="picdate(this.options[this.selectedIndex].value)">';
   for (z = 0; z <= 11; z++)
   scheduler += '<option value="01.' + (z + 1) + '.' + year + '"' + (z+1==month?'selected="selected"':'') + '>' + mon[z] + '</option>';
   scheduler += '</select>';
   scheduler += '<select class="select" onchange="picdate(this.options[this.selectedIndex].value)">';
   if(year > year_start || year < year_end)
   scheduler += '<option value="01.' + month + '.' + year + '" selected="selected">' + year + '</option>';
   for (z = year_start; z >= year_end; z--)
   scheduler += '<option value="01.' + month + '.' + z + '"' + (z==year?'selected="selected"':'') + '>' + z + '</option>';
   scheduler += '</select> ';
   scheduler += '<a href="javascript:picdate(\'01.' + (month<12?(month+1):1) + '.' + (month<12?year:(year+1)) + '\')"><img src="./images/icon_next.gif" alt="Next Month" /></a></div>';
   for (z = 0; z <= 6; z++)
   scheduler += '<div><h3>' + wday[z] + '</h3></div>';
   var empty_cells = start_empty[month_1st.getDay()];
   for (z = 0; z < empty_cells; z++)
   scheduler += '<div></div>';
   var days = month_last.getDate();
   var today = now.getDate()+'.'+(now.getMonth()+1)+'.'+now.getFullYear();
   for (z = 1; z <= days; z++){
     var cell_date = z+'.'+month+'.'+year;
     scheduler += '<div'+(cell_date==today?' class="calendar_today"':'')+'><a href="javascript:setstring(\''+cell_date+'\')">'+z+'</a></div>';
     }
   var empty_cells = end_empty[month_last.getDay()];
   for (z = 0; z < empty_cells; z++)
   scheduler += '<div></div>';
   scheduler += '<div class="calendar_footer"><a href="javascript:picdate(\'01.' + (now.getMonth()+1) + '.' + now.getFullYear() + '\')">Today</a></div>';
   scheduler += '<input type="hidden" name="date_quick" value="' + year + '-' + month + '-01" />';
   //write into document
   $("#calendar_frame").html(scheduler);
   //focus target
   if(target) field = document.getElementsByName(target)[0];
   }
