mirror of
https://github.com/ether/etherpad-lite.git
synced 2025-01-20 22:49:53 +01:00
Release version 1.8.0-beta.1
The previous revision on master (d967914341
), that claimed to be 1.8.0, had a
problem (see #3654), and so 1.8.0 was put on hold.
In #3660 I decided to do a beta.1 release, in order to be able to catch similar
problems.
Closes #3658.
This commit is contained in:
commit
503b11730c
8 changed files with 7427 additions and 22 deletions
|
@ -1,8 +1,9 @@
|
||||||
# 1.8
|
# 1.8-beta.1
|
||||||
* FEATURE: code was migrated to `async`/`await`, getting rid of a lot of callbacks (see https://github.com/ether/etherpad-lite/issues/3540)
|
* FEATURE: code was migrated to `async`/`await`, getting rid of a lot of callbacks (see https://github.com/ether/etherpad-lite/issues/3540)
|
||||||
* FEATURE: support configuration via environment variables
|
* FEATURE: support configuration via environment variables
|
||||||
* FEATURE: include an official Dockerfile in the main repository
|
* FEATURE: include an official Dockerfile in the main repository
|
||||||
* FEATURE: support including plugins in custom Docker builds
|
* FEATURE: support including plugins in custom Docker builds
|
||||||
|
* FEATURE: conditional creation of users: when its password is null, a user is not created. This helps, for example, in advanced configuration of Docker images.
|
||||||
* REQUIREMENTS: minimum required Node version is **8.9.0 LTS**. Release 1.8.3 will require at least Node **10.13.0** LTS
|
* REQUIREMENTS: minimum required Node version is **8.9.0 LTS**. Release 1.8.3 will require at least Node **10.13.0** LTS
|
||||||
* MINOR: in the HTTP API, allow URL parameters and POST bodies to co-exist
|
* MINOR: in the HTTP API, allow URL parameters and POST bodies to co-exist
|
||||||
* MINOR: fix Unicode bug in HTML export
|
* MINOR: fix Unicode bug in HTML export
|
||||||
|
|
|
@ -100,7 +100,7 @@ echo "Ensure that all dependencies are up to date... If this is the first time
|
||||||
cd node_modules
|
cd node_modules
|
||||||
[ -e ep_etherpad-lite ] || ln -s ../src ep_etherpad-lite
|
[ -e ep_etherpad-lite ] || ln -s ../src ep_etherpad-lite
|
||||||
cd ep_etherpad-lite
|
cd ep_etherpad-lite
|
||||||
npm install --no-save --loglevel warn
|
npm install --save --loglevel warn
|
||||||
) || {
|
) || {
|
||||||
rm -rf src/node_modules
|
rm -rf src/node_modules
|
||||||
exit 1
|
exit 1
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
#
|
#
|
||||||
# Version 0.1
|
# Version 0.1
|
||||||
|
|
||||||
FROM node:buster-slim
|
FROM node:10-buster-slim
|
||||||
LABEL maintainer="Etherpad team, https://github.com/ether/etherpad-lite"
|
LABEL maintainer="Etherpad team, https://github.com/ether/etherpad-lite"
|
||||||
|
|
||||||
# git hash of the version to be built.
|
# git hash of the version to be built.
|
||||||
|
@ -53,13 +53,19 @@ RUN bin/installDeps.sh && \
|
||||||
# able to split at spaces.
|
# able to split at spaces.
|
||||||
RUN for PLUGIN_NAME in ${ETHERPAD_PLUGINS}; do npm install "${PLUGIN_NAME}"; done
|
RUN for PLUGIN_NAME in ${ETHERPAD_PLUGINS}; do npm install "${PLUGIN_NAME}"; done
|
||||||
|
|
||||||
# Copy the custom configuration file, if present. The configuration file has to
|
# Copy the configuration file.
|
||||||
# be manually put inside the same directory containing the Dockerfile (we cannot
|
|
||||||
# directly point to "../settings.json" for Docker's security restrictions).
|
|
||||||
#
|
|
||||||
# For the conditional COPY trick, see:
|
|
||||||
# https://stackoverflow.com/questions/31528384/conditional-copy-add-in-dockerfile#46801962
|
|
||||||
COPY ./settings.json /opt/etherpad-lite/
|
COPY ./settings.json /opt/etherpad-lite/
|
||||||
|
|
||||||
|
# Follow the principle of least privilege: run as unprivileged user.
|
||||||
|
#
|
||||||
|
# Running as non-root enables running this image in platforms like OpenShift
|
||||||
|
# that do not allow images running as root.
|
||||||
|
RUN \
|
||||||
|
echo 'etherpad:x:65534:65534:etherpad:/:' > /etc/passwd && \
|
||||||
|
echo 'etherpad:x:65534:' > /etc/group && \
|
||||||
|
chown -R etherpad:etherpad ./
|
||||||
|
|
||||||
|
USER etherpad
|
||||||
|
|
||||||
EXPOSE 9001
|
EXPOSE 9001
|
||||||
CMD ["node", "node_modules/ep_etherpad-lite/node/server.js"]
|
CMD ["node", "node_modules/ep_etherpad-lite/node/server.js"]
|
||||||
|
|
|
@ -2,9 +2,12 @@
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Edinwiki",
|
"Edinwiki",
|
||||||
"Srdjan m"
|
"Srdjan m",
|
||||||
|
"Semina x"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"index.newPad": "Novi Pad",
|
||||||
|
"index.createOpenPad": "ili napravite/otvorite Pad sa imenom:",
|
||||||
"pad.toolbar.bold.title": "Podebljano (Ctrl+B)",
|
"pad.toolbar.bold.title": "Podebljano (Ctrl+B)",
|
||||||
"pad.toolbar.italic.title": "Ukošeno (Ctrl+I)",
|
"pad.toolbar.italic.title": "Ukošeno (Ctrl+I)",
|
||||||
"pad.toolbar.underline.title": "Podvučeno (Ctrl+U)",
|
"pad.toolbar.underline.title": "Podvučeno (Ctrl+U)",
|
||||||
|
@ -15,16 +18,24 @@
|
||||||
"pad.toolbar.unindent.title": "Izvučeno (Shift+TAB)",
|
"pad.toolbar.unindent.title": "Izvučeno (Shift+TAB)",
|
||||||
"pad.toolbar.undo.title": "Poništi (Ctrl+Z)",
|
"pad.toolbar.undo.title": "Poništi (Ctrl+Z)",
|
||||||
"pad.toolbar.redo.title": "Ponovi (Ctrl+Y)",
|
"pad.toolbar.redo.title": "Ponovi (Ctrl+Y)",
|
||||||
|
"pad.toolbar.clearAuthorship.title": "Očisti autorske boje (Ctrl+Shift+C)",
|
||||||
"pad.toolbar.timeslider.title": "Historijski pregled",
|
"pad.toolbar.timeslider.title": "Historijski pregled",
|
||||||
|
"pad.toolbar.savedRevision.title": "Sačuvaj Reviziju",
|
||||||
"pad.toolbar.settings.title": "Postavke",
|
"pad.toolbar.settings.title": "Postavke",
|
||||||
|
"pad.toolbar.embed.title": "Podijeli i ugradi ovaj pad",
|
||||||
|
"pad.toolbar.showusers.title": "Pokaži korisnike na ovom padu",
|
||||||
"pad.colorpicker.save": "Sačuvaj",
|
"pad.colorpicker.save": "Sačuvaj",
|
||||||
"pad.colorpicker.cancel": "Otkaži",
|
"pad.colorpicker.cancel": "Otkaži",
|
||||||
"pad.loading": "Učitavam...",
|
"pad.loading": "Učitavam...",
|
||||||
"pad.noCookie": "Kolačić nije pronađen. Dozvolite kolačiće u Vašem pregledniku!",
|
"pad.noCookie": "Kolačić nije pronađen. Molimo Vas dozvolite kolačiće u Vašem pregledniku!",
|
||||||
"pad.wrongPassword": "Pogrešna lozinka",
|
"pad.passwordRequired": "Treba Vam lozinka da bi ste pristupili ovom padu",
|
||||||
|
"pad.permissionDenied": "Nemate dopuštenje da pistupite ovom padu",
|
||||||
|
"pad.wrongPassword": "Vaša lozinka je pogrešna",
|
||||||
|
"pad.settings.padSettings": "Postavke stranice",
|
||||||
"pad.settings.myView": "Moj prikaz",
|
"pad.settings.myView": "Moj prikaz",
|
||||||
"pad.settings.stickychat": "Ćaskanje uvijek na ekranu",
|
"pad.settings.stickychat": "Ćaskanje uvijek na ekranu",
|
||||||
"pad.settings.chatandusers": "Prikaži ćaskanje i korisnike",
|
"pad.settings.chatandusers": "Prikaži ćaskanje i korisnike",
|
||||||
|
"pad.settings.colorcheck": "Autorske boje",
|
||||||
"pad.settings.linenocheck": "Brojevi redova",
|
"pad.settings.linenocheck": "Brojevi redova",
|
||||||
"pad.settings.rtlcheck": "Da prikažem sadržaj zdesna ulijevo?",
|
"pad.settings.rtlcheck": "Da prikažem sadržaj zdesna ulijevo?",
|
||||||
"pad.settings.fontType": "Vrsta fonta:",
|
"pad.settings.fontType": "Vrsta fonta:",
|
||||||
|
@ -54,12 +65,17 @@
|
||||||
"pad.modals.disconnected": "Veza je prekinuta.",
|
"pad.modals.disconnected": "Veza je prekinuta.",
|
||||||
"pad.modals.disconnected.explanation": "Izgubljena je veza sa serverom",
|
"pad.modals.disconnected.explanation": "Izgubljena je veza sa serverom",
|
||||||
"pad.modals.disconnected.cause": "Moguće je da server nije dostupan. Obavijestite administratora ako se ovo nastavi dešavati.",
|
"pad.modals.disconnected.cause": "Moguće je da server nije dostupan. Obavijestite administratora ako se ovo nastavi dešavati.",
|
||||||
|
"pad.share": "Podijeli ovaj pad",
|
||||||
"pad.share.readonly": "Samo za čitanje",
|
"pad.share.readonly": "Samo za čitanje",
|
||||||
"pad.share.link": "Link",
|
"pad.share.link": "Link",
|
||||||
"pad.share.emebdcode": "URL za ugradnju",
|
"pad.share.emebdcode": "URL za ugradnju",
|
||||||
"pad.chat": "Ćaskanje",
|
"pad.chat": "Ćaskanje",
|
||||||
|
"pad.chat.title": "Otvori chat za ovaj pad.",
|
||||||
"pad.chat.loadmessages": "Učitaj više poruka",
|
"pad.chat.loadmessages": "Učitaj više poruka",
|
||||||
|
"pad.chat.stick.title": "Zalijepi chat na screen",
|
||||||
|
"pad.chat.writeMessage.placeholder": "Napišite Vašu poruku ovjde",
|
||||||
"timeslider.pageTitle": "{{appTitle}} Historijski pregled",
|
"timeslider.pageTitle": "{{appTitle}} Historijski pregled",
|
||||||
|
"timeslider.toolbar.returnbutton": "Vrati se na pad",
|
||||||
"timeslider.toolbar.authors": "Autori:",
|
"timeslider.toolbar.authors": "Autori:",
|
||||||
"timeslider.toolbar.authorsList": "Nema autora",
|
"timeslider.toolbar.authorsList": "Nema autora",
|
||||||
"timeslider.toolbar.exportlink.title": "Izvoz",
|
"timeslider.toolbar.exportlink.title": "Izvoz",
|
||||||
|
@ -78,13 +94,16 @@
|
||||||
"timeslider.month.october": "oktobar",
|
"timeslider.month.october": "oktobar",
|
||||||
"timeslider.month.november": "novembar",
|
"timeslider.month.november": "novembar",
|
||||||
"timeslider.month.december": "decembar",
|
"timeslider.month.december": "decembar",
|
||||||
|
"pad.savedrevs.marked": "Ova revizija je sada označena kao sačuvana revizija",
|
||||||
"pad.userlist.entername": "Upišite svoje ime",
|
"pad.userlist.entername": "Upišite svoje ime",
|
||||||
"pad.userlist.unnamed": "bez imena",
|
"pad.userlist.unnamed": "neimenovano",
|
||||||
"pad.userlist.guest": "Gost",
|
"pad.userlist.guest": "Gost",
|
||||||
"pad.userlist.deny": "Odbij",
|
"pad.userlist.deny": "Odbij",
|
||||||
"pad.userlist.approve": "Odobri",
|
"pad.userlist.approve": "Odobri",
|
||||||
|
"pad.editbar.clearcolors": "Očisti autorske boje na čitavom dokumentu?",
|
||||||
"pad.impexp.importbutton": "Uvezi odmah",
|
"pad.impexp.importbutton": "Uvezi odmah",
|
||||||
"pad.impexp.importing": "Uvozim...",
|
"pad.impexp.importing": "Uvozim...",
|
||||||
"pad.impexp.uploadFailed": "Postavljanje nije uspjelo. Pokušajte ponovo",
|
"pad.impexp.uploadFailed": "Postavljanje nije uspjelo. Pokušajte ponovo",
|
||||||
"pad.impexp.importfailed": "Uvoz neuspješan"
|
"pad.impexp.importfailed": "Uvoz neuspješan",
|
||||||
|
"pad.impexp.copypaste": "Molimo Vas copy/paste"
|
||||||
}
|
}
|
||||||
|
|
133
src/locales/id.json
Normal file
133
src/locales/id.json
Normal file
|
@ -0,0 +1,133 @@
|
||||||
|
{
|
||||||
|
"@metadata": {
|
||||||
|
"authors": [
|
||||||
|
"Bennylin",
|
||||||
|
"IvanLanin",
|
||||||
|
"Marwan Mohamad"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"index.newPad": "Pad baru",
|
||||||
|
"index.createOpenPad": "atau buat/buka Pad dengan nama:",
|
||||||
|
"pad.toolbar.bold.title": "Tebal (Ctrl-B)",
|
||||||
|
"pad.toolbar.italic.title": "Miring (Ctrl-I)",
|
||||||
|
"pad.toolbar.underline.title": "Garis bawah (Ctrl-U)",
|
||||||
|
"pad.toolbar.strikethrough.title": "Tanda coret (Ctrl+5)",
|
||||||
|
"pad.toolbar.ol.title": "Daftar bernomor (Ctrl+Shift+N)",
|
||||||
|
"pad.toolbar.ul.title": "Daftar tak bernomor (Ctrl+Shift+L)",
|
||||||
|
"pad.toolbar.indent.title": "Indentasi (TAB)",
|
||||||
|
"pad.toolbar.unindent.title": "Outdent (Shift+TAB)",
|
||||||
|
"pad.toolbar.undo.title": "Urungkan (Ctrl-Z)",
|
||||||
|
"pad.toolbar.redo.title": "Ulangi (Ctrl-Y)",
|
||||||
|
"pad.toolbar.clearAuthorship.title": "Bersihkan Warna Penulis (Ctrl+Shift+C)",
|
||||||
|
"pad.toolbar.import_export.title": "Impor/Ekspor dari/ke format-format berkas berbeda",
|
||||||
|
"pad.toolbar.timeslider.title": "Timeslider",
|
||||||
|
"pad.toolbar.savedRevision.title": "Simpan Perbaikan",
|
||||||
|
"pad.toolbar.settings.title": "Pengaturan",
|
||||||
|
"pad.toolbar.embed.title": "Bagi dan Cantumkan pad ini",
|
||||||
|
"pad.toolbar.showusers.title": "Tampilkan pengguna di pad ini",
|
||||||
|
"pad.colorpicker.save": "Simpan",
|
||||||
|
"pad.colorpicker.cancel": "Batalkan",
|
||||||
|
"pad.loading": "Memuat...",
|
||||||
|
"pad.noCookie": "Kuki tidak dapat ditemukan. Izinkan kuki di peramban Anda!",
|
||||||
|
"pad.passwordRequired": "Anda memerlukan kata sandi untuk mengakses pad ini",
|
||||||
|
"pad.permissionDenied": "Anda tidak memiliki izin untuk mengakses pad ini",
|
||||||
|
"pad.wrongPassword": "Kata sandi Anda salah",
|
||||||
|
"pad.settings.padSettings": "Pengaturan Pad",
|
||||||
|
"pad.settings.myView": "Tampilan Saya",
|
||||||
|
"pad.settings.stickychat": "Chat selalu di layar",
|
||||||
|
"pad.settings.chatandusers": "Tampilkan Chat dan Pengguna",
|
||||||
|
"pad.settings.colorcheck": "Warna penulis",
|
||||||
|
"pad.settings.linenocheck": "Nomor baris",
|
||||||
|
"pad.settings.rtlcheck": "Membaca dari kanan ke kiri?",
|
||||||
|
"pad.settings.fontType": "Jenis fonta:",
|
||||||
|
"pad.settings.globalView": "Tampilan Global",
|
||||||
|
"pad.settings.language": "Bahasa:",
|
||||||
|
"pad.importExport.import_export": "Impor/Ekspor",
|
||||||
|
"pad.importExport.import": "Unggah setiap berkas teks atau dokumen",
|
||||||
|
"pad.importExport.importSuccessful": "Berhasil!",
|
||||||
|
"pad.importExport.export": "Ekspor pad sebagai:",
|
||||||
|
"pad.importExport.exportetherpad": "Etherpad",
|
||||||
|
"pad.importExport.exporthtml": "HTML",
|
||||||
|
"pad.importExport.exportplain": "Teks biasa",
|
||||||
|
"pad.importExport.exportword": "Microsoft Word",
|
||||||
|
"pad.importExport.exportpdf": "PDF",
|
||||||
|
"pad.importExport.exportopen": "ODF (Open Document Format)",
|
||||||
|
"pad.importExport.abiword.innerHTML": "Anda hanya dapat mengimpor dari format teks biasa atau HTML. Untuk fitur impor yang lebih canggih, <a href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-with-AbiWord\">pasanglah AbiWord</a>.",
|
||||||
|
"pad.modals.connected": "Tersambung.",
|
||||||
|
"pad.modals.reconnecting": "Menyambungkan kembali ke pad Anda...",
|
||||||
|
"pad.modals.forcereconnect": "Sambung kembali secara paksa",
|
||||||
|
"pad.modals.reconnecttimer": "Mencoba menghubungkan ulang",
|
||||||
|
"pad.modals.cancel": "Batalkan",
|
||||||
|
"pad.modals.userdup": "Dibuka di jendela lain",
|
||||||
|
"pad.modals.userdup.explanation": "Pad ini tampaknya telah dibuka di lebih dari satu jendela peramban pada komputer ini.",
|
||||||
|
"pad.modals.userdup.advice": "Sambung kembali di jendela ini.",
|
||||||
|
"pad.modals.unauth": "Tidak terotoritas",
|
||||||
|
"pad.modals.unauth.explanation": "Hak-hak Anda telah berubah ketika Anda sedang melihat halaman ini. Coba menyambungkan kembali.",
|
||||||
|
"pad.modals.looping.explanation": "Ada masalah komunikasi dengan peladen sinkronisasi.",
|
||||||
|
"pad.modals.looping.cause": "Mungkin Anda telah tersambung melalui firewall atau proksi yang tidak kompatibel.",
|
||||||
|
"pad.modals.initsocketfail": "Peladen tidak dapat dihubungi.",
|
||||||
|
"pad.modals.initsocketfail.explanation": "Peladen sinkronisasi tidak dapat dihubungi.",
|
||||||
|
"pad.modals.initsocketfail.cause": "Ini mungkin disebabkan oleh masalah dengan peramban atau sambungan internet Anda.",
|
||||||
|
"pad.modals.slowcommit.explanation": "Peladen tidak merespons.",
|
||||||
|
"pad.modals.slowcommit.cause": "Ini mungkin disebabkan oleh masalah dengan sambungan jaringan Anda.",
|
||||||
|
"pad.modals.badChangeset.explanation": "Suntingan yang Anda lakukan dianggap ilegal oleh server sinkronisasi.",
|
||||||
|
"pad.modals.badChangeset.cause": "Hal ini mungkin disebabkan oleh konfigurasi peladen salah atau sesuatu perilaku yang tidak diperkirakan. Silahkan hubungi administrator Anda jika Anda merasakan ini adalah satu kesalahan. Coba sambungkan kembali untuk terus menyunting.",
|
||||||
|
"pad.modals.corruptPad.explanation": "Pad yang Anda coba akses telah korup.",
|
||||||
|
"pad.modals.corruptPad.cause": "Hal ini mungkin disebabkan oleh konfigurasi peladen salah atau sesuatu perilaku yang tidak diperkirakan. Silahkan hubungi administrator Anda jika Anda merasakan ini adalah satu kesalahan.",
|
||||||
|
"pad.modals.deleted": "Dihapus",
|
||||||
|
"pad.modals.deleted.explanation": "Pad ini telah dibuang.",
|
||||||
|
"pad.modals.disconnected": "Sambungan Anda telah diputuskan.",
|
||||||
|
"pad.modals.disconnected.explanation": "Sambungan ke peladen terputus",
|
||||||
|
"pad.modals.disconnected.cause": "Peladen ini mungkin tidak tersedia. Silakan beritahu administrator jika masalah ini berkelanjutan.",
|
||||||
|
"pad.share": "Bagikan pad ini",
|
||||||
|
"pad.share.readonly": "Baca saja",
|
||||||
|
"pad.share.link": "Pranala",
|
||||||
|
"pad.share.emebdcode": "Embed URL",
|
||||||
|
"pad.chat": "Chat",
|
||||||
|
"pad.chat.title": "Buka chat untuk pad ini.",
|
||||||
|
"pad.chat.loadmessages": "Muatkan lebih banyak pesan",
|
||||||
|
"pad.chat.stick.title": "Tempelkan chat ke layar",
|
||||||
|
"pad.chat.writeMessage.placeholder": "Tuliskan pesan Anda di sini",
|
||||||
|
"timeslider.pageTitle": "{{appTitle}} Timeslider",
|
||||||
|
"timeslider.toolbar.returnbutton": "Kembali ke pad",
|
||||||
|
"timeslider.toolbar.authors": "Pembuat:",
|
||||||
|
"timeslider.toolbar.authorsList": "Tidak ada penulis",
|
||||||
|
"timeslider.toolbar.exportlink.title": "Ekspor",
|
||||||
|
"timeslider.exportCurrent": "Ekspor versi saat ini sebagai:",
|
||||||
|
"timeslider.version": "Versi {{version}}",
|
||||||
|
"timeslider.saved": "Disimpan pada {{day}} {{month}} {{year}}",
|
||||||
|
"timeslider.playPause": "Mainkan / Pause Konten Pad",
|
||||||
|
"timeslider.backRevision": "Mundur satu revisi di Pad ini",
|
||||||
|
"timeslider.forwardRevision": "Maju satu revisi dalam Pad ini",
|
||||||
|
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
|
||||||
|
"timeslider.month.january": "Januari",
|
||||||
|
"timeslider.month.february": "Februari",
|
||||||
|
"timeslider.month.march": "Maret",
|
||||||
|
"timeslider.month.april": "April",
|
||||||
|
"timeslider.month.may": "Mei",
|
||||||
|
"timeslider.month.june": "Juni",
|
||||||
|
"timeslider.month.july": "Juli",
|
||||||
|
"timeslider.month.august": "Agustus",
|
||||||
|
"timeslider.month.september": "September",
|
||||||
|
"timeslider.month.october": "Oktober",
|
||||||
|
"timeslider.month.november": "November",
|
||||||
|
"timeslider.month.december": "Desember",
|
||||||
|
"timeslider.unnamedauthors": "{{num}} orang {[plural(num) other: penulis]} awanama",
|
||||||
|
"pad.savedrevs.marked": "Revisi ini telah ditandai sebagai revisi tersimpan",
|
||||||
|
"pad.savedrevs.timeslider": "Anda bisa melihat revisi yang tersimpan dengan mengunjungi timeslider",
|
||||||
|
"pad.userlist.entername": "Masukkan nama Anda",
|
||||||
|
"pad.userlist.unnamed": "tanpa nama",
|
||||||
|
"pad.userlist.guest": "Tamu",
|
||||||
|
"pad.userlist.deny": "Tolak",
|
||||||
|
"pad.userlist.approve": "Terima",
|
||||||
|
"pad.editbar.clearcolors": "Padamkan warna penulis pada seluruh dokumen?",
|
||||||
|
"pad.impexp.importbutton": "Impor Sekarang",
|
||||||
|
"pad.impexp.importing": "Mengimpor...",
|
||||||
|
"pad.impexp.confirmimport": "Mengimpor berkas akan menimpa teks saat ini di pad ini. Apakah Anda benar-benar ingin melakukannya?",
|
||||||
|
"pad.impexp.convertFailed": "Berkas tidak dapat diimport. Silakan gunakan format dokumen yang lain atau salin tempel secara manual",
|
||||||
|
"pad.impexp.padHasData": "Kami tidak dapat mengimpor berkas ini karena Pad ini sudah mengalami perubahan. Silakan impor ke pad yang baru",
|
||||||
|
"pad.impexp.uploadFailed": "Penunggahan gagal, silakan mencoba lagi",
|
||||||
|
"pad.impexp.importfailed": "Impor gagal",
|
||||||
|
"pad.impexp.copypaste": "Silahkan salin tempel",
|
||||||
|
"pad.impexp.exportdisabled": "Mengekspor dalam format {{type}} dilarang. Silakan hubungi administrator untuk detilnya."
|
||||||
|
}
|
|
@ -637,14 +637,21 @@ exports.reloadSettings = function reloadSettings() {
|
||||||
* This is used by the settings.json in the default Dockerfile to eschew
|
* This is used by the settings.json in the default Dockerfile to eschew
|
||||||
* creating an admin user if no password is set.
|
* creating an admin user if no password is set.
|
||||||
*/
|
*/
|
||||||
var filteredUsers = _.filter(exports.users, function(user, username) {
|
var filteredUsers = _.pick(exports.users, function(userProperties, username) {
|
||||||
if ((user.hasOwnProperty("password")) || user.password !== null) {
|
if (userProperties.hasOwnProperty("password") === false) {
|
||||||
return true;
|
console.warn(`Removing user "${username}", because it has no "password" field.`);
|
||||||
|
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
console.warn(`The password for ${username} is null. This means the user must not be created. Removing it.`);
|
if (userProperties.password === null) {
|
||||||
|
console.warn(`Removing user "${username}", because its password is null.`);
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// This user has a password, and its password is not null. Keep it.
|
||||||
|
return true;
|
||||||
});
|
});
|
||||||
|
|
||||||
exports.users = filteredUsers;
|
exports.users = filteredUsers;
|
||||||
|
|
7239
src/package-lock.json
generated
Normal file
7239
src/package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load diff
|
@ -43,13 +43,13 @@
|
||||||
"express-session": "1.17.0",
|
"express-session": "1.17.0",
|
||||||
"find-root": "1.1.0",
|
"find-root": "1.1.0",
|
||||||
"formidable": "1.2.1",
|
"formidable": "1.2.1",
|
||||||
"graceful-fs": "4.1.15",
|
"graceful-fs": "4.2.2",
|
||||||
"jsonminify": "0.4.1",
|
"jsonminify": "0.4.1",
|
||||||
"languages4translatewiki": "0.1.3",
|
"languages4translatewiki": "0.1.3",
|
||||||
"log4js": "0.6.35",
|
"log4js": "0.6.35",
|
||||||
"measured-core": "1.11.2",
|
"measured-core": "1.11.2",
|
||||||
"nodeify": "^1.0.1",
|
"nodeify": "^1.0.1",
|
||||||
"npm": "6.12.0",
|
"npm": "6.12.1",
|
||||||
"object.values": "^1.0.4",
|
"object.values": "^1.0.4",
|
||||||
"request": "2.88.0",
|
"request": "2.88.0",
|
||||||
"resolve": "1.1.7",
|
"resolve": "1.1.7",
|
||||||
|
@ -84,6 +84,6 @@
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "nyc mocha --timeout 5000 ../tests/backend/specs/api"
|
"test": "nyc mocha --timeout 5000 ../tests/backend/specs/api"
|
||||||
},
|
},
|
||||||
"version": "1.8.0",
|
"version": "1.8.0-beta.1",
|
||||||
"license": "Apache-2.0"
|
"license": "Apache-2.0"
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue