function stristr( haystack, needle, bool ) 
{
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   bugfxied by: Onno Marsman
    // *     example 1: stristr('Kevin van Zonneveld', 'Van');
    // *     returns 1: 'van Zonneveld'
    // *     example 2: stristr('Kevin van Zonneveld', 'VAN', true);
    // *     returns 2: 'Kevin '
 
    var pos = 0;
 
    haystack += '';
    pos = haystack.toLowerCase().indexOf( (needle+'').toLowerCase() );
    if( pos == -1 ){
        return false;
    } else{
        if( bool ){
            return haystack.substr( 0, pos );
        } else{
            return haystack.slice( pos );
        }
    }
}


var auto_height = {};
auto_height.getElementsByName = function (tag,eltname){ 
	var elts=document.getElementsByTagName(tag); 
	var count=0; 
	var elements=[]; 
	for(var i=0;i<elts.length;i++){ 
		if(elts[i].getAttribute("name")==eltname){ 
			elements[count++]=elts[i];
		} 
	}
	return elements; 
} 

auto_height.getElementsByClass = function (tag,className){ 
	var elts=document.getElementsByTagName(tag); 
	var count=0; 
	var elements=[]; 
	
	for(var i=0;i<elts.length;i++){ 
		
		if( stristr( elts[i].className,className ) ){ 
			
			elements[count++]=elts[i];
		} 
	}
	return elements; 
} 

auto_height.maxHeight = function ( tag,name ){
	var els = auto_height.getElementsByName(tag, name);
	var h = "";
	for (var i=0;i<els.length;i++){
		h += els[i].clientHeight + ",";
	}
	h = h.slice(0, -1);
	h = eval('Math.max('+h+')');
	
	return h;
}	

auto_height.maxHeightElement = function ( tags ){
	
	var h = "";
	for (var i=0;i<tags.length;i++){
		
		h += tags[i].clientHeight + ",";
	}
	h = h.slice(0, -1);
	h = eval('Math.max('+h+')');
	
	var h_offset = auto_height.maxHeightElementOffsetHeight( tags );
	var h_scroll = auto_height.maxHeightElementScrollHeight( tags );
	
	//alert( h+','+h_offset+','+h_scroll );
	
	return eval('Math.max('+h+','+h_offset+','+h_scroll+')');
}	

auto_height.maxHeightElementV2 = function ( tags ){
	
	var h = "";
	for (var i=0;i<tags.length;i++){
		
		h += tags[i].scrollHeight + ",";
	}
	h = h.slice(0, -1);
	return eval('Math.max('+h+')');
	
	//var h_offset = auto_height.maxHeightElementOffsetHeight( tags );
	//var h_scroll = auto_height.maxHeightElementScrollHeight( tags );
	
	//alert( h+','+h_offset+','+h_scroll );
	
	//return eval('Math.min('+h+','+h_offset+','+h_scroll+')');
}	


auto_height.maxHeightElementOffsetHeight = function ( tags ){
	
	var h = "";
	for (var i=0;i<tags.length;i++){
		
		h += tags[i].offsetHeight + ",";
	}
	h = h.slice(0, -1);
	h = eval('Math.max('+h+')');
	
	return h;
}	

auto_height.maxHeightElementScrollHeight = function ( tags ){
	
	var h = "";
	for (var i=0;i<tags.length;i++){
		
		h += tags[i].scrollHeight + ",";
	}
	h = h.slice(0, -1);
	h = eval('Math.max('+h+')');
	
	return h;
}	

auto_height.sameHeight = function (tag, name,h){
	var els = auto_height.getElementsByClass(tag, name);
	
	if( !(h>0) ){
		var calculate_h = 1;
	}else var calculate_h = 0;
	
	for (var j=0;j<els.length;j+=3){
		
		var tagset = new Array( els[j] );
		if( calculate_h ){
			if( els[j+1] && els[j+2] ){
				var tagset = new Array( els[j],els[j+1],els[j+2] );
			}else if( els[j+1] ){
				var tagset = new Array( els[j],els[j+1] );
			}
			h = auto_height.maxHeightElement( tagset );
			
		}
		
		if( els[j] ){
			els[j].style.height = h+'px';
		}
		if( els[j+1] ){
			els[j+1].style.height = h+'px';
		}
		if( els[j+2] ){
			els[j+2].style.height = h+'px';
		}
		
	}
	
}

auto_height.sameHeight4Col = function (tag, name,h){
	var els = auto_height.getElementsByClass(tag, name);
	
	if( !(h>0) ){
		var calculate_h = 1;
	}else var calculate_h = 0;
	
	for (var j=0;j<els.length;j+=4){
		
		var tagset = new Array( els[j] );
		if( calculate_h ){
			if( els[j+1] && els[j+2] && els[j+3] ){
				var tagset = new Array( els[j],els[j+1],els[j+2],els[j+3] );
			}else if( els[j+1] && els[j+2] ){
				var tagset = new Array( els[j],els[j+1],els[j+2] );
			}else if( els[j+1] ){
				var tagset = new Array( els[j],els[j+1] );
			}
			h = auto_height.maxHeightElement( tagset );
			
		}
		
		if( els[j] ){
			els[j].style.height = h+'px';
		}
		if( els[j+1] ){
			els[j+1].style.height = h+'px';
		}
		if( els[j+2] ){
			els[j+2].style.height = h+'px';
		}
		if( els[j+3] ){
			els[j+3].style.height = h+'px';
		}
		
	}
	
}

auto_height.sameHeight2ColRight = function (tag, name,h){
	var els = auto_height.getElementsByClass(tag, name);
	
	if( !(h>0) ){
		var calculate_h = 1;
	}else var calculate_h = 0;
	
	for (var j=0;j<els.length;j+=2){
		
		var tagset = new Array( els[j] );
		if( calculate_h ){
			if( els[j+1] ){
				var tagset = new Array( els[j],els[j+1] );
			}
			h = auto_height.maxHeightElement( tagset );
			
		}
		
		if( els[j] && els[j+1]){			
			els[j].style.height = h+'px';		
			els[j+1].style.height = h+'px';
		}
		
		
	}
	
}



auto_height.clearHeight = function (tag, name,h){
	var els = auto_height.getElementsByClass(tag, name);
	
	for (var j=0;j<els.length;j+=3){
		els[j].style.height = '';
	}
}

function mini_login( url )
{
	ajax_div.title =  url.title;
	ajax_div.init();
	ajax_div.get(url.href);	
	return false;
}
