118
layer_id_can_edit = []
else:
user_perm = [perm.layer.id for perm in
ProjectLayerPermission.objects.filter(
project_permission__project=project,
project_permission__user=request.user) if perm.type == 'E']
groups_perm = [perm.layer.id for perm in
ProjectLayerPermission.objects.filter(
project_permission__project=project,
project_permission__group__in=request.user.groups.all()) if
perm.type == 'E']
layers_id_edit = set(user_perm + groups_perm)
set_perms()
elif dashboard_perm == 'S':
set_perms(request.user.is_superuser)
elif dashboard_perm == 'O':
set_perms(request.user == project.owner)
elif dashboard_perm == 'V':
set_perms(permission['view'])
elif dashboard_perm == 'E':
set_perms(permission['change'])
elif dashboard_perm == 'F':
set_perms(permission['delete'])
context['dashboard_manage'] = layer_id_can_edit
# выгрузка csv из tab-viewer
tabviewer_download_perm = project.tabviewer_download_permission
if not tabviewer_download_perm:
tabviewer_download_perm =
site_config.project_tabviewer_download_default_permission
if permission['partial']:
context['tabviewer_download_enable'] = False
elif tabviewer_download_perm == 'S':
context['tabviewer_download_enable'] = request.user.is_superuser
elif tabviewer_download_perm == 'O':
context['tabviewer_download_enable'] = request.user == project.owner
elif tabviewer_download_perm == 'V':
context['tabviewer_download_enable'] = permission['view']
elif tabviewer_download_perm == 'E':
context['tabviewer_download_enable'] = permission['change']
elif tabviewer_download_perm == 'F':
context['tabviewer_download_enable'] = permission['delete']
else:
context['tabviewer_download_enable'] = False
# картометрический анализ
tools = json.loads(project.parameters).get('tools', {'router': True, 'cartometry':
True})
if tools['cartometry']:
cartometry_perm = project.cartometry_permission
if not cartometry_perm:
cartometry_perm = site_config.project_cartometry_default_permission
if request.user.is_anonymous or permission['partial']:
context['cartometry_enable'] = False
elif cartometry_perm == 'V':
context['cartometry_enable'] = permission['view']
elif cartometry_perm == 'E':
context['cartometry_enable'] = permission['change']
elif cartometry_perm == 'F':
context['cartometry_enable'] = permission['delete']
else: