From c770e72bebf6b3b519af944247beee758edda729 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Wed, 31 Jan 2018 17:39:40 +0100 Subject: [PATCH] [wip] Dirty draft of interface for migrations --- src/js/yunohost/controllers/tools.js | 27 ++++++++++ src/locales/en.json | 3 ++ src/views/tools/tools_list.ms | 4 ++ src/views/tools/tools_migrations.ms | 78 ++++++++++++++++++++++++++++ 4 files changed, 112 insertions(+) create mode 100644 src/views/tools/tools_migrations.ms diff --git a/src/js/yunohost/controllers/tools.js b/src/js/yunohost/controllers/tools.js index 752d3740..52219937 100644 --- a/src/js/yunohost/controllers/tools.js +++ b/src/js/yunohost/controllers/tools.js @@ -250,4 +250,31 @@ }); }); + // Reboot or shutdown button + app.get('#/tools/migrations', function (c) { + c.api('/migrations', function(migrations) { + c.api('/migrations/state', function(state) { + + var lastRunMigration = state.last_run_migration.number; + var migrationsLength = migrations.migrations.length; + var upToDate = true; + + for(var i = 0; i < migrationsLength; i++) { + var thisMigration = migrations.migrations[i]; + thisMigration.name = thisMigration.name.replace(/_/g, ' ') + thisMigration.todo = (thisMigration.number == lastRunMigration); + if (thisMigration.todo) { upToDate = false; } + }; + + + c.view('tools/tools_migrations', { + 'migrations' : migrations.migrations.reverse(), + 'upToDate' : upToDate + }); + + }); + }); + }); + + })(); diff --git a/src/locales/en.json b/src/locales/en.json index 8c6fe9c3..4bfe0eca 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -184,6 +184,7 @@ "manage_users": "Manage users", "memory": "Memory", "menu": "Menu", + "migrations": "Migrations", "mode": "Mode", "monitoring": "Monitoring", "monitoring_check_glances": "Check glances service status.", @@ -231,6 +232,7 @@ "refresh_app_list": "Refresh list", "remove_access": "Remove access", "restore": "Restore", + "run": "Run", "running": "Running", "save": "Save", "select_user": "Select user", @@ -241,6 +243,7 @@ "services_list": "Service list", "set_default": "Set default", "size": "Size", + "skip": "Skip", "start": "Start", "status": "Status", "stop": "Stop", diff --git a/src/views/tools/tools_list.ms b/src/views/tools/tools_list.ms index 3458de9c..199720e3 100644 --- a/src/views/tools/tools_list.ms +++ b/src/views/tools/tools_list.ms @@ -11,6 +11,10 @@

{{t 'diagnosis'}}

+ + +

{{t 'migrations'}}

+

{{t 'monitoring'}}

diff --git a/src/views/tools/tools_migrations.ms b/src/views/tools/tools_migrations.ms new file mode 100644 index 00000000..57177e4a --- /dev/null +++ b/src/views/tools/tools_migrations.ms @@ -0,0 +1,78 @@ +
+ {{t 'home'}} + {{t 'tools'}} + {{t 'migrations'}} +
+ +
+ +{{#if upToDate}} +
+ No migrations to be run ! +
+{{else}} +
+ There are pending migrations that need to be ran. +
+{{/if}} + +
+
+

{{t 'pending_migrations'}} + +

+
+ + {{#if migrations}} +
+ {{#migrations}} +
+

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

+

+ (No description available) +

+
+ {{/migrations}} +
+ {{else}} +
+ No pending migrations ! +
+ {{/if}} +
+ +
+
+

{{t 'previous_migrations'}} +

+
+ + {{#if previous_migrations}} +
+ {{#previous_migrations}} +
+

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

+

+ (No description available) +

+
+ {{/previous_migrations}} +
+ {{else}} +
+ No previous migrations. +
+ {{/if}} +
+ + +