version 1.67, 2005/10/17 19:20:49
|
version 1.73, 2005/12/21 08:54:11
|
Line 1
|
Line 1
|
|
genericServerPath="http://www.mpiwg-berlin.mpg.de/zogilib_images" #can be changed with main config |
|
|
genericServerPath="http://content.mpiwg-berlin.mpg.de/zogilib_images" |
|
#genericServerPath="http://127.0.0.1:8080/zogilib_images" |
|
|
|
|
|
from OFS.Folder import Folder |
from OFS.Folder import Folder |
Line 24 from threading import Thread
|
Line 23 from threading import Thread
|
import Queue |
import Queue |
import cgi |
import cgi |
|
|
from AccessControl import ClassSecurityInfo |
from AccessControl import ClassSecurityInfo, getSecurityManager |
|
|
try: |
try: |
from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder |
from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder |
except: |
except: |
print "ZSQL Extend Folder nicht importiert" |
print "ZSQL Extend Folder nicht importiert" |
print "Metadatendfolder funktioniert nicht!!!" |
print "Metadatendfolder funktioniert nicht!!!" |
|
class ZSQLExtendFolder: |
|
"""leer""" |
|
manage_options=() |
|
|
|
|
|
|
Line 278 class ImageDigilib(Folder,Persistent,Imp
|
Line 280 class ImageDigilib(Folder,Persistent,Imp
|
|
|
) |
) |
|
|
|
def getAccessRight(self): |
|
"""get the accessright, return is string "extern" or "intern" """ |
|
return self.getRights(self.filename.split('.')[0]) |
|
|
|
security.declarePublic('isAccessible') |
|
|
|
def isAccessible(self): |
|
"""gives true if obejct is accessible taking the rights of the user into account""" |
|
|
|
#TODO: implement rights, currently true if external and false if internal, and true if user has role authenticated |
|
|
|
username=self.REQUEST['AUTHENTICATED_USER'] |
|
#print username |
|
#print self.acl_users.getUserNames() |
|
user=getSecurityManager().getUser() |
|
|
|
roles=user.getRoles() |
|
if 'Authenticated' in roles: |
|
return True |
|
|
|
if self.getAccessRight()=="extern": |
|
return True |
|
else: |
|
return False |
|
|
def addMetaObject(self,id,RESPONSE=None): |
def addMetaObject(self,id,RESPONSE=None): |
"""Add an MetaObject""" |
"""Add an MetaObject""" |
objectType=getattr(self.Control_Panel.Products.ImageMetaData,self.genericMetaDataType) |
objectType=getattr(self.Control_Panel.Products.ImageMetaData,self.genericMetaDataType) |
Line 307 class ImageDigilib(Folder,Persistent,Imp
|
Line 334 class ImageDigilib(Folder,Persistent,Imp
|
self.filename=filename |
self.filename=filename |
self.meta=meta |
self.meta=meta |
|
|
|
def getBasename(self): |
|
"""returns base filename (sans extension)""" |
|
return os.path.splitext(self.filename)[0] |
|
|
def getMeta(self): |
def getMeta(self): |
"""ausgabe der metadaten""" |
"""ausgabe der metadaten""" |
Line 495 class ImageDigilib(Folder,Persistent,Imp
|
Line 525 class ImageDigilib(Folder,Persistent,Imp
|
|
|
return "done" |
return "done" |
|
|
|
security.declarePublic('thumb') |
def thumb(self,url=None): |
def thumb(self,url=None): |
"""show thumb""" |
"""show thumb""" |
thumbname=os.path.splitext(self.filename)[0]+".jpg" |
thumbname=os.path.splitext(self.filename)[0]+".jpg" |
Line 599 class ImageCollection(Folder, Persistent
|
Line 630 class ImageCollection(Folder, Persistent
|
|
|
defaultMetaString="http://fm-web.mpiwg-berlin.mpg.de:8050/FMRes/FMPJS?-db=Wissenschaftlerportraits.fp5&-layID=69&-token=25&-max=1&-format=formvwcss.htm&-mode=browse&images::filename=%s&-find" ## TEST FUER IMAGEDATENBANK WP |
defaultMetaString="http://fm-web.mpiwg-berlin.mpg.de:8050/FMRes/FMPJS?-db=Wissenschaftlerportraits.fp5&-layID=69&-token=25&-max=1&-format=formvwcss.htm&-mode=browse&images::filename=%s&-find" ## TEST FUER IMAGEDATENBANK WP |
|
|
|
imgcoll_main = PageTemplateFile('zpt/overview', globals()) |
|
imgcoll_thumb = PageTemplateFile('zpt/thumb', globals()) |
|
|
|
def getServerPath(self): |
|
"""get Server path""" |
|
return getattr(self,'serverPath',genericServerPath) |
|
|
def getScalerPath(self): |
def getScalerPath(self): |
"""get ScalerPath""" |
"""get ScalerPath""" |
path=getattr(self,'serverPath',genericServerPath)+"/scaledImage?fn=" |
path=getattr(self,'serverPath',genericServerPath)+"/scaledImage?fn=" |
Line 728 class ImageCollection(Folder, Persistent
|
Line 766 class ImageCollection(Folder, Persistent
|
self.ImageViewerPath=ImageViewerPath |
self.ImageViewerPath=ImageViewerPath |
self.defaultMetaString=defaultMetaString |
self.defaultMetaString=defaultMetaString |
self.serverPath=serverPath |
self.serverPath=serverPath |
|
self.defaultrows = 6 |
|
self.defaultcols = 2 |
|
|
optTMP= Folder.manage_options |
optTMP= Folder.manage_options |
|
|
Line 747 class ImageCollection(Folder, Persistent
|
Line 787 class ImageCollection(Folder, Persistent
|
"""import metadata, if strict ist not None then only metadata will be rebuild where metadata is empty""" |
"""import metadata, if strict ist not None then only metadata will be rebuild where metadata is empty""" |
|
|
for image in self.ZopeFind(self,obj_metatypes=["ImageDigilib"]): |
for image in self.ZopeFind(self,obj_metatypes=["ImageDigilib"]): |
print image[1].getId() |
|
image[1].manageMetaData(strict) |
image[1].manageMetaData(strict) |
return "ok" |
return "ok" |
|
|
Line 860 class ImageCollection(Folder, Persistent
|
Line 900 class ImageCollection(Folder, Persistent
|
|
|
|
|
def xmlinput(self,url): |
def xmlinput(self,url): |
"""Anzeige <n ausgewaehlten thumbs""" |
"""Anzeige von ausgewaehlten thumbs""" |
#return url |
#return url |
|
|
url=urllib.unquote(url) |
url=urllib.unquote(url) |
Line 881 class ImageCollection(Folder, Persistent
|
Line 921 class ImageCollection(Folder, Persistent
|
|
|
idnr=image.getElementsByTagName('idnr')[0] |
idnr=image.getElementsByTagName('idnr')[0] |
id=getText(idnr.childNodes) |
id=getText(idnr.childNodes) |
|
try: |
numberOfPages=image.getElementsByTagName('numberOfPages')[0] |
numberOfPages=image.getElementsByTagName('numberOfPages')[0] |
|
except: |
|
numberOfPages=None |
|
|
|
if numberOfPages: |
nopT=getText(numberOfPages.childNodes) |
nopT=getText(numberOfPages.childNodes) |
try: |
try: |
nop=int(nopT) |
nop=int(nopT) |
except: |
except: |
nop=0 |
nop=0 |
|
else: |
|
nop=0 |
|
|
texts=getText(imagename.childNodes).split("\n") #mehrere bilder in return getrennter liste |
texts=getText(imagename.childNodes).split("\n") #mehrere bilder in return getrennter liste |
for text in texts: |
for text in texts: |
if not text=="": |
if not text=="": |
Line 902 class ImageCollection(Folder, Persistent
|
Line 950 class ImageCollection(Folder, Persistent
|
self.REQUEST.SESSION['filenames']=rc |
self.REQUEST.SESSION['filenames']=rc |
self.REQUEST.SESSION['filenamesIds']=fnIds |
self.REQUEST.SESSION['filenamesIds']=fnIds |
|
|
|
overview=self.ZopeFind(self,obj_ids=['overview_selected.html']) |
|
|
|
if overview: |
|
return overview[0][1]() |
|
else: |
|
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','overview_selected.zpt')).__of__(self) |
|
return pt() |
|
|
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','overview_selected.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','overview_selected.zpt')).__of__(self) |
return pt() |
return pt() |
|
|
Line 1074 class ImageCollection(Folder, Persistent
|
Line 1130 class ImageCollection(Folder, Persistent
|
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','ChangeImageCollectionForm.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','ChangeImageCollectionForm.zpt')).__of__(self) |
return pt() |
return pt() |
|
|
def ChangeImageCollection(self,title,ImageStoragePath,ImageViewerPath,defaultMetaString,RESPONSE=None): |
def ChangeImageCollection(self,title,ImageStoragePath,ImageViewerPath,defaultMetaString,serverPath,RESPONSE=None): |
"""Change""" |
"""Change""" |
self.title=title |
self.title=title |
self.ImageStoragePath=ImageStoragePath |
self.ImageStoragePath=ImageStoragePath |
self.ImageViewerPath=ImageViewerPath |
self.ImageViewerPath=ImageViewerPath |
self.defaultMetaString=defaultMetaString |
self.defaultMetaString=defaultMetaString |
|
self.serverPath=serverPath |
|
|
if RESPONSE is not None: |
if RESPONSE is not None: |
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |
Line 1101 class ImageCollection(Folder, Persistent
|
Line 1158 class ImageCollection(Folder, Persistent
|
ids.sort() |
ids.sort() |
return ids |
return ids |
|
|
def firstSets(self,selected=None): |
def firstSets(self,selected=None,text='first set'): |
ids=self.show_thumbs() |
ids=self.show_thumbs() |
if ids: |
if ids: |
if selected: |
if selected: |
return "<a href=\""+self.REQUEST['URL1']+"/selection?filename="+ids[0]+"\" target=\"_top\">first sets</a>" |
return "<a href=\""+self.REQUEST['URL1']+"/selection?filename="+ids[0]+"\" target=\"_top\">"+text+"</a>" |
else: |
else: |
return "<a href=\""+self.REQUEST['URL1']+"?filename="+ids[0]+"\" target=\"_top\">first sets</a>" |
return "<a href=\""+self.REQUEST['URL1']+"?filename="+ids[0]+"\" target=\"_top\">"+text+"</a>" |
|
|
def lastSets(self,selected=None): |
def lastSets(self,selected=None,text='last set'): |
ids=self.show_thumbs() |
ids=self.show_thumbs() |
if ids: |
if ids: |
colRows=self.getColTimesRow() |
colRows=self.getColTimesRow() |
Line 1123 class ImageCollection(Folder, Persistent
|
Line 1180 class ImageCollection(Folder, Persistent
|
nr=0 |
nr=0 |
|
|
if selected: |
if selected: |
return "<a href=\""+self.REQUEST['URL1']+"/selection?filename="+ids[nr]+"\" target=\"_top\">last set</a>" |
return "<a href=\""+self.REQUEST['URL1']+"/selection?filename="+ids[nr]+"\" target=\"_top\">"+text+"</a>" |
else: |
else: |
return "<a href=\""+self.REQUEST['URL1']+"?filename="+ids[nr]+"\" target=\"_top\">last sets</a>" |
return "<a href=\""+self.REQUEST['URL1']+"?filename="+ids[nr]+"\" target=\"_top\">"+text+"</a>" |
|
|
|
|
|
|
def nextSets(self,selected=None): |
def nextSets(self,selected=None,text='next set'): |
"""show nextimage""" |
"""show nextimage""" |
ids=self.show_thumbs() |
ids=self.show_thumbs() |
colRows=self.getColTimesRow() |
colRows=self.getColTimesRow() |
|
pagesize = colRows[0] * colRows[1] |
if ids: |
if ids: |
if colRows[1]: |
if colRows[1]: |
|
|
if self.REQUEST.SESSION.has_key("filename"): |
if self.REQUEST.SESSION.has_key("filename"): |
filename=self.REQUEST.SESSION["filename"] |
filename=self.REQUEST.SESSION["filename"] |
try: |
try: |
nr=ids.index(filename)+colRows[0]*colRows[1] |
nr=ids.index(filename)+pagesize |
if nr>=len(ids): |
if nr>=len(ids): |
nr=len(ids)-1 |
return "" |
except: |
except: |
nr=0 |
nr=pagesize |
else: |
else: |
nr=0 |
nr = pagesize |
|
|
if nr==len(ids)-1: |
if nr>=len(ids)-1: |
return "" |
return "" |
else: |
else: |
if selected: |
if selected: |
return "<a href=\""+self.REQUEST['URL1']+"/selection?filename="+ids[nr]+"\" target=\"_top\">next set</a>" |
return "<a href=\""+self.REQUEST['URL1']+"/selection?filename="+ids[nr]+"\" target=\"_top\">"+text+"</a>" |
else: |
else: |
return "<a href=\""+self.REQUEST['URL1']+"?filename="+ids[nr]+"\" target=\"_top\">next set</a>" |
return "<a href=\""+self.REQUEST['URL1']+"?filename="+ids[nr]+"\" target=\"_top\">"+text+"</a>" |
|
|
def prevSets(self,selected=None): |
def prevSets(self,selected=None,text='previous sets'): |
|
|
"""show nextimage""" |
"""show nextimage""" |
#return self.getId() |
#return self.getId() |
Line 1182 class ImageCollection(Folder, Persistent
|
Line 1239 class ImageCollection(Folder, Persistent
|
return "" |
return "" |
else: |
else: |
if selected: |
if selected: |
return "<a href=\""+self.REQUEST['URL1']+"/selection?filename="+ids[nr]+"\" target=\"_top\">previous sets</a>" |
return "<a href=\""+self.REQUEST['URL1']+"/selection?filename="+ids[nr]+"\" target=\"_top\">"+text+"</a>" |
else: |
else: |
return "<a href=\""+self.REQUEST['URL1']+"?filename="+ids[nr]+"\" target=\"_top\">previous sets</a>" |
return "<a href=\""+self.REQUEST['URL1']+"?filename="+ids[nr]+"\" target=\"_top\">"+text+"</a>" |
else: |
else: |
return "" |
return "" |
|
|
|
|
def showFolders(self): |
def showFolders(self): |
"""show subfolders""" |
"""show subfolders""" |
ret="" |
ret="" |
Line 1206 class ImageCollection(Folder, Persistent
|
Line 1265 class ImageCollection(Folder, Persistent
|
ret+=link%(iC[1].absolute_url(),iC[0]) |
ret+=link%(iC[1].absolute_url(),iC[0]) |
ret+="<br>" |
ret+="<br>" |
return ret |
return ret |
|
|
|
|
|
def getSetSelector(self, selected=None): |
|
"""returns the HTML select element for the sets""" |
|
actualNr=0 |
|
ids=self.show_thumbs() |
|
colRows=self.getColTimesRow() |
|
pagesize = colRows[0]*colRows[1] |
|
numpages = int(len(ids)/pagesize) |
|
if not ((len(ids) % pagesize)==0): |
|
numpages+=1 |
|
|
|
ret="" |
|
if numpages>1: |
|
if selected: |
|
ret+="""<select onChange="parent.location.href='"""+self.REQUEST['URL1']+"""/selection?filename='+this.options[this.selectedIndex].value">""" |
|
else: |
|
ret+="""<select onChange="parent.location.href='"""+self.REQUEST['URL1']+"""?filename='+this.options[this.selectedIndex].value">""" |
|
|
|
for i in range(numpages): |
|
try: |
|
nr=ids.index(self.REQUEST.SESSION['filename']) |
|
except: |
|
nr=0 |
|
k=i * pagesize |
|
if (k <= nr) and (nr < i*(pagesize+1)): |
|
actualNr=i |
|
ret+="""<option value="%s" selected>%i</option>"""%(ids[k], i + 1) |
|
else: |
|
ret+="""<option value="%s">%i</option>"""%(ids[k], i + 1) |
|
|
|
ret+="</select>" |
|
|
|
return ret |
|
|
|
def isAllSets(self, showall=None): |
|
"""returns if there are any sets""" |
|
ids=self.show_thumbs() |
|
colRows=self.getColTimesRow(showall=showall) |
|
pagesize = colRows[0]*colRows[1] |
|
return (len(ids) <= pagesize) |
|
|
|
|
|
def allSets(self, texton='show all', textoff='show groups'): |
|
"""returns HTML to toggle 'show all'""" |
|
if self.isAllSets(showall='No'): |
|
return "" |
|
showall=self.REQUEST.SESSION.get('showall','no') |
|
if showall=='no': |
|
ret='<a href="'+self.REQUEST['URL1']+'?showall=yes" target="_top">'+texton+'</a>' |
|
else: |
|
ret='<a href="'+self.REQUEST['URL1']+'?showall=no" target="_top">'+textoff+'</a>' |
|
return ret |
|
|
|
|
def showRuler(self,selected=None): |
def showRuler(self,selected=None): |
"""show ruler""" |
"""show ruler""" |
showall =self.REQUEST.SESSION.get('showall','no') |
showall =self.REQUEST.SESSION.get('showall','no') |
Line 1288 class ImageCollection(Folder, Persistent
|
Line 1402 class ImageCollection(Folder, Persistent
|
|
|
return ret |
return ret |
|
|
|
|
def show_thumbs_selected_rows(self,numberOfColumns): |
def show_thumbs_selected_rows(self,numberOfColumns): |
"""Ausgabe anzahl""" |
"""Ausgabe anzahl""" |
ids=self.show_selected_thumbs() |
ids=self.show_selected_thumbs() |
Line 1324 class ImageCollection(Folder, Persistent
|
Line 1439 class ImageCollection(Folder, Persistent
|
|
|
RESPONSE.redirect(self.REQUEST['URL1']+"/setDone") |
RESPONSE.redirect(self.REQUEST['URL1']+"/setDone") |
|
|
|
def setDefaultColTimesRow(self, cols, rows): |
|
"""sets default columns and rows""" |
|
self.defaultcols = cols |
|
self.defaultrows = rows |
|
|
def getColTimesRow(self,showall='No'): |
def getColTimesRow(self,showall='No'): |
"""coltimesrow""" |
"""coltimesrow""" |
|
|
REQUEST=self.REQUEST |
REQUEST=self.REQUEST |
"""matrix""" |
"""matrix""" |
if REQUEST.cookies.has_key("ImageViewerRows"): |
if REQUEST.cookies.has_key("ImageViewerRows"): |
|
|
try: |
try: |
rows=int(REQUEST.cookies["ImageViewerRows"]) |
rows=int(REQUEST.cookies["ImageViewerRows"]) |
except: |
except: |
rows=6 |
rows=getattr(self,'defaultrows',6) |
else: |
else: |
rows=6 |
rows=getattr(self,'defaultrows',6) |
|
|
if REQUEST.cookies.has_key("ImageViewerCols"): |
if REQUEST.cookies.has_key("ImageViewerCols"): |
#print "COLS",REQUEST.cookies["ImageViewerCols"] |
#print "COLS",REQUEST.cookies["ImageViewerCols"] |
cols=int(REQUEST.cookies["ImageViewerCols"]) |
cols=int(REQUEST.cookies["ImageViewerCols"]) |
else: |
else: |
cols=2 |
cols=getattr(self,'defaultcols',3) |
|
|
|
|
idsnumber=len(self.show_thumbs()) |
idsnumber=len(self.show_thumbs()) |
if rows: |
if rows: |
if cols*rows >idsnumber: |
if cols*rows >idsnumber: |
rows=int(idsnumber/cols)+1 |
rows=int(idsnumber/cols)+1 |
|
|
#print cols,rows |
if showall is None: |
|
showall=self.REQUEST.SESSION.get('showall', 'No') |
if showall=='yes': |
if showall=='yes': |
rows=int(idsnumber/cols)+1 |
rows=int(idsnumber/cols)+1 |
|
|
Line 1360 class ImageCollection(Folder, Persistent
|
Line 1481 class ImageCollection(Folder, Persistent
|
"""Ausgabe anzahl""" |
"""Ausgabe anzahl""" |
|
|
idsAll=self.show_thumbs() |
idsAll=self.show_thumbs() |
if len(idsAll)==0: #keine Einträge |
if len(idsAll)==0: #keine Eintraege |
return 0 |
return 0 |
if self.REQUEST.SESSION.has_key("filename") and not (showall=="yes"): |
if self.REQUEST.SESSION.has_key("filename") and not (showall=="yes"): |
filename=self.REQUEST.SESSION["filename"] |
filename=self.REQUEST.SESSION["filename"] |
Line 1478 class ImageCollection(Folder, Persistent
|
Line 1599 class ImageCollection(Folder, Persistent
|
|
|
|
|
security.declareProtected('View','index_html') |
security.declareProtected('View','index_html') |
def index_html(self,fn=None): |
def index_html(self,fn=None,generic=None): |
"""main template collection""" |
"""main template collection""" |
|
|
if fn: |
if fn: |
Line 1495 class ImageCollection(Folder, Persistent
|
Line 1616 class ImageCollection(Folder, Persistent
|
self.REQUEST.SESSION['filenames']=ret |
self.REQUEST.SESSION['filenames']=ret |
#self.REQUEST.SESSION['filenamesIds']=fnIds |
#self.REQUEST.SESSION['filenamesIds']=fnIds |
|
|
|
overview=self.ZopeFind(self,obj_ids=['overview_selected.html']) |
|
|
|
if overview and (generic is None): |
|
return overview[0][1]() |
|
else: |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','overview_selected.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','overview_selected.zpt')).__of__(self) |
return pt() |
return pt() |
|
|
Line 1513 class ImageCollection(Folder, Persistent
|
Line 1639 class ImageCollection(Folder, Persistent
|
|
|
|
|
overview=self.ZopeFind(self,obj_ids=['overview.html']) |
overview=self.ZopeFind(self,obj_ids=['overview.html']) |
if overview: |
if overview and (generic is None): |
return overview[0][1]() |
return overview[0][1]() |
|
elif hasattr(self,'templates'): |
|
pt=self.templates.imgcoll_main.__of__(self) |
|
return pt() |
else: |
else: |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','overview.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','overview.zpt')).__of__(self) |
return pt() |
return pt() |
|
|
|
|
def manage_AddImageCollectionForm(self): |
def manage_AddImageCollectionForm(self): |
"""Nothing yet""" |
"""Nothing yet""" |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','AddImageCollectionForm.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','AddImageCollectionForm.zpt')).__of__(self) |
Line 1539 class ImageCollectionMD(ImageCollection,
|
Line 1669 class ImageCollectionMD(ImageCollection,
|
meta_type="ImageCollection MD" |
meta_type="ImageCollection MD" |
#scalerPath="http://127.0.0.1:18080/digitallibrary/servlet/Scaler/?fn=" |
#scalerPath="http://127.0.0.1:18080/digitallibrary/servlet/Scaler/?fn=" |
scalerPath="http://nausikaa2.rz-berlin.mpg.de/digitallibrary/servlet/Scaler/?fn=" |
scalerPath="http://nausikaa2.rz-berlin.mpg.de/digitallibrary/servlet/Scaler/?fn=" |
|
rightsQueryDefault="SELECT accessibility from vision_main where id_image=(SELECT id from vision_images where filename ~ '%s*' )" |
|
rightsQueryFieldDefault="accessibility" |
|
|
manage_options=ImageCollection.manage_options+( |
manage_options=ImageCollection.manage_options+( |
{'label':'ZSQLExtend','action':'changeZSQLExtendForm'}, |
{'label':'ZSQLExtend','action':'changeZSQLExtendForm'}, |
|
{'label':'Change Rights Query','action':'changeRightsQueryForm'}, |
) |
) |
|
|
try: |
try: |
Line 1548 class ImageCollectionMD(ImageCollection,
|
Line 1682 class ImageCollectionMD(ImageCollection,
|
except: |
except: |
pass |
pass |
|
|
|
def changeRightsQueryForm(self): |
|
"""change Rights Query""" |
|
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','ChangeRightsQueryForm.zpt')).__of__(self) |
|
return pt() |
|
|
|
def changeRightsQuery(self,rightsQuery,rightsQueryField,RESPONSE=None): |
|
"""change Rightsquery""" |
|
|
|
self.rightsQuery=rightsQuery |
|
self.rightsQueryField=rightsQueryField |
|
|
|
if RESPONSE is not None: |
|
RESPONSE.redirect('manage_main') |
|
|
|
|
|
|
|
def getRightsQuery(self): |
|
"""get Query""" |
|
return getattr(self,'rightsQuery',self.rightsQueryDefault) |
|
|
|
def getRightsQueryField(self): |
|
"""get Query Fiueld""" |
|
return getattr(self,'rightsQueryField',self.rightsQueryFieldDefault) |
|
|
|
|
|
|
def setGenericSearchStringForm(self): |
def setGenericSearchStringForm(self): |
"""form setze generischen search string fuer MD""" |
"""form setze generischen search string fuer MD""" |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','setGenericSearchStringForm.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','setGenericSearchStringForm.zpt')).__of__(self) |
Line 1562 class ImageCollectionMD(ImageCollection,
|
Line 1722 class ImageCollectionMD(ImageCollection,
|
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','thumbListMD.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','thumbListMD.zpt')).__of__(self) |
return pt() |
return pt() |
|
|
|
def getRights(self,id): |
|
"""get the rights from a database""" |
|
#print self.rightsQuery%id |
|
results=self.ZSQLSimpleSearch(self.getRightsQuery()%id) |
|
if results: |
|
result = getattr(results[0],self.getRightsQueryField()) |
|
else: |
|
result = '' |
|
return result |
|
|
|
|
def manage_AddImageCollectionMDForm(self): |
def manage_AddImageCollectionMDForm(self): |
"""Nothing yet""" |
"""Nothing yet""" |