summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--archaeological_finds/forms_treatments.py8
-rw-r--r--ishtar_common/fixtures/ishtar-access-control.json1
-rw-r--r--ishtar_common/management/commands/export_access_controls.py89
-rw-r--r--ishtar_common/management/commands/import_access_controls.py106
4 files changed, 200 insertions, 4 deletions
diff --git a/archaeological_finds/forms_treatments.py b/archaeological_finds/forms_treatments.py
index 58429f4c9..52971bf6d 100644
--- a/archaeological_finds/forms_treatments.py
+++ b/archaeological_finds/forms_treatments.py
@@ -129,12 +129,12 @@ class BaseTreatmentForm(ManageOldType, forms.Form):
validators=[valid_id(Container)], required=False)
external_id = forms.CharField(
label=_(u"External ref."), max_length=200, required=False)
- comment = forms.CharField(label=_(u"Comment"),
- widget=forms.Textarea, required=False)
- description = forms.CharField(label=_(u"Description"),
- widget=forms.Textarea, required=False)
goal = forms.CharField(label=_(u"Goal"),
widget=forms.Textarea, required=False)
+ description = forms.CharField(label=_(u"Description"),
+ widget=forms.Textarea, required=False)
+ comment = forms.CharField(label=_(u"Comment"),
+ widget=forms.Textarea, required=False)
start_date = forms.DateField(label=_(u"Start date"), required=False,
widget=widgets.JQueryDate)
end_date = forms.DateField(label=_(u"Closing date"), required=False,
diff --git a/ishtar_common/fixtures/ishtar-access-control.json b/ishtar_common/fixtures/ishtar-access-control.json
new file mode 100644
index 000000000..c44418f07
--- /dev/null
+++ b/ishtar_common/fixtures/ishtar-access-control.json
@@ -0,0 +1 @@
+{"content_types": [{"model": "activitytype", "name": "Activity Type", "app_label": "archaeological_context_records"}, {"model": "acttype", "name": "Act type", "app_label": "archaeological_operations"}, {"model": "administrativeact", "name": "Administrative act", "app_label": "archaeological_operations"}, {"model": "file", "name": "Archaeological file", "app_label": "archaeological_files"}, {"model": "filetype", "name": "Archaeological file type", "app_label": "archaeological_files"}, {"model": "archaeologicalsite", "name": "Archaeological site", "app_label": "archaeological_operations"}, {"model": "arrondissement", "name": "arrondissement", "app_label": "ishtar_common"}, {"model": "author", "name": "Author", "app_label": "ishtar_common"}, {"model": "authortype", "name": "Author type", "app_label": "ishtar_common"}, {"model": "basefind", "name": "Base find", "app_label": "archaeological_finds"}, {"model": "batchtype", "name": "Batch type", "app_label": "archaeological_finds"}, {"model": "canton", "name": "canton", "app_label": "ishtar_common"}, {"model": "collection", "name": "Collection", "app_label": "archaeological_warehouse"}, {"model": "conservatorystate", "name": "Conservatory state", "app_label": "archaeological_finds"}, {"model": "container", "name": "Container", "app_label": "archaeological_warehouse"}, {"model": "containerlocalisation", "name": "Container localisation", "app_label": "archaeological_warehouse"}, {"model": "containertype", "name": "Container type", "app_label": "archaeological_warehouse"}, {"model": "contenttype", "name": "content type", "app_label": "contenttypes"}, {"model": "contextrecord", "name": "Context Record", "app_label": "archaeological_context_records"}, {"model": "contextrecordsource", "name": "Context record documentation", "app_label": "archaeological_context_records"}, {"model": "dating", "name": "Dating", "app_label": "archaeological_context_records"}, {"model": "datingquality", "name": "Dating quality", "app_label": "archaeological_context_records"}, {"model": "datingtype", "name": "Dating type", "app_label": "archaeological_context_records"}, {"model": "department", "name": "Department", "app_label": "ishtar_common"}, {"model": "documentationtype", "name": "Documentation type", "app_label": "archaeological_context_records"}, {"model": "documenttemplate", "name": "Document template", "app_label": "ishtar_common"}, {"model": "excavationtechnictype", "name": "Excavation technic type", "app_label": "archaeological_context_records"}, {"model": "filebydepartment", "name": "file by department", "app_label": "archaeological_files"}, {"model": "find", "name": "Find", "app_label": "archaeological_finds"}, {"model": "findbasket", "name": "find basket", "app_label": "archaeological_finds"}, {"model": "findsource", "name": "Find documentation", "app_label": "archaeological_finds"}, {"model": "finddownstreamtreatments", "name": "find downstream treatments", "app_label": "archaeological_finds"}, {"model": "findtreatments", "name": "find treatments", "app_label": "archaeological_finds"}, {"model": "findupstreamtreatments", "name": "find upstream treatments", "app_label": "archaeological_finds"}, {"model": "format", "name": "Format", "app_label": "ishtar_common"}, {"model": "globalvar", "name": "Global variable", "app_label": "ishtar_common"}, {"model": "group", "name": "group", "app_label": "auth"}, {"model": "historicaladministrativeact", "name": "historical administrative act", "app_label": "archaeological_operations"}, {"model": "historicalbasefind", "name": "historical base find", "app_label": "archaeological_finds"}, {"model": "historicalcontextrecord", "name": "historical context record", "app_label": "archaeological_context_records"}, {"model": "historicalfile", "name": "historical file", "app_label": "archaeological_files"}, {"model": "historicalfind", "name": "historical find", "app_label": "archaeological_finds"}, {"model": "historicaloperation", "name": "historical operation", "app_label": "archaeological_operations"}, {"model": "historicalorganization", "name": "historical organization", "app_label": "ishtar_common"}, {"model": "historicalperson", "name": "historical person", "app_label": "ishtar_common"}, {"model": "historicaltreatment", "name": "historical treatment", "app_label": "archaeological_finds"}, {"model": "historicaltreatmentfile", "name": "historical treatment file", "app_label": "archaeological_finds"}, {"model": "identificationtype", "name": "Identification Type", "app_label": "archaeological_context_records"}, {"model": "import", "name": "Import", "app_label": "ishtar_common"}, {"model": "importercolumn", "name": "Importer - Column", "app_label": "ishtar_common"}, {"model": "importerdefault", "name": "Importer - Default", "app_label": "ishtar_common"}, {"model": "importerdefaultvalues", "name": "Importer - Default value", "app_label": "ishtar_common"}, {"model": "importerduplicatefield", "name": "Importer - Duplicate field", "app_label": "ishtar_common"}, {"model": "formatertype", "name": "Importer - Formater type", "app_label": "ishtar_common"}, {"model": "importermodel", "name": "Importer - Model", "app_label": "ishtar_common"}, {"model": "regexp", "name": "Importer - Regular expression", "app_label": "ishtar_common"}, {"model": "importtarget", "name": "Importer - Target", "app_label": "ishtar_common"}, {"model": "targetkey", "name": "Importer - Target key", "app_label": "ishtar_common"}, {"model": "importertype", "name": "Importer - Type", "app_label": "ishtar_common"}, {"model": "integritytype", "name": "Integrity type", "app_label": "archaeological_finds"}, {"model": "ishtarsiteprofile", "name": "Ishtar site profile", "app_label": "ishtar_common"}, {"model": "ishtaruser", "name": "Ishtar user", "app_label": "ishtar_common"}, {"model": "itemkey", "name": "item key", "app_label": "ishtar_common"}, {"model": "logentry", "name": "log entry", "app_label": "admin"}, {"model": "materialtype", "name": "Material type", "app_label": "archaeological_finds"}, {"model": "migrationhistory", "name": "migration history", "app_label": "south"}, {"model": "objecttype", "name": "Object type", "app_label": "archaeological_finds"}, {"model": "operation", "name": "Operation", "app_label": "archaeological_operations"}, {"model": "operationbydepartment", "name": "operation by department", "app_label": "archaeological_operations"}, {"model": "operationsource", "name": "Operation documentation", "app_label": "archaeological_operations"}, {"model": "recordrelations", "name": "Operation record relation", "app_label": "archaeological_operations"}, {"model": "relationtype", "name": "Operation relation type", "app_label": "archaeological_operations"}, {"model": "operationtype", "name": "Operation type", "app_label": "ishtar_common"}, {"model": "operationtypeold", "name": "Operation type old", "app_label": "archaeological_operations"}, {"model": "organization", "name": "Organization", "app_label": "ishtar_common"}, {"model": "organizationtype", "name": "Organization type", "app_label": "ishtar_common"}, {"model": "parcel", "name": "Parcel", "app_label": "archaeological_operations"}, {"model": "parcelowner", "name": "Parcel owner", "app_label": "archaeological_operations"}, {"model": "permission", "name": "permission", "app_label": "auth"}, {"model": "permittype", "name": "Permit type", "app_label": "archaeological_files"}, {"model": "person", "name": "Person", "app_label": "ishtar_common"}, {"model": "persontype", "name": "Person type", "app_label": "ishtar_common"}, {"model": "preservationtype", "name": "Preservation type", "app_label": "archaeological_finds"}, {"model": "property", "name": "Property", "app_label": "archaeological_finds"}, {"model": "recordrelations", "name": "Record relation", "app_label": "archaeological_context_records"}, {"model": "recordrelationview", "name": "record relation view", "app_label": "archaeological_context_records"}, {"model": "registrationprofile", "name": "registration profile", "app_label": "registration"}, {"model": "relationtype", "name": "Relation type", "app_label": "archaeological_context_records"}, {"model": "remaintype", "name": "Remain type", "app_label": "archaeological_operations"}, {"model": "remarkabilitytype", "name": "Remarkability type", "app_label": "archaeological_finds"}, {"model": "reportstate", "name": "Report state", "app_label": "archaeological_operations"}, {"model": "session", "name": "session", "app_label": "sessions"}, {"model": "site", "name": "site", "app_label": "sites"}, {"model": "sourcetype", "name": "Source type", "app_label": "ishtar_common"}, {"model": "spatialreferencesystem", "name": "Spatial reference system", "app_label": "ishtar_common"}, {"model": "state", "name": "State", "app_label": "ishtar_common"}, {"model": "supporttype", "name": "Support type", "app_label": "ishtar_common"}, {"model": "titletype", "name": "Title type", "app_label": "ishtar_common"}, {"model": "town", "name": "Town", "app_label": "ishtar_common"}, {"model": "treatment", "name": "Treatment", "app_label": "archaeological_finds"}, {"model": "treatmentsource", "name": "Treatment documentation", "app_label": "archaeological_finds"}, {"model": "treatmentfile", "name": "Treatment file", "app_label": "archaeological_finds"}, {"model": "treatmentfilesource", "name": "Treatment file documentation", "app_label": "archaeological_finds"}, {"model": "treatmentfiletype", "name": "Treatment file type", "app_label": "archaeological_finds"}, {"model": "treatmenttype", "name": "Treatment type", "app_label": "archaeological_finds"}, {"model": "treatmentstate", "name": "Type of treatment state", "app_label": "archaeological_finds"}, {"model": "period", "name": "Type Period", "app_label": "archaeological_operations"}, {"model": "saisinetype", "name": "Type Saisine", "app_label": "archaeological_files"}, {"model": "unit", "name": "Unit Type", "app_label": "archaeological_context_records"}, {"model": "user", "name": "user", "app_label": "auth"}, {"model": "warehouse", "name": "Warehouse", "app_label": "archaeological_warehouse"}, {"model": "warehousedivision", "name": "Warehouse division", "app_label": "archaeological_warehouse"}, {"model": "warehousedivisionlink", "name": "warehouse division link", "app_label": "archaeological_warehouse"}, {"model": "warehousetype", "name": "Warehouse type", "app_label": "archaeological_warehouse"}], "person_types": [{"comment": "Un acc\u00e8s limit\u00e9 \u00e0 la base, uniquement en lecture. Apr\u00e8s enregistrement.", "available": true, "txt_idx": "reader_access", "label": "Acc\u00e8s en lecture"}, {"comment": "", "available": true, "txt_idx": "administrator", "label": "Administrateur"}, {"comment": "Responsable de l'am\u00e9nagement (pr\u00e9ventif).", "available": true, "txt_idx": "general_contractor", "label": "Am\u00e9nageur"}, {"comment": "", "available": true, "txt_idx": "responsible_planning_service", "label": "Chef de service instructeur"}, {"comment": "Peut intervenir sur les donn\u00e9es d'une op\u00e9ration sans en \u00eatre responsable.", "available": true, "txt_idx": "collaborator", "label": "Collaborateur scientifique"}, {"comment": "Personne demandant une action sur le mobilier (traitements).", "available": true, "txt_idx": "applicant", "label": "Demandeur"}, {"comment": "Peut g\u00e9rer du mobilier qu'il n'a pas cr\u00e9\u00e9.\r\n\r\n", "available": true, "txt_idx": "warehouse_manager", "label": "Gestionnaire de d\u00e9p\u00f4t"}, {"comment": "", "available": true, "txt_idx": "sra_agent", "label": "Responsable de suivi scientifique"}, {"comment": "Responsable d'op\u00e9ration arch\u00e9ologique.", "available": true, "txt_idx": "head_scientist", "label": "Responsable scientifique"}, {"comment": "Peut utiliser toutes les fonctionnalit\u00e9s du module Administratif.", "available": true, "txt_idx": "secretarial_dept", "label": "Secr\u00e9tariat"}], "groups": [{"name": "Documents de demande de traitement : lecture"}, {"name": "Actes administratifs : modification/suppression"}, {"name": "Op\u00e9rations : cl\u00f4ture"}, {"name": "Dossiers : cl\u00f4ture"}, {"name": "D\u00e9p\u00f4ts : ajout"}, {"name": "D\u00e9p\u00f4ts : modification/suppression"}, {"name": "Actes administratifs rattach\u00e9s : lecture"}, {"name": "Demandes de traitement rattach\u00e9es : ajout"}, {"name": "Documents op\u00e9ration : ajout"}, {"name": "Documents op\u00e9ration : modification/suppression"}, {"name": "Demandes de traitement rattach\u00e9es : lecture"}, {"name": "Dossiers : ajout"}, {"name": "Documents de demande de traitement : ajout"}, {"name": "Dossiers : modification/suppression"}, {"name": "Demandes de traitement rattach\u00e9es : modification/suppression"}, {"name": "Mobilier : ajout"}, {"name": "Mobilier : modification/suppression"}, {"name": "Organisations rattach\u00e9es : lecture"}, {"name": "Op\u00e9rations : ajout"}, {"name": "Documents de demande de traitement : modification/suppression"}, {"name": "Op\u00e9rations : modification/suppression"}, {"name": "Organisations rattach\u00e9es : ajout"}, {"name": "Organisations : ajout"}, {"name": "Organisations : modification/suppression"}, {"name": "Organisations rattach\u00e9es : modification/suppression"}, {"name": "Traitements : ajout"}, {"name": "Traitements : modification/suppression"}, {"name": "Actes administratifs : ajout"}, {"name": "Documents UE : lecture"}, {"name": "Documents UE rattach\u00e9s : lecture"}, {"name": "Documents UE : ajout"}, {"name": "Actes administratifs : lecture"}, {"name": "Auteurs : lecture"}, {"name": "Personnes : ajout"}, {"name": "Personnes : modification/suppression"}, {"name": "Actes administratifs rattach\u00e9s : ajout"}, {"name": "Actes administratifs rattach\u00e9s : modification/suppression"}, {"name": "D\u00e9p\u00f4ts rattach\u00e9s : ajout"}, {"name": "D\u00e9p\u00f4ts rattach\u00e9s : modification/suppression"}, {"name": "Documents op\u00e9ration rattach\u00e9s : ajout"}, {"name": "Documents op\u00e9ration rattach\u00e9s : modification/suppression"}, {"name": "Dossiers rattach\u00e9s : ajout"}, {"name": "Dossiers rattach\u00e9s : modification/suppression"}, {"name": "Traitements rattach\u00e9s : ajout"}, {"name": "Traitements rattach\u00e9s : modification/suppression"}, {"name": "Demandes de traitement : ajout"}, {"name": "Demandes de traitement : lecture"}, {"name": "Demandes de traitement : modification/suppression"}, {"name": "Auteurs : ajout"}, {"name": "Auteurs : modification/suppression"}, {"name": "D\u00e9p\u00f4ts rattach\u00e9s : lecture"}, {"name": "D\u00e9p\u00f4ts : lecture"}, {"name": "Documents op\u00e9ration rattach\u00e9s : lecture"}, {"name": "Documents op\u00e9ration : lecture"}, {"name": "Dossiers rattach\u00e9s : lecture"}, {"name": "Dossiers : lecture"}, {"name": "Mobilier : lecture"}, {"name": "Op\u00e9rations : lecture"}, {"name": "Organisations : lecture"}, {"name": "Personnes : lecture"}, {"name": "Traitements rattach\u00e9s : lecture"}, {"name": "Traitements : lecture"}, {"name": "UE : lecture"}, {"name": "UE : ajout"}, {"name": "UE : modification/suppression"}, {"name": "UE rattach\u00e9es : ajout"}, {"name": "UE rattach\u00e9es : lecture"}, {"name": "UE rattach\u00e9es : modification/suppression"}, {"name": "Personnes rattach\u00e9es : ajout"}, {"name": "Personnes rattach\u00e9es : lecture"}, {"name": "Personnes rattach\u00e9es : modification/suppression"}, {"name": "Op\u00e9rations rattach\u00e9es : ajout"}, {"name": "Op\u00e9rations rattach\u00e9es : lecture"}, {"name": "Op\u00e9rations rattach\u00e9es : modification/suppression"}, {"name": "Mobilier rattach\u00e9 : ajout"}, {"name": "Mobilier rattach\u00e9 : lecture"}, {"name": "Mobilier rattach\u00e9 : modification/suppression"}, {"name": "Documents UE rattach\u00e9s : modification/suppression"}, {"name": "Documents UE : modification/suppression"}, {"name": "Documents UE rattach\u00e9s : ajout"}, {"name": "Documents mobilier : lecture"}, {"name": "Documents mobilier : ajout"}, {"name": "Documents mobilier : modification/suppression"}, {"name": "Documents mobilier rattach\u00e9s : ajout"}, {"name": "Documents mobilier rattach\u00e9s : lecture"}, {"name": "Documents mobilier rattach\u00e9s : modification/suppression"}, {"name": "Documents de traitement : lecture"}, {"name": "Documents de traitement : ajout"}, {"name": "Documents de traitement : modification/suppression"}, {"name": "Documents de traitement rattach\u00e9s : lecture"}, {"name": "Documents de traitement rattach\u00e9s : ajout"}, {"name": "Documents de traitement rattach\u00e9s : modification/suppression"}, {"name": "Documents de demande de traitement rattach\u00e9s : lecture"}, {"name": "Documents de demande de traitement rattach\u00e9s : ajout"}, {"name": "Documents de demande de traitement rattach\u00e9s : modification/suppression"}], "group_perms": [{"group": "Documents de demande de traitement : lecture", "permission": "view_filetreatmentsource"}, {"group": "Actes administratifs : modification/suppression", "permission": "change_administrativeact"}, {"group": "Actes administratifs : modification/suppression", "permission": "delete_administrativeact"}, {"group": "Op\u00e9rations : cl\u00f4ture", "permission": "close_operation"}, {"group": "Dossiers : cl\u00f4ture", "permission": "close_file"}, {"group": "D\u00e9p\u00f4ts : ajout", "permission": "add_warehouse"}, {"group": "D\u00e9p\u00f4ts : modification/suppression", "permission": "change_warehouse"}, {"group": "D\u00e9p\u00f4ts : modification/suppression", "permission": "delete_warehouse"}, {"group": "Actes administratifs rattach\u00e9s : lecture", "permission": "view_own_administrativeact"}, {"group": "Demandes de traitement rattach\u00e9es : ajout", "permission": "add_own_filetreatment"}, {"group": "Documents op\u00e9ration : ajout", "permission": "add_operation"}, {"group": "Documents op\u00e9ration : modification/suppression", "permission": "change_operation"}, {"group": "Documents op\u00e9ration : modification/suppression", "permission": "delete_operation"}, {"group": "Demandes de traitement rattach\u00e9es : lecture", "permission": "view_own_filetreatment"}, {"group": "Dossiers : ajout", "permission": "add_file"}, {"group": "Documents de demande de traitement : ajout", "permission": "add_treatmentfilesource"}, {"group": "Dossiers : modification/suppression", "permission": "change_file"}, {"group": "Dossiers : modification/suppression", "permission": "delete_file"}, {"group": "Demandes de traitement rattach\u00e9es : modification/suppression", "permission": "change_own_filetreatment"}, {"group": "Demandes de traitement rattach\u00e9es : modification/suppression", "permission": "delete_own_filetreatment"}, {"group": "Mobilier : ajout", "permission": "add_basefind"}, {"group": "Mobilier : ajout", "permission": "add_find"}, {"group": "Mobilier : modification/suppression", "permission": "change_basefind"}, {"group": "Mobilier : modification/suppression", "permission": "delete_basefind"}, {"group": "Mobilier : modification/suppression", "permission": "change_find"}, {"group": "Mobilier : modification/suppression", "permission": "delete_find"}, {"group": "Organisations rattach\u00e9es : lecture", "permission": "view_own_organization"}, {"group": "Op\u00e9rations : ajout", "permission": "add_operation"}, {"group": "Documents de demande de traitement : modification/suppression", "permission": "change_treatmentfilesource"}, {"group": "Documents de demande de traitement : modification/suppression", "permission": "delete_treatmentfilesource"}, {"group": "Op\u00e9rations : modification/suppression", "permission": "change_operation"}, {"group": "Op\u00e9rations : modification/suppression", "permission": "delete_operation"}, {"group": "Organisations rattach\u00e9es : ajout", "permission": "add_own_organization"}, {"group": "Organisations : ajout", "permission": "add_organization"}, {"group": "Organisations : modification/suppression", "permission": "change_organization"}, {"group": "Organisations : modification/suppression", "permission": "delete_organization"}, {"group": "Organisations rattach\u00e9es : modification/suppression", "permission": "change_own_organization"}, {"group": "Organisations rattach\u00e9es : modification/suppression", "permission": "delete_own_organization"}, {"group": "Traitements : ajout", "permission": "add_treatment"}, {"group": "Traitements : modification/suppression", "permission": "change_treatment"}, {"group": "Traitements : modification/suppression", "permission": "delete_treatment"}, {"group": "Actes administratifs : ajout", "permission": "add_administrativeact"}, {"group": "Documents UE : lecture", "permission": "view_contextrecordsource"}, {"group": "Documents UE rattach\u00e9s : lecture", "permission": "view_own_contextrecordsource"}, {"group": "Documents UE : ajout", "permission": "add_contextrecordsource"}, {"group": "Actes administratifs : lecture", "permission": "view_administrativeact"}, {"group": "Auteurs : lecture", "permission": "view_author"}, {"group": "Personnes : ajout", "permission": "add_person"}, {"group": "Personnes : modification/suppression", "permission": "change_person"}, {"group": "Personnes : modification/suppression", "permission": "delete_person"}, {"group": "Actes administratifs rattach\u00e9s : ajout", "permission": "add_own_administrativeact"}, {"group": "Actes administratifs rattach\u00e9s : modification/suppression", "permission": "change_own_administrativeact"}, {"group": "Actes administratifs rattach\u00e9s : modification/suppression", "permission": "delete_own_administrativeact"}, {"group": "D\u00e9p\u00f4ts rattach\u00e9s : ajout", "permission": "add_own_warehouse"}, {"group": "D\u00e9p\u00f4ts rattach\u00e9s : modification/suppression", "permission": "change_own_warehouse"}, {"group": "D\u00e9p\u00f4ts rattach\u00e9s : modification/suppression", "permission": "delete_own_warehouse"}, {"group": "Documents op\u00e9ration rattach\u00e9s : ajout", "permission": "add_own_operation"}, {"group": "Documents op\u00e9ration rattach\u00e9s : modification/suppression", "permission": "change_own_operation"}, {"group": "Documents op\u00e9ration rattach\u00e9s : modification/suppression", "permission": "delete_own_operation"}, {"group": "Dossiers rattach\u00e9s : ajout", "permission": "add_own_file"}, {"group": "Dossiers rattach\u00e9s : modification/suppression", "permission": "change_own_file"}, {"group": "Dossiers rattach\u00e9s : modification/suppression", "permission": "delete_own_file"}, {"group": "Traitements rattach\u00e9s : ajout", "permission": "add_own_treatment"}, {"group": "Traitements rattach\u00e9s : modification/suppression", "permission": "change_own_treatment"}, {"group": "Traitements rattach\u00e9s : modification/suppression", "permission": "delete_own_treatment"}, {"group": "Demandes de traitement : ajout", "permission": "add_filetreatment"}, {"group": "Demandes de traitement : lecture", "permission": "view_filetreatment"}, {"group": "Demandes de traitement : modification/suppression", "permission": "change_filetreatment"}, {"group": "Demandes de traitement : modification/suppression", "permission": "delete_filetreatment"}, {"group": "Auteurs : ajout", "permission": "add_author"}, {"group": "Auteurs : modification/suppression", "permission": "change_author"}, {"group": "Auteurs : modification/suppression", "permission": "delete_author"}, {"group": "D\u00e9p\u00f4ts rattach\u00e9s : lecture", "permission": "view_own_warehouse"}, {"group": "D\u00e9p\u00f4ts : lecture", "permission": "view_warehouse"}, {"group": "Documents op\u00e9ration rattach\u00e9s : lecture", "permission": "view_own_operationsource"}, {"group": "Documents op\u00e9ration : lecture", "permission": "view_operationsource"}, {"group": "Dossiers rattach\u00e9s : lecture", "permission": "view_own_file"}, {"group": "Dossiers : lecture", "permission": "view_file"}, {"group": "Mobilier : lecture", "permission": "view_basefind"}, {"group": "Mobilier : lecture", "permission": "view_find"}, {"group": "Op\u00e9rations : lecture", "permission": "view_operation"}, {"group": "Organisations : lecture", "permission": "view_organization"}, {"group": "Personnes : lecture", "permission": "view_person"}, {"group": "Traitements rattach\u00e9s : lecture", "permission": "view_own_treatment"}, {"group": "Traitements : lecture", "permission": "view_treatment"}, {"group": "UE : lecture", "permission": "view_contextrecord"}, {"group": "UE : ajout", "permission": "add_contextrecord"}, {"group": "UE : modification/suppression", "permission": "change_contextrecord"}, {"group": "UE : modification/suppression", "permission": "delete_contextrecord"}, {"group": "UE rattach\u00e9es : ajout", "permission": "add_own_contextrecord"}, {"group": "UE rattach\u00e9es : lecture", "permission": "view_own_contextrecord"}, {"group": "UE rattach\u00e9es : modification/suppression", "permission": "change_own_contextrecord"}, {"group": "UE rattach\u00e9es : modification/suppression", "permission": "delete_own_contextrecord"}, {"group": "Personnes rattach\u00e9es : ajout", "permission": "add_own_person"}, {"group": "Personnes rattach\u00e9es : lecture", "permission": "view_own_person"}, {"group": "Personnes rattach\u00e9es : modification/suppression", "permission": "change_own_person"}, {"group": "Personnes rattach\u00e9es : modification/suppression", "permission": "delete_own_person"}, {"group": "Op\u00e9rations rattach\u00e9es : ajout", "permission": "add_own_operation"}, {"group": "Op\u00e9rations rattach\u00e9es : lecture", "permission": "view_own_operation"}, {"group": "Op\u00e9rations rattach\u00e9es : modification/suppression", "permission": "change_own_operation"}, {"group": "Op\u00e9rations rattach\u00e9es : modification/suppression", "permission": "delete_own_operation"}, {"group": "Mobilier rattach\u00e9 : ajout", "permission": "add_own_basefind"}, {"group": "Mobilier rattach\u00e9 : ajout", "permission": "add_own_find"}, {"group": "Mobilier rattach\u00e9 : lecture", "permission": "view_own_basefind"}, {"group": "Mobilier rattach\u00e9 : lecture", "permission": "view_own_find"}, {"group": "Mobilier rattach\u00e9 : modification/suppression", "permission": "change_own_basefind"}, {"group": "Mobilier rattach\u00e9 : modification/suppression", "permission": "delete_own_basefind"}, {"group": "Mobilier rattach\u00e9 : modification/suppression", "permission": "change_own_find"}, {"group": "Mobilier rattach\u00e9 : modification/suppression", "permission": "delete_own_find"}, {"group": "Documents UE rattach\u00e9s : modification/suppression", "permission": "change_own_contextrecordsource"}, {"group": "Documents UE rattach\u00e9s : modification/suppression", "permission": "delete_own_contextrecordsource"}, {"group": "Documents UE : modification/suppression", "permission": "change_contextrecordsource"}, {"group": "Documents UE : modification/suppression", "permission": "delete_contextrecordsource"}, {"group": "Documents UE rattach\u00e9s : ajout", "permission": "add_own_contextrecordsource"}, {"group": "Documents mobilier : lecture", "permission": "view_findsource"}, {"group": "Documents mobilier : ajout", "permission": "add_findsource"}, {"group": "Documents mobilier : modification/suppression", "permission": "change_findsource"}, {"group": "Documents mobilier : modification/suppression", "permission": "delete_findsource"}, {"group": "Documents mobilier rattach\u00e9s : ajout", "permission": "add_own_findsource"}, {"group": "Documents mobilier rattach\u00e9s : lecture", "permission": "view_own_findsource"}, {"group": "Documents mobilier rattach\u00e9s : modification/suppression", "permission": "change_own_findsource"}, {"group": "Documents mobilier rattach\u00e9s : modification/suppression", "permission": "delete_own_findsource"}, {"group": "Documents de traitement : lecture", "permission": "view_treatmentsource"}, {"group": "Documents de traitement : ajout", "permission": "add_treatmentsource"}, {"group": "Documents de traitement : modification/suppression", "permission": "change_treatmentsource"}, {"group": "Documents de traitement : modification/suppression", "permission": "delete_treatmentsource"}, {"group": "Documents de traitement rattach\u00e9s : lecture", "permission": "view_own_treatmentsource"}, {"group": "Documents de traitement rattach\u00e9s : ajout", "permission": "add_own_treatmentsource"}, {"group": "Documents de traitement rattach\u00e9s : modification/suppression", "permission": "change_own_treatmentsource"}, {"group": "Documents de traitement rattach\u00e9s : modification/suppression", "permission": "delete_own_treatmentsource"}, {"group": "Documents de demande de traitement rattach\u00e9s : lecture", "permission": "view_own_filetreatmentsource"}, {"group": "Documents de demande de traitement rattach\u00e9s : ajout", "permission": "add_own_filetreatmentsource"}, {"group": "Documents de demande de traitement rattach\u00e9s : modification/suppression", "permission": "change_own_filetreatmentsource"}, {"group": "Documents de demande de traitement rattach\u00e9s : modification/suppression", "permission": "delete_own_filetreatmentsource"}], "person_type_groups": [{"person_type": "reader_access", "group": "Actes administratifs : lecture"}, {"person_type": "reader_access", "group": "Demandes de traitement : lecture"}, {"person_type": "reader_access", "group": "D\u00e9p\u00f4ts : lecture"}, {"person_type": "reader_access", "group": "Documents op\u00e9ration : lecture"}, {"person_type": "reader_access", "group": "Dossiers : lecture"}, {"person_type": "reader_access", "group": "Mobilier : lecture"}, {"person_type": "reader_access", "group": "Op\u00e9rations : lecture"}, {"person_type": "reader_access", "group": "Organisations : lecture"}, {"person_type": "reader_access", "group": "Personnes : lecture"}, {"person_type": "reader_access", "group": "Traitements : lecture"}, {"person_type": "reader_access", "group": "UE : lecture"}, {"person_type": "administrator", "group": "Op\u00e9rations : lecture"}, {"person_type": "administrator", "group": "Dossiers : lecture"}, {"person_type": "administrator", "group": "UE : lecture"}, {"person_type": "administrator", "group": "D\u00e9p\u00f4ts : lecture"}, {"person_type": "administrator", "group": "Mobilier : lecture"}, {"person_type": "administrator", "group": "Traitements : lecture"}, {"person_type": "administrator", "group": "Actes administratifs : lecture"}, {"person_type": "administrator", "group": "Actes administratifs : ajout"}, {"person_type": "administrator", "group": "Actes administratifs : modification/suppression"}, {"person_type": "administrator", "group": "D\u00e9p\u00f4ts : ajout"}, {"person_type": "administrator", "group": "D\u00e9p\u00f4ts : modification/suppression"}, {"person_type": "administrator", "group": "Dossiers : ajout"}, {"person_type": "administrator", "group": "Dossiers : modification/suppression"}, {"person_type": "administrator", "group": "Mobilier : ajout"}, {"person_type": "administrator", "group": "Mobilier : modification/suppression"}, {"person_type": "administrator", "group": "Op\u00e9rations : ajout"}, {"person_type": "administrator", "group": "Op\u00e9rations : modification/suppression"}, {"person_type": "administrator", "group": "Traitements : ajout"}, {"person_type": "administrator", "group": "Traitements : modification/suppression"}, {"person_type": "administrator", "group": "UE : ajout"}, {"person_type": "administrator", "group": "UE : modification/suppression"}, {"person_type": "administrator", "group": "Personnes : ajout"}, {"person_type": "administrator", "group": "Personnes : modification/suppression"}, {"person_type": "administrator", "group": "Organisations : lecture"}, {"person_type": "administrator", "group": "Organisations : modification/suppression"}, {"person_type": "administrator", "group": "Organisations : ajout"}, {"person_type": "administrator", "group": "Op\u00e9rations : cl\u00f4ture"}, {"person_type": "administrator", "group": "Dossiers : cl\u00f4ture"}, {"person_type": "administrator", "group": "Documents op\u00e9ration : lecture"}, {"person_type": "administrator", "group": "Documents op\u00e9ration : modification/suppression"}, {"person_type": "administrator", "group": "Documents op\u00e9ration : ajout"}, {"person_type": "administrator", "group": "Personnes : lecture"}, {"person_type": "administrator", "group": "Actes administratifs rattach\u00e9s : ajout"}, {"person_type": "administrator", "group": "Actes administratifs rattach\u00e9s : modification/suppression"}, {"person_type": "administrator", "group": "Actes administratifs rattach\u00e9s : lecture"}, {"person_type": "administrator", "group": "D\u00e9p\u00f4ts rattach\u00e9s : ajout"}, {"person_type": "administrator", "group": "D\u00e9p\u00f4ts rattach\u00e9s : modification/suppression"}, {"person_type": "administrator", "group": "D\u00e9p\u00f4ts rattach\u00e9s : lecture"}, {"person_type": "administrator", "group": "Documents op\u00e9ration rattach\u00e9s : ajout"}, {"person_type": "administrator", "group": "Documents op\u00e9ration rattach\u00e9s : modification/suppression"}, {"person_type": "administrator", "group": "Documents op\u00e9ration rattach\u00e9s : lecture"}, {"person_type": "administrator", "group": "Dossiers rattach\u00e9s : ajout"}, {"person_type": "administrator", "group": "Dossiers rattach\u00e9s : modification/suppression"}, {"person_type": "administrator", "group": "Dossiers rattach\u00e9s : lecture"}, {"person_type": "administrator", "group": "Mobilier rattach\u00e9 : ajout"}, {"person_type": "administrator", "group": "Mobilier rattach\u00e9 : modification/suppression"}, {"person_type": "administrator", "group": "Mobilier rattach\u00e9 : lecture"}, {"person_type": "administrator", "group": "Op\u00e9rations rattach\u00e9es : ajout"}, {"person_type": "administrator", "group": "Op\u00e9rations rattach\u00e9es : modification/suppression"}, {"person_type": "administrator", "group": "Op\u00e9rations rattach\u00e9es : lecture"}, {"person_type": "administrator", "group": "Organisations rattach\u00e9es : ajout"}, {"person_type": "administrator", "group": "Organisations rattach\u00e9es : modification/suppression"}, {"person_type": "administrator", "group": "Organisations rattach\u00e9es : lecture"}, {"person_type": "administrator", "group": "Traitements rattach\u00e9s : ajout"}, {"person_type": "administrator", "group": "Traitements rattach\u00e9s : modification/suppression"}, {"person_type": "administrator", "group": "Traitements rattach\u00e9s : lecture"}, {"person_type": "administrator", "group": "UE rattach\u00e9es : ajout"}, {"person_type": "administrator", "group": "UE rattach\u00e9es : modification/suppression"}, {"person_type": "administrator", "group": "UE rattach\u00e9es : lecture"}, {"person_type": "administrator", "group": "Personnes rattach\u00e9es : ajout"}, {"person_type": "administrator", "group": "Personnes rattach\u00e9es : modification/suppression"}, {"person_type": "administrator", "group": "Personnes rattach\u00e9es : lecture"}, {"person_type": "administrator", "group": "Demandes de traitement : ajout"}, {"person_type": "administrator", "group": "Demandes de traitement : modification/suppression"}, {"person_type": "administrator", "group": "Demandes de traitement : lecture"}, {"person_type": "administrator", "group": "Demandes de traitement rattach\u00e9es : ajout"}, {"person_type": "administrator", "group": "Demandes de traitement rattach\u00e9es : lecture"}, {"person_type": "administrator", "group": "Demandes de traitement rattach\u00e9es : modification/suppression"}, {"person_type": "administrator", "group": "Auteurs : ajout"}, {"person_type": "administrator", "group": "Auteurs : modification/suppression"}, {"person_type": "administrator", "group": "Auteurs : lecture"}, {"person_type": "collaborator", "group": "Auteurs : ajout"}, {"person_type": "collaborator", "group": "Auteurs : modification/suppression"}, {"person_type": "collaborator", "group": "Auteurs : lecture"}, {"person_type": "collaborator", "group": "Documents op\u00e9ration rattach\u00e9s : modification/suppression"}, {"person_type": "collaborator", "group": "Documents op\u00e9ration rattach\u00e9s : lecture"}, {"person_type": "collaborator", "group": "Mobilier rattach\u00e9 : ajout"}, {"person_type": "collaborator", "group": "Mobilier rattach\u00e9 : modification/suppression"}, {"person_type": "collaborator", "group": "Mobilier rattach\u00e9 : lecture"}, {"person_type": "collaborator", "group": "Documents op\u00e9ration rattach\u00e9s : ajout"}, {"person_type": "collaborator", "group": "Op\u00e9rations rattach\u00e9es : lecture"}, {"person_type": "collaborator", "group": "UE rattach\u00e9es : ajout"}, {"person_type": "collaborator", "group": "UE rattach\u00e9es : modification/suppression"}, {"person_type": "collaborator", "group": "UE rattach\u00e9es : lecture"}, {"person_type": "collaborator", "group": "Personnes rattach\u00e9es : lecture"}, {"person_type": "warehouse_manager", "group": "Demandes de traitement : ajout"}, {"person_type": "warehouse_manager", "group": "Demandes de traitement : modification/suppression"}, {"person_type": "warehouse_manager", "group": "Demandes de traitement : lecture"}, {"person_type": "warehouse_manager", "group": "UE : lecture"}, {"person_type": "warehouse_manager", "group": "D\u00e9p\u00f4ts : lecture"}, {"person_type": "warehouse_manager", "group": "Mobilier : lecture"}, {"person_type": "warehouse_manager", "group": "Op\u00e9rations : lecture"}, {"person_type": "warehouse_manager", "group": "Actes administratifs : lecture"}, {"person_type": "warehouse_manager", "group": "D\u00e9p\u00f4ts : ajout"}, {"person_type": "warehouse_manager", "group": "D\u00e9p\u00f4ts : modification/suppression"}, {"person_type": "warehouse_manager", "group": "Dossiers : lecture"}, {"person_type": "warehouse_manager", "group": "Mobilier : ajout"}, {"person_type": "warehouse_manager", "group": "Mobilier : modification/suppression"}, {"person_type": "warehouse_manager", "group": "Auteurs : lecture"}, {"person_type": "warehouse_manager", "group": "Traitements : ajout"}, {"person_type": "warehouse_manager", "group": "Traitements : modification/suppression"}, {"person_type": "warehouse_manager", "group": "Traitements : lecture"}, {"person_type": "warehouse_manager", "group": "Organisations : lecture"}, {"person_type": "warehouse_manager", "group": "Personnes : lecture"}, {"person_type": "warehouse_manager", "group": "Documents op\u00e9ration : lecture"}, {"person_type": "sra_agent", "group": "Op\u00e9rations : lecture"}, {"person_type": "sra_agent", "group": "Dossiers : lecture"}, {"person_type": "sra_agent", "group": "UE : lecture"}, {"person_type": "sra_agent", "group": "D\u00e9p\u00f4ts : lecture"}, {"person_type": "sra_agent", "group": "Mobilier : lecture"}, {"person_type": "sra_agent", "group": "Traitements : lecture"}, {"person_type": "sra_agent", "group": "Actes administratifs : lecture"}, {"person_type": "sra_agent", "group": "Actes administratifs : ajout"}, {"person_type": "sra_agent", "group": "Actes administratifs : modification/suppression"}, {"person_type": "sra_agent", "group": "Dossiers : ajout"}, {"person_type": "sra_agent", "group": "Dossiers : modification/suppression"}, {"person_type": "sra_agent", "group": "Mobilier : ajout"}, {"person_type": "sra_agent", "group": "Mobilier : modification/suppression"}, {"person_type": "sra_agent", "group": "Op\u00e9rations : ajout"}, {"person_type": "sra_agent", "group": "Op\u00e9rations : modification/suppression"}, {"person_type": "sra_agent", "group": "UE : ajout"}, {"person_type": "sra_agent", "group": "UE : modification/suppression"}, {"person_type": "sra_agent", "group": "Personnes : ajout"}, {"person_type": "sra_agent", "group": "Personnes : modification/suppression"}, {"person_type": "sra_agent", "group": "Organisations : lecture"}, {"person_type": "sra_agent", "group": "Organisations : modification/suppression"}, {"person_type": "sra_agent", "group": "Organisations : ajout"}, {"person_type": "sra_agent", "group": "Op\u00e9rations : cl\u00f4ture"}, {"person_type": "sra_agent", "group": "Dossiers : cl\u00f4ture"}, {"person_type": "sra_agent", "group": "Documents op\u00e9ration : lecture"}, {"person_type": "sra_agent", "group": "Documents op\u00e9ration : modification/suppression"}, {"person_type": "sra_agent", "group": "Documents op\u00e9ration : ajout"}, {"person_type": "sra_agent", "group": "Personnes : lecture"}, {"person_type": "sra_agent", "group": "Demandes de traitement : lecture"}, {"person_type": "sra_agent", "group": "Auteurs : ajout"}, {"person_type": "sra_agent", "group": "Auteurs : modification/suppression"}, {"person_type": "sra_agent", "group": "Auteurs : lecture"}, {"person_type": "head_scientist", "group": "Op\u00e9rations : lecture"}, {"person_type": "head_scientist", "group": "Auteurs : ajout"}, {"person_type": "head_scientist", "group": "Auteurs : modification/suppression"}, {"person_type": "head_scientist", "group": "Auteurs : lecture"}, {"person_type": "head_scientist", "group": "Documents op\u00e9ration rattach\u00e9s : modification/suppression"}, {"person_type": "head_scientist", "group": "Documents op\u00e9ration rattach\u00e9s : lecture"}, {"person_type": "head_scientist", "group": "Mobilier rattach\u00e9 : ajout"}, {"person_type": "head_scientist", "group": "Mobilier rattach\u00e9 : modification/suppression"}, {"person_type": "head_scientist", "group": "Mobilier rattach\u00e9 : lecture"}, {"person_type": "head_scientist", "group": "Documents op\u00e9ration rattach\u00e9s : ajout"}, {"person_type": "head_scientist", "group": "Op\u00e9rations rattach\u00e9es : modification/suppression"}, {"person_type": "head_scientist", "group": "UE rattach\u00e9es : ajout"}, {"person_type": "head_scientist", "group": "UE rattach\u00e9es : modification/suppression"}, {"person_type": "head_scientist", "group": "UE rattach\u00e9es : lecture"}, {"person_type": "head_scientist", "group": "Personnes rattach\u00e9es : lecture"}, {"person_type": "secretarial_dept", "group": "Op\u00e9rations : lecture"}, {"person_type": "secretarial_dept", "group": "Dossiers : lecture"}, {"person_type": "secretarial_dept", "group": "UE : lecture"}, {"person_type": "secretarial_dept", "group": "Mobilier : lecture"}, {"person_type": "secretarial_dept", "group": "Personnes : lecture"}, {"person_type": "secretarial_dept", "group": "Actes administratifs : lecture"}, {"person_type": "secretarial_dept", "group": "Actes administratifs : ajout"}, {"person_type": "secretarial_dept", "group": "Actes administratifs : modification/suppression"}, {"person_type": "secretarial_dept", "group": "Dossiers : ajout"}, {"person_type": "secretarial_dept", "group": "Dossiers : modification/suppression"}, {"person_type": "secretarial_dept", "group": "Op\u00e9rations : ajout"}, {"person_type": "secretarial_dept", "group": "Op\u00e9rations : modification/suppression"}, {"person_type": "secretarial_dept", "group": "Personnes : ajout"}, {"person_type": "secretarial_dept", "group": "Personnes : modification/suppression"}, {"person_type": "secretarial_dept", "group": "Organisations : lecture"}, {"person_type": "secretarial_dept", "group": "Organisations : modification/suppression"}, {"person_type": "secretarial_dept", "group": "Organisations : ajout"}, {"person_type": "secretarial_dept", "group": "Op\u00e9rations : cl\u00f4ture"}, {"person_type": "secretarial_dept", "group": "Dossiers : cl\u00f4ture"}], "permissions": [{"codename": "add_logentry", "name": "Can add log entry", "content_type": ["admin", "logentry"]}, {"codename": "change_logentry", "name": "Can change log entry", "content_type": ["admin", "logentry"]}, {"codename": "delete_logentry", "name": "Can delete log entry", "content_type": ["admin", "logentry"]}, {"codename": "add_activitytype", "name": "Can add Activity Type", "content_type": ["archaeological_context_records", "activitytype"]}, {"codename": "change_activitytype", "name": "Can change Activity Type", "content_type": ["archaeological_context_records", "activitytype"]}, {"codename": "delete_activitytype", "name": "Can delete Activity Type", "content_type": ["archaeological_context_records", "activitytype"]}, {"codename": "add_contextrecord", "name": "Can add Context Record", "content_type": ["archaeological_context_records", "contextrecord"]}, {"codename": "add_own_contextrecord", "name": "Can add own Context Record", "content_type": ["archaeological_context_records", "contextrecord"]}, {"codename": "change_contextrecord", "name": "Can change Context Record", "content_type": ["archaeological_context_records", "contextrecord"]}, {"codename": "change_own_contextrecord", "name": "Can change own Context Record", "content_type": ["archaeological_context_records", "contextrecord"]}, {"codename": "delete_contextrecord", "name": "Can delete Context Record", "content_type": ["archaeological_context_records", "contextrecord"]}, {"codename": "delete_own_contextrecord", "name": "Can delete own Context Record", "content_type": ["archaeological_context_records", "contextrecord"]}, {"codename": "view_contextrecord", "name": "Can view all Context Records", "content_type": ["archaeological_context_records", "contextrecord"]}, {"codename": "view_own_contextrecord", "name": "Can view own Context Record", "content_type": ["archaeological_context_records", "contextrecord"]}, {"codename": "add_contextrecordsource", "name": "Can add Context record documentation", "content_type": ["archaeological_context_records", "contextrecordsource"]}, {"codename": "add_own_contextrecordsource", "name": "Can add own Context record source", "content_type": ["archaeological_context_records", "contextrecordsource"]}, {"codename": "change_contextrecordsource", "name": "Can change Context record documentation", "content_type": ["archaeological_context_records", "contextrecordsource"]}, {"codename": "change_own_contextrecordsource", "name": "Can change own Context record source", "content_type": ["archaeological_context_records", "contextrecordsource"]}, {"codename": "delete_contextrecordsource", "name": "Can delete Context record documentation", "content_type": ["archaeological_context_records", "contextrecordsource"]}, {"codename": "delete_own_contextrecordsource", "name": "Can delete own Context record source", "content_type": ["archaeological_context_records", "contextrecordsource"]}, {"codename": "view_contextrecordsource", "name": "Can view all Context record sources", "content_type": ["archaeological_context_records", "contextrecordsource"]}, {"codename": "view_own_contextrecordsource", "name": "Can view own Context record source", "content_type": ["archaeological_context_records", "contextrecordsource"]}, {"codename": "add_dating", "name": "Can add Dating", "content_type": ["archaeological_context_records", "dating"]}, {"codename": "change_dating", "name": "Can change Dating", "content_type": ["archaeological_context_records", "dating"]}, {"codename": "delete_dating", "name": "Can delete Dating", "content_type": ["archaeological_context_records", "dating"]}, {"codename": "add_datingquality", "name": "Can add Dating quality", "content_type": ["archaeological_context_records", "datingquality"]}, {"codename": "change_datingquality", "name": "Can change Dating quality", "content_type": ["archaeological_context_records", "datingquality"]}, {"codename": "delete_datingquality", "name": "Can delete Dating quality", "content_type": ["archaeological_context_records", "datingquality"]}, {"codename": "add_datingtype", "name": "Can add Dating type", "content_type": ["archaeological_context_records", "datingtype"]}, {"codename": "change_datingtype", "name": "Can change Dating type", "content_type": ["archaeological_context_records", "datingtype"]}, {"codename": "delete_datingtype", "name": "Can delete Dating type", "content_type": ["archaeological_context_records", "datingtype"]}, {"codename": "add_documentationtype", "name": "Can add Documentation type", "content_type": ["archaeological_context_records", "documentationtype"]}, {"codename": "change_documentationtype", "name": "Can change Documentation type", "content_type": ["archaeological_context_records", "documentationtype"]}, {"codename": "delete_documentationtype", "name": "Can delete Documentation type", "content_type": ["archaeological_context_records", "documentationtype"]}, {"codename": "add_excavationtechnictype", "name": "Can add Excavation technic type", "content_type": ["archaeological_context_records", "excavationtechnictype"]}, {"codename": "change_excavationtechnictype", "name": "Can change Excavation technic type", "content_type": ["archaeological_context_records", "excavationtechnictype"]}, {"codename": "delete_excavationtechnictype", "name": "Can delete Excavation technic type", "content_type": ["archaeological_context_records", "excavationtechnictype"]}, {"codename": "add_historicalcontextrecord", "name": "Can add historical context record", "content_type": ["archaeological_context_records", "historicalcontextrecord"]}, {"codename": "change_historicalcontextrecord", "name": "Can change historical context record", "content_type": ["archaeological_context_records", "historicalcontextrecord"]}, {"codename": "delete_historicalcontextrecord", "name": "Can delete historical context record", "content_type": ["archaeological_context_records", "historicalcontextrecord"]}, {"codename": "add_identificationtype", "name": "Can add Identification Type", "content_type": ["archaeological_context_records", "identificationtype"]}, {"codename": "change_identificationtype", "name": "Can change Identification Type", "content_type": ["archaeological_context_records", "identificationtype"]}, {"codename": "delete_identificationtype", "name": "Can delete Identification Type", "content_type": ["archaeological_context_records", "identificationtype"]}, {"codename": "add_recordrelations", "name": "Can add Record relation", "content_type": ["archaeological_context_records", "recordrelations"]}, {"codename": "change_recordrelations", "name": "Can change Record relation", "content_type": ["archaeological_context_records", "recordrelations"]}, {"codename": "delete_recordrelations", "name": "Can delete Record relation", "content_type": ["archaeological_context_records", "recordrelations"]}, {"codename": "add_recordrelationview", "name": "Can add record relation view", "content_type": ["archaeological_context_records", "recordrelationview"]}, {"codename": "change_recordrelationview", "name": "Can change record relation view", "content_type": ["archaeological_context_records", "recordrelationview"]}, {"codename": "delete_recordrelationview", "name": "Can delete record relation view", "content_type": ["archaeological_context_records", "recordrelationview"]}, {"codename": "add_relationtype", "name": "Can add Relation type", "content_type": ["archaeological_context_records", "relationtype"]}, {"codename": "change_relationtype", "name": "Can change Relation type", "content_type": ["archaeological_context_records", "relationtype"]}, {"codename": "delete_relationtype", "name": "Can delete Relation type", "content_type": ["archaeological_context_records", "relationtype"]}, {"codename": "add_unit", "name": "Can add Unit Type", "content_type": ["archaeological_context_records", "unit"]}, {"codename": "change_unit", "name": "Can change Unit Type", "content_type": ["archaeological_context_records", "unit"]}, {"codename": "delete_unit", "name": "Can delete Unit Type", "content_type": ["archaeological_context_records", "unit"]}, {"codename": "add_file", "name": "Can add Archaeological file", "content_type": ["archaeological_files", "file"]}, {"codename": "add_own_file", "name": "Can add own Archaelogical file", "content_type": ["archaeological_files", "file"]}, {"codename": "change_file", "name": "Can change Archaeological file", "content_type": ["archaeological_files", "file"]}, {"codename": "change_own_file", "name": "Can change own Archaelogical file", "content_type": ["archaeological_files", "file"]}, {"codename": "close_file", "name": "Can close File", "content_type": ["archaeological_files", "file"]}, {"codename": "delete_file", "name": "Can delete Archaeological file", "content_type": ["archaeological_files", "file"]}, {"codename": "delete_own_file", "name": "Can delete own Archaelogical file", "content_type": ["archaeological_files", "file"]}, {"codename": "view_file", "name": "Can view all Archaelogical files", "content_type": ["archaeological_files", "file"]}, {"codename": "view_own_file", "name": "Can view own Archaelogical file", "content_type": ["archaeological_files", "file"]}, {"codename": "add_filebydepartment", "name": "Can add file by department", "content_type": ["archaeological_files", "filebydepartment"]}, {"codename": "change_filebydepartment", "name": "Can change file by department", "content_type": ["archaeological_files", "filebydepartment"]}, {"codename": "delete_filebydepartment", "name": "Can delete file by department", "content_type": ["archaeological_files", "filebydepartment"]}, {"codename": "add_filetype", "name": "Can add Archaeological file type", "content_type": ["archaeological_files", "filetype"]}, {"codename": "change_filetype", "name": "Can change Archaeological file type", "content_type": ["archaeological_files", "filetype"]}, {"codename": "delete_filetype", "name": "Can delete Archaeological file type", "content_type": ["archaeological_files", "filetype"]}, {"codename": "add_historicalfile", "name": "Can add historical file", "content_type": ["archaeological_files", "historicalfile"]}, {"codename": "change_historicalfile", "name": "Can change historical file", "content_type": ["archaeological_files", "historicalfile"]}, {"codename": "delete_historicalfile", "name": "Can delete historical file", "content_type": ["archaeological_files", "historicalfile"]}, {"codename": "add_permittype", "name": "Can add Permit type", "content_type": ["archaeological_files", "permittype"]}, {"codename": "change_permittype", "name": "Can change Permit type", "content_type": ["archaeological_files", "permittype"]}, {"codename": "delete_permittype", "name": "Can delete Permit type", "content_type": ["archaeological_files", "permittype"]}, {"codename": "add_saisinetype", "name": "Can add Type Saisine", "content_type": ["archaeological_files", "saisinetype"]}, {"codename": "change_saisinetype", "name": "Can change Type Saisine", "content_type": ["archaeological_files", "saisinetype"]}, {"codename": "delete_saisinetype", "name": "Can delete Type Saisine", "content_type": ["archaeological_files", "saisinetype"]}, {"codename": "add_basefind", "name": "Can add Base find", "content_type": ["archaeological_finds", "basefind"]}, {"codename": "add_own_basefind", "name": "Can add own Base find", "content_type": ["archaeological_finds", "basefind"]}, {"codename": "change_basefind", "name": "Can change Base find", "content_type": ["archaeological_finds", "basefind"]}, {"codename": "change_own_basefind", "name": "Can change own Base find", "content_type": ["archaeological_finds", "basefind"]}, {"codename": "delete_basefind", "name": "Can delete Base find", "content_type": ["archaeological_finds", "basefind"]}, {"codename": "delete_own_basefind", "name": "Can delete own Base find", "content_type": ["archaeological_finds", "basefind"]}, {"codename": "view_basefind", "name": "Can view all Base finds", "content_type": ["archaeological_finds", "basefind"]}, {"codename": "view_own_basefind", "name": "Can view own Base find", "content_type": ["archaeological_finds", "basefind"]}, {"codename": "add_batchtype", "name": "Can add Batch type", "content_type": ["archaeological_finds", "batchtype"]}, {"codename": "change_batchtype", "name": "Can change Batch type", "content_type": ["archaeological_finds", "batchtype"]}, {"codename": "delete_batchtype", "name": "Can delete Batch type", "content_type": ["archaeological_finds", "batchtype"]}, {"codename": "add_conservatorystate", "name": "Can add Conservatory state", "content_type": ["archaeological_finds", "conservatorystate"]}, {"codename": "change_conservatorystate", "name": "Can change Conservatory state", "content_type": ["archaeological_finds", "conservatorystate"]}, {"codename": "delete_conservatorystate", "name": "Can delete Conservatory state", "content_type": ["archaeological_finds", "conservatorystate"]}, {"codename": "add_find", "name": "Can add Find", "content_type": ["archaeological_finds", "find"]}, {"codename": "add_own_find", "name": "Can add own Find", "content_type": ["archaeological_finds", "find"]}, {"codename": "change_find", "name": "Can change Find", "content_type": ["archaeological_finds", "find"]}, {"codename": "change_own_find", "name": "Can change own Find", "content_type": ["archaeological_finds", "find"]}, {"codename": "delete_find", "name": "Can delete Find", "content_type": ["archaeological_finds", "find"]}, {"codename": "delete_own_find", "name": "Can delete own Find", "content_type": ["archaeological_finds", "find"]}, {"codename": "view_find", "name": "Can view all Finds", "content_type": ["archaeological_finds", "find"]}, {"codename": "view_own_find", "name": "Can view own Find", "content_type": ["archaeological_finds", "find"]}, {"codename": "add_findbasket", "name": "Can add find basket", "content_type": ["archaeological_finds", "findbasket"]}, {"codename": "change_findbasket", "name": "Can change find basket", "content_type": ["archaeological_finds", "findbasket"]}, {"codename": "delete_findbasket", "name": "Can delete find basket", "content_type": ["archaeological_finds", "findbasket"]}, {"codename": "add_finddownstreamtreatments", "name": "Can add find downstream treatments", "content_type": ["archaeological_finds", "finddownstreamtreatments"]}, {"codename": "change_finddownstreamtreatments", "name": "Can change find downstream treatments", "content_type": ["archaeological_finds", "finddownstreamtreatments"]}, {"codename": "delete_finddownstreamtreatments", "name": "Can delete find downstream treatments", "content_type": ["archaeological_finds", "finddownstreamtreatments"]}, {"codename": "add_findsource", "name": "Can add Find documentation", "content_type": ["archaeological_finds", "findsource"]}, {"codename": "add_own_findsource", "name": "Can add own Find source", "content_type": ["archaeological_finds", "findsource"]}, {"codename": "change_findsource", "name": "Can change Find documentation", "content_type": ["archaeological_finds", "findsource"]}, {"codename": "change_own_findsource", "name": "Can change own Find source", "content_type": ["archaeological_finds", "findsource"]}, {"codename": "delete_findsource", "name": "Can delete Find documentation", "content_type": ["archaeological_finds", "findsource"]}, {"codename": "delete_own_findsource", "name": "Can delete own Find source", "content_type": ["archaeological_finds", "findsource"]}, {"codename": "view_findsource", "name": "Can view all Find sources", "content_type": ["archaeological_finds", "findsource"]}, {"codename": "view_own_findsource", "name": "Can view own Find source", "content_type": ["archaeological_finds", "findsource"]}, {"codename": "add_findtreatments", "name": "Can add find treatments", "content_type": ["archaeological_finds", "findtreatments"]}, {"codename": "change_findtreatments", "name": "Can change find treatments", "content_type": ["archaeological_finds", "findtreatments"]}, {"codename": "delete_findtreatments", "name": "Can delete find treatments", "content_type": ["archaeological_finds", "findtreatments"]}, {"codename": "add_findupstreamtreatments", "name": "Can add find upstream treatments", "content_type": ["archaeological_finds", "findupstreamtreatments"]}, {"codename": "change_findupstreamtreatments", "name": "Can change find upstream treatments", "content_type": ["archaeological_finds", "findupstreamtreatments"]}, {"codename": "delete_findupstreamtreatments", "name": "Can delete find upstream treatments", "content_type": ["archaeological_finds", "findupstreamtreatments"]}, {"codename": "add_historicalbasefind", "name": "Can add historical base find", "content_type": ["archaeological_finds", "historicalbasefind"]}, {"codename": "change_historicalbasefind", "name": "Can change historical base find", "content_type": ["archaeological_finds", "historicalbasefind"]}, {"codename": "delete_historicalbasefind", "name": "Can delete historical base find", "content_type": ["archaeological_finds", "historicalbasefind"]}, {"codename": "add_historicalfind", "name": "Can add historical find", "content_type": ["archaeological_finds", "historicalfind"]}, {"codename": "change_historicalfind", "name": "Can change historical find", "content_type": ["archaeological_finds", "historicalfind"]}, {"codename": "delete_historicalfind", "name": "Can delete historical find", "content_type": ["archaeological_finds", "historicalfind"]}, {"codename": "add_historicaltreatment", "name": "Can add historical treatment", "content_type": ["archaeological_finds", "historicaltreatment"]}, {"codename": "change_historicaltreatment", "name": "Can change historical treatment", "content_type": ["archaeological_finds", "historicaltreatment"]}, {"codename": "delete_historicaltreatment", "name": "Can delete historical treatment", "content_type": ["archaeological_finds", "historicaltreatment"]}, {"codename": "add_historicaltreatmentfile", "name": "Can add historical treatment file", "content_type": ["archaeological_finds", "historicaltreatmentfile"]}, {"codename": "change_historicaltreatmentfile", "name": "Can change historical treatment file", "content_type": ["archaeological_finds", "historicaltreatmentfile"]}, {"codename": "delete_historicaltreatmentfile", "name": "Can delete historical treatment file", "content_type": ["archaeological_finds", "historicaltreatmentfile"]}, {"codename": "add_integritytype", "name": "Can add Integrity type", "content_type": ["archaeological_finds", "integritytype"]}, {"codename": "change_integritytype", "name": "Can change Integrity type", "content_type": ["archaeological_finds", "integritytype"]}, {"codename": "delete_integritytype", "name": "Can delete Integrity type", "content_type": ["archaeological_finds", "integritytype"]}, {"codename": "add_materialtype", "name": "Can add Material type", "content_type": ["archaeological_finds", "materialtype"]}, {"codename": "change_materialtype", "name": "Can change Material type", "content_type": ["archaeological_finds", "materialtype"]}, {"codename": "delete_materialtype", "name": "Can delete Material type", "content_type": ["archaeological_finds", "materialtype"]}, {"codename": "add_objecttype", "name": "Can add Object type", "content_type": ["archaeological_finds", "objecttype"]}, {"codename": "change_objecttype", "name": "Can change Object type", "content_type": ["archaeological_finds", "objecttype"]}, {"codename": "delete_objecttype", "name": "Can delete Object type", "content_type": ["archaeological_finds", "objecttype"]}, {"codename": "add_preservationtype", "name": "Can add Preservation type", "content_type": ["archaeological_finds", "preservationtype"]}, {"codename": "change_preservationtype", "name": "Can change Preservation type", "content_type": ["archaeological_finds", "preservationtype"]}, {"codename": "delete_preservationtype", "name": "Can delete Preservation type", "content_type": ["archaeological_finds", "preservationtype"]}, {"codename": "add_property", "name": "Can add Property", "content_type": ["archaeological_finds", "property"]}, {"codename": "change_property", "name": "Can change Property", "content_type": ["archaeological_finds", "property"]}, {"codename": "delete_property", "name": "Can delete Property", "content_type": ["archaeological_finds", "property"]}, {"codename": "add_remarkabilitytype", "name": "Can add Remarkability type", "content_type": ["archaeological_finds", "remarkabilitytype"]}, {"codename": "change_remarkabilitytype", "name": "Can change Remarkability type", "content_type": ["archaeological_finds", "remarkabilitytype"]}, {"codename": "delete_remarkabilitytype", "name": "Can delete Remarkability type", "content_type": ["archaeological_finds", "remarkabilitytype"]}, {"codename": "add_own_treatment", "name": "Can add own Treatment", "content_type": ["archaeological_finds", "treatment"]}, {"codename": "add_treatment", "name": "Can add Treatment", "content_type": ["archaeological_finds", "treatment"]}, {"codename": "change_own_treatment", "name": "Can change own Treatment", "content_type": ["archaeological_finds", "treatment"]}, {"codename": "change_treatment", "name": "Can change Treatment", "content_type": ["archaeological_finds", "treatment"]}, {"codename": "delete_own_treatment", "name": "Can delete own Treatment", "content_type": ["archaeological_finds", "treatment"]}, {"codename": "delete_treatment", "name": "Can delete Treatment", "content_type": ["archaeological_finds", "treatment"]}, {"codename": "view_own_treatment", "name": "Can view own Treatment", "content_type": ["archaeological_finds", "treatment"]}, {"codename": "view_treatment", "name": "Can view all Treatments", "content_type": ["archaeological_finds", "treatment"]}, {"codename": "add_filetreatment", "name": "Can add Treatment request", "content_type": ["archaeological_finds", "treatmentfile"]}, {"codename": "add_own_filetreatment", "name": "Can add own Treatment request", "content_type": ["archaeological_finds", "treatmentfile"]}, {"codename": "add_treatmentfile", "name": "Can add Treatment file", "content_type": ["archaeological_finds", "treatmentfile"]}, {"codename": "change_filetreatment", "name": "Can change Treatment request", "content_type": ["archaeological_finds", "treatmentfile"]}, {"codename": "change_own_filetreatment", "name": "Can change own Treatment request", "content_type": ["archaeological_finds", "treatmentfile"]}, {"codename": "change_treatmentfile", "name": "Can change Treatment file", "content_type": ["archaeological_finds", "treatmentfile"]}, {"codename": "delete_filetreatment", "name": "Can delete Treatment request", "content_type": ["archaeological_finds", "treatmentfile"]}, {"codename": "delete_own_filetreatment", "name": "Can delete own Treatment request", "content_type": ["archaeological_finds", "treatmentfile"]}, {"codename": "delete_treatmentfile", "name": "Can delete Treatment file", "content_type": ["archaeological_finds", "treatmentfile"]}, {"codename": "view_filetreatment", "name": "Can view all Treatment requests", "content_type": ["archaeological_finds", "treatmentfile"]}, {"codename": "view_own_filetreatment", "name": "Can view own Treatment request", "content_type": ["archaeological_finds", "treatmentfile"]}, {"codename": "add_own_filetreatmentsource", "name": "Can add own Treatment request source", "content_type": ["archaeological_finds", "treatmentfilesource"]}, {"codename": "add_treatmentfilesource", "name": "Can add Treatment file documentation", "content_type": ["archaeological_finds", "treatmentfilesource"]}, {"codename": "change_own_filetreatmentsource", "name": "Can change own Treatment request source", "content_type": ["archaeological_finds", "treatmentfilesource"]}, {"codename": "change_treatmentfilesource", "name": "Can change Treatment file documentation", "content_type": ["archaeological_finds", "treatmentfilesource"]}, {"codename": "delete_own_filetreatmentsource", "name": "Can delete own Treatment request source", "content_type": ["archaeological_finds", "treatmentfilesource"]}, {"codename": "delete_treatmentfilesource", "name": "Can delete Treatment file documentation", "content_type": ["archaeological_finds", "treatmentfilesource"]}, {"codename": "view_filetreatmentsource", "name": "Can view all Treatment request source", "content_type": ["archaeological_finds", "treatmentfilesource"]}, {"codename": "view_own_filetreatmentsource", "name": "Can view own Treatment request source", "content_type": ["archaeological_finds", "treatmentfilesource"]}, {"codename": "add_treatmentfiletype", "name": "Can add Treatment file type", "content_type": ["archaeological_finds", "treatmentfiletype"]}, {"codename": "change_treatmentfiletype", "name": "Can change Treatment file type", "content_type": ["archaeological_finds", "treatmentfiletype"]}, {"codename": "delete_treatmentfiletype", "name": "Can delete Treatment file type", "content_type": ["archaeological_finds", "treatmentfiletype"]}, {"codename": "add_own_treatmentsource", "name": "Can add own Treatment source", "content_type": ["archaeological_finds", "treatmentsource"]}, {"codename": "add_treatmentsource", "name": "Can add Treatment documentation", "content_type": ["archaeological_finds", "treatmentsource"]}, {"codename": "change_own_treatmentsource", "name": "Can change own Treatment source", "content_type": ["archaeological_finds", "treatmentsource"]}, {"codename": "change_treatmentsource", "name": "Can change Treatment documentation", "content_type": ["archaeological_finds", "treatmentsource"]}, {"codename": "delete_own_treatmentsource", "name": "Can delete own Treatment source", "content_type": ["archaeological_finds", "treatmentsource"]}, {"codename": "delete_treatmentsource", "name": "Can delete Treatment documentation", "content_type": ["archaeological_finds", "treatmentsource"]}, {"codename": "view_own_treatmentsource", "name": "Can view own Treatment source", "content_type": ["archaeological_finds", "treatmentsource"]}, {"codename": "view_treatmentsource", "name": "Can view all Treatment source", "content_type": ["archaeological_finds", "treatmentsource"]}, {"codename": "add_treatmentstate", "name": "Can add Type of treatment state", "content_type": ["archaeological_finds", "treatmentstate"]}, {"codename": "change_treatmentstate", "name": "Can change Type of treatment state", "content_type": ["archaeological_finds", "treatmentstate"]}, {"codename": "delete_treatmentstate", "name": "Can delete Type of treatment state", "content_type": ["archaeological_finds", "treatmentstate"]}, {"codename": "add_treatmenttype", "name": "Can add Treatment type", "content_type": ["archaeological_finds", "treatmenttype"]}, {"codename": "change_treatmenttype", "name": "Can change Treatment type", "content_type": ["archaeological_finds", "treatmenttype"]}, {"codename": "delete_treatmenttype", "name": "Can delete Treatment type", "content_type": ["archaeological_finds", "treatmenttype"]}, {"codename": "add_acttype", "name": "Can add Act type", "content_type": ["archaeological_operations", "acttype"]}, {"codename": "change_acttype", "name": "Can change Act type", "content_type": ["archaeological_operations", "acttype"]}, {"codename": "delete_acttype", "name": "Can delete Act type", "content_type": ["archaeological_operations", "acttype"]}, {"codename": "add_administrativeact", "name": "Can add Administrative act", "content_type": ["archaeological_operations", "administrativeact"]}, {"codename": "add_own_administrativeact", "name": "Can add own Administrative act", "content_type": ["archaeological_operations", "administrativeact"]}, {"codename": "change_administrativeact", "name": "Can change Administrative act", "content_type": ["archaeological_operations", "administrativeact"]}, {"codename": "change_own_administrativeact", "name": "Can change own Administrative act", "content_type": ["archaeological_operations", "administrativeact"]}, {"codename": "delete_administrativeact", "name": "Can delete Administrative act", "content_type": ["archaeological_operations", "administrativeact"]}, {"codename": "delete_own_administrativeact", "name": "Can delete own Administrative act", "content_type": ["archaeological_operations", "administrativeact"]}, {"codename": "view_administrativeact", "name": "Can view all Administrative acts", "content_type": ["archaeological_operations", "administrativeact"]}, {"codename": "view_own_administrativeact", "name": "Can view own Administrative act", "content_type": ["archaeological_operations", "administrativeact"]}, {"codename": "add_archaeologicalsite", "name": "Can add Archaeological site", "content_type": ["archaeological_operations", "archaeologicalsite"]}, {"codename": "add_own_archaeologicalsite", "name": "Can add own Archaeological site", "content_type": ["archaeological_operations", "archaeologicalsite"]}, {"codename": "change_archaeologicalsite", "name": "Can change Archaeological site", "content_type": ["archaeological_operations", "archaeologicalsite"]}, {"codename": "change_own_archaeologicalsite", "name": "Can change own Archaeological site", "content_type": ["archaeological_operations", "archaeologicalsite"]}, {"codename": "delete_archaeologicalsite", "name": "Can delete Archaeological site", "content_type": ["archaeological_operations", "archaeologicalsite"]}, {"codename": "delete_own_archaeologicalsite", "name": "Can delete own Archaeological site", "content_type": ["archaeological_operations", "archaeologicalsite"]}, {"codename": "view_archaeologicalsite", "name": "Can view all Archaeological sites", "content_type": ["archaeological_operations", "archaeologicalsite"]}, {"codename": "view_own_archaeologicalsite", "name": "Can view own Archaeological site", "content_type": ["archaeological_operations", "archaeologicalsite"]}, {"codename": "add_historicaladministrativeact", "name": "Can add historical administrative act", "content_type": ["archaeological_operations", "historicaladministrativeact"]}, {"codename": "change_historicaladministrativeact", "name": "Can change historical administrative act", "content_type": ["archaeological_operations", "historicaladministrativeact"]}, {"codename": "delete_historicaladministrativeact", "name": "Can delete historical administrative act", "content_type": ["archaeological_operations", "historicaladministrativeact"]}, {"codename": "add_historicaloperation", "name": "Can add historical operation", "content_type": ["archaeological_operations", "historicaloperation"]}, {"codename": "change_historicaloperation", "name": "Can change historical operation", "content_type": ["archaeological_operations", "historicaloperation"]}, {"codename": "delete_historicaloperation", "name": "Can delete historical operation", "content_type": ["archaeological_operations", "historicaloperation"]}, {"codename": "add_operation", "name": "Can add Operation", "content_type": ["archaeological_operations", "operation"]}, {"codename": "add_own_operation", "name": "Can add own Operation", "content_type": ["archaeological_operations", "operation"]}, {"codename": "change_operation", "name": "Can change Operation", "content_type": ["archaeological_operations", "operation"]}, {"codename": "change_own_operation", "name": "Can change own Operation", "content_type": ["archaeological_operations", "operation"]}, {"codename": "close_operation", "name": "Can close Operation", "content_type": ["archaeological_operations", "operation"]}, {"codename": "delete_operation", "name": "Can delete Operation", "content_type": ["archaeological_operations", "operation"]}, {"codename": "delete_own_operation", "name": "Can delete own Operation", "content_type": ["archaeological_operations", "operation"]}, {"codename": "view_operation", "name": "Can view all Operations", "content_type": ["archaeological_operations", "operation"]}, {"codename": "view_own_operation", "name": "Can view own Operation", "content_type": ["archaeological_operations", "operation"]}, {"codename": "add_operationbydepartment", "name": "Can add operation by department", "content_type": ["archaeological_operations", "operationbydepartment"]}, {"codename": "change_operationbydepartment", "name": "Can change operation by department", "content_type": ["archaeological_operations", "operationbydepartment"]}, {"codename": "delete_operationbydepartment", "name": "Can delete operation by department", "content_type": ["archaeological_operations", "operationbydepartment"]}, {"codename": "add_operationsource", "name": "Can add Operation documentation", "content_type": ["archaeological_operations", "operationsource"]}, {"codename": "add_own_operationsource", "name": "Can add own Operation source", "content_type": ["archaeological_operations", "operationsource"]}, {"codename": "change_operationsource", "name": "Can change Operation documentation", "content_type": ["archaeological_operations", "operationsource"]}, {"codename": "change_own_operationsource", "name": "Can change own Operation source", "content_type": ["archaeological_operations", "operationsource"]}, {"codename": "delete_operationsource", "name": "Can delete Operation documentation", "content_type": ["archaeological_operations", "operationsource"]}, {"codename": "delete_own_operationsource", "name": "Can delete own Operation source", "content_type": ["archaeological_operations", "operationsource"]}, {"codename": "view_operationsource", "name": "Can view all Operation sources", "content_type": ["archaeological_operations", "operationsource"]}, {"codename": "view_own_operationsource", "name": "Can view own Operation source", "content_type": ["archaeological_operations", "operationsource"]}, {"codename": "add_operationtypeold", "name": "Can add Operation type old", "content_type": ["archaeological_operations", "operationtypeold"]}, {"codename": "change_operationtypeold", "name": "Can change Operation type old", "content_type": ["archaeological_operations", "operationtypeold"]}, {"codename": "delete_operationtypeold", "name": "Can delete Operation type old", "content_type": ["archaeological_operations", "operationtypeold"]}, {"codename": "add_parcel", "name": "Can add Parcel", "content_type": ["archaeological_operations", "parcel"]}, {"codename": "change_parcel", "name": "Can change Parcel", "content_type": ["archaeological_operations", "parcel"]}, {"codename": "delete_parcel", "name": "Can delete Parcel", "content_type": ["archaeological_operations", "parcel"]}, {"codename": "add_parcelowner", "name": "Can add Parcel owner", "content_type": ["archaeological_operations", "parcelowner"]}, {"codename": "change_parcelowner", "name": "Can change Parcel owner", "content_type": ["archaeological_operations", "parcelowner"]}, {"codename": "delete_parcelowner", "name": "Can delete Parcel owner", "content_type": ["archaeological_operations", "parcelowner"]}, {"codename": "add_period", "name": "Can add Type Period", "content_type": ["archaeological_operations", "period"]}, {"codename": "change_period", "name": "Can change Type Period", "content_type": ["archaeological_operations", "period"]}, {"codename": "delete_period", "name": "Can delete Type Period", "content_type": ["archaeological_operations", "period"]}, {"codename": "add_recordrelations", "name": "Can add Operation record relation", "content_type": ["archaeological_operations", "recordrelations"]}, {"codename": "change_recordrelations", "name": "Can change Operation record relation", "content_type": ["archaeological_operations", "recordrelations"]}, {"codename": "delete_recordrelations", "name": "Can delete Operation record relation", "content_type": ["archaeological_operations", "recordrelations"]}, {"codename": "add_relationtype", "name": "Can add Operation relation type", "content_type": ["archaeological_operations", "relationtype"]}, {"codename": "change_relationtype", "name": "Can change Operation relation type", "content_type": ["archaeological_operations", "relationtype"]}, {"codename": "delete_relationtype", "name": "Can delete Operation relation type", "content_type": ["archaeological_operations", "relationtype"]}, {"codename": "add_remaintype", "name": "Can add Remain type", "content_type": ["archaeological_operations", "remaintype"]}, {"codename": "change_remaintype", "name": "Can change Remain type", "content_type": ["archaeological_operations", "remaintype"]}, {"codename": "delete_remaintype", "name": "Can delete Remain type", "content_type": ["archaeological_operations", "remaintype"]}, {"codename": "add_reportstate", "name": "Can add Report state", "content_type": ["archaeological_operations", "reportstate"]}, {"codename": "change_reportstate", "name": "Can change Report state", "content_type": ["archaeological_operations", "reportstate"]}, {"codename": "delete_reportstate", "name": "Can delete Report state", "content_type": ["archaeological_operations", "reportstate"]}, {"codename": "add_collection", "name": "Can add Collection", "content_type": ["archaeological_warehouse", "collection"]}, {"codename": "change_collection", "name": "Can change Collection", "content_type": ["archaeological_warehouse", "collection"]}, {"codename": "delete_collection", "name": "Can delete Collection", "content_type": ["archaeological_warehouse", "collection"]}, {"codename": "add_container", "name": "Can add Container", "content_type": ["archaeological_warehouse", "container"]}, {"codename": "change_container", "name": "Can change Container", "content_type": ["archaeological_warehouse", "container"]}, {"codename": "delete_container", "name": "Can delete Container", "content_type": ["archaeological_warehouse", "container"]}, {"codename": "add_containerlocalisation", "name": "Can add Container localisation", "content_type": ["archaeological_warehouse", "containerlocalisation"]}, {"codename": "change_containerlocalisation", "name": "Can change Container localisation", "content_type": ["archaeological_warehouse", "containerlocalisation"]}, {"codename": "delete_containerlocalisation", "name": "Can delete Container localisation", "content_type": ["archaeological_warehouse", "containerlocalisation"]}, {"codename": "add_containertype", "name": "Can add Container type", "content_type": ["archaeological_warehouse", "containertype"]}, {"codename": "change_containertype", "name": "Can change Container type", "content_type": ["archaeological_warehouse", "containertype"]}, {"codename": "delete_containertype", "name": "Can delete Container type", "content_type": ["archaeological_warehouse", "containertype"]}, {"codename": "add_own_warehouse", "name": "Can add own Warehouse", "content_type": ["archaeological_warehouse", "warehouse"]}, {"codename": "add_warehouse", "name": "Can add Warehouse", "content_type": ["archaeological_warehouse", "warehouse"]}, {"codename": "change_own_warehouse", "name": "Can change own Warehouse", "content_type": ["archaeological_warehouse", "warehouse"]}, {"codename": "change_warehouse", "name": "Can change Warehouse", "content_type": ["archaeological_warehouse", "warehouse"]}, {"codename": "delete_own_warehouse", "name": "Can delete own Warehouse", "content_type": ["archaeological_warehouse", "warehouse"]}, {"codename": "delete_warehouse", "name": "Can delete Warehouse", "content_type": ["archaeological_warehouse", "warehouse"]}, {"codename": "view_own_warehouse", "name": "Can view own Warehouse", "content_type": ["archaeological_warehouse", "warehouse"]}, {"codename": "view_warehouse", "name": "Can view all Warehouses", "content_type": ["archaeological_warehouse", "warehouse"]}, {"codename": "add_warehousedivision", "name": "Can add Warehouse division", "content_type": ["archaeological_warehouse", "warehousedivision"]}, {"codename": "change_warehousedivision", "name": "Can change Warehouse division", "content_type": ["archaeological_warehouse", "warehousedivision"]}, {"codename": "delete_warehousedivision", "name": "Can delete Warehouse division", "content_type": ["archaeological_warehouse", "warehousedivision"]}, {"codename": "add_warehousedivisionlink", "name": "Can add warehouse division link", "content_type": ["archaeological_warehouse", "warehousedivisionlink"]}, {"codename": "change_warehousedivisionlink", "name": "Can change warehouse division link", "content_type": ["archaeological_warehouse", "warehousedivisionlink"]}, {"codename": "delete_warehousedivisionlink", "name": "Can delete warehouse division link", "content_type": ["archaeological_warehouse", "warehousedivisionlink"]}, {"codename": "add_warehousetype", "name": "Can add Warehouse type", "content_type": ["archaeological_warehouse", "warehousetype"]}, {"codename": "change_warehousetype", "name": "Can change Warehouse type", "content_type": ["archaeological_warehouse", "warehousetype"]}, {"codename": "delete_warehousetype", "name": "Can delete Warehouse type", "content_type": ["archaeological_warehouse", "warehousetype"]}, {"codename": "add_group", "name": "Can add group", "content_type": ["auth", "group"]}, {"codename": "change_group", "name": "Can change group", "content_type": ["auth", "group"]}, {"codename": "delete_group", "name": "Can delete group", "content_type": ["auth", "group"]}, {"codename": "add_permission", "name": "Can add permission", "content_type": ["auth", "permission"]}, {"codename": "change_permission", "name": "Can change permission", "content_type": ["auth", "permission"]}, {"codename": "delete_permission", "name": "Can delete permission", "content_type": ["auth", "permission"]}, {"codename": "add_user", "name": "Can add user", "content_type": ["auth", "user"]}, {"codename": "change_user", "name": "Can change user", "content_type": ["auth", "user"]}, {"codename": "delete_user", "name": "Can delete user", "content_type": ["auth", "user"]}, {"codename": "add_contenttype", "name": "Can add content type", "content_type": ["contenttypes", "contenttype"]}, {"codename": "change_contenttype", "name": "Can change content type", "content_type": ["contenttypes", "contenttype"]}, {"codename": "delete_contenttype", "name": "Can delete content type", "content_type": ["contenttypes", "contenttype"]}, {"codename": "add_arrondissement", "name": "Can add arrondissement", "content_type": ["ishtar_common", "arrondissement"]}, {"codename": "change_arrondissement", "name": "Can change arrondissement", "content_type": ["ishtar_common", "arrondissement"]}, {"codename": "delete_arrondissement", "name": "Can delete arrondissement", "content_type": ["ishtar_common", "arrondissement"]}, {"codename": "add_author", "name": "Can add Author", "content_type": ["ishtar_common", "author"]}, {"codename": "add_own_author", "name": "Can add own Author", "content_type": ["ishtar_common", "author"]}, {"codename": "change_author", "name": "Can change Author", "content_type": ["ishtar_common", "author"]}, {"codename": "change_own_author", "name": "Can change own Author", "content_type": ["ishtar_common", "author"]}, {"codename": "delete_author", "name": "Can delete Author", "content_type": ["ishtar_common", "author"]}, {"codename": "delete_own_author", "name": "Can delete own Author", "content_type": ["ishtar_common", "author"]}, {"codename": "view_author", "name": "Can view all Authors", "content_type": ["ishtar_common", "author"]}, {"codename": "view_own_author", "name": "Can view own Author", "content_type": ["ishtar_common", "author"]}, {"codename": "add_authortype", "name": "Can add Author type", "content_type": ["ishtar_common", "authortype"]}, {"codename": "change_authortype", "name": "Can change Author type", "content_type": ["ishtar_common", "authortype"]}, {"codename": "delete_authortype", "name": "Can delete Author type", "content_type": ["ishtar_common", "authortype"]}, {"codename": "add_canton", "name": "Can add canton", "content_type": ["ishtar_common", "canton"]}, {"codename": "change_canton", "name": "Can change canton", "content_type": ["ishtar_common", "canton"]}, {"codename": "delete_canton", "name": "Can delete canton", "content_type": ["ishtar_common", "canton"]}, {"codename": "add_department", "name": "Can add Department", "content_type": ["ishtar_common", "department"]}, {"codename": "change_department", "name": "Can change Department", "content_type": ["ishtar_common", "department"]}, {"codename": "delete_department", "name": "Can delete Department", "content_type": ["ishtar_common", "department"]}, {"codename": "add_documenttemplate", "name": "Can add Document template", "content_type": ["ishtar_common", "documenttemplate"]}, {"codename": "change_documenttemplate", "name": "Can change Document template", "content_type": ["ishtar_common", "documenttemplate"]}, {"codename": "delete_documenttemplate", "name": "Can delete Document template", "content_type": ["ishtar_common", "documenttemplate"]}, {"codename": "add_format", "name": "Can add Format", "content_type": ["ishtar_common", "format"]}, {"codename": "change_format", "name": "Can change Format", "content_type": ["ishtar_common", "format"]}, {"codename": "delete_format", "name": "Can delete Format", "content_type": ["ishtar_common", "format"]}, {"codename": "add_formatertype", "name": "Can add Importer - Formater type", "content_type": ["ishtar_common", "formatertype"]}, {"codename": "change_formatertype", "name": "Can change Importer - Formater type", "content_type": ["ishtar_common", "formatertype"]}, {"codename": "delete_formatertype", "name": "Can delete Importer - Formater type", "content_type": ["ishtar_common", "formatertype"]}, {"codename": "add_globalvar", "name": "Can add Global variable", "content_type": ["ishtar_common", "globalvar"]}, {"codename": "change_globalvar", "name": "Can change Global variable", "content_type": ["ishtar_common", "globalvar"]}, {"codename": "delete_globalvar", "name": "Can delete Global variable", "content_type": ["ishtar_common", "globalvar"]}, {"codename": "add_historicalorganization", "name": "Can add historical organization", "content_type": ["ishtar_common", "historicalorganization"]}, {"codename": "change_historicalorganization", "name": "Can change historical organization", "content_type": ["ishtar_common", "historicalorganization"]}, {"codename": "delete_historicalorganization", "name": "Can delete historical organization", "content_type": ["ishtar_common", "historicalorganization"]}, {"codename": "add_historicalperson", "name": "Can add historical person", "content_type": ["ishtar_common", "historicalperson"]}, {"codename": "change_historicalperson", "name": "Can change historical person", "content_type": ["ishtar_common", "historicalperson"]}, {"codename": "delete_historicalperson", "name": "Can delete historical person", "content_type": ["ishtar_common", "historicalperson"]}, {"codename": "add_import", "name": "Can add Import", "content_type": ["ishtar_common", "import"]}, {"codename": "change_import", "name": "Can change Import", "content_type": ["ishtar_common", "import"]}, {"codename": "delete_import", "name": "Can delete Import", "content_type": ["ishtar_common", "import"]}, {"codename": "add_importercolumn", "name": "Can add Importer - Column", "content_type": ["ishtar_common", "importercolumn"]}, {"codename": "change_importercolumn", "name": "Can change Importer - Column", "content_type": ["ishtar_common", "importercolumn"]}, {"codename": "delete_importercolumn", "name": "Can delete Importer - Column", "content_type": ["ishtar_common", "importercolumn"]}, {"codename": "add_importerdefault", "name": "Can add Importer - Default", "content_type": ["ishtar_common", "importerdefault"]}, {"codename": "change_importerdefault", "name": "Can change Importer - Default", "content_type": ["ishtar_common", "importerdefault"]}, {"codename": "delete_importerdefault", "name": "Can delete Importer - Default", "content_type": ["ishtar_common", "importerdefault"]}, {"codename": "add_importerdefaultvalues", "name": "Can add Importer - Default value", "content_type": ["ishtar_common", "importerdefaultvalues"]}, {"codename": "change_importerdefaultvalues", "name": "Can change Importer - Default value", "content_type": ["ishtar_common", "importerdefaultvalues"]}, {"codename": "delete_importerdefaultvalues", "name": "Can delete Importer - Default value", "content_type": ["ishtar_common", "importerdefaultvalues"]}, {"codename": "add_importerduplicatefield", "name": "Can add Importer - Duplicate field", "content_type": ["ishtar_common", "importerduplicatefield"]}, {"codename": "change_importerduplicatefield", "name": "Can change Importer - Duplicate field", "content_type": ["ishtar_common", "importerduplicatefield"]}, {"codename": "delete_importerduplicatefield", "name": "Can delete Importer - Duplicate field", "content_type": ["ishtar_common", "importerduplicatefield"]}, {"codename": "add_importermodel", "name": "Can add Importer - Model", "content_type": ["ishtar_common", "importermodel"]}, {"codename": "change_importermodel", "name": "Can change Importer - Model", "content_type": ["ishtar_common", "importermodel"]}, {"codename": "delete_importermodel", "name": "Can delete Importer - Model", "content_type": ["ishtar_common", "importermodel"]}, {"codename": "add_importertype", "name": "Can add Importer - Type", "content_type": ["ishtar_common", "importertype"]}, {"codename": "change_importertype", "name": "Can change Importer - Type", "content_type": ["ishtar_common", "importertype"]}, {"codename": "delete_importertype", "name": "Can delete Importer - Type", "content_type": ["ishtar_common", "importertype"]}, {"codename": "add_importtarget", "name": "Can add Importer - Target", "content_type": ["ishtar_common", "importtarget"]}, {"codename": "change_importtarget", "name": "Can change Importer - Target", "content_type": ["ishtar_common", "importtarget"]}, {"codename": "delete_importtarget", "name": "Can delete Importer - Target", "content_type": ["ishtar_common", "importtarget"]}, {"codename": "add_ishtarsiteprofile", "name": "Can add Ishtar site profile", "content_type": ["ishtar_common", "ishtarsiteprofile"]}, {"codename": "change_ishtarsiteprofile", "name": "Can change Ishtar site profile", "content_type": ["ishtar_common", "ishtarsiteprofile"]}, {"codename": "delete_ishtarsiteprofile", "name": "Can delete Ishtar site profile", "content_type": ["ishtar_common", "ishtarsiteprofile"]}, {"codename": "add_ishtaruser", "name": "Can add Ishtar user", "content_type": ["ishtar_common", "ishtaruser"]}, {"codename": "change_ishtaruser", "name": "Can change Ishtar user", "content_type": ["ishtar_common", "ishtaruser"]}, {"codename": "delete_ishtaruser", "name": "Can delete Ishtar user", "content_type": ["ishtar_common", "ishtaruser"]}, {"codename": "add_itemkey", "name": "Can add item key", "content_type": ["ishtar_common", "itemkey"]}, {"codename": "change_itemkey", "name": "Can change item key", "content_type": ["ishtar_common", "itemkey"]}, {"codename": "delete_itemkey", "name": "Can delete item key", "content_type": ["ishtar_common", "itemkey"]}, {"codename": "add_operationtype", "name": "Can add Operation type", "content_type": ["ishtar_common", "operationtype"]}, {"codename": "change_operationtype", "name": "Can change Operation type", "content_type": ["ishtar_common", "operationtype"]}, {"codename": "delete_operationtype", "name": "Can delete Operation type", "content_type": ["ishtar_common", "operationtype"]}, {"codename": "add_organization", "name": "Can add Organization", "content_type": ["ishtar_common", "organization"]}, {"codename": "add_own_organization", "name": "Can add own Organization", "content_type": ["ishtar_common", "organization"]}, {"codename": "change_organization", "name": "Can change Organization", "content_type": ["ishtar_common", "organization"]}, {"codename": "change_own_organization", "name": "Can change own Organization", "content_type": ["ishtar_common", "organization"]}, {"codename": "delete_organization", "name": "Can delete Organization", "content_type": ["ishtar_common", "organization"]}, {"codename": "delete_own_organization", "name": "Can delete own Organization", "content_type": ["ishtar_common", "organization"]}, {"codename": "view_organization", "name": "Can view all Organizations", "content_type": ["ishtar_common", "organization"]}, {"codename": "view_own_organization", "name": "Can view own Organization", "content_type": ["ishtar_common", "organization"]}, {"codename": "add_organizationtype", "name": "Can add Organization type", "content_type": ["ishtar_common", "organizationtype"]}, {"codename": "change_organizationtype", "name": "Can change Organization type", "content_type": ["ishtar_common", "organizationtype"]}, {"codename": "delete_organizationtype", "name": "Can delete Organization type", "content_type": ["ishtar_common", "organizationtype"]}, {"codename": "add_own_person", "name": "Can add own Person", "content_type": ["ishtar_common", "person"]}, {"codename": "add_person", "name": "Can add Person", "content_type": ["ishtar_common", "person"]}, {"codename": "change_own_person", "name": "Can change own Person", "content_type": ["ishtar_common", "person"]}, {"codename": "change_person", "name": "Can change Person", "content_type": ["ishtar_common", "person"]}, {"codename": "delete_own_person", "name": "Can delete own Person", "content_type": ["ishtar_common", "person"]}, {"codename": "delete_person", "name": "Can delete Person", "content_type": ["ishtar_common", "person"]}, {"codename": "view_own_person", "name": "Can view own Person", "content_type": ["ishtar_common", "person"]}, {"codename": "view_person", "name": "Can view all Persons", "content_type": ["ishtar_common", "person"]}, {"codename": "add_persontype", "name": "Can add Person type", "content_type": ["ishtar_common", "persontype"]}, {"codename": "change_persontype", "name": "Can change Person type", "content_type": ["ishtar_common", "persontype"]}, {"codename": "delete_persontype", "name": "Can delete Person type", "content_type": ["ishtar_common", "persontype"]}, {"codename": "add_regexp", "name": "Can add Importer - Regular expression", "content_type": ["ishtar_common", "regexp"]}, {"codename": "change_regexp", "name": "Can change Importer - Regular expression", "content_type": ["ishtar_common", "regexp"]}, {"codename": "delete_regexp", "name": "Can delete Importer - Regular expression", "content_type": ["ishtar_common", "regexp"]}, {"codename": "add_sourcetype", "name": "Can add Source type", "content_type": ["ishtar_common", "sourcetype"]}, {"codename": "change_sourcetype", "name": "Can change Source type", "content_type": ["ishtar_common", "sourcetype"]}, {"codename": "delete_sourcetype", "name": "Can delete Source type", "content_type": ["ishtar_common", "sourcetype"]}, {"codename": "add_spatialreferencesystem", "name": "Can add Spatial reference system", "content_type": ["ishtar_common", "spatialreferencesystem"]}, {"codename": "change_spatialreferencesystem", "name": "Can change Spatial reference system", "content_type": ["ishtar_common", "spatialreferencesystem"]}, {"codename": "delete_spatialreferencesystem", "name": "Can delete Spatial reference system", "content_type": ["ishtar_common", "spatialreferencesystem"]}, {"codename": "add_state", "name": "Can add State", "content_type": ["ishtar_common", "state"]}, {"codename": "change_state", "name": "Can change State", "content_type": ["ishtar_common", "state"]}, {"codename": "delete_state", "name": "Can delete State", "content_type": ["ishtar_common", "state"]}, {"codename": "add_supporttype", "name": "Can add Support type", "content_type": ["ishtar_common", "supporttype"]}, {"codename": "change_supporttype", "name": "Can change Support type", "content_type": ["ishtar_common", "supporttype"]}, {"codename": "delete_supporttype", "name": "Can delete Support type", "content_type": ["ishtar_common", "supporttype"]}, {"codename": "add_targetkey", "name": "Can add Importer - Target key", "content_type": ["ishtar_common", "targetkey"]}, {"codename": "change_targetkey", "name": "Can change Importer - Target key", "content_type": ["ishtar_common", "targetkey"]}, {"codename": "delete_targetkey", "name": "Can delete Importer - Target key", "content_type": ["ishtar_common", "targetkey"]}, {"codename": "add_titletype", "name": "Can add Title type", "content_type": ["ishtar_common", "titletype"]}, {"codename": "change_titletype", "name": "Can change Title type", "content_type": ["ishtar_common", "titletype"]}, {"codename": "delete_titletype", "name": "Can delete Title type", "content_type": ["ishtar_common", "titletype"]}, {"codename": "add_town", "name": "Can add Town", "content_type": ["ishtar_common", "town"]}, {"codename": "change_town", "name": "Can change Town", "content_type": ["ishtar_common", "town"]}, {"codename": "delete_town", "name": "Can delete Town", "content_type": ["ishtar_common", "town"]}, {"codename": "add_registrationprofile", "name": "Can add registration profile", "content_type": ["registration", "registrationprofile"]}, {"codename": "change_registrationprofile", "name": "Can change registration profile", "content_type": ["registration", "registrationprofile"]}, {"codename": "delete_registrationprofile", "name": "Can delete registration profile", "content_type": ["registration", "registrationprofile"]}, {"codename": "add_session", "name": "Can add session", "content_type": ["sessions", "session"]}, {"codename": "change_session", "name": "Can change session", "content_type": ["sessions", "session"]}, {"codename": "delete_session", "name": "Can delete session", "content_type": ["sessions", "session"]}, {"codename": "add_site", "name": "Can add site", "content_type": ["sites", "site"]}, {"codename": "change_site", "name": "Can change site", "content_type": ["sites", "site"]}, {"codename": "delete_site", "name": "Can delete site", "content_type": ["sites", "site"]}, {"codename": "add_migrationhistory", "name": "Can add migration history", "content_type": ["south", "migrationhistory"]}, {"codename": "change_migrationhistory", "name": "Can change migration history", "content_type": ["south", "migrationhistory"]}, {"codename": "delete_migrationhistory", "name": "Can delete migration history", "content_type": ["south", "migrationhistory"]}]} \ No newline at end of file
diff --git a/ishtar_common/management/commands/export_access_controls.py b/ishtar_common/management/commands/export_access_controls.py
new file mode 100644
index 000000000..87b4819b9
--- /dev/null
+++ b/ishtar_common/management/commands/export_access_controls.py
@@ -0,0 +1,89 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+# Copyright (C) 2017 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet>
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# See the file COPYING for details.
+
+import json
+import sys
+
+from django.core.management.base import BaseCommand
+
+from django.contrib.auth.models import Permission, Group
+from django.contrib.contenttypes.models import ContentType
+from ishtar_common.models import PersonType
+
+
+class Command(BaseCommand):
+ args = ''
+ help = 'Export access controls'
+
+ def handle(self, *args, **options):
+ result = {
+ 'content_types': [],
+ 'permissions': [],
+ 'groups': [],
+ 'group_perms': [],
+ 'person_types': [],
+ 'person_type_groups': [],
+ }
+
+ dct_ct = {}
+ for content_type in ContentType.objects.all():
+ value = {'app_label': content_type.app_label,
+ 'model': content_type.model,
+ 'name': content_type.name
+ }
+ result['content_types'].append(value)
+ dct_ct[content_type.pk] = (content_type.app_label,
+ content_type.model)
+
+ dct_perm = {}
+ for perm in Permission.objects.all():
+ value = {'content_type': dct_ct[perm.content_type_id],
+ 'codename': perm.codename,
+ 'name': perm.name}
+ result['permissions'].append(value)
+ dct_perm[perm.pk] = perm.codename
+
+ dct_groups = {}
+ for grp in Group.objects.all():
+ value = {
+ "name": grp.name
+ }
+ result['groups'].append(value)
+ dct_groups[grp.pk] = grp
+ for perm in grp.permissions.all():
+ result['group_perms'].append(
+ {'group': grp.name, 'permission': dct_perm[perm.pk]})
+
+ dct_pts = {}
+ for pt in PersonType.objects.all():
+ value = {
+ "label": pt.label,
+ "txt_idx": pt.txt_idx,
+ "comment": pt.comment,
+ "available": pt.available
+ }
+ result["person_types"].append(value)
+ dct_pts[pt.pk] = pt.txt_idx
+ for ptgp in pt.groups.all():
+ result['person_type_groups'].append(
+ {"person_type": pt.txt_idx, "group": ptgp.name}
+ )
+
+ data = json.dumps(result)
+ sys.stdout.write(data) \ No newline at end of file
diff --git a/ishtar_common/management/commands/import_access_controls.py b/ishtar_common/management/commands/import_access_controls.py
new file mode 100644
index 000000000..62692485d
--- /dev/null
+++ b/ishtar_common/management/commands/import_access_controls.py
@@ -0,0 +1,106 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+# Copyright (C) 2017 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet>
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# See the file COPYING for details.
+
+import json
+
+from django.core.management.base import BaseCommand
+
+from django.contrib.auth.models import Permission, Group
+from django.contrib.contenttypes.models import ContentType
+
+from ishtar_common.models import PersonType
+
+class Command(BaseCommand):
+ args = '<access control file>'
+ help = 'Import access controls'
+
+ def handle(self, *args, **options):
+ f = open(args[0])
+ data = json.loads(f.read())
+
+ res = {'content_types': {},
+ 'permissions': {},
+ 'groups': {},
+ 'person_types': {}
+ }
+ for content_type in data['content_types']:
+ q = ContentType.objects.filter(
+ app_label=content_type['app_label'],
+ model=content_type['model'])
+ if not q.count():
+ ct = ContentType.objects.create(
+ app_label=content_type['app_label'],
+ model=content_type['model'],
+ name=content_type['name']
+ )
+ print("created", ct)
+ else:
+ ct = q.all()[0]
+ res['content_types'][(ct.app_label,
+ ct.model)] = ct
+
+ for perm in data['permissions']:
+ app_label, model = perm['content_type']
+ q = Permission.objects.filter(
+ codename=perm['codename'],
+ content_type__app_label=app_label,
+ content_type__model= model
+ )
+ if q.count():
+ p = q.all()[0]
+ else:
+ p = Permission.objects.create(
+ name=perm['name'], codename=perm['codename'],
+ content_type=res['content_types'][(app_label, model)])
+ print("created", p)
+ res['permissions'][perm['codename']] = p
+
+ for gp in data['groups']:
+ q = Group.objects.filter(name=gp['name'])
+ if q.count():
+ g = q.all()[0]
+ else:
+ g = Group.objects.create(name=gp['name'])
+ print("created", g)
+ res['groups'][gp['name']] = g
+ g.permissions.clear()
+
+ for gperm in data['group_perms']:
+ g = res['groups'][gperm['group']]
+ g.permissions.add(res['permissions'][gperm['permission']])
+
+ for pt in data['person_types']:
+ q = PersonType.objects.filter(txt_idx=pt['txt_idx'])
+ if q.count():
+ pt = q.all()[0]
+ else:
+ pt = PersonType.objects.create(
+ label=pt['label'],
+ txt_idx=pt['txt_idx'],
+ comment=pt['comment'],
+ available=pt['available']
+ )
+ print("created", pt)
+ res['person_types'][pt.txt_idx] = pt
+ pt.groups.clear()
+
+ for ptgp in data['person_type_groups']:
+ pt = res['person_types'][ptgp['person_type']]
+ gp = res['groups'][ptgp['group']]
+ pt.groups.add(gp)