diff --git a/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java b/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java index 10906fbd0..ce0f20ea3 100644 --- a/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java +++ b/astrid/src/com/todoroo/astrid/activity/TaskListActivity.java @@ -694,7 +694,7 @@ public class TaskListActivity extends AstridActivity implements MainMenuListener boolean memberFound = false; if (TextUtils.isEmpty(members)) - memberFound = td.getValue(TagData.USER_ID).equals(assignedId) || tagMetadataDao.memberOfTagData(assignedEmail, assignedId); + memberFound = td.getValue(TagData.USER_ID).equals(assignedId) || tagMetadataDao.memberOfTagData(assignedEmail, td.getUuid(), assignedId); else { JSONObject user = new JSONObject(); JSONArray membersArray = null; diff --git a/astrid/src/com/todoroo/astrid/dao/TagMetadataDao.java b/astrid/src/com/todoroo/astrid/dao/TagMetadataDao.java index 50fdb3bac..3ab29f01d 100644 --- a/astrid/src/com/todoroo/astrid/dao/TagMetadataDao.java +++ b/astrid/src/com/todoroo/astrid/dao/TagMetadataDao.java @@ -189,19 +189,19 @@ public class TagMetadataDao extends DatabaseDao { } } - public boolean memberOfTagData(String email, String id) { + public boolean memberOfTagData(String email, String tagId, String memberId) { Criterion criterion; - if (!RemoteModel.isUuidEmpty(id) && !TextUtils.isEmpty(email)) - criterion = Criterion.or(TagMemberMetadata.USER_UUID.eq(email), TagMemberMetadata.USER_UUID.eq(id)); - else if (!RemoteModel.isUuidEmpty(id)) - criterion = TagMemberMetadata.USER_UUID.eq(id); + if (!RemoteModel.isUuidEmpty(memberId) && !TextUtils.isEmpty(email)) + criterion = Criterion.or(TagMemberMetadata.USER_UUID.eq(email), TagMemberMetadata.USER_UUID.eq(memberId)); + else if (!RemoteModel.isUuidEmpty(memberId)) + criterion = TagMemberMetadata.USER_UUID.eq(memberId); else if (!TextUtils.isEmpty(email)) criterion = TagMemberMetadata.USER_UUID.eq(email); else return false; TodorooCursor count = query(Query.select(TagMetadata.ID).where( - Criterion.and(TagMetadataCriteria.withKey(TagMemberMetadata.KEY), criterion))); + Criterion.and(TagMetadataCriteria.withKey(TagMemberMetadata.KEY), TagMetadata.TAG_UUID.eq(tagId), criterion))); try { return count.getCount() > 0; } finally {