version 1.310.2.11, 2013/05/17 06:20:22
|
version 1.310.2.12, 2013/08/05 08:20:10
|
Line 924 class ECHO_collection(CatalogAware, Fold
|
Line 924 class ECHO_collection(CatalogAware, Fold
|
return ret+"</rdf:Seq>" |
return ret+"</rdf:Seq>" |
|
|
|
|
def getExportAsJSON(self,REQUEST=None): |
def getExportCollectionsAsJSON(self,metatypes=['ECHO_resource'],REQUEST=None): |
import json |
import json |
ret = self.getExport() |
ret = self.getExport(metatypes=metatypes) |
|
|
if REQUEST: |
if REQUEST: |
REQUEST.response.setHeader("Content-type", "text/json; charset=utf-8") |
REQUEST.response.setHeader("Content-type", "text/json; charset=utf-8") |
|
|
return json.dumps(ret) |
return json.dumps(ret) |
|
|
def getExport(self,REQUEST=None): |
def getExport(self,metatypes=['ECHO_resource'],REQUEST=None): |
|
|
"""JSON export collection content""" |
"""JSON export collection content""" |
import json |
import json |
ret={} |
ret={} |
#contents=self.ZopeFind(self,obj_metatypes=['ECHO_group','ECHO_resource','ECHO_collection']) |
#contents=self.ZopeFind(self,obj_metatypes=['ECHO_group','ECHO_resource','ECHO_collection']) |
contents=self.ZopeFind(self,obj_metatypes=['ECHO_resource']) |
contents=self.ZopeFind(self,obj_metatypes=metatypes) |
|
|
ret['description']=self.getDescription(); |
ret['description']=self.getDescription(); |
ret['title']=self.getTitle(); |
ret['title']=self.getTitle(); |
Line 956 class ECHO_collection(CatalogAware, Fold
|
Line 956 class ECHO_collection(CatalogAware, Fold
|
|
|
|
|
|
|
|
def getDRI(self,type="escidoc"): |
|
"""sofar cho collections don't have dris |
|
therefore return the path""" |
|
|
|
return self.absolute_url().replace(self.echo_pages.absolute_url(),'') |
|
|
|
|
|
|
|
|
Line 1620 class ECHO_collection(CatalogAware, Fold
|
Line 1626 class ECHO_collection(CatalogAware, Fold
|
return [x.absolute_url() for x in self.getSubCols(searchSimple=searchSimple)] |
return [x.absolute_url() for x in self.getSubCols(searchSimple=searchSimple)] |
|
|
|
|
|
def exportPageTemplateContents(self,REQUEST=None): |
|
"""hole nur den inhalt aus page templates""" |
|
|
|
import json |
|
import base64 |
|
from BeautifulSoup import BeautifulSoup |
|
|
|
|
|
ret={} |
|
#contents=self.ZopeFind(self,obj_metatypes=['ECHO_group','ECHO_resource','ECHO_collection']) |
|
contents=self.ZopeFind(self,obj_metatypes=['Page Template'],search_sub=1) |
|
#contents=self.ZopeFind(self) |
|
|
|
|
|
for content in contents: |
|
colId = content[1].absolute_url().replace(self.absolute_url(),'') |
|
|
|
html=content[1].render() |
|
parsed = BeautifulSoup(html) |
|
|
|
|
|
cnt = parsed.findAll(attrs={'class':'stage'}) |
|
if len(cnt) > 0: #sollte nur einen gebenbt: |
|
ret[colId]=base64.b64encode(cnt[0].prettify()) |
|
|
|
if REQUEST: |
|
REQUEST.response.setHeader("Content-type", "text/json; charset=utf-8") |
|
|
|
|
|
return json.dumps(ret) |
|
|
Globals.InitializeClass(ECHO_collection) |
Globals.InitializeClass(ECHO_collection) |
|
|
def manage_addECHO_collectionForm(self): |
def manage_addECHO_collectionForm(self): |