diff --git a/addons/project/project.py b/addons/project/project.py
index a83962edc5c..7936a20ed01 100644
--- a/addons/project/project.py
+++ b/addons/project/project.py
@@ -686,12 +686,13 @@ class task(osv.osv):
search_domain = []
project_id = self._resolve_project_id_from_context(cr, uid, context=context)
if project_id:
- search_domain += ['|', ('project_ids', '=', project_id)]
- search_domain += [('id', 'in', ids)]
+ search_domain += ['|', ('project_ids', '=', project_id), ('id', 'in', ids)]
+ else:
+ search_domain += ['|', ('id', 'in', ids), ('case_default', '=', True)]
stage_ids = stage_obj._search(cr, uid, search_domain, order=order, access_rights_uid=access_rights_uid, context=context)
result = stage_obj.name_get(cr, access_rights_uid, stage_ids, context=context)
# restore order of the search
- result.sort(lambda x,y: cmp(stage_ids.index(x[0]), stage_ids.index(y[0])))
+ result.sort(lambda x, y: cmp(stage_ids.index(x[0]), stage_ids.index(y[0])))
fold = {}
for stage in stage_obj.browse(cr, access_rights_uid, stage_ids, context=context):
diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py
index bc9e879b901..a15f94ed8a5 100644
--- a/addons/project_issue/project_issue.py
+++ b/addons/project_issue/project_issue.py
@@ -113,13 +113,14 @@ class project_issue(osv.Model):
search_domain = []
project_id = self._resolve_project_id_from_context(cr, uid, context=context)
if project_id:
- search_domain += ['|', ('project_ids', '=', project_id)]
- search_domain += [('id', 'in', ids)]
+ search_domain += ['|', ('project_ids', '=', project_id), ('id', 'in', ids)]
+ else:
+ search_domain += ['|', ('id', 'in', ids), ('case_default', '=', True)]
# perform search
stage_ids = stage_obj._search(cr, uid, search_domain, order=order, access_rights_uid=access_rights_uid, context=context)
result = stage_obj.name_get(cr, access_rights_uid, stage_ids, context=context)
# restore order of the search
- result.sort(lambda x,y: cmp(stage_ids.index(x[0]), stage_ids.index(y[0])))
+ result.sort(lambda x, y: cmp(stage_ids.index(x[0]), stage_ids.index(y[0])))
fold = {}
for stage in stage_obj.browse(cr, access_rights_uid, stage_ids, context=context):
diff --git a/addons/project_issue/project_issue_view.xml b/addons/project_issue/project_issue_view.xml
index ee6b123cdfa..9457ce48485 100644
--- a/addons/project_issue/project_issue_view.xml
+++ b/addons/project_issue/project_issue_view.xml
@@ -194,7 +194,7 @@
project.issue
-
+