
//#####################################################	
// Anzahl Zeichen begrenzen 
//#####################################################


var ns6=document.getElementById&&!document.all

function restrictinput(maxlength,e,placeholder){
if (window.event&&event.srcElement.value.length>=maxlength)
return false
else if (e.target&&e.target==eval(placeholder)&&e.target.value.length>=maxlength){
var pressedkey=/[a-zA-Z0-9\.\,\/]/ //detect alphanumeric keys
if (pressedkey.test(String.fromCharCode(e.which)))
e.stopPropagation()
}
}

function countlimit(maxlength,e,placeholder){
var theform=eval(placeholder)
var lengthleft=maxlength-theform.value.length
var placeholderobj=document.all? document.all[placeholder] : document.getElementById(placeholder)
if (window.event||e.target&&e.target==eval(placeholder)){
if (lengthleft<0)
theform.value=theform.value.substring(0,maxlength)
placeholderobj.innerHTML=lengthleft
}
}


function displaylimit(theform,thelimit){
var limit_text='<font color=#FF0000><span id="'+theform.toString()+'">'+thelimit+'</span></font>'
if (document.all||ns6)
document.write(limit_text)
if (document.all){
eval(theform).onkeypress=function(){ return restrictinput(thelimit,event,theform)}
eval(theform).onkeyup=function(){ countlimit(thelimit,event,theform)}
eval(theform).focus=function(){ countlimit(thelimit,event,theform)}
}
else if (ns6){
document.body.addEventListener('keypress', function(event) { restrictinput(thelimit,event,theform) }, true); 
document.body.addEventListener('keyup', function(event) { countlimit(thelimit,event,theform) }, true); 
document.body.addEventListener( 'focus', function(event) { countlimit(thelimit,event,theform) }, true); 
} 
}


var copytoclip=1
function HighlightAll(theField) {
var tempval=eval("document."+theField)
tempval.focus()
tempval.select()
if (document.all&&copytoclip==1){
therange=tempval.createTextRange()
therange.execCommand("Copy")
window.status="Contents highlighted and copied to clipboard!"
setTimeout("window.status=''",1800)
}
}


//#####################################################	
// Fetchmeta
//#####################################################


var root = '';

	function fetch_td(obj){
	  if(obj != ""){
	  var neu = obj.toLowerCase();
		  if (obj.indexOf('http://') != -1){ 
				xsize=250;  
				ysize=100;
				var mid=(screen.width- xsize)/2;
				var mid1=(screen.height- ysize)/2;
				window.open(root+"/fetchmeta.php?url="+obj, "wab", "width="+xsize+",height="+ysize+",top="+mid1+",left="+mid+",menubar=no,toolbar=no,status=no,resizable=no,scrollbars=no");
		  } else {
		  alert('Die URL muss mit http:// beginnen'); 
		  }
	  } else {

		alert(unescape("Bitte eine g%FCltige URL eingeben%21"));
		
	  }
	}

//#####################################################	
// Backlink Felden ein/ausblenden
//#####################################################

	
	function showBLOptions( makevisible){
		if (makevisible == 1) {
			$('BLOptions').show();
		} else {
			$('BLOptions').hide();
		}
	}

//#####################################################	
// KATEGORIE BAum
//#####################################################
	
	/*
#########################################################################################################
# Project:     PHP Link Directory - Link exchange directory @ http://www.phplinkdirectory.com
# Module:      [AJAX Category Selection] @ http://www.frozenminds.com/phpld-ajax-categories.html
# Author:      Constantin Bejenaru aKa Boby @ http://www.frozenminds.com
# Language:    AJAX (Based on Prototype and Scriptaculous libraries)
# License:     MIT (Copyright (c) 2006 Constantin Bejenaru - http://www.frozenminds.com)
# Version:     1.0
# Notice:      Please maintain this section
#########################################################################################################
*/

/* Function to load on event page start */
Event.observe(window, 'load', init_ajax_categs, false);

/* Loaded on page load */
function init_ajax_categs()
{
   if ($('toggleCategTree'))
   {
      Event.observe('toggleCategTree', 'click', toggleTree, false);
   }

   reload_categ_title();

   return false;
}

/* Effect applied to category title */
function catTitleEffect()
{
   if ($('catTitle'))
   {
      new Effect.Highlight('catTitle',{duration:1.5});
   }

   return false;
}

/* Close category tree */
function catTreeClose()
{
   if ($('categtree'))
   {
      new Effect.BlindUp('categtree',{duration:0.9, delay: 1});
   }

   /* Remove category tree element. Suggestion: leave this code intact */
   setTimeout('destroyCatTree();', 2100);

   return false;
}

/* Destroy category tree element. Useful to clean generated code and prevent overwriting of elements. */
function destroyCatTree()
{
   if ($('categtree'))
      Element.remove('categtree');
}

