diff options
| author | Ysa (Open ERP) <ysa@tinyerp.co.in> | 2010-05-10 17:08:45 +0530 |
|---|---|---|
| committer | Ysa (Open ERP) <ysa@tinyerp.co.in> | 2010-05-10 17:08:45 +0530 |
| commit | 82a466922cb860abff07c934db924962f31d2e84 (patch) | |
| tree | 201bf1fa281e73aba4ffc54c494533f63057b4ba /addons/document/document_directory.py | |
| parent | 9195f78dcadcebe442bf70ed2a954ae32471dca7 (diff) | |
| parent | ff5c9032fc6645d3c30cd5cbfd91a0a0e8393db0 (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.py | 48 |
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: |
