Few Changes Done
This commit is contained in:
parent
589f02f575
commit
2f7aa91c95
|
@ -288,7 +288,7 @@ def generateCSV(request, id, email, user_type):
|
||||||
row_details.append(apl.student.branch)
|
row_details.append(apl.student.branch)
|
||||||
row_details.append(apl.student.batch)
|
row_details.append(apl.student.batch)
|
||||||
row_details.append(apl.student.cpi)
|
row_details.append(apl.student.cpi)
|
||||||
link = LINK_TO_STORAGE_RESUME + urllib.parse.quote_plus(apl.student.id + "/" + apl.resume)
|
link = LINK_TO_STORAGE_RESUME + urllib.parse.quote(apl.student.id) + "/" + urllib.parse.quote(apl.resume)
|
||||||
row_details.append(link)
|
row_details.append(link)
|
||||||
row_details.append(apl.selected)
|
row_details.append(apl.selected)
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@ logger = logging.getLogger('db')
|
||||||
IS_COMPENSATION_DETAILS_PDF,
|
IS_COMPENSATION_DETAILS_PDF,
|
||||||
ALLOWED_BRANCH, SELECTION_PROCEDURE_ROUNDS, SELECTION_PROCEDURE_DETAILS, IS_SELECTION_PROCEDURE_DETAILS_PDF,
|
ALLOWED_BRANCH, SELECTION_PROCEDURE_ROUNDS, SELECTION_PROCEDURE_DETAILS, IS_SELECTION_PROCEDURE_DETAILS_PDF,
|
||||||
TENTATIVE_DATE_OF_JOINING,
|
TENTATIVE_DATE_OF_JOINING,
|
||||||
TENTATIVE_NO_OF_OFFERS, OTHER_REQUIREMENTS, RECAPTCHA_VALUE
|
TENTATIVE_NO_OF_OFFERS, OTHER_REQUIREMENTS, RECAPTCHA_VALUE
|
||||||
])
|
])
|
||||||
def addPlacement(request):
|
def addPlacement(request):
|
||||||
try:
|
try:
|
||||||
|
@ -24,6 +24,7 @@ def addPlacement(request):
|
||||||
opening = Placement()
|
opening = Placement()
|
||||||
if not verify_recaptcha(data[RECAPTCHA_VALUE]):
|
if not verify_recaptcha(data[RECAPTCHA_VALUE]):
|
||||||
raise Exception("Recaptcha Failed")
|
raise Exception("Recaptcha Failed")
|
||||||
|
|
||||||
opening.id = generateRandomString()
|
opening.id = generateRandomString()
|
||||||
# Add a company details in the opening
|
# Add a company details in the opening
|
||||||
opening.company_name = data[COMPANY_NAME]
|
opening.company_name = data[COMPANY_NAME]
|
||||||
|
@ -32,12 +33,6 @@ def addPlacement(request):
|
||||||
opening.nature_of_business = data[NATURE_OF_BUSINESS]
|
opening.nature_of_business = data[NATURE_OF_BUSINESS]
|
||||||
opening.website = data[WEBSITE]
|
opening.website = data[WEBSITE]
|
||||||
opening.company_details = data[COMPANY_DETAILS]
|
opening.company_details = data[COMPANY_DETAILS]
|
||||||
if data[IS_COMPANY_DETAILS_PDF] == "true":
|
|
||||||
opening.is_company_details_pdf = True
|
|
||||||
elif data[IS_COMPANY_DETAILS_PDF] == "false":
|
|
||||||
opening.is_company_details_pdf = False
|
|
||||||
else:
|
|
||||||
raise ValueError('Invalid value for is_company_details_pdf')
|
|
||||||
|
|
||||||
if opening.is_company_details_pdf:
|
if opening.is_company_details_pdf:
|
||||||
company_details_pdf = []
|
company_details_pdf = []
|
||||||
|
@ -47,6 +42,13 @@ def addPlacement(request):
|
||||||
|
|
||||||
opening.company_details_pdf_names = company_details_pdf
|
opening.company_details_pdf_names = company_details_pdf
|
||||||
|
|
||||||
|
if data[IS_COMPANY_DETAILS_PDF] == "true" and len(opening.company_details_pdf_names) > 0:
|
||||||
|
opening.is_company_details_pdf = True
|
||||||
|
elif data[IS_COMPANY_DETAILS_PDF] == "false" and len(opening.company_details_pdf_names) == 0:
|
||||||
|
opening.is_company_details_pdf = False
|
||||||
|
else:
|
||||||
|
raise ValueError('Invalid value for is_company_details_pdf')
|
||||||
|
|
||||||
# Add a contact person details in the opening
|
# Add a contact person details in the opening
|
||||||
opening.contact_person_name = data[CONTACT_PERSON_NAME]
|
opening.contact_person_name = data[CONTACT_PERSON_NAME]
|
||||||
# Check if Phone number is Integer
|
# Check if Phone number is Integer
|
||||||
|
@ -78,14 +80,6 @@ def addPlacement(request):
|
||||||
opening.designation = data[DESIGNATION]
|
opening.designation = data[DESIGNATION]
|
||||||
opening.description = data[DESCRIPTION]
|
opening.description = data[DESCRIPTION]
|
||||||
|
|
||||||
# Check if is_description_pdf is boolean
|
|
||||||
if data[IS_DESCRIPTION_PDF] == "true":
|
|
||||||
opening.is_description_pdf = True
|
|
||||||
elif data[IS_DESCRIPTION_PDF] == "false":
|
|
||||||
opening.is_description_pdf = False
|
|
||||||
else:
|
|
||||||
raise ValueError('Invalid value for is_description_pdf')
|
|
||||||
|
|
||||||
if opening.is_description_pdf:
|
if opening.is_description_pdf:
|
||||||
description_pdf = []
|
description_pdf = []
|
||||||
for file in files.getlist(DESCRIPTION_PDF):
|
for file in files.getlist(DESCRIPTION_PDF):
|
||||||
|
@ -94,6 +88,14 @@ def addPlacement(request):
|
||||||
|
|
||||||
opening.description_pdf_names = description_pdf
|
opening.description_pdf_names = description_pdf
|
||||||
|
|
||||||
|
# Check if is_description_pdf is boolean
|
||||||
|
if data[IS_DESCRIPTION_PDF] == "true" and len(opening.description_pdf_names) > 0:
|
||||||
|
opening.is_description_pdf = True
|
||||||
|
elif data[IS_DESCRIPTION_PDF] == "false" and len(opening.description_pdf_names) == 0:
|
||||||
|
opening.is_description_pdf = False
|
||||||
|
else:
|
||||||
|
raise ValueError('Invalid value for is_description_pdf')
|
||||||
|
|
||||||
# Add a compensation details in the opening
|
# Add a compensation details in the opening
|
||||||
# Check if compensation_ctc is integer
|
# Check if compensation_ctc is integer
|
||||||
if data[COMPENSATION_CTC].isdigit():
|
if data[COMPENSATION_CTC].isdigit():
|
||||||
|
@ -128,13 +130,6 @@ def addPlacement(request):
|
||||||
raise ValueError('Compensation Bonus must be an integer')
|
raise ValueError('Compensation Bonus must be an integer')
|
||||||
|
|
||||||
opening.compensation_details = data[COMPENSATION_DETAILS]
|
opening.compensation_details = data[COMPENSATION_DETAILS]
|
||||||
# Check if is_compensation_details_pdf is boolean
|
|
||||||
if data[IS_COMPENSATION_DETAILS_PDF] == "true":
|
|
||||||
opening.is_compensation_details_pdf = True
|
|
||||||
elif data[IS_COMPENSATION_DETAILS_PDF] == "false":
|
|
||||||
opening.is_compensation_details_pdf = False
|
|
||||||
else:
|
|
||||||
raise ValueError('Invalid value for is_compensation_details_pdf')
|
|
||||||
|
|
||||||
if opening.is_compensation_details_pdf:
|
if opening.is_compensation_details_pdf:
|
||||||
compensation_details_pdf = []
|
compensation_details_pdf = []
|
||||||
|
@ -144,6 +139,14 @@ def addPlacement(request):
|
||||||
|
|
||||||
opening.compensation_details_pdf_names = compensation_details_pdf
|
opening.compensation_details_pdf_names = compensation_details_pdf
|
||||||
|
|
||||||
|
# Check if is_compensation_details_pdf is boolean
|
||||||
|
if data[IS_COMPENSATION_DETAILS_PDF] == "true" and len(opening.compensation_details_pdf_names) > 0:
|
||||||
|
opening.is_compensation_details_pdf = True
|
||||||
|
elif data[IS_COMPENSATION_DETAILS_PDF] == "false" and len(opening.compensation_details_pdf_names) == 0:
|
||||||
|
opening.is_compensation_details_pdf = False
|
||||||
|
else:
|
||||||
|
raise ValueError('Invalid value for is_compensation_details_pdf')
|
||||||
|
|
||||||
opening.bond_details = data[BOND_DETAILS]
|
opening.bond_details = data[BOND_DETAILS]
|
||||||
|
|
||||||
# Check if selection_procedure_rounds is list
|
# Check if selection_procedure_rounds is list
|
||||||
|
@ -155,13 +158,6 @@ def addPlacement(request):
|
||||||
except:
|
except:
|
||||||
raise ValueError('Selection Procedure Rounds must be a list')
|
raise ValueError('Selection Procedure Rounds must be a list')
|
||||||
opening.selection_procedure_details = data[SELECTION_PROCEDURE_DETAILS]
|
opening.selection_procedure_details = data[SELECTION_PROCEDURE_DETAILS]
|
||||||
# Check if is_selection_procedure_details_pdf is boolean
|
|
||||||
if data[IS_SELECTION_PROCEDURE_DETAILS_PDF] == "true":
|
|
||||||
opening.is_selection_procedure_details_pdf = True
|
|
||||||
elif data[IS_SELECTION_PROCEDURE_DETAILS_PDF] == "false":
|
|
||||||
opening.is_selection_procedure_details_pdf = False
|
|
||||||
else:
|
|
||||||
raise ValueError('Invalid value for is_selection_procedure_pdf')
|
|
||||||
|
|
||||||
if opening.is_selection_procedure_details_pdf:
|
if opening.is_selection_procedure_details_pdf:
|
||||||
selection_procedure_details_pdf = []
|
selection_procedure_details_pdf = []
|
||||||
|
@ -171,6 +167,16 @@ def addPlacement(request):
|
||||||
|
|
||||||
opening.selection_procedure_details_pdf_names = selection_procedure_details_pdf
|
opening.selection_procedure_details_pdf_names = selection_procedure_details_pdf
|
||||||
|
|
||||||
|
# Check if is_selection_procedure_details_pdf is boolean
|
||||||
|
if data[IS_SELECTION_PROCEDURE_DETAILS_PDF] == "true" and len(
|
||||||
|
opening.selection_procedure_details_pdf_names) > 0:
|
||||||
|
opening.is_selection_procedure_details_pdf = True
|
||||||
|
elif data[IS_SELECTION_PROCEDURE_DETAILS_PDF] == "false" and len(
|
||||||
|
opening.selection_procedure_details_pdf_names) == 0:
|
||||||
|
opening.is_selection_procedure_details_pdf = False
|
||||||
|
else:
|
||||||
|
raise ValueError('Invalid value for is_selection_procedure_pdf')
|
||||||
|
|
||||||
stat, tier = getTier(opening.compensation_gross)
|
stat, tier = getTier(opening.compensation_gross)
|
||||||
if stat:
|
if stat:
|
||||||
opening.tier = tier
|
opening.tier = tier
|
||||||
|
@ -296,4 +302,4 @@ def verifyEmail(request):
|
||||||
except:
|
except:
|
||||||
logger.warning("Verify Email: " + str(sys.exc_info()))
|
logger.warning("Verify Email: " + str(sys.exc_info()))
|
||||||
return Response({'action': "Verify Email", 'message': "Something went wrong"},
|
return Response({'action': "Verify Email", 'message': "Something went wrong"},
|
||||||
status=status.HTTP_400_BAD_REQUEST)
|
status=status.HTTP_400_BAD_REQUEST)
|
||||||
|
|
|
@ -40,9 +40,9 @@ CLIENT_ID = "956830229554-290mirc16pdhd5j7ph7v7ukibo4t1qcp.apps.googleuserconten
|
||||||
|
|
||||||
# To be Configured Properly
|
# To be Configured Properly
|
||||||
PLACEMENT_OPENING_URL = "https://www.googleapis.com/auth/adwords/{id}" # On frontend, this is the URL to be opened
|
PLACEMENT_OPENING_URL = "https://www.googleapis.com/auth/adwords/{id}" # On frontend, this is the URL to be opened
|
||||||
LINK_TO_STORAGE_COMPANY_ATTACHMENT = "https://storage.googleapis.com/cdc-backend-attachments/company_attachments/"
|
LINK_TO_STORAGE_COMPANY_ATTACHMENT = "http://localhost/storage/Company_Attachments/"
|
||||||
LINK_TO_STORAGE_RESUME = "https://storage.googleapis.com/cdc-backend-attachments/resume/"
|
LINK_TO_STORAGE_RESUME = "http://localhost/storage/Resumes/"
|
||||||
LINK_TO_APPLICATIONS_CSV = "https://storage.googleapis.com/cdc-backend-attachments/applications-csv/"
|
LINK_TO_APPLICATIONS_CSV = "http://localhost/storage/Application_CSV/"
|
||||||
LINK_TO_EMAIl_VERIFICATION_API = "http://localhost:3000/company/verifyEmail?token={token}"
|
LINK_TO_EMAIl_VERIFICATION_API = "http://localhost:3000/company/verifyEmail?token={token}"
|
||||||
|
|
||||||
EMAIL = "email"
|
EMAIL = "email"
|
||||||
|
|
|
@ -21,6 +21,7 @@ class Student(models.Model):
|
||||||
phone_number = models.PositiveBigIntegerField(blank=True, default=None, null=True)
|
phone_number = models.PositiveBigIntegerField(blank=True, default=None, null=True)
|
||||||
resumes = ArrayField(models.CharField(null=True, default=None, max_length=100), size=10, default=list, blank=True)
|
resumes = ArrayField(models.CharField(null=True, default=None, max_length=100), size=10, default=list, blank=True)
|
||||||
cpi = models.DecimalField(decimal_places=2, max_digits=4)
|
cpi = models.DecimalField(decimal_places=2, max_digits=4)
|
||||||
|
can_apply = models.BooleanField(default=True)
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return str(self.roll_no)
|
return str(self.roll_no)
|
||||||
|
@ -39,11 +40,11 @@ class Placement(models.Model):
|
||||||
id = models.CharField(blank=False, primary_key=True, max_length=15)
|
id = models.CharField(blank=False, primary_key=True, max_length=15)
|
||||||
# Company Details
|
# Company Details
|
||||||
company_name = models.CharField(blank=False, max_length=50)
|
company_name = models.CharField(blank=False, max_length=50)
|
||||||
address = models.CharField(blank=False, max_length=150)
|
address = models.CharField(blank=False, max_length=500)
|
||||||
company_type = models.CharField(blank=False, max_length=50)
|
company_type = models.CharField(blank=False, max_length=50)
|
||||||
nature_of_business = models.CharField(blank=False, max_length=50, default="")
|
nature_of_business = models.CharField(blank=False, max_length=50, default="")
|
||||||
website = models.CharField(blank=True, max_length=50)
|
website = models.CharField(blank=True, max_length=50)
|
||||||
company_details = models.CharField(blank=False, max_length=500, default=None, null=True)
|
company_details = models.CharField(max_length=500, default=None, null=True)
|
||||||
company_details_pdf_names = ArrayField(models.CharField(null=True, default=None, max_length=100), size=5, default=list, blank=True)
|
company_details_pdf_names = ArrayField(models.CharField(null=True, default=None, max_length=100), size=5, default=list, blank=True)
|
||||||
is_company_details_pdf = models.BooleanField(blank=False, default=False)
|
is_company_details_pdf = models.BooleanField(blank=False, default=False)
|
||||||
contact_person_name = models.CharField(blank=False, max_length=50)
|
contact_person_name = models.CharField(blank=False, max_length=50)
|
||||||
|
@ -55,20 +56,20 @@ class Placement(models.Model):
|
||||||
pin_code = models.IntegerField(blank=False, default=None,null=True)
|
pin_code = models.IntegerField(blank=False, default=None,null=True)
|
||||||
city_type = models.CharField(blank=False, max_length=15, choices=OFFER_CITY_TYPE)
|
city_type = models.CharField(blank=False, max_length=15, choices=OFFER_CITY_TYPE)
|
||||||
# Job Details
|
# Job Details
|
||||||
designation = models.CharField(blank=False, max_length=25, default=None, null=True)
|
designation = models.CharField(blank=False, max_length=50, default=None, null=True)
|
||||||
description = models.CharField(blank=False, max_length=200, default=None, null=True)
|
description = models.CharField(blank=False, max_length=500, default=None, null=True)
|
||||||
description_pdf_names = ArrayField(models.CharField(null=True, default=None, max_length=100), size=5, default=list, blank=True)
|
description_pdf_names = ArrayField(models.CharField(null=True, default=None, max_length=100), size=5, default=list, blank=True)
|
||||||
is_description_pdf = models.BooleanField(blank=False, default=False)
|
is_description_pdf = models.BooleanField(blank=False, default=False)
|
||||||
compensation_CTC = models.IntegerField(blank=False, default=None, null=True ) # Job - Per Year
|
compensation_CTC = models.IntegerField(blank=False, default=None, null=True ) # Job - Per Year
|
||||||
compensation_gross = models.IntegerField(blank=False, default=None, null=True)
|
compensation_gross = models.IntegerField(blank=False, default=None, null=True)
|
||||||
compensation_take_home = models.IntegerField(blank=False, default=None, null=True)
|
compensation_take_home = models.IntegerField(blank=False, default=None, null=True)
|
||||||
compensation_bonus = models.IntegerField(blank=True, default=None, null=True)
|
compensation_bonus = models.IntegerField(blank=True, default=None, null=True)
|
||||||
compensation_details = models.CharField(blank=True, max_length=200, default=None, null=True)
|
compensation_details = models.CharField(blank=True, max_length=500, default=None, null=True)
|
||||||
compensation_details_pdf_names = ArrayField(models.CharField(null=True, default=None, max_length=100), size=5, default=list, blank=True)
|
compensation_details_pdf_names = ArrayField(models.CharField(null=True, default=None, max_length=100), size=5, default=list, blank=True)
|
||||||
is_compensation_details_pdf = models.BooleanField(blank=False, default=False)
|
is_compensation_details_pdf = models.BooleanField(blank=False, default=False)
|
||||||
bond_details = models.CharField(blank=True, max_length=200)
|
bond_details = models.CharField(blank=True, max_length=500)
|
||||||
selection_procedure_rounds = ArrayField(models.CharField(null=True, default=None, max_length=100), size=10, default=list, blank=True)
|
selection_procedure_rounds = ArrayField(models.CharField(null=True, default=None, max_length=100), size=10, default=list, blank=True)
|
||||||
selection_procedure_details = models.CharField(blank=True, max_length=200)
|
selection_procedure_details = models.CharField(blank=True, max_length=500)
|
||||||
selection_procedure_details_pdf_names = ArrayField(models.CharField(null=True, default=None, max_length=100), size=5, default=list, blank=True)
|
selection_procedure_details_pdf_names = ArrayField(models.CharField(null=True, default=None, max_length=100), size=5, default=list, blank=True)
|
||||||
is_selection_procedure_details_pdf = models.BooleanField(blank=False, default=False)
|
is_selection_procedure_details_pdf = models.BooleanField(blank=False, default=False)
|
||||||
tier = models.CharField(blank=False, choices=TIERS, max_length=10, default=None, null=True)
|
tier = models.CharField(blank=False, choices=TIERS, max_length=10, default=None, null=True)
|
||||||
|
|
|
@ -12,7 +12,7 @@ class StudentSerializer(serializers.ModelSerializer):
|
||||||
links = []
|
links = []
|
||||||
for i in obj.resumes:
|
for i in obj.resumes:
|
||||||
ele = {}
|
ele = {}
|
||||||
ele['link'] = LINK_TO_STORAGE_RESUME + urllib.parse.quote_plus(obj.id + "/" + i)
|
ele['link'] = LINK_TO_STORAGE_RESUME + urllib.parse.quote(obj.id + "/" + i)
|
||||||
ele['name'] = i
|
ele['name'] = i
|
||||||
links.append(ele)
|
links.append(ele)
|
||||||
return links
|
return links
|
||||||
|
@ -45,7 +45,7 @@ class PlacementSerializerForStudent(serializers.ModelSerializer):
|
||||||
links = []
|
links = []
|
||||||
for pdf_name in obj.company_details_pdf_names:
|
for pdf_name in obj.company_details_pdf_names:
|
||||||
ele = {}
|
ele = {}
|
||||||
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote_plus(obj.id + "/" + pdf_name)
|
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote(obj.id + "/" + pdf_name)
|
||||||
ele['link'] = link
|
ele['link'] = link
|
||||||
ele['name'] = pdf_name
|
ele['name'] = pdf_name
|
||||||
links.append(ele)
|
links.append(ele)
|
||||||
|
@ -55,7 +55,7 @@ class PlacementSerializerForStudent(serializers.ModelSerializer):
|
||||||
links = []
|
links = []
|
||||||
for pdf_name in obj.description_pdf_names:
|
for pdf_name in obj.description_pdf_names:
|
||||||
ele = {}
|
ele = {}
|
||||||
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote_plus(obj.id + "/" + pdf_name)
|
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote(obj.id + "/" + pdf_name)
|
||||||
ele['link'] = link
|
ele['link'] = link
|
||||||
ele['name'] = pdf_name
|
ele['name'] = pdf_name
|
||||||
links.append(ele)
|
links.append(ele)
|
||||||
|
@ -65,7 +65,7 @@ class PlacementSerializerForStudent(serializers.ModelSerializer):
|
||||||
links = []
|
links = []
|
||||||
for pdf_name in obj.compensation_details_pdf_names:
|
for pdf_name in obj.compensation_details_pdf_names:
|
||||||
ele = {}
|
ele = {}
|
||||||
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote_plus(obj.id + "/" + pdf_name)
|
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote(obj.id + "/" + pdf_name)
|
||||||
ele['link'] = link
|
ele['link'] = link
|
||||||
ele['name'] = pdf_name
|
ele['name'] = pdf_name
|
||||||
links.append(ele)
|
links.append(ele)
|
||||||
|
@ -75,7 +75,7 @@ class PlacementSerializerForStudent(serializers.ModelSerializer):
|
||||||
links = []
|
links = []
|
||||||
for pdf_name in obj.selection_procedure_details_pdf_names:
|
for pdf_name in obj.selection_procedure_details_pdf_names:
|
||||||
ele = {}
|
ele = {}
|
||||||
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote_plus(obj.id + "/" + pdf_name)
|
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote(obj.id + "/" + pdf_name)
|
||||||
ele['link'] = link
|
ele['link'] = link
|
||||||
ele['name'] = pdf_name
|
ele['name'] = pdf_name
|
||||||
links.append(ele)
|
links.append(ele)
|
||||||
|
@ -100,7 +100,7 @@ class PlacementSerializerForAdmin(serializers.ModelSerializer):
|
||||||
links = []
|
links = []
|
||||||
for pdf_name in obj.company_details_pdf_names:
|
for pdf_name in obj.company_details_pdf_names:
|
||||||
ele = {}
|
ele = {}
|
||||||
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote_plus(obj.id + "/" + pdf_name)
|
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote(obj.id + "/" + pdf_name)
|
||||||
ele['link'] = link
|
ele['link'] = link
|
||||||
ele['name'] = pdf_name
|
ele['name'] = pdf_name
|
||||||
links.append(ele)
|
links.append(ele)
|
||||||
|
@ -110,7 +110,7 @@ class PlacementSerializerForAdmin(serializers.ModelSerializer):
|
||||||
links = []
|
links = []
|
||||||
for pdf_name in obj.description_pdf_names:
|
for pdf_name in obj.description_pdf_names:
|
||||||
ele = {}
|
ele = {}
|
||||||
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote_plus(obj.id + "/" + pdf_name)
|
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote(obj.id + "/" + pdf_name)
|
||||||
ele['link'] = link
|
ele['link'] = link
|
||||||
ele['name'] = pdf_name
|
ele['name'] = pdf_name
|
||||||
links.append(ele)
|
links.append(ele)
|
||||||
|
@ -120,7 +120,7 @@ class PlacementSerializerForAdmin(serializers.ModelSerializer):
|
||||||
links = []
|
links = []
|
||||||
for pdf_name in obj.compensation_details_pdf_names:
|
for pdf_name in obj.compensation_details_pdf_names:
|
||||||
ele = {}
|
ele = {}
|
||||||
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote_plus(obj.id + "/" + pdf_name)
|
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote(obj.id + "/" + pdf_name)
|
||||||
ele['link'] = link
|
ele['link'] = link
|
||||||
ele['name'] = pdf_name
|
ele['name'] = pdf_name
|
||||||
links.append(ele)
|
links.append(ele)
|
||||||
|
@ -130,7 +130,7 @@ class PlacementSerializerForAdmin(serializers.ModelSerializer):
|
||||||
links = []
|
links = []
|
||||||
for pdf_name in obj.selection_procedure_details_pdf_names:
|
for pdf_name in obj.selection_procedure_details_pdf_names:
|
||||||
ele = {}
|
ele = {}
|
||||||
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote_plus(obj.id + "/" + pdf_name)
|
link = LINK_TO_STORAGE_COMPANY_ATTACHMENT + urllib.parse.quote(obj.id + "/" + pdf_name)
|
||||||
ele['link'] = link
|
ele['link'] = link
|
||||||
ele['name'] = pdf_name
|
ele['name'] = pdf_name
|
||||||
links.append(ele)
|
links.append(ele)
|
||||||
|
@ -153,7 +153,7 @@ class PlacementApplicationSerializer(serializers.ModelSerializer):
|
||||||
|
|
||||||
def get_resume_link(self, obj):
|
def get_resume_link(self, obj):
|
||||||
ele = {}
|
ele = {}
|
||||||
ele['link'] = LINK_TO_STORAGE_RESUME + urllib.parse.quote_plus(obj.id + "/" + obj.resume)
|
ele['link'] = LINK_TO_STORAGE_RESUME + urllib.parse.quote(obj.id + "/" + obj.resume)
|
||||||
ele['name'] = obj.resume
|
ele['name'] = obj.resume
|
||||||
return ele
|
return ele
|
||||||
|
|
||||||
|
@ -171,7 +171,7 @@ class PlacementApplicationSerializerForAdmin(serializers.ModelSerializer):
|
||||||
return data
|
return data
|
||||||
|
|
||||||
def get_resume_link(self, obj):
|
def get_resume_link(self, obj):
|
||||||
link = LINK_TO_STORAGE_RESUME + urllib.parse.quote_plus(obj.id + "/" + obj.resume)
|
link = LINK_TO_STORAGE_RESUME + urllib.parse.quote(obj.id + "/" + obj.resume)
|
||||||
return link
|
return link
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|
|
@ -134,6 +134,9 @@ def submitApplication(request, id, email, user_type):
|
||||||
try:
|
try:
|
||||||
data = request.data
|
data = request.data
|
||||||
student = get_object_or_404(Student, id=id)
|
student = get_object_or_404(Student, id=id)
|
||||||
|
if not student.can_apply:
|
||||||
|
return Response({'action': "Submit Application", 'message': "Student Can't Apply"},
|
||||||
|
status=status.HTTP_400_BAD_REQUEST)
|
||||||
# Only Allowing Applications for Placements
|
# Only Allowing Applications for Placements
|
||||||
if data[OPENING_TYPE] == PLACEMENT:
|
if data[OPENING_TYPE] == PLACEMENT:
|
||||||
if not len(PlacementApplication.objects.filter(
|
if not len(PlacementApplication.objects.filter(
|
||||||
|
|
12
nginx.conf
12
nginx.conf
|
@ -1,5 +1,5 @@
|
||||||
|
|
||||||
#user nobody;
|
user root;
|
||||||
worker_processes 1;
|
worker_processes 1;
|
||||||
|
|
||||||
error_log logs/error.log;
|
error_log logs/error.log;
|
||||||
|
@ -53,13 +53,15 @@ http {
|
||||||
|
|
||||||
# Server static files /storage
|
# Server static files /storage
|
||||||
location /storage {
|
location /storage {
|
||||||
alias '/home/gowtham/Gowtham/Shared Projects/cdc-placement-website-backend/CDC_Backend/Storage';
|
alias '/home/gowtham/Gowtham/Projects/cdc-placement-website-backend/CDC_Backend/Storage/';
|
||||||
# autoindex on;
|
autoindex on;
|
||||||
|
autoindex_exact_size on;
|
||||||
}
|
}
|
||||||
|
|
||||||
location /static {
|
location /static {
|
||||||
# autoindex on;
|
autoindex on;
|
||||||
alias '/home/gowtham/Gowtham/Shared Projects/cdc-placement-website-backend/CDC_Backend/static';
|
autoindex_exact_size on;
|
||||||
|
alias '/home/gowtham/Gowtham/Projects/cdc-placement-website-backend/CDC_Backend/static/';
|
||||||
}
|
}
|
||||||
|
|
||||||
location /api/ {
|
location /api/ {
|
||||||
|
|
Loading…
Reference in New Issue