version 1.8, 2005/10/26 08:35:53
|
version 1.13, 2009/04/16 15:40:42
|
Line 32 from Ft.Xml import EMPTY_NAMESPACE
|
Line 32 from Ft.Xml import EMPTY_NAMESPACE
|
|
|
import Ft.Xml.XPath |
import Ft.Xml.XPath |
import cStringIO |
import cStringIO |
import zLOG |
import logging |
|
|
try: |
try: |
from psycopg import libpq |
from psycopg import libpq |
Line 48 import urllib
|
Line 48 import urllib
|
import xml.dom.minidom |
import xml.dom.minidom |
import ECHO_helpers |
import ECHO_helpers |
from ECHO_helpers import * |
from ECHO_helpers import * |
from ECHO_language import * |
|
|
|
|
|
class ECHO_movie(Folder,Persistent,ECHO_basis): |
class ECHO_movie(Folder,Persistent,ECHO_basis): |
"""ECHO Ressource""" |
"""ECHO Ressource""" |
Line 289 class ECHO_movie(Folder,Persistent,ECHO_
|
Line 287 class ECHO_movie(Folder,Persistent,ECHO_
|
def copyTitleToInfoXML(self,RESPONSE=None): |
def copyTitleToInfoXML(self,RESPONSE=None): |
"""copy title from the resource""" |
"""copy title from the resource""" |
presentationXML=readFieldFromXML(self.metalink,'texttool','presentation') |
presentationXML=readFieldFromXML(self.metalink,'texttool','presentation') |
resourcepath=readFieldFromXML(self.metalink,'resource','archive-path') |
resourcepath=readFieldFromXML_xpath(self.metalink,'//resource/archive-path') |
if (not presentationXML) or (not resourcepath): |
if (not presentationXML) or (not resourcepath): |
if RESPONSE: |
if RESPONSE: |
RESPONSE.write("Error: %s\n"%self.getId()) |
RESPONSE.write("Error: %s\n"%self.getId()) |
Line 561 class ECHO_movie(Folder,Persistent,ECHO_
|
Line 559 class ECHO_movie(Folder,Persistent,ECHO_
|
if RESPONSE is not None: |
if RESPONSE is not None: |
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |
|
|
|
def getMDValue(self,fieldNameTest,empty=None,generic=None): |
|
"""get md values""" |
|
#TODO: cache mappinghash |
|
|
|
fieldName=None |
|
if generic: |
|
ct=self.contentType.replace(" ","_").lower() |
|
|
|
#caching |
|
if not hasattr(self,'_v_mapHash'): #noch keine cachevariable |
|
self._v_mapHash={} |
|
|
|
tmp=self._v_mapHash.get(ct,None) |
|
if tmp: #teste ob type schon existiert |
|
fieldName=tmp.get(fieldNameTest,None) |
|
else: |
|
self._v_mapHash[ct]={} |
|
|
|
#noch nicht gecached |
|
if not fieldName and hasattr(self.standardMD,ct): |
|
fieldName=getattr(self.standardMD,ct).generateMappingHash()[fieldNameTest][0] |
|
self._v_mapHash[ct][fieldNameTest]=fieldName |
|
|
def getMDValue(self,fieldName,empty=None): |
|
if not empty: |
if not empty: |
return self.metaDataHash.get(fieldName,'!!NOT USED HERE in Type: %s'%self.contentType) |
return self.metaDataHash.get(fieldName,'!!NOT USED HERE in Type: %s'%self.contentType) |
|
|
Line 655 class ECHO_movie(Folder,Persistent,ECHO_
|
Line 674 class ECHO_movie(Folder,Persistent,ECHO_
|
|
|
|
|
|
|
def getFieldValue(self,field): |
|
"""get value""" |
|
|
|
try: |
|
|
|
ret=self.metaDataHash[field] |
|
if ret == "": |
|
return None |
|
else: |
|
|
|
return ret |
|
except: |
|
return None |
|
|
|
def getMetaDataHash(self): |
def getMetaDataHash(self): |
"""md hash""" |
"""md hash""" |
return self.metaDataHash |
return self.metaDataHash |
Line 685 class ECHO_movie(Folder,Persistent,ECHO_
|
Line 690 class ECHO_movie(Folder,Persistent,ECHO_
|
"""copys metadatafields to the object""" |
"""copys metadatafields to the object""" |
fields=['author','title','year'] |
fields=['author','title','year'] |
for field in fields: |
for field in fields: |
setattr(self,'MD_'+field,self.getFieldValue(field)) |
setattr(self,'MD_'+field,self.getMDValue(field)) |
|
|
|
|
def findLabelsFromMapping(self,referenceType): |
def findLabelsFromMapping(self,referenceType): |