fix (#356): preventing entering the expiration date on safari (#366)

Co-authored-by: Quentin Bramas <bramas@unistra.fr>
This commit is contained in:
Quentin Bramas 2021-03-04 11:22:19 +01:00 committed by GitHub
parent d0379e3e86
commit 5f85d59258
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -182,9 +182,15 @@ export class ShareComponent extends React.Component {
};
const datify = function(str){
if(!str) return str;
const d = new Date(str);
const pad = (a) => a.toString().length === 1 ? "0"+a : a;
return [d.getFullYear(), pad(d.getMonth()), pad(d.getDate())].join("-");
const d = new Date(str);
// old browser not implementing input[type=date] elements
// may return invalid date,
if(isNaN(d.getDate())) return str;
const pad2 = (a) => ("00"+a).slice(-2);
const pad4 = (a) => ("0000"+a).slice(-4);
return [pad4(d.getFullYear()), pad2(d.getMonth()+1), pad2(d.getDate())].join("-");
};
return (