version 1.3, 2004/07/09 16:55:19
|
version 1.8, 2007/01/19 17:16:25
|
Line 8 from Globals import InitializeClass
|
Line 8 from Globals import InitializeClass
|
from Globals import Persistent, package_home |
from Globals import Persistent, package_home |
from Products.PageTemplates.PageTemplateFile import PageTemplateFile |
from Products.PageTemplates.PageTemplateFile import PageTemplateFile |
from Products.PageTemplates.PageTemplate import PageTemplate |
from Products.PageTemplates.PageTemplate import PageTemplate |
|
from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate |
|
from OFS.Folder import Folder |
from OFS.SimpleItem import SimpleItem |
from OFS.SimpleItem import SimpleItem |
#from pyPgSQL import PgSQL |
try: |
|
import psycopg2 as PgSQL |
|
except: |
|
try: |
import psycopg as PgSQL |
import psycopg as PgSQL |
|
except: |
|
from pyPgSQL import PgSQL |
|
|
import re |
import re |
import os |
import os |
|
|
MAXHITS = 1000 |
MAXHITS = 1000 |
|
|
class OSAS_search(SimpleItem): |
class OSAS_search(Folder): |
"""Object for global metadata search""" |
"""Object for global metadata search""" |
|
|
meta_type="OSAS_search" |
meta_type="OSAS_search" |
|
|
|
manage_options=Folder.manage_options+( |
|
{'label':'Main config','action':'manage_ChangeOSAS_searchForm'}, |
|
) |
|
|
|
|
def __init__(self,id,title,dsn=None): |
def __init__(self,id,title,dsn=None): |
Line 186 class OSAS_search(SimpleItem):
|
Line 196 class OSAS_search(SimpleItem):
|
if restypefilter: |
if restypefilter: |
res = [] |
res = [] |
for r in results: |
for r in results: |
if r.type in restypefilter: |
if r.type == restypefilter: |
res.append(r) |
res.append(r) |
else: |
else: |
res = results |
res = results |
# filter on count |
|
resgroup = res[start:end] |
|
# new total count (because of filter) |
# new total count (because of filter) |
rescnt = len(res) |
rescnt = len(res) |
|
# filter on count |
|
resgroup = res[start:end] |
|
|
return (resgroup, rescnt) |
return (resgroup, rescnt) |
|
|
Line 236 class OSAS_search(SimpleItem):
|
Line 246 class OSAS_search(SimpleItem):
|
|
|
(resgroup, nres) = self.filterResults(self.REQUEST.SESSION['results'], sres, lres, restypefilter) |
(resgroup, nres) = self.filterResults(self.REQUEST.SESSION['results'], sres, lres, restypefilter) |
lres = min(lres, nres) |
lres = min(lres, nres) |
|
sres = min(sres, nres) |
self.REQUEST.SESSION['resultgroup'] = resgroup |
self.REQUEST.SESSION['resultgroup'] = resgroup |
self.REQUEST.SESSION['res_indexes'] = (sres+1, lres, nres, int(count)) |
self.REQUEST.SESSION['res_indexes'] = (sres+1, lres, nres, int(count)) |
self.REQUEST.SESSION['res_type_filter'] = restypefilter |
self.REQUEST.SESSION['res_type_filter'] = restypefilter |
Line 318 class OSAS_search(SimpleItem):
|
Line 329 class OSAS_search(SimpleItem):
|
return self.search(start=first, count=count) |
return self.search(start=first, count=count) |
|
|
|
|
|
def manage_ChangeOSAS_searchForm(self): |
|
"""create Search form""" |
|
pt=PageTemplateFile(os.path.join(package_home(globals()), "zpt/ChangeOSAS_search.zpt")).__of__(self) |
|
return pt() |
|
|
|
def manage_ChangeOSAS_search(self,id,title=None,dsn=None,RESPONSE=None): |
|
"""add the OSAS_root""" |
|
self.id = id |
|
self.title = title |
|
self.dsn = dsn |
|
if RESPONSE is not None: |
|
RESPONSE.redirect('manage_main') |
|
|
|
|
def manage_AddOSAS_searchForm(self): |
def manage_AddOSAS_searchForm(self): |
"""create Search form""" |
"""create Search form""" |
Line 590 def storageURL(filename):
|
Line 614 def storageURL(filename):
|
url = "http://content.mpiwg-berlin.mpg.de/mpistorage/storage/ShowOnline/index_html?path=%s"%r.group(1) |
url = "http://content.mpiwg-berlin.mpg.de/mpistorage/storage/ShowOnline/index_html?path=%s"%r.group(1) |
name = "Storage System" |
name = "Storage System" |
|
|
|
elif filename.startswith('http://'): |
|
#print "URLFORFILE: url ", filename |
|
url = filename |
|
name = "Online Database" |
|
|
if name and url: |
if name and url: |
return (url, name) |
return (url, name) |
|
|