summaryrefslogtreecommitdiff
path: root/website
diff options
context:
space:
mode:
authorPrashant S2019-02-18 16:52:55 +0530
committerGitHub2019-02-18 16:52:55 +0530
commit7b2421c19ae723fbfff2753522b2bdd1a90316e2 (patch)
tree84689cd90b66b272ef350705d58fe2ea7371a819 /website
parent409675848cea1cd35910283367097e8e298349b4 (diff)
parentb63385c838b958a5d58bccd013c4e635669ceb8a (diff)
downloadpyfoss-7b2421c19ae723fbfff2753522b2bdd1a90316e2.tar.gz
pyfoss-7b2421c19ae723fbfff2753522b2bdd1a90316e2.tar.bz2
pyfoss-7b2421c19ae723fbfff2753522b2bdd1a90316e2.zip
Merge branch 'master' into develop
Diffstat (limited to 'website')
-rw-r--r--website/models.py31
-rw-r--r--website/views.py53
2 files changed, 58 insertions, 26 deletions
diff --git a/website/models.py b/website/models.py
index 7b7b228..f91dbeb 100644
--- a/website/models.py
+++ b/website/models.py
@@ -72,6 +72,20 @@ Models from fossee_new Database created using inspectdb
Use it with the "fossee_in" database eg:using("fossee_in")
These models are used only for django orm reference.
"""
+CATEGORY = (("fluid mechanics", "Fluid Mechanics"),
+ ("control systems", "Control Theory & Control Systems"),
+ ("chemical engineering", "Chemical Engineering"),
+ ("thermodynamics", "Thermodynamics"),
+ ("mechanical engineering", "Mechanical Engineering"),
+ ("signal processing", "Signal Processing"),
+ ("digital communications", "Digital Communications"),
+ ("electrical technology", "Electrical Technology"),
+ ("maths & science", "Mathematics & Pure Science"),
+ ("analog electronics", "Analog Electronics"),
+ ("digital electronics", "Digital Electronics"),
+ ("computer programming", "Computer Programming"),
+ ("others", "Others"))
+
class FOSSEEStats(models.Model):
w_id = models.IntegerField(unique=True, primary_key=True)
foss_name = models.CharField(max_length=500)
@@ -93,3 +107,20 @@ class FOSSEEStats(models.Model):
class Meta:
db_table = 'workshop'
+class TBCPYTHONBook(models.Model):
+ title = models.CharField(max_length=500)
+ author = models.CharField(max_length=300)
+ category = models.CharField(max_length=32, choices=CATEGORY)
+ publisher_place = models.CharField(max_length=150)
+ isbn = models.CharField(max_length=50)
+ edition = models.CharField(max_length=15)
+ year_of_pub = models.CharField(max_length=4)
+ no_chapters = models.IntegerField(default=0, blank=True)
+ contributor = models.IntegerField(default=0, blank=True)
+ reviewer = models.IntegerField(default=0, blank=True)
+ approved = models.BooleanField(default=False)
+ start_time = models.DateField(null=True, default=None)
+ end_time = models.DateField(null=True, default=None)
+ class Meta:
+ db_table = 'tbc_book'
+
diff --git a/website/views.py b/website/views.py
index 36693bd..7201427 100644
--- a/website/views.py
+++ b/website/views.py
@@ -1,6 +1,6 @@
from django.http import HttpResponse
from django.shortcuts import render, render_to_response, get_object_or_404
-from website.models import FOSSEEStats
+from website.models import FOSSEEStats, TBCPYTHONBook
from website.models import Nav, Page, Block
@@ -20,43 +20,44 @@ def block_sort(obj):
return items
def get_blocks():
- sidebar = Block.objects.get(block_name = "sidebar")
- footer = Block.objects.get(block_name = "footer")
- blocks = {
- 'navs': Nav.objects.order_by('position'),
- 'sidebar': block_sort(sidebar),
- 'footer': block_sort(footer)
- }
- return blocks
+ sidebar = Block.objects.get(block_name = "sidebar")
+ footer = Block.objects.get(block_name = "footer")
+ blocks = {
+ 'navs': Nav.objects.order_by('position'),
+ 'sidebar': block_sort(sidebar),
+ 'footer': block_sort(footer)
+ }
+ return blocks
def dispatcher(request, permalink=''):
+ context = {}
+
if permalink == 'python-workshops':
blocks = get_blocks()
rows = FOSSEEStats.objects.using('fossee_new').filter(foss_name='Python', type ='Workshop').order_by('-w_id')
python_wokshop_page_content = Page.objects.get(permalink='python-workshops-page')
- context = {
- 'page' : python_wokshop_page_content,
- 'navs': blocks['navs'],
- 'sidebar': blocks['sidebar'],
- 'footer': blocks['footer'],
- 'permalink': permalink,
- 'obj' : rows,
- }
+ context['page'] = python_wokshop_page_content
+ context['permalink'] = permalink
+ context['obj'] = rows
+
+ if permalink == 'textbook-companions-for-academics':
+ blocks = get_blocks()
+ textbook_companions_for_academics = Page.objects.get(permalink='textbook-companions-for-academics-page')
+ completed_books = TBCPYTHONBook.objects.using('tbcpython').values('id', 'title', 'author').filter(approved=True).order_by('id')
+
+ context['page'] = textbook_companions_for_academics
+ context['permalink'] = permalink
+ context['obj'] = completed_books
if permalink == '' or permalink == 'home' :
permalink = 'home'
page = get_object_or_404(Page, permalink=permalink)
blocks = get_blocks()
- context = {
- 'page': page,
- 'navs': blocks['navs'],
- 'sidebar': blocks['sidebar'],
- 'footer': blocks['footer'],
- 'permalink': permalink
- }
+ context['page'] = page
+ context['permalink'] = permalink
- if permalink != 'home' and permalink != 'python-workshops':
+ if permalink != 'home' and permalink != 'python-workshops' and permalink != 'textbook-companions-for-academics':
page = get_object_or_404(Page, permalink=permalink)
blocks = get_blocks()
context = {
@@ -66,5 +67,5 @@ def dispatcher(request, permalink=''):
'footer': blocks['footer'],
'permalink': permalink
}
-
return render(request, "website/page.html", context)
+