updated featurecreep

This commit is contained in:
kolaente 2018-08-29 08:02:12 +02:00
parent 5db306bacc
commit f71f98b8f4
No known key found for this signature in database
GPG key ID: F40E70337AB24C9B

View file

@ -17,7 +17,6 @@
* Liste wo der Punkt drauf ist * Liste wo der Punkt drauf ist
* Timestamps * Timestamps
### Websockets ### Websockets
Das ganze soll als Websocket zur verfg gestellt werden, der dann automatisch bescheidsagt wenn sich was ändert. Benachrichtigungen machen clients. Das ganze soll als Websocket zur verfg gestellt werden, der dann automatisch bescheidsagt wenn sich was ändert. Benachrichtigungen machen clients.
@ -29,18 +28,22 @@ Ab v0.3 können wir mit clients anfangen.
#### v0.1 #### v0.1
* [x] Listen erstellen/bearbeiten/löschen * [x] Listen erstellen/bearbeiten/löschen
* [x] Ansehen * [x] Ansehen
* [x] Übersicht * [x] Übersicht
* [x] Einzelne liste mit allen todopunkten * [x] Einzelne liste mit allen todopunkten
* [x] Erstellen * [x] Erstellen
* [x] Bearbeiten * [x] Bearbeiten
* [x] Löschen * [x] Löschen
* [x] Todopunkte hinzufügen/abhaken/löschen * [x] Todopunkte hinzufügen/abhaken/löschen
* [x] Erstellen * [x] Erstellen
* [x] Bearbeiten (abhaken) * [x] Bearbeiten (abhaken)
* [x] Löschen * [x] Löschen
* [x] Überall nochmal überprüfen dass der Nutzer auch das Recht hat die Liste zu löschen * [x] Überall nochmal überprüfen dass der Nutzer auch das Recht hat die Liste zu löschen
* [x] Swaggerdocs !!!! * [x] Swaggerdocs !!!!
Neues Konzept: _Namespaces_ Neues Konzept: _Namespaces_
@ -51,12 +54,14 @@ wird automatisch einer für den Nutzer erstellt.
Es gibt Lese- und Schreibrechte pro Namespace und Nutzer. Es gibt Lese- und Schreibrechte pro Namespace und Nutzer.
Namespace: Namespace:
* ID * ID
* Name * Name
* OwnerID * OwnerID
* Timestamps * Timestamps
Teams: Teams:
* ID * ID
* Name * Name
* Description * Description
@ -65,18 +70,21 @@ Teams:
* Timestamps * Timestamps
TeamMembers: TeamMembers:
* ID * ID
* TeamID * TeamID
* MemberID * MemberID
* Timestamps * Timestamps
TeamNamespaces: TeamNamespaces:
* ID * ID
* TeamID * TeamID
* NamespaceID * NamespaceID
* Timestamps * Timestamps
TeamLists: TeamLists:
* ID * ID
* TeamID * TeamID
* ListID * ListID
@ -101,6 +109,7 @@ Teams sind global, d.h. Ein Team kann mehrere Namespaces verwalten.
#### Neues Todo #### Neues Todo
* [x] Teams * [x] Teams
* [x] Erstellen * [x] Erstellen
* [x] Ansehen * [x] Ansehen
* [x] Bearbeiten * [x] Bearbeiten
@ -109,25 +118,28 @@ Teams sind global, d.h. Ein Team kann mehrere Namespaces verwalten.
~~Ein zu lösendes Problem: Wie regelt man die Berechtigungen um Teams zu verwalten?~~ ~~Ein zu lösendes Problem: Wie regelt man die Berechtigungen um Teams zu verwalten?~~
* [x] Namespaces * [x] Namespaces
* [x] Erstellen * [x] Erstellen
* [x] Ansehen * [x] Ansehen
* [x] Bearbeiten * [x] Bearbeiten
* [x] Löschen * [x] Löschen
* [x] Teams hinzufügen. Der Nutzer kriegt nur Teams angezeigt die er erstellt hat. * [x] Teams hinzufügen. Der Nutzer kriegt nur Teams angezeigt die er erstellt hat.
* [x] Alle Listen eines Namespaces anzeigen * [x] Alle Listen eines Namespaces anzeigen
* [x] Listen * [x] Listen
* [x] Listen zu einem Namespace hinzufügen * [x] Listen zu einem Namespace hinzufügen
#### v0.2 #### v0.2
* [x] Listen teilbar * [x] Listen teilbar
* [ ] Mit anderen Nutzern * [ ] Mit anderen Nutzern
* [x] Teams * [x] Teams
* [ ] Mit Link * [ ] Mit Link
* [ ] Offen * [ ] Offen
* [ ] Passwortgeschützt * [ ] Passwortgeschützt
* [x] Rechtemanagement (Und damit Unterscheidung zwischen Ownern und Mitgleidern) * [x] Rechtemanagement (Und damit Unterscheidung zwischen Ownern und Mitgleidern)
* [x] Mange Team members * [x] Mange Team members
* [x] Hinzufügen * [x] Hinzufügen
* [x] Löschen * [x] Löschen
@ -183,7 +195,6 @@ doch auch in einer Funktion machbar sein.
* [ ] Viper für config einbauen und ini rauswerfen * [ ] Viper für config einbauen und ini rauswerfen
* [ ] Docs für installationsanleitung * [ ] Docs für installationsanleitung
* [ ] Tests für Rechtekram * [ ] Tests für Rechtekram
* [ ] "Apiformat" Methoden, damit in der Ausgabe zb kein Passwort drin ist..., oder created/updated von Nutzern... oder ownerID nicht drin ist sondern nur das ownerobject * [ ] "Apiformat" Methoden, damit in der Ausgabe zb kein Passwort drin ist..., oder created/updated von Nutzern... oder ownerID nicht drin ist sondern nur das ownerobject
* [x] Rechte überprüfen: * [x] Rechte überprüfen:
* [x] Listen erstellen * [x] Listen erstellen
@ -191,8 +202,7 @@ doch auch in einer Funktion machbar sein.
* [x] Listenpunkte hinzufügen * [x] Listenpunkte hinzufügen
* [x] Listenpunkte bearbeiten * [x] Listenpunkte bearbeiten
* [ ] An "accepted" für post/put payloads schrauben, man soll da zb keine id/created/updated/etc übergeben können. * [ ] An "accepted" für post/put payloads schrauben, man soll da zb keine id/created/updated/etc übergeben können.
* [ ] Globale Limits für anlegbare Listen + Namespaces * [ ] Globale Limits für anlegbare Listen + Namespaces
* [ ] Mgl., dass die Instanz geschlossen ist, also sich keiner registrieren kann, und man sich einloggen muss * [ ] Mgl., dass die Instanz geschlossen ist, also sich keiner registrieren kann, und man sich einloggen muss
* [ ] mgl. zum Emailmaskieren haben (in den Nutzereinstellungen, wenn man seine Email nicht an alle Welt rausposaunen will) * [ ] mgl. zum Emailmaskieren haben (in den Nutzereinstellungen, wenn man seine Email nicht an alle Welt rausposaunen will)
* [ ] Mgl. zum Accountlöschen haben (so richtig krass mit emailverifiezierung und dass alle Privaten Listen gelöscht werden und man alle geteilten entweder wem übertragen muss oder auf provat stellen) * [ ] Mgl. zum Accountlöschen haben (so richtig krass mit emailverifiezierung und dass alle Privaten Listen gelöscht werden und man alle geteilten entweder wem übertragen muss oder auf privat stellen)