summaryrefslogtreecommitdiff
path: root/archaeological_operations/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'archaeological_operations/views.py')
-rw-r--r--archaeological_operations/views.py72
1 files changed, 40 insertions, 32 deletions
diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py
index 20193e197..7b6a56597 100644
--- a/archaeological_operations/views.py
+++ b/archaeological_operations/views.py
@@ -23,14 +23,14 @@ from jinja2 import TemplateSyntaxError
from django.conf import settings
from django.core.exceptions import PermissionDenied
from django.db.models import Q
-from django.forms.utils import ErrorDict, ErrorList
+from django.forms.utils import ErrorList
from django.http import HttpResponse, HttpResponseRedirect, Http404
from django.shortcuts import render, redirect
from django.urls import reverse
from django.views.generic import RedirectView
from ishtar_common.utils import ugettext_lazy as _, pgettext_lazy
from archaeological_operations.utils import parse_parcels
-from django.forms import formset_factory, ValidationError
+from django.forms import ValidationError
from archaeological_operations import models
from archaeological_operations import forms
@@ -43,7 +43,7 @@ from ishtar_common.models import (
DocumentTemplate,
)
from archaeological_context_records.models import ContextRecord
-from ishtar_common.utils import put_session_message, check_rights_condition
+from ishtar_common.utils import check_permissions_condition
from ishtar_common.views import (
gen_generate_doc,
QAItemEditForm,
@@ -58,14 +58,12 @@ from ishtar_common.wizards import SearchWizard
def autocomplete_patriarche(request):
+ ishtaruser = getattr(request.user, "ishtaruser", None)
+ if not ishtaruser:
+ return HttpResponse(content_type="text/plain")
if (
- not request.user.has_perm("ishtar_common.view_operation", models.Operation)
- and not request.user.has_perm(
- "ishtar_common.view_own_operation", models.Operation
- )
- and not request.user.ishtaruser.has_right(
- "operation_search", session=request.session
- )
+ not ishtaruser.has_permission("archaeological_operations.view_operation")
+ and not ishtaruser.has_permission("archaeological_operations.view_own_operation")
):
return HttpResponse(content_type="text/plain")
if not request.GET.get("term"):
@@ -88,11 +86,13 @@ def autocomplete_patriarche(request):
def autocomplete_archaeologicalsite(request):
- if not request.user.has_perm(
- "archaeological_operations.view_archaeologicalsite", models.ArchaeologicalSite
- ) and not request.user.has_perm(
+ ishtaruser = getattr(request.user, "ishtaruser", None)
+ if not ishtaruser:
+ return HttpResponse(content_type="text/plain")
+ if not ishtaruser.has_permission(
+ "archaeological_operations.view_archaeologicalsite"
+ ) and not ishtaruser.has_permission(
"archaeological_operations.view_own_archaeologicalsite",
- models.ArchaeologicalSite,
):
return HttpResponse(content_type="text/plain")
if not request.GET.get("term"):
@@ -121,14 +121,14 @@ new_archaeologicalsite = new_qa_item(
def autocomplete_operation(request):
+ ishtaruser = getattr(request.user, "ishtaruser", None)
+ if not ishtaruser:
+ return HttpResponse(content_type="text/plain")
# person_types = request.user.ishtaruser.person.person_type
if (
- not request.user.has_perm("ishtar_common.view_operation", models.Operation)
- and not request.user.has_perm(
- "ishtar_common.view_own_operation", models.Operation
- )
- and not request.user.ishtaruser.has_right(
- "operation_search", session=request.session
+ not ishtaruser.has_permission("archaeological_operations.view_operation")
+ and not ishtaruser.has_permission(
+ "archaeological_operations.view_own_operation"
)
):
return HttpResponse(content_type="text/plain")
@@ -161,10 +161,13 @@ def autocomplete_operation(request):
def get_available_operation_code(request, year=None):
- if not request.user.has_perm(
- "ishtar_common.view_operation", models.Operation
- ) and not request.user.has_perm(
- "ishtar_common.view_own_operation", models.Operation
+ ishtaruser = getattr(request.user, "ishtaruser", None)
+ if not ishtaruser:
+ return HttpResponse(content_type="text/plain")
+ if not ishtaruser.has_permission(
+ "archaeological_operations.view_operation"
+ ) and not ishtaruser.has_permission(
+ "archaeological_operations.view_own_operation"
):
return HttpResponse(content_type="text/plain")
data = json.dumps({"id": models.Operation.get_available_operation_code(year)})
@@ -211,9 +214,8 @@ wizard_steps = [
def get_check_files_for_operation(other_check=None):
def func(self):
- if not get_current_profile().files or not check_rights_condition(["view_file"])(
- self
- ):
+ if not get_current_profile().files or \
+ not check_permissions_condition(["archaeological_files.view_file"])(self):
return False
if not other_check:
return True
@@ -975,7 +977,10 @@ def administrativeactfile_document(
search_form = AdministrativeActTreatmentFileFormSelection
document_type = "TF"
- if not request.user.has_perm("view_administrativeact", models.AdministrativeAct):
+ ishtaruser = getattr(request.user, "ishtaruser", None)
+ if not ishtaruser:
+ return HttpResponse(content_type="text/plain")
+ if not ishtaruser.has_permission("archaeological_operations.view_administrativeact"):
return HttpResponse(content_type="text/plain")
dct = {}
DocumentGenerationAdminActForm = forms.DocumentGenerationAdminActForm
@@ -1032,10 +1037,13 @@ def administrativeactfile_document(
def autocomplete_administrativeact(request):
- if not request.user.has_perm(
- "archaeological_operations.view_administrativeact", models.AdministrativeAct
- ) and not request.user.has_perm(
- "archaeological_operations.view_own_administrativeact", models.AdministrativeAct
+ ishtaruser = getattr(request.user, "ishtaruser", None)
+ if not ishtaruser:
+ return HttpResponse(content_type="text/plain")
+ if not ishtaruser.has_permission(
+ "archaeological_operations.view_administrativeact"
+ ) and not ishtaruser.has_permission(
+ "archaeological_operations.view_own_administrativeact"
):
return HttpResponse(content_type="text/plain")
if not request.GET.get("term"):