summaryrefslogtreecommitdiff
path: root/gstudio
diff options
context:
space:
mode:
authorsupriya <supriya@dragbox.(none)>2012-08-07 11:41:01 +0530
committersupriya <supriya@dragbox.(none)>2012-08-07 11:41:01 +0530
commita97d8967426bda55381e0f235b26e51777228f5a (patch)
tree532dda45192f6b7dc03b716f21174702c880966a /gstudio
parente08547938d44b756fd1af529429f208214c36522 (diff)
downloadgnowsys-a97d8967426bda55381e0f235b26e51777228f5a.tar.gz
Wikipage added to gstudio
Diffstat (limited to 'gstudio')
-rw-r--r--gstudio/methods.py172
-rw-r--r--gstudio/static/gstudio/js/addcontent.js232
-rw-r--r--gstudio/templates/gstudio/NewPage.html30
-rw-r--r--gstudio/templates/gstudio/NewSection1.html26
-rw-r--r--gstudio/templates/gstudio/_header.html1
-rw-r--r--gstudio/templates/gstudio/nodetype_detail.html8
-rw-r--r--gstudio/templates/gstudio/skeleton.html33
-rw-r--r--gstudio/templates/gstudio/tags/commentpage.html75
-rw-r--r--gstudio/templates/metadashboard/pgedashboard.html178
-rw-r--r--gstudio/templates/metadashboard/wikidashboard.html24
-rw-r--r--gstudio/templatetags/gstudio_tags.py4
-rw-r--r--gstudio/urls/__init__.py4
-rw-r--r--gstudio/urls/page.py27
-rw-r--r--gstudio/urls/pageadd.py20
-rw-r--r--gstudio/urls/sectionadd1.py9
-rw-r--r--gstudio/urls/user.py5
-rw-r--r--gstudio/views/page.py79
-rw-r--r--gstudio/views/pageadd.py41
-rw-r--r--gstudio/views/sectionadd1.py36
-rw-r--r--gstudio/views/user.py11
-rw-r--r--gstudio/views/wikidashboard.py61
21 files changed, 1062 insertions, 14 deletions
diff --git a/gstudio/methods.py b/gstudio/methods.py
index 38ceb19..7040716 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 0000000..9581aeb
--- /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 0000000..541554b
--- /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 0000000..75db8a2
--- /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 08fdab2..4b2b075 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 95cf45b..73db903 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 8f5c30d..9ce6188 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 0000000..a998a7f
--- /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 0000000..2c24cc6
--- /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">&nbsp;</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 0000000..8b9d15e
--- /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 c5954ab..d79c658 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 d9f65cd..efc6305 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 0000000..23df1e3
--- /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 0000000..8aa4b10
--- /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 0000000..592b493
--- /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 12031d3..7b73c8a 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 0000000..71111ff
--- /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 0000000..4f63ead
--- /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 0000000..0c5643c
--- /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 10e1ff7..9fa9b6d 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 0000000..ed08b9d
--- /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)
+
+