--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/design/sequences/protocole.edit.diag Mon Jul 17 16:37:09 2017 +0200
@@ -0,0 +1,33 @@
+seqdiag {
+
+ === show ===
+
+ browser -> client [label="open group info"]
+ client -> server [label="get last protocol for that group"]
+ server -> server [label="collect ids + info of metacategories in current protocol"]
+ client <- server [label="list of indexed metacategories"]
+ browser <- client [label="render list of metacategories in current protocol"]
+
+ === edit ===
+
+ browser -> client [label="edit existing metacategory"]
+ client -> client [label="stack changes"]
+ browser <- client [label="activate submit button"]
+
+ browser -> client [label="add new metacategory"]
+ client -> client [label="add new line to list of metacategories"]
+ browser <- client [label="(if not) activate submit button"]
+
+ === submit ===
+
+ browser -> client [label="submit new list of metacategories"];
+ client --> browser [label="set form as not editable and notify loading"];
+
+ client -> server [label="write new protocol"]
+ server -> server [label="generate new protocol id"]
+ server --> server [label="create new metacategories"]
+ server -> server [label="create new version of updated metacategories"]
+ client <- server [label="return new protocol id and list of indexed metacategories"]
+ browser <-- client [label="set form as editable but not submitable (no change)"]
+
+}