Added models and views.
authorShantanu <shantanu@fossee.in>
Wed, 02 Sep 2009 19:34:48 +0530
changeset 2 4d2bbb2f3c4e
parent 1 6d3b60546075
child 3 eb11f0116216
Added models and views.
settings.py
template/images/img01.jpg
template/images/img02.jpg
template/images/img03.jpg
template/images/img04.jpg
template/images/img05.gif
template/images/spacer.gif
template/index.html
template/license.txt
template/style.css
upload/forms.py
upload/models.py
upload/views.py
urls.py
user_record
--- a/settings.py	Wed Sep 02 17:19:11 2009 +0530
+++ b/settings.py	Wed Sep 02 19:34:48 2009 +0530
@@ -66,6 +66,7 @@
 ROOT_URLCONF = 'spoken_tut.urls'
 
 TEMPLATE_DIRS = (
+	"template",
     # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
     # Always use forward slashes, even on Windows.
     # Don't forget to use absolute paths, not relative paths.
@@ -76,4 +77,5 @@
     'django.contrib.contenttypes',
     'django.contrib.sessions',
     'django.contrib.sites',
+    'spoken_tut.upload',
 )
Binary file template/images/img01.jpg has changed
Binary file template/images/img02.jpg has changed
Binary file template/images/img03.jpg has changed
Binary file template/images/img04.jpg has changed
Binary file template/images/img05.gif has changed
Binary file template/images/spacer.gif has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/template/index.html	Wed Sep 02 19:34:48 2009 +0530
@@ -0,0 +1,70 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="content-type" content="text/html; charset=utf-8" />
+<title>OCR</title>
+<meta name="keywords" content="" />
+<meta name="description" content="" />
+<link href="style.css" rel="stylesheet" type="text/css" media="screen" />
+<script type="text/javascript" language="JavaScript">
+function check(form) {
+  var ext = form.sourcefile;
+  ext = ext.substring(ext.length-3,ext.length);
+  ext = ext.toLowerCase();
+  if(ext != 'txt') {
+    alert('You selected a .'+ext+
+          ' file; please select a .jpg file instead!');
+    return false; }
+  else
+    return true; }
+</script>
+</head>
+<body>
+<div id="header">
+	<div id="logo">
+		<h1><a href="#">OCR</a></h1>
+		<h2><a href="http://www.sarai.net/">By sarai</a></h2>
+	</div>
+	<div id="menu">
+		<ul>
+			<li><a href="#">Home</a></li>
+			<li><a href="#">FAQ</a></li>
+			<li><a href="#">Contribute</a></li>
+			<li><a href="#">About</a></li>
+			<li class="last"><a href="#">Contact</a></li>
+		</ul>
+	</div>
+</div>
+<!-- start page -->
+<div id="page">	
+	<!-- start content -->
+	<div id="content">
+		<p class="center">
+		{% block content %}
+		{% if value %}
+			Mind Your Privacy!<br/>
+			Don't post your confidential data.<br/>			
+			<form class = "center" method="post" action="." enctype="multipart/form-data">			
+				{{form.as_p}}
+				<input type="submit" value="Upload" id="submit"/>
+			</form>
+		{% else %}			
+			You Uploaded:<br/>
+			<form class = "center" method="post" action="/ocr/download/">			
+				{{form.as_p}}				
+				<input type="submit" value="Download Content" id="submit"/>
+			</form>			
+		{% endif %}
+		{% endblock %}
+		</p>
+	</div>
+	<!-- end content -->	
+	<div style="clear: both;">&nbsp;</div>
+</div>
+<!-- end page -->
+<div id="footer">
+	<p class="legal">&copy;2008 All Rights Reserved.</p>
+	<p class="credit">Design by <a href="http://www.freecsstemplates.org/">Free CSS Templates</a></p>
+</div>
+</body>
+</html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/template/license.txt	Wed Sep 02 19:34:48 2009 +0530
@@ -0,0 +1,243 @@
+Creative Commons </>
+
+Creative Commons Legal Code
+
+*Attribution 2.5*
+
+CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
+LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN
+ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION
+ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE
+INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
+ITS USE.
+
+/License/
+
+THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
+COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
+COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
+AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+
+BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
+TO BE BOUND BY THE TERMS OF THIS LICENSE. THE LICENSOR GRANTS YOU THE
+RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS
+AND CONDITIONS.
+
+*1. Definitions*
+
+   1. *"Collective Work"* means a work, such as a periodical issue,
+      anthology or encyclopedia, in which the Work in its entirety in
+      unmodified form, along with a number of other contributions,
+      constituting separate and independent works in themselves, are
+      assembled into a collective whole. A work that constitutes a
+      Collective Work will not be considered a Derivative Work (as
+      defined below) for the purposes of this License.
+   2. *"Derivative Work"* means a work based upon the Work or upon the
+      Work and other pre-existing works, such as a translation, musical
+      arrangement, dramatization, fictionalization, motion picture
+      version, sound recording, art reproduction, abridgment,
+      condensation, or any other form in which the Work may be recast,
+      transformed, or adapted, except that a work that constitutes a
+      Collective Work will not be considered a Derivative Work for the
+      purpose of this License. For the avoidance of doubt, where the
+      Work is a musical composition or sound recording, the
+      synchronization of the Work in timed-relation with a moving image
+      ("synching") will be considered a Derivative Work for the purpose
+      of this License.
+   3. *"Licensor"* means the individual or entity that offers the Work
+      under the terms of this License.
+   4. *"Original Author"* means the individual or entity who created the
+      Work.
+   5. *"Work"* means the copyrightable work of authorship offered under
+      the terms of this License.
+   6. *"You"* means an individual or entity exercising rights under this
+      License who has not previously violated the terms of this License
+      with respect to the Work, or who has received express permission
+      from the Licensor to exercise rights under this License despite a
+      previous violation.
+
+*2. Fair Use Rights.* Nothing in this license is intended to reduce,
+limit, or restrict any rights arising from fair use, first sale or other
+limitations on the exclusive rights of the copyright owner under
+copyright law or other applicable laws.
+
+*3. License Grant.* Subject to the terms and conditions of this License,
+Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
+perpetual (for the duration of the applicable copyright) license to
+exercise the rights in the Work as stated below:
+
+   1. to reproduce the Work, to incorporate the Work into one or more
+      Collective Works, and to reproduce the Work as incorporated in the
+      Collective Works;
+   2. to create and reproduce Derivative Works;
+   3. to distribute copies or phonorecords of, display publicly, perform
+      publicly, and perform publicly by means of a digital audio
+      transmission the Work including as incorporated in Collective Works;
+   4. to distribute copies or phonorecords of, display publicly, perform
+      publicly, and perform publicly by means of a digital audio
+      transmission Derivative Works.
+   5.
+
+      For the avoidance of doubt, where the work is a musical composition:
+
+         1. *Performance Royalties Under Blanket Licenses*. Licensor
+            waives the exclusive right to collect, whether individually
+            or via a performance rights society (e.g. ASCAP, BMI,
+            SESAC), royalties for the public performance or public
+            digital performance (e.g. webcast) of the Work.
+         2. *Mechanical Rights and Statutory Royalties*. Licensor waives
+            the exclusive right to collect, whether individually or via
+            a music rights agency or designated agent (e.g. Harry Fox
+            Agency), royalties for any phonorecord You create from the
+            Work ("cover version") and distribute, subject to the
+            compulsory license created by 17 USC Section 115 of the US
+            Copyright Act (or the equivalent in other jurisdictions).
+   6. *Webcasting Rights and Statutory Royalties*. For the avoidance of
+      doubt, where the Work is a sound recording, Licensor waives the
+      exclusive right to collect, whether individually or via a
+      performance-rights society (e.g. SoundExchange), royalties for the
+      public digital performance (e.g. webcast) of the Work, subject to
+      the compulsory license created by 17 USC Section 114 of the US
+      Copyright Act (or the equivalent in other jurisdictions).
+
+The above rights may be exercised in all media and formats whether now
+known or hereafter devised. The above rights include the right to make
+such modifications as are technically necessary to exercise the rights
+in other media and formats. All rights not expressly granted by Licensor
+are hereby reserved.
+
+*4. Restrictions.*The license granted in Section 3 above is expressly
+made subject to and limited by the following restrictions:
+
+   1. You may distribute, publicly display, publicly perform, or
+      publicly digitally perform the Work only under the terms of this
+      License, and You must include a copy of, or the Uniform Resource
+      Identifier for, this License with every copy or phonorecord of the
+      Work You distribute, publicly display, publicly perform, or
+      publicly digitally perform. You may not offer or impose any terms
+      on the Work that alter or restrict the terms of this License or
+      the recipients' exercise of the rights granted hereunder. You may
+      not sublicense the Work. You must keep intact all notices that
+      refer to this License and to the disclaimer of warranties. You may
+      not distribute, publicly display, publicly perform, or publicly
+      digitally perform the Work with any technological measures that
+      control access or use of the Work in a manner inconsistent with
+      the terms of this License Agreement. The above applies to the Work
+      as incorporated in a Collective Work, but this does not require
+      the Collective Work apart from the Work itself to be made subject
+      to the terms of this License. If You create a Collective Work,
+      upon notice from any Licensor You must, to the extent practicable,
+      remove from the Collective Work any credit as required by clause
+      4(b), as requested. If You create a Derivative Work, upon notice
+      from any Licensor You must, to the extent practicable, remove from
+      the Derivative Work any credit as required by clause 4(b), as
+      requested.
+   2. If you distribute, publicly display, publicly perform, or publicly
+      digitally perform the Work or any Derivative Works or Collective
+      Works, You must keep intact all copyright notices for the Work and
+      provide, reasonable to the medium or means You are utilizing: (i)
+      the name of the Original Author (or pseudonym, if applicable) if
+      supplied, and/or (ii) if the Original Author and/or Licensor
+      designate another party or parties (e.g. a sponsor institute,
+      publishing entity, journal) for attribution in Licensor's
+      copyright notice, terms of service or by other reasonable means,
+      the name of such party or parties; the title of the Work if
+      supplied; to the extent reasonably practicable, the Uniform
+      Resource Identifier, if any, that Licensor specifies to be
+      associated with the Work, unless such URI does not refer to the
+      copyright notice or licensing information for the Work; and in the
+      case of a Derivative Work, a credit identifying the use of the
+      Work in the Derivative Work (e.g., "French translation of the Work
+      by Original Author," or "Screenplay based on original Work by
+      Original Author"). Such credit may be implemented in any
+      reasonable manner; provided, however, that in the case of a
+      Derivative Work or Collective Work, at a minimum such credit will
+      appear where any other comparable authorship credit appears and in
+      a manner at least as prominent as such other comparable authorship
+      credit.
+
+*5. Representations, Warranties and Disclaimer*
+
+UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
+OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
+KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
+INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
+FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
+LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
+WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE
+EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+
+*6. Limitation on Liability.* EXCEPT TO THE EXTENT REQUIRED BY
+APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL
+THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY
+DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF
+LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+*7. Termination*
+
+   1. This License and the rights granted hereunder will terminate
+      automatically upon any breach by You of the terms of this License.
+      Individuals or entities who have received Derivative Works or
+      Collective Works from You under this License, however, will not
+      have their licenses terminated provided such individuals or
+      entities remain in full compliance with those licenses. Sections
+      1, 2, 5, 6, 7, and 8 will survive any termination of this License.
+   2. Subject to the above terms and conditions, the license granted
+      here is perpetual (for the duration of the applicable copyright in
+      the Work). Notwithstanding the above, Licensor reserves the right
+      to release the Work under different license terms or to stop
+      distributing the Work at any time; provided, however that any such
+      election will not serve to withdraw this License (or any other
+      license that has been, or is required to be, granted under the
+      terms of this License), and this License will continue in full
+      force and effect unless terminated as stated above.
+
+*8. Miscellaneous*
+
+   1. Each time You distribute or publicly digitally perform the Work or
+      a Collective Work, the Licensor offers to the recipient a license
+      to the Work on the same terms and conditions as the license
+      granted to You under this License.
+   2. Each time You distribute or publicly digitally perform a
+      Derivative Work, Licensor offers to the recipient a license to the
+      original Work on the same terms and conditions as the license
+      granted to You under this License.
+   3. If any provision of this License is invalid or unenforceable under
+      applicable law, it shall not affect the validity or enforceability
+      of the remainder of the terms of this License, and without further
+      action by the parties to this agreement, such provision shall be
+      reformed to the minimum extent necessary to make such provision
+      valid and enforceable.
+   4. No term or provision of this License shall be deemed waived and no
+      breach consented to unless such waiver or consent shall be in
+      writing and signed by the party to be charged with such waiver or
+      consent.
+   5. This License constitutes the entire agreement between the parties
+      with respect to the Work licensed here. There are no
+      understandings, agreements or representations with respect to the
+      Work not specified here. Licensor shall not be bound by any
+      additional provisions that may appear in any communication from
+      You. This License may not be modified without the mutual written
+      agreement of the Licensor and You.
+
+Creative Commons is not a party to this License, and makes no warranty
+whatsoever in connection with the Work. Creative Commons will not be
+liable to You or any party on any legal theory for any damages
+whatsoever, including without limitation any general, special,
+incidental or consequential damages arising in connection to this
+license. Notwithstanding the foregoing two (2) sentences, if Creative
+Commons has expressly identified itself as the Licensor hereunder, it
+shall have all rights and obligations of Licensor.
+
+Except for the limited purpose of indicating to the public that the Work
+is licensed under the CCPL, neither party will use the trademark
+"Creative Commons" or any related trademark or logo of Creative Commons
+without the prior written consent of Creative Commons. Any permitted use
+will be in compliance with Creative Commons' then-current trademark
+usage guidelines, as may be published on its website or otherwise made
+available upon request from time to time.
+
+Creative Commons may be contacted at http://creativecommons.org/
+<http://creativecommons.org>.
+
+« Back to Commons Deed <./>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/template/style.css	Wed Sep 02 19:34:48 2009 +0530
@@ -0,0 +1,208 @@
+/*
+Design by Free CSS Templates
+http://www.freecsstemplates.org
+Released for free under a Creative Commons Attribution 2.5 License
+*/
+
+* {
+	margin: 0;
+	padding: 0;
+}
+
+body {
+	margin: 20px 0;
+	background: #FFFFFF url(images/img01.jpg) repeat-x left top;
+	text-align: justify;
+	font-family: 'Trebuchet MS', "Times New Roman", Times, serif;
+	font-size: 13px;
+	color: #666666;
+}
+
+form {
+}
+
+form br {
+}
+
+input, textarea {
+	padding: 5px;
+	font: bold 1em Georgia, "Times New Roman", Times, serif;
+	color: #333333;
+	background: #F9F3DF;
+	border-top: 1px solid #CB960F;
+	border-right: 1px solid #CCCC99;
+	border-bottom: 1px solid #CCCC99;
+	border-left: 1px solid #CB960F;
+}
+
+h1, h2, h3 {
+	padding-bottom: 10px;
+	margin-bottom: 15px;
+	text-transform: uppercase;
+	font-family: Arial, Helvetica, sans-serif;
+}
+
+h1 {
+	font-size: 1.4em;
+}
+
+h2 {
+	font-size: 1.4em;
+}
+
+h3 {
+	font-size: 1em;
+}
+
+p, ul, ol {
+	margin-top: 1.5em;
+}
+
+ul, ol {
+	margin-left: 3em;
+}
+
+blockquote {
+	margin-left: 3em;
+	margin-right: 3em;
+	font-style: italic;
+}
+
+a {
+	text-decoration: none;
+	color: #70A300;
+}
+
+a:hover {
+	border: none;
+	color: #70A300;
+}
+
+/* Header */
+
+#header {
+	width: 960px;
+	height: 100px;
+	margin: 0 auto;
+}
+
+#logo {
+	float: left;
+	height: 40px;
+}
+
+#logo h1, #logo h2 {
+	float: left;
+	margin-top: 20px;
+	text-transform: lowercase;
+	font-weight: normal;
+}
+
+#logo h1 {
+	padding: 5px 0 0 0px;
+	font-size: 2.6em;
+}
+
+#logo h2 {
+	padding: 17px 0 0 6px;
+	font-size: 1.2em;
+}
+
+#logo a {
+	border: none;
+	text-decoration: none;
+	color: #FFFFFF;
+}
+
+#menu {
+	float: right;
+	height: 40px;
+}
+
+#menu ul {
+	margin: 0;
+	padding: 30px 0px 0 0;
+	list-style: none;
+}
+
+#menu li {
+	float: left;
+}
+
+#menu a {
+	display: block;
+	float: left;
+	border-left: 2px solid #99C233;
+	margin-right: 3px;
+	padding: 5px 18px 5px 18px;
+	text-transform: lowercase;
+	text-decoration: none;
+	font-size: 1.2em;
+	color: #FFFFFF;
+}
+
+#menu a:hover {
+	text-decoration: underline;
+	color: #FFFFFF;
+}
+
+#menu .last a {
+	margin: 0;
+	padding-right: 0;
+}
+
+/* Page */
+
+#page {
+	width: 960px;
+	margin: 0 auto;
+	padding: 60px 40px 0px 40px;
+}
+
+/* Content */
+
+#content {
+	float: center;
+	width: 960px;
+	padding: 0 30px;
+}
+
+.center {text-align: center}
+
+#content #submit {
+	padding: 3px 10px;
+	margin: 5px 0 0 0;
+	background: url(images/img04.jpg) repeat-x left top; 
+	border: none;
+	text-transform: uppercase;
+	font-family: Arial, Helvetica, sans-serif;
+	font-size: 10px;
+	font-weight: normal;
+	color: #FFFFFF;
+}
+
+/* Footer */
+
+#footer {
+	clear: both;
+	width: 960px;
+	height: 40px;
+	margin: 0 auto;
+	background: url(images/img02.jpg) repeat-x left top;
+}
+
+#footer p {
+	margin: 0;
+	padding: 15px 0px;
+	font-size: 11px;
+}
+
+#footer .legal {
+	float: left;
+	height: 40px;
+}
+
+#footer .credit {
+	float: right;
+	height: 40px;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/upload/forms.py	Wed Sep 02 19:34:48 2009 +0530
@@ -0,0 +1,8 @@
+from django import forms
+
+from upload.model import Participant
+
+class ParticipantForm(forms.ModelForm):
+	class Meta:
+		model = Participant
+
--- a/upload/models.py	Wed Sep 02 17:19:11 2009 +0530
+++ b/upload/models.py	Wed Sep 02 19:34:48 2009 +0530
@@ -1,3 +1,44 @@
 from django.db import models
 
 # Create your models here.
