summaryrefslogtreecommitdiff
path: root/addons/document/document_directory.py
diff options
context:
space:
mode:
authorYsa (Open ERP) <ysa@tinyerp.co.in>2010-05-10 17:08:45 +0530
committerYsa (Open ERP) <ysa@tinyerp.co.in>2010-05-10 17:08:45 +0530
commit82a466922cb860abff07c934db924962f31d2e84 (patch)
tree201bf1fa281e73aba4ffc54c494533f63057b4ba /addons/document/document_directory.py
parent9195f78dcadcebe442bf70ed2a954ae32471dca7 (diff)
parentff5c9032fc6645d3c30cd5cbfd91a0a0e8393db0 (diff)
[MERGE] Merge with lp:~openerp-dev/openobject-addons/trunk-dev-addons2
bzr revid: ysa@tinyerp.co.in-20100510113845-pv2tcn0g49mqtzd8
Diffstat (limited to 'addons/document/document_directory.py')
-rw-r--r--addons/document/document_directory.py48
1 files changed, 3 insertions, 45 deletions
diff --git a/addons/document/document_directory.py b/addons/document/document_directory.py
index d7e3c7df570..0461dcffb13 100644
--- a/addons/document/document_directory.py
+++ b/addons/document/document_directory.py
@@ -95,8 +95,7 @@ class document_directory(osv.osv):
'user_id': lambda self,cr,uid,ctx: uid,
'domain': lambda self,cr,uid,ctx: '[]',
'type': lambda *args: 'directory',
- 'ressource_id': lambda *a: 0,
- 'parent_id': _get_root_directory,
+ 'ressource_id': lambda *a: 0,
'storage_id': _get_def_storage,
}
_sql_constraints = [
@@ -202,52 +201,11 @@ class document_directory(osv.osv):
raise
- def _locate_child(self, cr,uid, root_id, uri,nparent, ncontext):
+ def _locate_child(self, cr, uid, root_id, uri,nparent, ncontext):
""" try to locate the node in uri,
Return a tuple (node_dir, remaining_path)
"""
- did = root_id
- duri = uri
- path = []
- context = ncontext.context
- while len(duri):
- nid = self.search(cr,uid,[('parent_id','=',did),('name','=',duri[0]),('type','=','directory')], context=context)
- if not nid:
- break
- if len(nid)>1:
- print "Duplicate dir? p= %d, n=\"%s\"" %(did,duri[0])
- path.append(duri[0])
- duri = duri[1:]
- did = nid[0]
- root_node = did and self.browse(cr,uid,did, context) or False
- return (nodes.node_dir(path, nparent,ncontext, root_node), duri)
-
-
- nid = self.search(cr,uid,[('parent_id','=',did),('name','=',duri[0]),('type','=','ressource')], context=context)
- if nid:
- if len(nid)>1:
- print "Duplicate dir? p= %d, n=\"%s\"" %(did,duri[0])
- path.append(duri[0])
- duri = duri[1:]
- did = nid[0]
- return nodes.node_res_dir(path, nparent,ncontext,self.browse(cr,uid,did, context))
-
- # Here, we must find the appropriate non-dir child..
- # Chech for files:
- fil_obj = self.pool.get('ir.attachment')
- nid = fil_obj.search(cr,uid,[('parent_id','=',did),('name','=',duri[0])],context=context)
- if nid:
- if len(duri)>1:
- # cannot treat child as a dir
- return None
- if len(nid)>1:
- print "Duplicate file?",did,duri[0]
- path.append(duri[0])
- return nodes.node_file(path,nparent,ncontext,fil_obj.browse(cr,uid,nid[0],context))
-
- print "nothing found:",did, duri
- #still, nothing found
- return None
+ return (nodes.node_database(context=ncontext), uri)
def old_code():
if not uri: