diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md new file mode 100644 index 00000000..b11f3c2f --- /dev/null +++ b/CONTRIBUTORS.md @@ -0,0 +1,78 @@ +YunoHost web administration contributors +======================================== + +YunoHost is built and maintained by the YunoHost project community. +Everyone is encouraged to submit issues and changes, and to contribute in other ways -- see https://yunohost.org/contribute to find out how. + +-- + +Initial YunoHost web administration was built by Kload, for YunoHost v2. + +Most of code was written by opi, with help of numerous contributors. + +Translation is made by a bunch of lovely people over the world. + +We would like to thank anyone who ever helped the YunoHost project, and especially the web administration project <3 + + +YunoHost Administration Contributors +------------------------------------ + +- opi +- Kload +- Jérôme Lebleu +- Julien 'ju' Malik +- Hugo Roy +- Laurent 'Bram' Peuch +- Valentin 'zamentur' / 'ljf' Grimaud +- M5oul +- thardev + + +YunoHost Administration Translators +----------------------------------- + +If you want to help translation, please visit https://translate.yunohost.org/projects/yunohost/yunohost-admin/ + +### Dutch + +- DUBWiSE +- dosch + +### English + +- Bugsbane + +### French + +- Étienne Deparis +- Jean-Baptiste Holcroft +- Jérôme Lebleu +- ljf (zamentur) +- opi + +### German + +- david.bartke +- Felix Bartels +- Fabian Gruber (burst3r) + +### Hindi + +- Anmol + +### Italian + +- bricabrac +- danneso +- Thomas Bille +- Vincent + +### Portuguese + +- Deleted User + +### Spanish + +- Juanu +- rokaz diff --git a/README.md b/README.md index a661bdeb..d6da2e7f 100644 --- a/README.md +++ b/README.md @@ -1,45 +1,37 @@ # YunoHost Admin -JS client for YunoHost API +[YunoHost](https://yunohost.org) administration web interface (JS client for the API). -**Please report issues here** (no registration needed): -https://dev.yunohost.org/projects/yunohost/issues +This client is a part of the YunoHost projet, and can not be installed directly. Please visit YunoHost website for [installation instructions](https://yunohost.org/install). +## Bug tracker -## Installation +Please report issues on the [YunoHost Bugtracker](https://github.com/YunoHost/issues). -This client is a part of the YunoHost projet, and can not be installed -directly. Please visit [YunoHost website](https://yunohost.org) for -more information. +## Translate + +[![Translation status](https://translate.yunohost.org/widgets/yunohost/-/287x66-white.png)](https://translate.yunohost.org/engage/yunohost/?utm_source=widget) ## Contributing Feel free to improve the plugin and send us a pull request. -We use gulp to compile Less files and minify the JavaScript. -Assuming [nodejs](http://nodejs.org/) is installed, you can run a -build with: +We use `gulp` to compile Less files and minify the JavaScript. Assuming [nodejs](http://nodejs.org/) is installed, you can install dependencies and run a build with: ```sh cd src npm install -npm install -g bower -bower install -npm install -g gulp -gulp build +npm run build ``` -Alternatively you can pas the `--dev` option to gulp which improve building -speed by bypassing compression tasks. -On a YunoHost instance, the web admin files are located at -`/usr/share/yunohost/admin`. +Alternatively you can run `npm run build-dev` which improves building speed by bypassing compression tasks. + +On a YunoHost instance, the web admin files are located at `/usr/share/yunohost/admin`. **Note:** The `.ms` - moustache - files are cached by the browser. You have to reach them manually some times you modify them. (e.g. go to https://example.com/yunohost/admin/views/domain/domain_list.ms) - - ## Dependencies * Bootstrap 3.3.6 diff --git a/debian/changelog b/debian/changelog index 151eba8c..7098da04 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,283 @@ +yunohost-admin (3.0.0) stable; urgency=low + + Merging with jessie's branches + Releasing as stable + + -- Alexandre Aubin Fri, 17 Jun 2018 03:38:00 +0000 + +yunohost-admin (3.0.0~beta1.3) testing; urgency=low + + Merging with jessie's branches + + -- Alexandre Aubin Sat, 16 Jun 2018 00:36:00 +0000 + +yunohost-admin (3.0.0~beta1.2) testing; urgency=low + + Merging with jessie's branches + + -- Alexandre Aubin Fri, 15 Jun 2018 23:23:00 +0000 + +yunohost-admin (3.0.0~beta1.1) testing; urgency=low + + Merging with jessie's branches + + -- Alexandre Aubin Mon, 28 May 2018 02:43:00 +0000 + +yunohost-admin (3.0.0~beta1) testing; urgency=low + + Beta release for Stretch + + -- Alexandre Aubin Thu, 03 May 2018 03:04:45 +0000 + +yunohost-admin (2.7.14) stable; urgency=low + + * Improved Occitan, French, Portuguese, Arabic translations + * Release as stable + + -- Alexandre Aubin Sun, 17 Jun 2018 01:33:02 +0000 + +yunohost-admin (2.7.13.2) testing; urgency=low + + * [fix] Display active/inactive in service page instead of running/exited/dead + * [fix] Remove "experimental" warning for the backup + * [fix] Fix a bug in backup restore + + Contributors : Bram and Aleks + + -- Alexandre Aubin Fri, 15 Jun 2018 20:15:00 +0000 + +yunohost-admin (2.7.13.1) testing; urgency=low + + * [i18n] Improve French, Portuguese, Arabic, Occitan translations + * [enh] Improve services page following changes in the core (#191) + + Contributors : Bram, ButterflyOfFire, Jibec, itxtoledo, Quent-in + + -- Alexandre Aubin Mon, 28 May 2018 02:43:00 +0000 + +yunohost-admin (2.7.13) testing; urgency=low + + * [enh] Add interface for migrations (#186) + * [i18n] Improve French translation + + -- Alexandre Aubin Sun, 06 May 2018 23:16:15 +0000 + +yunohost-admin (2.7.12) stable; urgency=low + + * Bumping version number for stable release + + -- Alexandre Aubin Sun, 06 May 2018 16:47:05 +0000 + +yunohost-admin (2.7.11) testing; urgency=low + + * [i18n] Updated translations for French, Arabic, Dutch, Occitan and Spanish + * [fix] Version datastructure has changed + + Thanks to all contributors (Jibec, Bram, Moul, ButterflyOfFire, syl, Matthieu, Quenti, bjarkan) <3 ! + + -- Alexandre Aubin Tue, 01 May 2018 23:20:54 +0000 + +yunohost-admin (2.7.7) stable; urgency=low + + * [fix] version data structure has changed + * Releasing as stable + + -- Alexandre Aubin Thu, 18 Jan 2018 17:48:20 -0500 + +yunohost-admin (2.7.6) testing; urgency=low + + Major changes: + + * [enh] Diagnose and display warning and instruction to fix Meltdown vulnerability + * [enh] Add app change URL feature + * [enh] Add app change label feature + + Misc fixes/improvements: + + * [enh] display stable/testing/unstable in footer + * [i18n] Improve French translation + + Thanks to all contributors (JimboeJoe, Bram, Jibec, ewilly) ! <3 + + -- Alexandre Aubin Tue, 16 Jan 2018 17:45:08 -0500 + +yunohost-admin (2.7.5) stable; urgency=low + + (Bumping version number for stable release) + + -- Alexandre Aubin Sat, 02 Dec 2017 12:34:45 -0500 + +yunohost-admin (2.7.4) testing; urgency=low + + * [i18n] Improve French. German translations + + -- Alexandre Aubin Tue, 28 Nov 2017 18:58:04 -0500 + +yunohost-admin (2.7.3) testing; urgency=low + + * [i18n] Improve french translation (#170) + * [fix] Add "OK" in translatable strings (#171) + * [enh] Be able to upgrade single apps (#172) + * [enh] Reboot/shutdown from admin interface (#173) + +Thanks to all contributors <3 ! (opi, ljf, ariasuni, Jibec) + + -- Alexandre Aubin Thu, 12 Oct 2017 16:51:24 -0400 + +yunohost-admin (2.7.2) stable; urgency=low + +Releasing as stable + + -- Alexandre Aubin Tue, 22 Aug 2017 21:36:35 -0400 + +yunohost-admin (2.7.1) testing; urgency=low + + [ Alexandre Aubin ] + * [fix] Tell user that domain dns-conf shows a recommendation only + + [ Translations ] + * Added translation using Weblate (Russian) (Evgeniy Ozhiganov) + * [i18n] Translated using Weblate (Esperanto) (MCMic) + +Thanks to all contributors (MCMic, Aleks, Ozhiganov) <3 ! + + -- Laurent Peuch Sat, 19 Aug 2017 22:43:15 +0000 + +yunohost-admin (2.7.0) testing; urgency=low + + * [enh] Variable assignment code cleanup. (#161) + * [fix] Friendlier and more meaningful 'error 500' (#166) + * [i18n] Started Russian translation (#167) + +Thanks to all contributors (opi, Aleks, Ozhiganov) <3 ! + + -- Alexandre Aubin Mon, 07 Aug 2017 12:49:55 -0400 + +yunohost-admin (2.6.2) stable; urgency=low + +## Minor fix + + * 'hooks' key is now 'system' in backup info (#165) + + -- Alexandre Aubin Wed, 26 Jul 2017 12:09:03 -0400 + +yunohost-admin (2.6.1) stable; urgency=low + +Major changes since 2.6.0 +----------- + + * [enh] Manage appslists. #875 (#158) + * [i18n] Update Spanish, German and French translations + +Thanks to all contributors : opi, moul, Jibec, Juanu and franzos + + -- ljf Wed, 21 Jun 2017 18:26:35 -0400 + +yunohost-admin (2.6.0) testing; urgency=low + +## Major improvements + + * [enh] Display help text from manifest during app installation. (#152) + * [fix] Show version only when connected + +## Other improvements + + * [fix]Guess API's baseurl is store is empty. + * [fix] Avoid empty whitespace for the first line of the logs display (#151) + * [fix] Set document root permission during package install. (#156) + * [fix] Cleanup app_list_install template (unused code since 66dbcf50). + * [fix] Label for custom app url. + * [fix] Misc typos, messages, README improvements, + * [love] Add missing contributors & translators + * Updated translations for German, Spanish, Portuguese, Italian, French + +Thanks to all contributors (opi, Bram, thardev) and translators ! <3 + + -- Alexandre Aubin Mon, 24 Apr 2017 13:06:50 -0400 + +yunohost-admin (2.5.1) stable; urgency=low + + [ ljf ] + * [fix] Avoid incomprehensible info about quota (#640) + + [ Juanu ] + * [i18n] Translated using Weblate (Spanish) + + [ Laurent Peuch ] + * [enh] add empty json file for breton translation + + [ opi ] + * [enh][love] Create CONTRIBUTORS.md file. (#140) + + [ Moul ] + * [enh] readme: add translation badge status. + + [ Jean-Baptiste Holcroft ] + * [i18n] Translated using Weblate (French) + + -- opi Thu, 02 Feb 2017 11:33:16 +0100 + +yunohost-admin (2.5.0) testing; urgency=low + + dattaz and opi + * Add noscript tag + * Update alert when javascript is not enable + + Alexandre Aubin + * Let's encrypt web interface + + Updated translations: French (jibec), Hindi (Anmol) and Italian (Thomas Bille). + + Thanks to Anmol, dattaz, opi, jibec, Moul and Thomas Bille for your contributions <3 + + -- Laurent Peuch Mon, 12 Dec 2016 21:32:09 +0100 + +yunohost-admin (2.4.2) stable; urgency=low + + [ Lars-Magnus Skog ] + * simplify install and build + + [ opi ] + * [fix] Remove useless 'move' CSS class. + * [fix] Prevent empty space before footer. + * [fix] No need to resize body on every content update. + * [enh] Cleanup app view() helper. + * [enh] Add 'watch' npm script. + * [enh] Be more explicit on npm command. + * [enh] Display YNH version in footer. Need body padding improvments. #316 + * [enh] Allow key/value choices in manifest arguments. + + [ Jrome Lebleu ] + * [fix] Run npm/gulp at build in Debian rules + + [ Laurent Peuch ] + * [enh] add empty file for hindie to enable it in weblate + * [fix] api correctly returns boolean value now + + -- Laurent Peuch Sun, 14 Aug 2016 19:02:25 +0200 + +yunohost-admin (2.4.1) stable; urgency=low + + [ Juanu ] + * [i18n] Translated using Weblate (Spanish) + + [ Vincent ] + * [i18n] Translated using Weblate (Italian) + + [ Bugsbane ] + * [i18n] Translated using Weblate (English) + + [ Jean-Baptiste ] + * [i18n] Translated using Weblate (French) + + [ opi ] + * [fix] Icon position. + * [fix] Allow checkbox to be unchecked even if default is true. + * [fix] Do not escape html attributes on app install form. + * [enh] Display manifest example as help text. + + -- opi Fri, 15 Jul 2016 15:27:49 +0200 + yunohost-admin (2.4.0.1) stable; urgency=low [ Jérôme Lebleu ] diff --git a/debian/control b/debian/control index 8d196903..77af6c94 100644 --- a/debian/control +++ b/debian/control @@ -12,7 +12,7 @@ Architecture: all Conflicts: yunohost-apps-admin Replaces: yunohost-apps-admin Depends: ${misc:Depends} - , yunohost (>= 2.3.6) + , yunohost (>= 2.7.6) Description: web administration interface for yunohost YunoHost aims to make self-hosting accessible to everyone. It configures an email, Web and IM server alongside a LDAP base. It also provides diff --git a/debian/postinst b/debian/postinst index f4b0e7dc..67360059 100644 --- a/debian/postinst +++ b/debian/postinst @@ -7,6 +7,9 @@ do_configure() { if [ ! -f /usr/share/yunohost/admin/ca.crt ]; then ln -s /etc/ssl/certs/ca-yunohost_crt.pem /usr/share/yunohost/admin/ca.crt fi + + # Set document root permissions + chown -R root:root /usr/share/yunohost/admin } # summary of how this script can be called: diff --git a/debian/rules b/debian/rules index aa0aad78..b0315118 100755 --- a/debian/rules +++ b/debian/rules @@ -14,16 +14,13 @@ TMPDIR = $$(pwd)/debian/yunohost-admin %: dh $@ -override_dh_auto_install: +override_dh_auto_build: # Replace VERSION with current package version to prevent web browser # to serve old css/js files sed -i 's/VERSION/$(DEBVERS)/g' src/index.html # Run npm/bower/gulp - # For some unknown reason, the postinstall scripts in package.json cannot be run, and triggers this error : - # "npm WARN cannot run in wd yunohost-admin@ bower install && gulp build (wd=/build/path)" - cd src ; npm --progress false --loglevel warn --color false --unsafe-perm install - cd src ; node_modules/bower/bin/bower install --allow-root + cd src ; npm --progress false --loglevel warn --color false install cd src ; node_modules/gulp/bin/gulp.js build override_dh_clean: diff --git a/src/css/style.less b/src/css/style.less index ecb7d74c..8816d715 100644 --- a/src/css/style.less +++ b/src/css/style.less @@ -96,10 +96,6 @@ button { padding: 5px; } -.move { - transition: margin-left 0.2s ease-in-out; -} - .placehold { font-size: 0.0001em; color: transparent; @@ -196,12 +192,18 @@ button { width: 200%; height: 100%; min-height: 150px; + transition: margin-left 0.15s ease-in-out; } #slideBack, #slideTo, #main { .block; } +#slideTo, #slideBack { + // Force left & right pane height to 1px (prevent empty space before footer). + height: 1px; +} + /* * The main part of the app * @@ -215,6 +217,26 @@ button { } +/* + * Page footer + * + */ +.page-footer { + .clearfix; + .make-row(12); + margin: 20px 0; + padding-top: 20px; + border-top: 1px solid #eee; + color: #999; + font-size: 0.9em; + text-align: right; + a { + color: #666; + &:hover, + &:focus {text-decoration: underline;} + } +} + /* * The pop up dialog * @@ -334,10 +356,16 @@ div.br { background-position: center top; } -.help-block { - text-align: right; +.help-block--link { + float: right; + margin-left: 2em; } +.help-block--help { + margin: 0 0 5px 0; +} +.help-block--example {} + .quota-help-block { text-align: left; line-height: 1.2; @@ -495,6 +523,7 @@ input[type='radio'].nice-radio { /** App install form **/ .form-app-install { .form-group { + margin-bottom: 25px; label {cursor: pointer;} } .form-control { diff --git a/src/gulpfile.js b/src/gulpfile.js index c754f518..add727a7 100644 --- a/src/gulpfile.js +++ b/src/gulpfile.js @@ -51,6 +51,7 @@ gulp.task('js', function() { 'js/yunohost/main.js', 'js/yunohost/helpers.js', 'js/yunohost/filters.js', + 'js/yunohost/events.js', 'js/yunohost/controllers/*.js', ]) .pipe(gulpif(isProduction, uglify())) diff --git a/src/index.html b/src/index.html index e2be525e..827d1662 100644 --- a/src/index.html +++ b/src/index.html @@ -49,11 +49,20 @@ loading… + + +
+

+
+
+

{{t 'app_info_changelabel_desc' settings.label}}

+ + {{t 'app_change_label'}} + +
+

{{t 'app_info_access_desc' settings.allowed_users}}

@@ -48,6 +57,21 @@

+
+

{{t 'app_info_changeurl_desc' settings.domain}}

+ {{#if change_url}} + + {{t 'app_change_url'}} + + {{else}} + {{#tooltip (t 'app_info_change_url_disabled_tooltip') }} + + {{t 'app_change_url'}} + + {{/tooltip}} + {{/if}} +
+

{{t 'app_info_uninstall_desc'}}

@@ -63,3 +87,4 @@
+{{load_tooltips}} diff --git a/src/views/app/app_install.ms b/src/views/app/app_install.ms index 0ecdb64f..75ce0c39 100644 --- a/src/views/app/app_install.ms +++ b/src/views/app/app_install.ms @@ -40,19 +40,29 @@ {{#manifest.arguments.install}}
+ + {{#if helpText}} + {{{helpText}}} + {{/if}} +
{{#if choices}} - {{#choices}}{{/choices}} {{else}} - + {{/if}} - {{#if help}} - {{{help}}} + {{#if helpLink}} + {{{helpLink}}} {{/if}} + + {{#if example}} + {{t 'form_input_example' example}} + {{/if}} +
{{/manifest.arguments.install}} diff --git a/src/views/app/app_list_install.ms b/src/views/app/app_list_install.ms index 1a3a8292..1ff9b887 100644 --- a/src/views/app/app_list_install.ms +++ b/src/views/app/app_list_install.ms @@ -5,7 +5,10 @@
@@ -27,17 +30,8 @@ {{/official}} {{/apps}} - -{{^apps}} -
- - {{t 'no_installed_apps'}} -
-{{/apps}} - -{{^installed_apps}}

{{t 'custom_app_install'}}

@@ -47,9 +41,16 @@ {{t 'confirm_install_custom_app'}}

+
+

+ {{t 'install_custom_app_appslists_info'}}

+

+ {{t 'appslists_manage'}} +

+
- +

@@ -65,5 +66,3 @@

- -{{/installed_apps}} diff --git a/src/views/backup/backup.ms b/src/views/backup/backup.ms index e49bdffa..c4935d37 100644 --- a/src/views/backup/backup.ms +++ b/src/views/backup/backup.ms @@ -11,10 +11,6 @@
-
{{t 'backup_experimental_warning'}}
- -
-
{{#each storages}} diff --git a/src/views/backup/backup_create.ms b/src/views/backup/backup_create.ms index 1d7d1a17..9081d0ae 100644 --- a/src/views/backup/backup_create.ms +++ b/src/views/backup/backup_create.ms @@ -7,10 +7,6 @@
-
{{t 'backup_experimental_warning'}}
- -
-
@@ -19,7 +15,7 @@
{{#each hooks}}
- +

{{name}}

{{description}}

diff --git a/src/views/backup/backup_info.ms b/src/views/backup/backup_info.ms index 34d8c911..ab64844e 100644 --- a/src/views/backup/backup_info.ms +++ b/src/views/backup/backup_info.ms @@ -7,10 +7,6 @@
-
{{t 'backup_experimental_warning'}}
- -
-

{{t 'infos'}}

@@ -33,9 +29,9 @@
{{#if items}}
- {{#each hooks}} + {{#each system_parts}}
- +

{{name}}

{{description}}

@@ -43,9 +39,9 @@ {{/each}} {{#each apps}}
- - -

{{name}} {{id}}

+ + +

{{name}} {{@key}}

{{/each}}
diff --git a/src/views/backup/backup_list.ms b/src/views/backup/backup_list.ms index 9978a297..e8777938 100644 --- a/src/views/backup/backup_list.ms +++ b/src/views/backup/backup_list.ms @@ -12,10 +12,6 @@
-
{{t 'backup_experimental_warning'}}
- -
-
{{#each archives}} diff --git a/src/views/domain/domain_cert.ms b/src/views/domain/domain_cert.ms new file mode 100644 index 00000000..1ced40de --- /dev/null +++ b/src/views/domain/domain_cert.ms @@ -0,0 +1,84 @@ + + +
+ + +
+
+

+ {{t 'certificate_status'}} +

+
+
+ +
+ {{status.alert_message}} +
+ +
+
{{t 'certificate_authority'}}
+
{{status.CA_type}} ({{status.CA_name}})
+
{{t 'validity'}}
+
{{status.validity}} days
+
+
+
+ +
+
+

+ {{t 'operations'}} +

+
+
+ + {{#if actions_enabled.install_letsencrypt}} +
+ {{#if status.ACME_eligible}} +

+ {{t 'domain_is_eligible_for_ACME'}}

+ {{else}} +

+ {{t 'domain_not_eligible_for_ACME'}}

+ {{/if}} + + {{t 'install_letsencrypt_cert'}} + +
+
+ {{/if}} + {{#if actions_enabled.manual_renew_letsencrpt}} +
+

{{t 'manually_renew_letsencrypt_message'}}

+ + {{t 'manually_renew_letsencrypt'}} + +
+
+ {{/if}} + {{#if actions_enabled.regen_selfsigned}} +
+

{{t 'regenerate_selfsigned_cert_message'}}

+ + {{t 'regenerate_selfsigned_cert'}} + +
+
+ {{/if}} + {{#if actions_enabled.replace_with_selfsigned}} +
+

{{t 'revert_to_selfsigned_cert_message'}}

+ + {{t 'revert_to_selfsigned_cert'}} + +
+ {{/if}} +
+
+ + diff --git a/src/views/domain/domain_dns.ms b/src/views/domain/domain_dns.ms index afe0e8a3..e4260837 100644 --- a/src/views/domain/domain_dns.ms +++ b/src/views/domain/domain_dns.ms @@ -4,9 +4,12 @@ {{name}} {{t 'dns'}}
-
+
+ {{t 'domain_dns_conf_is_just_a_recommendation' }} +
+

diff --git a/src/views/domain/domain_info.ms b/src/views/domain/domain_info.ms index 7b4368a7..e830ea3b 100644 --- a/src/views/domain/domain_info.ms +++ b/src/views/domain/domain_info.ms @@ -52,7 +52,19 @@ +
+
+

{{t 'certificate_manage'}}

+ {{#unless enable_cert_management}} +

+ {{t 'certificate_old_letsencrypt_app_conflict'}} +

+ {{/unless}} + + {{t 'ssl_certificate'}}

diff --git a/src/views/service/service_info.ms b/src/views/service/service_info.ms index aeffc7e6..869e7a27 100644 --- a/src/views/service/service_info.ms +++ b/src/views/service/service_info.ms @@ -9,7 +9,24 @@
-

{{t 'status'}}

+

{{t 'infos'}}

+
+
+ {{#service}} +
+
{{t 'name'}}
+
{{name}}
+
{{t 'description'}}
+
{{description}}
+
+ {{/service}} +
+
+ + +
+
+

{{t 'status'}}

@@ -22,8 +39,11 @@
{{t 'service_status'}} - {{status}} + {{active}} +
+ {{t 'started_at'}} + {{active_at.human}}
diff --git a/src/views/service/service_list.ms b/src/views/service/service_list.ms index 01b2d772..55848ba6 100644 --- a/src/views/service/service_list.ms +++ b/src/views/service/service_list.ms @@ -9,13 +9,16 @@ {{#services}} -

{{name}}

+

{{name}} {{description}}

{{t 'service_status'}} - {{status}} + {{active}} +
+ {{t 'started_at'}} + {{active_at.human}}
-
+ {{/services}}
diff --git a/src/views/service/service_log.ms b/src/views/service/service_log.ms index 0a03601d..937b6c1d 100644 --- a/src/views/service/service_log.ms +++ b/src/views/service/service_log.ms @@ -10,9 +10,7 @@
{{#logs}}

{{filename}}

-
-        {{filecontent}}
-        
+
{{filecontent}}
{{/logs}}
diff --git a/src/views/tools/tools_list.ms b/src/views/tools/tools_list.ms index d744f68d..8e8a70c2 100644 --- a/src/views/tools/tools_list.ms +++ b/src/views/tools/tools_list.ms @@ -14,6 +14,10 @@

{{t 'logs'}}

+
+ + +

{{t 'migrations'}}

@@ -35,6 +39,10 @@

{{t 'tools_security_feed'}}

+ + +

{{t 'tools_shutdown_reboot'}}

+

{{t 'versions'}}

diff --git a/src/views/tools/tools_migrations.ms b/src/views/tools/tools_migrations.ms new file mode 100644 index 00000000..6fe1079a --- /dev/null +++ b/src/views/tools/tools_migrations.ms @@ -0,0 +1,81 @@ +
+ +
+ +
+
+

{{t 'migrations_pending'}} + {{#if pending_migrations}} + + {{/if}} +

+
+ + {{#if pending_migrations}} +
+ {{#pending_migrations}} +
+

+ {{ number }}. {{ name }} +

+

+ {{ description }} +

+ {{#if disclaimer }} +
+

+ {{{ disclaimer }}} +

+ +
+

+ {{/if}} +
+ {{/pending_migrations}} +
+ {{else}} +
+ {{t 'migrations_no_pending' }} +
+ {{/if}} +
+ +
+
+

{{t 'migrations_done'}} +

+
+ + {{#if done_migrations}} +
+ {{#done_migrations}} +
+

+ + {{ number }}. {{ name }} + +

+

+ {{ description }} +

+
+ {{/done_migrations}} +
+ {{else}} +
+ {{t 'migrations_no_done' }} +
+ {{/if}} +
+ + + diff --git a/src/views/tools/tools_monitoring.ms b/src/views/tools/tools_monitoring.ms index c42e32cb..1593be1b 100644 --- a/src/views/tools/tools_monitoring.ms +++ b/src/views/tools/tools_monitoring.ms @@ -31,7 +31,7 @@
{{#each versions}}
{{@key}}
-
{{.}}
+
{{version}} ({{repo}})
{{/each}}
diff --git a/src/views/tools/tools_reboot.ms b/src/views/tools/tools_reboot.ms new file mode 100644 index 00000000..6786334e --- /dev/null +++ b/src/views/tools/tools_reboot.ms @@ -0,0 +1,28 @@ + + +
+ + +
+
+

+ {{t 'operations'}} +

+
+ +
diff --git a/src/views/tools/tools_versions.ms b/src/views/tools/tools_versions.ms index 24bba5f7..a7bc334e 100644 --- a/src/views/tools/tools_versions.ms +++ b/src/views/tools/tools_versions.ms @@ -14,7 +14,7 @@
{{#each versions}}
{{@key}}
-
{{.}}
+
{{version}} ({{repo}})
{{/each}}
{{t 'system_update'}} diff --git a/src/views/update/update.ms b/src/views/update/update.ms index 1dd7d6e9..c28e0d4e 100644 --- a/src/views/update/update.ms +++ b/src/views/update/update.ms @@ -26,7 +26,7 @@ {{/packages}}

{{else}}
@@ -42,13 +42,14 @@ {{#if apps}}
{{#apps}} -
+
+ {{t 'system_upgrade_btn'}}

{{label}} {{id}}

{{/apps}}
{{else}}
diff --git a/src/views/user/user_info.ms b/src/views/user/user_info.ms index 68ec82c3..c4e4834d 100644 --- a/src/views/user/user_info.ms +++ b/src/views/user/user_info.ms @@ -35,12 +35,13 @@ {{t 'user_mailbox_quota'}} - {{#if mailbox-quota.use}} - {{mailbox-quota.use}} / {{mailbox-quota.limit}} - {{else}} - {{mailbox-quota}} - {{/if}} - {{mailbox-quota.limit}} + + + + {{t 'user_mailbox_use'}} + {{mailbox-quota.use}} + {{t 'user_emailaliases'}}