/* Apply different functions to category tree */
function toggleTree()
{
   if (!$('categtree'))
   {
      if ($('CATEGORY_ID'))
      {
         reload_categ_tree($F('CATEGORY_ID'));
      }
   }
   else
   {
      catTreeClose();
   }

   return false;
}

/* Update the category tree depending on provided information */
function update_categ_selection(categID, parentID, subcategs)
{
   /* Validate category ID */
   categID = (categID ? categID : 0);
   categID = (categID < 0 ? 0 : categID);

   select_cat(categID);

   if (subcategs == 1)
      reload_categ_tree(categID);
   else
      catTreeClose();
	  
   return false;
}

/* Reload the category tree by provided category ID */
function reload_categ_tree(categID)
{
   /* Validate category ID */
   categID = (categID ? categID : 0);
   categID = (categID < 0 ? 0 : categID);

   if ($('CATEGORY_ID'))
   {
      var url = 'categ-tree.php';
      var params = 'categID=' + categID;
      var target = 'categtreebox';
      var myAjax = new Ajax.Updater(target, url, { method: 'get', parameters: params});
   }

   return false;
}

/* Reload category title by available category ID (found automatically) */
function reload_categ_title()
{
   if ($('catTitle') && $('CATEGORY_ID'))
   {
      var url = 'categ-tree.php';
      var params = 'action=titleupdate&categID=' + escape ($F('CATEGORY_ID'));
      var target = 'catTitle';
      var myAjax = new Ajax.Updater(target, url, { method: 'get', parameters: params});
   }

   return false;
}

/* Make category selection */
function select_cat(categID)
{
   /* Validate category ID */
   categID = (categID ? categID : 0);
   categID = (categID < 0 ? 0 : categID);

   if ($('CATEGORY_ID'))
   {
      document.getElementById('CATEGORY_ID').value = categID;
      reload_categ_title();
      catTitleEffect();
	  setBLCode() 
   }

   return false;
}


/* Fill the Backlink Textarea with Categorie Link*/

function setBLCode()  {

      var url = 'categ-copy.php';
      var params = 'id=' + escape ($F('CATEGORY_ID'));
      var target = 'BL_CODE';
	  var myAjax = new Ajax.Request(
			url, 
			{
				method: 'get', 
				parameters: params, 
				onComplete: showResponse
			});
	  
	  
	  function showResponse(originalRequest)
	{
		//put returned data in the textarea
		$('BL_CODE').value= originalRequest.responseText;
	}
	  
}


//'####################### Tooltip #################

function init() {
 new Tip('tipEmail', 'Ohne g&uuml;ltige Email keine Freischaltung<br /><br />Wir akzeptieren nur Emails, die mit der angegebenen Webseite in Verbindung steht -  kein Email von Free-Anbieter!<br /><br />Email Adresse wird nicht angezeigt!!', { effect: 'appear' });

 new Tip('tipKeywords', 'Keywords mit Komma getrennt eingeben!<br /><br />Sie k&ouml;nnen bis zu 10 Keywords angeben.<br /><br />Wird f&uuml;r die Meta-Keywords Ihrer Detailseite verwendet.<br /><br />F&uuml;r jedes Keyword  wird eine Keyword-Seite angelegt (falls diese nicht schon existiert), die wiederum auf Ihre Detailseite linkt.<br />', { effect: 'appear' });

 new Tip('tipDetailtext', 'Muss zwischen 400 und 1500 Zeichen lang sein!<br /><br />Wird auf Ihrer Detailseite dargestellt.<br /><br />Aneinanderreihung von Keywords vermeiden!', { effect: 'appear' });

 new Tip('tipBeschreibung', 'Muss zwischen 70 und 170 Zeichen lang sein!<br /><br />Wird in der gew&auml;hlten Kategorie neben Ihrem Eintrag dargestellt.<br /><br />Wird auf der Detailseite ausgegeben und f&uuml;r die Meta-Description verwendet.<br /><br />Aneinanderreihung von Keywords vermeiden!', { effect: 'appear' });

 new Tip('tipKategorie', 'Bitte die richtige Unterkategorie w&auml;hlen.<br /><br />Eintr&auml;ge in  Hauptkategorien werden nicht akzeptiert!', { effect: 'appear' });
 
  new Tip('tipTitle', 'Muss zwischen 3 und 60 Zeichen lang sein!<br /><br />Wird auf Ihrer Detailseite als Dokument- Title verwendet.<br /><br />Wird auf Ihrer Detailseite als Linktext f&uuml;r den ausgehenden Link verwendet.<br /><br />Wird in der Kategorieseite als Linktext f&uuml;r den Link auf die Detailseite verwendet.<br /><br />M&ouml;glichst keine Sonderzeichen, Firmennamen und Domainnamen!', { effect: 'appear' });

 new Tip('tipFetchMeta', 'Hier klicken um die Meta-Daten von Ihrer URL zu importieren.', { effect: 'appear' });

}
	

