mirror of
https://github.com/VTECRM/vtenext.git
synced 2026-02-26 16:18:47 +00:00
143 lines
4.0 KiB
JavaScript
143 lines
4.0 KiB
JavaScript
|
|
|
|
|
|
function dateToRelative(localTime){
|
|
var diff=new Date().getTime()-localTime;
|
|
var ret="";
|
|
|
|
var min=60000;
|
|
var hour=3600000;
|
|
var day=86400000;
|
|
var wee=604800000;
|
|
var mon=2629800000;
|
|
var yea=31557600000;
|
|
|
|
if (diff<-yea*2)
|
|
ret ="in ## years".replace("##",(-diff/yea).toFixed(0));
|
|
|
|
else if (diff<-mon*9)
|
|
ret ="in ## months".replace("##",(-diff/mon).toFixed(0));
|
|
|
|
else if (diff<-wee*5)
|
|
ret ="in ## weeks".replace("##",(-diff/wee).toFixed(0));
|
|
|
|
else if (diff<-day*2)
|
|
ret ="in ## days".replace("##",(-diff/day).toFixed(0));
|
|
|
|
else if (diff<-hour)
|
|
ret ="in ## hours".replace("##",(-diff/hour).toFixed(0));
|
|
|
|
else if (diff<-min*35)
|
|
ret ="in about one hour";
|
|
|
|
else if (diff<-min*25)
|
|
ret ="in about half hour";
|
|
|
|
else if (diff<-min*10)
|
|
ret ="in some minutes";
|
|
|
|
else if (diff<-min*2)
|
|
ret ="in few minutes";
|
|
|
|
else if (diff<=min)
|
|
ret ="just now";
|
|
|
|
else if (diff<=min*5)
|
|
ret ="few minutes ago";
|
|
|
|
else if (diff<=min*15)
|
|
ret ="some minutes ago";
|
|
|
|
else if (diff<=min*35)
|
|
ret ="about half hour ago";
|
|
|
|
else if (diff<=min*75)
|
|
ret ="about an hour ago";
|
|
|
|
else if (diff<=hour*5)
|
|
ret ="few hours ago";
|
|
|
|
else if (diff<=hour*24)
|
|
ret ="## hours ago".replace("##",(diff/hour).toFixed(0));
|
|
|
|
else if (diff<=day*7)
|
|
ret ="## days ago".replace("##",(diff/day).toFixed(0));
|
|
|
|
else if (diff<=wee*5)
|
|
ret ="## weeks ago".replace("##",(diff/wee).toFixed(0));
|
|
|
|
else if (diff<=mon*12)
|
|
ret ="## months ago".replace("##",(diff/mon).toFixed(0));
|
|
|
|
else
|
|
ret ="## years ago".replace("##",(diff/yea).toFixed(0));
|
|
|
|
return ret;
|
|
}
|
|
|
|
//override date format i18n
|
|
|
|
Date.monthNames = ["January","February","March","April","May","June","July","August","September","October","November","December"];
|
|
// Month abbreviations. Change this for local month names
|
|
Date.monthAbbreviations = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
|
|
// Full day names. Change this for local month names
|
|
Date.dayNames =["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
|
|
// Day abbreviations. Change this for local month names
|
|
Date.dayAbbreviations = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
|
|
// Used for parsing ambiguous dates like 1/2/2000 - default to preferring 'American' format meaning Jan 2.
|
|
// Set to false to prefer 'European' format meaning Feb 1
|
|
Date.preferAmericanFormat = false;
|
|
|
|
Date.firstDayOfWeek =1;
|
|
Date.defaultFormat = "dd/MM/yyyy";
|
|
|
|
|
|
Number.decimalSeparator = ".";
|
|
Number.groupingSeparator = ",";
|
|
Number.minusSign = "-";
|
|
Number.currencyFormat = "##0.00";
|
|
|
|
|
|
|
|
var millisInWorkingDay =36000000;
|
|
var workingDaysPerWeek =5;
|
|
|
|
function isHoliday(date) {
|
|
var friIsHoly =false;
|
|
var satIsHoly =true;
|
|
var sunIsHoly =true;
|
|
|
|
pad = function (val) {
|
|
val = "0" + val;
|
|
return val.substr(val.length - 2);
|
|
};
|
|
|
|
//crmv@104562
|
|
//var holidays = "#01_01#04_25#08_15#11_01#12_25#12_26#06_02#12_08#05_01#2010_04_05#2010_10_19#2010_05_15#2011_04_04#";
|
|
var holidays = GanttScript.holidays;
|
|
//crmv@104562e
|
|
|
|
var ymd = "#" + date.getFullYear() + "_" + pad(date.getMonth() + 1) + "_" + pad(date.getDate()) + "#";
|
|
var md = "#" + pad(date.getMonth() + 1) + "_" + pad(date.getDate()) + "#";
|
|
var day = date.getDay();
|
|
|
|
return (day == 5 && friIsHoly) || (day == 6 && satIsHoly) || (day == 0 && sunIsHoly) || holidays.indexOf(ymd) > -1 || holidays.indexOf(md) > -1;
|
|
}
|
|
|
|
|
|
|
|
var i18n = {
|
|
FORM_IS_CHANGED:"You have some unsaved data on the page!",
|
|
YES:"yes",
|
|
NO:"no",
|
|
FLD_CONFIRM_DELETE:"confirm the deletion?",
|
|
INVALID_DATA:"The data inserted are invalid for the field format.",
|
|
ERROR_ON_FIELD:"Error on field",
|
|
CLOSE_ALL_CONTAINERS:"close all?",
|
|
|
|
|
|
|
|
DO_YOU_CONFIRM:"Do you confirm?"
|
|
};
|
|
|
|
|