Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
A
AlekSIS-App-Tezor
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
AlekSIS®
Onboarding
AlekSIS-App-Tezor
Commits
9b92d753
Commit
9b92d753
authored
3 years ago
by
Tom Teichler
Browse files
Options
Downloads
Plain Diff
Merge branch 'master' into payment-backends
parents
c28f5258
003e6363
No related branches found
Branches containing commit
No related tags found
Tags containing commit
2 merge requests
!8
Resolve "Add payment processing UI"
,
!3
Implement payment backends and interaction
Pipeline
#59196
failed
3 years ago
Stage: prepare
Stage: test
Stage: build
Stage: publish
Stage: docker
Changes
2
Pipelines
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
aleksis/apps/tezor/rules.py
+72
-0
72 additions, 0 deletions
aleksis/apps/tezor/rules.py
aleksis/apps/tezor/views.py
+10
-10
10 additions, 10 deletions
aleksis/apps/tezor/views.py
with
82 additions
and
10 deletions
aleksis/apps/tezor/rules.py
0 → 100644
+
72
−
0
View file @
9b92d753
import
rules
from
.models.base
import
Client
from
.models.invoice
import
Invoice
,
InvoiceGroup
from
aleksis.core.util.predicates
import
has_person
,
has_global_perm
,
has_any_object
,
has_object_perm
# View clients
view_clients_predicate
=
has_person
&
(
has_global_perm
(
"
tezor.view_client
"
)
|
has_any_object
(
"
tezor.view_client
"
,
Client
)
)
rules
.
add_perm
(
"
tezor.view_clients_rule
"
,
view_clients_predicate
)
# View client
view_client_predicate
=
has_person
&
(
has_global_perm
(
"
tezor.view_client
"
)
|
has_object_perm
(
"
tezor.view_client
"
)
)
rules
.
add_perm
(
"
tezor.view_client_rule
"
,
view_client_predicate
)
# Edit clients
edit_client_predicate
=
has_person
&
(
has_global_perm
(
"
tezor.edit_client
"
)
|
has_object_perm
(
"
tezor.edit_client
"
)
)
rules
.
add_perm
(
"
tezor.edit_client_rule
"
,
edit_client_predicate
)
# Create clients
create_client_predicate
=
has_person
&
(
has_global_perm
(
"
tezor.create_client
"
)
|
has_any_object
(
"
tezor.create_client
"
,
Client
)
)
rules
.
add_perm
(
"
tezor.create_client_rule
"
,
create_client_predicate
)
# Delete clients
delete_client_predicate
=
has_person
&
(
has_global_perm
(
"
tezor.delete_client
"
)
|
has_object_perm
(
"
tezor.delete_client
"
)
)
rules
.
add_perm
(
"
tezor.delete_client_rule
"
,
delete_client_predicate
)
# View invoice groups
view_invoice_groups_predicate
=
has_person
&
(
has_global_perm
(
"
tezor.view_invoice_group
"
)
|
has_any_object
(
"
tezor.view_invoice_group
"
,
InvoiceGroup
)
)
rules
.
add_perm
(
"
tezor.view_invoice_groups_rule
"
,
view_invoice_groups_predicate
)
# View invoice_group
view_invoice_group_predicate
=
has_person
&
(
has_global_perm
(
"
tezor.view_invoice_group
"
)
|
has_object_perm
(
"
tezor.view_invoice_group
"
)
)
rules
.
add_perm
(
"
tezor.view_invoice_group_rule
"
,
view_invoice_group_predicate
)
# Edit invoice groups
edit_invoice_group_predicate
=
has_person
&
(
has_global_perm
(
"
tezor.edit_invoice_group
"
)
|
has_object_perm
(
"
tezor.edit_invoice_group
"
)
)
rules
.
add_perm
(
"
tezor.edit_invoice_group_rule
"
,
edit_invoice_group_predicate
)
# Create invoice groups
create_invoice_groups_predicate
=
has_person
&
(
has_global_perm
(
"
tezor.create_invoice_group
"
)
|
has_any_object
(
"
tezor.create_invoice_group
"
,
InvoiceGroup
)
)
rules
.
add_perm
(
"
tezor.create_invoice_groups_rule
"
,
create_invoice_groups_predicate
)
# Delete invoice groups
delete_invoice_groups_predicate
=
has_person
&
(
has_global_perm
(
"
tezor.delete_invoice_group
"
)
|
has_any_object
(
"
tezor.delete_invoice_group
"
,
InvoiceGroup
)
)
rules
.
add_perm
(
"
tezor.delete_invoice_groups_rule
"
,
delete_invoice_groups_predicate
)
# View invoice
view_invoice_predicate
=
has_person
&
(
has_global_perm
(
"
tezor.view_invoice
"
)
|
has_object_perm
(
"
tezor.view_invoice
"
)
)
rules
.
add_perm
(
"
tezor.view_invoice_rule
"
,
view_invoice_predicate
)
This diff is collapsed.
Click to expand it.
aleksis/apps/tezor/views.py
+
10
−
10
View file @
9b92d753
...
...
@@ -57,7 +57,7 @@ class ClientListView(PermissionRequiredMixin, SingleTableView):
model
=
Client
table_class
=
ClientsTable
permission_required
=
"
tezor.view_clients
"
permission_required
=
"
tezor.view_clients
_rule
"
template_name
=
"
tezor/client/list.html
"
...
...
@@ -67,7 +67,7 @@ class ClientCreateView(PermissionRequiredMixin, AdvancedCreateView):
model
=
Client
form_class
=
EditClientForm
permission_required
=
"
tezor.
add
_client
s
"
permission_required
=
"
tezor.
create
_client
_rule
"
template_name
=
"
tezor/client/create.html
"
success_url
=
reverse_lazy
(
"
clients
"
)
success_message
=
_
(
"
The client has been created.
"
)
...
...
@@ -79,7 +79,7 @@ class ClientEditView(PermissionRequiredMixin, AdvancedEditView):
model
=
Client
form_class
=
EditClientForm
permission_required
=
"
tezor.edit_client
s
"
permission_required
=
"
tezor.edit_client
_rule
"
template_name
=
"
tezor/client/edit.html
"
success_url
=
reverse_lazy
(
"
clients
"
)
success_message
=
_
(
"
The client has been saved.
"
)
...
...
@@ -89,7 +89,7 @@ class ClientDeleteView(PermissionRequiredMixin, AdvancedDeleteView):
"""
Delete view for client.
"""
model
=
Client
permission_required
=
"
tezor.delete_client
"
permission_required
=
"
tezor.delete_client
_rule
"
template_name
=
"
core/pages/delete.html
"
success_url
=
reverse_lazy
(
"
clients
"
)
success_message
=
_
(
"
The client has been deleted.
"
)
...
...
@@ -98,7 +98,7 @@ class ClientDeleteView(PermissionRequiredMixin, AdvancedDeleteView):
class
ClientDetailView
(
PermissionRequiredMixin
,
DetailView
):
model
=
Client
permission_required
=
"
tezor.view_client
"
permission_required
=
"
tezor.view_client
_rule
"
template_name
=
"
tezor/client/full.html
"
def
get_context_data
(
self
,
object
):
...
...
@@ -114,7 +114,7 @@ class ClientDetailView(PermissionRequiredMixin, DetailView):
class
InvoiceGroupDetailView
(
PermissionRequiredMixin
,
DetailView
):
model
=
InvoiceGroup
permission_required
=
"
tezor.view_invoice_group
"
permission_required
=
"
tezor.view_invoice_group
_rule
"
template_name
=
"
tezor/invoice_group/full.html
"
def
get_context_data
(
self
,
object
):
...
...
@@ -134,7 +134,7 @@ class InvoiceGroupCreateView(PermissionRequiredMixin, AdvancedCreateView):
model
=
InvoiceGroup
form_class
=
EditInvoiceGroupForm
permission_required
=
"
tezor.
add
_invoice_groups
"
permission_required
=
"
tezor.
create
_invoice_groups
_rule
"
template_name
=
"
tezor/invoice_group/create.html
"
success_url
=
reverse_lazy
(
"
clients
"
)
success_message
=
_
(
"
The invoice_group has been created.
"
)
...
...
@@ -152,7 +152,7 @@ class InvoiceGroupEditView(PermissionRequiredMixin, AdvancedEditView):
model
=
InvoiceGroup
form_class
=
EditInvoiceGroupForm
permission_required
=
"
tezor.edit_invoice_group
s
"
permission_required
=
"
tezor.edit_invoice_group
_rule
"
template_name
=
"
tezor/invoice_group/edit.html
"
success_url
=
reverse_lazy
(
"
invoice_groups
"
)
success_message
=
_
(
"
The invoice_group has been saved.
"
)
...
...
@@ -162,7 +162,7 @@ class InvoiceGroupDeleteView(PermissionRequiredMixin, AdvancedDeleteView):
"""
Delete view for invoice_group.
"""
model
=
InvoiceGroup
permission_required
=
"
tezor.delete_invoice_group
"
permission_required
=
"
tezor.delete_invoice_group
_rule
"
template_name
=
"
core/pages/delete.html
"
success_url
=
reverse_lazy
(
"
invoice_groups
"
)
success_message
=
_
(
"
The invoice_group has been deleted.
"
)
...
...
@@ -171,5 +171,5 @@ class InvoiceGroupDeleteView(PermissionRequiredMixin, AdvancedDeleteView):
class
InvoiceDetailView
(
PermissionRequiredMixin
,
DetailView
):
model
=
Invoice
permission_required
=
"
tezor.view_invoice
"
permission_required
=
"
tezor.view_invoice
_rule
"
template_name
=
"
tezor/invoice/full.html
"
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment