function showdate() {
    week= new Array("يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه")
    months = new Array("فروردين","ارديبهشت","خرداد","تير","مرداد","شهريور","مهر","آبان","آذر","دي","بهمن","اسفند");
    a = new Date();
    d= a.getDay();
    day= a.getDate();
    month = a.getMonth()+1;
    year= a.getYear();
    if (year== 0){year=2000;}  //choon browser haye mokhtalef be sorathaye motefaveti sal ra nemayesh midahand enn khotoot ezafe shode
    if (year<100){year +=1900;}
    y=1;
    for(i=0;i<3000;i+=4) {     //har sali ke barabare 2000 ,2004 ,2008,... bashad dar sale miladi 1 rooz bishtar ast
        if (year==i) {y=2;}
        }
    for(i=1;i<3000;i+=4) {
        if (year==i) {y=3;}	//har sali ke barabare 2001 ,2005 ,2009,... bashad dar sale shamsi kabise ast
        }

	//tabdile rooz ha va mahha be sorate khati va batavajoh be kabise boodan ya naboodan sorat migirad.
//pas se halat mojood ast:
//1: na sale miladi 366 rooz bashad na shamsi
//2: sale miladi 366 rooz bashad
//3: sale shamsi 366 rooz bashad

if (y==1) {
        year -= ( (month < 3) || ((month == 3) && (day < 21)) )? 622:621;

        switch (month) {
            case 1: (day<21)? (month=10, day+=10):(month=11, day-=20); break;
            case 2: (day<20)? (month=11, day+=11):(month=12, day-=19); break;
            case 3: (day<21)? (month=12, day+=9):(month=1, day-=20);   break;
            case 4: (day<21)? (month=1, day+=11):(month=2, day-=20);   break;
            case 5:
            case 6: (day<22)? (month-=3, day+=10):(month-=2, day-=21); break;
            case 7:
            case 8:
            case 9: (day<23)? (month-=3, day+=9):(month-=2, day-=22);  break;
            case 10:(day<23)? (month=7, day+=8):(month=8, day-=22);    break;
            case 11:
            case 12:(day<22)? (month-=3, day+=9):(month-=2, day-=21);  break;
       default:          break;
        }
        }
if (y==2) {
        year -= ( (month < 3) || ((month == 3) && (day < 20)) )? 622:621;

        switch (month) {
            case 1: (day<21)? (month=10, day+=10):(month=11, day-=20); break;
            case 2: (day<20)? (month=11, day+=11):(month=12, day-=19); break;
            case 3: (day<20)? (month=12, day+=10):(month=1, day-=19);   break;
            case 4: (day<20)? (month=1, day+=12):(month=2, day-=19);   break;
            case 5: (day<21)? (month=2, day+=11):(month=3, day-=20);   break;
            case 6: (day<21)? (month=3, day+=11):(month=4, day-=20); break;
            case 7: (day<22)? (month=4, day+=10):(month=5, day-=21);   break;
            case 8: (day<22)? (month=5, day+=10):(month=6, day-=21);   break;
            case 9: (day<22)? (month=6, day+=10):(month=7, day-=21);  break;
            case 10:(day<22)? (month=7, day+=9):(month=8, day-=21);    break;
            case 11:(day<21)? (month=8, day+=10):(month=9, day-=20);   break;
            case 12:(day<21)? (month=9, day+=10):(month=10, day-=20);  break;
       default:          break;
        }
        }
if (y==3) {
        year -= ( (month < 3) || ((month == 3) && (day < 21)) )? 622:621;

        switch (month) {
            case 1: (day<20)? (month=10, day+=11):(month=11, day-=19); break;
            case 2: (day<19)? (month=11, day+=12):(month=12, day-=18); break;
            case 3: (day<21)? (month=12, day+=10):(month=1, day-=20);   break;
            case 4: (day<21)? (month=1, day+=11):(month=2, day-=20);   break;
            case 5:
            case 6: (day<22)? (month-=3, day+=10):(month-=2, day-=21); break;
            case 7:
            case 8:
            case 9: (day<23)? (month-=3, day+=9):(month-=2, day-=22);  break;
            case 10:(day<23)? (month=7, day+=8):(month=8, day-=22);    break;
            case 11:
            case 12:(day<22)? (month-=3, day+=9):(month-=2, day-=21);  break;
       default:          break;
        }
        }
document.write(week[d]+" "+day+" "+months[month-1]+" "+ year);
}