+
+class Participant(models.Model):
+	LANGUAGE_CHOICES = (
+		(1,'Assamese/Axomiya'),
+		(2,'Bengali'),
+		(3,'Bodo'),
+		(4,'Dogri'),
+		(5,'Gujarati'),
+		(6,'Hindi'),
+		(7,'Kannada'),
+		(8,'Kashmiri'),
+		(9,'Konkani'),
+		(10,'Maithili'),
+		(11,'Malayalam'),
+		(12,'Manipuri'),
+		(13,'Marathi'),
+		(14,'Nepali'),
+		(15,'Oriya'),
+		(16,'Punjabi'),
+		(17,'Sanskrit'),
+		(18,'Santali'),
+		(19,'Sindhi'),
+		(20,'Tamil'),
+		(21,'Telugu'),
+		(22,'Urdu'),
+   	)
+   	CATEGORY_CHOICES = (
+		(1,'Student at IIT'),
+		(2,'Staff and family'),
+		(3,'Faculty and family'),
+		(4,'Others'),
+   	)
+	name = models.CharField(max_length = 50)
+	email = models.EmailField()
+	filename = models.FileField(upload_to = 'videos')
+	language = models.CharField(max_length = 20, choices=LANGUAGE_CHOICES)
+	phonenumber = models.CharField(max_length=15)
+	age = models.IntegerField(max_length=3)
+	category = models.CharField(max_length = 80, choices=CATEGORY_CHOICES)
+
+
--- a/upload/views.py	Wed Sep 02 17:19:11 2009 +0530
+++ b/upload/views.py	Wed Sep 02 19:34:48 2009 +0530
@@ -3,6 +3,7 @@
 from django.template import Context, Template
 from django.shortcuts import render_to_response
 from form import FileForm, Uploaded_fileForm
