version 1.33, 2006/06/14 16:13:53
|
version 1.36, 2010/02/15 19:09:00
|
Line 11 from Products.PageTemplates.PageTemplate
|
Line 11 from Products.PageTemplates.PageTemplate
|
from Products.PageTemplates.PageTemplate import PageTemplate |
from Products.PageTemplates.PageTemplate import PageTemplate |
from AccessControl import ClassSecurityInfo |
from AccessControl import ClassSecurityInfo |
from Globals import InitializeClass,package_home |
from Globals import InitializeClass,package_home |
|
import zLOG |
|
|
class OSAS_ShowOnline(SimpleItem): |
class OSAS_ShowOnline(SimpleItem): |
security=ClassSecurityInfo() |
security=ClassSecurityInfo() |
Line 58 class OSAS_ShowOnline(SimpleItem):
|
Line 59 class OSAS_ShowOnline(SimpleItem):
|
return getMetafile(path).decode('utf-8') |
return getMetafile(path).decode('utf-8') |
|
|
def toggle_view(self,path,file): |
def toggle_view(self,path,file): |
"""Oeffnen bzw. schließen der Subfolders""" |
"""Oeffnen bzw. schliessen der Subfolders""" |
self.tree(path).toggle(path,file) |
self.tree(path).toggle(path,file) |
return self.REQUEST.RESPONSE.redirect(self.REQUEST['URL1']+"?path="+path) |
return self.REQUEST.RESPONSE.redirect(self.REQUEST['URL1']+"?path="+path) |
|
|
Line 79 def manage_AddOSAS_ShowOnline(self,id,RE
|
Line 80 def manage_AddOSAS_ShowOnline(self,id,RE
|
|
|
|
|
class OSAS_StoreOnline(SimpleItem): |
class OSAS_StoreOnline(SimpleItem): |
"""Webfrontend für das Storagesystem""" |
"""Webfrontend fuer das Storagesystem""" |
security=ClassSecurityInfo() |
security=ClassSecurityInfo() |
|
|
def __init__(self,id): |
def __init__(self,id): |
Line 108 class OSAS_StoreOnline(SimpleItem):
|
Line 109 class OSAS_StoreOnline(SimpleItem):
|
"""rescale thumbs of images in path""" |
"""rescale thumbs of images in path""" |
|
|
dlpath = re.sub('/mpiwg/online/','',self.REQUEST['path']) |
dlpath = re.sub('/mpiwg/online/','',self.REQUEST['path']) |
os.popen("ssh archive@nausikaa2.rz-berlin.mpg.de /usr/local/mpiwg/scripts/scaleomat -src=/mpiwg/online -dest=/mpiwg/temp/online/scaled/thumb -dir=%s -scaleto=100 -sync >> /tmp/sc.out &"%dlpath ) |
ret=os.popen("ssh archive@nausikaa2.rz-berlin.mpg.de /usr/local/mpiwg/scripts/scaleomat -src=/mpiwg/online -dest=/mpiwg/temp/online/scaled/thumb -dir=%s -scaleto=100 -sync >> /tmp/sc.out &"%dlpath ) |
#os.popen("ssh archive@nausikaa2.rz-berlin.mpg.de /usr/local/mpiwg/scripts/scaleomat.pl %s /mpiwg/temp/online/scaled/thumb 90 --replace >> /tmp/sc.out &"% re.sub('/mpiwg/online/','',self.REQUEST['path'])) |
#os.popen("ssh archive@nausikaa2.rz-berlin.mpg.de /usr/local/mpiwg/scripts/scaleomat.pl %s /mpiwg/temp/online/scaled/thumb 90 --replace >> /tmp/sc.out &"% re.sub('/mpiwg/online/','',self.REQUEST['path'])) |
|
zLOG.LOG("OSAS_StoreOnline (rescleThumbs)",zLOG.INFO,ret.read()) |
|
zLOG.LOG("OSAS_StoreOnline (rescleThumbs)",zLOG.INFO,"ssh archive@nausikaa2.rz-berlin.mpg.de /usr/local/mpiwg/scripts/scaleomat -src=/mpiwg/online -dest=/mpiwg/temp/online/scaled/thumb -dir=%s -scaleto=100 -sync >> /tmp/sc.out &"%dlpath) |
self.REQUEST.SESSION['path']=self.REQUEST['path'] |
self.REQUEST.SESSION['path']=self.REQUEST['path'] |
#return self.REQUEST.RESPONSE.redirect(self.REQUEST['URL1']) |
#return self.REQUEST.RESPONSE.redirect(self.REQUEST['URL1']) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','OSAS_scaled.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','OSAS_scaled.zpt')).__of__(self) |
Line 147 class OSAS_StoreOnline(SimpleItem):
|
Line 149 class OSAS_StoreOnline(SimpleItem):
|
return getMetafile(path).decode('utf-8') |
return getMetafile(path).decode('utf-8') |
|
|
def toggle_view(self,path,file): |
def toggle_view(self,path,file): |
"""Oeffnen bzw. schließen der Subfolders""" |
"""Oeffnen bzw. schliessen der Subfolders""" |
self.tree(path).toggle(path,file) |
self.tree(path).toggle(path,file) |
return self.REQUEST.RESPONSE.redirect(self.REQUEST['URL1']+"?path="+path) |
return self.REQUEST.RESPONSE.redirect(self.REQUEST['URL1']+"?path="+path) |
|
|
Line 341 import tempfile
|
Line 343 import tempfile
|
tempfile.tempdir="/var/tmp" |
tempfile.tempdir="/var/tmp" |
|
|
exclusion=[".HSResource","lost+found","Network Trash Folder","TheFindByContentFolder","TheVolumeSettingsFolder"] |
exclusion=[".HSResource","lost+found","Network Trash Folder","TheFindByContentFolder","TheVolumeSettingsFolder"] |
|
|
class fsentry(Implicit, Persistent, RoleManager): |
class fsentry(Implicit, Persistent, RoleManager): |
"""File entry class""" |
"""File entry class""" |
path = "" |
path = "" |
Line 571 class filesystem2(Implicit, Persistent,
|
Line 574 class filesystem2(Implicit, Persistent,
|
def loadfs(self,start): |
def loadfs(self,start): |
"""analyse filesystem""" |
"""analyse filesystem""" |
for line in self.getfs(start): |
for line in self.getfs(start): |
|
logging.debug("loadfs: reading %s"%repr(line)) |
g=re.search(r"(.*/)(.*)\n",line) |
g=re.search(r"(.*/)(.*)\n",line) |
if not g==None: |
if not g==None: |
try: |
try: |
Line 579 class filesystem2(Implicit, Persistent,
|
Line 582 class filesystem2(Implicit, Persistent,
|
file=g.group(2) |
file=g.group(2) |
except: |
except: |
"""nothing""" |
"""nothing""" |
|
logging.debug("loadfs: file=%s"%repr(file)) |
|
#if file[0] in ('.',':'): |
|
# skip dot-files |
|
# continue |
if self.node.has_key(path): |
if self.node.has_key(path): |
elements=self.node[path] |
elements=self.node[path] |
elements.append(file) |
elements.append(file) |
Line 649 class browse(Implicit, Persistent, RoleM
|
Line 656 class browse(Implicit, Persistent, RoleM
|
def filterExcluded(self,dir): |
def filterExcluded(self,dir): |
ret=[] |
ret=[] |
for item in dir: |
for item in dir: |
if not item in exclusion: |
if not ((item in exclusion) or (item[0] in ('.',':'))): |
ret.append(item) |
ret.append(item) |
return ret |
return ret |
|
|
Line 1128 def changeName(path):
|
Line 1135 def changeName(path):
|
return "digifiles/"+re.search(r"(.*)/mpiwg/production/docuserver/(.*)",path).group(2) |
return "digifiles/"+re.search(r"(.*)/mpiwg/production/docuserver/(.*)",path).group(2) |
else: |
else: |
return temp2.group(2) |
return temp2.group(2) |
except: # hack - im archivbereich keine online darstellung gibt jetzt ein no zurück. |
except: # hack - im archivbereich keine online darstellung gibt jetzt ein no zurueck. |
return "NO" |
return "NO" |
|
|
|
|
Line 1246 def getFile(self):
|
Line 1253 def getFile(self):
|
return self.REQUEST.SESSION['something'] |
return self.REQUEST.SESSION['something'] |
|
|
def isFolder(self,path): |
def isFolder(self,path): |
"""returns TRUE, wenn path ein Folder ist in den weitere Objekte Folder oder Dokumente gelegt werden dürfen""" |
"""returns TRUE, wenn path ein Folder ist in den weitere Objekte Folder oder Dokumente gelegt werden duerfen""" |
return not isScannedDocument(self,path) # vorläufig sind alle Documente die keine scanned documente sind folder. |
return not isScannedDocument(self,path) # vorlaeufig sind alle Documente die keine scanned documente sind folder. |
|
|
def isScannedDocument(self,path): |
def isScannedDocument(self,path): |
"""returns TRUE, wenn path der Stammordner eines gescannten Documents ist""" |
"""returns TRUE, wenn path der Stammordner eines gescannten Documents ist""" |
try: |
try: |
f = file(path+"/index.meta","r") |
f = file(path+"/index.meta","r") |
|
logging.debug("isscanneddocument: file=%s"%f) |
lines = f.read() |
lines = f.read() |
|
|
try: |
try: |
dom = xml.dom.minidom.parseString(lines) |
dom = xml.dom.minidom.parseString(lines) |
content_type=getText(dom.getElementsByTagName("content-type")[0].childNodes) |
content_type=getText(dom.getElementsByTagName("content-type")[0].childNodes) |
|
logging.debug("isscanneddocument: content_type=%s"%content_type) |
if (content_type=="scanned-document") or (content_type=="scanned document") or (content_type=="fulltext document"): |
if (content_type=="scanned-document") or (content_type=="scanned document") or (content_type=="fulltext document"): |
return 1 |
return 1 |
else: |
else: |