53
53
delete_scene_objects ,
54
54
get_persist_scenes_all ,
55
55
get_persist_scenes_ns ,
56
+ get_scene_objects ,
56
57
)
57
58
from .serializers import (
58
59
NamespaceNameSerializer ,
@@ -206,6 +207,8 @@ def namespace_perm_detail(request, pk):
206
207
Handle Namespace Permissions Edit page, get page load and post submit requests.
207
208
- Handles namespace permissions changes and deletes.
208
209
"""
210
+ version = TOPIC_SUPPORTED_API_VERSIONS [0 ] # TODO (mwfarb): resolve missing request.version
211
+
209
212
if not namespace_edit_permission (user = request .user , namespace = pk ):
210
213
messages .error (request , f"User does not have permission for: { pk } ." )
211
214
return redirect ("users:user_profile" )
@@ -244,6 +247,8 @@ def scene_perm_detail(request, pk):
244
247
Handle Scene Permissions Edit page, get page load and post submit requests.
245
248
- Handles scene permissions changes and deletes.
246
249
"""
250
+ version = TOPIC_SUPPORTED_API_VERSIONS [0 ] # TODO (mwfarb): resolve missing request.version
251
+
247
252
if not scene_edit_permission (user = request .user , scene = pk ):
248
253
messages .error (request , f"User does not have permission for: { pk } ." )
249
254
return redirect ("users:user_profile" )
@@ -267,7 +272,7 @@ def scene_perm_detail(request, pk):
267
272
user = request .user ,
268
273
username = request .user .username ,
269
274
ids = {"userclient" : f"{ request .user .username } -objects-delete" },
270
- version = request . version ,
275
+ version = version ,
271
276
)
272
277
# delete account scene data
273
278
scene .delete ()
@@ -282,6 +287,14 @@ def scene_perm_detail(request, pk):
282
287
else :
283
288
form = SceneForm (instance = scene )
284
289
290
+ token = all_scenes_read_token (version )
291
+ objects = get_scene_objects (token , pk )
292
+ objects_updated = None
293
+ if len (objects ) > 0 :
294
+ updated_ts = sorted (objects , reverse = True , key = itemgetter ("updatedAt" ))[0 ]["updatedAt" ]
295
+ updated_dt = datetime .datetime .fromisoformat (updated_ts .replace ("Z" , "+00:00" ))
296
+ objects_updated = f"{ updated_dt .strftime ('%B %d, %Y, %H:%M:%S' )} UTC"
297
+
285
298
return render (
286
299
request = request ,
287
300
template_name = "users/scene_perm_detail.html" ,
@@ -290,6 +303,8 @@ def scene_perm_detail(request, pk):
290
303
"owners" : owners ,
291
304
"namespace_editors" : namespace_editors ,
292
305
"namespace_viewers" : namespace_viewers ,
306
+ "objects_length" : len (objects ),
307
+ "objects_updated" : objects_updated ,
293
308
"form" : form ,
294
309
},
295
310
)
@@ -300,6 +315,8 @@ def device_perm_detail(request, pk):
300
315
Handle Device Permissions Edit page, get page load and post submit requests.
301
316
- Handles device permissions changes and deletes.
302
317
"""
318
+ version = TOPIC_SUPPORTED_API_VERSIONS [0 ] # TODO (mwfarb): resolve missing request.version
319
+
303
320
if not device_edit_permission (user = request .user , device = pk ):
304
321
messages .error (request , f"User does not have permission for: { pk } ." )
305
322
return redirect ("users:user_profile" )
@@ -327,7 +344,7 @@ def device_perm_detail(request, pk):
327
344
username = request .user .username ,
328
345
ns_device = device .name ,
329
346
duration = datetime .timedelta (days = 30 ),
330
- version = request . version ,
347
+ version = version ,
331
348
)
332
349
333
350
form = DeviceForm (instance = device )
0 commit comments