deleted unwanted control doctype and pages
diff --git a/home/doctype/company_control/__init__.py b/home/doctype/company_control/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/home/doctype/company_control/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/home/doctype/company_control/company_control.py b/home/doctype/company_control/company_control.py
deleted file mode 100644
index c18610b..0000000
--- a/home/doctype/company_control/company_control.py
+++ /dev/null
@@ -1,100 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-from webnotes.utils import cint, cstr
-from webnotes.model import db_exists
-from webnotes.model.doc import Document
-from webnotes.model.wrapper import copy_doclist
-from webnotes import session
-
-sql = webnotes.conn.sql
-
-
-
-class DocType:
- def __init__(self,d,dl):
- self.doc, self.doclist = d,dl
-
- # All roles of Role Master
- def get_all_roles(self):
- r_list=sql("select name from `tabRole` where name not in ('All','Guest','Administrator','Customer','Supplier') and docstatus != 2")
- if r_list[0][0]:
- r_list = [x[0] for x in r_list]
- return r_list
-
- # Get all permissions for given role
- def get_permission(self,role):
- perm = sql("select distinct t1.`parent`, t1.`read`, t1.`write`, t1.`create`, t1.`submit`,t1.`cancel`,t1.`amend` from `tabDocPerm` t1, `tabDocType` t2 where t1.`role` ='%s' and t1.docstatus !=2 and ifnull(t1.permlevel, 0) = 0 and t1.`read` = 1 and t2.module != 'Recycle Bin' and t1.parent=t2.name " % role)
- return perm or ''
-
- # Get roles for given user
- def get_user_roles(self,usr):
- r_list=sql("select role from `tabUserRole` where parent=%s and role not in ('All','Guest')",usr)
- if r_list:
- return [r[0] for r in r_list]
- else:
- return ''
-
- # Update roles of given user
- def update_roles(self,arg):
- arg = eval(arg)
- sql("delete from `tabUserRole` where parenttype='Profile' and parent ='%s'" % (cstr(arg['usr'])))
- role_list = arg['role_list'].split(',')
- for r in role_list:
- pr=Document('UserRole')
- pr.parent = arg['usr']
- pr.parenttype = 'Profile'
- pr.role = r
- pr.parentfield = 'userroles'
- pr.save(1)
-
- # Update Membership Type at Gateway
- from webnotes.utils import cint
-
- webnotes.clear_cache(cstr(arg['usr']))
-
- # Save profile
- def save_profile(self,arg):
- arg = eval(arg)
- p = Document('Profile', session['user'])
- for k in arg:
- p.fields[k] = arg[k]
- p.save()
-
- def get_login_url(self):
- return session['data']['login_from']
-
- def get_user_info(self):
-
- usr = sql("select count(name) from tabProfile where docstatus != 2 and name not in ('Guest','Administrator')")
- usr = usr and usr[0][0] or 0
-
- ol = sql("select count(distinct t1.name) from tabProfile t1, tabSessions t2 where t1.name = t2.user and t1.name not in('Guest','Administrator') and TIMESTAMPDIFF(HOUR,t2.lastupdate,NOW()) <= 1 and t1.docstatus != 2 and t1.enabled=1")
- ol = ol and ol[0][0] or 0
-
- ac = sql("select count(name) from tabProfile where enabled=1 and docstatus != 2 and name not in ('Guest', 'Administrator')")
- ac = ac and ac[0][0] or 0
-
- inac = sql("select count(name) from tabProfile where (enabled=0 or enabled is null or enabled = '') and docstatus != 2 and name not in ('Guest','Administrator')")
- inac = inac and inac[0][0] or 0
-
- return usr, ol, ac, inac
-
- def get_sm_count(self) :
- return sql("select count(t1.parent) from tabUserRole t1, tabProfile t2 where t1.role='System Manager' and t1.parent = t2.name and t2.enabled=1")[0][0] or 0
diff --git a/home/doctype/company_control/company_control.txt b/home/doctype/company_control/company_control.txt
deleted file mode 100644
index ef01f4f..0000000
--- a/home/doctype/company_control/company_control.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-[
- {
- "owner": "Administrator",
- "docstatus": 0,
- "creation": "2012-03-27 14:35:52",
- "modified_by": "Administrator",
- "modified": "2012-03-27 14:35:52"
- },
- {
- "section_style": "Simple",
- "name": "__common__",
- "colour": "White:FFF",
- "module": "Home",
- "doctype": "DocType",
- "version": 13,
- "server_code_error": " ",
- "issingle": 1
- },
- {
- "name": "Company Control",
- "doctype": "DocType"
- }
-]
\ No newline at end of file
diff --git a/home/doctype/home_control/__init__.py b/home/doctype/home_control/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/home/doctype/home_control/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/home/doctype/home_control/home_control.py b/home/doctype/home_control/home_control.py
deleted file mode 100644
index 3b7ae32..0000000
--- a/home/doctype/home_control/home_control.py
+++ /dev/null
@@ -1,365 +0,0 @@
-# ERPNext - web based ERP (http://erpnext.com)
-# Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-from __future__ import unicode_literals
-import webnotes
-
-from webnotes.utils import add_days, cint, cstr, getdate, now, nowdate
-from webnotes.model.doc import Document
-from webnotes import session, msgprint
-
-sql = webnotes.conn.sql
-
-try: import json
-except: import simplejson as json
-
-
-
-class DocType:
- def __init__(self,d,dl):
- self.doc, self.doclist = d,dl
----------------
-# ------------------------------------- Home page module details -----------------------------------------
-
- def delete_cache(self):
- com = sql("select abbr, name from tabCompany")
- for d in com:
- sql("update `tabCompany` set receivables_group = '%s' where (receivables_group = '%s' or receivables_group = '' or receivables_group is null) and name = '%s'" % ('Accounts Receivable - '+cstr(d[0]), 'Accounts Receivables - '+cstr(d[0]), d[1]))
- sql("update `tabCompany` set payables_group = '%s' where (payables_group = '%s' or payables_group = '' or payables_group is null) and name = '%s'" % ('Accounts Payable - '+cstr(d[0]), 'Accounts Payables - '+cstr(d[0]), d[1]))
-
- def get_modules(self):
- rl = webnotes.user.get_roles()
- ml = sql("select distinct t1.name, t1.module_icon, t1.module_label, t1.module_desc, t1.module_page from `tabModule Def` t1, `tabModule Def Role` t2 where t2.role in ('%s') and t1.disabled !='Yes' and ifnull(t1.is_hidden, 'No') != 'Yes' and t1.name = t2.parent order by t1.module_seq asc" % "','".join(rl), as_dict=1)
- webnotes.response['login_url'] = session['data'].get('login_from', '')
-
- return ml
-
- def get_module_details(self,m):
- ret = {}
- ret['il'] = sql('select doc_type, doc_name, display_name, icon, description, fields, click_function, idx from `tabModule Def Item` where parent=%s and ifnull(`hide`,0)=0 order by idx asc', m, as_dict=1)
- ret['wl'] = sql('select widget_code from `tabModule Def` where name =%s', m)[0][0] or ''
- ret['custom_reports'] = sql('''
- SELECT DISTINCT t1.criteria_name AS `display_name`, t1.description, t1.doc_type AS `doc_name`, 'Custom Reports' AS `doc_type`
- FROM `tabSearch Criteria` t1, `tabDocPerm` t2
- WHERE t1.module = "%s"
- AND IFNULL(t1.disabled,0) = 0
- AND (t1.doc_type=t2.parent OR t1.parent_doc_type = t2.parent)
- AND t2.permlevel = 0
- AND t2.read=1
- AND t2.role IN ("%s")
- AND ifnull(standard,"No")="No"''' % (m, '", "'.join(webnotes.user.get_roles())), as_dict=1)
-
- return ret
-
- # ----------------------------------------------------------------------------------------------------------------
- # ----------------------------------------------- Home page updates ----------------------------------------------
-
- def get_events_list(self):
- import webnotes, webnotes.utils
- from webnotes.widgets.event import get_cal_events
-
- dl = get_cal_events(nowdate(), add_days(nowdate(), 7))
- el = []
- for d in dl:
- #el.append([d.name, d.event_date, d.event_hour, d.event_name, d.description or '', d.ref_type or '', d.ref_name or '', d.owner])
- dict = {
- 'name': d.name,
- 'event_date': d.event_date,
- 'event_hour': d.event_hour,
- 'event_name': d.event_name,
- 'description': d.description,
- 'notes': d.notes,
- 'event_type': d.event_type,
- 'ref_type': d.ref_type,
- 'ref_name': d.ref_name,
- 'owner' : d.owner
- }
-
- el.append(dict)
- return el
-
-
- def get_activity_list(self):
- out = {}
- import webnotes
- rt = webnotes.user.can_read
-
- dt_list = [d[0] for d in sql("select distinct t2.name from tabDocField t1, tabDocType t2 where t1.fieldname='status' and t1.docstatus=0 and (t2.istable is null or t2.istable = 0) and t1.parent = t2.name")]
- if not dt_list:
- return out
-
- # get list of activity dt
- for dt in dt_list:
- if dt in rt:
- out[dt] = {}
- # get status list
- sl = sql("select distinct status from `tab%s`" % dt)
-
- for s in sl:
- if s[0]:
- # get count
- cnt = sql("select count(*) from `tab%s` where status = '%s' and modified > '%s'" % (dt, s[0], add_days(nowdate(), -7)))[0][0]
- out[dt][s[0]] = cint(cnt)
- return out
-
- def get_dt_help(self,dt):
- return sql("select description from tabDocType where name=%s",dt)[0][0] or ''
-
- def get_wip_counts(self):
- #dtl = ['Lead', 'Enquiries', 'Sales Order', 'Invoices', 'Purchase Request', 'Purchase Order', 'Bills', 'Tasks', 'Delivery Note', 'Maintenance']
- can_read_dt = ['Lead', 'Opportunity', 'Sales Order', 'Sales Invoice', 'Purchase Request', 'Purchase Order', 'Purchase Invoice', 'Delivery Note', 'Task', 'Serial No']
- dt = {}
- for d in can_read_dt:
- args = {}
-
- # if Lead
- if d=='Lead':
- args = {'To follow up':sql("select count(name) from tabLead where status!='Converted' and status!='Lead Lost' and status!='Not Interested'")}
-
- # if Opportunity
- elif d=='Opportunity':
- args['Quotations to be sent'] = sql("select count(distinct(t2.name)) from `tabQuotation`t1, `tabOpportunity`t2 where t1.enq_no!=t2.name and t2.docstatus=1")
- args['To follow up'] = sql("select count(distinct(t2.name)) from `tabQuotation`t1, `tabOpportunity`t2 where t1.enq_no=t2.name and t2.docstatus=1 and t1.docstatus=1")
-
- # if Sales Order
- elif d=='Sales Order':
- args['To be delivered'] = sql("select count(name) from `tabSales Order` where ifnull(per_delivered,0)<100 and delivery_date>now() and docstatus=1")
- args['To be billed'] = sql("select count(name) from `tabSales Order` where ifnull(per_billed,0)<100 and docstatus=1")
- args['Overdue'] = sql("select count(name) from `tabSales Order` where ifnull(per_delivered,0)<100 and delivery_date<now() and docstatus=1")
- args['To be submitted'] = sql("select count(name) from `tabSales Order` where docstatus=0 and status='Draft'") #Draft
-
- # if Sales Invoice
- elif d=='Sales Invoice':
- args['To receive payment'] = sql("select count(name) from `tabSales Invoice` where docstatus=1 and due_date>now() and outstanding_amount!=0")
- args['Overdue'] = sql("select count(name) from `tabSales Invoice` where docstatus=1 and due_date<now() and outstanding_amount!=0")
- args['To be submitted'] = sql("select count(name) from `tabSales Invoice` where docstatus=0") #Draft
-
- # if Purchase Request
- elif d=='Purchase Request':
- args['Purchase Order to be made'] = sql("select count(name) from `tabPurchase Request` where ifnull(per_ordered,0)<100 and docstatus=1")
- args['To be submitted'] = sql("select count(name) from `tabPurchase Request` where status='Draft'") #Draft
-
- # if Purchase Order
- elif d=='Purchase Order':
- args['To receive items'] = sql("select count(name) from `tabPurchase Order` where ifnull(per_received,0)<100 and docstatus=1")
- args['To be billed'] = sql("select count(name) from `tabPurchase Order` where ifnull(per_billed,0)<100 and docstatus=1")
- args['To be submitted'] = sql("select count(name) from `tabPurchase Order` where status='Draft'") #Draft
-
- # if Purchase Invoice
- elif d=='Purchase Invoice':
- args['To be paid'] = sql("select count(name) from `tabPurchase Invoice` where docstatus=1 and outstanding_amount!=0")
- args['To be submitted'] = sql("select count(name) from `tabPurchase Invoice` where docstatus=0") #Draft
-
- # if Delivery Note
- elif d=='Delivery Note':
- args['To be submitted'] = sql("select count(name) from `tabDelivery Note` where status='Draft' and docstatus=0")
- args['To be billed'] = sql("select count(name) from `tabDelivery Note` where docstatus=1 and docstatus=1 and ifnull(per_billed,0)<100")
-
- # if Tasks
- elif d=='Task':
- args = {'Open': sql("select count(name) from `tabTask` where status='Open'")}
-
- # if Serial No
- elif d=='Serial No':
- args['AMC expiring this month'] = sql("select count(name) from `tabSerial No` where docstatus!=2 and maintenance_status = 'Under AMC' and status!='Scrapped' and status!='Not in Use' and month(now()) = month(amc_expiry_date) and year(now()) = year(amc_expiry_date)")
- args['Warranty expiring this month'] = sql("select count(name) from `tabSerial No` where docstatus!=2 and maintenance_status = 'Under Warranty' and status!='Scrapped' and status!='Not in Use' and month(now()) = month(ifnull(warranty_expiry_date,0)) and year(now())=year(ifnull(warranty_expiry_date,0))")
-
- for a in args:
- args[a] = args[a] and args[a][0][0] or 0
-
- dt[d] = args
- return dt
-
- # -------------------------------------------------------------------------------------------------------
-
- def get_todo_count(self):
- count = sql("select count(distinct name) from `tabToDo` where owner=%s", session['user'])
- count = count and count[0][0] or 0
- return count
-
- def get_todo_list(self):
- res = sql("""select name, description, `date`,
- priority, checked, reference_type, reference_name from `tabToDo`
- where owner=%s order by field(priority,'High','Medium','Low') asc, date asc""", \
- session['user'], as_dict=1)
- return res
-
- def add_todo_item(self,args):
- args = json.loads(args)
-
- d = Document('ToDo', args.get('name') or None)
- d.description = args['description']
- d.date = args['date']
- d.priority = args['priority']
- d.checked = args.get('checked', 0)
- d.owner = session['user']
- d.save(not args.get('name') and 1 or 0)
-
- if args.get('name') and d.checked:
- self.notify_assignment(d)
-
- return d.name
-
- def remove_todo_item(self,nm):
- d = Document('ToDo', nm or None)
- if d and d.name:
- self.notify_assignment(d)
- sql("delete from `tabToDo` where name = %s",nm)
-
- def notify_assignment(self, d):
- doc_type = d.fields.get('reference_type')
- doc_name = d.fields.get('reference_name')
- assigned_by = d.fields.get('assigned_by')
- if doc_type and doc_name and assigned_by:
- from webnotes.widgets.form import assign_to
- assign_to.notify_assignment(assigned_by, d.owner, doc_type, doc_name)
-
-
-
- # -------------------------------------------------------------------------------------------------------
-
- def dismiss_message(self, arg=''):
- msg_id = webnotes.conn.get_global('system_message_id')
- webnotes.conn.set_global('system_message_id', msg_id, session['user'])
-
- # -------------------------------------------------------------------------------------------------------
-
- def get_todo_reminder(self):
- return webnotes.conn.convert_to_lists(sql("select name, description, date, priority,checked from `tabToDo` where owner=%s and date=%s and checked=1 order by priority, date", (session['user'], nowdate())))
-
- # get user details
- def get_users(self):
- ret = {}
- ret['usr'] = webnotes.conn.convert_to_lists(sql("select distinct name, concat_ws(' ', first_name, last_name), ifnull(messanger_status,'Available') from tabProfile where name=%s", session['user']))
- ret['on'] = webnotes.conn.convert_to_lists(sql("select distinct t1.name, concat_ws(' ', t1.first_name, t1.last_name), ifnull(t1.messanger_status,'Available') from tabProfile t1, tabSessions t2 where t1.name = t2.user and t1.name not in('Guest',%s) and TIMESTAMPDIFF(HOUR,t2.lastupdate,NOW()) <= 1", session['user']))
- ret['off'] = webnotes.conn.convert_to_lists(sql("select distinct t1.name, concat_ws(' ', t1.first_name, t1.last_name), ifnull(t1.messanger_status,'Offline') from tabProfile t1, tabSessions t2 where t1.name != t2.user and t1.name not in('Guest',%s) and t1.name not in(select distinct t1.name from tabProfile t1, tabSessions t2 where t1.name = t2.user and t1.name not in('Guest',%s) and (t1.messanger_status !='Invisible' or t1.messanger_status is null) and TIMESTAMPDIFF(HOUR,t2.lastupdate,NOW()) <= 1)", (session['user'], session['user'])))
-
- return ret
-
- # Delete event
- def delete_event(self,id):
- sql("delete from tabEvent where name=%s", id)
-
- # edit event
- def edit_event(self,arg):
- arg = json.loads(arg)
- d = Document('Event', arg.get('name') or None)
- for k in arg:
- d.fields[k] = str(arg[k])
- d.save(not arg.get('name') and 1 or 0)
-
- # -------------------------------------------------------------------------------------------------------
- # module settings
- # -------------------------------------------------------------------------------------------------------
- def get_module_order(self):
- show_list = ['Home','Setup','Accounts','Selling','Buying','Support','Stock','HR','Projects','Analysis','Manufacturing']
- ml = filter(lambda x: x[0] in show_list, \
- sql("select name, module_label, module_seq, is_hidden from `tabModule Def` where docstatus<2 order by module_seq asc, module_label asc"))
- return webnotes.conn.convert_to_lists(ml)
-
- def set_module_order(self,arg):
- arg = eval(arg)
- for k in arg:
- sql("update `tabModule Def` set module_seq = %s, is_hidden = %s where name = %s", (cint(arg[k]['module_seq']) + 1, arg[k]['is_hidden'], k))
-
- # -------------------------------------------------------------------------------------------------------
-
- def get_bd_list(self):
- bl = webnotes.conn.convert_to_lists(sql("select name,concat_ws(' ',first_name,last_name),birth_date from tabProfile where (birth_date is not null and birth_date != '') and (enabled is not null and enabled !='')"))
-
- nd = nowdate().split('-')
- d = cint(nd[2])
- m = cint(nd[1])
-
- tb = []
- for b in bl:
- if b[2] and b[2].find('-') != -1:
- if cint(b[2].split('-')[2]) == d and cint(b[2].split('-')[1]) == m:
- tb.append(b)
-
- return tb
-
- # obtain account id for webforms
- def get_acc_id(self):
- acc_id = sql("select value from `tabSingles` where field='account_id' and doctype='Control Panel'")
- acc_id = acc_id and acc_id[0][0] or ''
- if acc_id:
- return cstr(acc_id)
- else:
- msgprint("Account Id not specified")
- raise Exception
-
- #update serial no status
- def update_serial_status(self, lst, status):
- lst11=[]
- for y1 in lst:
- sql("update `tabSerial No` set maintenance_status = %s where name=%s", (status,y1))
- lst11.append(y1)
- msgprint("Status updated as '"+status+"' for "+cstr(lst11))
-
- # chk to set serial no status as 'Out of warranty'
- def set_for_out_of_warranty(self):
- chk_for_out_of_wrnty = sql("select name from `tabSerial No` where ifnull(warranty_expiry_date, '2200-12-12') < CURDATE() and ifnull(warranty_expiry_date, '0000-00-00') != '0000-00-00' and ifnull(amc_expiry_date, '0000-00-00') ='0000-00-00' and ifnull(maintenance_status, '') != 'Out of Warranty'")
- if chk_for_out_of_wrnty:
- lst1 = [x1[0] for x1 in chk_for_out_of_wrnty]
- self.update_serial_status(lst1, 'Out Of Warranty')
-
- # chk to set serial no status as 'Out of amc'
- def set_for_out_of_amc(self):
- chk_for_out_of_amc = sql("select name from `tabSerial No` where ifnull(warranty_expiry_date, '0000-00-00')< CURDATE() and ifnull(amc_expiry_date, '2200-12-12') < CURDATE() and ifnull(amc_expiry_date, '0000-00-00') !='0000-00-00' and ifnull(maintenance_status, '') !='Out of AMC'")
- if chk_for_out_of_amc:
- lst2 = [x2[0] for x2 in chk_for_out_of_amc]
- self.update_serial_status(lst2, 'Out Of AMC')
-
- # chk to set serial no status as 'under amc'
- def set_for_under_amc(self):
- chk_for_under_amc = sql("select name from `tabSerial No` where ifnull(warranty_expiry_date, '0000-00-00')< CURDATE() and ifnull(amc_expiry_date, '2200-12-12') >= CURDATE() and ifnull(amc_expiry_date, '0000-00-00') !='0000-00-00' and ifnull(maintenance_status, '') !='Under AMC'")
- if chk_for_under_amc:
- lst3 = [x3[0] for x3 in chk_for_under_amc]
- self.update_serial_status(lst3, 'Under AMC')
-
- # chk to set serial no status as 'under warranty'
- def set_for_under_warranty(self):
- chk_for_under_wrnty = sql("select name from `tabSerial No` where ifnull(warranty_expiry_date, '2200-12-12') >= CURDATE() and ifnull(warranty_expiry_date, '0000-00-00') != '0000-00-00' and ifnull(amc_expiry_date, '0000-00-00') ='0000-00-00' and ifnull(maintenance_status, '') != 'Under Warranty'")
- if chk_for_under_wrnty:
- lst4 = [x4[0] for x4 in chk_for_under_wrnty]
- self.update_serial_status(lst4, 'Under Warranty')
-
- # check maintenance status for all serial nos only for 1st login each day
- def set_serial_no_status(self):
-
- chk_serial_no_update_date = webnotes.conn.get_global('maintenance_status_update_date')
-
- # check status only for 1st login each day.... if maintenance date already updated means it is checked
- if getdate(chk_serial_no_update_date) != nowdate():
- # chk to set serial no status as 'Out of warranty'
- self.set_for_out_of_warranty()
-
- # chk to set serial no status as 'Out of amc'
- self.set_for_out_of_amc()
-
- # chk to set serial no status as 'under amc'
- self.set_for_under_amc()
-
- # chk to set serial no status as 'under warranty'
- self.set_for_under_warranty()
-
- #set maintenance_status_update_date
- webnotes.conn.set_global('maintenance_status_update_date', nowdate())
-
- # get user fullname
- def get_user_fullname(self,usr):
- return sql("select concat_ws(' ',first_name, last_name) from tabProfile where name=%s", usr)[0][0] or ''
diff --git a/home/doctype/home_control/home_control.txt b/home/doctype/home_control/home_control.txt
deleted file mode 100644
index 694cad5..0000000
--- a/home/doctype/home_control/home_control.txt
+++ /dev/null
@@ -1,43 +0,0 @@
-[
- {
- "owner": "Administrator",
- "docstatus": 0,
- "creation": "2012-03-27 14:35:53",
- "modified_by": "Administrator",
- "modified": "2012-03-27 14:35:53"
- },
- {
- "section_style": "Simple",
- "name": "__common__",
- "colour": "White:FFF",
- "module": "Home",
- "show_in_menu": 0,
- "version": 6,
- "server_code_error": " ",
- "doctype": "DocType",
- "issingle": 1
- },
- {
- "name": "__common__",
- "parent": "Home Control",
- "read": 1,
- "create": 1,
- "doctype": "DocPerm",
- "write": 1,
- "parenttype": "DocType",
- "permlevel": 0,
- "parentfield": "permissions"
- },
- {
- "name": "Home Control",
- "doctype": "DocType"
- },
- {
- "role": "System Manager",
- "doctype": "DocPerm"
- },
- {
- "role": "Guest",
- "doctype": "DocPerm"
- }
-]
\ No newline at end of file
diff --git a/setup/page/webforms/__init__.py b/setup/page/webforms/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/setup/page/webforms/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/setup/page/webforms/webforms.html b/setup/page/webforms/webforms.html
deleted file mode 100644
index e1717dc..0000000
--- a/setup/page/webforms/webforms.html
+++ /dev/null
@@ -1,13 +0,0 @@
-<div class="layout_wrapper">
-<div id="webform_div"></div>
-<p><strong>Note : </strong>Copy and paste code provided below in your website wherever you want to show the form to capture details</p>
-<p> </p>
-<p><span style="font-size: medium;"><strong>Lead</strong></span></p>
-<div id="lead_div"></div>
-<p><span style="font-size: medium;"><strong>Customer Issue</strong></span></p>
-<div id="cust_issue_div"></div>
-<p><span style="font-size: medium;"><strong>Job Application</strong></span></p>
-<div id="job_div"></div>
-<p><span style="font-size: medium;"><strong>Ticket</strong></span></p>
-<div id="ticket_div"></div>
-</div>
\ No newline at end of file
diff --git a/setup/page/webforms/webforms.js b/setup/page/webforms/webforms.js
deleted file mode 100644
index 85caadf..0000000
--- a/setup/page/webforms/webforms.js
+++ /dev/null
@@ -1,42 +0,0 @@
-// ERPNext - web based ERP (http://erpnext.com)
-// Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-//
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-pscript.onload_Webforms = function(){
-
- $c_obj('Home Control','get_acc_id','', function(r,rt) {
- if(r.message) {
- var acc_id = r.message;
- var parent = $i('webform_div');
- new PageHeader(parent,'Web Forms','');
-
- var lead_dv = $a('lead_div','div', '', {border:'1px solid #AAA', padding:'8px', width:'90%'});
- var cust_issue_dv = $a('cust_issue_div','div', '', {border:'1px solid #AAA', padding:'8px', width:'95%'});
- var job_dv = $a('job_div','div', '', {border:'1px solid #AAA', padding:'8px', width:'95%'});
- var ticket_dv = $a('ticket_div','div', '', {border:'1px solid #AAA', padding:'8px', width:'95%'});
-
- // url
- if(window.location.href.indexOf('?')!=-1)
- var url = window.location.href.split('?')[0];
- else
- var url = window.location.href.split('#')[0];
-
- lead_dv.innerHTML = '<iframe src ="'+url+'?ac_name='+acc_id+'&embed=Lead" width ="400" height="800" frameborder="0"></iframe>';
- cust_issue_dv.innerHTML = '<iframe src ="'+url+'?ac_name='+acc_id+'&embed=Customer Issue" width ="400" height="500" frameborder="0"></iframe>';
- job_dv.innerHTML = '<iframe src ="'+url+'?ac_name='+acc_id+'&embed=Job Application" width ="400" height="800" frameborder="0""></iframe>';
- ticket_dv.innerHTML = '<iframe src ="'+url+'?ac_name='+acc_id+'&embed=Support Ticket" width ="400" height="800" frameborder="0""></iframe>';
- }
- });
-}
diff --git a/setup/page/webforms/webforms.txt b/setup/page/webforms/webforms.txt
deleted file mode 100644
index 07865f4..0000000
--- a/setup/page/webforms/webforms.txt
+++ /dev/null
@@ -1,36 +0,0 @@
-[
- {
- "owner": "ashwini@webnotestech.com",
- "docstatus": 0,
- "creation": "2010-10-14 11:15:59",
- "modified_by": "Administrator",
- "modified": "2011-01-04 13:19:54"
- },
- {
- "name": "__common__",
- "module": "Setup",
- "show_in_menu": 1,
- "page_name": "Webforms",
- "doctype": "Page",
- "standard": "Yes"
- },
- {
- "name": "__common__",
- "parent": "Webforms",
- "doctype": "Page Role",
- "parenttype": "Page",
- "parentfield": "roles"
- },
- {
- "name": "Webforms",
- "doctype": "Page"
- },
- {
- "role": "Administrator",
- "doctype": "Page Role"
- },
- {
- "role": "System Manager",
- "doctype": "Page Role"
- }
-]
\ No newline at end of file
diff --git a/setup/page/webforms/webforms_static.html b/setup/page/webforms/webforms_static.html
deleted file mode 100644
index 3488a17..0000000
--- a/setup/page/webforms/webforms_static.html
+++ /dev/null
@@ -1 +0,0 @@
-webforms
\ No newline at end of file
diff --git a/utilities/page/wip_monitor/__init__.py b/utilities/page/wip_monitor/__init__.py
deleted file mode 100644
index baffc48..0000000
--- a/utilities/page/wip_monitor/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-from __future__ import unicode_literals
diff --git a/utilities/page/wip_monitor/wip_monitor.html b/utilities/page/wip_monitor/wip_monitor.html
deleted file mode 100644
index b7eb59e..0000000
--- a/utilities/page/wip_monitor/wip_monitor.html
+++ /dev/null
@@ -1,2 +0,0 @@
-<div id="wip_head"></div>
-<div id="wip_body" style="margin:16px"></div>
\ No newline at end of file
diff --git a/utilities/page/wip_monitor/wip_monitor.js b/utilities/page/wip_monitor/wip_monitor.js
deleted file mode 100644
index fcfc96f..0000000
--- a/utilities/page/wip_monitor/wip_monitor.js
+++ /dev/null
@@ -1,104 +0,0 @@
-// ERPNext - web based ERP (http://erpnext.com)
-// Copyright (C) 2012 Web Notes Technologies Pvt Ltd
-//
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-pscript['onload_WIP Monitor'] = function(){
- wip = new WIP_Monitor();
-
- var h = new PageHeader('wip_head','Work in Progress Monitor','A quick glance at your work in progress and pipeline');
- h.add_button('Refresh', function(){ wip = new WIP_Monitor();}, 1, 'ui-icon-refresh');
-
-}
-
-// Work In Progress Monitor
-// =========================================================================================================================================================
-WIP_Monitor = function(){
- var me = this;
- this.row_index = 0;
- $c_obj('Home Control','get_wip_counts','',function(r,rt){
- me.make_wip_dashboard(r.message);
- });
-}
-
-
-// Make wip dashboard
-// ------------------
-WIP_Monitor.prototype.make_wip_dashboard = function(wip_dict)
-{
- var me = this;
- // list of doctypes which user can read
- var can_read_dt = ['Lead', 'Opportunity', 'Sales Order', 'Sales Invoice', 'Purchase Request', 'Purchase Order', 'Purchase Invoice', 'Delivery Note', 'Task', 'Serial No'];
-
- $i('wip_body').innerHTML = '';
- this.tab = make_table('wip_body',1,0,'100%',[],{padding:'4px'});
-
- for(var k=0; k<can_read_dt.length; k++){
-
- // check if the user can read these doctypes
- if(in_list(profile.can_read, get_doctype_label(can_read_dt[k])))
- {
- var work = can_read_dt[k];
- if(this.tab.rows[this.row_index].cells.length==2){
- this.row_index = this.row_index + 1;
- this.tab.insertRow(this.tab.rows.length);
- }
- var parent = this.tab.rows[this.row_index].insertCell(this.tab.rows[this.row_index].cells.length);
- $y(parent, {paddingBottom:'16px', width:'50%', paddingLeft:'8px'})
- me.show_wip_dashboard(parent, work, wip_dict[work]);
- }
- }
-}
-
-
-// Show wip dashboard
-// ------------------
-WIP_Monitor.prototype.show_wip_dashboard = function(parent, head, report_dict)
-{
- var me = this;
- var report_dt
-
- // dictionary for labels to be displayed
- var wip_lbl_map = {'Lead':'Lead', 'Opportunity':'Enquiries', 'Sales Order':'Sales Order', 'Sales Invoice':'Invoices', 'Purchase Request':'Purchase Request', 'Purchase Order':'Purchase Order', 'Purchase Invoice':'Bills', 'Delivery Note':'Delivery Note', 'Task':'Tasks', 'Serial No':'Maintenance'};
-
- // header
- var h = $a(parent,'h3');
-
- h.innerHTML = wip_lbl_map[head];
- report_dt = head;
-
- for(report in report_dict){
- me.make_report_body(parent, report, report_dict[report], report_dt);
- }
-}
-
-
-// Make wip report body
-// --------------------
-WIP_Monitor.prototype.make_report_body = function(parent, lbl, records, rep_dt)
-{
- var me = this;
-
- dt_color = lbl=='Overdue' ? 'red' : 'black';
- var tab2 = make_table(parent,1,2, '70%', ['10%', '90%'], {padding:'4px'});
-
- // no of records
- var s1 = $a($td(tab2,0,0), 'span', '', {fontWeight:'bold', fontSize:'12px', color:dt_color});
- s1.innerHTML = records;
-
- // link to report
- var s1 = $a($td(tab2,0,1), 'span', 'link_type', {cursor:'pointer', color:'#DFH'});
- s1.dt = rep_dt; s1.cn = rep_dt + '-' + lbl; s1.innerHTML = lbl;
- s1.onclick = function() { loadreport(this.dt, this.cn); }
-}
diff --git a/utilities/page/wip_monitor/wip_monitor.txt b/utilities/page/wip_monitor/wip_monitor.txt
deleted file mode 100644
index 60b9c17..0000000
--- a/utilities/page/wip_monitor/wip_monitor.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-[
- {
- "owner": "Administrator",
- "docstatus": 0,
- "creation": "2010-12-14 10:23:29",
- "modified_by": "Administrator",
- "modified": "2011-01-04 11:12:39"
- },
- {
- "name": "__common__",
- "module": "Utilities",
- "show_in_menu": 0,
- "page_name": "WIP Monitor",
- "doctype": "Page",
- "standard": "Yes"
- },
- {
- "name": "WIP Monitor",
- "doctype": "Page"
- }
-]
\ No newline at end of file