diff options
42 files changed, 730 insertions, 89 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index bdb3a032..392e5fce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,16 +2,18 @@ This release adds the following new features: - * [Add Bounties and Commercial Support to wiki](https://github.com/wekan/wekan/wiki). +* [Add Bounties and Commercial Support to wiki](https://github.com/wekan/wekan/wiki); +* [Add display wekan version number and runtime + environment](https://github.com/wekan/wekan/pull/1156). -Thanks to GitHub user xet7 for contributions. +Thanks to GitHub users nztqa and xet7 for their contributions. # v0.32 2017-07-30 Wekan release This release adds the following new features: - * [Add dwrensha's Sandstorm patch to Wekan so it does not need to be maintained - separately](https://github.com/wekan/wekan/commit/bda15daa78556223117a5846941aafd1212f14d3). +* [Add dwrensha's Sandstorm patch to Wekan so it does not need to be maintained + separately](https://github.com/wekan/wekan/commit/bda15daa78556223117a5846941aafd1212f14d3). and fixes the following bugs: diff --git a/client/components/settings/informationBody.jade b/client/components/settings/informationBody.jade new file mode 100644 index 00000000..53907513 --- /dev/null +++ b/client/components/settings/informationBody.jade @@ -0,0 +1,51 @@ +template(name='information') + .setting-content + unless currentUser.isAdmin + | {{_ 'error-notAuthorized'}} + else + .content-title + span {{_ 'info'}} + .content-body + .side-menu + ul + li.active + a.js-setting-menu(data-id="information-display") {{_ 'info'}} + .main-body + +statistics + +template(name='statistics') + table + tbody + tr + th {{_ 'Wekan_version'}} + td {{statistics.version}} + tr + th {{_ 'Node_version'}} + td {{statistics.process.nodeVersion}} + tr + th {{_ 'OS_Type'}} + td {{statistics.os.type}} + tr + th {{_ 'OS_Platform'}} + td {{statistics.os.platform}} + tr + th {{_ 'OS_Arch'}} + td {{statistics.os.arch}} + tr + th {{_ 'OS_Release'}} + td {{statistics.os.release}} + tr + th {{_ 'OS_Uptime'}} + td {{humanReadableTime statistics.os.uptime}} + tr + th {{_ 'OS_Loadavg'}} + td {{numFormat statistics.os.loadavg.[0]}}, {{numFormat statistics.os.loadavg.[1]}}, {{numFormat statistics.os.loadavg.[2]}} + tr + th {{_ 'OS_Totalmem'}} + td {{bytesToSize statistics.os.totalmem}} + tr + th {{_ 'OS_Freemem'}} + td {{bytesToSize statistics.os.freemem}} + tr + th {{_ 'OS_Cpus'}} + td {{statistics.os.cpus.length}} diff --git a/client/components/settings/informationBody.js b/client/components/settings/informationBody.js new file mode 100644 index 00000000..4775bce6 --- /dev/null +++ b/client/components/settings/informationBody.js @@ -0,0 +1,48 @@ +BlazeComponent.extendComponent({ + onCreated() { + this.info = new ReactiveVar({}); + Meteor.call('getStatistics', (error, ret) => { + if (!error && ret) { + this.info.set(ret); + } + }); + }, + + statistics() { + return this.info.get(); + }, + + humanReadableTime(time) { + const days = Math.floor(time / 86400); + const hours = Math.floor((time % 86400) / 3600); + const minutes = Math.floor(((time % 86400) % 3600) / 60); + const seconds = Math.floor(((time % 86400) % 3600) % 60); + let out = ''; + if (days > 0) { + out += `${days} ${TAPi18n.__('days')}, `; + } + if (hours > 0) { + out += `${hours} ${TAPi18n.__('hours')}, `; + } + if (minutes > 0) { + out += `${minutes} ${TAPi18n.__('minutes')}, `; + } + if (seconds > 0) { + out += `${seconds} ${TAPi18n.__('seconds')}`; + } + return out; + }, + + numFormat(number) { + return parseFloat(number).toFixed(2); + }, + + bytesToSize(bytes) { + const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB']; + if (bytes === 0) { + return '0 Byte'; + } + const i = parseInt(Math.floor(Math.log(bytes) / Math.log(1024)), 10); + return `${Math.round(bytes / Math.pow(1024, i), 2)} ${sizes[i]}`; + }, +}).register('statistics'); diff --git a/client/components/settings/settingHeader.jade b/client/components/settings/settingHeader.jade index fb884056..c22cf5c6 100644 --- a/client/components/settings/settingHeader.jade +++ b/client/components/settings/settingHeader.jade @@ -6,10 +6,13 @@ template(name="settingHeaderBar") unless isMiniScreen unless isSandstorm if currentUser - a.setting-header-btn.settings.active + a.setting-header-btn.settings(href="{{pathFor 'setting'}}") i.fa(class="fa-cog") span {{_ 'settings'}} -//TODO + a.setting-header-btn.informations(href="{{pathFor 'information'}}") + i.fa(class="fa-info-circle") + span {{_ 'info'}} +//TODO // a.setting-header-btn.people // i.fa(class="fa-users") // span {{_ 'people'}} diff --git a/config/router.js b/config/router.js index ea85c7e6..7f657820 100644 --- a/config/router.js +++ b/config/router.js @@ -120,6 +120,26 @@ FlowRouter.route('/setting', { }, }); +FlowRouter.route('/information', { + name: 'information', + triggersEnter: [ + AccountsTemplates.ensureSignedIn, + () => { + Session.set('currentBoard', null); + Session.set('currentCard', null); + + Filter.reset(); + EscapeActions.executeAll(); + }, + ], + action() { + BlazeLayout.render('defaultLayout', { + headerBar: 'settingHeaderBar', + content: 'information', + }); + }, +}); + FlowRouter.notFound = { action() { BlazeLayout.render('defaultLayout', { content: 'notFound' }); diff --git a/i18n/ar.i18n.json b/i18n/ar.i18n.json index 07c600de..aeccdb90 100644 --- a/i18n/ar.i18n.json +++ b/i18n/ar.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "حدّد عضو ويكان", - "info": "معلومات", + "info": "Version", "initials": "أولية", "invalid-date": "تاريخ غير صالح", "joined": "انضمّ", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/br.i18n.json b/i18n/br.i18n.json index a6c53e92..65cf9b83 100644 --- a/i18n/br.i18n.json +++ b/i18n/br.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Infos", + "info": "Version", "initials": "Initials", "invalid-date": "Invalid date", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/ca.i18n.json b/i18n/ca.i18n.json index f8218ebd..473f0105 100644 --- a/i18n/ca.i18n.json +++ b/i18n/ca.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Revisa l'assignació de membres", "import-user-select": "Selecciona l'usuari Wekan que vulguis associar a aquest membre", "importMapMembersAddPopup-title": "Selecciona un membre de Wekan", - "info": "Informacions", + "info": "Version", "initials": "Inicials", "invalid-date": "Data invàlida", "joined": "s'ha unit", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "El codi d'invitació no existeix", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/cs.i18n.json b/i18n/cs.i18n.json index 954786a5..d0b8bb3c 100644 --- a/i18n/cs.i18n.json +++ b/i18n/cs.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Zkontrolovat namapování členů", "import-user-select": "Vyber uživatele Wekan, kterého chceš použít pro tohoto člena", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Informace", + "info": "Version", "initials": "Iniciály", "invalid-date": "Invalid date", "joined": "spojeno", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/de.i18n.json b/i18n/de.i18n.json index f7a07837..b87de5c0 100644 --- a/i18n/de.i18n.json +++ b/i18n/de.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Mitgliederzuordnung überprüfen", "import-user-select": "Wählen Sie den Wekan-Nutzer aus, der dieses Mitglied sein soll", "importMapMembersAddPopup-title": "Wekan-Nutzer auswählen", - "info": "Informationen", + "info": "Version", "initials": "Initialen", "invalid-date": "Ungültiges Datum", "joined": "beigetreten", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Ungültiger Einladungscode", "error-notAuthorized": "Sie sind nicht berechtigt diese Seite zu sehen.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/en-GB.i18n.json b/i18n/en-GB.i18n.json index 7399ec3c..2e6dcd42 100644 --- a/i18n/en-GB.i18n.json +++ b/i18n/en-GB.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Infos", + "info": "Version", "initials": "Initials", "invalid-date": "Invalid date", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorised to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/en.i18n.json b/i18n/en.i18n.json index e8062f71..2cb73ae6 100644 --- a/i18n/en.i18n.json +++ b/i18n/en.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Infos", + "info": "Version", "initials": "Initials", "invalid-date": "Invalid date", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" } diff --git a/i18n/eo.i18n.json b/i18n/eo.i18n.json index a981525a..6f89a6b7 100644 --- a/i18n/eo.i18n.json +++ b/i18n/eo.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Informoj", + "info": "Version", "initials": "Initials", "invalid-date": "Invalid date", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/es.i18n.json b/i18n/es.i18n.json index 085adaa4..27684d10 100644 --- a/i18n/es.i18n.json +++ b/i18n/es.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Seleccionar un miembro de Wekan", - "info": "Informaciones", + "info": "Version", "initials": "Iniciales", "invalid-date": "Fecha no Válida", "joined": "se ha unido", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "El Código de Invitación no existe", "error-notAuthorized": "No estás autorizado a ver esta página.", "outgoing-webhooks": "Webhooks salientes", - "outgoingWebhooksPopup-title": "Webhooks salientes" + "outgoingWebhooksPopup-title": "Webhooks salientes", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/eu.i18n.json b/i18n/eu.i18n.json index 6c5f56a8..5426ac05 100644 --- a/i18n/eu.i18n.json +++ b/i18n/eu.i18n.json @@ -37,7 +37,7 @@ "activity-sent": "%s %s(e)ri bidalita", "activity-unjoined": "%s utzita", "activity-checklist-added": "egiaztaketa zerrenda %s(e)ra gehituta", - "activity-checklist-item-added": "added checklist item to '%s' in %s", + "activity-checklist-item-added": "egiaztaketa zerrendako elementuak '%s'(e)ra gehituta %s(e)n", "add": "Gehitu", "add-attachment": "Gehitu eranskina", "add-board": "Gehitu arbela", @@ -221,7 +221,7 @@ "import-show-user-mapping": "Berrikusi kideen mapa", "import-user-select": "Hautatu kide hau bezala erabili nahi duzun Wekan erabiltzailea", "importMapMembersAddPopup-title": "Aukeratu Wekan kidea", - "info": "Informazioak", + "info": "Version", "initials": "Inizialak", "invalid-date": "Baliogabeko data", "joined": "elkartu da", @@ -364,6 +364,20 @@ "email-invite-register-text": "Kaixo __user__,\n\n__inviter__ erabiltzaileak Wekanera gonbidatu zaitu elkar-lanean aritzeko.\n\nJarraitu mesedez lotura hau:\n__url__\n\nZure gonbidapen kodea hau da: __icode__\n\nEskerrik asko.", "error-invitation-code-not-exist": "Gonbidapen kodea ez da existitzen", "error-notAuthorized": "Ez duzu orri hau ikusteko baimenik.", - "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoing-webhooks": "Irteerako Webhook-ak", + "outgoingWebhooksPopup-title": "Irteerako Webhook-ak", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/fa.i18n.json b/i18n/fa.i18n.json index dfcbcbd8..a8b5cb41 100644 --- a/i18n/fa.i18n.json +++ b/i18n/fa.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "بررسی نقشه کاربران", "import-user-select": "کاربری از نرم افزار را که می خواهید بعنوان این عضو جایگزین شود را انتخاب کنید.", "importMapMembersAddPopup-title": "انتخاب کاربر Wekan", - "info": "اطلاعات", + "info": "Version", "initials": "تخصیصات اولیه", "invalid-date": "تاریخ نامعتبر", "joined": "متصل", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "چنین کد دعوتی یافت نشد", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/fi.i18n.json b/i18n/fi.i18n.json index a9044bbe..7f84f867 100644 --- a/i18n/fi.i18n.json +++ b/i18n/fi.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Tarkasta vastaavat jäsenet", "import-user-select": "Valitse Wekan käyttäjä jota haluat käyttää tänä käyttäjänä", "importMapMembersAddPopup-title": "Valitse Wekan käyttäjä", - "info": "Tietoja", + "info": "Versio", "initials": "Nimikirjaimet", "invalid-date": "Virheellinen päivämäärä", "joined": "liittyi", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Kutsukoodi ei ole olemassa", "error-notAuthorized": "Sinulla ei ole oikeutta tarkastella tätä sivua.", "outgoing-webhooks": "Lähtevät Webkoukut", - "outgoingWebhooksPopup-title": "Lähtevät Webkoukut" + "outgoingWebhooksPopup-title": "Lähtevät Webkoukut", + "Wekan_version": "Wekan versio", + "Node_version": "Node versio", + "OS_Arch": "Käyttöjärjestelmän arkkitehtuuri", + "OS_Cpus": "Käyttöjärjestelmän CPU määrä", + "OS_Freemem": "Käyttöjärjestelmän vapaa muisti", + "OS_Loadavg": "Käyttöjärjestelmän kuorman keskiarvo", + "OS_Platform": "Käyttöjärjestelmäalusta", + "OS_Release": "Käyttöjärjestelmän julkaisu", + "OS_Totalmem": "Käyttöjärjestelmän muistin kokonaismäärä", + "OS_Type": "Käyttöjärjestelmän tyyppi", + "OS_Uptime": "Käyttöjärjestelmä ollut käynnissä", + "hours": "tuntia", + "minutes": "minuuttia", + "seconds": "sekuntia" }
\ No newline at end of file diff --git a/i18n/fr.i18n.json b/i18n/fr.i18n.json index 2650b991..93364da0 100644 --- a/i18n/fr.i18n.json +++ b/i18n/fr.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Contrôler l'association des membres", "import-user-select": "Sélectionnez l'utilisateur Wekan que vous voulez associer à ce membre", "importMapMembersAddPopup-title": "Sélectionner le membre Wekan", - "info": "Infos", + "info": "Version", "initials": "Initiales", "invalid-date": "Date invalide", "joined": "a rejoint", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Ce code d'invitation n'existe pas.", "error-notAuthorized": "Vous n'êtes pas autorisé à accéder à cette page.", "outgoing-webhooks": "Webhooks sortants", - "outgoingWebhooksPopup-title": "Webhooks sortants" + "outgoingWebhooksPopup-title": "Webhooks sortants", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/gl.i18n.json b/i18n/gl.i18n.json index 7ac219a5..d620f31e 100644 --- a/i18n/gl.i18n.json +++ b/i18n/gl.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Informacións", + "info": "Version", "initials": "Iniciais", "invalid-date": "A data é incorrecta", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/he.i18n.json b/i18n/he.i18n.json index bfb8d57b..e6d8d7ff 100644 --- a/i18n/he.i18n.json +++ b/i18n/he.i18n.json @@ -37,7 +37,7 @@ "activity-sent": "%s נשלח ל%s", "activity-unjoined": "בטל צירוף %s", "activity-checklist-added": "נוספה רשימת משימות אל %s", - "activity-checklist-item-added": "added checklist item to '%s' in %s", + "activity-checklist-item-added": "נוסף פריט רשימת משימות אל ‚%s‘ תחת %s", "add": "הוספה", "add-attachment": "הוספת קובץ מצורף", "add-board": "הוספת לוח", @@ -210,7 +210,7 @@ "import-board-c": "יבוא לוח", "import-board-title-trello": "ייבוא לוח מטרלו", "import-board-title-wekan": "יבוא לוח מ־Wekan", - "import-sandstorm-warning": "Imported board will delete all existing data on board and replace it with imported board.", + "import-sandstorm-warning": "הלוח שייובא ימחק את כל הנתונים הקיימים בלוח ויחליף אותם בלוח שייובא.", "from-trello": "מ־Trello", "from-wekan": "מ־Wekan", "import-board-instruction-trello": "בלוח הטרלו שלך, עליך ללחוץ על ‚תפריט‘, ואז על ‚עוד‘, ‚הדפסה וייצוא‘, ‚יצוא JSON‘ ולהעתיק את הטקסט שנוצר.", @@ -221,7 +221,7 @@ "import-show-user-mapping": "סקירת מיפוי חברים", "import-user-select": "נא לבחור את המשתמש ב־Wekan בו ברצונך להשתמש עבור חבר זה", "importMapMembersAddPopup-title": "בחירת משתמש Wekan", - "info": "מידע", + "info": "Version", "initials": "ראשי תיבות", "invalid-date": "תאריך שגוי", "joined": "הצטרף", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "קוד ההזמנה אינו קיים", "error-notAuthorized": "אין לך הרשאה לצפות בעמוד זה.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/hu.i18n.json b/i18n/hu.i18n.json index 403f1e98..2c426cf0 100644 --- a/i18n/hu.i18n.json +++ b/i18n/hu.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Információk", + "info": "Version", "initials": "Kezdőbetűk", "invalid-date": "Hibás dátum", "joined": "becsatlakozott", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "A meghívó kódja nem érvényes", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/id.i18n.json b/i18n/id.i18n.json index e82ffdcb..62368d99 100644 --- a/i18n/id.i18n.json +++ b/i18n/id.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review pemetaan partisipan", "import-user-select": "Pilih nama pengguna yang Anda mau gunakan sebagai anggota ini", "importMapMembersAddPopup-title": "Pilih anggota Wekan", - "info": "Info", + "info": "Version", "initials": "Inisial", "invalid-date": "Tanggal tidak sah", "joined": "bergabung", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Kode undangan tidak ada", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/it.i18n.json b/i18n/it.i18n.json index f16cd69b..dbbf5aa2 100644 --- a/i18n/it.i18n.json +++ b/i18n/it.i18n.json @@ -37,7 +37,7 @@ "activity-sent": "inviato %s a %s", "activity-unjoined": "ha abbandonato %s", "activity-checklist-added": "aggiunta checklist a %s", - "activity-checklist-item-added": "added checklist item to '%s' in %s", + "activity-checklist-item-added": "Aggiunto l'elemento checklist a '%s' in %s", "add": "Aggiungere", "add-attachment": "Aggiungi Allegato", "add-board": "Aggiungi Bacheca", @@ -210,7 +210,7 @@ "import-board-c": "Importa bacheca", "import-board-title-trello": "Importa una bacheca da Trello", "import-board-title-wekan": "Importa bacheca da Wekan", - "import-sandstorm-warning": "Imported board will delete all existing data on board and replace it with imported board.", + "import-sandstorm-warning": "La bacheca importata cancellerà tutti i dati esistenti su questa bacheca e li rimpiazzerà con quelli della bacheca importata.", "from-trello": "Da Trello", "from-wekan": "Da Wekan", "import-board-instruction-trello": "Nella tua bacheca Trello vai a 'Menu', poi 'Altro', 'Stampa ed esporta', 'Esporta JSON', e copia il testo che compare.", @@ -221,7 +221,7 @@ "import-show-user-mapping": "Rivedi la mappatura dei membri", "import-user-select": "Scegli l'utente Wekan che vuoi utilizzare come questo membro", "importMapMembersAddPopup-title": "Seleziona i membri di Wekan", - "info": "Info", + "info": "Version", "initials": "Iniziali", "invalid-date": "Data non valida", "joined": "si è unito a", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Il codice d'invito non esiste", "error-notAuthorized": "Non sei autorizzato ad accedere a questa pagina.", "outgoing-webhooks": "Server esterni", - "outgoingWebhooksPopup-title": "Server esterni" + "outgoingWebhooksPopup-title": "Server esterni", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/ja.i18n.json b/i18n/ja.i18n.json index d6225199..573f5bd1 100644 --- a/i18n/ja.i18n.json +++ b/i18n/ja.i18n.json @@ -176,17 +176,17 @@ "email-invite": "メールで招待", "email-invite-subject": "__inviter__ sent you an invitation", "email-invite-text": "Dear __user__,\n\n__inviter__ invites you to join board \"__board__\" for collaborations.\n\nPlease follow the link below:\n\n__url__\n\nThanks.", - "email-resetPassword-subject": "Reset your password on __siteName__", + "email-resetPassword-subject": "あなたの __siteName__ のパスワードをリセットする", "email-resetPassword-text": "Hello __user__,\n\nTo reset your password, simply click the link below.\n\n__url__\n\nThanks.", - "email-sent": "Email sent", - "email-verifyEmail-subject": "Verify your email address on __siteName__", + "email-sent": "メールを送信しました", + "email-verifyEmail-subject": "あなたの __siteName__ のメールアドレスを確認する", "email-verifyEmail-text": "Hello __user__,\n\nTo verify your account email, simply click the link below.\n\n__url__\n\nThanks.", "error-board-doesNotExist": "ボードがありません", "error-board-notAdmin": "You need to be admin of this board to do that", "error-board-notAMember": "You need to be a member of this board to do that", - "error-json-malformed": "Your text is not valid JSON", + "error-json-malformed": "このテキストは、有効なJSON形式ではありません", "error-json-schema": "Your JSON data does not include the proper information in the correct format", - "error-list-doesNotExist": "This list does not exist", + "error-list-doesNotExist": "このリストは存在しません", "error-user-doesNotExist": "ユーザーが存在しません", "error-user-notAllowSelf": "自分を招待することはできません。", "error-user-notCreated": "ユーザーが作成されていません", @@ -221,11 +221,11 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Wekanメンバーを選択", - "info": "情報", + "info": "Version", "initials": "Initials", "invalid-date": "無効な日付", "joined": "参加しました", - "just-invited": "You are just invited to this board", + "just-invited": "このボードのメンバーに招待されています", "keyboard-shortcuts": "キーボード・ショートカット", "label-create": "ラベルの作成", "label-default": "%s ラベル(デフォルト)", @@ -297,7 +297,7 @@ "removeMemberPopup-title": "メンバーを外しますか?", "rename": "名前変更", "rename-board": "ボード名の変更", - "restore": "Restore", + "restore": "復元", "save": "保存", "search": "検索", "select-color": "色を選択", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "招待コードが存在しません", "error-notAuthorized": "このページを参照する権限がありません。", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/ko.i18n.json b/i18n/ko.i18n.json index 4f36cbc4..e50b01ad 100644 --- a/i18n/ko.i18n.json +++ b/i18n/ko.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "멤버 매핑 미리보기", "import-user-select": "이 멤버로 사용하려는 Wekan 유저를 선택하십시오.", "importMapMembersAddPopup-title": "Wekan 멤버 선택", - "info": "정보", + "info": "Version", "initials": "이니셜", "invalid-date": "잘못된 날짜", "joined": "참가함", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "초대 코드가 존재하지 않습니다.", "error-notAuthorized": "이 페이지를 볼 수있는 권한이 없습니다.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/nb.i18n.json b/i18n/nb.i18n.json index 3daa3532..519f0d25 100644 --- a/i18n/nb.i18n.json +++ b/i18n/nb.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Infos", + "info": "Version", "initials": "Initials", "invalid-date": "Invalid date", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/nl.i18n.json b/i18n/nl.i18n.json index c95d4b1c..d1d7fc20 100644 --- a/i18n/nl.i18n.json +++ b/i18n/nl.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Infos", + "info": "Version", "initials": "Initials", "invalid-date": "Invalid date", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/pl.i18n.json b/i18n/pl.i18n.json index f3d10f58..1da5bbc9 100644 --- a/i18n/pl.i18n.json +++ b/i18n/pl.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Przejrzyj wybranych członków", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Informacje", + "info": "Version", "initials": "Initials", "invalid-date": "Invalid date", "joined": "dołączył", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/pt-BR.i18n.json b/i18n/pt-BR.i18n.json index d9167d18..df3e55d7 100644 --- a/i18n/pt-BR.i18n.json +++ b/i18n/pt-BR.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Revisar mapeamento dos membros", "import-user-select": "Selecione o usuário Wekan que você gostaria de usar como este membro", "importMapMembersAddPopup-title": "Seleciona um membro", - "info": "Informações", + "info": "Version", "initials": "Iniciais", "invalid-date": "Data inválida", "joined": "juntou-se", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "O código do convite não existe", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/ro.i18n.json b/i18n/ro.i18n.json index 885700a8..97abefbf 100644 --- a/i18n/ro.i18n.json +++ b/i18n/ro.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Infos", + "info": "Version", "initials": "Iniţiale", "invalid-date": "Invalid date", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/ru.i18n.json b/i18n/ru.i18n.json index 68d9531c..74058d9e 100644 --- a/i18n/ru.i18n.json +++ b/i18n/ru.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Пересмотреть карту пользователей", "import-user-select": "Выберите Wekan-пользователя, которого вы хотите использовать в качестве пользователя", "importMapMembersAddPopup-title": "Выбрать Wekan пользователя", - "info": "Информация", + "info": "Version", "initials": "Инициалы", "invalid-date": "Неверная дата", "joined": "вступил", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Код приглашения не существует", "error-notAuthorized": "У вас нет доступа на просмотр этой страницы.", "outgoing-webhooks": "Исходящие Веб-хуки", - "outgoingWebhooksPopup-title": "Исходящие Веб-хуки" + "outgoingWebhooksPopup-title": "Исходящие Веб-хуки", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/sr.i18n.json b/i18n/sr.i18n.json index ad988c0f..dcbd7607 100644 --- a/i18n/sr.i18n.json +++ b/i18n/sr.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Izaberi člana Wekan-a", - "info": "Infos", + "info": "Version", "initials": "Initials", "invalid-date": "Neispravan datum", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/sv.i18n.json b/i18n/sv.i18n.json index 247c1042..2c95cdaf 100644 --- a/i18n/sv.i18n.json +++ b/i18n/sv.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Granska medlemskartläggning", "import-user-select": "Välj Wekan-användare du vill använda som denna medlem", "importMapMembersAddPopup-title": "Välj Wekan member", - "info": "Infos", + "info": "Version", "initials": "Initialer ", "invalid-date": "Ogiltigt datum", "joined": "gick med", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Inbjudningskod finns inte", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/ta.i18n.json b/i18n/ta.i18n.json index 10b49759..222c712e 100644 --- a/i18n/ta.i18n.json +++ b/i18n/ta.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Infos", + "info": "Version", "initials": "Initials", "invalid-date": "Invalid date", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/th.i18n.json b/i18n/th.i18n.json index 09df7446..b59e2c21 100644 --- a/i18n/th.i18n.json +++ b/i18n/th.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review การทำแผนที่สมาชิก", "import-user-select": "เลือกผู้ใช้ Wekan ที่คุณต้องการใช้เป็นเหมือนสมาชิกนี้", "importMapMembersAddPopup-title": "เลือกสมาชิก", - "info": "ข่าวสาร", + "info": "Version", "initials": "ชื่อย่อ", "invalid-date": "วันที่ไม่ถูกต้อง", "joined": "เข้าร่วม", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/tr.i18n.json b/i18n/tr.i18n.json index 9a136713..0ffebb1c 100644 --- a/i18n/tr.i18n.json +++ b/i18n/tr.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Üye eşleştirmesini kontrol et", "import-user-select": "Bu üyenin sistemdeki hangi kullanıcı olduğunu seçin", "importMapMembersAddPopup-title": "Üye seç", - "info": "Bilgiler", + "info": "Version", "initials": "İlk Harfleri", "invalid-date": "Geçersiz tarih", "joined": "katıldı", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Davetiye kodu bulunamadı", "error-notAuthorized": "Bu sayfayı görmek için yetkiniz yok.", "outgoing-webhooks": "Dışarı giden bağlantılar", - "outgoingWebhooksPopup-title": "Dışarı giden bağlantılar" + "outgoingWebhooksPopup-title": "Dışarı giden bağlantılar", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/uk.i18n.json b/i18n/uk.i18n.json index 787c037d..6117e23a 100644 --- a/i18n/uk.i18n.json +++ b/i18n/uk.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Infos", + "info": "Version", "initials": "Initials", "invalid-date": "Invalid date", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/vi.i18n.json b/i18n/vi.i18n.json index 7bc5a1f3..ff975f88 100644 --- a/i18n/vi.i18n.json +++ b/i18n/vi.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "Review members mapping", "import-user-select": "Pick the Wekan user you want to use as this member", "importMapMembersAddPopup-title": "Select Wekan member", - "info": "Infos", + "info": "Version", "initials": "Initials", "invalid-date": "Invalid date", "joined": "joined", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "Invitation code doesn't exist", "error-notAuthorized": "You are not authorized to view this page.", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/zh-CN.i18n.json b/i18n/zh-CN.i18n.json index b97fbf08..eb65dbb3 100644 --- a/i18n/zh-CN.i18n.json +++ b/i18n/zh-CN.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "核对成员映射", "import-user-select": "选择您想将此成员映射到的 Wekan 用户", "importMapMembersAddPopup-title": "选择Wekan成员", - "info": "信息", + "info": "Version", "initials": "缩写", "invalid-date": "无效日期", "joined": "关联", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "邀请码不存在", "error-notAuthorized": "您无权查看此页面。", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/i18n/zh-TW.i18n.json b/i18n/zh-TW.i18n.json index b0db9147..2504a8b1 100644 --- a/i18n/zh-TW.i18n.json +++ b/i18n/zh-TW.i18n.json @@ -221,7 +221,7 @@ "import-show-user-mapping": "核對成員映射", "import-user-select": "選擇您想將此成員映射到的 Wekan 使用者", "importMapMembersAddPopup-title": "選擇 Wekan 成員", - "info": "資訊", + "info": "Version", "initials": "縮寫", "invalid-date": "無效的日期", "joined": "關聯", @@ -365,5 +365,19 @@ "error-invitation-code-not-exist": "邀請碼不存在", "error-notAuthorized": "沒有適合的權限觀看", "outgoing-webhooks": "Outgoing Webhooks", - "outgoingWebhooksPopup-title": "Outgoing Webhooks" + "outgoingWebhooksPopup-title": "Outgoing Webhooks", + "Wekan_version": "Wekan version", + "Node_version": "Node version", + "OS_Arch": "OS Arch", + "OS_Cpus": "OS CPU Count", + "OS_Freemem": "OS Free Memory", + "OS_Loadavg": "OS Load Average", + "OS_Platform": "OS Platform", + "OS_Release": "OS Release", + "OS_Totalmem": "OS Total Memory", + "OS_Type": "OS Type", + "OS_Uptime": "OS Uptime", + "hours": "hours", + "minutes": "minutes", + "seconds": "seconds" }
\ No newline at end of file diff --git a/package.json b/package.json index 410ffc14..ecf694a0 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,7 @@ "bson": "^1.0.4", "es6-promise": "^4.1.0", "meteor-node-stubs": "^0.2.6", + "os": "^0.1.1", "winston": "^2.3.1", "winston-zulip": "0.0.6", "xss": "^0.3.3" diff --git a/server/statistics.js b/server/statistics.js new file mode 100644 index 00000000..1fbaecc9 --- /dev/null +++ b/server/statistics.js @@ -0,0 +1,26 @@ +Meteor.methods({ + getStatistics() { + const os = require('os'); + const pjson = require('/package.json'); + const statistics = {}; + statistics.version = pjson.version; + statistics.os = { + type: os.type(), + platform: os.platform(), + arch: os.arch(), + release: os.release(), + uptime: os.uptime(), + loadavg: os.loadavg(), + totalmem: os.totalmem(), + freemem: os.freemem(), + cpus: os.cpus(), + }; + statistics.process = { + nodeVersion: process.version, + pid: process.pid, + uptime: process.uptime(), + }; + + return statistics; + }, +}); |