Hi, i'm new to this forum but perhaps here is an easier way to get weeknumbers.

First I set firstweek to 4.th of january which is always in week 1
Then I set firstweek to the last hour,minute and millisecond of sunday in week 1
While current is bigger than firstweek I add 7 days while counting up weeknumber

It seems to work and as I am using the date object for stepping I guess it catches leap years also

Code:
function getweeknumber(current:Date):Number {
	var weeknumber=1 
	var firstweek=new Date()
	firstweek.setFullYear(current.getFullYear(),0,4)
	var sunday=4-firstweek.getDay()+7
	firstweek.setDate(sunday)
	firstweek.setHours(23,59,59,999)
	while(current>firstweek) {
		firstweek.setDate(firstweek.date+7)
		weeknumber++
	}
	return(weeknumber)
}