You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

53 lines
1.5 KiB

  1. """assign/unassign to ToDo"""
  2. import webnotes
  3. @webnotes.whitelist()
  4. def get():
  5. """get assigned to"""
  6. return webnotes.conn.sql("""select owner from `tabToDo Item`
  7. where reference_type=%(doctype)s and reference_name=%(name)s
  8. order by modified desc limit 5""", webnotes.form_dict, as_dict=1)
  9. @webnotes.whitelist()
  10. def add():
  11. """add in someone's to do list"""
  12. if webnotes.conn.sql("""select owner from `tabToDo Item`
  13. where reference_type=%(doctype)s and reference_name=%(name)s
  14. and owner=%(assign_to)s""", webnotes.form_dict):
  15. webnotes.msgprint("Already in todo")
  16. return
  17. else:
  18. from webnotes.model.doc import Document
  19. from webnotes.utils import nowdate
  20. d = Document("ToDo Item")
  21. d.owner = webnotes.form_dict['assign_to']
  22. d.reference_type = webnotes.form_dict['doctype']
  23. d.reference_name = webnotes.form_dict['name']
  24. d.description = webnotes.form_dict['description']
  25. d.priority = webnotes.form_dict.get('priority', 'Medium')
  26. d.date = webnotes.form_dict.get('date', nowdate())
  27. d.save(1)
  28. # update feeed
  29. try:
  30. import home
  31. from webnotes.utils import get_full_name
  32. home.make_feed('Assignment', d.reference_type, d.reference_name, webnotes.session['user'],
  33. '[%s] Assigned to %s' % (d.priority, get_full_name(d.owner)), '#C78F58')
  34. except ImportError, e:
  35. pass
  36. return get()
  37. @webnotes.whitelist()
  38. def remove():
  39. """remove from todo"""
  40. webnotes.conn.sql("""delete from `tabToDo Item`
  41. where reference_type=%(doctype)s and reference_name=%(name)s
  42. and owner=%(assign_to)s""", webnotes.form_dict)
  43. return get()