function getBrwsr(what) {
	var userAgt = navigator.userAgent;
	var appVer = navigator.appVersion;
	if(navigator.vendor != undefined) {
		var appVend = navigator.vendor;
	} else {	
		var appVend = 'none given';
	}
	var is_minor = parseFloat(appVer);
	var is_major = parseInt(is_minor);
	var fullwid = window.screen.width;
	var fullhgt = window.screen.height;
	op=(userAgt.indexOf('Opera')!=-1);
	saf=(userAgt.indexOf('Safari')!=-1);
	konq=(!saf && (userAgt.indexOf('Konqueror')!=-1) ) ? true : false;
	moz=( (!saf && !konq ) && ( userAgt.indexOf('Gecko')!=-1 ) ) ? true : false;
	ie=((userAgt.indexOf('MSIE')!=-1)&&!op);
	var str_pos;
	if (op) {
		str_pos=userAgt.indexOf('Opera');
		nu=userAgt.substr((str_pos+6),4);
		brow = 'Opera';
	} else if (saf) {
		str_pos=userAgt.indexOf('Safari');
		nu=userAgt.substr((str_pos+7),5);
		brow = 'Safari';
	} else if (konq) {
		str_pos=userAgt.indexOf('Konqueror');
		nu=userAgt.substr((str_pos+10),3);
		brow = 'Konqueror';
	} else if (moz) {
		// regular expression pattern that will be used to extract main version/rv numbers
		pattern = /[(); \n]/;
		// moz type array, add to this if you need to
		moz_types = new Array( 'Firebird', 'Phoenix', 'Firefox', 'Iceweasel', 'Galeon', 'K-Meleon', 'Camino', 'Epiphany', 'Netscape6', 'Netscape', 'MultiZilla', 'Gecko Debian', 'rv' );
		rv_pos = userAgt.indexOf( 'rv' );// find 'rv' position in userAgt string
		rv_full = userAgt.substr( rv_pos + 3, 6 );// cut out maximum size it can be, eg: 1.8a2, 1.0.0 etc
		// search for occurance of any of characters in pattern, if found get position of that character
		rv_slice = ( rv_full.search( pattern ) != -1 ) ? rv_full.search( pattern ) : '';
		//check to make sure there was a result, if not do  nothing
		// otherwise slice out the part that you want if there is a slice position
		( rv_slice ) ? rv_full = rv_full.substr( 0, rv_slice ) : '';
		// this is the working id number, 3 digits, you'd use this for 
		// number comparison, like if nu >= 1.3 do something
		nu = rv_full.substr( 0, 3 );
		for (i=0; i < moz_types.length; i++) {
			if ( userAgt.indexOf( moz_types[i]) !=-1 ) {
				moz_brow = moz_types[i];
				brow = moz_brow;
				break;
			}
		}
		if ( moz_brow )	{ // if it was found in the array 
			str_pos=userAgt.indexOf(moz_brow);// extract string position
			moz_brow_nu = userAgt.substr( (str_pos + moz_brow.length + 1 ) ,3);// slice out working number, 3 digit
			// if you got it, use it, else use nu
			moz_brow_nu = ( isNaN( moz_brow_nu ) ) ? moz_brow_nu = nu: moz_brow_nu;
			moz_brow_nu_sub = userAgt.substr( (str_pos + moz_brow.length + 1 ), 8);
			// this makes sure that it's only the id number
			sub_nu_slice = ( moz_brow_nu_sub.search( pattern ) != -1 ) ? moz_brow_nu_sub.search( pattern ) : '';
			//check to make sure there was a result, if not do  nothing
			( sub_nu_slice ) ? moz_brow_nu_sub = moz_brow_nu_sub.substr( 0, sub_nu_slice ) : '';
		}
		if ( moz_brow == 'Netscape6' )	{
			moz_brow = 'Netscape';
			brow = moz_brow;
		} else if ( moz_brow == 'rv' || moz_brow == '' ) {  // default value if no other gecko name fit
			moz_brow = 'Mozilla';
			brow = moz_brow;
		} 
		if ( !moz_brow_nu ) {  // use rv number if nothing else is available
			moz_brow_nu = nu;
			moz_brow_nu_sub = nu;
		} else {
			if(moz_brow_nu_sub) {
				nu = moz_brow_nu_sub;
			} else {
				nu = moz_brow_nu;
			}
		}
		/*
		if (n.productSub) {
			release_date = n.productSub;
		}
		*/
	} else if (ie) {
		str_pos=userAgt.indexOf('MSIE');
		nu=userAgt.substr((str_pos+5),3);
		brow = 'Microsoft Internet Explorer';
	} else {
		brow = nan;
	}
	if(!nu) {
		nu = nav.substring(0,1);
	}
	brow = brow.toLowerCase();
	switch(brow) {
		case 'microsoft internet explorer':
			brow = 'ie';
			break;
		case 'firefox':
			brow = 'ff';
			break;
		case 'safari':
			brow = 'saf';
			break;
		case 'netscape':
			brow = 'nn';
			break;
		case 'mozilla':
			brow = 'moz';
			break;
		default:
			brow = '';
	}
	if(what == 'brwsr') {
		return brow;
	}
	if(what = 'nu') {
		return nu;
	}
	//return brow;
}
