| # Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. |
| # License: GNU General Public License v3. See license.txt |
| |
| from __future__ import unicode_literals |
| import webnotes |
| |
| for_doctype = { |
| "Support Ticket": {"status":"Open"}, |
| "Customer Issue": {"status":"Open"}, |
| "Task": {"status":"Open"}, |
| "Lead": {"status":"Open"}, |
| "Contact": {"status":"Open"}, |
| "Opportunity": {"docstatus":0}, |
| "Quotation": {"docstatus":0}, |
| "Sales Order": {"docstatus":0}, |
| "Journal Voucher": {"docstatus":0}, |
| "Sales Invoice": {"docstatus":0}, |
| "Purchase Invoice": {"docstatus":0}, |
| "Leave Application": {"status":"Open"}, |
| "Expense Claim": {"approval_status":"Draft"}, |
| "Job Applicant": {"status":"Open"}, |
| "Purchase Receipt": {"docstatus":0}, |
| "Delivery Note": {"docstatus":0}, |
| "Stock Entry": {"docstatus":0}, |
| "Material Request": {"docstatus":0}, |
| "Purchase Order": {"docstatus":0}, |
| "Production Order": {"docstatus":0}, |
| "BOM": {"docstatus":0}, |
| "Timesheet": {"docstatus":0}, |
| "Time Log": {"status":"Draft"}, |
| "Time Log Batch": {"status":"Draft"}, |
| } |
| |
| def get_things_todo(): |
| """Returns a count of incomplete todos""" |
| incomplete_todos = webnotes.conn.sql("""\ |
| SELECT COUNT(*) FROM `tabToDo` |
| WHERE IFNULL(checked, 0) = 0 |
| AND (owner = %s or assigned_by=%s)""", (webnotes.session.user, webnotes.session.user)) |
| return incomplete_todos[0][0] |
| |
| def get_todays_events(): |
| """Returns a count of todays events in calendar""" |
| from core.doctype.event.event import get_events |
| from webnotes.utils import nowdate |
| today = nowdate() |
| return len(get_events(today, today)) |
| |
| def get_unread_messages(): |
| "returns unread (docstatus-0 messages for a user)" |
| return webnotes.conn.sql("""\ |
| SELECT count(*) |
| FROM `tabComment` |
| WHERE comment_doctype IN ('My Company', 'Message') |
| AND comment_docname = %s |
| AND ifnull(docstatus,0)=0 |
| """, webnotes.user.name)[0][0] |
| |
| for_module = { |
| "To Do": get_things_todo, |
| "Calendar": get_todays_events, |
| "Messages": get_unread_messages |
| } |