taskapp/views/task.py
changeset 76 00a41fbf4958
parent 75 fa59955a340b
child 89 1cc03941ed5d
equal deleted inserted replaced
75:fa59955a340b 76:00a41fbf4958
   126     is_guest = True if not user.is_authenticated() else False
   126     is_guest = True if not user.is_authenticated() else False
   127     
   127     
   128     if (not is_guest) and user in task.mentors.all():
   128     if (not is_guest) and user in task.mentors.all():
   129         
   129         
   130         ## now iam going for a brute force method
   130         ## now iam going for a brute force method
   131         user_list = list(User.objects.all())
   131         user_list = list(User.objects.filter(is_active=True))
   132         for mentor in task.mentors.all():
   132         for mentor in task.mentors.all():
   133             user_list.remove(mentor)
   133             user_list.remove(mentor)
   134             
   134             
   135         for a_user in task.claimed_users.all():
   135         for a_user in task.claimed_users.all():
       
   136             user_list.remove(a_user)
       
   137 
       
   138         for a_user in task.assigned_users.all():
   136             user_list.remove(a_user)
   139             user_list.remove(a_user)
   137             
   140             
   138         non_mentors = ((_.id,_.username) for _ in user_list)
   141         non_mentors = ((_.id,_.username) for _ in user_list)
   139         ## code till must be made elegant and not brute force like above
   142         ## code till must be made elegant and not brute force like above
   140         
   143         
   194     task = getTask(tid)
   197     task = getTask(tid)
   195     claims = Claim.objects.filter(task=task)
   198     claims = Claim.objects.filter(task=task)
   196 
   199 
   197     mentors = task.mentors.all()
   200     mentors = task.mentors.all()
   198     claimed_users = task.claimed_users.all()
   201     claimed_users = task.claimed_users.all()
       
   202     assigned_users = task.assigned_users.all()
   199     
   203     
   200     is_guest = True if not user.is_authenticated() else False
   204     is_guest = True if not user.is_authenticated() else False
   201     is_mentor = True if user in mentors else False
   205     is_mentor = True if user in mentors else False
   202 
   206 
   203     task_claimable = True if task.status in ["OP", "WR"] else False
   207     task_claimable = True if task.status in ["OP", "WR"] else False
   204     user_can_claim = True if  task_claimable and not ( is_guest or is_mentor ) and ( user not in claimed_users )  else False
   208     user_can_claim = True if  task_claimable and not ( is_guest or is_mentor ) and ( user not in claimed_users ) and ( user not in assigned_users )  else False
   205     task_claimed = True if claimed_users else False
   209     task_claimed = True if claimed_users else False
   206     
   210     
   207     context = {'user':user,
   211     context = {'user':user,
   208                'is_mentor':is_mentor,
   212                'is_mentor':is_mentor,
   209                'task':task,
   213                'task':task,