@kinetics254/summit-odyssey
Version:
Events, Questionnaire, Feedback
141 lines (130 loc) • 3.18 kB
JavaScript
import moment from "moment/moment";
class Helper {
isEmpty(obj) {
for (var prop in obj) {
// eslint-disable-next-line no-prototype-builtins
if (obj.hasOwnProperty(prop)) return false;
}
return true;
}
prepareFormData(formData) {
let data = new FormData();
for (let key in formData) {
if (formData[key] === null) formData[key] = "";
data.append(key, formData[key]);
}
return data;
}
stringify(object) {
for (let key in object) {
if (typeof object[key] === "object")
object[key] = JSON.stringify(object[key]);
}
return object;
}
dateFix(date) {
if (date) {
if (
moment(date, "YYYY-MM-DD HH:mm:ss").format("YYYY-MM-DD HH:mm:ss") ===
date
)
return date;
return moment(date).format("Do MMMM YYYY");
}
return "";
}
changeToHumanReadable(date) {
if (date) {
if (
moment(date, "YYYY-MM-DD HH:mm:ss").format("YYYY-MM-DD HH:mm:ss") ===
date
)
return moment(date).format("Do MMMM YYYY");
}
return "";
}
prepareDate(date) {
return date ? moment(date).format().substr(0, 10) : "";
}
sanitizeDate(date) {
return moment(date).format().substr(0, 10);
}
getFileIconColor(fileName) {
if (!fileName) return "#727071";
let fileExtension = fileName.split(".").pop();
switch (fileExtension) {
case "docx":
return "#0276c0";
case "pdf":
return "#e62f34";
case "pptx":
return "#f39301";
case "xls":
return "#82bd8d";
case "xlsx":
return "#82bd8d";
case "png":
return "#a7ce59";
case "jpg":
return "#a7ce59";
default:
return "#727071";
}
}
getFileIcon(fileName) {
if (!fileName) return "fa fa-file-o";
let fileExtension = fileName.split(".").pop();
switch (fileExtension) {
case "docx":
return "fa fa-file-word";
case "pdf":
return "fa fa-file-pdf";
case "pptx":
return "fa fa-file-powerpoint";
case "xls":
return "fa fa-file-excel";
case "xlsx":
return "fa fa-file-excel";
case "png":
return "fa fa-file-image";
case "jpg":
return "fa fa-file-image";
default:
return "fa fa-file";
}
}
status() {
return {
open: "green",
closed: "red",
billed: "blue",
cancelled: "purple",
};
}
detectMimeType(b64) {
const signatures = {
JVBERi0: "application/pdf",
iVBORw0KGgo: "image/png",
"/9j/": "image/jpg",
};
for (var s in signatures) {
if (b64.indexOf(s) === 0) {
return signatures[s];
}
}
}
fileExtension(b64) {
const signatures = {
JVBERi0: ".pdf",
iVBORw0KGgo: ".png",
"/9j/": ".jpg",
UEsDBBQ: ".xlsx",
};
for (var s in signatures) {
if (b64.indexOf(s) === 0) {
return signatures[s];
}
}
}
}
export default new Helper();