// Use strict "use strict"; // Classes // Copyright class class Copyright { // Public // Initialize static initialize() { // Update Copyright.update(); } // Private // Update static update() { // Get current timestamp var currentTimestamp = new Date(); // Get current year var currentYear = currentTimestamp.getFullYear(); // Check if the current year is greater than the copyright year if(currentYear > COPYRIGHT_YEAR) { // Get new date copyright var newDateCopyright = $(Language.createTranslatableContainer("", Language.getDefaultTranslation('%1$s–%2$s'), [COPYRIGHT_YEAR.toFixed(), currentYear.toFixed()])); // Get new rights var newRights = $(Language.createTranslatableContainer("", Language.getDefaultTranslation('© %1$s–%2$s Nicolas Flamel.'), [COPYRIGHT_YEAR.toFixed(), currentYear.toFixed()])); } // Otherwise else { // Get new date copyright var newDateCopyright = $(Language.createTranslatableContainer("", "%1$s", [COPYRIGHT_YEAR.toFixed()])); // Get new rights var newRights = $(Language.createTranslatableContainer("", Language.getDefaultTranslation('© %1$s Nicolas Flamel.'), [COPYRIGHT_YEAR.toFixed()])); } // Set new date copyright's name newDateCopyright.attr("name", Copyright.DATE_COPYRIGHT_NAME); // Set new rights's name newRights.attr("name", Copyright.RIGHTS_NAME); // Replace date copyright with the new date copyright $("meta[name=\"" + Copyright.DATE_COPYRIGHT_NAME + "\"]").replaceWith(newDateCopyright); // Replace rights with the new rights $("meta[name=\"" + Copyright.RIGHTS_NAME + "\"]").replaceWith(newRights); // Get next year timestamp var nextYearTimestamp = new Date(currentYear + 1, Common.JANUARY_MONTH_INDEX); // Set timeout setTimeout(function() { // Update Copyright.update(); }, Math.min(nextYearTimestamp - currentTimestamp, Common.INT32_MAX_VALUE)); } // Date copyright name static get DATE_COPYRIGHT_NAME() { // Return date copyright name return "dcterms.dateCopyrighted"; } // Rights name static get RIGHTS_NAME() { // Return rights name return "dcterms.rights"; } } // Main function // Set global object's copyright globalThis["Copyright"] = Copyright; // Ready event $(function() { // Initialize copyright Copyright.initialize(); });