Skip to content

Commit

Permalink
Merge pull request #184 from amschaal/python3
Browse files Browse the repository at this point in the history
Python3
  • Loading branch information
amschaal authored May 11, 2022
2 parents 1a6f46b + 108d693 commit 8399bfe
Show file tree
Hide file tree
Showing 37 changed files with 802 additions and 249 deletions.
5 changes: 5 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
.venv
.git
.gitignore
.project
.pydevproject
4 changes: 2 additions & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@
url = git@github.com:amschaal/angular-remote-table.git
[submodule "django_json_forms"]
path = django_json_forms
url = git@bitbucket.org:amschaal/django_json_forms.git
branch = layout-forms
url = git@github.com:amschaal/django_json_forms.git
branch = main
17 changes: 17 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
FROM python:3.9

RUN apt-get update \
&& apt-get install -y --no-install-recommends \
postgresql \
postgresql-client \
&& rm -rf /var/lib/apt/lists/*



WORKDIR /usr/src/app
COPY requirements.txt ./
RUN pip install -r requirements.txt
COPY . .

#EXPOSE 8000
#CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
2 changes: 1 addition & 1 deletion django_json_forms
2 changes: 1 addition & 1 deletion django_logger/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ def object_queryset(model_or_instance=None):
return Log.objects.filter(**kwargs)

class LogRelated(models.Model):
log = models.ForeignKey(Log,related_name='related_objects')
log = models.ForeignKey(Log,related_name='related_objects', on_delete=models.CASCADE)
content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
object_id = models.CharField(max_length=25)
content_object = GenericForeignKey('content_type', 'object_id')
18 changes: 18 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
version: "3.9"
services:
web:
build: .
ports:
- "8000:8000"
command: python manage.py runserver 0.0.0.0:8000
volumes:
- .:/usr/src/app
db:
image: postgres:13
volumes:
- postgres_data:/var/lib/postgresql/data/
environment:
- "POSTGRES_HOST_AUTH_METHOD=trust"

volumes:
postgres_data:
2 changes: 0 additions & 2 deletions ezreg/api/filters.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@ def filter_queryset(self, request, queryset, view):
filters = {}
for mf in multi_filters:
val = view.request.query_params.getlist(mf,None)
print mf
print val
if val:
filters[mf]=val
if len(filters):
Expand Down
12 changes: 5 additions & 7 deletions ezreg/api/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ def complete(self,request, pk=None):
try:
refund.set_status(Refund.STATUS_COMPLETED,request.user)
return Response({'status': 'success', 'refund':RefundSerializer(refund).data, 'detail': 'Refund set as complete.'})
except Exception, e:
except Exception as e:
return Response({'status': 'error', 'detail': str(e)},status=status.HTTP_400_BAD_REQUEST)
@action(methods=['POST'], detail=True)
def cancel(self,request, pk=None):
Expand All @@ -180,7 +180,7 @@ def cancel(self,request, pk=None):
try:
refund.set_status(Refund.STATUS_CANCELLED,request.user)
return Response({'status': 'success', 'refund':RefundSerializer(refund).data, 'detail': 'Refund set as complete.'})
except Exception, e:
except Exception as e:
return Response({'status': 'error', 'detail': str(e)},status=status.HTTP_400_BAD_REQUEST)

@api_view(['POST','GET'])
Expand All @@ -190,14 +190,12 @@ def event_payment_processors(request, event):
if request.method == 'POST':
processors = request.data.get('processors')
EventProcessor.objects.filter(event=event).delete()
for id, processor in processors.iteritems():
print id
print processor
for id, processor in processors.items():
if processor['enabled']:
EventProcessor.objects.create(processor_id=id,event=event)
event_processors = EventProcessor.objects.filter(event=event)
return Response({'processors':{p.processor_id:{'enabled':True} for p in event_processors}})
except Exception, e:
except Exception as e:
return Response({'error':str(e)},status=status.HTTP_400_BAD_REQUEST)
# EventProcessor.objects.
# payment_processors = PaymentProcessor.objects.filter(group=event.group)
Expand All @@ -224,7 +222,7 @@ def update_event_form(request, event):
if request.data.get('form_fields'):
event.form_fields = request.data.get('form_fields')
for i, field in enumerate(event.form_fields):
if field.has_key('html'):
if 'html' in field:
event.form_fields[i]['html'] = bleach.clean(event.form_fields[i]['html'], **get_bleach_default_options())#removetags(event.form_fields[i]['html'], 'script style')
event.save()
return Response({'status':'success'})
Expand Down
2 changes: 1 addition & 1 deletion ezreg/context_processors.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
from django.conf import settings

def permissions_processor(request):
if not request.user.is_authenticated():
if not request.user.is_authenticated:
return {'OrganizerUserPermission':OrganizerUserPermission}
elif request.user.is_staff:
permissions = [p[0] for p in OrganizerUserPermission.PERMISSION_CHOICES]
Expand Down
8 changes: 4 additions & 4 deletions ezreg/decorators.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from django.core.exceptions import PermissionDenied
from django.core.urlresolvers import reverse
from django.shortcuts import redirect
from ezreg.models import OrganizerUserPermission
from django.urls.base import reverse
class event_access_decorator(object):

def __init__(self, perms,event_param='event',require_all=True):
Expand All @@ -25,7 +25,7 @@ def wrapped_f(*args,**kwargs):
event = Event.objects.get(id=kwargs[self.event_param])
kwargs[self.event_param]=event
request = args[0]
if not request.user.is_authenticated():
if not request.user.is_authenticated:
if not request.is_ajax():
# @todo: use correct url
url = reverse('home') + '?next=%s' % request.get_full_path()
Expand Down Expand Up @@ -66,7 +66,7 @@ def __call__(self, f):
def wrapped_f(*args,**kwargs):
request = args[0]

if not request.user.is_authenticated():
if not request.user.is_authenticated:
if not request.is_ajax():
# @todo: use correct url
url = reverse('home') + '?next=%s' % request.get_full_path()
Expand Down Expand Up @@ -103,7 +103,7 @@ def __call__(self, f):
# print "Inside __call__()"
def wrapped_f(*args,**kwargs):
request = args[0]
if not request.user.is_authenticated():
if not request.user.is_authenticated:
if not request.is_ajax():
url = reverse('home') + '?next=%s' % request.get_full_path()
return redirect(url)
Expand Down
6 changes: 2 additions & 4 deletions ezreg/email.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ def generate_email(to,from_addr,subject,template,html_template,context={},bcc=No
body = render_to_string(template,context)
message = MailerMessage(to_address=', '.join(to),from_address=from_addr,subject=subject,content=body,html_content=html)
if bcc:
if isinstance(bcc, basestring):
if isinstance(bcc, str):
message.bcc_address = bcc
elif isinstance(bcc, (list, tuple)):
message.bcc_address = ', '.join(bcc)
Expand All @@ -31,7 +31,7 @@ def send_text_email(to,from_addr,subject,body,context={},cc=[],bcc=[],registrati
body = render_to_string(body,context)
message = MailerMessage(to_address=', '.join(to),from_address=from_addr,subject=subject,content=body)
if bcc:
if isinstance(bcc, basestring):
if isinstance(bcc, str):
message.bcc_address = bcc
elif isinstance(bcc, (list, tuple)):
message.bcc_address = ', '.join(bcc)
Expand All @@ -51,8 +51,6 @@ def send_email(to,from_addr,subject,template,html_template=None,context={},cc=[]

def send_ical_email(event,to,from_addr,subject,template,html_template=None,context={},cc=None,bcc=None,registration=None):
msg = generate_email(to, from_addr, subject, template, html_template=html_template, context=context, bcc=bcc,registration=registration)
print 'Event ical'
print event.ical
if event.ical:
from django.core.files import File
ical = File(open(event.ical, "r"))
Expand Down
2 changes: 1 addition & 1 deletion ezreg/error_views.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from django.shortcuts import render

def handler403(request):
def handler403(request, exception):
response = render(request,'errors/403.html', {})
response.status_code = 403
return response
2 changes: 1 addition & 1 deletion ezreg/feeds.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from django.contrib.syndication.views import Feed
from django.urls import reverse
from models import Event, Organizer
from ezreg.models import Event, Organizer
from django.conf import settings
from django.utils import timezone

Expand Down
2 changes: 1 addition & 1 deletion ezreg/fields.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ def get_db_prep_value(self, value, *args, **kwargs):
if not value:
return
if isinstance(value,list):
return ','.join(unicode(s) for s in value)
return ','.join(value)#unicode(s) for s in value
return value
def value_to_string(self, obj):
value = self._get_val_from_obj(obj)
Expand Down
5 changes: 1 addition & 4 deletions ezreg/forms.py
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ class Meta:
'billed': 'Beware, once an event is billed, it may not be unbilled.'
}
widgets = {
'open_until':DateWidget(attrs={'id':"open_until"}, usel10n = True, bootstrap_version=3),
'open_until':DateWidget(attrs={'id':"open_until"}, usel10n = True, bootstrap_version=3),
#Use localization and bootstrap 3
'start_time': DateTimeWidget(attrs={'id':"start_time"},options={'format': 'yyyy-mm-dd hh:ii','minuteStep':15}, usel10n = False, bootstrap_version=3),
'end_time': DateTimeWidget(attrs={'id':"end_time"}, options={'format': 'yyyy-mm-dd hh:ii','minuteStep':15}, usel10n = False, bootstrap_version=3)
Expand Down Expand Up @@ -163,7 +163,6 @@ def __init__(self, *args, **kwargs):
self.fields[field].required=True
def clean_email(self):
email = self.cleaned_data['email']
print self.instance.id
if email and not self.instance.test:
if Registration.objects.filter(email__iexact=email, event=self.event).exclude(id=self.instance.id).exclude(status__in=[Registration.STATUS_CANCELLED,Registration.STATUS_APPLIED_DENIED]).exclude(test=True).count() != 0:
raise ValidationError('A registration with that email already exists.')
Expand Down Expand Up @@ -290,9 +289,7 @@ class AdminPaymentForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(AdminPaymentForm, self).__init__(*args, **kwargs)
instance = getattr(self, 'instance', None)
print "ADMIN PAYMENT FORM"
if instance and instance.status == Payment.STATUS_PAID:
print "PAID"
self.fields['status'].disabled = True
self.fields['status'].help_text = 'A status of PAID may not be changed. Refunds may be issued, but the original status must remain.'
class Meta:
Expand Down
2 changes: 1 addition & 1 deletion ezreg/jsutils.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ def handle_url_module(js_patterns, module_name, prefix=""):
Load the module and output all of the patterns
Recurse on the included modules
"""
if isinstance(module_name, basestring):
if isinstance(module_name, str):
__import__(module_name)
root_urls = sys.modules[module_name]
patterns = root_urls.urlpatterns
Expand Down
24 changes: 12 additions & 12 deletions ezreg/migrations/0001_initial.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,14 +48,14 @@ class Migration(migrations.Migration):
('slug', models.SlugField(blank=True)),
('heading', models.CharField(max_length=40)),
('body', models.TextField()),
('event', models.ForeignKey(related_name='pages', to='ezreg.Event')),
('event', models.ForeignKey(related_name='pages', to='ezreg.Event', on_delete=models.CASCADE)),
],
),
migrations.CreateModel(
name='EventProcessor',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('event', models.ForeignKey(to='ezreg.Event')),
('event', models.ForeignKey(to='ezreg.Event', on_delete=models.CASCADE)),
],
),
migrations.CreateModel(
Expand All @@ -72,8 +72,8 @@ class Migration(migrations.Migration):
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('permission', models.CharField(max_length=10, choices=[(b'admin', b'Administer'), (b'view', b'View registrations')])),
('organizer', models.ForeignKey(related_name='user_permissions', to='ezreg.Organizer')),
('user', models.ForeignKey(to=settings.AUTH_USER_MODEL)),
('organizer', models.ForeignKey(related_name='user_permissions', to='ezreg.Organizer', on_delete=models.CASCADE)),
('user', models.ForeignKey(to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)),
],
),
migrations.CreateModel(
Expand All @@ -95,7 +95,7 @@ class Migration(migrations.Migration):
('description', models.TextField(blank=True)),
('hidden', models.BooleanField(default=False)),
('config', jsonfield.fields.JSONField()),
('organizer', models.ForeignKey(to='ezreg.Organizer')),
('organizer', models.ForeignKey(to='ezreg.Organizer', on_delete=models.PROTECT)),
],
),
migrations.CreateModel(
Expand All @@ -107,7 +107,7 @@ class Migration(migrations.Migration):
('amount', models.DecimalField(max_digits=7, decimal_places=2)),
('start_date', models.DateField(null=True, blank=True)),
('end_date', models.DateField(null=True, blank=True)),
('event', models.ForeignKey(related_name='prices', to='ezreg.Event')),
('event', models.ForeignKey(related_name='prices', to='ezreg.Event', on_delete=models.CASCADE)),
],
),
migrations.CreateModel(
Expand All @@ -122,29 +122,29 @@ class Migration(migrations.Migration):
('test', models.BooleanField(default=False)),
('data', jsonfield.fields.JSONField(null=True, blank=True)),
('email_messages', models.ManyToManyField(related_name='registrations', to='mailqueue.MailerMessage')),
('event', models.ForeignKey(related_name='registrations', to='ezreg.Event')),
('price', models.ForeignKey(blank=True, to='ezreg.Price', null=True)),
('event', models.ForeignKey(related_name='registrations', to='ezreg.Event', on_delete=models.PROTECT)),
('price', models.ForeignKey(blank=True, to='ezreg.Price', null=True, on_delete=models.PROTECT)),
],
),
migrations.AddField(
model_name='payment',
name='processor',
field=models.ForeignKey(blank=True, to='ezreg.PaymentProcessor', null=True),
field=models.ForeignKey(blank=True, to='ezreg.PaymentProcessor', null=True, on_delete=models.PROTECT),
),
migrations.AddField(
model_name='payment',
name='registration',
field=models.OneToOneField(related_name='payment', to='ezreg.Registration'),
field=models.OneToOneField(related_name='payment', to='ezreg.Registration', on_delete=models.PROTECT),
),
migrations.AddField(
model_name='eventprocessor',
name='processor',
field=models.ForeignKey(to='ezreg.PaymentProcessor'),
field=models.ForeignKey(to='ezreg.PaymentProcessor', on_delete=models.PROTECT),
),
migrations.AddField(
model_name='event',
name='organizer',
field=models.ForeignKey(to='ezreg.Organizer'),
field=models.ForeignKey(to='ezreg.Organizer', on_delete=models.PROTECT),
),
migrations.AddField(
model_name='event',
Expand Down
Loading

0 comments on commit 8399bfe

Please sign in to comment.