diff options
author | hardythe1 | 2014-07-24 18:10:44 +0530 |
---|---|---|
committer | hardythe1 | 2014-07-24 18:10:44 +0530 |
commit | be4c52df5c1945f3e1c3465568424cad6eef3773 (patch) | |
tree | 86e3f9e86be8fe47909cfa12b8dcdb58020a613f | |
parent | 4cab0cab4dcb8e5a3fe929444f43049ec3c64db2 (diff) | |
download | Python-TBC-Interface-be4c52df5c1945f3e1c3465568424cad6eef3773.tar.gz Python-TBC-Interface-be4c52df5c1945f3e1c3465568424cad6eef3773.tar.bz2 Python-TBC-Interface-be4c52df5c1945f3e1c3465568424cad6eef3773.zip |
changes to automate proposal
-rw-r--r-- | tbc/models.py | 7 | ||||
-rwxr-xr-x | tbc/templates/base.html | 1 | ||||
-rw-r--r-- | tbc/templates/tbc/review-proposal.html | 2 | ||||
-rw-r--r-- | tbc/templates/tbc/submit-sample.html | 38 | ||||
-rw-r--r-- | tbc/urls.py | 2 | ||||
-rwxr-xr-x | tbc/views.py | 8 |
6 files changed, 54 insertions, 4 deletions
diff --git a/tbc/models.py b/tbc/models.py index fa36af3..00cb56b 100644 --- a/tbc/models.py +++ b/tbc/models.py @@ -140,8 +140,9 @@ class Proposal(models.Model): def __unicode__(self): user = self.user.user.username or 'User' return '%s'%(user) - - + + class SampleNotebook(models.Model): proposal = models.ForeignKey(Proposal) - book_preference = models.CharField(max_length=30, choices=BOOK_PREFERENCE) + name = models.CharField(max_length=40) + sample_notebook = models.FileField(upload_to=get_sample_dir) diff --git a/tbc/templates/base.html b/tbc/templates/base.html index 9663c70..d0c8708 100755 --- a/tbc/templates/base.html +++ b/tbc/templates/base.html @@ -95,6 +95,7 @@ <a href="#" class="dropdown-toggle" data-toggle="dropdown">{{ user.first_name }}<b class="caret"></b></a> <ul class="dropdown-menu"> <li><a href="{% url 'tbc:SubmitProposal' %}">Submit Proposal</a></li> + <li><a href="{% url 'tbc:SubmitSample' %}">Submit Sample Notebook</a></li> <li><a href="{% url 'tbc:SubmitBook' %}">Submit Book</a></li> <li><a href="{% url 'tbc:UpdateBook' %}">Update Submission</a></li> <li><a href="{% url 'tbc:UpdatePassword' %}">Update Password</a></li> diff --git a/tbc/templates/tbc/review-proposal.html b/tbc/templates/tbc/review-proposal.html index d13a4ac..3c8366b 100644 --- a/tbc/templates/tbc/review-proposal.html +++ b/tbc/templates/tbc/review-proposal.html @@ -67,7 +67,7 @@ </h5> <h5><b>Book Accepted/Alloted:</b> {{ proposal.accepted.title }}</h5> {% ifequal proposal.status "samples" %} - <h5><a href="#">sample notebook</a><br></h5> + <h5><a href="{% static 'uploads/' %}{{ chapter.notebook }}">sample notebook</a><br></h5> <a class="btn btn-primary" href="{% url 'tbc:DisapproveProposal' proposal.id %}">Disapprove Samples</a> <a class="btn btn-primary" href="{% url 'tbc:RejectProposal' proposal.id %}">Alot Book</a> {% endifequal %} diff --git a/tbc/templates/tbc/submit-sample.html b/tbc/templates/tbc/submit-sample.html new file mode 100644 index 0000000..fde3079 --- /dev/null +++ b/tbc/templates/tbc/submit-sample.html @@ -0,0 +1,38 @@ +{% extends 'base.html' %} + +{% block script %} +<script> +function validate_content() +{ + no_notebooks = {{ no_notebooks }}.length; + extension = document.getElementById("sample_notebook").value; + extension = extension.split("."); + if (extension == "" || name == "") + { + alert("Chapter name or file field is empty !"); + return false; + } + if(extension.slice(Math.max(extension.length - 1, 1)) == "ipynb") + return true; + else + alert("Oops ! You can upload only Ipython Notebooks (.ipynb extension)"); + return false; + return true; +} +</script> +{% endblock %} + +{% block content %} +<div id="content-wrap" style="max-width:600px;"> + <p>You are uploading sample notebook for the book {{ proposal.accepted.title }} by {{ proposal.accepted.author }}</p> + <p>Only .ipynb files are acceptable</p> + <form action="/submit-sample/{{ proposal.id }}" method=POST enctype="multipart/form-data" onSubmit="return validate_content();"> + {% csrf_token %} + <input type=text id=ch_name name=ch_name placeholder="Name of the chapter you coded the solved example from"> + <input type=file id=sample_notebook name=sample_notebook> + <br> + <hr> + <center><input class="btn btn-primary" type=submit value=submit></center> + </form> +</div> +{% endblock %} diff --git a/tbc/urls.py b/tbc/urls.py index ad92e54..8bbd025 100644 --- a/tbc/urls.py +++ b/tbc/urls.py @@ -15,6 +15,8 @@ urlpatterns = patterns('', url(r'^submit-proposal/$', 'tbc.views.SubmitProposal', name='SubmitProposal'), url(r'^submit-book/$', 'tbc.views.SubmitBook', name='SubmitBook'), + url(r'^submit-sample/$', 'tbc.views.SubmitSample', name='SubmitSample'), + url(r'^submit-sample/(?P<proposal_id>\d+)$', 'tbc.views.SubmitSample', name='SubmitSample'), url(r'^update-book/$', 'tbc.views.UpdateBook', name='UpdateBook'), url(r'^upload-content/(?P<book_id>\d+)$', 'tbc.views.ContentUpload', name='ContentUpload'), url(r'^update-content/(?P<book_id>\d+)$', 'tbc.views.UpdateContent', name='UpdateContent'), diff --git a/tbc/views.py b/tbc/views.py index ae411b8..3f891b1 100755 --- a/tbc/views.py +++ b/tbc/views.py @@ -383,6 +383,14 @@ def RejectProposal(request, proposal_id=None): return HttpResponse("Rejected") else: return HttpResponse("no post") + + +def SubmitSample(request, proposal_id=None): + if request.method == "POST": + return HttpResponse("POST") + else: + books = Book.objects.filter(approved=True) + return HttpResponse(books) def UpdateBook(request): |