Merge branch 'filebrowser:master' into master
This commit is contained in:
commit
2ce0361e2a
32
frontend/package-lock.json
generated
32
frontend/package-lock.json
generated
@ -2517,10 +2517,10 @@
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/ansi-html": {
|
||||
"version": "0.0.7",
|
||||
"resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz",
|
||||
"integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=",
|
||||
"node_modules/ansi-html-community": {
|
||||
"version": "0.0.8",
|
||||
"resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz",
|
||||
"integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==",
|
||||
"dev": true,
|
||||
"engines": [
|
||||
"node >= 0.8.0"
|
||||
@ -14356,12 +14356,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/webpack-dev-server": {
|
||||
"version": "3.11.2",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.2.tgz",
|
||||
"integrity": "sha512-A80BkuHRQfCiNtGBS1EMf2ChTUs0x+B3wGDFmOeT4rmJOHhHTCH2naNxIHhmkr0/UillP4U3yeIyv1pNp+QDLQ==",
|
||||
"version": "3.11.3",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.3.tgz",
|
||||
"integrity": "sha512-3x31rjbEQWKMNzacUZRE6wXvUFuGpH7vr0lIEbYpMAG9BOxi0928QU1BBswOAP3kg3H1O4hiS+sq4YyAn6ANnA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"ansi-html": "0.0.7",
|
||||
"ansi-html-community": "0.0.8",
|
||||
"bonjour": "^3.5.0",
|
||||
"chokidar": "^2.1.8",
|
||||
"compression": "^1.7.4",
|
||||
@ -17494,10 +17494,10 @@
|
||||
"type-fest": "^0.11.0"
|
||||
}
|
||||
},
|
||||
"ansi-html": {
|
||||
"version": "0.0.7",
|
||||
"resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz",
|
||||
"integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=",
|
||||
"ansi-html-community": {
|
||||
"version": "0.0.8",
|
||||
"resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz",
|
||||
"integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==",
|
||||
"dev": true
|
||||
},
|
||||
"ansi-regex": {
|
||||
@ -27228,12 +27228,12 @@
|
||||
}
|
||||
},
|
||||
"webpack-dev-server": {
|
||||
"version": "3.11.2",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.2.tgz",
|
||||
"integrity": "sha512-A80BkuHRQfCiNtGBS1EMf2ChTUs0x+B3wGDFmOeT4rmJOHhHTCH2naNxIHhmkr0/UillP4U3yeIyv1pNp+QDLQ==",
|
||||
"version": "3.11.3",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.3.tgz",
|
||||
"integrity": "sha512-3x31rjbEQWKMNzacUZRE6wXvUFuGpH7vr0lIEbYpMAG9BOxi0928QU1BBswOAP3kg3H1O4hiS+sq4YyAn6ANnA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-html": "0.0.7",
|
||||
"ansi-html-community": "0.0.8",
|
||||
"bonjour": "^3.5.0",
|
||||
"chokidar": "^2.1.8",
|
||||
"compression": "^1.7.4",
|
||||
|
||||
@ -13,6 +13,7 @@ export default {
|
||||
data() {
|
||||
let dataObj = {
|
||||
locales: {
|
||||
he: "he",
|
||||
ar: "ar",
|
||||
de: "de",
|
||||
en: "en",
|
||||
|
||||
@ -16,6 +16,10 @@
|
||||
transition: .2s ease transform;
|
||||
}
|
||||
|
||||
body.rtl .shell {
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
.shell__result {
|
||||
display: flex;
|
||||
padding: 0.5em;
|
||||
|
||||
@ -5,6 +5,10 @@ body {
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
body.rtl {
|
||||
direction: rtl;
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
@ -58,6 +62,11 @@ nav {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
body.rtl nav {
|
||||
left: unset;
|
||||
right: 0;
|
||||
}
|
||||
|
||||
nav .action {
|
||||
width: 100%;
|
||||
display: block;
|
||||
@ -69,6 +78,11 @@ nav .action {
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
body.rtl .action {
|
||||
direction: rtl;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
nav > div {
|
||||
border-top: 1px solid rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
@ -101,6 +115,10 @@ main {
|
||||
border-radius: 0.125em;
|
||||
}
|
||||
|
||||
body.rtl .breadcrumbs a {
|
||||
transform: translateX(-16em);
|
||||
}
|
||||
|
||||
.breadcrumbs a:hover {
|
||||
background-color: rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
|
||||
@ -8,6 +8,10 @@
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
body.rtl .dashboard .row {
|
||||
margin-right: 16em;
|
||||
}
|
||||
|
||||
.dashboard .row .column {
|
||||
display: flex;
|
||||
padding: 0 .5em;
|
||||
@ -60,6 +64,10 @@ p code {
|
||||
border-bottom: 2px solid rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
|
||||
body.rtl #nav .wrapper {
|
||||
margin-right: 16em;
|
||||
}
|
||||
|
||||
.dashboard #nav ul {
|
||||
list-style: none;
|
||||
display: flex;
|
||||
@ -138,6 +146,13 @@ table tr>*:first-child {
|
||||
padding-left: 1em;
|
||||
}
|
||||
|
||||
body.rtl table tr>* {
|
||||
padding-left: unset;
|
||||
padding-right: 1em;
|
||||
text-align: right;
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
table tr>*:last-child {
|
||||
padding-right: 1em;
|
||||
}
|
||||
@ -181,6 +196,11 @@ table tr>*:last-child {
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
body.rtl .card .card-title>*:first-child {
|
||||
margin-right: 0;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.card>div {
|
||||
padding: 1em 1em;
|
||||
}
|
||||
@ -461,4 +481,10 @@ table tr>*:last-child {
|
||||
.card .card-action.full .action .title {
|
||||
font-size: 1.5em;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
/*** RTL - Fix disk usage information (in english) ***/
|
||||
body.rtl .credits {
|
||||
text-align: right;
|
||||
direction: ltr;
|
||||
}
|
||||
@ -135,10 +135,25 @@ header .menu-button {
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
body.rtl #search #result {
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
#search #result>div>*:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
body.rtl #search #result {
|
||||
direction: rtl;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/*** RTL - Keep search result LTR because it has paths (in english) ***/
|
||||
body.rtl #search #result ul>* {
|
||||
direction: ltr;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#search.active #result {
|
||||
padding: .5em;
|
||||
height: calc(100% - 4em);
|
||||
@ -224,6 +239,10 @@ header .menu-button {
|
||||
padding: .5em;
|
||||
}
|
||||
|
||||
body.rtl #search .boxes h3 {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#search .boxes>div {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
||||
@ -2,6 +2,10 @@
|
||||
--item-selected: white;
|
||||
}
|
||||
|
||||
body.rtl #listing {
|
||||
margin-right: 16em;
|
||||
}
|
||||
|
||||
#listing h2 {
|
||||
margin: 0 0 0 0.5em;
|
||||
font-size: .9em;
|
||||
|
||||
@ -2,6 +2,10 @@
|
||||
nav {
|
||||
width: 10em
|
||||
}
|
||||
/* Mobile Only fix div hidden by bottom navigation bar of mobile browser when using height: 100vh */
|
||||
#previewer .preview {
|
||||
height: calc(100% - 4em) !important;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
@ -40,6 +44,13 @@
|
||||
transform-origin: top right;
|
||||
z-index: 99999;
|
||||
}
|
||||
|
||||
body.rtl #dropdown {
|
||||
right: unset;
|
||||
left: 1em;
|
||||
transform-origin: top left;
|
||||
}
|
||||
|
||||
#dropdown > div {
|
||||
display: block;
|
||||
}
|
||||
@ -95,9 +106,20 @@
|
||||
transition: .1s ease left;
|
||||
left: -17em;
|
||||
}
|
||||
|
||||
body.rtl nav {
|
||||
left: unset;
|
||||
right: -17em;
|
||||
}
|
||||
nav.active {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
body.rtl nav.active {
|
||||
left: unset;
|
||||
right: 0;
|
||||
}
|
||||
|
||||
header .search-button,
|
||||
header .menu-button {
|
||||
display: inherit;
|
||||
@ -108,6 +130,23 @@
|
||||
#listing {
|
||||
margin-bottom: 5em;
|
||||
}
|
||||
|
||||
body.rtl #listing {
|
||||
margin-right: unset;
|
||||
}
|
||||
|
||||
body.rtl .breadcrumbs {
|
||||
transform: translateX(16em);
|
||||
}
|
||||
|
||||
body.rtl #nav .wrapper {
|
||||
margin-right: unset;
|
||||
}
|
||||
|
||||
body.rtl .dashboard .row {
|
||||
margin-right: unset;
|
||||
}
|
||||
|
||||
main {
|
||||
margin: 0 1em;
|
||||
width: calc(100% - 2em);
|
||||
|
||||
@ -315,6 +315,11 @@ main .spinner .bounce2 {
|
||||
padding: 0 1em;
|
||||
}
|
||||
|
||||
/*** RTL - flip and position arrow of path ***/
|
||||
body.rtl .breadcrumbs .chevron {
|
||||
transform: scaleX(-1) translateX(16em);
|
||||
}
|
||||
|
||||
#editor-container .breadcrumbs span {
|
||||
font-size: .75rem;
|
||||
}
|
||||
@ -404,3 +409,22 @@ main .spinner .bounce2 {
|
||||
}
|
||||
|
||||
@import './mobile.css';
|
||||
|
||||
/* * * * * * * * * * * * * * * *
|
||||
* RTL overrides *
|
||||
* * * * * * * * * * * * * * * */
|
||||
|
||||
body.rtl .card-content textarea {
|
||||
direction: ltr;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
body.rtl .card-content .small + input {
|
||||
direction: ltr;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
body.rtl .card.floating .card-content .file-list {
|
||||
direction: ltr;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "مساعدة"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -83,6 +83,7 @@
|
||||
"help": "Hilfe"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -83,6 +83,7 @@
|
||||
"help": "Help"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -83,6 +83,7 @@
|
||||
"help": "Ayuda"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -83,6 +83,7 @@
|
||||
"help": "Aide"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
272
frontend/src/i18n/he.json
Normal file
272
frontend/src/i18n/he.json
Normal file
@ -0,0 +1,272 @@
|
||||
{
|
||||
"buttons": {
|
||||
"cancel": "ביטול",
|
||||
"close": "סגירה",
|
||||
"copy": "העתק",
|
||||
"copyFile": "העתק קובץ",
|
||||
"copyToClipboard": "העתק ללוח",
|
||||
"create": "צור",
|
||||
"delete": "מחק",
|
||||
"download": "הורד",
|
||||
"file": "קובץ",
|
||||
"folder": "תקייה",
|
||||
"hideDotfiles": "הסתר קבצים נסתרים",
|
||||
"info": "מידע",
|
||||
"more": "עוד",
|
||||
"move": "העבר",
|
||||
"moveFile": "העבר קובץ",
|
||||
"new": "חדש",
|
||||
"next": "הבא",
|
||||
"ok": "אישור",
|
||||
"permalink": "צור קישור קבוע",
|
||||
"previous": "הקודם",
|
||||
"publish": "יצירה",
|
||||
"rename": "שנה שם",
|
||||
"replace": "החלף",
|
||||
"reportIssue": "דווח על תקלה",
|
||||
"save": "שמור",
|
||||
"schedule": "תזמון",
|
||||
"search": "חיפוש",
|
||||
"select": "בחר",
|
||||
"selectMultiple": "בחירה מרובה",
|
||||
"share": "שתף",
|
||||
"shell": "פתיחת מסוף",
|
||||
"submit": "אישור",
|
||||
"switchView": "שנה תצוגה",
|
||||
"toggleSidebar": "פתיחת / סגירת סרגל צד",
|
||||
"update": "עדכון",
|
||||
"upload": "העלאה",
|
||||
"openFile": "פתח קובץ"
|
||||
},
|
||||
"download": {
|
||||
"downloadFile": "הורד קובץ",
|
||||
"downloadFolder": "הורד תקייה",
|
||||
"downloadSelected": "הורד קבצים שנבחרו"
|
||||
},
|
||||
"errors": {
|
||||
"forbidden": "אין לך הרשאות גישה",
|
||||
"internal": "משהו השתבש",
|
||||
"notFound": "לא ניתן להגיע למיקום זה",
|
||||
"connection": "לא ניתן להגיע לשרת"
|
||||
},
|
||||
"files": {
|
||||
"body": "גוף",
|
||||
"clear": "נקה",
|
||||
"closePreview": "סגירת תצוגה מקדימה",
|
||||
"files": "קבצים",
|
||||
"folders": "תקיות",
|
||||
"home": "ראשי",
|
||||
"lastModified": "שונה לאחרונה",
|
||||
"loading": "טוען...",
|
||||
"lonely": "בודד כאן",
|
||||
"metadata": "נתונים",
|
||||
"multipleSelectionEnabled": "בחירה מרובה מופעלת",
|
||||
"name": "שם",
|
||||
"size": "גודל",
|
||||
"sortByLastModified": "מיין לפי השינוי האחרון",
|
||||
"sortByName": "מיין לפי שם",
|
||||
"sortBySize": "מיין לפי גודל",
|
||||
"noPreview": "תצוגה מקדימה לא זמינה לקובץ זה"
|
||||
},
|
||||
"help": {
|
||||
"click": "בחר קובץ או תקייה",
|
||||
"ctrl": {
|
||||
"click": "בחר מספר קבצים או תקיות",
|
||||
"f": "פותח את החיפוש",
|
||||
"s": "לשמור קובץ או להוריד את התקייה שבה אתה נמצא"
|
||||
},
|
||||
"del": "מחק את מה שנבחר",
|
||||
"doubleClick": "פתח קובץ או תקייה",
|
||||
"esc": "נקה את הבחירה ו/או סגור את השדה",
|
||||
"f1": "המידע הזה",
|
||||
"f2": "שנה שם קובץ",
|
||||
"help": "עזרה"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
"es": "Español",
|
||||
"fr": "Français",
|
||||
"is": "Icelandic",
|
||||
"it": "Italiano",
|
||||
"ja": "日本語",
|
||||
"ko": "한국어",
|
||||
"nlBE": "Dutch (Belgium)",
|
||||
"pl": "Polski",
|
||||
"pt": "Português",
|
||||
"ptBR": "Português (Brasil)",
|
||||
"ro": "Romanian",
|
||||
"ru": "Русский",
|
||||
"sk": "Slovenčina",
|
||||
"svSE": "Swedish (Sweden)",
|
||||
"tr": "Türkçe",
|
||||
"ua": "Українська",
|
||||
"zhCN": "中文 (简体)",
|
||||
"zhTW": "中文 (繁體)"
|
||||
},
|
||||
"login": {
|
||||
"createAnAccount": "צור חשבון",
|
||||
"loginInstead": "חשבון קיים",
|
||||
"password": "סיסמא",
|
||||
"passwordConfirm": "אימות סיסמא",
|
||||
"passwordsDontMatch": "סיסמאות אינן תואמות",
|
||||
"signup": "הרשמה",
|
||||
"submit": "התחברות",
|
||||
"username": "שם משתמש",
|
||||
"usernameTaken": "שם משתמש כבר קיים",
|
||||
"wrongCredentials": "פרטי התחברות שגויים"
|
||||
},
|
||||
"permanent": "קבוע",
|
||||
"prompts": {
|
||||
"copy": "העתק",
|
||||
"copyMessage": "בחר לאן להעתיק את הקבצים:",
|
||||
"currentlyNavigating": "כרגע מנווט ב:",
|
||||
"deleteMessageMultiple": "האם אתה בטוח שברצונך למחוק {count} קבצים?",
|
||||
"deleteMessageSingle": "האם אתה בטוח שברצונך למחוק את הקובץ או התקייה?",
|
||||
"deleteMessageShare": "האם אתה בטוח שברצונך למחוק את השיתוף הזה?({path})?",
|
||||
"deleteTitle": "מחק קבצים",
|
||||
"displayName": "שם:",
|
||||
"download": "הורד קבצים",
|
||||
"downloadMessage": "בחר את הפורמט שברצונך להוריד",
|
||||
"error": "משהו השתבש",
|
||||
"fileInfo": "מידע על הקובץ",
|
||||
"filesSelected": "{count} קבצים נבחרו.",
|
||||
"lastModified": "שונה לאחרונה",
|
||||
"move": "העבר",
|
||||
"moveMessage": "בחר מיקום חדש לקובץ / תקייה:",
|
||||
"newArchetype": "צור פוסט חדש. הקובץ יווצר בתקיית התוכן",
|
||||
"newDir": "תקייה חדשה",
|
||||
"newDirMessage": "כתוב את שם התקייה החדשה",
|
||||
"newFile": "קובץ חדש",
|
||||
"newFileMessage": "כתוב את שם הקובץ החדש",
|
||||
"numberDirs": "מספר התקיות",
|
||||
"numberFiles": "מספר הקבצים",
|
||||
"rename": "שנה שם",
|
||||
"renameMessage": "הכנס שם חדש עבור",
|
||||
"replace": "החלף",
|
||||
"replaceMessage": "אחד הקבצים בעל שם זהה לקובץ קיים, האם ברצונך להחליף את הקובץ הקיים בחדש? זהירות - הקובץ הישן ימחק\n",
|
||||
"schedule": "תזמון",
|
||||
"scheduleMessage": "בחר תאריך ושעה לתזמון הפרסום של פוסט זה.",
|
||||
"show": "הצג",
|
||||
"size": "גודל",
|
||||
"upload": "העלאה",
|
||||
"uploadFiles": "מעלה {files} קבצים...",
|
||||
"uploadMessage": "בחר אפשרות העלאה.",
|
||||
"optionalPassword": "סיסמא אופציונלית"
|
||||
},
|
||||
"search": {
|
||||
"images": "תמונות",
|
||||
"music": "מוזיקה",
|
||||
"pdf": "PDF",
|
||||
"pressToSearch": "הקש אנטר לחיפוש...",
|
||||
"search": "חפש...",
|
||||
"typeToSearch": "הקלד לחיפוש...",
|
||||
"types": "סוג",
|
||||
"video": "וידאו"
|
||||
},
|
||||
"settings": {
|
||||
"admin": "מנהל",
|
||||
"administrator": "מנהל ראשי",
|
||||
"allowCommands": "הפעל פקודות",
|
||||
"allowEdit": "ערוך, שנה שם ומחק קבצים או תקיות",
|
||||
"allowNew": "צור קבצים ותקיות חדשות",
|
||||
"allowPublish": "פרסם פוסטים ודפים חדשים",
|
||||
"allowSignup": "אפשר למשתמשים להירשם",
|
||||
"avoidChanges": "(השאר ריק כדי למנוע שינויים)",
|
||||
"branding": "מיתוג",
|
||||
"brandingDirectoryPath": "נתיב תקיית מיתוג",
|
||||
"brandingHelp": "אתה יכול להגדיר את האופן שבו האפליקציה תראה על ידי שינוי שם האפליקציה, החלפת הלוגו, הוספת עיצוב מותאם אישית ואפילו השבתת קישורים חיצוניים לGithub.\nלמידע נוסף עיין ב-{0}.",
|
||||
"changePassword": "שנה סיסמא",
|
||||
"commandRunner": "הרצת פקודות",
|
||||
"commandRunnerHelp": "אתה יכול להגדיר פקודות שיבוצעו באירועים שונים. עליך לכתוב אחד בכל שורה. משתני הסביבה {0} ו-{1} יהיו זמינים, בהיותם {0} ביחס ל-{1}. למידע נוסף על תכונה זו ועל משתני הסביבה הזמינים, עיין ב {2}.",
|
||||
"commandsUpdated": "הפקודות עודכנו.",
|
||||
"createUserDir": "צור תקיית בית במהלך הוספת משתמש חדש",
|
||||
"userHomeBasePath": "נתיב ראשי לתקיות הבית של משתמשים",
|
||||
"userScopeGenerationPlaceholder": "התחום יווצר אוטומטית",
|
||||
"createUserHomeDirectory": "צור תקיית בית למשתמש",
|
||||
"customStylesheet": "עיצוב מותאם אישית (Stylesheet)",
|
||||
"defaultUserDescription": "אלה הגדרות ברירת המחדל למשתמשים חדשים",
|
||||
"disableExternalLinks": "השבת קישורים חיצוניים (למעט תיעוד)",
|
||||
"documentation": "תיעוד",
|
||||
"examples": "דוגמאות",
|
||||
"executeOnShell": "בצע במסוף",
|
||||
"executeOnShellDescription": "כברירת מחדל, האפליקציה מבצעת את הפקודות על ידי הפעלה ישירה לקבצים (הבינארים). אם אתה רוצה להפעיל אותם מתוך מעטפת כלשהי, (לדוגמא מתוך Bash או PowerShell) אתה יכול להגדיר אותם כאן עם הפרמטרים הנדרשים. שים לב שזה יבוצע גם על פקודות משתמש וגם על הוקים (Hooks) לאירועים.",
|
||||
"globalRules": "זוהי קבוצה גלובלית של חוקים והרשאות (מה מותר ומה אסור), הם חלים על כל משתמש. אתה יכול להגדיר כללים ספציפיים בהגדרות של כל משתמש, כדי לעקוף את החוקים הגלובלים.",
|
||||
"globalSettings": "הגדרות גלובליות",
|
||||
"hideDotfiles": "הסתר קבצים נסתרים",
|
||||
"insertPath": "הכנס את הנתיב",
|
||||
"insertRegex": "הוסף ביטוי רגולרי",
|
||||
"instanceName": "שם",
|
||||
"language": "שפה",
|
||||
"lockPassword": "מנע ממשתמש להחליף סיסמא",
|
||||
"newPassword": "הסיסמא החדשה שלך",
|
||||
"newPasswordConfirm": "אשר את הסיסמה החדשה שלך",
|
||||
"newUser": "משתמש חדש",
|
||||
"password": "סיסמא",
|
||||
"passwordUpdated": "הסיסמא עודכנה!",
|
||||
"path": "נתיב",
|
||||
"perm": {
|
||||
"create": "יצירת קבצים ותקיות",
|
||||
"delete": "מחיקת קבצים ותקיות",
|
||||
"download": "הורדת קבצים ותקיות",
|
||||
"execute": "ביצוע פקודות",
|
||||
"modify": "עריכת קבצים קבצים",
|
||||
"rename": "שינוי שם או העברת קבצים ותקיות",
|
||||
"share": "שיתוף קבצים"
|
||||
},
|
||||
"permissions": "הרשאות",
|
||||
"permissionsHelp": "אתה יכול להגדיר את המשתמש להיות מנהל מערכת או לבחור את ההרשאות בנפרד. אם תבחר \"מנהל מערכת\", כל ההרשאות ייבחרו אוטומטית. ניהול המשתמשים נשאר הרשאה של מנהל מערכת.\n",
|
||||
"profileSettings": "הגדרות פרופיל",
|
||||
"ruleExample1": "מנע גישה לקבצים נסתרים (כל קובץ שמתחיל בנקודה, לדוגמא .git)",
|
||||
"ruleExample2": "חסימת גישה לקובץ בשם Caddyfile בתחום הראשי.",
|
||||
"rules": "חוקים",
|
||||
"rulesHelp": "כאן אתה יכול להגדיר רשימה של כללים למשתמש ספציפי, רשימה שחורה ולבנה. הקבצים החסומים לא יופיעו ברשימת הקבצים ולא יהיו נגישים למשתמש. יש תמיכה בנתיבים (ביחס לתקייה הראשית של המשתמש), וגם בביטוי רגולרי.\n",
|
||||
"scope": "תחום",
|
||||
"setDateFormat": "הגדר פורמט תאריך",
|
||||
"settingsUpdated": "ההגדרות עודכנו!",
|
||||
"shareDuration": "משך השיתוף",
|
||||
"shareManagement": "ניהול שיתוף",
|
||||
"shareDeleted": "שיתוף נמחק!",
|
||||
"singleClick": "השתמש בלחיצות בודדות כדי לפתוח קבצים ותקיות",
|
||||
"themes": {
|
||||
"dark": "כהה",
|
||||
"light": "בהיר",
|
||||
"title": "ערכת נושא"
|
||||
},
|
||||
"user": "משתמש",
|
||||
"userCommands": "פקודות",
|
||||
"userCommandsHelp": "רשימה מופרדת עם רווחים עם הפקודות הזמינות עבור משתמש זה. דוגמא:\n",
|
||||
"userCreated": "משתמש נוצר!",
|
||||
"userDefaults": "הגדרות ברירת מחדל למשתמש",
|
||||
"userDeleted": "משתמש נמחק!",
|
||||
"userManagement": "ניהול משתמש",
|
||||
"userUpdated": "המשתמש עודכן!",
|
||||
"username": "שם משתמש",
|
||||
"users": "משתמשים"
|
||||
},
|
||||
"sidebar": {
|
||||
"help": "עזרה",
|
||||
"hugoNew": "הוגו חדש",
|
||||
"login": "התחבר",
|
||||
"logout": "התנתק",
|
||||
"myFiles": "הקבצים שלי",
|
||||
"newFile": "קובץ חדש",
|
||||
"newFolder": "תקייה חדשה",
|
||||
"preview": "תצוגה מקדימה",
|
||||
"settings": "הגדרות",
|
||||
"signup": "הרשמה",
|
||||
"siteSettings": "הגדרות"
|
||||
},
|
||||
"success": {
|
||||
"linkCopied": "הקישור הועתק!"
|
||||
},
|
||||
"time": {
|
||||
"days": "ימים",
|
||||
"hours": "שעות",
|
||||
"minutes": "דקות",
|
||||
"seconds": "שניות",
|
||||
"unit": "יחידת זמן"
|
||||
}
|
||||
}
|
||||
@ -1,6 +1,7 @@
|
||||
import Vue from "vue";
|
||||
import VueI18n from "vue-i18n";
|
||||
|
||||
import he from "./he.json";
|
||||
import ar from "./ar.json";
|
||||
import de from "./de.json";
|
||||
import en from "./en.json";
|
||||
@ -27,6 +28,9 @@ Vue.use(VueI18n);
|
||||
export function detectLocale() {
|
||||
let locale = (navigator.language || navigator.browserLangugae).toLowerCase();
|
||||
switch (true) {
|
||||
case /^he.*/i.test(locale):
|
||||
locale = "he";
|
||||
break;
|
||||
case /^ar.*/i.test(locale):
|
||||
locale = "ar";
|
||||
break;
|
||||
@ -96,10 +100,13 @@ const removeEmpty = (obj) =>
|
||||
{}
|
||||
);
|
||||
|
||||
export const rtlLanguages = ["he", "ar"];
|
||||
|
||||
const i18n = new VueI18n({
|
||||
locale: detectLocale(),
|
||||
fallbackLocale: "en",
|
||||
messages: {
|
||||
he: removeEmpty(he),
|
||||
ar: removeEmpty(ar),
|
||||
de: removeEmpty(de),
|
||||
en: en,
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "Hjálp"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "Aiuto"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "ヘルプ"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "도움말"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "Help"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "Arabisch",
|
||||
"de": "Duits",
|
||||
"en": "Engels",
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "Pomoc"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "Ajuda"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "Ajuda"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "Árabe",
|
||||
"de": "Alemão",
|
||||
"en": "Inglês",
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "Ajutor"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -83,6 +83,7 @@
|
||||
"help": "Помощь"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -83,6 +83,7 @@
|
||||
"help": "Pomoc"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "Hjälp"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -81,6 +81,7 @@
|
||||
"help": "Yardım"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -83,6 +83,7 @@
|
||||
"help": "Допомога"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -83,6 +83,7 @@
|
||||
"help": "帮助"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -77,6 +77,7 @@
|
||||
"help": "幫助"
|
||||
},
|
||||
"languages": {
|
||||
"he": "עברית",
|
||||
"ar": "العربية",
|
||||
"de": "Deutsch",
|
||||
"en": "English",
|
||||
|
||||
@ -13,7 +13,7 @@ import Shares from "@/views/settings/Shares";
|
||||
import Errors from "@/views/Errors";
|
||||
import store from "@/store";
|
||||
import { baseURL, name } from "@/utils/constants";
|
||||
import i18n from "@/i18n";
|
||||
import i18n, { rtlLanguages } from "@/i18n";
|
||||
|
||||
Vue.use(Router);
|
||||
|
||||
@ -158,6 +158,18 @@ router.beforeEach((to, from, next) => {
|
||||
const title = i18n.t(titles[to.name]);
|
||||
document.title = title + " - " + name;
|
||||
|
||||
/*** RTL related settings per route ****/
|
||||
const rtlSet = document.querySelector("body").classList.contains("rtl");
|
||||
const shouldSetRtl = rtlLanguages.includes(i18n.locale);
|
||||
switch (true) {
|
||||
case shouldSetRtl && !rtlSet:
|
||||
document.querySelector("body").classList.add("rtl");
|
||||
break;
|
||||
case !shouldSetRtl && rtlSet:
|
||||
document.querySelector("body").classList.remove("rtl");
|
||||
break;
|
||||
}
|
||||
|
||||
if (to.matched.some((record) => record.meta.requiresAuth)) {
|
||||
if (!store.getters.isLogged) {
|
||||
next({
|
||||
|
||||
@ -75,6 +75,7 @@
|
||||
import { mapState, mapMutations } from "vuex";
|
||||
import { users as api } from "@/api";
|
||||
import Languages from "@/components/settings/Languages";
|
||||
import i18n, { rtlLanguages } from "@/i18n";
|
||||
|
||||
export default {
|
||||
name: "settings",
|
||||
@ -143,6 +144,9 @@ export default {
|
||||
singleClick: this.singleClick,
|
||||
dateFormat: this.dateFormat,
|
||||
};
|
||||
const shouldReload =
|
||||
rtlLanguages.includes(data.locale) !==
|
||||
rtlLanguages.includes(i18n.locale);
|
||||
await api.update(data, [
|
||||
"locale",
|
||||
"hideDotfiles",
|
||||
@ -150,6 +154,9 @@ export default {
|
||||
"dateFormat",
|
||||
]);
|
||||
this.updateUser(data);
|
||||
if (shouldReload) {
|
||||
location.reload();
|
||||
}
|
||||
this.$showSuccess(this.$t("settings.settingsUpdated"));
|
||||
} catch (e) {
|
||||
this.$showError(e);
|
||||
|
||||
4
go.mod
4
go.mod
@ -25,7 +25,7 @@ require (
|
||||
go.etcd.io/bbolt v1.3.6
|
||||
golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f
|
||||
golang.org/x/image v0.0.0-20220413100746-70e8d0d3baa9
|
||||
golang.org/x/text v0.3.7
|
||||
golang.org/x/text v0.4.0
|
||||
gopkg.in/natefinch/lumberjack.v2 v2.0.0
|
||||
gopkg.in/yaml.v2 v2.4.0
|
||||
)
|
||||
@ -59,7 +59,7 @@ require (
|
||||
github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect
|
||||
github.com/yusufpapurcu/wmi v1.2.2 // indirect
|
||||
golang.org/x/net v0.0.0-20220412020605-290c469a71a5 // indirect
|
||||
golang.org/x/sys v0.0.0-20220412211240-33da011f77ad // indirect
|
||||
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f // indirect
|
||||
gopkg.in/ini.v1 v1.66.4 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect
|
||||
)
|
||||
|
||||
8
go.sum
8
go.sum
@ -404,8 +404,8 @@ golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7w
|
||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220128215802-99c3d69c2c27/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220412211240-33da011f77ad h1:ntjMns5wyP/fN65tdBD4g8J5w8n015+iIIs9rtjXkY0=
|
||||
golang.org/x/sys v0.0.0-20220412211240-33da011f77ad/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f h1:v4INt8xihDGvnrfjMDVXGxw9wrfxYyCjk0KbXjhR55s=
|
||||
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
@ -414,8 +414,8 @@ golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
|
||||
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
||||
golang.org/x/text v0.4.0 h1:BrVqGRd7+k1DiOgtnFvAkoQEWQvBc25ouMJM6429SFg=
|
||||
golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
|
||||
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
|
||||
Loading…
Reference in New Issue
Block a user