diff options
author | Akshen | 2017-04-07 13:05:52 +0530 |
---|---|---|
committer | Akshen | 2017-05-19 15:30:31 +0530 |
commit | 85b67176a63cc1816a75b607b08f44306736fc35 (patch) | |
tree | c0b36a749511f4fed7a7b4b9a8c0f2e80366d975 | |
parent | 042fd3efa7bee7505508f30a2e291c11e615da37 (diff) | |
download | workshop_booking-85b67176a63cc1816a75b607b08f44306736fc35.tar.gz workshop_booking-85b67176a63cc1816a75b607b08f44306736fc35.tar.bz2 workshop_booking-85b67176a63cc1816a75b607b08f44306736fc35.zip |
Reject Workshop Added
Instructor can reject workshops
-rw-r--r-- | workshop_app/forms.py | 4 | ||||
-rw-r--r-- | workshop_app/send_mails.py | 12 | ||||
-rw-r--r-- | workshop_app/templates/workshop_app/base.html | 10 | ||||
-rw-r--r-- | workshop_app/templates/workshop_app/booking.html | 8 | ||||
-rw-r--r-- | workshop_app/templates/workshop_app/create_workshop.html | 2 | ||||
-rw-r--r-- | workshop_app/templates/workshop_app/edit_profile.html | 15 | ||||
-rw-r--r-- | workshop_app/templates/workshop_app/my_workshops.html | 4 | ||||
-rw-r--r-- | workshop_app/templates/workshop_app/profile_updated.html | 7 | ||||
-rw-r--r-- | workshop_app/templates/workshop_app/view_profile.html | 2 | ||||
-rw-r--r-- | workshop_app/views.py | 44 |
10 files changed, 75 insertions, 33 deletions
diff --git a/workshop_app/forms.py b/workshop_app/forms.py index fa0834c..324d406 100644 --- a/workshop_app/forms.py +++ b/workshop_app/forms.py @@ -3,7 +3,7 @@ from .models import Profile, Course, Workshop from string import punctuation, digits try: from string import letters -except: +except ImportError: from string import ascii_letters as letters from django.contrib.auth.models import User @@ -119,7 +119,7 @@ class ProfileForm(forms.ModelForm): class Meta: model = Profile fields = ['first_name', 'last_name', 'institute', 'department', - 'position'] + ] first_name = forms.CharField(max_length=32) last_name = forms.CharField(max_length=32) diff --git a/workshop_app/send_mails.py b/workshop_app/send_mails.py index e81168c..afd42ed 100644 --- a/workshop_app/send_mails.py +++ b/workshop_app/send_mails.py @@ -66,6 +66,18 @@ def send_email(request, call_on, message = "Your workshop for "+workshop_date+"request has been confirmed" send_mail("Python Workshop Booking Confirmation", message, EMAIL_HOST_USER, [other_email], fail_silently=False) + + elif call_on == "Booking Request Rejected": + if user_position == "instructor": + message = "You have reject the booking on "+workshop_date+" for "+workshop_title + send_mail("Python Workshop Booking Rejected", message, EMAIL_HOST_USER, + [request.user.email], fail_silently=False) + else: + message = "Your workshop request for "+workshop_date+" has been cancelled please \ + try for some other day." + send_mail("Python Workshop Booking Request Rejected", message, EMAIL_HOST_USER, + [other_email], fail_silently=False) + else: message = "Issue at Workshop Booking App please check" send_mail("Issue At Workshop Booking App", message, EMAIL_HOST_USER, diff --git a/workshop_app/templates/workshop_app/base.html b/workshop_app/templates/workshop_app/base.html index fef8840..37b6d6a 100644 --- a/workshop_app/templates/workshop_app/base.html +++ b/workshop_app/templates/workshop_app/base.html @@ -44,10 +44,10 @@ <h1>Base Template Content. Please override me</h1> {% endblock %} -<footer class="footer"> - <div class="container"> - <p align="center">Developed by FOSSEE group, IIT Bombay</p> - </div> -</footer> + <footer class="footer"> + <div class="container"> + <p align="center">Developed by FOSSEE group, IIT Bombay</p> + </div> + </footer> </body> </html>
\ No newline at end of file diff --git a/workshop_app/templates/workshop_app/booking.html b/workshop_app/templates/workshop_app/booking.html index c998be4..051dfeb 100644 --- a/workshop_app/templates/workshop_app/booking.html +++ b/workshop_app/templates/workshop_app/booking.html @@ -17,7 +17,7 @@ '<form id="myform" action="">\ <input type="checkbox" id="one"\ name="one" value="one"/>We will give minimum 50 participants for the workshop.<br/>\ - <input type="checkbox" id="two" name="two" value="two" />We agree that this booking won\'t be cancelled.<br/>\ + <input type="checkbox" id="two" name="two" value="two" />We agree that this booking won\'t be cancelled(if you want to cancel please contact the instructor 2days before the event).<br/>\ </form> ') .dialog({ autoOpen: false, @@ -49,14 +49,14 @@ function booking_confirmed(d){ data: { d, csrfmiddlewaretoken: $("input[name=csrfmiddlewaretoken]").val() - }, + }, success:function(response){ window.location.reload(); alert("success: " + response); - } + } }); - } + } </script> {% endblock %} diff --git a/workshop_app/templates/workshop_app/create_workshop.html b/workshop_app/templates/workshop_app/create_workshop.html index 613cd06..301512a 100644 --- a/workshop_app/templates/workshop_app/create_workshop.html +++ b/workshop_app/templates/workshop_app/create_workshop.html @@ -5,12 +5,10 @@ {% endblock %} {% block extra %} - <link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css"> <script src="https://code.jquery.com/jquery-1.12.4.js"></script> <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> - {% endblock %} {% block header %} diff --git a/workshop_app/templates/workshop_app/edit_profile.html b/workshop_app/templates/workshop_app/edit_profile.html index 6d5698b..7f8bfef 100644 --- a/workshop_app/templates/workshop_app/edit_profile.html +++ b/workshop_app/templates/workshop_app/edit_profile.html @@ -10,9 +10,18 @@ <div class="navbar-header"> <a class="navbar-brand" href="#">WebSiteName</a> </div> - <ul class="nav navbar-nav"> - <li class="active"><a href="#">Home</a></li> - </ul> + {% if request.user.profile.position == 'instructor' %} + <ul class="nav navbar-nav"> + <li class="active"><a href="{{ URL_ROOT }}/create_workshop">Create Event</a></li> + <li class="active"><a href="{{ URL_ROOT }}/view_course_list">View Course List</a></li> + <li class="active"><a href="{{ URL_ROOT }}/my_workshops">My Workshops</a></li> + </ul> + {% else %} + <ul class="nav navbar-nav"> + <li class="active"><a href="{{ URL_ROOT }}/book">Home</a></li> + <li class="active"><a href="{{ URL_ROOT }}/my_workshops">My Workshops</a></li> + </ul> + {% endif %} <ul class="nav navbar-nav navbar-right"> <li><a href="{{ URL_ROOT }}/view_profile"><span class="glyphicon glyphicon-user"></span> Profile </a></li> <li><a href="{{ URL_ROOT }}/logout"><span class="glyphicon glyphicon-log-in"></span> Logout</a></li> diff --git a/workshop_app/templates/workshop_app/my_workshops.html b/workshop_app/templates/workshop_app/my_workshops.html index 77cd561..48b471e 100644 --- a/workshop_app/templates/workshop_app/my_workshops.html +++ b/workshop_app/templates/workshop_app/my_workshops.html @@ -11,7 +11,6 @@ <script> function sendData(d){ - console.log(d); var URL = "{{ URL_ROOT }}/my_workshops/" $.ajax({ @@ -25,11 +24,11 @@ }); window.location.reload(); + alert("Please Refresh if you don't see your changes"); } </script> {% endblock %} - {% block header %} <nav class="navbar navbar-inverse"> <div class="container-fluid"> @@ -94,6 +93,7 @@ {% endif %} {% if request.user.profile.position == 'instructor' %} <td><button class="btn btn-primary btn-sm" id="book-btn" onClick="sendData('{{workshop.requested_workshop_coordinator}},{{workshop.requested_workshop_date| safe}},{{ workshop.requested_workshop_title }},ACCEPTED')" > Accept</button></td> + <td><button class="btn btn-danger btn-sm" id="book-btn" onClick="sendData('{{workshop.requested_workshop_coordinator}},{{workshop.requested_workshop_date| safe}},{{ workshop.requested_workshop_title }},REJECTED')" > Reject </button></td> {% endif %} </tr> </tbody> diff --git a/workshop_app/templates/workshop_app/profile_updated.html b/workshop_app/templates/workshop_app/profile_updated.html index 2974aaf..c41f6a7 100644 --- a/workshop_app/templates/workshop_app/profile_updated.html +++ b/workshop_app/templates/workshop_app/profile_updated.html @@ -11,7 +11,12 @@ <a class="navbar-brand" href="#">WebSiteName</a> </div> <ul class="nav navbar-nav"> - <li class="active"><a href="#">Home</a></li> + {% if request.user.profile.position == 'instructor' %} + <li class="active"><a href="{{ URL_ROOT }}/manage">Home</a></li> + {% else %} + <li class="active"><a href="{{ URL_ROOT }}/book">Home</a></li> + {% endif %} + <li class="active"><a href="{{ URL_ROOT }}/my_workshops">My Workshops</a></li> </ul> <ul class="nav navbar-nav navbar-right"> <li><a href="{{ URL_ROOT }}/view_profile"><span class="glyphicon glyphicon-user"></span> Profile </a></li> diff --git a/workshop_app/templates/workshop_app/view_profile.html b/workshop_app/templates/workshop_app/view_profile.html index 42048e3..c223a66 100644 --- a/workshop_app/templates/workshop_app/view_profile.html +++ b/workshop_app/templates/workshop_app/view_profile.html @@ -14,10 +14,12 @@ <ul class="nav navbar-nav"> <li class="active"><a href="{{ URL_ROOT }}/create_workshop">Create Event</a></li> <li class="active"><a href="{{ URL_ROOT }}/view_course_list">View Course List</a></li> + <li class="active"><a href="{{ URL_ROOT }}/my_workshops">My Workshops</a></li> </ul> {% else %} <ul class="nav navbar-nav"> <li class="active"><a href="{{ URL_ROOT }}/book">Home</a></li> + <li class="active"><a href="{{ URL_ROOT }}/my_workshops">My Workshops</a></li> </ul> {% endif %} diff --git a/workshop_app/views.py b/workshop_app/views.py index 0930c10..2d352e7 100644 --- a/workshop_app/views.py +++ b/workshop_app/views.py @@ -301,27 +301,43 @@ def my_workshops(request): workshop_status.status = client_data[-1] workshop_status.save() - #For Instructor - send_email(request, call_on='Booking Confirmed', - user_position='instructor', - workshop_date=str(client_data[1]), - workshop_title=workshop_status.requested_workshop_title.course_name, - user_name=str(request.user), - ) + if client_data[-1] == 'ACCEPTED': + #For Instructor + send_email(request, call_on='Booking Confirmed', + user_position='instructor', + workshop_date=str(client_data[1]), + workshop_title=workshop_status.requested_workshop_title.course_name, + user_name=str(request.user), + ) - #For Coordinator - send_email(request, call_on='Booking Confirmed', - workshop_date=str(client_data[1]), - workshop_title=workshop_status.requested_workshop_title.course_name, - other_email=workshop_status.requested_workshop_coordinator.email - ) + #For Coordinator + send_email(request, call_on='Booking Confirmed', + workshop_date=str(client_data[1]), + workshop_title=workshop_status.requested_workshop_title.course_name, + other_email=workshop_status.requested_workshop_coordinator.email + ) + else: + #For Instructor + send_email(request, call_on='Booking Request Rejected', + user_position='instructor', + workshop_date=str(client_data[1]), + workshop_title=workshop_status.requested_workshop_title.course_name, + user_name=str(request.user), + ) + + #For Coordinator + send_email(request, call_on='Booking Request Rejected', + workshop_date=str(client_data[1]), + workshop_title=workshop_status.requested_workshop_title.course_name, + other_email=workshop_status.requested_workshop_coordinator.email + ) workshop_occurence_list = RequestedWorkshop.objects.filter( requested_workshop_instructor=user.id ) #Show upto 6 Workshops per page - paginator = Paginator(workshop_occurence_list, 3) + paginator = Paginator(workshop_occurence_list, 9) page = request.GET.get('page') try: workshop_occurences = paginator.page(page) |