From beb58bbc3638fc7dddc0def379463f716ed8b0e8 Mon Sep 17 00:00:00 2001 From: Stephan Richter Date: Mon, 5 Jan 2026 13:52:31 +0100 Subject: [PATCH 1/6] added remote call to restart vj.srsoftware.de Signed-off-by: Stephan Richter --- .gitea/workflows/docker.yaml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.gitea/workflows/docker.yaml b/.gitea/workflows/docker.yaml index ad8cc97a..32f786a6 100644 --- a/.gitea/workflows/docker.yaml +++ b/.gitea/workflows/docker.yaml @@ -41,6 +41,13 @@ jobs: docker push ${{ secrets.REGISTRY_PATH }}/umbrella:${{ gitea.ref_name }} docker push ${{ secrets.REGISTRY_PATH }}/umbrella:$TAG + - name: Restart jv.srsoftware.de + run: | + curl -X POST \ + -H 'Authorization: Bearer ${{ secrets.MAKE_BEARER }}' \ + -d vj_start \ + https://make.srsoftware.de/launch + Clean-Registry: runs-on: ubuntu-latest steps: From 77e546bd4b819e36d640faacecd379020afdab17 Mon Sep 17 00:00:00 2001 From: Stephan Richter Date: Mon, 5 Jan 2026 13:54:12 +0100 Subject: [PATCH 2/6] fixed typo Signed-off-by: Stephan Richter --- .gitea/workflows/docker.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/docker.yaml b/.gitea/workflows/docker.yaml index 32f786a6..a112912c 100644 --- a/.gitea/workflows/docker.yaml +++ b/.gitea/workflows/docker.yaml @@ -41,7 +41,7 @@ jobs: docker push ${{ secrets.REGISTRY_PATH }}/umbrella:${{ gitea.ref_name }} docker push ${{ secrets.REGISTRY_PATH }}/umbrella:$TAG - - name: Restart jv.srsoftware.de + - name: Restart vj.srsoftware.de run: | curl -X POST \ -H 'Authorization: Bearer ${{ secrets.MAKE_BEARER }}' \ From 11d14afb00a662c82104cba133675997641cb6fe Mon Sep 17 00:00:00 2001 From: Stephan Richter Date: Mon, 5 Jan 2026 14:01:55 +0100 Subject: [PATCH 3/6] working on curl request Signed-off-by: Stephan Richter --- .gitea/workflows/docker.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/docker.yaml b/.gitea/workflows/docker.yaml index a112912c..38d7cef4 100644 --- a/.gitea/workflows/docker.yaml +++ b/.gitea/workflows/docker.yaml @@ -43,8 +43,8 @@ jobs: - name: Restart vj.srsoftware.de run: | - curl -X POST \ - -H 'Authorization: Bearer ${{ secrets.MAKE_BEARER }}' \ + echo curl -X POST \ + -H "Authorization: Bearer ${{ secrets.MAKE_BEARER }}" \ -d vj_start \ https://make.srsoftware.de/launch From e92a4bedb986d64d249c3b1c57661c9391b88dce Mon Sep 17 00:00:00 2001 From: Stephan Richter Date: Mon, 5 Jan 2026 14:06:32 +0100 Subject: [PATCH 4/6] working on curl request Signed-off-by: Stephan Richter --- .gitea/workflows/docker.yaml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.gitea/workflows/docker.yaml b/.gitea/workflows/docker.yaml index 38d7cef4..b6353cde 100644 --- a/.gitea/workflows/docker.yaml +++ b/.gitea/workflows/docker.yaml @@ -43,10 +43,7 @@ jobs: - name: Restart vj.srsoftware.de run: | - echo curl -X POST \ - -H "Authorization: Bearer ${{ secrets.MAKE_BEARER }}" \ - -d vj_start \ - https://make.srsoftware.de/launch + curl -X POST -H "Authorization: Bearer ${{ secrets.MAKE_BEARER }}" -d vj_start https://make.srsoftware.de/launch Clean-Registry: runs-on: ubuntu-latest From fe0068f5ed351d27d634702802b609cf5107feda Mon Sep 17 00:00:00 2001 From: Stephan Richter Date: Mon, 5 Jan 2026 14:13:47 +0100 Subject: [PATCH 5/6] added condition to run restart step only on main branch Signed-off-by: Stephan Richter --- .gitea/workflows/docker.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitea/workflows/docker.yaml b/.gitea/workflows/docker.yaml index b6353cde..191dbc9d 100644 --- a/.gitea/workflows/docker.yaml +++ b/.gitea/workflows/docker.yaml @@ -42,6 +42,7 @@ jobs: docker push ${{ secrets.REGISTRY_PATH }}/umbrella:$TAG - name: Restart vj.srsoftware.de + if: github.ref == 'refs/heads/main' run: | curl -X POST -H "Authorization: Bearer ${{ secrets.MAKE_BEARER }}" -d vj_start https://make.srsoftware.de/launch From 43ebb241e8732bd877ec35da6dc3c132873c4353 Mon Sep 17 00:00:00 2001 From: Stephan Richter Date: Sat, 10 Jan 2026 15:25:16 +0100 Subject: [PATCH 6/6] =?UTF-8?q?trying=20to=20achieve=20correct=20display?= =?UTF-8?q?=20update=20on=20page=20content=20update=20=E2=80=93=20I=20have?= =?UTF-8?q?=20a=20feeling=20that=20this=20still=20doesn`t=20work=20reliabl?= =?UTF-8?q?y?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Stephan Richter --- .../de/srsoftware/umbrella/core/model/WikiPage.java | 4 ++-- frontend/src/routes/wiki/View.svelte | 10 +++++----- .../java/de/srsoftware/umbrella/wiki/SqliteDb.java | 6 ++++-- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/core/src/main/java/de/srsoftware/umbrella/core/model/WikiPage.java b/core/src/main/java/de/srsoftware/umbrella/core/model/WikiPage.java index 61d9b91e..5cfaf187 100644 --- a/core/src/main/java/de/srsoftware/umbrella/core/model/WikiPage.java +++ b/core/src/main/java/de/srsoftware/umbrella/core/model/WikiPage.java @@ -18,7 +18,7 @@ public class WikiPage implements Mappable { private final long id; private String title; private int version; - private final List versions = new ArrayList<>(); + private final Set versions = new TreeSet<>(); private final Map members = new HashMap<>(); private String content; private Set dirtyFields = new HashSet<>(); @@ -157,7 +157,7 @@ public class WikiPage implements Mappable { return version; } - public List versions(){ + public Set versions(){ return versions; } } diff --git a/frontend/src/routes/wiki/View.svelte b/frontend/src/routes/wiki/View.svelte index c93182b8..56dbeeed 100644 --- a/frontend/src/routes/wiki/View.svelte +++ b/frontend/src/routes/wiki/View.svelte @@ -14,7 +14,7 @@ let detail = $state(false); let { key, version } = $props(); - let page = $state(null); + let page = $state({}); let router = useTinyRouter(); let members = $state({}); let editable = $derived(page.members[user.id].permission.code<4); @@ -72,9 +72,9 @@ async function loadContent(res){ if (res.ok){ - page = null; - page = await res.json(); - page.versions.sort((a,b)=>b-a); + let json = await res.json(); + json.versions.sort((a,b)=>b-a); + page = { ...json }; yikes(); return true; } else { @@ -131,7 +131,7 @@ $effect(loadPage); -{#if page} +{#if page && page.versions}
{t('version')} diff --git a/wiki/src/main/java/de/srsoftware/umbrella/wiki/SqliteDb.java b/wiki/src/main/java/de/srsoftware/umbrella/wiki/SqliteDb.java index 780f14d3..fb086cdf 100644 --- a/wiki/src/main/java/de/srsoftware/umbrella/wiki/SqliteDb.java +++ b/wiki/src/main/java/de/srsoftware/umbrella/wiki/SqliteDb.java @@ -268,8 +268,10 @@ public class SqliteDb extends BaseDb implements WikiDb { @Override public WikiPage save(WikiPage page) { try { - if (page.isDirty(CONTENT) || page.isDirty(ID) || page.isDirty(TITLE)) insertInto(TABLE_PAGES,ID,VERSION,TITLE,CONTENT) - .values(page.id(),page.version(),page.title(),page.content()).execute(db).close(); + if (page.isDirty(CONTENT) || page.isDirty(ID) || page.isDirty(TITLE)) { + insertInto(TABLE_PAGES,ID,VERSION,TITLE,CONTENT).values(page.id(),page.version(),page.title(),page.content()).execute(db).close(); + page.versions().add(page.version()); + } if (page.isDirty(MEMBERS)){ Query.delete().from(TABLE_PAGES_USERS).where(PAGE_ID, equal(page.id())).where(USER_ID,Condition.notIn(page.members().keySet().toArray())).execute(db); var query = replaceInto(TABLE_PAGES_USERS,PAGE_ID,USER_ID,PERMISSIONS);