Skip to content

Commit b14d4ba

Browse files
Merge branch 'main' of github.com:mausbrand/diwodo-demo
2 parents 1bad2f1 + 1c0c926 commit b14d4ba

File tree

4 files changed

+25
-30
lines changed

4 files changed

+25
-30
lines changed

Pipfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ verify_ssl = true
44
name = "pypi"
55

66
[packages]
7-
viur-core = "==3.7.0.dev3"
7+
viur-core = {file = "../viur-core", editable = true}
88

99
[dev-packages]
1010
viur-cli = "~=2.0"

Pipfile.lock

+4-7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

deploy/modules/todo.py

+19-21
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,16 @@ def addSkel(self):
6565
skel.user = None
6666
return skel
6767

68+
def listFilter(self, query):
69+
if query := super().listFilter(query):
70+
if not utils.string.is_prefix(self.render.kind, "json.vi"):
71+
cuser = current.user.get()
72+
query.mergeExternalFilter({
73+
"user.dest.key": cuser["key"],
74+
})
75+
76+
return query
77+
6878
@exposed
6979
@skey(allow_empty=True)
7080
@access("todo-edit")
@@ -96,30 +106,18 @@ class TodoAssignSkel(ActionSkel):
96106
action_skel.setBoneValue("todo", key, append=True)
97107

98108
if not kwargs or not action_skel.fromClient(kwargs):
99-
# TODO: Provide generic render action skel
100-
return self.render.edit(action_skel, "assign")
109+
return self.render.render("assign", action_skel)
101110

102-
# TODO: Add program logic here
103-
# TODO: Create skel.update() function for transactional in-place update
104111
for todo in action_skel["todo"]:
105-
skel = self.editSkel()
106-
skel.fromDB(todo["dest"]["key"])
107-
skel["status"] = "open"
108-
skel.setBoneValue("user", action_skel["user"]["dest"]["key"])
109-
skel.toDB()
110-
111-
# TODO: Provide generic render action success
112-
return self.render.editSuccess(action_skel, "assignSuccess")
113-
114-
def listFilter(self, query):
115-
if query := super().listFilter(query):
116-
if not utils.string.is_prefix(self.render.kind, "json.vi"):
117-
cuser = current.user.get()
118-
query.mergeExternalFilter({
119-
"user.dest.key": cuser["key"],
120-
})
112+
self.editSkel().update(
113+
values={
114+
"status": "open",
115+
"user": action_skel["user"]["dest"]["key"],
116+
},
117+
key=todo["dest"]["key"],
118+
)
121119

122-
return query
120+
return self.render.render("assignSuccess", action_skel)
123121

124122

125123
Todo.html = True

deploy/skeletons/todo.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ class TodoSkel(skeleton.Skeleton):
5555
status = SelectBone(
5656
descr="Status",
5757
required=True,
58-
defaultValue="open",
58+
defaultValue="new",
5959
values={
6060
"new": "Neu",
6161
"open": "Zugewiesen",

0 commit comments

Comments
 (0)