function count(textarea, pozost_znakow, ile_sms) {
	var ile_wprowadzono_znakow = textarea.value.length;
	var limit_znakow = 457;
	 
		
	if (!check_other_chars(textarea)){
	var spec_counter = count_spec(textarea.value);
	limit_znakow = 457;
	pozost_znakow.value = limit_znakow - ile_wprowadzono_znakow - spec_counter;
	
		if (ile_wprowadzono_znakow + spec_counter > limit_znakow) {
				textarea.value=textarea.value.substring(0,limit_znakow - spec_counter);
				pozost_znakow.value = 0;
			}
			
		if (ile_wprowadzono_znakow + spec_counter<=160) {ile_sms.value = 1;}
		else if (ile_wprowadzono_znakow + spec_counter<=305) {ile_sms.value = 2;}
		else if (ile_wprowadzono_znakow + spec_counter<=457) {ile_sms.value = 3;}
	} 
	else {
	limit_znakow = 201;
	pozost_znakow.value = limit_znakow - ile_wprowadzono_znakow;
		if (ile_wprowadzono_znakow  > limit_znakow) {
			textarea.value=textarea.value.substring(0,limit_znakow);
			pozost_znakow.value = 0;
		}
		
		if (ile_wprowadzono_znakow<=70) {ile_sms.value = 1;}
		else if (ile_wprowadzono_znakow<=134) {ile_sms.value = 2;}
		else if (ile_wprowadzono_znakow<=201) {ile_sms.value = 3;}
	}
	
}



function count_spec(nowy) {
	var spec_counter = 0;
		for (i=0;i<nowy.length;i++) {
			if (
				nowy.charAt(i)=='[' || nowy.charAt(i)==']' || nowy.charAt(i)=='}' || nowy.charAt(i)=='{' || nowy.charAt(i)=='\\' ||
				nowy.charAt(i)=='~' || nowy.charAt(i)=='|' || nowy.charAt(i)=='^' || nowy.charAt(i)=="\n"
			) spec_counter++;
		}
	return spec_counter;
}

function check_other_chars(obj){
return !/^[@L$YeéuioÇOoAa_^\{\}\\\[~\]|AaßÉ!"#¤%&'()*+,-.\/0-9:;<=>?!a-zÄÖNÜ§?äönüa \r\n]{0,}$/i.test(obj.value);
}

