diff --git a/FusionIIIT/Fusion/context_processors.py b/FusionIIIT/Fusion/context_processors.py
new file mode 100644
index 000000000..54566d56e
--- /dev/null
+++ b/FusionIIIT/Fusion/context_processors.py
@@ -0,0 +1,5 @@
+def global_vars(request):
+ return {
+ 'global_var': request.session.get('currentDesignationSelected', 'default_value'),
+ 'global_var2': request.session.get('allDesignations', 'default_value2'),
+ }
\ No newline at end of file
diff --git a/FusionIIIT/Fusion/middleware/custom_middleware.py b/FusionIIIT/Fusion/middleware/custom_middleware.py
new file mode 100644
index 000000000..f77873534
--- /dev/null
+++ b/FusionIIIT/Fusion/middleware/custom_middleware.py
@@ -0,0 +1,48 @@
+# custom_middleware.py
+from django.contrib.auth.signals import user_logged_in
+from django.dispatch import receiver
+from applications.globals.models import (ExtraInfo, Feedback, HoldsDesignation,
+ Issue, IssueImage, DepartmentInfo)
+from django.shortcuts import get_object_or_404, redirect, render
+
+def user_logged_in_middleware(get_response):
+ @receiver(user_logged_in)
+ def user_logged_in_handler(sender, user, request, **kwargs):
+ if 'function_executed' not in request.session:
+ # Run the function only if the flag is not set
+ # Assuming user is a model with the desired data field, retrieve the data
+ # For example, if your User model has a field named 'custom_field', you can access it like:
+ if user.is_authenticated:
+ desig = list(HoldsDesignation.objects.select_related('user','working','designation').all().filter(working = request.user).values_list('designation'))
+ print(desig)
+ b = [i for sub in desig for i in sub]
+ design = HoldsDesignation.objects.select_related('user','designation').filter(working=request.user)
+
+ designation=[]
+
+ designation.append(str(user.extrainfo.user_type))
+ for i in design:
+ if str(i.designation) != str(user.extrainfo.user_type):
+ print('-------')
+ print(i.designation)
+ print(user.extrainfo.user_type)
+ print('')
+ designation.append(str(i.designation))
+
+ for i in designation:
+ print(i)
+
+ request.session['currentDesignationSelected'] = designation[0]
+ request.session['allDesignations'] = designation
+ print("logged iN")
+
+ # Set the flag in the session to indicate that the function has bee+n executed
+ request.session['function_executed'] = True
+
+ def middleware(request):
+ if request.user.is_authenticated:
+ user_logged_in_handler(request.user, request.user, request)
+ response = get_response(request)
+ return response
+
+ return middleware
\ No newline at end of file
diff --git a/FusionIIIT/Fusion/settings/common.py b/FusionIIIT/Fusion/settings/common.py
index b98ea6960..fabe81ec2 100644
--- a/FusionIIIT/Fusion/settings/common.py
+++ b/FusionIIIT/Fusion/settings/common.py
@@ -163,6 +163,7 @@
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
+ 'Fusion.middleware.custom_middleware.user_logged_in_middleware',
]
ROOT_URLCONF = 'Fusion.urls'
@@ -178,6 +179,7 @@
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
+ 'Fusion.context_processors.global_vars',
],
},
},
diff --git a/FusionIIIT/Fusion/settings/development.py b/FusionIIIT/Fusion/settings/development.py
new file mode 100644
index 000000000..6acc214c1
--- /dev/null
+++ b/FusionIIIT/Fusion/settings/development.py
@@ -0,0 +1,55 @@
+from Fusion.settings.common import *
+
+DEBUG = True
+
+SECRET_KEY = '=&w9due426k@l^ju1=s1)fj1rnpf0ok8xvjwx+62_nc-f12-8('
+
+ALLOWED_HOSTS = ['*']
+
+DATABASES = {
+ 'default': {
+ 'ENGINE': 'django.db.backends.postgresql_psycopg2',
+ 'NAME': 'fusionlab',
+ 'HOST': os.environ.get("DB_HOST", default='localhost'),
+ 'USER': 'fusion_admin',
+ 'PASSWORD': 'hello123',
+ }
+}
+
+REST_FRAMEWORK = {
+ 'DEFAULT_AUTHENTICATION_CLASSES': (
+ 'rest_framework.authentication.TokenAuthentication',
+ ),
+ 'DEFAULT_PERMISSION_CLASSES': (
+ 'rest_framework.permissions.IsAuthenticated',
+ )
+}
+
+if DEBUG:
+ MIDDLEWARE += (
+ 'debug_toolbar.middleware.DebugToolbarMiddleware',
+ )
+
+ INSTALLED_APPS += (
+ 'debug_toolbar',
+ 'django_extensions',
+ )
+
+
+ ###############################
+ # DJANGO_EXTENSIONS SETTINGS: #
+ ###############################
+ INTERNAL_IPS = [
+ '127.0.0.1',
+ ]
+
+ ###############################
+ # DJANGO_EXTENSIONS SETTINGS: #
+ ###############################
+ SHELL_PLUS = "ipython"
+
+ SHELL_PLUS_PRINT_SQL = True
+
+ DEBUG_TOOLBAR_CONFIG = {
+ 'INTERCEPT_REDIRECTS': False,
+ }
diff --git a/FusionIIIT/applications/globals/urls.py b/FusionIIIT/applications/globals/urls.py
index f8d82ee71..2dea4e77d 100644
--- a/FusionIIIT/applications/globals/urls.py
+++ b/FusionIIIT/applications/globals/urls.py
@@ -23,5 +23,6 @@
# Endpoint to reset all passwords in DEV environment
url(r'^resetallpass/$', views.reset_all_pass, name='resetallpass'),
# API urls
- url(r'^api/', include('applications.globals.api.urls'))
+ url(r'^api/', include('applications.globals.api.urls')),
+ url(r'^update_global_variable/$', views.update_global_variable, name='update_global_var'),
]
diff --git a/FusionIIIT/applications/globals/views.py b/FusionIIIT/applications/globals/views.py
index a7f3886c9..5b023abb5 100644
--- a/FusionIIIT/applications/globals/views.py
+++ b/FusionIIIT/applications/globals/views.py
@@ -740,21 +740,26 @@ def dashboard(request):
}
# a=HoldsDesignation.objects.select_related('user','working','designation').filter(designation = user)
+ print(context)
+ print(type(user.extrainfo.user_type))
if(request.user.get_username() == 'director'):
return render(request, "dashboard/director_dashboard2.html", {})
elif( "dean_rspc" in designation):
return render(request, "dashboard/dashboard.html", context)
- elif user.extrainfo.user_type != 'student':
+ elif user.extrainfo.user_type != "student":
+ print ("inside")
designat = HoldsDesignation.objects.select_related().filter(user=user)
response = {'designat':designat}
context.update(response)
return render(request, "dashboard/dashboard.html", context)
else:
+ print ("inside2")
+
return render(request, "dashboard/dashboard.html", context)
@login_required(login_url=LOGIN_URL)
-def profile(request, username=None):
+def profile(request, username=None):
"""
Generic endpoint for views.
If it's a faculty, redirects to /eis/profile/*
@@ -768,16 +773,76 @@ def profile(request, username=None):
"""
user = get_object_or_404(User, Q(username=username)) if username else request.user
-
editable = request.user == user
+ print("editable",editable)
profile = get_object_or_404(ExtraInfo, Q(user=user))
+ print("profile",profile)
if(str(user.extrainfo.user_type)=='faculty'):
+ print("profile")
return HttpResponseRedirect('/eis/profile/' + (username if username else ''))
if(str(user.extrainfo.department)=='department: Academics'):
+ print("profile2")
return HttpResponseRedirect('/aims')
- current = HoldsDesignation.objects.select_related('user','working','designation').filter(Q(working=user, designation__name="student"))
+
+ array = [
+ "student",
+ "CC convenor",
+ "Mechatronic convenor",
+ "mess_committee",
+ "mess_convener",
+ "alumini",
+ "Electrical_AE",
+ "Electrical_JE",
+ "Civil_AE",
+ "Civil_JE",
+ "co-ordinator",
+ "co co-ordinator",
+ "Convenor",
+ "Convener",
+ "cc1convener",
+ "CC2 convener",
+ "mess_convener_mess2",
+ "mess_committee_mess2"
+]
+
+ # queryset = HoldsDesignation.objects.select_related('user','working','designation').filter(Q(working=user))
+
+ # for obj in queryset:
+ # designation_name = obj.designation.name
+ # print("designation_name",designation_name)
+
+ # design = False
+ # if designation_name in array:
+ # design = True
+ # print("design",design)
+ # print("designation_name",designation_name)
+ # if design:
+ # current = HoldsDesignation.objects.select_relapted('user','working','designation').filter(Q(working=user, designation__name=designation_name))
+ # for obj in current:
+ # obj.designation.name = obj.designation.name.replace(designation_name, 'student')
+
+ designation_name = ""
+ design = False
+
+ current = HoldsDesignation.objects.select_related('user', 'working', 'designation').filter(Q(working=user))
+
+ for obj in current:
+ designation_name = obj.designation.name
+ if designation_name in array:
+ design = True
+ break
+
+ if design:
+ current = HoldsDesignation.objects.filter(working=user, designation__name=designation_name)
+ for obj in current:
+ obj.designation.name = obj.designation.name.replace(designation_name, 'student')
+
+ print(user.extrainfo.user_type)
+ print("current",current)
if current:
+ print("profile3")
student = get_object_or_404(Student, Q(id=profile.id))
+ print("student",student)
if editable and request.method == 'POST':
if 'studentapprovesubmit' in request.POST:
status = PlacementStatus.objects.select_related('notify_id','unique_id__id__user','unique_id__id__department').filter(pk=request.POST['studentapprovesubmit']).update(invitation='ACCEPTED', timestamp=timezone.now())
@@ -979,6 +1044,7 @@ def profile(request, username=None):
return render(request, "globals/student_profile4.html", context)
if 'achievementsubmit' in request.POST or 'deleteach' in request.POST:
return render(request, "globals/student_profile5.html", context)
+ print("context",context)
return render(request, "globals/student_profile.html", context)
else:
return redirect("/")
@@ -1176,4 +1242,15 @@ def search(request):
if len(search_results) == 0:
search_results = []
context = {'sresults':search_results}
- return render(request, "globals/search.html", context)
+ return render(request, "globals/search.html", context),
+
+@login_required(login_url=LOGIN_URL)
+def update_global_variable(request):
+ if request.method == 'POST':
+ selected_option = request.POST.get('dropdown')
+ request.session['currentDesignationSelected'] = selected_option
+ print(selected_option)
+ print(request.session['currentDesignationSelected'])
+ return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/'))
+ # Redirect to home if not a POST request or some issue occurs
+ return HttpResponseRedirect(reverse('home'))
diff --git a/FusionIIIT/applications/programme_curriculum/filters.py b/FusionIIIT/applications/programme_curriculum/filters.py
index d4444ff18..d1da0cca5 100644
--- a/FusionIIIT/applications/programme_curriculum/filters.py
+++ b/FusionIIIT/applications/programme_curriculum/filters.py
@@ -34,4 +34,10 @@ class CurriculumFilter(django_filters.FilterSet):
class Meta:
model = Curriculum
fields = {'name': ['icontains'],
- }
\ No newline at end of file
+ 'version': ['exact'],
+ }
+ widgets = {
+ 'name' : forms.TextInput(attrs={'placeholder': 'Course/Project Name','max_length': 100,}),
+ 'name' : django_filters.CharFilter(forms.TextInput(attrs={'placeholder': 'Course/Project Name','max_length': 100,})),
+ 'code' : django_filters.CharFilter(forms.TextInput(attrs={'placeholder': 'Version','max_length': 10,})),
+ }
\ No newline at end of file
diff --git a/FusionIIIT/applications/programme_curriculum/forms.py b/FusionIIIT/applications/programme_curriculum/forms.py
index 2e50d5154..210789e29 100644
--- a/FusionIIIT/applications/programme_curriculum/forms.py
+++ b/FusionIIIT/applications/programme_curriculum/forms.py
@@ -432,6 +432,7 @@ class Meta:
widgets = {
'code' : forms.TextInput(attrs={'placeholder': 'Course Code','max_length': 10,'readonly':'readonly'}),
'name' : forms.TextInput(attrs={'placeholder': 'Course/Project Name','max_length': 100,'readonly':'readonly'}),
+ 'version' : forms.NumberInput(attrs={'placeholder': 'version_no',}, ),
'credit' : forms.NumberInput(attrs={'placeholder': 'Course Credits','readonly':'readonly'}, ),
'lecture_hours' : forms.NumberInput(attrs={'placeholder': 'Lecture hours','readonly':'readonly'}, ),
'tutorial_hours' : forms.NumberInput(attrs={'placeholder': 'Tutorial hours','readonly':'readonly'}, ),
diff --git a/FusionIIIT/applications/programme_curriculum/views.py b/FusionIIIT/applications/programme_curriculum/views.py
index d2ed3637a..5efb2314c 100644
--- a/FusionIIIT/applications/programme_curriculum/views.py
+++ b/FusionIIIT/applications/programme_curriculum/views.py
@@ -29,9 +29,13 @@ def programme_curriculum(request):
user_details - Gets the information about the logged in user.
des - Gets the designation about the looged in user.
"""
+ user=request.user
+
+ # print(context)
+ print(user.extrainfo.user_type + "Programme and curriculum")
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation) == "Dean Academic" or str(des.designation) == "CSE HOD":
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or request.session['currentDesignationSelected']== "Dean Academic" or request.session['currentDesignationSelected']== "CSE HOD":
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
return HttpResponseRedirect('/programme_curriculum/admin_programmes')
@@ -55,10 +59,10 @@ def view_all_programmes(request):
url='programme_curriculum/'
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "acadadmin":
+ if request.session['currentDesignationSelected']== "acadadmin":
return render(request, 'programme_curriculum/admin_programmes/')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation) == "Dean Academic" or str(des.designation) == "CSE HOD":
+ elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or request.session['currentDesignationSelected']== "Dean Academic" or request.session['currentDesignationSelected']== "CSE HOD":
url+='faculty/'
ug = Programme.objects.filter(category='UG')
@@ -85,10 +89,10 @@ def view_curriculums_of_a_programme(request, programme_id):
url='programme_curriculum/'
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "acadadmin":
+ if request.session['currentDesignationSelected']== "acadadmin":
return render(request, 'programme_curriculum/admin_programmes/')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation) == "Dean Academic" or str(des.designation) == "CSE HOD":
+ elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or request.session['currentDesignationSelected']== "Dean Academic" or request.session['currentDesignationSelected']== "CSE HOD":
url+='faculty/'
program = get_object_or_404(Programme, Q(id=programme_id))
@@ -110,10 +114,10 @@ def view_all_working_curriculums(request):
url='programme_curriculum/'
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "acadadmin":
+ if request.session['currentDesignationSelected']== "acadadmin":
return render(request, 'programme_curriculum/admin_programmes/')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation) == "Dean Academic" or str(des.designation) == "CSE HOD":
+ elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or request.session['currentDesignationSelected']== "Dean Academic" or request.session['currentDesignationSelected']== "CSE HOD":
url+='faculty/'
curriculums = Curriculum.objects.filter(working_curriculum=1)
@@ -139,11 +143,11 @@ def view_semesters_of_a_curriculum(request, curriculum_id):
url='programme_curriculum/'
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "acadadmin":
+ if request.session['currentDesignationSelected']== "acadadmin":
return render(request, 'programme_curriculum/admin_programmes/')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation) == "Dean Academic" or str(des.designation) == "CSE HOD":
+ elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or request.session['currentDesignationSelected']== "Dean Academic" or request.session['currentDesignationSelected']== "CSE HOD":
url+='faculty/'
curriculum = get_object_or_404(Curriculum, Q(id=curriculum_id))
semesters = curriculum.semesters
@@ -183,10 +187,10 @@ def view_a_semester_of_a_curriculum(request, semester_id):
url='programme_curriculum/'
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "acadadmin":
+ if request.session['currentDesignationSelected']== "acadadmin":
return render(request, 'programme_curriculum/admin_programmes/')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation) == "Dean Academic" or str(des.designation) == "CSE HOD":
+ elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or request.session['currentDesignationSelected']== "Dean Academic" or request.session['currentDesignationSelected']== "CSE HOD":
url+='faculty/'
semester = get_object_or_404(Semester, Q(id=semester_id))
@@ -200,9 +204,9 @@ def view_a_courseslot(request, courseslot_id):
url='programme_curriculum/'
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "acadadmin":
+ if request.session['currentDesignationSelected']== "acadadmin":
return render(request, 'programme_curriculum/admin_programmes/')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation) == "Dean Academic" or str(des.designation) == "CSE HOD":
+ elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or request.session['currentDesignationSelected']== "Dean Academic" or request.session['currentDesignationSelected']== "CSE HOD":
url+='faculty/'
course_slot = get_object_or_404(CourseSlot, Q(id=courseslot_id))
return render(request, url+'view_a_courseslot.html', {'course_slot': course_slot})
@@ -213,9 +217,9 @@ def view_all_courses(request):
url='programme_curriculum/'
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "acadadmin":
+ if request.session['currentDesignationSelected']== "acadadmin":
return render(request, 'programme_curriculum/admin_programmes/')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation) == "Dean Academic" or str(des.designation) == "CSE HOD":
+ elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or request.session['currentDesignationSelected']== "Dean Academic" or request.session['currentDesignationSelected']== "CSE HOD":
url+='faculty/'
courses = Course.objects.all()
@@ -231,9 +235,9 @@ def view_a_course(request, course_id):
url='programme_curriculum/'
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "acadadmin":
+ if request.session['currentDesignationSelected']== "acadadmin":
return render(request, 'programme_curriculum/admin_programmes/')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation) == "Dean Academic" or str(des.designation) == "CSE HOD":
+ elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or request.session['currentDesignationSelected']== "Dean Academic" or request.session['currentDesignationSelected']== "CSE HOD":
url+='faculty/'
course = get_object_or_404(Course, Q(id=course_id))
@@ -245,9 +249,9 @@ def view_all_discplines(request):
url='programme_curriculum/'
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "acadadmin":
+ if request.session['currentDesignationSelected']== "acadadmin":
return render(request, 'programme_curriculum/admin_programmes/')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation) == "Dean Academic" or str(des.designation) == "CSE HOD":
+ elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or request.session['currentDesignationSelected']== "Dean Academic" or request.session['currentDesignationSelected']== "CSE HOD":
url+='faculty/'
disciplines = Discipline.objects.all()
@@ -259,9 +263,9 @@ def view_all_batches(request):
url='programme_curriculum/'
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "acadadmin":
+ if request.session['currentDesignationSelected']== "acadadmin":
return render(request, 'programme_curriculum/admin_programmes/')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation) == "Dean Academic" or str(des.designation) == "CSE HOD":
+ elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or request.session['currentDesignationSelected']== "Dean Academic" or request.session['currentDesignationSelected']== "CSE HOD":
url+='faculty/'
@@ -294,7 +298,7 @@ def admin_view_all_programmes(request):
"""
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -322,7 +326,7 @@ def admin_view_curriculums_of_a_programme(request, programme_id):
"""
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -346,7 +350,7 @@ def admin_view_all_working_curriculums(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -366,7 +370,7 @@ def admin_view_semesters_of_a_curriculum(request, curriculum_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -420,7 +424,7 @@ def admin_view_a_semester_of_a_curriculum(request, semester_id):
"""
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -438,7 +442,7 @@ def admin_view_a_courseslot(request, courseslot_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -457,7 +461,7 @@ def admin_view_all_courses(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -478,7 +482,7 @@ def admin_view_a_course(request, course_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -493,7 +497,7 @@ def admin_view_all_discplines(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -508,7 +512,7 @@ def admin_view_all_batches(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -532,7 +536,7 @@ def add_discipline_form(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -554,7 +558,7 @@ def edit_discipline_form(request, discipline_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -577,7 +581,7 @@ def add_programme_form(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -601,7 +605,7 @@ def edit_programme_form(request, programme_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -630,7 +634,7 @@ def add_curriculum_form(request):
"""
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -671,7 +675,7 @@ def edit_curriculum_form(request, curriculum_id):
"""
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -717,7 +721,7 @@ def add_course_form(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -741,7 +745,7 @@ def update_course_form(request, course_id):
#user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student": # or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor"
+ if request.session['currentDesignationSelected']== "student": # or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor"
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -776,7 +780,7 @@ def add_courseslot_form(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -802,7 +806,7 @@ def edit_courseslot_form(request, courseslot_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -825,7 +829,7 @@ def delete_courseslot(request, courseslot_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -848,7 +852,7 @@ def add_batch_form(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -871,7 +875,7 @@ def edit_batch_form(request, batch_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -905,7 +909,7 @@ def instigate_semester(request, semester_id):
"""
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -945,7 +949,7 @@ def replicate_curriculum(request, curriculum_id):
"""
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" or str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected']== "student" or request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
elif str(request.user) == "acadadmin" :
pass
@@ -1013,9 +1017,9 @@ def replicate_curriculum(request, curriculum_id):
def course_proposal_form(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected'] == "Associate Professor" or request.session['currentDesignationSelected'] == "Professor" or request.session['currentDesignationSelected'] == "Assistant Professor" :
pass
- elif str(request.user) == "acadadmin":
+ elif request.session['currentDesignationSelected'] == "acadadmin":
return HttpResponseRedirect('/programme_curriculum/admin_programmes')
faculty_id=user_details.user_id
details=User.objects.get(id=faculty_id)
@@ -1023,7 +1027,6 @@ def course_proposal_form(request):
-
form=Course_Proposal(initial={'faculty_name': faculty_name,'faculty_code':des.user})
submitbutton= request.POST.get('Submit')
@@ -1031,7 +1034,9 @@ def course_proposal_form(request):
if request.method == 'POST':
form = Course_Proposal(request.POST)
if form.is_valid():
- form.save()
+ new_course = form.save(commit=False)
+ new_course.status=0
+ new_course.save()
messages.success(request, " Proposal Added successful")
return HttpResponseRedirect('/programme_curriculum/view_course_proposal_forms/')
@@ -1043,11 +1048,11 @@ def course_proposal_form(request):
# user_details = ExtraInfo.objects.get(user = request.user)
# des = HoldsDesignation.objects.all().filter(user = request.user).first()
-# if str(des.designation) == "student":
+# if request.session['currentDesignationSelected']== "student":
# return HttpResponseRedirect('/programme_curriculum/programmes/')
# elif str(request.user) == "acadadmin" :
# return HttpResponseRedirect('/programme_curriculum/admin_programmes')
-# elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor":
+# elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor":
# pass
# course = get_object_or_404(Course, Q(id=course_id))
@@ -1069,11 +1074,11 @@ def faculty_view_all_courses(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" :
+ if request.session['currentDesignationSelected'] == "student" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
- elif str(request.user) == "acadadmin" :
+ elif request.session['currentDesignationSelected'] == "acadadmin" :
return HttpResponseRedirect('/programme_curriculum/admin_programmes')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor":
+ elif request.session['currentDesignationSelected'] == "Associate Professor" or request.session['currentDesignationSelected'] == "Professor" or request.session['currentDesignationSelected'] == "Assistant Professor":
pass
# discipline=user_details.department
@@ -1095,11 +1100,11 @@ def faculty_view_a_course(request, course_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student" :
+ if request.session['currentDesignationSelected'] == "student" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
- elif str(request.user) == "acadadmin" :
+ elif request.session['currentDesignationSelected'] == "acadadmin" :
return HttpResponseRedirect('/programme_curriculum/admin_programmes')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ elif request.session['currentDesignationSelected'] == "Associate Professor" or request.session['currentDesignationSelected'] == "Professor" or request.session['currentDesignationSelected'] == "Assistant Professor" :
pass
course = get_object_or_404(Course, Q(id=course_id))
return render(request, 'programme_curriculum/faculty/faculty_view_a_course.html', {'course': course})
@@ -1115,11 +1120,11 @@ def faculty_view_a_course(request, course_id):
# user_details = ExtraInfo.objects.get(user = request.user)
# des = HoldsDesignation.objects.all().filter(user = request.user).last()
-# if str(des.designation) == "CSE HOD" :
+# if request.session['currentDesignationSelected']== "CSE HOD" :
# pass
# elif str(request.user) == "acadadmin" :
# return HttpResponseRedirect('/programme_curriculum/admin_programmes')
-# elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" or str(des.designation)=="student" :
+# elif request.session['currentDesignationSelected']== "Associate Professor" or request.session['currentDesignationSelected']== "Professor" or request.session['currentDesignationSelected']== "Assistant Professor" or str(des.designation)=="student" :
# return HttpResponseRedirect('/programme_curriculum/programmes')
# proposal = get_object_or_404(CourseProposal, Q(id=proposal_id))
# return render(request, 'programme_curriculum/hod/head_view_a_course.html', {'proposal': proposal})
@@ -1128,13 +1133,13 @@ def head_view_a_course_proposal(request,CourseProposal_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(request.user) == "CSE HOD" :
+ if request.session['currentDesignationSelected'] == "CSE HOD" :
pass
proposalform = get_object_or_404(CourseProposal, Q(id=CourseProposal_id))
- if(str(des.designation) == "Dean Academic"):
- # poposalform = get_object_or_404(CourseProposal, Q(id=CourseProposal_id))
- form = CourseProposalForm(instance=proposalform)
+ if (request.session['currentDesignationSelected'] == "Dean Academic"):
+ proposalform = get_object_or_404(CourseProposal, Q(id=CourseProposal_id))
+ form = CourseProposalForm(instance=proposalform,initial={'version':1.0})
submitbutton= request.POST.get('Submit')
if submitbutton:
if request.method == 'POST':
@@ -1154,26 +1159,56 @@ def head_view_a_update_course_proposal(request,UpdateCourseProposal_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(request.user) == "CSE HOD" :
+ if request.session['currentDesignationSelected'] == "CSE HOD" :
pass
proposalform = get_object_or_404(UpdateCourseProposal, Q(id=UpdateCourseProposal_id))
- if(str(des.designation) == "Dean Academic"):
-
- course = get_object_or_404(Course, Q(code=proposalform.code))
- form = CourseProposalForm(instance=proposalform)
+ if(request.session['currentDesignationSelected'] == "Dean Academic"):
+
+ # course = get_object_or_404(Course, Q(code=proposalform.code))
+ course =Course.objects.all().filter(code=proposalform.code).order_by('version').last()
+ previous = Course.objects.all().filter(code=course.code).order_by('version').last()
+ course.version=previous.version
+ version_error=''
+ form = CourseProposalForm(instance=proposalform,initial={'version':course.version})
submitbutton= request.POST.get('Submit')
if submitbutton:
if request.method == 'POST':
- form = CourseProposalForm(request.POST,instance=course)
- if form.is_valid():
- proposalform.status = 3
- proposalform.save()
- form.save()
- messages.success(request, "Updated "+ proposalform.name +" successful")
- return HttpResponseRedirect("/programme_curriculum/course/"+ str(course.id) + "/")
- return render(request, 'programme_curriculum/faculty/dean_view_update_a_course_proposal.html', {'course': proposalform ,'form':form,'submitbutton': submitbutton})
+ form = CourseForm(request.POST)
+ if form.is_valid() :
+ previous.latest_version=False
+ previous.save()
+ form.latest_version=True
+ new_course = form.save(commit=False)
+ if(new_course.version>previous.version):
+ proposalform.status = 3
+ proposalform.save()
+ form.save()
+ course = Course.objects.last()
+ messages.success(request, "Added successful")
+ return HttpResponseRedirect("/programme_curriculum/course/"+ str(course.id) + "/")
+ else:
+ version_error+=f'The version should be greater than {previous.version}'
+ return render(request, 'programme_curriculum/faculty/dean_view_update_a_course_proposal.html', {'course': proposalform ,'form':form,'submitbutton': submitbutton,'version_error':version_error})
return render(request, 'programme_curriculum/faculty/head_view_update_a_course_proposal.html', {'proposal': proposalform})
+
+ #return render(request,'programme_curriculum/acad_admin/update_course_form.html',{'course':course, 'form':form, 'submitbutton': submitbutton,'version_error':version_error})
+
+
+
+
+ # submitbutton= request.POST.get('Submit')
+ # if submitbutton:
+ # if request.method == 'POST':
+ # form = CourseProposalForm(request.POST,instance=course)
+ # if form.is_valid():
+ # proposalform.status = 3
+ # proposalform.save()
+ # form.save()
+ # messages.success(request, "Updated "+ proposalform.name +" successful")
+ # return HttpResponseRedirect("/programme_curriculum/course/"+ str(course.id) + "/")
+ # return render(request, 'programme_curriculum/faculty/dean_view_update_a_course_proposal.html', {'course': proposalform ,'form':form,'submitbutton': submitbutton})
+ # return render(request, 'programme_curriculum/faculty/head_view_update_a_course_proposal.html', {'proposal': proposalform})
def forward_form(request,CourseProposal_id):
proposalform = get_object_or_404(CourseProposal, Q(id=CourseProposal_id))
@@ -1197,9 +1232,9 @@ def reject_form(request,CourseProposal_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).last()
- if str(des.designation) == "CSE HOD" or str(des.designation) == "Dean Academic":
+ if request.session['currentDesignationSelected'] == "CSE HOD" or request.session['currentDesignationSelected'] == "Dean Academic":
pass
- elif str(request.user) == "acadadmin" or str(request.user) == "student" :
+ elif request.session['currentDesignationSelected'] == "acadadmin" or request.session['currentDesignationSelected'] == "student" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
proposalform = get_object_or_404(CourseProposal, Q(id=CourseProposal_id))
@@ -1208,13 +1243,13 @@ def reject_form(request,CourseProposal_id):
courses = CourseProposal.objects.all()
Updatecourses = UpdateCourseProposal.objects.all()
- if str(des.designation) == "CSE HOD":
+ if request.session['currentDesignationSelected'] == "CSE HOD":
proposalform = get_object_or_404(CourseProposal, Q(id=CourseProposal_id))
proposalform.status = 2
proposalform.save()
courses = CourseProposal.objects.all()
return render(request, 'programme_curriculum/faculty/head_view_course_proposal_forms.html',{'courseProposals': courses,'updateProposals': Updatecourses})
- if str(des.designation) == "Dean Academic" :
+ if request.session['currentDesignationSelected'] == "Dean Academic" :
proposalform = get_object_or_404(CourseProposal, Q(id=CourseProposal_id))
proposalform.status = 4
proposalform.save()
@@ -1227,23 +1262,23 @@ def reject_update_form(request,UpdateCourseProposal_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).last()
- if str(des.designation) == "CSE HOD" or str(des.designation) == "Dean Academic":
+ if request.session['currentDesignationSelected'] == "CSE HOD" or request.session['currentDesignationSelected'] == "Dean Academic":
pass
- elif str(request.user) == "acadadmin" or str(request.user) == "student" :
+ elif request.session['currentDesignationSelected'] == "acadadmin" or request.session['currentDesignationSelected'] == "student" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
proposalform = get_object_or_404(UpdateCourseProposal, Q(id=UpdateCourseProposal_id))
proposalform.status = 2
proposalform.save()
courses = UpdateCourseProposal.objects.all()
- if str(des.designation) == "CSE HOD":
+ if request.session['currentDesignationSelected']== "CSE HOD":
proposalform = get_object_or_404(UpdateCourseProposal, Q(id=UpdateCourseProposal_id))
proposalform.status = 2
proposalform.save()
Updatecourses = UpdateCourseProposal.objects.all()
courses=CourseProposal.objects.all()
return render(request, 'programme_curriculum/faculty/head_view_course_proposal_forms.html',{'courseProposals': courses,'updateProposals': Updatecourses})
- if str(des.designation) == "Dean Academic" :
+ if request.session['currentDesignationSelected']== "Dean Academic" :
proposalform = get_object_or_404(UpdateCourseProposal, Q(id=UpdateCourseProposal_id))
proposalform.status = 4
proposalform.save()
@@ -1275,9 +1310,9 @@ def view_course_proposal_forms(request):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).last()
- if str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ if request.session['currentDesignationSelected'] == "Associate Professor" or request.session['currentDesignationSelected'] == "Professor" or request.session['currentDesignationSelected'] == "Assistant Professor" :
pass
- elif str(request.user) == "acadadmin" or str(request.user) == "student" :
+ elif request.session['currentDesignationSelected'] == "acadadmin" or request.session['currentDesignationSelected'] == "student" :
return HttpResponseRedirect('/programme_curriculum/programmes/')
courseProposal = CourseProposal.objects.filter(faculty_code=des.user)
@@ -1288,9 +1323,9 @@ def view_course_proposal_forms(request):
updatecourseProposal = UpdateCourseProposal.objects.filter(faculty_code=des.user)
- if(str(des.designation) == "CSE HOD"):
+ if(request.session['currentDesignationSelected'] == "CSE HOD"):
return render(request, 'programme_curriculum/faculty/head_view_course_proposal_forms.html',{'courseProposals': courses,'updateProposals':updatecourses})
- elif(str(des.designation) == "Dean Academic"):
+ elif(request.session['currentDesignationSelected'] == "Dean Academic"):
return render(request, 'programme_curriculum/faculty/dean_view_course_proposal_forms.html',{'courseProposals': courses,'updateProposals':updatecourses})
return render(request, 'programme_curriculum/faculty/view_course_proposal_forms.html',{'courseProposals': courseProposal,'updateProposals':updatecourseProposal})
@@ -1302,12 +1337,13 @@ def view_course_proposal_forms(request):
def update_course_proposal_form(request, course_id):
user_details = ExtraInfo.objects.get(user = request.user)
des = HoldsDesignation.objects.all().filter(user = request.user).first()
- if str(des.designation) == "student":
+ if request.session['currentDesignationSelected'] == "student":
return HttpResponseRedirect('/programme_curriculum/programmes/')
- elif str(request.user) == "acadadmin" :
+ elif request.session['currentDesignationSelected'] == "acadadmin" :
return HttpResponseRedirect('/programme_curriculum/admin_programmes/')
- elif str(des.designation) == "Associate Professor" or str(des.designation) == "Professor" or str(des.designation) == "Assistant Professor" :
+ elif request.session['currentDesignationSelected'] == "Associate Professor" or request.session['currentDesignationSelected'] == "Professor" or request.session['currentDesignationSelected'] == "Assistant Professor" :
pass
+
faculty_id=user_details.user_id
details=User.objects.get(id=faculty_id)
faculty_name=details.first_name +' '+ details.last_name
diff --git a/FusionIIIT/templates/academic_procedures/academic.html b/FusionIIIT/templates/academic_procedures/academic.html
old mode 100755
new mode 100644
index 6b04a54fb..35eebf446
--- a/FusionIIIT/templates/academic_procedures/academic.html
+++ b/FusionIIIT/templates/academic_procedures/academic.html
@@ -22,6 +22,39 @@
}
+
+
{% endblock css %}
@@ -30,13 +63,12 @@
{% include 'dashboard/navbar.html' %}
{% endblock %}
-
+
- {% comment %}The left-margin segment!{% endcomment %}
-
+
{% comment %}The left-rail segment starts here!{% endcomment %}
-
+
{% comment %}The user image card starts here!{% endcomment %}
{% block usercard %}
{% include 'globals/usercard.html' %}
@@ -46,8 +78,8 @@
{% comment %}The Tab-Menu starts here!{% endcomment %}
-