[IMP] new menus

bzr revid: fp@tinyerp.com-20100109143002-32gkcy67d18v2gd7
This commit is contained in:
Fabien Pinckaers 2010-01-09 15:30:02 +01:00
parent 29222f60b6
commit 344dd181f3
20 changed files with 255 additions and 351 deletions

View File

@ -32,12 +32,6 @@ import tools
from osv import fields,osv,orm
from osv.orm import except_orm
import email
import netsvc
from poplib import POP3, POP3_SSL
from imaplib import IMAP4, IMAP4_SSL
MAX_LEVEL = 15
AVAILABLE_STATES = [
('draft','Draft'),
@ -64,17 +58,16 @@ icon_lst = {
class crm_case_section(osv.osv):
_name = "crm.case.section"
_description = "Case Section"
_order = "name"
_columns = {
'name': fields.char('Case Section',size=64, required=True, translate=True),
'code': fields.char('Section Code',size=8),
'active': fields.boolean('Active', help="If the active field is set to true, it will allow you to hide the case section without removing it."),
'allow_unlink': fields.boolean('Allow Delete', help="Allows to delete non draft cases"),
'sequence': fields.integer('Sequence', help="Gives the sequence order when displaying a list of case sections."),
'user_id': fields.many2one('res.users', 'Responsible User'),
'reply_to': fields.char('Reply-To', size=64, help="The email address put in the 'Reply-To' of all emails sent by Open ERP about cases in this section"),
'parent_id': fields.many2one('crm.case.section', 'Parent Section'),
'child_ids': fields.one2many('crm.case.section', 'parent_id', 'Child Sections'),
'calendar' : fields.boolean('Calendar', help='Allows to show calendar'),
}
_defaults = {
'active': lambda *a: 1,
@ -95,106 +88,6 @@ class crm_case_section(osv.osv):
_constraints = [
(_check_recursion, 'Error ! You cannot create recursive sections.', ['parent_id'])
]
# Mainly used by the wizard
def menu_create_data(self, cr, uid, data, menu_lst, context):
menus = {}
menus[0] = data['menu_parent_id']
section = self.browse(cr, uid, data['section_id'], context)
for (index, mname, mdomain, latest, view_mode) in menu_lst:
view_mode = data['menu'+str(index)+'_option']
if view_mode=='no':
menus[index] = data['menu_parent_id']
continue
icon = icon_lst.get(view_mode.split(',')[0], 'STOCK_JUSTIFY_FILL')
menu_id=self.pool.get('ir.ui.menu').create(cr, uid, {
'name': data['menu'+str(index)],
'parent_id': menus[latest],
'icon': icon
})
menus[index] = menu_id
action_id = self.pool.get('ir.actions.act_window').create(cr,uid, {
'name': data['menu'+str(index)],
'res_model': 'crm.case',
'domain': mdomain.replace('SECTION_ID', str(data['section_id'])),
'view_type': 'form',
'view_mode': view_mode,
})
seq = 0
for mode in view_mode.split(','):
self.pool.get('ir.actions.act_window.view').create(cr, uid, {
'sequence': seq,
'view_id': data['view_'+mode],
'view_mode': mode,
'act_window_id': action_id,
'multi': True
})
seq+=1
self.pool.get('ir.values').create(cr, uid, {
'name': data['menu'+str(index)],
'key2': 'tree_but_open',
'model': 'ir.ui.menu',
'res_id': menu_id,
'value': 'ir.actions.act_window,%d'%action_id,
'object': True
})
return True
#
# Used when called from .XML file
#
def menu_create(self, cr, uid, ids, name, menu_parent_id=False, context={}):
menus = {}
menus[-1] = menu_parent_id
for section in self.browse(cr, uid, ids, context):
for (index, mname, mdomain, latest) in [
(0,'',"[('section_id','=',"+str(section.id)+")]", -1),
(1,'My ',"[('section_id','=',"+str(section.id)+"),('user_id','=',uid)]", 0),
(2,'My Unclosed ',"[('section_id','=',"+str(section.id)+"),('user_id','=',uid), ('state','<>','cancel'), ('state','<>','done')]", 1),
(5,'My Open ',"[('section_id','=',"+str(section.id)+"),('user_id','=',uid), ('state','=','open')]", 2),
(6,'My Pending ',"[('section_id','=',"+str(section.id)+"),('user_id','=',uid), ('state','=','pending')]", 2),
(7,'My Draft ',"[('section_id','=',"+str(section.id)+"),('user_id','=',uid), ('state','=','draft')]", 2),
(3,'My Late ',"[('section_id','=',"+str(section.id)+"),('user_id','=',uid), ('date_deadline','<=',time.strftime('%Y-%m-%d')), ('state','<>','cancel'), ('state','<>','done')]", 1),
(4,'My Canceled ',"[('section_id','=',"+str(section.id)+"),('user_id','=',uid), ('state','=','cancel')]", 1),
(8,'All ',"[('section_id','=',"+str(section.id)+"),]", 0),
(9,'Unassigned ',"[('section_id','=',"+str(section.id)+"),('user_id','=',False)]", 8),
(10,'Late ',"[('section_id','=',"+str(section.id)+"),('user_id','=',uid), ('date_deadline','<=',time.strftime('%Y-%m-%d')), ('state','<>','cancel'), ('state','<>','done')]", 8),
(11,'Canceled ',"[('section_id','=',"+str(section.id)+"),('state','=','cancel')]", 8),
(12,'Unclosed ',"[('section_id','=',"+str(section.id)+"),('state','<>','cancel'), ('state','<>','done')]", 8),
(13,'Open ',"[('section_id','=',"+str(section.id)+"),('state','=','open')]", 12),
(14,'Pending ',"[('section_id','=',"+str(section.id)+"),('state','=','pending')]", 12),
(15,'Draft ',"[('section_id','=',"+str(section.id)+"),('state','=','draft')]", 12),
(16,'Unassigned ',"[('section_id','=',"+str(section.id)+"),('user_id','=',False),('state','<>','cancel'),('state','<>','done')]", 12),
]:
view_mode = 'tree,form'
icon = 'STOCK_JUSTIFY_FILL'
if index==0:
view_mode = 'form,tree'
icon = 'STOCK_NEW'
menu_id=self.pool.get('ir.ui.menu').create(cr, uid, {
'name': mname+name,
'parent_id': menus[latest],
'icon': icon
})
menus[index] = menu_id
action_id = self.pool.get('ir.actions.act_window').create(cr,uid, {
'name': mname+name+' Cases',
'res_model': 'crm.case',
'domain': mdomain,
'view_type': 'form',
'view_mode': view_mode,
})
self.pool.get('ir.values').create(cr, uid, {
'name': 'Open Cases',
'key2': 'tree_but_open',
'model': 'ir.ui.menu',
'res_id': menu_id,
'value': 'ir.actions.act_window,%d'%action_id,
'object': True
})
return True
def name_get(self, cr, uid, ids, context={}):
if not len(ids):
return []
@ -963,4 +856,4 @@ class res_users(osv.osv):
res_users()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -31,6 +31,7 @@ from tools.translate import _
import tools
from osv import fields,osv,orm
from osv.orm import except_orm
class crm_job(osv.osv):
_name = "crm.job"
_description = "Job Cases"

View File

@ -34,15 +34,11 @@
<page string="Case section">
<field name="name" select="1"/>
<field name="code" select="1"/>
<field name="sequence"/>
<field name="active" select="2"/>
<field name="user_id" select="2"/>
<field name="active" select="2"/>
<field name="parent_id" select="2" widget="selection"/>
<group colspan="2" >
<field name="allow_unlink" select="2"/>
<field name="calendar" select="2"/>
</group>
<field name="reply_to" select="2"/>
<field name="allow_unlink" select="2"/>
<field name="reply_to" select="2"/>
</page>
</notebook>
</form>

View File

@ -47,7 +47,10 @@
<field name="view_type">tree</field>
<field name="domain">[('parent_id','=',False)]</field>
</record>
<menuitem action="open_module_tree_department_tree" id="menu_department_tree" parent="base.menu_users"/>
<menuitem
action="open_module_tree_department_tree"
id="menu_department_tree"
parent="hr.menu_hr_employee"/>
<record id="open_module_tree_department" model="ir.actions.act_window">
<field name="name">Departments</field>
@ -55,7 +58,10 @@
<field name="view_type">form</field>
</record>
<menuitem action="open_module_tree_department" id="menu_department_def" parent="hr.menu_department_tree"/>
<menuitem
action="open_module_tree_department"
id="menu_department_def"
parent="hr.menu_hr_employee"/>
<!-- res.users inherit -->
<record model="ir.ui.view" id="view_users_form_inherit">

View File

@ -1,7 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<menuitem icon="terp-hr" id="menu_hr_root" name="Human Resources"/>
<menuitem
icon="terp-hr"
id="menu_hr_root"
name="Human Resources"/>
<menuitem
id="menu_hr_reporting"
name="Reporting"
@ -11,8 +14,17 @@
id="menu_hr_configuration"
name="Configuration"
parent="hr.menu_hr_root"
sequence="5" groups="group_hr_manager"/>
sequence="50" groups="group_hr_manager"/>
<menuitem
id="menu_hr_employee"
sequence="1"
name="Human Resources"
parent="hr.menu_hr_root"/>
<menuitem
id="menu_hr_time"
name="Time Tracking"
parent="hr.menu_hr_root"/>
<!--
==========
Employee
@ -103,26 +115,9 @@
</record>
<menuitem
id="menu_open_view_employee_list"
name="Employees"
action="open_view_employee_list"
groups="group_hr_manager"
parent="hr.menu_hr_root"/>
<menuitem
action="open_view_employee_tree"
id="menu_open_view_employee_tree"
parent="menu_open_view_employee_list"/>
<record id="open_view_employee_list_my" model="ir.actions.act_window">
<field name="name">All Employees</field>
<field name="res_model">hr.employee</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[]</field>
</record>
<menuitem
action="open_view_employee_list_my"
id="menu_open_view_employee_list_my"
parent="menu_open_view_employee_list"/>
parent="hr.menu_hr_employee"/>
<!--
=======================
@ -181,12 +176,20 @@
</field>
</record>
<record id="edit_workgroup" model="ir.actions.act_window">
<field name="name">Working Time Categories</field>
<field name="name">Working Schedules</field>
<field name="res_model">hr.timesheet.group</field>
<field name="view_type">form</field>
<field name="view_id" eval="False"/>
</record>
<menuitem action="edit_workgroup" id="menu_edit_workgroup" parent="hr.menu_hr_configuration"/>
<menuitem
name="Employees"
id="menu_hr_configuration_employee"
parent="hr.menu_hr_configuration"/>
<menuitem
action="edit_workgroup"
id="menu_edit_workgroup"
parent="hr.menu_hr_configuration"/>
<record id="view_timesheet_tree" model="ir.ui.view">
<field name="name">hr.timesheet.tree</field>
@ -262,7 +265,10 @@
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
</record>
<menuitem action="open_view_categ_form" id="menu_view_employee_category_form" parent="hr.menu_hr_configuration"/>
<menuitem
action="open_view_categ_form"
id="menu_view_employee_category_form"
parent="hr.menu_hr_configuration_employee"/>
<record id="open_view_categ_tree" model="ir.actions.act_window">
<field name="name">Categories structure</field>
@ -289,8 +295,5 @@
<field eval="'ir.actions.act_window,%d'%hr_employee_normal_action_tree" name="value"/>
<field eval="True" name="object"/>
</record>
<menuitem action="open_view_categ_tree" id="menu_view_employee_category_tree" parent="hr.menu_view_employee_category_form"/>
</data>
</openerp>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="view_attendance_form" model="ir.ui.view">
<field name="name">hr.attendance.form</field>
<field name="model">hr.attendance</field>
@ -48,8 +48,9 @@
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
</record>
<menuitem id="menu_hr_attendance" name="Attendances" parent="hr.menu_hr_root"
<menuitem id="menu_hr_attendance" name="Attendances" parent="hr.menu_hr_time"
groups="group_hr_attendance"/>
<menuitem action="open_view_attendance" id="menu_open_view_attendance"
parent="menu_hr_attendance" groups="hr.group_hr_manager"/>

View File

@ -8,7 +8,7 @@
<wizard id="print_week" keyword="client_print_multi" model="hr.employee" name="hr.attendance.print_week" string="Print Timesheet by week"/>
<wizard id="print_month" keyword="client_print_multi" model="hr.employee" name="hr.attendance.print_month" string="Print Timesheet by month"/>
<menuitem action="si_so" id="menu_si_so" parent="menu_hr_attendance" type="wizard"
<menuitem action="si_so" id="menu_si_so" parent="hr.menu_hr_time" type="wizard"
groups="group_hr_attendance"/>
</data>

View File

@ -60,16 +60,22 @@
<field name="view_mode">tree,form</field>
<field name="domain">[]</field>
</record>
<menuitem id="next_id_56" name="Contract" parent="hr.menu_hr_configuration"/><menuitem action="action_hr_contract_wage_type" id="hr_menu_contract_wage_type" parent="next_id_56"/>
<menuitem
id="next_id_56"
name="Contracts"
parent="hr.menu_hr_configuration"/>
<menuitem action="action_hr_contract_wage_type" id="hr_menu_contract_wage_type" parent="next_id_56"/>
<record id="action_hr_contract_wage_type_period" model="ir.actions.act_window">
<field name="name">Wage period</field>
<field name="res_model">hr.contract.wage.type.period</field>
<field name="view_type">form</field>
</record>
<menuitem action="action_hr_contract_wage_type_period" id="hr_menu_contract_wage_type_period" parent="hr_contract.next_id_56"/>
<menuitem
action="action_hr_contract_wage_type_period"
id="hr_menu_contract_wage_type_period"
parent="hr_contract.next_id_56"/>
<record id="hr_hr_employee_view_form2" model="ir.ui.view">
<field name="name">hr.hr.employee.view.form2</field>
<field name="model">hr.employee</field>
@ -138,8 +144,10 @@
<field name="view_mode">tree,form</field>
</record>
<menuitem action="action_hr_marital_status" id="hr_menu_marital_status" parent="hr.menu_hr_configuration"/>
<menuitem
action="action_hr_marital_status"
id="hr_menu_marital_status"
parent="hr.menu_hr_configuration_employee"/>
<record id="hr_contract_view_form" model="ir.ui.view">
<field name="name">hr.contract.view.form</field>
<field name="model">hr.contract</field>
@ -203,9 +211,8 @@
<field name="view_mode">tree,form</field>
<field name="domain">[]</field>
</record>
<menuitem name="Contract" id="menu_hr_contract" parent="hr.menu_hr_root"/>
<menuitem action="action_hr_contract" id="hr_menu_contract" parent="menu_hr_contract"/>
<menuitem action="action_hr_contract" id="hr_menu_contract" parent="hr.menu_hr_employee"/>
</data>
</openerp>

View File

@ -104,18 +104,18 @@
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Search Expense">
<group col='6' colspan='4'>
<filter icon="gtk-execute" string="My Expense" domain="[('user_id','=',uid)]" separator="1" help="Expenses Related to Current User"/>
<field name="state" select="1">
<filter icon="terp-hr" domain="[('state','=','confirm')]" help="Confirmed Expense"/>
<filter icon="terp-hr" domain="[('state','=','accepted')]" help="Accepted Expense"/>
<filter icon="terp-hr" domain="[('state','=','invoiced')]" help="Invoiced Expense"/>
</field>
<separator orientation="vertical"/>
<field name="name" select='1'/>
<field name="user_id" select="1" widget="selection"/>
</group>
</search>
<group col='6' colspan='4'>
<filter icon="gtk-execute" string="My Expense" domain="[('user_id','=',uid)]" separator="1" help="Expenses Related to Current User"/>
<field name="state" select="1">
<filter icon="terp-hr" domain="[('state','=','confirm')]" help="Confirmed Expense"/>
<filter icon="terp-hr" domain="[('state','=','accepted')]" help="Accepted Expense"/>
<filter icon="terp-hr" domain="[('state','=','invoiced')]" help="Invoiced Expense"/>
</field>
<separator orientation="vertical"/>
<field name="name" select='1'/>
<field name="user_id" select="1" widget="selection"/>
</group>
</search>
</field>
</record>
@ -126,23 +126,21 @@
<field name="search_view_id" ref="view_hr_expense_filter"/>
</record>
<menuitem id="next_id_49" name="Expenses"
parent="hr.menu_hr_root"/>
<menuitem id="menu_expenses" name="Expenses"
parent="hr.menu_hr_root"/>
<menuitem action="expense_all" id="menu_expense_all"
parent="next_id_49" groups="hr.group_hr_manager"/>
parent="menu_expenses" groups="hr.group_hr_manager"/>
<record id="view_product_hr_expense_form" model="ir.ui.view">
<field name="name">product.product.expense.form</field>
<field name="model">product.product</field>
<field name="inherit_id" ref="product.product_normal_form_view"/>
<field name="type">form</field>
<field name="arch" type="xml">
<field groups="base.group_extended" name="rental" position="after">
<field name="hr_expense_ok"/>
</field>
</field>
</record>
<field name="name">product.product.expense.form</field>
<field name="model">product.product</field>
<field name="inherit_id" ref="product.product_normal_form_view"/>
<field name="type">form</field>
<field name="arch" type="xml">
<field groups="base.group_extended" name="rental" position="after">
<field name="hr_expense_ok"/>
</field>
</field>
</record>
</data>
</openerp>

View File

@ -1,22 +1,23 @@
<?xml version="1.0" ?>
<openerp>
<data>
<wizard string="Print Summary of Holidays"
name="hr.holidays.summary"
id="holidays_summary"/>
<data>
<wizard string="Print Summary of Holidays"
name="hr.holidays.summary"
id="holidays_summary"/>
<menuitem name="Print Summary of Holidays" parent="hr.menu_hr_reporting"
action="holidays_summary"
type="wizard"
id="menu_holidays_summary"/>
<menuitem name="Print Summary of Holidays"
parent="hr.menu_hr_reporting"
action="holidays_summary"
type="wizard"
id="menu_holidays_summary"/>
<!-- restrict menu access to HR Manager -->
<record model='ir.ui.menu' id="menu_holidays_summary">
<field eval="[(6,0,[ref('hr.group_hr_manager')])]" name="groups_id"/>
</record>
<!-- restrict menu access to HR Manager -->
<record model='ir.ui.menu' id="menu_holidays_summary">
<field eval="[(6,0,[ref('hr.group_hr_manager')])]" name="groups_id"/>
</record>
<wizard string="Print Summary of Employee's Holidays"
model="hr.employee" name="hr.holidays.summary.employee"
keyword="client_print_multi" id="wizard_holidays_summary" />
</data>
<wizard string="Print Summary of Employee's Holidays"
model="hr.employee" name="hr.holidays.summary.employee"
keyword="client_print_multi" id="wizard_holidays_summary" />
</data>
</openerp>

View File

@ -10,18 +10,18 @@
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Search Leave">
<group col='6' colspan='4'>
<filter icon="gtk-execute" string="My Leaves" domain="[('user_id','=',uid)]" separator="1" help="Leaves Related to Current User"/>
<group col='6' colspan='4'>
<filter icon="gtk-execute" string="My Leaves" domain="[('user_id','=',uid)]" separator="1" help="Leaves Related to Current User"/>
<filter icon="gtk-execute" string="My Departments Leaves" domain="[('user_id','child_of',[uid])]" help="Leaves Related to Department"/>
<field name="state" select="1">
<filter icon="terp-hr" domain="[('state','=','confirm')]" help="Confirmed Holidays"/>
<filter icon="terp-hr" domain="[('state','=','refuse')]" help="Refused Holidays"/>
<filter icon="terp-hr" domain="[('state','=','validate')]" help="Validated Holidays"/>
</field>
<field name="name" select='1'/>
<field name="user_id" select="1" widget="selection"/>
</group>
</search>
<field name="state" select="1">
<filter icon="terp-hr" domain="[('state','=','confirm')]" help="Confirmed Holidays"/>
<filter icon="terp-hr" domain="[('state','=','refuse')]" help="Refused Holidays"/>
<filter icon="terp-hr" domain="[('state','=','validate')]" help="Validated Holidays"/>
</field>
<field name="name" select='1'/>
<field name="user_id" select="1" widget="selection"/>
</group>
</search>
</field>
</record>
@ -146,12 +146,12 @@
<menuitem
name="Holidays Management"
name="Leaves"
parent="hr.menu_hr_root"
id="menu_open_ask_holidays"/>
<record model="ir.actions.act_window" id="open_ask_holidays">
<field name="name">Leave Request(s)</field>
<field name="name">Leave Request(s)</field>
<field name="res_model">hr.holidays</field>
<field name="view_type">form</field>
<field name="view_id" ref="edit_holiday_new"/>
@ -159,7 +159,7 @@
<field name="search_view_id" ref="view_hr_holidays_filter"/>
</record>
<record model="ir.actions.act_window.view" id="action_open_ask_holidays_tree">
<record model="ir.actions.act_window.view" id="action_open_ask_holidays_tree">
<field name="sequence" eval="1"/>
<field name="view_mode">tree</field>
<field name="view_id" ref="view_holiday"/>
@ -173,22 +173,22 @@
<field name="act_window_id" ref="open_ask_holidays"/>
</record>
<menuitem
name="Holidays Requests"
parent="menu_open_ask_holidays"
id="menu_open_ask_holidays_new"
action="open_ask_holidays"/>
<menuitem
name="Leaves Requests"
parent="menu_open_ask_holidays"
id="menu_open_ask_holidays_new"
action="open_ask_holidays"/>
<record model="ir.actions.act_window" id="open_allocation_holidays">
<field name="name">Allocation Request(s)</field>
<field name="res_model">hr.holidays</field>
<field name="view_type">form</field>
<field name="context">{'type':'add'}</field>
<field name="domain">[('type','=','add')]</field>
<field name="view_id" ref="allocation_leave_new" />
</record>
<record model="ir.actions.act_window" id="open_allocation_holidays">
<field name="name">Allocation Request(s)</field>
<field name="res_model">hr.holidays</field>
<field name="view_type">form</field>
<field name="context">{'type':'add'}</field>
<field name="domain">[('type','=','add')]</field>
<field name="view_id" ref="allocation_leave_new" />
</record>
<record model="ir.actions.act_window.view" id="action_open_allocation_holidays_tree">
<record model="ir.actions.act_window.view" id="action_open_allocation_holidays_tree">
<field name="sequence" eval="1"/>
<field name="view_mode">tree</field>
<field name="view_id" ref="view_holiday"/>
@ -203,10 +203,10 @@
</record>
<menuitem
name="Allocation Requests"
parent="menu_open_ask_holidays"
id="menu_open_allocation_holidays"
action="open_allocation_holidays"/>
name="Recuperation Days Requests"
parent="menu_open_ask_holidays"
id="menu_open_allocation_holidays"
action="open_allocation_holidays"/>
<!-- holidays status -->
<record model="ir.ui.view" id="edit_holiday_status_form">
@ -236,17 +236,22 @@
</field>
</record>
<record id="open_view_holiday_status" model="ir.actions.act_window">
<field name="name">Leave Type</field>
<field name="name">Leaves Type</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">hr.holidays.status</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
</record>
<menuitem
name="Leaves"
id="menu_leaves_config"
parent="hr.menu_hr_configuration"/>
<menuitem
action="open_view_holiday_status"
id="menu_open_view_holiday_status"
parent="hr.menu_hr_configuration"/>
parent="menu_leaves_config"/>
<!-- Shortcuts -->
<act_window name="My Holiday Requests"

View File

@ -2,101 +2,101 @@
<openerp>
<data>
<!-- Roles definition -->
<!-- Roles definition -->
<record model="res.roles" id="HR_holidays">
<field name="name">Leaves Manager</field>
</record>
<record model="res.roles" id="HR_holidays">
<field name="name">Leaves Manager</field>
</record>
<!-- Workflow definition -->
<!-- Workflow definition -->
<record model="workflow" id="wkf_holidays">
<field name="name">hr.wkf.holidays</field>
<field name="osv">hr.holidays</field>
<field name="on_create">True</field>
</record>
<record model="workflow" id="wkf_holidays">
<field name="name">hr.wkf.holidays</field>
<field name="osv">hr.holidays</field>
<field name="on_create">True</field>
</record>
<record model="workflow.activity" id="act_draft">
<field name="wkf_id" ref="wkf_holidays" />
<field name="flow_start">True</field>
<field name="name">draft</field>
</record>
<record model="workflow.activity" id="act_draft">
<field name="wkf_id" ref="wkf_holidays" />
<field name="flow_start">True</field>
<field name="name">draft</field>
</record>
<record model="workflow.activity" id="act_confirm">
<field name="wkf_id" ref="wkf_holidays" />
<field name="name">confirm</field>
<field name="kind">function</field>
<field name="action">holidays_confirm()</field>
<field name="split_mode">OR</field>
</record>
<record model="workflow.activity" id="act_confirm">
<field name="wkf_id" ref="wkf_holidays" />
<field name="name">confirm</field>
<field name="kind">function</field>
<field name="action">holidays_confirm()</field>
<field name="split_mode">OR</field>
</record>
<record model="workflow.activity" id="act_validate">
<field name="wkf_id" ref="wkf_holidays" />
<field name="name">validate</field>
<field name="kind">function</field>
<field name="action">holidays_validate()</field>
</record>
<record model="workflow.activity" id="act_validate">
<field name="wkf_id" ref="wkf_holidays" />
<field name="name">validate</field>
<field name="kind">function</field>
<field name="action">holidays_validate()</field>
</record>
<record model="workflow.activity" id="act_refuse">
<field name="wkf_id" ref="wkf_holidays" />
<field name="name">refuse</field>
<field name="kind">function</field>
<field name="action">holidays_refuse()</field>
<record model="workflow.activity" id="act_refuse">
<field name="wkf_id" ref="wkf_holidays" />
<field name="name">refuse</field>
<field name="kind">function</field>
<field name="action">holidays_refuse()</field>
</record>
</record>
<record model="workflow.activity" id="act_cancel">
<field name="wkf_id" ref="wkf_holidays" />
<field name="name">cancel</field>
<field name="flow_stop">True</field>
<field name="kind">stopall</field>
<field name="action">holidays_cancel()</field>
<field name="join_mode">XOR</field>
</record>
<!--
workflow transition
-->
<record model="workflow.activity" id="act_cancel">
<field name="wkf_id" ref="wkf_holidays" />
<field name="name">cancel</field>
<field name="flow_stop">True</field>
<field name="kind">stopall</field>
<field name="action">holidays_cancel()</field>
<field name="join_mode">XOR</field>
</record>
<!--
workflow transition
-->
<record model="workflow.transition" id="t1">
<field name="act_from" ref="act_draft" />
<field name="act_to" ref="act_confirm" />
<field name="signal">confirm</field>
</record>
<record model="workflow.transition" id="t2">
<field name="act_from" ref="act_confirm" />
<field name="act_to" ref="act_validate" />
<field name="signal">validate</field>
<field name="role_id" ref="HR_holidays"/>
</record>
<record model="workflow.transition" id="t1">
<field name="act_from" ref="act_draft" />
<field name="act_to" ref="act_confirm" />
<field name="signal">confirm</field>
</record>
<record model="workflow.transition" id="t2">
<field name="act_from" ref="act_confirm" />
<field name="act_to" ref="act_validate" />
<field name="signal">validate</field>
<field name="role_id" ref="HR_holidays"/>
</record>
<record model="workflow.transition" id="t3">
<field name="act_from" ref="act_confirm" />
<field name="act_to" ref="act_refuse" />
<field name="signal">refuse</field>
<field name="role_id" ref="HR_holidays"/>
</record>
<record model="workflow.transition" id="t3">
<field name="act_from" ref="act_confirm" />
<field name="act_to" ref="act_refuse" />
<field name="signal">refuse</field>
<field name="role_id" ref="HR_holidays"/>
</record>
<record model="workflow.transition" id="t4">
<field name="act_from" ref="act_validate" />
<field name="act_to" ref="act_cancel" />
<field name="signal">cancel</field>
<field name="role_id" ref="HR_holidays"/>
</record>
<record model="workflow.transition" id="t4">
<field name="act_from" ref="act_validate" />
<field name="act_to" ref="act_cancel" />
<field name="signal">cancel</field>
<field name="role_id" ref="HR_holidays"/>
</record>
<record model="workflow.transition" id="t5">
<field name="act_from" ref="act_refuse" />
<field name="act_to" ref="act_cancel" />
<field name="signal">cancel</field>
<field name="role_id" ref="HR_holidays"/>
</record>
<record model="workflow.transition" id="t5">
<field name="act_from" ref="act_refuse" />
<field name="act_to" ref="act_cancel" />
<field name="signal">cancel</field>
<field name="role_id" ref="HR_holidays"/>
</record>
<record model="workflow.transition" id="t7">
<field name="act_from" ref="act_cancel" />
<field name="act_to" ref="act_draft" />
<field name="signal">set_to_draft</field>
</record>
<record model="workflow.transition" id="t7">
<field name="act_from" ref="act_cancel" />
<field name="act_to" ref="act_draft" />
<field name="signal">set_to_draft</field>
</record>
</data>
</openerp>

View File

@ -4,7 +4,8 @@
<report auto="False" id="report_user_timesheet" menu="False" model="hr.employee" name="hr.analytical.timesheet" string="Employee timesheet" xsl="hr_timesheet/report/user_timesheet.xsl"/>
<wizard id="wizard_hr_timesheet" menu="False" model="hr.employee" name="hr.analytical.timesheet" string="Employee Timesheet"/>
<menuitem id="next_id_48" name="Timesheet" parent="hr.menu_hr_reporting"/><menuitem action="wizard_hr_timesheet" id="menu_wizard_hr_timesheet" parent="next_id_48" type="wizard"
<menuitem id="next_id_48" name="Timesheet" parent="hr.menu_hr_reporting"/>
<menuitem action="wizard_hr_timesheet" id="menu_wizard_hr_timesheet" parent="next_id_48" type="wizard"
groups="hr.group_hr_manager"
/>

View File

@ -60,19 +60,8 @@
</field>
</record>
<menuitem id="menu_act_hr_timesheet_line_today_form" parent="hr.menu_hr_root" name="Working Hours" />
<menuitem id="menu_act_hr_timesheet_line_today_form" parent="hr.menu_hr_time" name="Working Hours" />
<record id="act_hr_timesheet_line_me_all_form" model="ir.actions.act_window">
<field name="name">My Working Hours</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">hr.analytic.timesheet</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('user_id','=',uid)]</field>
<field name="filter" eval="True"/>
<field name="search_view_id" ref="hr_timesheet_line_search"/>
</record>
<record id="act_hr_timesheet_line_evry1_all_form" model="ir.actions.act_window">
<field name="name">Working Hours</field>
<field name="type">ir.actions.act_window</field>

View File

@ -2,7 +2,7 @@
<openerp>
<data>
<wizard id="si_so" model="hr.employee" name="hr_timesheet.si_so" string="Sign in / Sign out by project"/>
<menuitem action="si_so" id="menu_si_so" parent="hr_attendance.menu_hr_attendance" type="wizard"/>
<menuitem action="si_so" id="menu_si_so" parent="hr.menu_hr_time" type="wizard"/>
</data>
</openerp>

View File

@ -24,10 +24,10 @@
groups="account.group_account_manager"/>
<menuitem action="account_analytic_profit"
id="print_account_analytic_profit"
parent="hr.menu_hr_reporting"
type="wizard"
groups="hr.group_hr_manager"/>
id="print_account_analytic_profit"
parent="hr.menu_hr_reporting"
type="wizard"
groups="hr.group_hr_manager"/>
</data>
</openerp>

View File

@ -1,7 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<menuitem id="hr.menu_hr_reporting" name="Reporting" parent="hr.menu_hr_root" sequence="40"/>
<record id="account_analytic_account_form_form" model="ir.ui.view">
<field name="name">account.analytic.account.invoice.form</field>
<field name="model">account.analytic.account</field>
@ -106,7 +105,10 @@
<field name="view_mode">tree,form</field>
<field name="domain">[('to_invoice','&lt;&gt;',False)]</field>
</record>
<menuitem action="action_hr_analytic_timesheet_open_tree" id="menu_hr_analytic_timesheet_tree" parent="account.menu_finance_periodical_processing"/>
<menuitem
action="action_hr_analytic_timesheet_open_tree"
id="menu_hr_analytic_timesheet_tree"
parent="account.menu_finance_periodical_processing"/>
<record id="action_hr_analytic_timesheet_tree_invoiced" model="ir.actions.act_window">
<field name="name">Uninvoiced Entries</field>
@ -164,7 +166,10 @@
<field name="view_type">form</field>
<field name="view_id" ref="view_hr_timesheet_invoice_factor_tree"/>
</record>
<menuitem action="action_hr_timesheet_invoice_factor_form" id="hr_timesheet_invoice_factor_view" parent="account.account_analytic_def_account"/>
<menuitem
action="action_hr_timesheet_invoice_factor_form"
id="hr_timesheet_invoice_factor_view"
parent="account.account_analytic_def_account"/>
</data>
</openerp>

View File

@ -200,9 +200,9 @@
<field name="view_id" eval="False"/>
<field name="search_view_id" ref="view_hr_timesheet_sheet_filter"/>
</record>
<menuitem id="next_id_60" name="Timesheets" parent="hr.menu_hr_root"/>
<menuitem action="act_hr_timesheet_sheet_form" id="menu_act_hr_timesheet_sheet_form" parent="next_id_60"
groups="hr.group_hr_manager"/>
<menuitem
action="act_hr_timesheet_sheet_form"
id="menu_act_hr_timesheet_sheet_form" parent="hr.menu_hr_time"/>
<!--
Company inheritancy

View File

@ -24,7 +24,8 @@
'name': 'eMail Gateway',
'version': '1.0',
'category': 'Generic Modules/eMail Gate',
'description': """The generic email gateway system for the synchronisation interface
'description': """
The generic email gateway system for the synchronisation interface
between mails and Open Objects.
""",
'author': 'Tiny',

View File

@ -195,11 +195,10 @@ class mail_gateway(osv.osv):
s = decode_header(s)
return ''.join(map(lambda x:x[0].decode(x[1] or 'ascii', 'replace'), s))
def msg_new(self, cr, uid, msg, model):
message = self.msg_body_get(msg)
def msg_new(self, cr, uid, msg, model):
message = self.msg_body_get(msg)
res_model = self.pool.get(model)
res_id = res_model.msg_new(cr, uid, msg)
res_id = res_model.msg_new(cr, uid, msg)
if res_id:
attachments = message['attachment']
@ -376,5 +375,3 @@ class mail_gateway_history(osv.osv):
}
_order = 'id desc'
mail_gateway_history()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: