function sms_clean(s)
{
	var r=['ą','a', 'ę','e', 'ś','s', 'ć','c', 'ń','n', 'ż','z', 'ź','z', 'ł','l', 'ó','o', 'Ą','A', 'Ę','E', 'Ś','S', 'Ć','C', 'Ń','N', 'Ż','Z', 'Ź','Z', 'Ł','L', 'Ó','O', '\t',' '];
	var i;
	var d='';
	for(i=0; i<s.length; i++) {
		var c=s.charAt(i);
		var j;
		for(j=0; j<r.length; j+=2)
			if(c==r[j]) {
				c=r[j+1];
				break;
			}
		var cd=c.charCodeAt(0);
		if(cd<128 && (cd>=32 || cd==10))
			d+=c;
	}
	return d;
}

function sms_trim(s)
{
	var i;
	for(i=0; i<s.length; i++)
		if(s.charAt(i)!=32 && s.charAt(i)!=10)
			break;
	s=s.substr(i);
	for(i=s.length-1; i>=0; i--)
		if(s.charAt(i)!=32 && s.charAt(i)!=10)
			break;
	s=s.substr(0,i+1);
	return s;
}

function sms_render()
{
	var f=document.forms['smsform'].elements;
	var prev='';
	var sender=sms_trim(sms_clean(f['sender'].value));
	if(sender.length>0)
		prev=sender+': ';
	var msg=sms_trim(sms_clean(f['message'].value));
	prev+=msg;
	var adv=f['advert'].value;
	prev+=adv;
	var l=480-prev.length;
	if(prev.length>160) {
		var nsms=Math.ceil(prev.length/156);
		if(nsms>3)
			nsms=3;
		var i;
		var mprev='';
		for(i=0; i<nsms && prev.length>0; i++) {
			mprev+=(i+1)+'/'+nsms+' ';
			l-=4;
			mprev+=prev.substr(0,156)+'\n\n';
			prev=prev.substr(156);
		}
		prev=mprev;
	}
	f['preview'].value=prev;
	f['charsleft'].value=l;
}

function sms_init()
{
	var f=document.forms['smsform'].elements;
	f['sender'].onkeyup=sms_render;	
	f['message'].onkeyup=sms_render;
	sms_render();
}

function sms_clear()
{
	var f=document.forms['smsform'].elements;
	f['sender'].value='';	
	f['recipient'].value='';	
	f['message'].value='';	
	sms_render();
	f['sender'].focus();
}