+from forms import ParticipantForm
 import tarfile
 
 #function to read the upoaded file and store it
@@ -26,7 +27,7 @@
 	    #display a page with textbox and all the content of file	   
             return render_to_response(template_name,
 			context_instance = c)
-    c = Context({'form': FileForm(),
+    c = Context({'form': ParticipantForm(),
 		'value': True,
 		})
     return render_to_response(template_name,
--- a/urls.py	Wed Sep 02 17:19:11 2009 +0530
+++ b/urls.py	Wed Sep 02 19:34:48 2009 +0530
@@ -6,7 +6,7 @@
 
 urlpatterns = patterns('',
     # Example:
-    # (r'^spoken_tut/', include('spoken_tut.foo.urls')),
+    # (r'^ocr/', include('ocr.foo.urls')),
 
     # Uncomment the admin/doc line below and add 'django.contrib.admindocs' 
     # to INSTALLED_APPS to enable admin documentation:
@@ -14,4 +14,7 @@
 
     # Uncomment the next line to enable the admin:
     # (r'^admin/(.*)', admin.site.root),
+	(r'^$','upload.views.upload_file'),
+	(r'^download/$','spoken_tut.upload.views.file_archive'),
+	(r'^(?P<path>.*)$', 'django.views.static.serve', {'document_root': 'template/'}),
 )
Binary file user_record has changed