Skip to content

Commit

Permalink
Merge pull request #261 from jawaidm/main
Browse files Browse the repository at this point in the history
Merge segregated branch into main
  • Loading branch information
jawaidm authored Mar 22, 2023
2 parents c7781bc + 2c01a8d commit ff38db1
Show file tree
Hide file tree
Showing 479 changed files with 7,214 additions and 3,533 deletions.
6 changes: 3 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
.settings/
.env
venv/
venv2/
venv3.8/
venv*/
#venv2/
#venv3.8/
node_modules/
#cronjobs
.ropeproject/
Expand Down
10 changes: 7 additions & 3 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,9 @@ COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt \
&& rm -rf /var/lib/{apt,dpkg,cache,log}/ /tmp/* /var/tmp/*

COPY libgeos.py.patch /app/
RUN patch /usr/local/lib/python3.8/dist-packages/django/contrib/gis/geos/libgeos.py /app/libgeos.py.patch
RUN rm /app/libgeos.py.patch
#COPY libgeos.py.patch /app/
#RUN patch /usr/local/lib/python3.8/dist-packages/django/contrib/gis/geos/libgeos.py /app/libgeos.py.patch
#RUN rm /app/libgeos.py.patch

# Install the project (ensure that frontend projects have been built prior to this step).
FROM python_libs_ml
Expand All @@ -53,6 +53,10 @@ RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN touch /app/.env
COPY .git ./.git
COPY mooringlicensing ./mooringlicensing
COPY patch_for_admin_0001_initial.patch ./patch_for_admin_0001_initial.patch
COPY patch_for_admin_0001_initial.patch_revert ./patch_for_admin_0001_initial.patch_revert
COPY patch_for_reversion_0001.patch ./patch_for_reversion_0001.patch
COPY patch_for_reversion_0001.patch_revert ./patch_for_reversion_0001.patch_revert
RUN python manage_ml.py collectstatic --noinput

RUN mkdir /app/tmp/
Expand Down
80 changes: 52 additions & 28 deletions mooringlicensing/admin.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,18 @@
from django.contrib.admin import AdminSite
from django.contrib import admin
# from mooringlicensing.components.main import models
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import Group
from django.conf import settings

from ledger.accounts import admin as ledger_admin
# from ledger.accounts import admin as ledger_admin
#from ledger.accounts.models import EmailUser, Document, Address, Profile
from ledger.accounts.models import EmailUser
# from ledger.accounts.models import EmailUser
from ledger_api_client.ledger_models import EmailUserRO
from copy import deepcopy

admin.site.index_template = 'admin-index.html'
admin.autodiscover()

class MooringLicensingAdminSite(AdminSite):
site_header = 'Mooring Licensing Administration'
Expand All @@ -17,31 +21,51 @@ class MooringLicensingAdminSite(AdminSite):

mooringlicensing_admin_site = MooringLicensingAdminSite(name='mooringlicensingadmin')

admin.site.unregister(EmailUser) # because this base classAdmin alsready registered in ledger.accounts.admin
@admin.register(EmailUser)
class EmailUserAdmin(ledger_admin.EmailUserAdmin):
"""
Overriding the EmailUserAdmin from ledger.accounts.admin, to remove is_superuser checkbox field on Admin page
"""

def get_fieldsets(self, request, obj=None):
""" Remove the is_superuser checkbox from the Admin page, if user is MooringLicensingAdmin and NOT superuser """
fieldsets = super(UserAdmin, self).get_fieldsets(request, obj)
#if not obj:
# return fieldsets

if request.user.is_superuser:
return fieldsets

# User is not a superuser, remove is_superuser checkbox
fieldsets = deepcopy(fieldsets)
for fieldset in fieldsets:
if 'is_superuser' in fieldset[1]['fields']:
if type(fieldset[1]['fields']) == tuple :
fieldset[1]['fields'] = list(fieldset[1]['fields'])
fieldset[1]['fields'].remove('is_superuser')
break

return fieldsets
# admin.site.unregister(EmailUser) # because this base classAdmin alsready registered in ledger.accounts.admin
# @admin.register(EmailUser)
# class EmailUserAdmin(admin.ModelAdmin):
# # class EmailUserAdmin(ledger_admin.EmailUserAdmin):
# """
# Overriding the EmailUserAdmin from ledger.accounts.admin, to remove is_superuser checkbox field on Admin page
# """
#
# def get_fieldsets(self, request, obj=None):
# """ Remove the is_superuser checkbox from the Admin page, if user is MooringLicensingAdmin and NOT superuser """
# fieldsets = super(UserAdmin, self).get_fieldsets(request, obj)
# #if not obj:
# # return fieldsets
#
# if request.user.is_superuser:
# return fieldsets
#
# # User is not a superuser, remove is_superuser checkbox
# fieldsets = deepcopy(fieldsets)
# for fieldset in fieldsets:
# if 'is_superuser' in fieldset[1]['fields']:
# if type(fieldset[1]['fields']) == tuple :
# fieldset[1]['fields'] = list(fieldset[1]['fields'])
# fieldset[1]['fields'].remove('is_superuser')
# break
#
# return fieldsets
#
#
# @admin.register(EmailUserRO)
class EmailUserAdmin(admin.ModelAdmin):
list_display = (
"email",
"first_name",
"last_name",
"is_staff",
"is_active",
)
ordering = ("email",)
search_fields = ("id", "email", "first_name", "last_name")

def has_change_permission(self, request, obj=None):
if obj is None: # and obj.status > 1:
return True
return None

def has_delete_permission(self, request, obj=None):
return None
Loading

0 comments on commit ff38db1

Please sign in to comment.