From 529c9b63bfe2ee7d6fe1667bf5c09a0b23ac374f Mon Sep 17 00:00:00 2001 From: Akshen Date: Wed, 31 Oct 2018 11:13:21 +0530 Subject: Allow participants to view and download solutions - view correct answers - download all dwsim files - remove 10 marks week --- .gitignore | 3 ++ nccps2018/settings.py | 10 ++-- static/website/templates/navbar.html | 1 + static/website/templates/question_list.html | 1 - static/website/templates/view_solutions.html | 40 ++++++++++++++++ website/admin.py | 10 +++- website/forms.py | 8 ---- website/migrations/0005_uploadmodel.py | 22 +++++++++ website/models.py | 14 +++--- website/urls.py | 2 +- website/views.py | 70 +++++++++++++++------------- 11 files changed, 123 insertions(+), 58 deletions(-) create mode 100644 static/website/templates/view_solutions.html create mode 100644 website/migrations/0005_uploadmodel.py diff --git a/.gitignore b/.gitignore index 08cbbb1..921172a 100755 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,6 @@ db.sqlite3 #VScode .vscode/ + +# +uploads/ diff --git a/nccps2018/settings.py b/nccps2018/settings.py index 9ce4c32..a17836f 100644 --- a/nccps2018/settings.py +++ b/nccps2018/settings.py @@ -80,11 +80,11 @@ WSGI_APPLICATION = 'nccps2018.wsgi.application' DATABASES = { 'default': { - 'ENGINE': 'django.db.backends.mysql', - 'NAME': DB_NAME_DEFAULT, # Or path to database file if using sqlite3. - 'USER': DB_USER_DEFAULT, - 'PASSWORD': DB_PASS_DEFAULT, - 'HOST': DB_HOST_DEFAULT, + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), + 'TEST': { + 'NAME': 'mytestdatebase', + }, } } diff --git a/static/website/templates/navbar.html b/static/website/templates/navbar.html index d820d5d..a196b05 100644 --- a/static/website/templates/navbar.html +++ b/static/website/templates/navbar.html @@ -54,6 +54,7 @@ {% else %}
  • Take Quiz
  • +
  • View Solutions
  • {% endif %}
  •  Logout
  • diff --git a/static/website/templates/question_list.html b/static/website/templates/question_list.html index cc11098..65b571a 100644 --- a/static/website/templates/question_list.html +++ b/static/website/templates/question_list.html @@ -13,7 +13,6 @@
    -

    diff --git a/static/website/templates/view_solutions.html b/static/website/templates/view_solutions.html new file mode 100644 index 0000000..2074dcb --- /dev/null +++ b/static/website/templates/view_solutions.html @@ -0,0 +1,40 @@ +{% extends "base.html" %} + +{% load static %} + {% block content %} +

    +

    + +
    + {% if set_visible %} +
    + {% csrf_token %} + +
    +

    + + + + + + + + + {% for q in question_ans_list %} + + + + + + + {% endfor %} +
    QuestionAnswer
    {{ q.question }} {{ q.correct_answer }}
    + + {% else %} +
    +

    This page will be visible from 15-11-2018

    +
    + {% endif %} +
    + +{% endblock %} \ No newline at end of file diff --git a/website/admin.py b/website/admin.py index c6a7d78..7a6ba2e 100644 --- a/website/admin.py +++ b/website/admin.py @@ -3,7 +3,8 @@ import csv from django.http import HttpResponse from .models import( Profile, AnswerPaper, - Question + Question, + UploadModel ) try: @@ -45,7 +46,12 @@ class AnswerPaperAdmin(admin.ModelAdmin): +class UploadModelAdmin(admin.ModelAdmin): + list_display = ['question'] + + # Register your models here. admin.site.register(Profile, ProfileAdmin) admin.site.register(AnswerPaper, AnswerPaperAdmin) -admin.site.register(Question, QuestionAdmin) \ No newline at end of file +admin.site.register(Question, QuestionAdmin) +admin.site.register(UploadModel, UploadModelAdmin) \ No newline at end of file diff --git a/website/forms.py b/website/forms.py index bee9ba9..9df1fcb 100755 --- a/website/forms.py +++ b/website/forms.py @@ -398,11 +398,3 @@ class QuestionUploadForm(forms.ModelForm): 'question_day': DateInput(), } - -#To upload model for each question -''' -class UploadModelForm(forms.ModelForm): - class Meta: - model = UploadModel - fields = ['model_file'] -''' diff --git a/website/migrations/0005_uploadmodel.py b/website/migrations/0005_uploadmodel.py new file mode 100644 index 0000000..a357f95 --- /dev/null +++ b/website/migrations/0005_uploadmodel.py @@ -0,0 +1,22 @@ +# Generated by Django 2.1 on 2018-10-31 05:40 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('website', '0004_auto_20181012_0951'), + ] + + operations = [ + migrations.CreateModel( + name='UploadModel', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('model_file', models.FileField(upload_to='uploads/')), + ('question', models.ForeignKey(blank=True, on_delete=django.db.models.deletion.CASCADE, to='website.Question')), + ], + ), + ] diff --git a/website/models.py b/website/models.py index e482453..ad6b3e4 100644 --- a/website/models.py +++ b/website/models.py @@ -36,10 +36,6 @@ def get_document_dir(instance, filename): return '%s/attachment/%s/%s.%s' % (instance.user, instance.proposal_type, fname+'_'+str(instance.user), fext) -def attachments(instance, filename): - return os.sep.join((instance.workshoptype_name.replace(" ", '_'), filename)) - - class Proposal(models.Model): user = models.ForeignKey(User, on_delete=models.CASCADE,) name_of_authors = models.CharField(max_length=200, default='None') @@ -121,6 +117,9 @@ class Question(models.Model): # The date for the question. question_day = models.DateField() + def __str__(self): + return u"{0} || {1}".format(self.correct_answer, self.question_day) + class AnswerPaper(models.Model): @@ -131,8 +130,7 @@ class AnswerPaper(models.Model): #To upload model for each question -''' + class UploadModel(models.Model): - question = models.ForeignKey(Question, on_delete=models.CASCADE, blank=True, null=True) - model_file = models.FileField(upload_to=attachments) -''' \ No newline at end of file + question = models.ForeignKey(Question, on_delete=models.CASCADE, blank=True) + model_file = models.FileField(upload_to='uploads/') diff --git a/website/urls.py b/website/urls.py index f0dbe60..3190ec0 100644 --- a/website/urls.py +++ b/website/urls.py @@ -20,7 +20,7 @@ urlpatterns = [ re_path(r'^cfp/$', views.cfp, name='cfp'), #re_path(r'^quiz/$', views.quiz_view, name='quiz_view'), re_path(r'^question_list/$', views.question_list, name='question_list'), - #re_path(r'^uploadmodel/$', views.uploadmodel, name='uploadmodel'), + re_path(r'^view_solutions/$', views.view_solutions, name='view_solutions'), re_path(r'^add_questions/$', views.add_questions, name='add_questions'), re_path(r'^edit_question/(?P\d+)$', views.edit_question, name='edit_question'), re_path(r'^take_quiz/$', views.take_quiz, name='take_quiz'), diff --git a/website/views.py b/website/views.py index a330387..3c4f737 100644 --- a/website/views.py +++ b/website/views.py @@ -1,6 +1,6 @@ # Create your views here. -from django.http import HttpResponse +from django.http import HttpResponse, JsonResponse from django.shortcuts import render from django.shortcuts import render_to_response, render, redirect from django.template import loader @@ -13,7 +13,7 @@ from django.views.decorators.csrf import (csrf_exempt, csrf_protect, from django.contrib.auth.decorators import login_required from django.contrib.auth.models import User from website.models import (Proposal, Comments, Ratings, Question, - AnswerPaper, Profile) + AnswerPaper, Profile, UploadModel) from website.forms import (ProposalForm, UserRegisterForm, UserRegistrationForm, UserLoginForm, WorkshopForm,QuestionUploadForm @@ -24,11 +24,16 @@ from django.contrib.auth import authenticate, login, logout from datetime import datetime, date from django import template from django.core.mail import EmailMultiAlternatives -import os +import os, re from nccps2018.config import * from website.send_mails import send_email from django.contrib.auth.models import Group from django.contrib import messages +from zipfile import ZipFile +try: + from StringIO import StringIO as string_io +except ImportError: + from io import BytesIO as string_io @@ -1177,8 +1182,6 @@ def leaderboard(request): if p.validate_ans==1: if marks['5'][0] <= p.answered_q.question_day <= marks['5'][1]: leaderboard[i] +=5 - elif marks['10'][0] <= p.answered_q.question_day <= marks['10'][1]: - leaderboard[i] +=10 else: leaderboard[i] +=1 @@ -1187,37 +1190,38 @@ def leaderboard(request): return render(request, "leaderboard.html", {'leaderboard': sorted_leaderboard[::-1]}) -''' @login_required -def uploadmodel(request): +def view_solutions(request,id=None): + ''''Show solutions to participants after a specific date''' + question_ans_list = Question.objects.all() + + today = datetime.today().date() + if today < date(2018, 11, 15): + set_visible = 0 + else: + set_visible = 1 + if request.method == 'POST': - data = request.body.decode("utf-8").split('&') - date = data[1].replace("qdate=", "") - date = datetime.strptime(date, "%Y-%m-%d").date() - question_list = Question.objects.all() - try: - question_obj = Question.objects.get(question_day=date) - print(question_obj) - messages.info(request, 'Uploaded Successfully!') - except: - messages.error(request, 'No question uploaded for mentioned date') + filename = UploadModel.objects.all() + attachment_path = os.path.dirname(filename[0].model_file.path) + zipfile_name = string_io() + zipfile = ZipFile(zipfile_name, "w") + attachments = os.listdir(attachment_path) + for file in attachments: + file_path = os.sep.join((attachment_path, file)) + zipfile.write(file_path, os.path.basename(file_path)) + zipfile.close() + zipfile_name.seek(0) + response = HttpResponse(content_type='application/zip') + response['Content-Disposition'] = 'attachment; filename={0}.zip'.format( + "Solutions" + ) + response.write(zipfile_name.read()) + return response - form = UploadModelForm(request.POST) - if form.is_valid(): - uploadForm = form.save(commit=False) - try: - question_obj = Question.objects.get(question_day=date) - uploadForm.question = question_obj - uploadForm.model_file - uploadForm.save() - messages.info(request, 'Uploaded Successfully!') - except: - messages.error(request, 'No question uploaded for mentioned date') - print(question_obj) - else: - messages.error(request, 'Invalid Form') - - return render(request, "uploadmodel.html", {"question_list":question_list})''' + return render(request, 'view_solutions.html', {"question_ans_list": question_ans_list, + "set_visible": set_visible + }) \ No newline at end of file -- cgit From d61a7d730f1fe6ef863ffec51c169cb261c2a86b Mon Sep 17 00:00:00 2001 From: Akshen Date: Wed, 31 Oct 2018 11:26:12 +0530 Subject: Settings.py Updated - from sqlite3 to mysql --- nccps2018/settings.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/nccps2018/settings.py b/nccps2018/settings.py index a17836f..9ce4c32 100644 --- a/nccps2018/settings.py +++ b/nccps2018/settings.py @@ -80,11 +80,11 @@ WSGI_APPLICATION = 'nccps2018.wsgi.application' DATABASES = { 'default': { - 'ENGINE': 'django.db.backends.sqlite3', - 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), - 'TEST': { - 'NAME': 'mytestdatebase', - }, + 'ENGINE': 'django.db.backends.mysql', + 'NAME': DB_NAME_DEFAULT, # Or path to database file if using sqlite3. + 'USER': DB_USER_DEFAULT, + 'PASSWORD': DB_PASS_DEFAULT, + 'HOST': DB_HOST_DEFAULT, } } -- cgit From 4aab0e93768436970cacc2fc12e29c478e11da34 Mon Sep 17 00:00:00 2001 From: Sashi20 Date: Fri, 2 Nov 2018 12:31:52 +0530 Subject: Disabled mail sending for acceptance of proposals --- website/views.py | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/website/views.py b/website/views.py index 35686e7..3bafa42 100644 --- a/website/views.py +++ b/website/views.py @@ -738,17 +738,13 @@ def status_change(request): Pardon the unsolicited advice but it is important that you plan your presentations carefully. 15 minutes is a good amount of time to communicate your central idea. Most really good TED talks finish in 15 minutes. Keep your talk focussed and please do rehearse your talk and slides to make sure it flows well. If you need help with this, the program chairs can try to help you by giving you some early feedback on your slides. Just upload your slides before 26th on the same submission interface and we will go over it once. For anything submitted after 26th we may not have time to comment on but will try to give you feedback. Please also keep handy a PDF version of your talk in case your own laptops have a problem. Please confirm your participation. The schedule will be put up online by end of day. We look forward to hearing your talk. \n\nYou will be notified regarding instructions of your talk via email.\n\nThank You ! \n\nRegards,\nNCCPS 2018,\nFOSSEE - IIT Bombay""" - elif proposal.proposal_type == 'WORKSHOP': - subject = "NCCPS 2018 - Workshop Proposal Accepted" - message = """Dear """+proposal.user.first_name+""", - Thank you for your excellent submissions! We are pleased to accept your workshop. Due to the large number of submissions, we have decided to accept 8 workshops and give all the selected workshops 2 hours each. Please plan for 1 hour and 55 minutes in order to give the participants a 10 minute break between workshops for tea. - -The tentative schedule will be put up on the website shortly. Please confirm your participation and do provide detailed instructions for the participants (and the organizers if they need to do something for you) by replying to this email. These instructions will be made available on the conference website. Installation is often a problem, so please make sure your instructions are simple and easy to follow. If you wish, we could allow some time on the previous day for installation help. Let us know about this. Also, do not waste too much time on installation during your workshop. - -We strongly suggest that you try to plan your workshops carefully and focus on doing things hands-on and not do excessive amounts of theory. Try to give your participants a decent overview so they can pick up additional details on their own. It helps to pick one or two overarching problems you plan to solve and work your way through the solution of those. -\n\nThank You ! \n\nRegards,\nNCCPS 2018,\nFOSSEE - IIT Bombay""" - #send_mail(subject, message, sender_email, to) - # context.update(csrf(request)) + #email = EmailMultiAlternatives( + # subject, '', + # sender_email, to, + # headers={"Content-type": "text/html;charset=iso-8859-1"} + #) + #email.attach_alternative(message, "text/html") + #email.send(fail_silently=True) proposals = Proposal.objects.all() context['proposals'] = proposals context['user'] = user -- cgit From b42cc399fd70cc45ca7a5e075b39885eeec97d30 Mon Sep 17 00:00:00 2001 From: Akshen Date: Fri, 2 Nov 2018 15:24:00 +0530 Subject: Add instructions for dwsim flowsheet test --- nccps2018/settings.py | 10 ++--- static/website/templates/take_quiz.html | 75 ++++++++++++++++++++++++++++++++- website/views.py | 60 ++++++++++++++++---------- 3 files changed, 115 insertions(+), 30 deletions(-) diff --git a/nccps2018/settings.py b/nccps2018/settings.py index 9ce4c32..dae82f5 100644 --- a/nccps2018/settings.py +++ b/nccps2018/settings.py @@ -80,11 +80,11 @@ WSGI_APPLICATION = 'nccps2018.wsgi.application' DATABASES = { 'default': { - 'ENGINE': 'django.db.backends.mysql', - 'NAME': DB_NAME_DEFAULT, # Or path to database file if using sqlite3. - 'USER': DB_USER_DEFAULT, - 'PASSWORD': DB_PASS_DEFAULT, - 'HOST': DB_HOST_DEFAULT, + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), + 'TEST': { + 'NAME': 'mytestdatabase', + }, } } diff --git a/static/website/templates/take_quiz.html b/static/website/templates/take_quiz.html index 15bb05e..3e62018 100644 --- a/static/website/templates/take_quiz.html +++ b/static/website/templates/take_quiz.html @@ -3,7 +3,9 @@ {% load static %} {% block content %}



    -
    + +{% if set_visible %} +
    {% if messages %}
      @@ -43,6 +45,75 @@
      {% endif %} +
    + + {% else %} + +
    +

    DWSIM Flowsheeting Creation Competition

    +
    +
      +
    • Top 8 participants in the leaderboard by end of 02-11-2018, 11:59 PM are eligible for this competition.
    • +
    • These participants will receive the problem statement to be solved in DWSIM directly through e-mail by 03-11-2018, 12:00 noon.
    • +
    • Participants have to propose the assigned flowsheet in the DWSIM Flowsheeting Project webpage using the proposal form + here. + The proposal should be submitted by 04-11-2018, 12:00 noon.
    • +
    • In case of any issues regarding submission of proposal, please write to us at contact-dwsim@fossee.in before the deadline for proposal submission.
    • +
    • Participants can start creating the simulation for the assigned flowsheet as soon as they submit the proposal. Participants need not wait for approval of the proposal to start working on the flowsheet.
    • +
    • No extension in deadline will be granted for submission of proposal. If any of the participant doesn’t submit the proposal by the given deadline, flowsheet will be assigned to the next participant i.e. the 9th participant in the leaderboard and so on.
    • +
    • Solve the flowsheet using DWSIM Version 5.4 Update 2.
    • +
    • Flowsheet and a well written abstract should be submitted here.
    • +
    • Flowsheet creation competition would carry 50 marks in total divided in the following manner.
    • +
        +
      1. Approach to the flowsheet - 10
      2. +
      3. Validation / Accuracy of results in the flowsheet - 20
      4. +
      5. Presentation of the flowsheet - 10
      6. +
      7. Abstract - 10
      8. +
      +
    • Please adhere to the guidelines for the flowsheet development and abstract mentioned here.
    • +
    • The last date for submission of flow sheet is 8-11-2018, 11:59 PM.
    • +
    • Submission of correct flowsheet by 04-11-2018, 11:59 PM will attract bonus of 10 marks.
    • +
    • Submission of correct flowsheet by 05-11-2018, 11:59 PM will attract bonus of 7 marks.
    • +
    • Submission of correct flowsheet by 06-11-2018, 11:59 PM will attract bonus of 5 marks.
    • +
    • If the flowsheet is not as per the given problem statement, participants will be given chance to correct and re-upload the flowsheet. In that case, no bonus marks will be rewarded.
    • +
    • Decision of the NCCPS team regarding marking of the flowsheeting competition will be final.
    • +
      +
    +
    + +
    + +
    +
    +

    Leaderboard

    + + + + +   + + + + + {% for participant in leaderboard %} + + + + + + + + {% endfor %} +
    Participant NameScore
    +   {{ participant.0.user.get_full_name }} + +   {{ participant.1 }} +
    + +
    +
    +

    + + {% endif %} -
    {% endblock %} \ No newline at end of file diff --git a/website/views.py b/website/views.py index 3c4f737..4076945 100644 --- a/website/views.py +++ b/website/views.py @@ -1094,6 +1094,30 @@ def edit_question(request, qid=None): def quiz_intro(request): return render(request, 'quiz_intro.html') + +def calculate_leader(): + profiles = Profile.objects.all() + leaderboard = {p:0 for p in profiles} + marks = { + '5': [date(2018, 10, 29), date(2018, 11, 4)], + '10': [date(2018, 11, 5), date(2018, 11, 12)] + } + answers = AnswerPaper.objects.all() + + for i in leaderboard: + profiles = AnswerPaper.objects.filter(participant=i) + for p in profiles: + if p.validate_ans==1: + if marks['5'][0] <= p.answered_q.question_day <= marks['5'][1]: + leaderboard[i] +=5 + else: + leaderboard[i] +=1 + + + sorted_leaderboard = sorted(leaderboard.items(), key=lambda kv: kv[1]) + return sorted_leaderboard + + @login_required def take_quiz(request): user = request.user @@ -1162,31 +1186,23 @@ def take_quiz(request): except: pass + today = datetime.today().date() + if today > date(2018, 11, 4): + set_visible = 0 + else: + set_visible = 1 + sorted_leaderboard = calculate_leader() + return render(request, 'take_quiz.html', { - 'question_list' : questions + 'question_list' : questions, + 'set_visible': set_visible, + "leaderboard": sorted_leaderboard[::-1] }) -def leaderboard(request): - profiles = Profile.objects.all() - leaderboard = {p:0 for p in profiles} - marks = { - '5': [date(2018, 10, 29), date(2018, 11, 4)], - '10': [date(2018, 11, 5), date(2018, 11, 12)] - } - answers = AnswerPaper.objects.all() - for i in leaderboard: - profiles = AnswerPaper.objects.filter(participant=i) - for p in profiles: - if p.validate_ans==1: - if marks['5'][0] <= p.answered_q.question_day <= marks['5'][1]: - leaderboard[i] +=5 - else: - leaderboard[i] +=1 - - - sorted_leaderboard = sorted(leaderboard.items(), key=lambda kv: kv[1]) +def leaderboard(request): + sorted_leaderboard = calculate_leader() return render(request, "leaderboard.html", {'leaderboard': sorted_leaderboard[::-1]}) @@ -1194,7 +1210,6 @@ def leaderboard(request): def view_solutions(request,id=None): ''''Show solutions to participants after a specific date''' question_ans_list = Question.objects.all() - today = datetime.today().date() if today < date(2018, 11, 15): set_visible = 0 @@ -1219,8 +1234,7 @@ def view_solutions(request,id=None): response.write(zipfile_name.read()) return response - - + return render(request, 'view_solutions.html', {"question_ans_list": question_ans_list, "set_visible": set_visible }) -- cgit From 23973c6fd3d6e0ac033f0a1a50c2c32e4e1d124d Mon Sep 17 00:00:00 2001 From: Akshen Date: Fri, 2 Nov 2018 15:25:48 +0530 Subject: Settings.py Updated - from sqlite3 to mysql --- nccps2018/settings.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/nccps2018/settings.py b/nccps2018/settings.py index dae82f5..9ce4c32 100644 --- a/nccps2018/settings.py +++ b/nccps2018/settings.py @@ -80,11 +80,11 @@ WSGI_APPLICATION = 'nccps2018.wsgi.application' DATABASES = { 'default': { - 'ENGINE': 'django.db.backends.sqlite3', - 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), - 'TEST': { - 'NAME': 'mytestdatabase', - }, + 'ENGINE': 'django.db.backends.mysql', + 'NAME': DB_NAME_DEFAULT, # Or path to database file if using sqlite3. + 'USER': DB_USER_DEFAULT, + 'PASSWORD': DB_PASS_DEFAULT, + 'HOST': DB_HOST_DEFAULT, } } -- cgit From 8aa2b23a6205b6085c4b087cbb7d496e39f1669f Mon Sep 17 00:00:00 2001 From: Sashi20 Date: Fri, 2 Nov 2018 18:16:36 +0530 Subject: Added page for job fair --- static/website/templates/dwsim-quiz.html | 42 ++++++++++++++++++++-- static/website/templates/job-fair.html | 60 ++++++++++++++++++++++++++++++++ static/website/templates/navbar.html | 4 ++- website/urls.py | 1 + website/views.py | 7 +++- 5 files changed, 109 insertions(+), 5 deletions(-) create mode 100644 static/website/templates/job-fair.html diff --git a/static/website/templates/dwsim-quiz.html b/static/website/templates/dwsim-quiz.html index 1265c93..a0c459a 100644 --- a/static/website/templates/dwsim-quiz.html +++ b/static/website/templates/dwsim-quiz.html @@ -4,12 +4,48 @@ {% include 'header.html' %} -
    + {% include 'navbar.html' %} {% block content %}
    -
    +
    +

    DWSIM Flowsheeting Creation Competition

    +
    +
      +
    • Top 8 participants in the leaderboard by end of 02-11-2018, 11:59 PM are eligible for this competition.
    • +
    • These participants will receive the problem statement to be solved in DWSIM directly through e-mail by 03-11-2018, 12:00 noon.
    • +
    • Participants have to propose the assigned flowsheet in the DWSIM Flowsheeting Project webpage using the proposal form + here. + The proposal should be submitted by 04-11-2018, 12:00 noon.
    • +
    • In case of any issues regarding submission of proposal, please write to us at contact-dwsim@fossee.in before the deadline for proposal submission.
    • +
    • Participants can start creating the simulation for the assigned flowsheet as soon as they submit the proposal. Participants need not wait for approval of the proposal to start working on the flowsheet.
    • +
    • No extension in deadline will be granted for submission of proposal. If any of the participant doesn’t submit the proposal by the given deadline, flowsheet will be assigned to the next participant i.e. the 9th participant in the leaderboard and so on.
    • +
    • Solve the flowsheet using DWSIM Version 5.4 Update 2.
    • +
    • Flowsheet and a well written abstract should be submitted here.
    • +
    • Flowsheet creation competition would carry 50 marks in total divided in the following manner.
    • +
        +
      1. Approach to the flowsheet - 10
      2. +
      3. Validation / Accuracy of results in the flowsheet - 20
      4. +
      5. Presentation of the flowsheet - 10
      6. +
      7. Abstract - 10
      8. +
      +
    • Please adhere to the guidelines for the flowsheet development and abstract mentioned here.
    • +
    • The last date for submission of flow sheet is 8-11-2018, 11:59 PM.
    • +
    • Submission of correct flowsheet by 04-11-2018, 11:59 PM will attract bonus of 10 marks.
    • +
    • Submission of correct flowsheet by 05-11-2018, 11:59 PM will attract bonus of 7 marks.
    • +
    • Submission of correct flowsheet by 06-11-2018, 11:59 PM will attract bonus of 5 marks.
    • +
    • If the flowsheet is not as per the given problem statement, participants will be given chance to correct and re-upload the flowsheet. In that case, no bonus marks will be rewarded.
    • +
    • Decision of the NCCPS team regarding marking of the flowsheeting competition will be final.
    • +
      +
    +
    + +
    + + +

    +
    {% endblock %} diff --git a/static/website/templates/job-fair.html b/static/website/templates/job-fair.html new file mode 100644 index 0000000..fedf936 --- /dev/null +++ b/static/website/templates/job-fair.html @@ -0,0 +1,60 @@ +{% extends "base.html" %} +{% load static %} + + +{% include 'header.html' %} + + + + {% include 'navbar.html' %} + {% block content %} +
    +

    Job Fair

    +
    +
    +
    +
    +

    + Employers +

    +
    +
    +

    For Employers

    + +

    Introduction

    +

    The conference committee is excited to invite your esteemed organisation to the job fair to be conducted in connection with the National Conference on Chemical Process Simulation-2018 to be held on 26 November 2018 at IIT Bombay.

    + +

    The conference will bring together people from both industry and academia. An important aim of this job fair is to offer networking opportunities with prospective recruits. Your organisation can meet bright chemical engineering students who are experts in process modelling and simulation. We have sent invites to more than 300 chemical engineering departments across the country.

    + What we offer? +
      +
    • Meeting bright chemical engineering students who are experts in process modelling and simulation
    • +
    • Accommodation for the company/ organisation representatives (for 2 people) for one night
    • +
    • One room at the venue where your organization can meet and interact with prospective recruits
    • +
    + +
    +
    +
    +
    +

    + Students +

    +
    +
    + +

    For Students

    + +

    Introduction

    +

    The conference committee is pleased to invite to the job fair which is to be conducted in connection with the the National Conference on Chemical Process Simulation-2018 to be held at IIT Bombay on 26 November 2018.

    + +

    We have invited many companies to participate in the job fair. Some of the companies who have confirmed of their presence are Equinox, Ingenero,...... +

    + +
    +
    +
    +
    +
    + + + {% endblock %} diff --git a/static/website/templates/navbar.html b/static/website/templates/navbar.html index d820d5d..085b56b 100644 --- a/static/website/templates/navbar.html +++ b/static/website/templates/navbar.html @@ -36,10 +36,12 @@
  • C0C
  • Schedule
  • -
  • Venue
  • + +
  • Contact Us
  • DWSIM QUIZ
  • +
  • Job Fair
  • cfp
  • {% if user.is_authenticated %}
  • Contact Us
  • DWSIM QUIZ
  • -
  • Job Fair
  • +
  • cfp
  • {% if user.is_authenticated %}