diff options
author | Kabir Kukreti <kabir@gnowledge.org> | 2012-03-20 15:53:51 +0530 |
---|---|---|
committer | Kabir Kukreti <kabir@gnowledge.org> | 2012-03-20 15:53:51 +0530 |
commit | 7264ef6355baa26d72c6127e5fe8d1e623837204 (patch) | |
tree | 86c87f8315a9e0e50d29f1474516e8cd293a2211 /gstudio/models.py | |
parent | d8f4eeaccba10db423f314d9284ccdad5c3e5a81 (diff) | |
download | gnowsys-7264ef6355baa26d72c6127e5fe8d1e623837204.tar.gz |
Bug in registration corrected.Graphs made for generic, graph fonts improved and hyperlinks added.Graph work done by interns: Kavita Maurya, Shefali Shetty, Ratna Gautami, Neetu Menon
Diffstat (limited to 'gstudio/models.py')
-rw-r--r-- | gstudio/models.py | 75 |
1 files changed, 46 insertions, 29 deletions
diff --git a/gstudio/models.py b/gstudio/models.py index a1ddf941..885b345e 100644 --- a/gstudio/models.py +++ b/gstudio/models.py @@ -485,6 +485,7 @@ class Nodetype(Node): (PUBLISHED, _('published'))) content = models.TextField(_('content'), null=True, blank=True) + content_org = models.TextField(_('content'), null=True, blank=True) parent = models.ForeignKey('self', null=True, blank=True, verbose_name=_('is a kind of'), related_name='children') @@ -667,39 +668,50 @@ class Nodetype(Node): return attrs def get_graph_json(self): - - predicate_id={"plural":"a1","altnames":"a2","contains_members":"a3","contains_subtypes":"a4"} + + + # predicate_id={"plural":"a1","altnames":"a2","contains_members":"a3","contains_subtypes":"a4","prior_nodes":"a5", "posterior_nodes":"a6"} g_json = {} g_json["node_metadata"]= [] - + nbh = self.get_nbh - + predicate_id = {} + counter = 1 + for key in nbh.keys(): + val = "a" + str(counter) + predicate_id[key] = val + counter = counter + 1 + #print predicate_id + + attr_counter = -1 + this_node = {"_id":str(self.id),"title":self.title,"screen_name":self.title, "url":self.get_absolute_url()} + g_json["node_metadata"].append(this_node) + for key in predicate_id.keys(): if nbh[key]: try: g_json[str(key)]=[] g_json["node_metadata"].append({"_id":str(predicate_id[key]),"screen_name":key}) - g_json[str(key)].append({"from":self.id , "to":predicate_id[key],"value":1 }) + g_json[str(key)].append({"from":self.id , "to":predicate_id[key],"value":1, "level":1 }) if not isinstance(nbh[key],basestring): - for item in nbh[key]: - - g_json["node_metadata"].append({"_id":str(item.id),"screen_name":item.title, "title":item.title, "url":item.get_absolute_url()}) - g_json[str(key)].append({"from":predicate_id[key] , "to":item.id ,"value":1 }) - - else: - value={nbh["plural"]:"a4",nbh["altnames"]:"a5"} - this_node[str(key)]=nbh[key] - - for item in value.keys(): - g_json["node_metadata"].append({"_id":str(value[nbh[key]]),"screen_name":nbh[key]}) - g_json[str(key)].append({"from":predicate_id[key] , "to":value[nbh[key]] ,"value":1 }) - + for item in nbh[key]: + # user + g_json["node_metadata"].append({"_id":str(item.id),"screen_name":item.title, "title":item.title, "url":item.get_absolute_url()}) + g_json[str(key)].append({"from":predicate_id[key] , "to":item.id ,"value":1 }) + else: + #value={nbh["plural"]:"a4",nbh["altnames"]:"a5"} + #this_node[str(key)]=nbh[key] key, nbh[key] + #for item in value.keys(): + g_json["node_metadata"].append({"_id":attr_counter,"screen_name":nbh[key]}) + g_json[str(key)].append({"from":predicate_id[key] , "to":attr_counter ,"value":1, "level":2 }) + attr_counter-=1 + except: - pass - g_json["node_metadata"].append(this_node) + pass + # print g_json return json.dumps(g_json) @@ -1171,8 +1183,8 @@ class Objecttype(Nodetype): nbh['subjecttype_of']= self.subjecttype_of.all() # get all the RTs for the objecttype nbh.update(self.get_relationtypes) - - nbh['type_of'] = [self.parent] + if self.parent: + nbh['type_of'] = [self.parent] nbh['contains_subtypes'] = Nodetype.objects.filter(parent=self.id) # get all the objects inheriting this OT @@ -1840,24 +1852,29 @@ class Intersection(Node): reversion.register(NID) -reversion.register(Node) -reversion.register(Objecttype) -reversion.register(Edge) if not reversion.is_registered(Systemtype): reversion.register(Systemtype) +if not reversion.is_registered(Objecttype): + reversion.register(Objecttype , follow=["nodetype_ptr"]) + +if not reversion.is_registered(Node): + reversion.register(Node , follow=["nid_ptr"]) + +if not reversion.is_registered(Edge): + reversion.register(Edge , follow=["nid_ptr"]) + + if not reversion.is_registered(Processtype): reversion.register(Processtype, follow=["changing_attributetype_set", "changing_relationtype_set"]) if not reversion.is_registered(Nodetype): - reversion.register(Nodetype, follow=["parent", "metatypes"]) + reversion.register(Nodetype, follow=["node_ptr","parent", "metatypes","prior_nodes", "posterior_nodes"]) if not reversion.is_registered(Metatype): - reversion.register(Metatype, follow=["parent"]) + reversion.register(Metatype, follow=["node_ptr","parent"]) -if not reversion.is_registered(Nodetype): - reversion.register(Nodetype, follow=["prior_nodes", "posterior_nodes"]) if not reversion.is_registered(Relationtype): reversion.register(Relationtype, follow=["left_subjecttype", "right_subjecttype"]) |