Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion events/admin.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
from django.contrib import admin
from .models import Event, EventParticipant
from .models import Event, EventParticipant, RequestEvent

admin.site.register(Event)
admin.site.register(EventParticipant)
admin.site.register(RequestEvent)
7 changes: 6 additions & 1 deletion events/forms.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,14 @@
from django.forms import ModelForm
from .models import EventParticipant
from .models import EventParticipant, RequestEvent


class ParticipantForm(ModelForm):
class Meta:
model = EventParticipant
fields = ['title', 'student_name',
'email_id', 'mobile_number', 'roll_no', 'branch']

class RequestEventForm(ModelForm):
class Meta:
model = RequestEvent
fields = ['title', 'description', 'your_name','roll_no' ,'contact']
24 changes: 24 additions & 0 deletions events/migrations/0008_requestevent.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Generated by Django 2.2.9 on 2020-08-07 07:54

from django.db import migrations, models


class Migration(migrations.Migration):

dependencies = [
('events', '0007_auto_20190924_1641'),
]

operations = [
migrations.CreateModel(
name='RequestEvent',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=50)),
('description', models.TextField()),
('your_name', models.CharField(max_length=50)),
('roll_no', models.CharField(max_length=15)),
('contact', models.CharField(max_length=10)),
],
),
]
11 changes: 11 additions & 0 deletions events/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,3 +53,14 @@ class EventParticipant(TimeStampedModel):

def __str__(self):
return self.student_name


class RequestEvent(models.Model):
title = models.CharField(max_length=50, blank=False)
description = models.TextField(blank=False)
your_name = models.CharField(max_length=50, blank=False)
roll_no = models.CharField(max_length=15, blank=False)
contact = models.CharField(max_length=10, blank=False)

def __str__(self):
return self.title
3 changes: 2 additions & 1 deletion events/urls.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
from django.urls import path
from .views import events, register
from .views import events, register, request_event

urlpatterns = [
path('', events, name='tech_events'),
path('register/', register, name='register'),
path('request_event/', request_event, name='request_event'),
]
22 changes: 18 additions & 4 deletions events/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
from django.contrib import messages
from django.shortcuts import render, redirect
from django.views.generic import ListView
from .models import Event, EventParticipant
from .forms import ParticipantForm
from .models import Event, EventParticipant, RequestEvent
from .forms import ParticipantForm, RequestEventForm
import csv


def events(request):
events = Event.objects.all
return render(request, 'events.html', {'events': events})
events = Event.objects.all()
return render(request, 'events.html', {'events': events })


def register(request):
Expand Down Expand Up @@ -45,3 +45,17 @@ def export_to_csv(request):
error = "Please Enter a Valid Token"
return render(request, 'download.html', {'error': error})
return render(request, 'download.html')

def request_event(request):
if request.method == 'POST':
form = RequestEventForm(request.POST)
if form.is_valid():
form.save()
your_name = form.cleaned_data.get('your_name')
title = form.cleaned_data.get('title')
messages.success(
request, f'Thank you { your_name } for requesting to organise { title }, you will be contacted shortly!')
return redirect('homepage')
else:
form = RequestEventForm()
return render(request, 'event_register.html', {'form': form})
2 changes: 1 addition & 1 deletion templates/event_register.html
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
<br>
<br>
<div class='myform'>
<center><h1>Register</h1></center>
<center><h1>Request An Event</h1></center>
<form action="" method="POST">{% csrf_token %}
{% bootstrap_form form %}
{% buttons %}
Expand Down
17 changes: 14 additions & 3 deletions templates/events.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,27 @@
<br>
<div class="container">
<br>
{% if events|length == 0 %}
<div class="card text-center">
<div class="card-body bg">
<h4 class="card-title">No Ongoing Events </h4>
<p class="card-text">Please review after sometime, to see latest ongoing Events!<br>THANK YOU!</p>
</div>
</div>

{% endif %}
{% for event in events%}
<div class="card text-center">
<div class="card-body bg">
<h4 class="card-title">{{ event.title }}</h4>
<p class="card-text">{{ event.description | linebreaksbr }}</p>
<a href="{% url 'register' %}" class="btn btn-primary">Register</a>
<a href="{% url 'register' %}" class="btn btn-primary">Register for this Event</a>
</div>
</div>
<br>
{% endfor %}
{% endfor %}
<br>
<center><a href="{% url 'request_event' %}" class="btn btn-primary">Request for any Event in your mind!</a></center>
</div>
{% comment %} </div> {% endcomment %}
{% endblock content %}
{% endblock content %}