[Merge] Usability changes
[odoo/odoo.git] / addons / hr_recruitment / hr_recruitment_view.xml
1 <?xml version="1.0"?>
2 <openerp>
3     <data>
4
5        <menuitem
6         id="menu_hr_config_applicant"
7         name="Applicant"
8         parent="hr.menu_hr_configuration"
9         />
10
11     # ------------------------------------------------------
12     # Job Categories
13     # ------------------------------------------------------
14
15     <record id="hr_job_categ_action" model="ir.actions.act_window">
16                 <field name="name">Applicant Categories</field>
17                 <field name="res_model">crm.case.categ</field>
18                 <field name="view_type">form</field>
19                 <field name="view_id" ref="crm.crm_case_categ_tree-view"/>
20                 <field name="domain">[('object_id.model', '=', 'hr.applicant')]</field>
21                 <field name="context">{'object_id':'hr.applicant'}</field>
22     </record>
23     # ------------------------------------------------------
24     # Stage
25     # ------------------------------------------------------
26     <record id="hr_job_stage_act" model="ir.actions.act_window">
27         <field name="name">Applicant Stages</field>
28         <field name="res_model">crm.case.stage</field>
29         <field name="view_type">form</field>
30         <field name="view_id"  ref="crm.crm_case_stage_tree"/>
31         <field name="domain">[('object_id.model', '=', 'hr.applicant')]</field>
32         <field name="context">{'object_id':'hr.applicant'}</field>
33     </record>
34
35     <menuitem action="hr_job_stage_act" id="menu_hr_job_stage_act" name="Stages" parent="menu_hr_config_applicant"/>
36
37     # ------------------------------------------------------
38     # Jobs
39     # ------------------------------------------------------
40
41     <record model="ir.ui.view" id="crm_case_tree_view_job">
42         <field name="name">Applicants</field>
43         <field name="model">hr.applicant</field>
44         <field name="type">tree</field>
45         <field name="arch" type="xml">
46             <tree string="Applicants" colors="grey:state in ('cancel','done');blue:state=='pending'">
47                 <field name="create_date"/>
48                 <field name="partner_name"/>
49                 <field name="email_from"/>
50                 <field name="partner_phone"/>
51                 <field name="job_id"/>
52                 <field name="stage_id"/>
53                 <button name="stage_previous" string="Previous" states="open,pending" type="object" icon="gtk-go-back"/>
54                 <button name="stage_next" string="Next" states="open,pending" type="object" icon="gtk-go-forward"/>
55                 <field name="survey" invisible="1"/>
56                 <field name="response" invisible="1"/>
57                 <field name="priority"/>
58                 <field name="type_id" invisible="1"/>
59                 <field name="availability" invisible="1"/>
60                 <field name="department_id" invisible="context.get('invisible_department', True)"/>
61                 <field name="user_id"/>
62                 <field name="state"/>
63                 <button name="case_open" string="In Progress" states="draft,pending" type="object" icon="gtk-go-forward"/>
64                 <button name="case_pending" string="Pending" states="draft,open" type="object" icon="gtk-media-pause"/>
65                 <button name="case_close" string="Hired" states="open,draft,pending" type="object" icon="terp-partner"/>
66                 <button name="case_cancel" string="Refused" states="draft,open,pending" type="object" icon="gtk-cancel"/>
67
68             </tree>
69         </field>
70     </record>
71
72     <record model="ir.ui.view" id="crm_case_form_view_job">
73         <field name="name">Jobs - Recruitment Form</field>
74         <field name="model">hr.applicant</field>
75         <field name="type">form</field>
76         <field name="arch" type="xml">
77             <form string="Jobs - Recruitment Form">
78                 <group colspan="4" col="8">
79                      <group colspan="3" col="6">
80                         <field name="name" string="Subject"/>
81                         <field name="stage_id"/>
82                         <button name="stage_previous" string="" type="object" icon="gtk-go-back"/>
83                         <button icon="gtk-go-forward" string="" name="stage_next" type="object"/>
84                     </group>
85                     <newline/>
86                     <group colspan="3" col="6">
87                                 <field name="partner_name"/>
88                                 <field name="job_id" on_change="onchange_job(job_id)"/>
89                                 <button string="Schedule a Phone Call" name="%(action_hr_recruitment_phonecall)d" icon="gtk-redo" type="action"/>
90                      </group>
91                     <newline/>
92                     <group colspan="3" col="6">
93                         <field name="user_id"/>
94                         <field name="department_id" widget="selection"/>
95                         <button name="action_makeMeeting" type="object" string="Schedule Meeting" icon="terp-hr"/>
96                     </group>
97                     <button name="action_print_survey" string="Print Interview" type="object" icon="gtk-print" attrs="{'readonly':[('survey','=',False)]}" groups="base.group_extended"/>
98                     <button name="%(survey.action_view_survey_question_message)d" string="Interview Question" type="action" icon="gtk-execute" context="{'survey_id': survey, 'response_id': [response], 'response_no':0 ,'active' : response, 'object' : 'hr.applicant', 'cur_id' :active_id}" attrs="{'readonly':[('survey','=',False)]}" groups="base.group_extended"/>
99                 </group>
100                 <notebook colspan="4">
101                     <page string="Job Info">
102                         <group col="2" colspan="2">
103                             <separator colspan="2" string="Contact"/>
104                             <field name="partner_id" on_change="onchange_partner_id(partner_id, email_from)" />
105                             <field name="partner_address_id" on_change="onchange_partner_address_id(partner_address_id, email_from)"/>
106                             <field name="email_from"/>
107                             <field name="partner_phone"/>
108                             <field name="partner_mobile"/>
109                         </group>
110                         <group col="2" colspan="2">
111                             <separator colspan="2" string="Contract Data"/>
112                             <field name="availability"/>
113                             <field name="salary_expected"/>
114                             <field name="salary_proposed"/>
115                         </group>
116                         <group col="2" colspan="2">
117                             <separator colspan="2" string="Qualification"/>
118                             <field name="type_id" domain="[('object_id.model', '=', 'hr.applicant')]"/>
119                             <field name="priority" string="Appreciation"/>
120                         </group>
121                         <group col="2" colspan="2">
122                            <separator colspan="2" string="Dates"/>
123                            <field name="create_date"/>
124                            <field name="write_date"/>
125                            <field name="date_closed"/>
126                         </group>
127                         <separator colspan="4" string="Status"/>
128                         <group col="8" colspan="4">
129                             <field name="state"/>
130                             <button name="case_open" string="In Progress" states="draft,pending" type="object" icon="gtk-go-forward"/>
131                             <button name="case_pending" string="Pending" states="draft,open" type="object" icon="gtk-media-pause"/>
132                             <button name="case_close" string="Hired" states="open,draft,pending" type="object" icon="terp-partner"/>
133                             <button name="case_cancel" string="Refused" states="draft,open,pending" type="object" icon="gtk-cancel"/>
134                             <button name="case_reset" string="Reset to New" states="done,cancel" type="object" icon="gtk-convert"/>
135                         </group>
136                    </page>
137                    <page string="Internal Notes">
138                        <field name="description" nolabel="1" colspan="4"/>
139                    </page>
140                    <page string="History" groups="base.group_extended">
141                        <field name="id"/>
142                        <field name="active"/>
143                        <field name="log_ids" nolabel="1" colspan="4">
144                         <tree string="Logs">
145                             <field name="name" colspan="4"/>
146                             <field name="date"/>
147                             <field name="user_id"/>
148                         </tree>
149                         <form string="Logs">
150                             <separator string="Action Information" colspan="4"/>
151                             <field name="name" colspan="4"/>
152                             <field name="date"/>
153                             <field name="user_id"/>
154                         </form>
155                     </field>
156                     </page>
157                    <page string="Emails" groups="base.group_extended">
158                        <group colspan="4">
159                            <field colspan="4" name="email_cc" string="CC"/>
160                        </group>
161                        <field name="message_ids" colspan="4" nolabel="1" mode="form,tree">
162                            <form string="Communication history">
163                                     <group col="6" colspan="4">
164                                         <field name="date"/>
165                                         <field name="email_to"/>
166                                         <field name="email_from"/>
167                                     </group>
168                                     <notebook colspan="4">
169                                         <page string="Details">
170                                             <field name="description" colspan="4" nolabel="1"/>
171                                         </page>
172                                         <page string="Attachments">
173                                             <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
174                                         </page>
175                                     </notebook>
176                                     <button colspan="4"
177                                     string="Reply to Last Email"
178                                     name="%(crm.action_crm_send_mail)d"
179                                     context="{'mail':'reply', 'model': 'hr.applicant'}"
180                                     icon="gtk-undo" type="action" />
181                                 </form>
182                                 <tree string="Communication history">
183                                     <field name="date"/>
184                                     <field name="email_from" />
185                                     <field name="email_to"/>
186                                     <field name="description"/>
187                                 </tree>
188                             </field>
189                            <button colspan="4" string="Send New Email"
190                                 name="%(crm.action_crm_send_mail)d"
191                                 context="{'mail':'new', 'model': 'hr.applicant'}"
192                                 icon="gtk-go-forward" type="action" />
193                  </page>
194                 </notebook>
195             </form>
196         </field>
197     </record>
198
199
200     <record model="ir.ui.view" id="crm_case_graph_view_job">
201         <field name="name">Jobs - Recruitment Graph</field>
202         <field name="model">hr.applicant</field>
203         <field name="type">graph</field>
204         <field name="arch" type="xml">
205               <graph string="Cases By Stage and Estimates" type="bar" orientation="vertical">
206                 <field name="job_id"/>
207                 <field name="salary_expected" operator="+"/>
208                 <field name="state" group="True"/>
209             </graph>
210         </field>
211     </record>
212
213     <record id="view_crm_case_jobs_filter" model="ir.ui.view">
214         <field name="name">Jobs - Recruitment Search</field>
215         <field name="model">hr.applicant</field>
216         <field name="type">search</field>
217         <field name="arch" type="xml">
218             <search string="Search Jobs">
219                <filter icon="gtk-new" string="Current"
220                    domain="[('state','in',('draft','open'))]"
221                    help="All new and in progress jobs"
222                    default="1"
223                />
224                <filter icon="gtk-new" string="New"
225                    domain="[('state','=','draft')]"
226                    help="All Initial Jobs"
227                />
228                <filter icon="gtk-yes" string="In Progress"
229                    domain="[('state','=','open')]"
230                    help="Open Jobs"
231                />
232                <filter icon="gtk-media-pause" string="Pending"
233                    domain="[('state','=','pending')]"
234                    help="Pending Jobs"
235                />
236                <separator orientation="vertical"/>
237                <field name="partner_name"/>
238                <field name="email_from"/>
239                <field name="job_id" widget="selection"/>
240                <field name="user_id" widget="selection">
241                     <filter domain="[('user_id','=',False)]" help="Unassigned Recruitements" icon="gtk-execute" separator="1"/>
242                </field>
243                <field name="department_id" widget="selection" string="Department" context="{'invisible_department': False}">
244                    <filter icon="terp-hr" context="{'invisible_department': False}"
245                        domain="[('department_id','=',context.get('department_id',False))]"
246                        help="My Department"/>
247                </field>
248                <newline/>
249                 <group expand="0" string="Group By..." colspan="11" col="20">
250                     <filter string="Department" icon="terp-project" domain="[]" context="{'group_by':'department_id'}"/>
251                     <filter string="Responsible" icon="terp-project" domain="[]"  context="{'group_by':'user_id'}"/>
252                     <separator orientation="vertical"/>
253                     <filter string="Job" icon="terp-project" domain="[]" context="{'group_by':'job_id'}"/>
254                     <filter string="Stage" icon="terp-project" domain="[]" context="{'group_by':'stage_id'}"/>
255                     <filter string="Degree" icon="terp-project" domain="[]" context="{'group_by':'type_id'}"/>
256                     <filter string="Availability" icon="terp-project" domain="[]" context="{'group_by':'availability'}"/>
257                     <filter string="State" icon="terp-project" domain="[]" context="{'group_by':'state'}"/>
258                     <separator orientation="vertical"/>
259                     <filter string="Appreciation" icon="terp-project" domain="[]" context="{'group_by':'priority'}"/>
260                     <separator orientation="vertical"/>
261                     <filter string="Date" icon="terp-project" domain="[]" context="{'group_by':'create_date'}"/>
262                 </group>
263            </search>
264         </field>
265     </record>
266
267     # ------------------------------------------------------
268     # HR Job
269     # ------------------------------------------------------
270
271     <record id="hr_job_survey" model="ir.ui.view">
272         <field name="name">hr.job.form1</field>
273         <field name="model">hr.job</field>
274         <field name="type">form</field>
275         <field name="inherit_id" ref="hr.view_hr_job_form"/>
276         <field name="arch" type="xml">
277             <field name="no_of_employee" position="after">
278                 <field name="survey_id"/>
279             </field>
280         </field>
281     </record>
282
283 <!-- Stage Tree View -->
284
285         <record model="ir.ui.view" id="hr_recruitment_stage_tree">
286             <field name="name">hr.recruitment.stage.tree</field>
287             <field name="model">hr.recruitment.stage</field>
288             <field name="type">tree</field>
289             <field name="arch" type="xml">
290                 <tree string="Stages">
291                     <field name="sequence"/>
292                     <field name="name"/>
293                 </tree>
294             </field>
295         </record>
296
297 <!-- Stage Form View -->
298
299         <record model="ir.ui.view" id="hr_recruitment_stage_form">
300             <field name="name">hr.recruitment.stage.form</field>
301             <field name="model">hr.recruitment.stage</field>
302             <field name="type">form</field>
303             <field name="arch" type="xml">
304                 <form string="Stage">
305                     <separator string="Stage Definition" colspan="4"/>
306                     <field name="name" select="1"/>
307                     <field name="sequence"/>
308                     <separator string="Requirements" colspan="4"/>
309                     <field name="requirements" nolabel="1" colspan="4"/>
310                 </form>
311             </field>
312         </record>
313
314 <!-- Stage Action -->
315
316         <record id="hr_recruitment_stage_act" model="ir.actions.act_window">
317             <field name="name">Stages</field>
318             <field name="res_model">hr.recruitment.stage</field>
319             <field name="view_type">form</field>
320             <field name="view_id" ref="hr_recruitment_stage_tree"/>
321         </record>
322
323         <menuitem
324             id="menu_hr_recruitment_recruitment"
325             name="Recruitment"
326             parent="hr.menu_hr_configuration"
327             />
328
329         <menuitem
330                 id="menu_hr_recruitment_stage"
331                 name="Stages"
332                 parent="menu_hr_recruitment_recruitment"
333                 action="hr_recruitment_stage_act"
334                 sequence="1"/>
335
336     </data>
337 </openerp>