Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test os 3 #1700

Merged
merged 6 commits into from
Jan 27, 2025
Merged
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
5 changes: 3 additions & 2 deletions FusionIIIT/Fusion/settings/common.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@
# email of sender

EMAIL_HOST_USER = '[email protected]'
# EMAIL_HOST_PASSWORD = 'password'

EMAIL_PORT = 587
ACCOUNT_EMAIL_REQUIRED = True
Expand Down Expand Up @@ -79,8 +80,8 @@


# CELERY STUFF
# CELERY_BROKER_URL = 'redis://localhost:6379'
# CELERY_RESULT_BACKEND = 'redis://localhost:6379'
CELERY_BROKER_URL = 'redis://localhost:6379'
CELERY_RESULT_BACKEND = 'redis://localhost:6379'
CELERY_ACCEPT_CONTENT = ['application/json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
Expand Down
224 changes: 113 additions & 111 deletions FusionIIIT/applications/department/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
from .models import SpecialRequest, Announcements , Information
from jsonschema import validate
from jsonschema.exceptions import ValidationError
from notification.views import create_announcement


def department_information(request):
Expand Down Expand Up @@ -261,127 +262,128 @@ def staff_view(request):
department_context = department_information(request)

requests_received = get_to_request(usrnm)
if request.method == 'POST':
form_type = request.POST.get('form_type', '')
if form_type == 'form1' :
# if request.method == 'POST':
# form_type = request.POST.get('form_type', '')
# if form_type == 'form1' :

batch = request.POST.get('batch', '')
programme = request.POST.get('programme', '')
message = request.POST.get('announcement', '')
upload_announcement = request.FILES.get('upload_announcement')
department = request.POST.get('department')
ann_date = date.today()
user_info = ExtraInfo.objects.all().select_related('user','department').get(id=ann_maker_id)
getstudents = ExtraInfo.objects.select_related('user')
recipients = User.objects.filter(extrainfo__in=getstudents)

obj1, created = Announcements.objects.get_or_create(maker_id=user_info,
batch=batch,
programme=programme,
message=message,
upload_announcement=upload_announcement,
department = department,
ann_date=ann_date)
department_notif(usrnm, recipients , message)
# batch = request.POST.get('batch', '')
# programme = request.POST.get('programme', '')
# message = request.POST.get('announcement', '')
# upload_announcement = request.FILES.get('upload_announcement')
# department = request.POST.get('department')
# ann_date = date.today()
# user_info = ExtraInfo.objects.all().select_related('user','department').get(id=ann_maker_id)
# getstudents = ExtraInfo.objects.select_related('user')
# recipients = User.objects.filter(extrainfo__in=getstudents)

# obj1, created = Announcements.objects.get_or_create(maker_id=user_info,
# batch=batch,
# programme=programme,
# message=message,
# upload_announcement=upload_announcement,
# department = department,
# ann_date=ann_date)
# department_notif(usrnm, recipients , message)

elif form_type == 'form2' :
# elif form_type == 'form2' :

email = request.POST.get('email', '')
phone_number = request.POST.get('contact_number', '')
facilites = request.POST.get('facilities', '')
labs = request.POST.get('labs', '')
department_id = user_departmentid

# Check if a row with the specified department_id already exists
try:
department_info = Information.objects.get(department_id=department_id)
# If row exists, update the values
department_info.email = email
department_info.phone_number_number = phone_number
department_info.facilites = facilites
department_info.labs = labs
department_info.save()
except Information.DoesNotExist:
# If row does not exist, create a new one
department_info = Information.objects.create(
department_id=department_id,
email=email,
phone_number=phone_number,
facilites=facilites,
labs=labs
)
# email = request.POST.get('email', '')
# phone_number = request.POST.get('contact_number', '')
# facilites = request.POST.get('facilities', '')
# labs = request.POST.get('labs', '')
# department_id = user_departmentid

# # Check if a row with the specified department_id already exists
# try:
# department_info = Information.objects.get(department_id=department_id)
# # If row exists, update the values
# department_info.email = email
# department_info.phone_number_number = phone_number
# department_info.facilites = facilites
# department_info.labs = labs
# department_info.save()
# except Information.DoesNotExist:
# # If row does not exist, create a new one
# department_info = Information.objects.create(
# department_id=department_id,
# email=email,
# phone_number=phone_number,
# facilites=facilites,
# labs=labs
# )


context = browse_announcements()
# context = browse_announcements()


department_templates = {
51: 'department/csedep_request.html',
30: 'department/ecedep_request.html',
37: 'department/medep_request.html',
53: 'department/smdep_request.html',

}
default_template = 'department/dep_request.html'
# department_templates = {
# 51: 'department/csedep_request.html',
# 30: 'department/ecedep_request.html',
# 37: 'department/medep_request.html',
# 53: 'department/smdep_request.html',

# }
# default_template = 'department/dep_request.html'

desig=request.session.get('currentDesignationSelected', 'default_value')
if desig=='deptadmin_cse':
template_name = 'department/admin_cse.html'
# desig=request.session.get('currentDesignationSelected', 'default_value')
# if desig=='deptadmin_cse':
# template_name = 'department/admin_cse.html'

return render(request, template_name, {
"user_designation": user_info.user_type,
"announcements": context,
"request_to": requests_received,
"fac_list": context_f,
"department_info": department_context
})
elif desig=='deptadmin_ece':
template_name = 'department/admin_ece.html'
return render(request, template_name, {
"user_designation": user_info.user_type,
"announcements": context,
"request_to": requests_received,
"fac_list": context_f,
"department_info": department_context
})
elif desig=='deptadmin_me':
template_name = 'department/admin_me.html'
return render(request, template_name, {
"user_designation": user_info.user_type,
"announcements": context,
"request_to": requests_received,
"fac_list": context_f,
"department_info": department_context
})
elif desig=='deptadmin_sm':
template_name = 'department/admin_sm.html'
return render(request, template_name, {
"user_designation": user_info.user_type,
"announcements": context,
"request_to": requests_received,
"fac_list": context_f,
"department_info": department_context
})
# return render(request, template_name, {
# "user_designation": user_info.user_type,
# "announcements": context,
# "request_to": requests_received,
# "fac_list": context_f,
# "department_info": department_context
# })
# elif desig=='deptadmin_ece':
# template_name = 'department/admin_ece.html'
# return render(request, template_name, {
# "user_designation": user_info.user_type,
# "announcements": context,
# "request_to": requests_received,
# "fac_list": context_f,
# "department_info": department_context
# })
# elif desig=='deptadmin_me':
# template_name = 'department/admin_me.html'
# return render(request, template_name, {
# "user_designation": user_info.user_type,
# "announcements": context,
# "request_to": requests_received,
# "fac_list": context_f,
# "department_info": department_context
# })
# elif desig=='deptadmin_sm':
# template_name = 'department/admin_sm.html'
# return render(request, template_name, {
# "user_designation": user_info.user_type,
# "announcements": context,
# "request_to": requests_received,
# "fac_list": context_f,
# "department_info": department_context
# })

# if desig == 'deptadmin_cse':
# return render(request, 'admin_cse.html')
# elif desig == 'deptadmin_ece':
# return render(request, 'admin_ece.html')
# elif desig == 'deptadmin_sm':
# return render(request, 'admin_sm.html')
# elif desig == 'deptadmin_me':
# return render(request, 'admin_me.html')
# else:
# return render(request, 'default.html')

template_name = department_templates.get(user_departmentid, default_template)
return render(request, template_name, {
"user_designation": user_info.user_type,
"announcements": context,
"request_to": requests_received,
"fac_list": context_f,
"department_info": department_context
})
# # if desig == 'deptadmin_cse':
# # return render(request, 'admin_cse.html')
# # elif desig == 'deptadmin_ece':
# # return render(request, 'admin_ece.html')
# # elif desig == 'deptadmin_sm':
# # return render(request, 'admin_sm.html')
# # elif desig == 'deptadmin_me':
# # return render(request, 'admin_me.html')
# # else:
# # return render(request, 'default.html')

# template_name = department_templates.get(user_departmentid, default_template)
# return render(request, template_name, {
# "user_designation": user_info.user_type,
# "announcements": context,
# "request_to": requests_received,
# "fac_list": context_f,
# "department_info": department_context
# })
return create_announcement(request, 'department/dep_request.html', 'Department', {"user_designation": user_info.user_type})



Expand Down
8 changes: 7 additions & 1 deletion FusionIIIT/applications/globals/api/urls.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
from django.conf.urls import url
from django.urls import path
from .views import department_info

from . import views

Expand All @@ -19,5 +21,9 @@
url(r'^notification/',views.notification,name='notification'),
url(r'^notificationread',views.NotificationRead,name='notifications-read'),
url(r'^notificationdelete',views.delete_notification,name='notifications-delete'),
url(r'^notificationunread',views.NotificationUnread,name='notifications-unread')
url(r'^notificationunread',views.NotificationUnread,name='notifications-unread'),
url(r'^search-users/', views.search_users, name='search_users'),
# url(r'^department-info/', views.department_info, name='department_info'),
path('department-info/', department_info, name='department-info'),

]
30 changes: 29 additions & 1 deletion FusionIIIT/applications/globals/api/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
from rest_framework.decorators import api_view, permission_classes,authentication_classes
from rest_framework.permissions import AllowAny
from rest_framework.response import Response
from django.http import JsonResponse


from . import serializers
Expand Down Expand Up @@ -376,4 +377,31 @@ def delete_notification(request):
'error': 'Failed to mark the notification as deleted.',
'details': str(e)
}
return Response(response, status=status.HTTP_400_BAD_REQUEST)
return Response(response, status=status.HTTP_400_BAD_REQUEST)


def search_users(request):
query = request.GET.get('q', '')
if query:
users = ExtraInfo.objects.filter(user__username__icontains=query).values('id', 'user__username')
else:
users = ExtraInfo.objects.none()

results = [
{'id': user['id'], 'text': user['user__username']} for user in users
]
return JsonResponse({'results': results})

@api_view(['GET']) # Declare that this view handles GET requests
@permission_classes([]) # No permissions required
@authentication_classes([]) # No authentication required
def department_info(request):
"""
Retrieve department information and return as JSON.
"""
try:
departments = DepartmentInfo.objects.all() # Fetch all department objects
serializer = serializers.DepartmentInfoSerializer(departments, many=True) # Serialize the data
return Response(serializer.data, status=status.HTTP_200_OK) # Return serialized data as JSON
except Exception as e:
return Response({'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
3 changes: 3 additions & 0 deletions FusionIIIT/applications/globals/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
from notifications.models import Notification
from .models import *
from applications.hostel_management.models import (HallCaretaker,HallWarden)
from notification.views import announcement_list

def index(request):
context = {}
Expand Down Expand Up @@ -754,11 +755,13 @@ def dashboard(request):
'designation' : designation,
'hall_caretaker': hall_caretaker_user,
'hall_warden': hall_warden_user,
'announcements': announcement_list(request)['announcements']

}
# a=HoldsDesignation.objects.select_related('user','working','designation').filter(designation = user)
print(context)
print(type(user.extrainfo.user_type))
print(announcement_list(request))
if(request.user.get_username() == 'director'):
return render(request, "dashboard/director_dashboard2.html", {})
elif( "dean_rspc" in designation):
Expand Down
6 changes: 3 additions & 3 deletions FusionIIIT/applications/leave/tasks.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
from __future__ import absolute_import, unicode_literals

import celery
from Fusion.celery import app
from django.db import transaction
from django.db.models import Q
from django.utils import timezone

from .models import LeaveMigration


@celery.task()
@app.task()
@transaction.atomic
def execute_leave_migrations():
today = timezone.now().date()
Expand All @@ -27,6 +27,6 @@ def execute_leave_migrations():
migrations.delete()


@celery.task()
@app.task()
def testing(a, b):
return a+b
Loading
Loading