diff options
Diffstat (limited to 'gstudio')
-rw-r--r-- | gstudio/methods.py | 172 | ||||
-rw-r--r-- | gstudio/static/gstudio/js/addcontent.js | 232 | ||||
-rw-r--r-- | gstudio/templates/gstudio/NewPage.html | 30 | ||||
-rw-r--r-- | gstudio/templates/gstudio/NewSection1.html | 26 | ||||
-rw-r--r-- | gstudio/templates/gstudio/_header.html | 1 | ||||
-rw-r--r-- | gstudio/templates/gstudio/nodetype_detail.html | 8 | ||||
-rw-r--r-- | gstudio/templates/gstudio/skeleton.html | 33 | ||||
-rw-r--r-- | gstudio/templates/gstudio/tags/commentpage.html | 75 | ||||
-rw-r--r-- | gstudio/templates/metadashboard/pgedashboard.html | 178 | ||||
-rw-r--r-- | gstudio/templates/metadashboard/wikidashboard.html | 24 | ||||
-rw-r--r-- | gstudio/templatetags/gstudio_tags.py | 4 | ||||
-rw-r--r-- | gstudio/urls/__init__.py | 4 | ||||
-rw-r--r-- | gstudio/urls/page.py | 27 | ||||
-rw-r--r-- | gstudio/urls/pageadd.py | 20 | ||||
-rw-r--r-- | gstudio/urls/sectionadd1.py | 9 | ||||
-rw-r--r-- | gstudio/urls/user.py | 5 | ||||
-rw-r--r-- | gstudio/views/page.py | 79 | ||||
-rw-r--r-- | gstudio/views/pageadd.py | 41 | ||||
-rw-r--r-- | gstudio/views/sectionadd1.py | 36 | ||||
-rw-r--r-- | gstudio/views/user.py | 11 | ||||
-rw-r--r-- | gstudio/views/wikidashboard.py | 61 |
21 files changed, 1062 insertions, 14 deletions
diff --git a/gstudio/methods.py b/gstudio/methods.py index 38ceb196..70407168 100644 --- a/gstudio/methods.py +++ b/gstudio/methods.py @@ -2,6 +2,9 @@ from gstudio.models import * from objectapp.models import * from django.template.defaultfilters import slugify import datetime +import os +from demo.settings import PYSCRIPT_URL_GSTUDIO + def delete(idnum): del_ob = Gbobject.objects.get(id=idnum) @@ -32,6 +35,72 @@ def make_topic_object(title,auth_id,content): new_ob.sites.add(Site.objects.get_current()) return new_ob +def make_sectionreply_object(content_org,title,auth_id): + new_ob = Gbobject() + new_ob.title = title + new_ob.status = 2 + new_ob.slug = slugify(title) + new_ob.content_org = content_org + myfile = open('/tmp/file.org', 'w') + myfile.write(new_ob.content_org) + myfile.close() + myfile = open('/tmp/file.org', 'r') + myfile.readline() + myfile = open('/tmp/file.org', 'a') + myfile.write("\n#+OPTIONS: timestamp:nil author:nil creator:nil H:3 num:nil toc:nil @:t ::t |:t ^:t -:t f:t *:t <:t") + myfile.write("\n#+TITLE: ") + myfile = open('/tmp/file.org', 'r') + stdout = os.popen(PYSCRIPT_URL_GSTUDIO) + output = stdout.read() + data = open("/tmp/file.html") + data1 = data.readlines() + data2 = data1[67:] + newdata="" + for line in data2: + newdata += line.lstrip() + new_ob.content = newdata + myfile = open('/tmp/file.org', 'w') + # myfile.write(new_ob.content_org) + # myfile.close() + new_ob.save() + new_ob.objecttypes.add(Objecttype.objects.get(title="Subsection")) + new_ob.authors.add(Author.objects.get(id=auth_id)) + new_ob.sites.add(Site.objects.get_current()) + return new_ob + + +def make_section_object(title,auth_id,content_org): + new_ob = Gbobject() + new_ob.title = title + new_ob.status = 2 + new_ob.slug = slugify(title) + #new_ob.content = content + new_ob.content_org = content_org + myfile = open('/tmp/file.org', 'w') + myfile.write(new_ob.content_org) + myfile.close() + myfile = open('/tmp/file.org', 'r') + myfile.readline() + myfile = open('/tmp/file.org', 'a') + myfile.write("\n#+OPTIONS: timestamp:nil author:nil creator:nil H:3 num:nil toc:nil @:t ::t |:t ^:t -:t f:t *:t <:t") + myfile.write("\n#+TITLE: ") + myfile = open('/tmp/file.org', 'r') + stdout = os.popen(PYSCRIPT_URL_GSTUDIO) + output = stdout.read() + data = open("/tmp/file.html") + data1 = data.readlines() + data2 = data1[67:] + newdata="" + for line in data2: + newdata += line.lstrip() + new_ob.content = newdata + new_ob.save() + new_ob.objecttypes.add(Objecttype.objects.get(title="Section")) + new_ob.authors.add(Author.objects.get(id=auth_id)) + new_ob.sites.add(Site.objects.get_current()) + return new_ob + + def make_relation(rep,id_no,idusr): r = make_rep_object(rep,idusr) t = Gbobject.objects.get(id=id_no) @@ -39,11 +108,25 @@ def make_relation(rep,id_no,idusr): r.prior_nodes.add(t) return True +def make_sectionrelation(rep,ptitle,id_no,idusr): + r = make_sectionreply_object(rep,ptitle,idusr) + t = Gbobject.objects.get(id=id_no) + t.posterior_nodes.add(r) + r.prior_nodes.add(t) + return True + + def rate_it(topic_id,request,rating): ob = Gbobject.objects.get(id=topic_id) ob.rating.add(score=rating ,user=request.user, ip_address=request.META['REMOTE_ADDR']) return True +def rate_section(section_id,request,rating): + ob = Gbobject.objects.get(id=section_id) + ob.rating.add(score=rating ,user=request.user, ip_address=request.META['REMOTE_ADDR']) + return True + + def create_meeting(title,idusr,content): sys = System() @@ -76,12 +159,63 @@ def create_meeting(title,idusr,content): sys.sites.add(Site.objects.get_current()) sys1.sites.add(Site.objects.get_current()) return sys.id + +def create_wikipage(title,idusr,content_org): + sys = System() + sys.title = title + sys.status = 2 + sys.content_org= content_org + myfile = open('/tmp/file.org', 'w') + myfile.write(sys.content_org) + myfile.close() + myfile = open('/tmp/file.org', 'r') + myfile.readline() + myfile = open('/tmp/file.org', 'a') + myfile.write("\n#+OPTIONS: timestamp:nil author:nil creator:nil H:3 num:nil toc:nil @:t ::t |:t ^:t -:t f:t *:t <:t") + myfile.write("\n#+TITLE: ") + myfile = open('/tmp/file.org', 'r') + stdout = os.popen(PYSCRIPT_URL_GSTUDIO) + output = stdout.read() + data = open("/tmp/file.html") + data1 = data.readlines() + data2 = data1[67:] + newdata="" + for line in data2: + newdata += line.lstrip() + sys.content = newdata + sys.slug = slugify(title) + sys.save() + sys.systemtypes.add(Systemtype.objects.get(title="Wikipage")) + sys.authors.add(Author.objects.get(id=idusr)) + + a = Attribute() + a.title = "released button of " + title + a.slug = slugify(a.title) + a.content = a.slug + a.status = 2 + a.subject = sys + a.svalue = "False" + a.attributetype_id = Attributetype.objects.get(title="pagerelease").id + a.save() + sys1 = System() + sys1.title = "page box of " + title + sys1.status = 2 + sys1.content = "contains pages of " + title + sys1.slug = slugify(title) + sys1.save() + sys1.systemtypes.add(Systemtype.objects.get(title="page_box")) + sys.system_set.add(sys1) + sys.member_set.add(Author.objects.get(id=idusr)) + sys.sites.add(Site.objects.get_current()) + sys1.sites.add(Site.objects.get_current()) + return sys.id + def make_att_true(meet_ob): - for each in meet_ob.subject_of.all(): - if(each.attributetype.title=='release'): - each.svalue = "true" - meet_ob.subject_of.add(each) - break + for each in meet_ob.subject_of.all(): + if(each.attributetype.title=='release'): + each.svalue = "true" + meet_ob.subject_of.add(each) + break def make_att_false(meet_ob): for each in meet_ob.subject_of.all(): @@ -89,6 +223,21 @@ def make_att_false(meet_ob): each.svalue = "" meet_ob.subject_of.add(each) break + +def make_att1_true(page_ob): + for each in page_ob.subject_of.all(): + if(each.attributetype.title=='pagerelease'): + each.svalue = "true" + page_ob.subject_of.add(each) + break + +def make_att1_false(page_ob): + for each in page_ob.subject_of.all(): + if(each.attributetype.title=='pagerelease'): + each.svalue = "" + page_ob.subject_of.add(each) + break + def schedule_time(stTime, endTime, sys_id): sys=System.objects.get(id=sys_id) atty1=Attributetype.objects.get(title='timeofstart') @@ -103,6 +252,12 @@ def schedule_time(stTime, endTime, sys_id): ats.save() sys.save() return sys.id + + +def make_title(id_no): + i = Gbobject.objects.get(id=id_no) + return "Subsection of:"+i.title + def get_time(sys_id): later = False meetover = False @@ -137,3 +292,10 @@ def del_topic(topic_id): del_comment(each.id) ob.delete() return True + +def del_section(section_id): + ob = Gbobject.objects.get(id=int(section_id)) + for each in ob.posterior_nodes.all(): + del_comment(each.id) + ob.delete() + return True diff --git a/gstudio/static/gstudio/js/addcontent.js b/gstudio/static/gstudio/js/addcontent.js new file mode 100644 index 00000000..9581aeb6 --- /dev/null +++ b/gstudio/static/gstudio/js/addcontent.js @@ -0,0 +1,232 @@ + $.noConflict(); + + jQuery(document).ready(function($) { + $("#addcontent").one("click",function(){ + //var abc = document.getElementById('pageid1').value; + //window.location.replace('sectionadd1/'+abc); + $("#chart").hide(); + // var orgdata = document.getElementById('orgcontent').value; + document.getElementById('gnoweditor').style.visibility="visible"; + + $("#gnoweditor").orgitdown(mySettings); + + var orgtext = $("#gnoweditor").val(); + + // }); + // }); + }); + $("#save").one("click",function() { + var org_data = $("#gnoweditor").val(); + document.getElementById("orgpage").value = org_data; + var encode_data = encodeURIComponent(org_data); + }); + + $("#pagecontent1").one("click",function() { + $("#chart").hide(); + document.getElementById('gnoweditor').style.visibility="visible"; + $("#gnoweditor").orgitdown(mySettings); + }); + $("#save").one("click",function() { + var org_data = $("#gnoweditor").val(); + document.getElementById("orgpage1").value = org_data; + var encode_data = encodeURIComponent(org_data); + }); + $("#editseccontent").one("click",function(){ + $("#chart").hide(); + document.getElementById('gnoweditor').style.visibility="visible"; + $("#gnoweditor").orgitdown(mySettings); + var a = document.getElementById('sectionorg').value; + $("#gnoweditor").val(a); + var screenTop = $(document).scrollTop(); + $(".orgitdownContainer").css({ + "margin-top":screenTop,}); + + }); + $("#saveseccontent").one("click",function(){ + var org_data = $("#gnoweditor").val(); + var id = document.getElementById("sectionid").value + document.getElementById("sectionorg").value = org_data; + var encode_data = encodeURIComponent(org_data); + + $.ajax({ + url: '/nodetypes/ajax/contentorgadd/?id=' + id + '&contentorg=' + encode_data, + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/ajaxcreatefile/?id=' +id+ '&content_org=' +encode_data, + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/ajaxcreatehtml/', + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/contentadd/?id=' +id, + success: function(data) { + //alert("Data Saved"); + location.reload();} + }); + } + }); + } + }); + + } + }); + + + + + + + }); + $("#editsubsec").one("click",function(){ + $("#chart").hide(); + document.getElementById('gnoweditor').style.visibility="visible"; + $("#gnoweditor").orgitdown(mySettings); + var a = document.getElementById('subsecorg').value; + $("#gnoweditor").val(a); + var screenTop = $(document).scrollTop(); + $(".orgitdownContainer").css({ + "margin-top":screenTop,}); + + }); + $("#savesubsec1").one("click",function(){ + var org_data = $("#gnoweditor").val(); + var id = document.getElementById("subsecid").value + document.getElementById("subsecorg").value = org_data; + var encode_data = encodeURIComponent(org_data); + + $.ajax({ + url: '/nodetypes/ajax/contentorgadd/?id=' + id + '&contentorg=' + encode_data, + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/ajaxcreatefile/?id=' +id+ '&content_org=' +encode_data, + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/ajaxcreatehtml/', + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/contentadd/?id=' +id, + success: function(data) { + //alert("Data Saved"); + location.reload();} + }); + } + }); + } + }); + + } + }); + + + + + + + }); + + $("#editpagecontent").one("click",function(){ + //var abc = document.getElementById('pageid1').value; + //window.location.replace('sectionadd1/'+abc); + $("#chart").hide(); + // var orgdata = document.getElementById('orgcontent').value; + document.getElementById('gnoweditor').style.visibility="visible"; + + $("#gnoweditor").orgitdown(mySettings); + + // var org_data = $("#gnoweditor").val(); + + var a = document.getElementById('pageorg').value; + $("#gnoweditor").val(a); + var screenTop = $(document).scrollTop(); + $(".orgitdownContainer").css({ + "margin-top":screenTop,}); + + + }); + $("#savepagecontent").one("click",function(){ + // var org = $("#gnoweditor").val(); + // $("#sectionorg").val(org); + // var test = $("#sectionorg").val(); + // alert(test); + var org_data = $("#gnoweditor").val(); + var id = document.getElementById("pageid").value + document.getElementById("pageorg").value = org_data; + var encode_data = encodeURIComponent(org_data); + //$("#gnoweditor").val(org_data); + + $.ajax({ + url: '/nodetypes/ajax/contentorgadd/?id=' + id + '&contentorg=' + encode_data, + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/ajaxcreatefile/?id=' +id+ '&content_org=' +encode_data, + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/ajaxcreatehtml/', + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/contentadd/?id=' +id, + success: function(data) { + //alert("Data Saved"); + location.reload();} + }); + } + }); + } + }); + + } + }); + + + }); + + + $("#createsubsection").one("click",function(){ + $("#chart").hide(); + document.getElementById('gnoweditor').style.visibility="visible"; + $("#gnoweditor").orgitdown(mySettings); + $("#gnoweditor").val(''); + var screenTop = $(document).scrollTop(); + $(".orgitdownContainer").css({ + "margin-top":screenTop,}); + }); + $("#savesubsec").one("click",function() { + var org_data = $("#gnoweditor").val(); + document.getElementById("sectionreply").value = org_data; + var encode_data = encodeURIComponent(org_data); + alert(org_data);}); + + $("#savecontent").one("click",function() { + var org_data = $("#gnoweditor").val(); + var id = document.getElementById("objectid").value + document.getElementById("orgcontent").value = org_data; + var encode_data = encodeURIComponent(org_data); + + $.ajax({ + url: '/nodetypes/ajax/contentorgadd/?id=' + id + '&contentorg=' + encode_data, + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/ajaxcreatefile/?id=' +id+ '&content_org=' +encode_data, + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/ajaxcreatehtml/', + success: function(data) { + $.ajax({ + url: '/nodetypes/ajax/contentadd/?id=' +id, + success: function(data) { + // alert("Data Saved"); + location.reload();} + }); + } + }); + } + }); + + } + }); + + }); + }); + + + diff --git a/gstudio/templates/gstudio/NewPage.html b/gstudio/templates/gstudio/NewPage.html new file mode 100644 index 00000000..541554b2 --- /dev/null +++ b/gstudio/templates/gstudio/NewPage.html @@ -0,0 +1,30 @@ +{%extends "gstudio/base.html"%} +{%load i18n %} +{% block content %} +{%if user.is_authenticated%} +{% if errors %} +<ul> +{% for error in errors %} +<li><font color="red">{{ error }} </font></li> +{% endfor %} +</ul> +{% endif %} +<form action="" method="post"> +{% csrf_token %} + +<p>Name of the Page: <input type="text" name="subject"></p> +<textarea name="page" id="pagecontent" rows="10" cols="50" style="display:none;"></textarea></p> + +<p><textarea name="org1" id="orgpage1" rows="10" cols="50" style="display:none;" ></textarea></p></br> +<input type="button" id="pagecontent1" name="content" value="Add Content"/> +<input type="button" name="savepage" id="save" value="Save Page"></p> +</br> +<input type="hidden" value={{user.id}} name = "idusr"> +<input type="submit" value="Submit"> +</form> +{%else%} +<p> Sorry! Login To proceed </p> + +{%endif%} +{% endblock %} + diff --git a/gstudio/templates/gstudio/NewSection1.html b/gstudio/templates/gstudio/NewSection1.html new file mode 100644 index 00000000..75db8a2a --- /dev/null +++ b/gstudio/templates/gstudio/NewSection1.html @@ -0,0 +1,26 @@ + +{% extends "gstudio/base.html" %} +{% block content %} +<h1>Add a new Section</h1> +{% if errors %} +<ul> +{% for error in errors %} +<li><font color="red">{{ error }} </font></li> +{% endfor %} +</ul> +{% endif %} + +<form action="" method="post">{% csrf_token %} +<p>Title: <input type="text" name="subject"></p> +<textarea name="page" id="pagecontent" rows="10" cols="50" style="display:none;"></textarea></p> +<p><textarea name="org" id="orgpage" rows="10" cols="50" style="display:none;"></textarea></p> +</br></br> + +<input type="button" id="addcontent" name="content" value="Add Content"/> +<input type="button" name="savepage" id="save" value="Save Page"></p></br> +<input type="hidden" value={{pageid}} id="sectionid"> +<input type="hidden" value={{user.id}} name = "idusr"> +<input type="submit" value="Submit"> +</form> + +{% endblock %} diff --git a/gstudio/templates/gstudio/_header.html b/gstudio/templates/gstudio/_header.html index 08fdab24..4b2b0753 100644 --- a/gstudio/templates/gstudio/_header.html +++ b/gstudio/templates/gstudio/_header.html @@ -17,6 +17,7 @@ {% if user.is_staff %} | <a href="{{ get_absolute_url }}/gstudio/user/{{user.username}}" title="MyBoard">Gnowledge Studio</a> | <a href="{{ get_absolute_url }}/gstudio/resources/documents" title="My Documents">Documents</a> + | <a href="{{ get_absolute_url }}/gstudio/user/wikipage/{{user.username}}" title="MyWiki">Wikipage</a> | <a href="{{ get_absolute_url }}/gstudio/resources/images" title="Images">Images</a> | <a href="{{ get_absolute_url }}/gstudio/resources/videos" title="My Videos">Videos</a> | <a href="{{ get_absolute_url }}/admin" title="Admin Dashboard">Admin Dashboard</a> diff --git a/gstudio/templates/gstudio/nodetype_detail.html b/gstudio/templates/gstudio/nodetype_detail.html index 95cf45bf..73db903a 100644 --- a/gstudio/templates/gstudio/nodetype_detail.html +++ b/gstudio/templates/gstudio/nodetype_detail.html @@ -214,7 +214,7 @@ <b> Content:<nbsp> - <input type="button" id="editdata" value="Edit Content"/><ndsp><nbsp> + <input type="button" id="editdata" value="Edit Content"/> <input type="button" id="savecontent" value="Save Content"/><ndsp><nbsp> <input type="hidden" id="objectid" value="{{object.id}}"/> <input type="hidden" id="title" value="{{object.title}}"/> <input type="hidden" id="orgcontent" value="{{object.content_org}}"/> @@ -223,8 +223,10 @@ {% else %} <b> - Content:<nbsp> <input type="button"id="editdata" value="Edit Content"/><ndsp><nbsp> - <input type="hidden" id="objectid" value="{{object.id}}"/> + Content:<nbsp> + <input type="button"id="editdata" value="Edit Content"/> + <input type="button" id="savecontent" value="Save Content"/><ndsp><nbsp> + <input type="hidden" id="objectid" value="{{object.id}}"/> <input type="hidden" id="title" value="{{object.title}}"/> <input type="hidden" id="orgcontent" value="{{object.content_org}}"/> diff --git a/gstudio/templates/gstudio/skeleton.html b/gstudio/templates/gstudio/skeleton.html index 8f5c30dc..9ce61885 100644 --- a/gstudio/templates/gstudio/skeleton.html +++ b/gstudio/templates/gstudio/skeleton.html @@ -51,9 +51,9 @@ display: block; position: absolute; } -.orgitdown .orgitdownButton1 a { - background-image:url(/static/gstudio/js/orgitdown/orgitdown/sets/org/images/save.jpeg); -} +<!-- .orgitdown .orgitdownButton1 a { --> +<!-- background-image:url(/static/gstudio/js/orgitdown/orgitdown/sets/org/images/save.jpeg); --> +<!-- } --> .orgitdown .orgitdownButton2 a { background-image:url(/static/gstudio/js/orgitdown/orgitdown/sets/default/images/bold.png); } @@ -104,7 +104,7 @@ background:#FFF url(/static/gstudio/js/orgitdown/orgitdown/skins/orgitdown/images/bg-container.png) repeat-x top left; padding:5px 5px 2px 5px; font:11px Verdana, Arial, Helvetica, sans-serif; - margin-left:450px; + margin-left:640px; width:450px; margin-top:30px; } @@ -285,6 +285,31 @@ <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/orgitdown/orgitdown/jquery.orgitdown.js"></script> <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/orgitdown/orgitdown/sets/savedata.js"></script> + <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script> + <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/orgitdown/orgitdown/sets/org/set.js"></script> + + <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/orgitdown/orgitdown/jquery.orgitdown.js"></script> + + <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/addcontent.js"></script> + <!-- <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script> --> + <!-- <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/orgitdown/orgitdown/sets/org/set.js"></script> --> + + <!-- <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/orgitdown/orgitdown/jquery.orgitdown.js"></script> --> + + <!-- <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/updatepage.js"></script> --> + + <!-- <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script> --> + <!-- <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/orgitdown/orgitdown/sets/org/set.js"></script> --> + + <!-- <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/orgitdown/orgitdown/jquery.orgitdown.js"></script> --> + + <!-- <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/addcontent.js"></script> --> + <!-- <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script> --> + <!-- <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/orgitdown/orgitdown/sets/org/set.js"></script> --> + + <!-- <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/orgitdown/orgitdown/jquery.orgitdown.js"></script> --> + + <!-- <script type="text/javascript" src="{{STATIC_URL}}gstudio/js/updatesection.js"></script> --> <!-- EXTRAHEAD --> diff --git a/gstudio/templates/gstudio/tags/commentpage.html b/gstudio/templates/gstudio/tags/commentpage.html new file mode 100644 index 00000000..a998a7ff --- /dev/null +++ b/gstudio/templates/gstudio/tags/commentpage.html @@ -0,0 +1,75 @@ + + + + +{% load gstudio_tags %} +{% load i18n %} + + + +{% if comment.posterior_nodes.count %} +<!--<ul style="display: none;">--> +<ul> +{% for child in comment.posterior_nodes.all %} + <!-- Flag1 outside {{flag}}--> + {% for each in child.authors.all %} + {% ifequal idusr admin_id %} + <font style = "color:red;" size = 3><li>{{child.title}}</font></br> {{child.content}} + <form method="post" action=".">{% csrf_token %} + <!-- <textarea name = "replytosection" id="replytosection" rows="10" cols="50"></textarea> --> + <!-- <p>org --> + <!-- <textarea name = "orgreply" id="orgreplysection" rows="10" cols="50"></textarea> --> + <!-- </p> --> + <input type="hidden" value={{child.id}} name = "parentid"> + <input type="hidden" value={{idusr}} name="idusr"> + <!-- <input type="button" id="createsubsection" value="Create Sub"> --> + <!-- <input type="submit" value="Create Subsection"> --> + <!-- <input type="button" value="Reply" id="reply"></br> --> + <!-- <input type="button" name="savereply" id="savereply" value="Save Reply"></p></br> --> + <input type="button" id="editsubsec" value="Edit"/> + <input type="button" id="savesubsec1" value="Save"/> + <input type="button" id="subsecorg" value="{{child.content_org}}" style="visibility:hidden;"/> + <input type="button" id="subsecid" value="{{child.id}}" style="visibility:hidden;"/> + <input type="checkbox" name="del_comment" value="delete_comment"> + <input type="submit" value="Delete this Subsection"> + </form> + {% show_commentpage child idusr flag admin_id attribute%} + </li> + {% else %} + {% ifequal idusr each.id %} + <li>{{each}} says <font style = "color:red;" size = 3>{{child.title}}</font> + <form method="post" action=".">{% csrf_token %} + <input type="text" name = "replytosection"> + <input type="hidden" value={{child.id}} name = "parentid"> + <input type="hidden" value={{idusr}} name="idusr"> + <input type="submit" value="Reply to section"> + <input type="checkbox" name="del_comment" value="delete_comment"> + <input type="submit" value="delete this comment"> + </form> + {% show_commentpage child idusr flag admin_id attribute%} + </li> + {% else %} + {% ifequal attribute "true" %} + + <li>{{each}} says <font style = "color:red;" size = 3>{{child.title}}</font> + <form method="post" action=".">{% csrf_token %} + <input type="text" name = "replytosection"> + <input type="hidden" value={{child.id}} name = "parentid"> + <input type="hidden" value={{idusr}} name="idusr"> + <input type="submit" value="Reply to section"> + <input type="checkbox" name="del_comment" value="delete_comment"> + <input type="submit" value="delete this comment"> + </form> + {% show_commentpage child idusr flag admin_id attribute%} + </li> + {% endifequal %} + {% endifequal %} + {% endifequal %} + {% endfor %} + + +{% endfor %} +</ul> +{% endif %} + + diff --git a/gstudio/templates/metadashboard/pgedashboard.html b/gstudio/templates/metadashboard/pgedashboard.html new file mode 100644 index 00000000..2c24cc60 --- /dev/null +++ b/gstudio/templates/metadashboard/pgedashboard.html @@ -0,0 +1,178 @@ +{% extends "gstudio/base.html" %} +{% load i18n comments gstudio_tags %} +{% load adminmedia grp_tags %} +{% load gstudio_tags %} +{% load pagination_tags %} +<!-- {% load i18n %} --> +{% block content %} +<style> +<link href="{% admin_media_prefix %}css/base.css" rel="stylesheet" type="text/css" /> +<link rel="stylesheet" type="text/css" media="screen, projection" href="{{ STATIC_URL }}gstudio/css/screen.css" /> +</style> +<script src="http://code.jquery.com/jquery-latest.js"></script> + <script type="text/javascript" > + $(window).load(function() { + $("#content").css({ + "width": "500px",});}); +$(window).load(function() { + $("#chart").hide();}); +$(window).load(function() { + + $("#graphcss").hide(); + }); + +</script> + +{% if user.is_authenticated %} +{% autopaginate section 1 %} + <!-- <input type="button" value="Home" onClick="location.href=parseURL('/gstudio/user/wikipage/{{user.username}}');"> --> + <h1>{{ page_ob.title }}</h1> + Wikipage posted on : {{page_ob.creation_date}} + by {% for author in page_ob.authors.all %} + {{author}} + {% endfor %}</br></br> + + {% with page_ob.html_content|safe as page_ob_content %} + + {{page_ob_content}} + {% endwith %} + + <input type="button" id="editpagecontent" value="Edit"/> + <input type="button" id="savepagecontent" value="Save"/> + <input type="button" id="pageid" value="{{page_ob.id}}" style="visibility:hidden;"/> + <input type="button" id="pageorg" value="{{page_ob.content_org}}" style="visibility:hidden;"/> + + <!-- <h3> This Discussion was initiated by {{admin_m.username}}</h3> --> + + <!-- <h>You are logged in as <font color="blue">{{user.username}}</font></h> --> + + <!-- {%if flag %} --> + <!-- <div id="Release"> --> + <!-- <form method="post" action=".">{% csrf_token %} --> + <!-- <input type="submit" value="Release Replies"> --> + <!-- <input type="hidden" value="hits" name = "pagerelease"> --> + <!-- </form> --> + <!-- </div> --> + <!-- <div> --> + <!-- <form method="post" action=".">{% csrf_token %} --> + <!-- <input type="submit" value="Block Replies"> --> + <!-- <input type="hidden" value="hits" name = "block"> --> + <!-- </form> --> + <!-- </div> --> + <!-- {% endif %} --> + <!-- </br> --> + + + <form method="post" action=".">{% csrf_token %} +<!-- <input type="hidden" value="{{page_ob.id}}" name = "pageid">--> + <input type="button" id="newsection1" value="Add a new Section" onClick="location.href=parseURL('sectionadd1/{{page_ob.id}}');"> + <input type="hidden" id="pageid1" value="{{page_ob.id}}"/> + </form> + +</br> {% autoescape off %} + + {% for each in section %} + <h4><font size="5" color="red">{{each.title}}</h4></font></br> + Posted on : {{each.creation_date}} + by {% for author in each.authors.all %} + {{author}} + {% endfor %}</br> + + {% ifequal each.rating.get_rating 0 %} + <h5> Not yet rated </h5> + {% else %} + Current rating is <h5>{{ each.rating.get_rating }}</h5> + {% endifequal %} + {%autoescape on%} + {% with each.html_content|safe as each_content %} + {{each_content}} + {% endwith %} + {% endautoescape%} + <input type="button" id="editseccontent" value="Edit"/> + <input type="button" id="saveseccontent" value="Save"/> + <input type="button" id="sectionorg" value="{{each.content_org}}" style="visibility:hidden;"/> + <input type="button" id="sectionid" value="{{each.id}}" style="visibility:hidden;"/> + <form method="post" action=".">{% csrf_token %} + Create Subsection: + <input type="text" name = "replytosection" id="sectionreply" style="visibility:hidden;"/></br> + <input type="hidden" value="{{each.id}}" name = "iden"> + <input type="hidden" value="{{user.id}}" name = "idusr"> + <input type="button" value="Create Subsection" id="createsubsection"> + <input type="button" value="save" id="savesubsec"> + <input type="submit" value="submit"></br> + </br></br><input name="del_section" type="checkbox" value="delete_section"/>Delete section + <input type="submit" value="Delete the section"></br> + Do you wanna rate it ? </br> + <input name="star1" type="radio" value=1 class="star"/> + <input name="star1" type="radio" value=2 class="star"/> + <input name="star1" type="radio" value=3 class="star"/> + <input name="star1" type="radio" value=4 class="star"/> + <input name="star1" type="radio" value=5 class="star"/> + <!--topic id and user id hidden fields--> + </br> + <input type="submit" value="Rate it!!!"> + </form> + <p> + Subsections : + <!-- <div id="main"> --> + <!-- <div id="sidetree"> --> + <!-- <div class="treeheader"> </div> --> + <!-- <a href="?#">Expand All</a> </div> --> + <!-- <ul class="treeview" id="tree"> --> + <!-- <li class="expandable"><div class="hitarea expandable-hitarea"></div>Expand the replies</li></ul></div> --> + {% show_commentpage each user.id flag1 admin_id attribute %} + {% endfor %} +{% endautoescape %} + +{% else %} + <h1> <p style = "color :red;">OOPS!!! Login Please!</p></h1> +{% endif %} + +{% block nodetype-comments %} +<div id="comments" class=""> + <h5>{% trans "Comments" %}</h5> + {% with page_ob.comments as comment_list %} + {% if comment_list.count %} + <ol id="comment-list" class="span-15 last"> + {% for comment in comment_list %} + <li id="comment_{{ comment.pk }}" class="comment vcard {% cycle box1,box2 %}{% if comment.user in page_ob.authors.all %} post-author{% endif %} span-15 last"> + <div class="span-2"> +<img src="{% get_gravatar comment.email 60 "G" %}" class="gravatar photo" alt="{{ comment.user_name }}"/> + </div> + <div class="comment-body span-13 last"> +<div class="comment-author span-13 last"> +{% if comment.url %} +<a href="{{ comment.url }}" class="fn url" title = "{{ comment.user_name }}">{{ comment.user_name }}</a> +{% else %} +{{ comment.user_name }} +{% endif %} +{% trans "on" %} {{ comment.submit_date|date:"SHORT_DATETIME_FORMAT" }} +</div> +<div class="span-13 last"> +{{ comment.comment|linebreaks }} +</div> + </div> + </li> + {% endfor %} + </ol> + {% if not page_ob.comments_are_open %} + <p>{% trans "Comments are closed." %}</p> + {% endif %} + {% else %} + {% if page_ob.comments_are_open %} + <p>{% trans "No comments yet." %}</p> + {% else %} + <p>{% trans "Comments are closed." %}</p> + {% endif %} + {% endif %} + {% endwith %} +</div> +{% endblock %} +<div class="commentForm span-16 last"> + {% render_comment_form for page_ob %} +</div> + +{% paginate %} + +{% endblock %} + diff --git a/gstudio/templates/metadashboard/wikidashboard.html b/gstudio/templates/metadashboard/wikidashboard.html new file mode 100644 index 00000000..8b9d15ef --- /dev/null +++ b/gstudio/templates/metadashboard/wikidashboard.html @@ -0,0 +1,24 @@ +{% extends "gstudio/base.html" %} +{% load gstudio_tags %} +{% load i18n %} +{% block content %} + + +{% if user.is_authenticated %} + +<p> Here is a list of all the pages:</p> +</br> + {% for each in pages.member_systems.all %} + <a href="/gstudio/page/gnowsys-page/{{each.id}}/">{{each.title}}</a></br> + {% endfor %} + <input type="button" value="Create a new page" onClick="location.href=parseURL('pageadd/');"> + </p> + <p> + </br> +{% else %} + <h1> <p style = "color :black;">OOPS!!! Login Please!</p></h1> +{% endif %} + + + +{% endblock %} diff --git a/gstudio/templatetags/gstudio_tags.py b/gstudio/templatetags/gstudio_tags.py index c5954ab1..d79c658d 100644 --- a/gstudio/templatetags/gstudio_tags.py +++ b/gstudio/templatetags/gstudio_tags.py @@ -385,3 +385,7 @@ def get_tag_cloud(steps=6, template='gstudio/tags/tag_cloud.html'): @register.inclusion_tag('gstudio/tags/comment.html') def show_comment(comment,idusr,flag,admin_id,attob): return {'comment':comment , 'idusr' : idusr, "flag" : flag, "admin_id" : admin_id , "attribute" : attob} + +@register.inclusion_tag('gstudio/tags/commentpage.html') +def show_commentpage(comment,idusr,flag,admin_id,attob): + return {'comment':comment , 'idusr' : idusr, "flag" : flag, "admin_id" : admin_id , "attribute" : attob} diff --git a/gstudio/urls/__init__.py b/gstudio/urls/__init__.py index d9f65cd5..efc6305c 100644 --- a/gstudio/urls/__init__.py +++ b/gstudio/urls/__init__.py @@ -39,10 +39,14 @@ urlpatterns = patterns( url(r'^', include('gstudio.urls.capabilities')), url(r'^', include('gstudio.urls.nodetypes')), url(r'topicadd1/', include('gstudio.urls.topicadd1')), + url(r'sectionadd1/', include('gstudio.urls.sectionadd1')), url(r'^login', include('gstudio.urls.login')), url(r'user/(\w+)/$','gstudio.views.user.userdashboard'), + url(r'user/wikipage/(\w+)/$','gstudio.views.user.wikidashboard'), url(r'groupadd/', include('gstudio.urls.groupadd')), + url(r'pageadd/', include('gstudio.urls.pageadd')), url(r'group/',include('gstudio.urls.group')), + url(r'page/',include('gstudio.urls.page')), url(r'^resources/images/',include('gstudio.urls.image')), url(r'^resources/videos/',include('gstudio.urls.video')), url(r'^resources/documents',include('gstudio.urls.docu')), diff --git a/gstudio/urls/page.py b/gstudio/urls/page.py new file mode 100644 index 00000000..23df1e3d --- /dev/null +++ b/gstudio/urls/page.py @@ -0,0 +1,27 @@ +# Copyright (c) 2011, 2012 Free Software Foundation + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + + + +"""Url for Gstudio User Dashboard""" +from django.conf.urls.defaults import url +from django.conf.urls.defaults import patterns + +urlpatterns = patterns('gstudio.views.page', + url(r'^gnowsys-page/(\d+)/$', 'pagedashboard', name='gstudio_page'), + # url(r'^later$', 'grouplater', name='gstudio_group'), + # url(r'^over$', 'groupover', + # name='gstudio_group'), + ) diff --git a/gstudio/urls/pageadd.py b/gstudio/urls/pageadd.py new file mode 100644 index 00000000..8aa4b10c --- /dev/null +++ b/gstudio/urls/pageadd.py @@ -0,0 +1,20 @@ +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + + +"""Url for Gstudio User Dashboard""" +from django.conf.urls.defaults import url +from django.conf.urls.defaults import patterns + +urlpatterns = patterns('gstudio.views.pageadd', + url(r'^$', 'pageadd', + name='gstudio_page'), + + ) diff --git a/gstudio/urls/sectionadd1.py b/gstudio/urls/sectionadd1.py new file mode 100644 index 00000000..592b493b --- /dev/null +++ b/gstudio/urls/sectionadd1.py @@ -0,0 +1,9 @@ +"""Url for Gstudio User Dashboard""" +from django.conf.urls.defaults import url +from django.conf.urls.defaults import patterns + +urlpatterns = patterns('gstudio.views.sectionadd1', + url(r'(\d+)', 'sectionadd1', + name='gstudio_section'), + + ) diff --git a/gstudio/urls/user.py b/gstudio/urls/user.py index 12031d35..7b73c8a0 100644 --- a/gstudio/urls/user.py +++ b/gstudio/urls/user.py @@ -20,7 +20,8 @@ from django.conf.urls.defaults import url from django.conf.urls.defaults import patterns urlpatterns = patterns('gstudio.views.user', - url(r'^$', 'userdashboard', - name='gstudio_user'), + url(r'^$', 'userdashboard',name='gstudio_user'), + url(r'^wikipage/$', 'wikidashboard', name='gstudio_wiki'), + ) diff --git a/gstudio/views/page.py b/gstudio/views/page.py new file mode 100644 index 00000000..71111ffe --- /dev/null +++ b/gstudio/views/page.py @@ -0,0 +1,79 @@ +# Copyright (c) 2011, 2012 Free Software Foundation + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +from django.http import HttpResponse +from django.http import HttpResponseRedirect +from django.template import RequestContext +from django.shortcuts import render_to_response +from gstudio.models import * +from gstudio.methods import * + +def pagedashboard(request,pageid): + pageid = int(pageid) + # boolean1 = False + flag= False + page_ob = System.objects.get(id=pageid) + if request.method == "POST" : + boolean = False + rep = request.POST.get("replytosection",'') + print "rep" ,rep +# content_org = request.POST.get("orgreply",'') + id_no = request.POST.get("iden",'') + id_no1 = request.POST.get("parentid","") + idusr = request.POST.get("idusr",'') + rating = request.POST.get("star1","") + # # flag1=request.POST.get("pagerelease","") + # # block = request.POST.get("block","") + section_del = request.POST.get("del_section", "") + comment_del = request.POST.get("del_comment", "") + if section_del: + del_section(int(id_no)) + if comment_del: + del_comment(int(id_no1)) + if rating : + rate_section(int(id_no),request,int(rating)) + if rep : + if not id_no : + ptitle= make_title(int(id_no)) + boolean = make_sectionrelation(rep,ptitle,int(id_no1),int(idusr)) + + + elif not id_no1 : + ptitle= make_title(int(id_no)) + boolean = make_sectionrelation(rep,ptitle,int(id_no),int(idusr)) + + if boolean : + return HttpResponseRedirect("/gstudio/page/gnowsys-page/"+str(pageid)) + pageid = int(pageid) + if request.user.id == page_ob.authors.all()[0].id : + flag = True + Section = page_ob.system_set.all()[0].gbobject_set.all() + admin_id = page_ob.authors.all()[0].id #a list of topics + # # for each in page_ob.subject_of.all(): + # # if each.attributetype.title=='pagerelease': + # # attob = each.svalue + # # break + admin_m = page_ob.authors.all()[0] + + topic_type_set=Objecttype.objects.get(title='Section') + if(len(topic_type_set.get_members)): + latest_topic=topic_type_set.get_members[0] + post=latest_topic.get_absolute_url() + else: + post="no topic added yet!!" + + variables = RequestContext(request, {'section' : Section,'page_ob' : page_ob,'admin_m':admin_m,"flag" : flag,"admin_id" : admin_id,'post':post}) + template = "metadashboard/pgedashboard.html" + return render_to_response(template, variables) diff --git a/gstudio/views/pageadd.py b/gstudio/views/pageadd.py new file mode 100644 index 00000000..4f63ead0 --- /dev/null +++ b/gstudio/views/pageadd.py @@ -0,0 +1,41 @@ +# Copyright (c) 2011, 2012 Free Software Foundation + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +from django.http import HttpResponse +from django.http import HttpResponseRedirect +from django.template import RequestContext +from django.shortcuts import render_to_response +from gstudio.models import * +from gstudio.methods import * +import datetime +def pageadd(request): + errors = [] + pageId = "" + if request.method == 'POST': + if not request.POST.get('subject', ''): + errors.append('Enter a title.') + # if not request.POST.get('org1', ''): + # errors.append('Enter a page.') + if not errors: + title=request.POST['subject'] + # content=request.POST['page'] + content_org=request.POST['org1'] + idusr=request.POST['idusr'] + pageId = create_wikipage(title,int(idusr),content_org) + if pageId : + return HttpResponseRedirect('/gstudio/page/gnowsys-page/'+ str(pageId)) + variables = RequestContext(request,{'errors' : errors, 'pageId' : pageId}) + template = "gstudio/NewPage.html" + return render_to_response(template, variables) diff --git a/gstudio/views/sectionadd1.py b/gstudio/views/sectionadd1.py new file mode 100644 index 00000000..0c5643ca --- /dev/null +++ b/gstudio/views/sectionadd1.py @@ -0,0 +1,36 @@ + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + + + +from django.http import HttpResponse +from django.http import HttpResponseRedirect +from django.template import RequestContext +from django.shortcuts import render_to_response +from gstudio.models import * +from gstudio.methods import * + +def sectionadd1(request,pageid): + errors = [] + if request.method == 'POST': + if not request.POST.get('subject', ''): + errors.append('Enter a title.') + if not request.POST.get('org', ''): + errors.append('Enter a page.') + if not errors: + title=request.POST['subject'] + # content=request.POST['page'] + content_org=request.POST['org'] + idusr=request.POST['idusr'] + tp = make_section_object(title,int(idusr),content_org) + System.objects.get(id=int(pageid)).system_set.all()[0].gbobject_set.add(tp) + if tp: + return HttpResponseRedirect('/gstudio/page/gnowsys-page/'+pageid) + + + variables = RequestContext(request,{'errors' : errors,'pageid' : pageid}) + template = "gstudio/NewSection1.html" + return render_to_response(template, variables) + + diff --git a/gstudio/views/user.py b/gstudio/views/user.py index 10e1ff7e..9fa9b6d3 100644 --- a/gstudio/views/user.py +++ b/gstudio/views/user.py @@ -32,6 +32,17 @@ def userdashboard(request,username): template = "metadashboard/logindashboard.html" return render_to_response(template,variables) +def wikidashboard(request,username): + if request.user.username == username : + pages = Systemtype.objects.get(title="Wikipage") + variables = RequestContext(request,{"pages" : pages }) + template = "metadashboard/wikidashboard.html" + return render_to_response(template, variables) + else : + variables = RequestContext(request) + template = "metadashboard/logindashboard.html" + return render_to_response(template,variables) + diff --git a/gstudio/views/wikidashboard.py b/gstudio/views/wikidashboard.py new file mode 100644 index 00000000..ed08b9d3 --- /dev/null +++ b/gstudio/views/wikidashboard.py @@ -0,0 +1,61 @@ +# Copyright (c) 2011, 2012 Free Software Foundation + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + + +# This project incorporates work covered by the following copyright and permission notice: + +# Copyright (c) 2009, Julien Fache +# All rights reserved. + +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: + +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of the author nor the names of other +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. + +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +# OF THE POSSIBILITY OF SUCH DAMAGE. + + + +from django.http import HttpResponse +from django.http import HttpResponseRedirect +from django.template import RequestContext +from django.shortcuts import render_to_response + +def wikidashboard(request): + variables = RequestContext(request) + template = "gstudiodashboard/dashboard.html" + return render_to_response(template, variables) + + |