بسم الله الرحمن الرحيم
الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين
هجري-مكة:
_______
(1) التاريخ الهجري / والميلادي
(2) اليوم من الأسبوع
(3) الساعة حسب توقيت مكة شرفها الله
كود بلغة HTML:
<html dir="rtl">
<head>
<title>هجري/مكة</title>
<script type="text/javascript">
var plyAdo = new Date();
function inpart(floatNum){
if (floatNum< -0.0000001){
return Math.ceil(floatNum-0.0000001);
}
return Math.floor(floatNum+0.0000001);
}
// == إعادة تعريف رقم الشهر بحيث يكون العنصر (0) هو شهر 1 أو يناير
var mnth=new Array();
mnth[0]=01;
mnth[1]=02;
mnth[2]=03;
mnth[3]=04;
mnth[4]=05;
mnth[5]=06;
mnth[6]=07;
mnth[7]=08;
mnth[8]=09;
mnth[9]=10;
mnth[10]=11;
mnth[11]=12;
var mnthnum = mnth[plyAdo.getUTCMonth()];
d=plyAdo.getUTCDate();
year=plyAdo.getUTCFullYear();
if (year < 1000 ) {
year+=1900;
}
//year = 1900+hjri.getYear()
var month = plyAdo.getUTCMonth() + 1 //getUTCMonth() returns 0-11
var day = plyAdo.getUTCDate()
var hour = plyAdo.getUTCHours()
var min = plyAdo.getUTCMinutes()
var sec = plyAdo.getUTCSeconds()
var univTime = hour+(min/60)+(sec/3600)
if ((100*year+month-190002.5) >= 0) {
var sign = 1;
}
else {
var sign = -1;
}
var part1 = 367 * year;
var part2 = Math.floor((7*(year+Math.floor((month+9)/12)))/4);
var part3 = day+Math.floor((275*month)/9);
var part4 = 1721013.5+(univTime/24);
var part5 = 0.5*sign;
var jd = part1-part2+part3+part4-part5+0.5+0.625; //0.625 = 3 hours add + 3 hours to get makkah time
// julian to hijri:
var l=jd-1948440+10632;
var n=inpart((l-1)/10631);
var l=l-10631*n+354;
var j=(inpart((10985-l)/5316))*(inpart((50*l)/17719))+(inpart(l/5670))*(inpart((43*l)/15238));
var l=l-(inpart((30-j)/15))*(inpart((17719*j)/50))-(inpart(j/16))*(inpart((15238*j)/43))+29;
var m=inpart((24*l)/709);
var d=Math.floor(l-inpart((709*m)/24));
var yhjri=30*n+j-30;
// remember that; we add 3 hours(0.625 in julian) when we calculate jdk inorder to get time in makkah:
// julian to gregorian with time hh:mm:ss
var X = jd;
var Z = Math.floor(X);
var F = X - Z;
var Y = Math.floor((Z-1867216.25)/36524.25);
var A = Z+1+Y-Math.floor(Y/4);
var B = A+1524;
var C = Math.floor((B-122.1)/365.25);
var D = Math.floor(365.25*C);
var G = Math.floor((B-D)/30.6001);
month = (G<13.5) ? (G-1) : (G-13);
year = (month<2.5) ? (C-4715) : (C-4716);
month -= 1; // month in JavaScript is from 0 to 11
UT = B-D-Math.floor(30.6001*G)+F;
day = Math.floor(UT);
UT -= Math.floor(UT);
UT *= 24;
hour = Math.floor(UT);
UT -= Math.floor(UT);
UT *= 60;
minute = Math.floor(UT);
UT -= Math.floor(UT);
UT *= 60;
second = Math.round(UT);
var wstMnth=new Array();
wstMnth[0]="يناير";
wstMnth[1]="فبراير";
wstMnth[2]="مارس";
wstMnth[3]="ابريل";
wstMnth[4]="مايو";
wstMnth[5]="يناير";
wstMnth[6]="يوليو";
wstMnth[7]="اغسطس";
wstMnth[8]="سبتمبر";
wstMnth[9]="اكتوبر";
wstMnth[10]="نوفمبر";
wstMnth[11]="ديسمبر";
var Hjrnam= new Array();
Hjrnam[1]="محرم";
Hjrnam[2]="صفر";
Hjrnam[3]="ربيع الأول";
Hjrnam[4]="ربيع الثاني";
Hjrnam[5]="جمادى الأولى";
Hjrnam[6]="جمادى الآخره";
Hjrnam[7]="رجب";
Hjrnam[8]="شعبان";
Hjrnam[9]="رمضان";
Hjrnam[10]="شوال";
Hjrnam[11]="ذي القعدة";
Hjrnam[12]="ذي الحجة";
// == أيام الأسبوع
// plyAdo.getDay() >> by default : 0=sun,1=mon,2=tues,3=wed,4=thr,5=fri,6=sat
var weekdy = new Array();
weekdy[6] = "السبت";
weekdy[0] = "الأحد";
weekdy[1] = "الإثنين";
weekdy[2] = "الثلاثاء";
weekdy[3] = "الأربعاء";
weekdy[4] = "الخميس";
weekdy[5] = "الجمعة";
var monthVal= new Array();
monthVal[0]=0; // January
monthVal[1]=3; // Febreuary
monthVal[2]=10;
monthVal[3]=6;
monthVal[4]=1;
monthVal[5]=4;
monthVal[6]=6;
monthVal[7]=2;
monthVal[8]=5;
monthVal[9]=7;
monthVal[10]=10;
monthVal[11]=5; // December
var mnthCode=monthVal[month]; // month code/value from monthVal
var Leap=0; // default no leap year
var g=(year%100); // last two digits of year
var k=g%4; // remainder of last two digits of year divided by four
var h=(g-k)/4; // last two digits of year divided by four dropping the fraction
var c=((year-g)/100)%4; // remainder of century divided by four
var p=year%100; // if year is divisible by 100 answer is 0
var q=year%400; // if year is divisible by 400 answer is 0
if (mnthCode==0 && k==0) {Leap=1};
if (mnthCode==3 && k==0) {Leap=1}; // m=3 >> month value febreuary
if (mnthCode==0 && p==0) {Leap=0};
if (mnthCode==3 && p==0) {Leap=0};
if (mnthCode==0 && q==0) {Leap=1};
if (mnthCode==3 && q==0) {Leap=1};
var dywkF =day+mnthCode+g+h+6-2*c-Leap; // Day of week formula
var dayN = dywkF%7; // dayN = index of day of week -- رقم اليوم من الأسبوع، يبدأمن الأحد : 0 1 2 3 4 5 6
var Gdate = day + "-" + mnth[month]+"-"+year; // calendar date -- الميلادي
//============================================================
function nowDate(){
var oNowTime=new Date();
var iMonth=m;
var iDate=d;
var iYear=yhjri;
var iMinutes=oNowTime.getMinutes();
var iSeconds=oNowTime.getSeconds();
var iMilliSeconds=oNowTime.getMilliseconds();
//24 Hours//var iHH;
if (oNowTime.getUTCHours() <= 20) {var iHH=oNowTime.getUTCHours()+3; }
if (oNowTime.getUTCHours() > 20) {var iHH=(oNowTime.getUTCHours()-24)+3; }
//12 Hours//iHours
if (oNowTime.getUTCHours() <= 20) {
if (oNowTime.getUTCHours() <= 9) {
var iHours=oNowTime.getUTCHours()+3;
var iTime= iHours+":"+iMinutes+":"+iSeconds + " صباحًا ";
}
if (oNowTime.getUTCHours() > 9) {
var iHours=(oNowTime.getUTCHours()+3)-12;
var iTime= iHours+":"+iMinutes+":"+iSeconds + " مساءًا ";
}
}
if (oNowTime.getUTCHours() > 20) {
var iHours=(oNowTime.getUTCHours()-24)+3;
var iTime= iHours+":"+iMinutes+":"+iSeconds + " صباحًا ";
}
var NowTime=iYear+"-"+iMonth+"-"+iDate + " | " +Gdate +"<br>"+"الساعة الآن في مكة شرفها الله"+" "+iTime+"<p>"; // time in makkah
return NowTime
}
function ShowMeTime(){
var mkId=document.getElementById("mkdate");
mkId.innerHTML=nowDate();
setTimeout("ShowMeTime()",1000);
}
</script>
</head>
<body onload="ShowMeTime()">
<center>
<span>
<div id="mkdate">*****</div>
</span>
</body>
</html>
تنبيه:
** لفتح الملف المرفق في المتصفح ، يجب تغيير الامتداد من txt إلى html أو htm
الحمدلله
والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين