Link to home
Start Free TrialLog in
Avatar of mathieu_cupryk
mathieu_cuprykFlag for Canada

asked on

Convert javascript to vb.net

I need to convert the following to vb.net
<SCRIPT LANGUAGE="JavaScript"><!--
function y2k(number)    { return (number < 1000) ? number + 1900 : number; }

function makeArray() {
    this[0] = makeArray.arguments.length;
    for (i = 0; i<makeArray.arguments.length; i++)
        this[i+1] = makeArray.arguments[i];
}

var daysofweek   = new makeArray('Sunday',
                                 'Monday',
                                 'Tuesday',
                                 'Wednesday',
                                 'Thursday',
                                 'Friday',
                                 'Saturday');

var monthsofyear = new makeArray('January',
                                 'February',
                                 'March',
                                 'April',
                                 'May',
                                 'June',
                                 'July',
                                 'August',
                                 'September',
                                 'October',
                                 'November',
                                 'December');

var chinese      = new makeArray('Rat',
                                 'Ox',
                                 'Tiger',
                                 'Hare',
                                 'Dragon',
                                 'Snake',
                                 'Horse',
                                 'Sheep',
                                 'Monkey',
                                 'Fowl',
                                 'Dog',
                                 'Pig');

var branches     = new makeArray('Zi',
                                 'Chou',
                                 'Yin',
                                 'Mao',
                                 'Chen',
                                 'Si',
                                 'Wu',
                                 'Wei',
                                 'Shen',
                                 'You',
                                 'Xu',
                                 'Hai');

var stems        = new makeArray('Jia',
                                 'Yi',
                                 'Bing',
                                 'Ding',
                                 'Wu',
                                 'Ji',
                                 'Geng',
                                 'Xin',
                                 'Ren',
                                 'Gui');

var chinesenewyear = new makeArray(1.31,2.19,2.08,1.29,2.16,2.04,1.25,2.13,2.02,1.22,
                                   2.10,1.30,2.18,2.06,1.26,2.14,2.03,1.23,2.11,2.01,
                                   2.20,2.08,1.28,2.16,2.05,1.25,2.13,2.02,1.23,2.10,
                                   1.30,2.17,2.06,1.26,2.14,2.04,1.24,2.11,1.31,2.19,
                                   2.08,1.27,2.15,2.05,1.25,2.13,2.02,1.22,2.10,1.29,
                                   2.17,2.06,1.27,2.14,2.03,1.24,2.12,1.31,2.18,2.08,
                                   1.28,2.15,2.05,1.25,2.13,2.02,1.21,2.09,1.30,2.17,
                                   2.06,1.27,2.15,2.03,1.23,2.11,1.31,2.18,2.07,1.28,
                                   2.16,2.05,1.25,2.13,2.02,2.20,2.09,1.29,2.17,2.06,
                                   1.27,2.15,2.04,1.23,2.10,1.31,2.19,2.07,1.28,2.16);


function DayOfWeek(day,month,year) {
    var a = Math.floor((14 - month)/12);
    var y = year - a;
    var m = month + 12*a - 2;
    var d = (day + y + Math.floor(y/4) - Math.floor(y/100) + Math.floor(y/400) + Math.floor((31*m)/12)) % 7;
    return d+1;
}

function Nths(day) {
    if (day == 1 || day == 21 || day == 31) return 'st';
    if (day == 2 || day == 22) return 'nd';
    if (day == 3 || day == 23) return 'rd';
    return 'th';
}

function FullDate(day,month,year) {
    return daysofweek[DayOfWeek(day,month,year)] +' '+ day + Nths(day) +' '+ monthsofyear[month] +' '+ year;
}

function Chinese(day,month,year) {
    if ((year > 1900) && (year < 1999)) {
        var newYear = chinesenewyear[year - 1899];
        var newMonth = Math.floor(newYear);
        var newDay = Math.round((newYear*100)-(newMonth*100));

        if ((month > newMonth) || ((month == newMonth) && (day >= newDay))) {
            // this year
            var chineseBranch = (year-3)%12;
            var chineseStem = (year-3)%10;

            var nextYear = chinesenewyear[year - 1899 + 1];
            var nextMonth = Math.floor(nextYear);
            var nextDay = Math.round((nextYear*100)-(nextMonth*100));

            var lastDay = nextDay - 1;
            if (lastDay == 0) {
                lastMonth = nextMonth - 1;
                lastDay = 31;
            }
            else lastMonth = nextMonth;
           
            chineseyearrange = FullDate(newDay,newMonth,year) + ' - ' +
                               FullDate(lastDay,lastMonth,year+1);
        }
        else {
            // last year
            var chineseBranch = (year-4)%12;
            var chineseStem = (year-4)%10;

            var oldYear = chinesenewyear[year - 1899 - 1];
            var oldMonth = Math.floor(oldYear);
            var oldDay = Math.round((oldYear*100)-(oldMonth*100));

            var lastDay = newDay - 1;
            if (lastDay == 0) {
                lastMonth = newMonth - 1;
                lastDay = 31;
            }
            else lastMonth = newMonth;
           
            chineseyearrange = FullDate(oldDay,oldMonth,year-1) + ' ' +
                               FullDate(lastDay,lastMonth,year);
        }
    }
    else {
        var chineseBranch = (year-3)%12;
        var chineseStem = (year-3)%10;
    }

    if (chineseBranch == 0)
        chineseBranch = 12;

    if (chineseStem == 0)
        chineseStem = 10;

    chineseyearname = '(' + stems[chineseStem] + '-' + branches[chineseBranch] + ')';

    return chinese[chineseBranch];
}

if (location.search.length == 0) {
    var year = parent.year - 0;
    var month = parent.month - 0;
    var day = parent.day - 0;
}
else {
    var day   = location.search.substring(5,7) - 0;
    var month = location.search.substring(14,16) - 0;
    var year  = location.search.substring(22) - 0;
}

var today = new Date();
var thisYear = y2k(today.getYear());
var thisMonth = today.getMonth()+1;
var thisDay = today.getDate();
//--></SCRIPT>
Avatar of nfashaw
nfashaw
Flag of United States of America image

I suggest putting an advertisement on a local bulletin board, contacting a local university, using a service like craigslist.com or rentacoder.com and hire someone to do the work for you.

There are also plenty of resources available to learn VB.NET yourself.
Avatar of jazzIIIlove
VB is not compatible with Firefox Mozilla, I recommend using the above javascript directly, not converting it.
ASKER CERTIFIED SOLUTION
Avatar of me655321
me655321

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of mathieu_cupryk

ASKER

k