Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
code:javascript:home [2023/08/03 10:19] – [LocalTime Issues] gerardorourkecode:javascript:home [2023/08/03 16:02] (current) – [Convert ISO Time to IST Format] gerardorourke
Line 237: Line 237:
  
 <code> <code>
 +date = new Date();
 +//date = new Date('2024-05-10T05:00:00.000Z');
 +year = date.getFullYear();
 +ist = date; //Irish Standard Time (note we do need to remove the Z later!)
 +
 startSummerTime2023 = Date.parse('2023-03-26T01:00:00.000Z'); startSummerTime2023 = Date.parse('2023-03-26T01:00:00.000Z');
 endSummerTime2023 = Date.parse('2023-10-29T01:00:00.000Z'); endSummerTime2023 = Date.parse('2023-10-29T01:00:00.000Z');
Line 261: Line 266:
 startSummerTime2034 = Date.parse('2034-03-26T01:00:00.000Z'); startSummerTime2034 = Date.parse('2034-03-26T01:00:00.000Z');
 endSummerTime2034 = Date.parse('2034-10-29T01:00:00.000Z'); endSummerTime2034 = Date.parse('2034-10-29T01:00:00.000Z');
- 
-//date = new Date(); 
-date = new Date('2029-11-10T05:00:00.000Z'); 
-year = date.getFullYear(); 
-ist = date; //Irish Standard Time (note we do need to remove the Z later!) 
  
  
Line 287: Line 287:
      console.log(ist)      console.log(ist)
      //1;      //1;
-   } else if ((year >= 2023) && (year < 2035)){+   } else if ((year >= 2023) && (year < 2035){
      //Do not change time - as its time equal to UTC      //Do not change time - as its time equal to UTC
      ist = date.toISOString();      ist = date.toISOString();
Line 293: Line 293:
      //2;      //2;
    } else {    } else {
 +     //error - contact your admin
      console.log('error - outside daterange - contact your admin');      console.log('error - outside daterange - contact your admin');
-     //3; 
    }    }
 +</code>
 +
 +==== Convert ISO Time to IST Format ====
 +<code>
 +date = '2023-03-26T01:23:45.000Z';
 +formatdate = date.slice(8,10) + '/' + date.slice(5,7) + '/'+date.slice(0,4)
 +formattime = date.slice(11,13) + ':' + date.slice(14,16);
 +console.log(formatdate);
 +console.log(formattime);
 +</code>
 +
 +==== Check if Current Date is within 30 dates of manually enters date time in IST format ====
 +<code>
 +startTime = '2023-08-04T15:59:00.000Z';
 +startTimeDate = Date.parse(startTime);
 +startTimeDate = new Date(startTimeDate);
 +//We are going to check if the entered time is valid.
 +//A valid time is in the future from now and within the next 30 days.
 +//since the 'startTime' we have is in UTC format but user enters it in Irish Standard Time,
 +//We therefore need to get the current time and convert this to IST.
 +// This set the variable 'ist' to be current time in IST but says its UTC.
 +
 +date = new Date(); //Current Time
 +ist = date;
 +year = date.getFullYear();
 +let istPlus30Days = new Date(ist);
 +
 +startSummerTime2023 = Date.parse('2023-03-26T01:00:00.000Z');
 +endSummerTime2023 = Date.parse('2023-10-29T01:00:00.000Z');
 +startSummerTime2024 = Date.parse('2024-03-31T01:00:00.000Z');
 +endSummerTime2024 = Date.parse('2024-10-27T01:00:00.000Z');
 +startSummerTime2025 = Date.parse('2025-03-30T01:00:00.000Z');
 +endSummerTime2025 = Date.parse('2025-10-26T01:00:00.000Z');
 +startSummerTime2026 = Date.parse('2026-03-29T01:00:00.000Z');
 +endSummerTime2026 = Date.parse('2026-10-25T01:00:00.000Z');
 +startSummerTime2027 = Date.parse('2027-03-28T01:00:00.000Z');
 +endSummerTime2027 = Date.parse('2027-10-31T01:00:00.000Z');
 +startSummerTime2028 = Date.parse('2028-03-26T01:00:00.000Z');
 +endSummerTime2028 = Date.parse('2028-10-29T01:00:00.000Z');
 +startSummerTime2029 = Date.parse('2029-03-25T01:00:00.000Z');
 +endSummerTime2029 = Date.parse('2029-10-28T01:00:00.000Z');
 +startSummerTime2030 = Date.parse('2030-03-31T01:00:00.000Z');
 +endSummerTime2030 = Date.parse('2030-10-27T01:00:00.000Z');
 +startSummerTime2031 = Date.parse('2031-03-30T01:00:00.000Z');
 +endSummerTime2031 = Date.parse('2031-10-26T01:00:00.000Z');
 +startSummerTime2032 = Date.parse('2032-03-28T01:00:00.000Z');
 +endSummerTime2032 = Date.parse('2032-10-31T01:00:00.000Z');
 +startSummerTime2033 = Date.parse('2033-03-27T01:00:00.000Z');
 +endSummerTime2033 = Date.parse('2033-10-30T01:00:00.000Z');
 +startSummerTime2034 = Date.parse('2034-03-26T01:00:00.000Z');
 +endSummerTime2034 = Date.parse('2034-10-29T01:00:00.000Z');
 +
 +//Check if current date in UTC is in Summer Time DateTime Range and if so add an hour to 'ist'
 +if ((date > startSummerTime2023 && date < endSummerTime2023) || (date > startSummerTime2024 && date < endSummerTime2024) || (date > startSummerTime2025 && date < endSummerTime2025) || (date > startSummerTime2026 && date < endSummerTime2026) || (date > startSummerTime2027 && date < endSummerTime2027) || (date > startSummerTime2028 && date < endSummerTime2028) || (date > startSummerTime2029 && date < endSummerTime2029) || (date > startSummerTime2030 && date < endSummerTime2030) || (date > startSummerTime2031 && date < endSummerTime2031) || (date > startSummerTime2032 && date < endSummerTime2032) || (date > startSummerTime2033 && date < endSummerTime2033) || (date > startSummerTime2034 && date < endSummerTime2034)) {
 +    ist.setHours(date.getHours()+1);
 +} else if ((year >= 2023) && (year < 2035)) {
 +    //Do not change time - as its time equal to UTC
 +} else {
 +    3;
 +}
 +
 +istPlus30Days.setHours(ist.getHours()+(24*30)); // Add 30 days to ist time    
  
 +if ((startTimeDate > ist) && (startTimeDate < istPlus30Days)){  
 +    console.log("Valid");
 +}else{ 
 +    console.log("InValid");
 +}
 </code> </code>
  • code/javascript/home.1691054390.txt.gz
  • Last modified: 2023/08/03 10:19
  • by gerardorourke