Merge lp:~openerp-dev/openobject-addons/trunk-legend-widget-mba-1 into lp:openobject-addons

Proposed by Mahendra Barad(OpenERP)
Status: Merged
Merged at revision: 9429
Proposed branch: lp:~openerp-dev/openobject-addons/trunk-legend-widget-mba-1
Merge into: lp:openobject-addons
Diff against target: 1100 lines (+125/-234)
29 files modified
crm/crm.py (+5/-5)
crm/crm_lead.py (+0/-15)
crm/crm_lead_demo.xml (+15/-15)
crm/crm_lead_view.xml (+6/-5)
crm/crm_phonecall.py (+2/-2)
crm/crm_phonecall_demo.xml (+5/-5)
crm/crm_phonecall_view.xml (+1/-1)
crm/report/crm_phonecall_report.py (+1/-1)
crm_claim/crm_claim.py (+2/-2)
crm_claim/crm_claim_demo.xml (+6/-6)
crm_claim/crm_claim_view.xml (+1/-1)
crm_claim/report/crm_claim_report.py (+3/-5)
crm_helpdesk/crm_helpdesk.py (+2/-2)
crm_helpdesk/crm_helpdesk_demo.xml (+3/-3)
crm_helpdesk/crm_helpdesk_view.xml (+1/-1)
hr_recruitment/hr_recruitment.py (+4/-20)
hr_recruitment/hr_recruitment_demo.xml (+1/-1)
hr_recruitment/hr_recruitment_view.xml (+6/-17)
portal_project_issue/portal_project_issue_view.xml (+1/-15)
project/project.py (+6/-25)
project/project_data.xml (+6/-0)
project/project_demo.xml (+4/-4)
project/project_view.xml (+11/-15)
project/report/project_report.py (+1/-1)
project_issue/project_issue.py (+4/-25)
project_issue/project_issue_data.xml (+6/-0)
project_issue/project_issue_demo.xml (+10/-10)
project_issue/project_issue_view.xml (+11/-31)
project_issue/report/project_issue_report.py (+1/-1)
To merge this branch: bzr merge lp:~openerp-dev/openobject-addons/trunk-legend-widget-mba-1
Reviewer Review Type Date Requested Status
OpenERP Core Team Pending
Review via email: mp+206482@code.launchpad.net

Description of the change

[IMP] crm, hr_recruitment, project, project_issue: use the newly-introduced widgets for the kanban state and the priority management.

This branch comes with a web branch holding those new widgets for form and kanban views.

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'crm/crm.py'
--- crm/crm.py 2014-02-11 11:09:36 +0000
+++ crm/crm.py 2014-05-08 15:35:32 +0000
@@ -28,11 +28,11 @@
28from openerp.osv import osv28from openerp.osv import osv
2929
30AVAILABLE_PRIORITIES = [30AVAILABLE_PRIORITIES = [
31 ('1', 'Highest'),31 ('0', 'Very Low'),
32 ('2', 'High'),32 ('1', 'Low'),
33 ('3', 'Normal'),33 ('2', 'Normal'),
34 ('4', 'Low'),34 ('3', 'High'),
35 ('5', 'Lowest'),35 ('4', 'Very High'),
36]36]
3737
38class crm_case_channel(osv.osv):38class crm_case_channel(osv.osv):
3939
=== modified file 'crm/crm_lead.py'
--- crm/crm_lead.py 2014-05-07 10:09:54 +0000
+++ crm/crm_lead.py 2014-05-08 15:35:32 +0000
@@ -455,21 +455,6 @@
455 self.write(cr, uid, [case.id], data, context=context)455 self.write(cr, uid, [case.id], data, context=context)
456 return True456 return True
457457
458 def set_priority(self, cr, uid, ids, priority, context=None):
459 """ Set lead priority
460 """
461 return self.write(cr, uid, ids, {'priority': priority}, context=context)
462
463 def set_high_priority(self, cr, uid, ids, context=None):
464 """ Set lead priority to high
465 """
466 return self.set_priority(cr, uid, ids, '1', context=context)
467
468 def set_normal_priority(self, cr, uid, ids, context=None):
469 """ Set lead priority to normal
470 """
471 return self.set_priority(cr, uid, ids, '3', context=context)
472
473 def _merge_get_result_type(self, cr, uid, opps, context=None):458 def _merge_get_result_type(self, cr, uid, opps, context=None):
474 """459 """
475 Define the type of the result of the merge. If at least one of the460 Define the type of the result of the merge. If at least one of the
476461
=== modified file 'crm/crm_lead_demo.xml'
--- crm/crm_lead_demo.xml 2013-10-27 12:31:04 +0000
+++ crm/crm_lead_demo.xml 2014-05-08 15:35:32 +0000
@@ -54,7 +54,7 @@
54 <field name="type_id" ref="type_lead7"/>54 <field name="type_id" ref="type_lead7"/>
55 <field name="categ_ids" eval="[(6, 0, [categ_oppor2])]"/>55 <field name="categ_ids" eval="[(6, 0, [categ_oppor2])]"/>
56 <field name="channel_id" ref="crm_case_channel_website"/>56 <field name="channel_id" ref="crm_case_channel_website"/>
57 <field name="priority">4</field>57 <field name="priority">1</field>
58 <field name="section_id" ref="section_sales_department"/>58 <field name="section_id" ref="section_sales_department"/>
59 <field name="user_id" ref="base.user_root"/>59 <field name="user_id" ref="base.user_root"/>
60 <field name="stage_id" ref="stage_lead1"/>60 <field name="stage_id" ref="stage_lead1"/>
@@ -104,7 +104,7 @@
104 <field name="type_id" ref="type_lead8"/>104 <field name="type_id" ref="type_lead8"/>
105 <field name="categ_ids" eval="[(6, 0, [categ_oppor5])]"/>105 <field name="categ_ids" eval="[(6, 0, [categ_oppor5])]"/>
106 <field name="channel_id" ref=""/>106 <field name="channel_id" ref=""/>
107 <field name="priority">3</field>107 <field name="priority">2</field>
108 <field name="section_id" ref="crm_case_section_2"/>108 <field name="section_id" ref="crm_case_section_2"/>
109 <field name="user_id" ref="base.user_demo"/>109 <field name="user_id" ref="base.user_demo"/>
110 <field name="stage_id" ref="stage_lead6"/>110 <field name="stage_id" ref="stage_lead6"/>
@@ -129,7 +129,7 @@
129 <field name="type_id" ref="type_lead3"/>129 <field name="type_id" ref="type_lead3"/>
130 <field name="categ_ids" eval="[(6, 0, [categ_oppor1])]"/>130 <field name="categ_ids" eval="[(6, 0, [categ_oppor1])]"/>
131 <field name="channel_id" ref="crm_case_channel_website"/>131 <field name="channel_id" ref="crm_case_channel_website"/>
132 <field name="priority">3</field>132 <field name="priority">2</field>
133 <field name="section_id" ref="crm_case_section_1"/>133 <field name="section_id" ref="crm_case_section_1"/>
134 <field name="user_id" ref=""/>134 <field name="user_id" ref=""/>
135 <field name="stage_id" ref="stage_lead1"/>135 <field name="stage_id" ref="stage_lead1"/>
@@ -156,7 +156,7 @@
156 <field name="type_id" ref="type_lead3"/>156 <field name="type_id" ref="type_lead3"/>
157 <field name="categ_ids" eval="[(6, 0, [categ_oppor3,categ_oppor4])]"/>157 <field name="categ_ids" eval="[(6, 0, [categ_oppor3,categ_oppor4])]"/>
158 <field name="channel_id" ref=""/>158 <field name="channel_id" ref=""/>
159 <field name="priority">3</field>159 <field name="priority">2</field>
160 <field name="section_id" ref="crm_case_section_2"/>160 <field name="section_id" ref="crm_case_section_2"/>
161 <field name="user_id" ref=""/>161 <field name="user_id" ref=""/>
162 <field name="stage_id" ref="stage_lead1"/>162 <field name="stage_id" ref="stage_lead1"/>
@@ -174,7 +174,7 @@
174 <field name="type_id" ref="type_lead8"/>174 <field name="type_id" ref="type_lead8"/>
175 <field name="categ_ids" eval="[(6, 0, [categ_oppor4])]"/>175 <field name="categ_ids" eval="[(6, 0, [categ_oppor4])]"/>
176 <field name="channel_id" ref=""/>176 <field name="channel_id" ref=""/>
177 <field name="priority">5</field>177 <field name="priority">0</field>
178 <field name="section_id" ref="crm_case_section_2"/>178 <field name="section_id" ref="crm_case_section_2"/>
179 <field name="user_id" ref="base.user_root"/>179 <field name="user_id" ref="base.user_root"/>
180 <field name="stage_id" ref="stage_lead1"/>180 <field name="stage_id" ref="stage_lead1"/>
@@ -193,7 +193,7 @@
193 <field name="type_id" ref="type_lead5"/>193 <field name="type_id" ref="type_lead5"/>
194 <field name="categ_ids" eval="[(6, 0, [categ_oppor6,categ_oppor8])]"/>194 <field name="categ_ids" eval="[(6, 0, [categ_oppor6,categ_oppor8])]"/>
195 <field name="channel_id" ref=""/>195 <field name="channel_id" ref=""/>
196 <field name="priority">4</field>196 <field name="priority">1</field>
197 <field name="section_id" ref="section_sales_department"/>197 <field name="section_id" ref="section_sales_department"/>
198 <field name="user_id" ref="base.user_root"/>198 <field name="user_id" ref="base.user_root"/>
199 <field name="stage_id" ref="stage_lead1"/>199 <field name="stage_id" ref="stage_lead1"/>
@@ -253,7 +253,7 @@
253 <field name="type_id" ref="type_lead3"/>253 <field name="type_id" ref="type_lead3"/>
254 <field name="categ_ids" eval="[(6, 0, [categ_oppor7])]"/>254 <field name="categ_ids" eval="[(6, 0, [categ_oppor7])]"/>
255 <field name="channel_id" ref="crm_case_channel_direct"/>255 <field name="channel_id" ref="crm_case_channel_direct"/>
256 <field name="priority">3</field>256 <field name="priority">2</field>
257 <field name="section_id" ref="crm_case_section_1"/>257 <field name="section_id" ref="crm_case_section_1"/>
258 <field name="user_id" ref=""/>258 <field name="user_id" ref=""/>
259 <field name="stage_id" ref="stage_lead1"/>259 <field name="stage_id" ref="stage_lead1"/>
@@ -331,7 +331,7 @@
331 <field name="type_id" ref="type_lead3"/>331 <field name="type_id" ref="type_lead3"/>
332 <field name="categ_ids" eval="[(6, 0, [categ_oppor2])]"/>332 <field name="categ_ids" eval="[(6, 0, [categ_oppor2])]"/>
333 <field name="channel_id" ref="crm_case_channel_website"/>333 <field name="channel_id" ref="crm_case_channel_website"/>
334 <field name="priority">3</field>334 <field name="priority">2</field>
335 <field eval="time.strftime('%Y-%m-23')" name="date_deadline"/>335 <field eval="time.strftime('%Y-%m-23')" name="date_deadline"/>
336 <field eval="time.strftime('%Y-%m-10')" name="date_action"/>336 <field eval="time.strftime('%Y-%m-10')" name="date_action"/>
337 <field name="title_action">Send Catalogue by Email</field>337 <field name="title_action">Send Catalogue by Email</field>
@@ -404,7 +404,7 @@
404 <field name="type_id" ref="type_lead3"/>404 <field name="type_id" ref="type_lead3"/>
405 <field name="categ_ids" eval="[(6, 0, [categ_oppor3,categ_oppor4])]"/>405 <field name="categ_ids" eval="[(6, 0, [categ_oppor3,categ_oppor4])]"/>
406 <field name="channel_id" ref="crm_case_channel_website"/>406 <field name="channel_id" ref="crm_case_channel_website"/>
407 <field name="priority">4</field>407 <field name="priority">1</field>
408 <field eval="time.strftime('%Y-%m-8')" name="date_deadline"/>408 <field eval="time.strftime('%Y-%m-8')" name="date_deadline"/>
409 <field eval="time.strftime('%Y-%m-3')" name="date_action"/>409 <field eval="time.strftime('%Y-%m-3')" name="date_action"/>
410 <field name="title_action">Send price list regarding our interventions</field>410 <field name="title_action">Send price list regarding our interventions</field>
@@ -431,7 +431,7 @@
431 <field name="partner_id" ref="base.res_partner_4"/>431 <field name="partner_id" ref="base.res_partner_4"/>
432 <field name="type_id" ref="type_lead8"/>432 <field name="type_id" ref="type_lead8"/>
433 <field name="categ_ids" eval="[(6, 0, [categ_oppor4,categ_oppor6])]"/>433 <field name="categ_ids" eval="[(6, 0, [categ_oppor4,categ_oppor6])]"/>
434 <field name="priority">4</field>434 <field name="priority">1</field>
435 <field eval="time.strftime('%Y-%m-13')" name="date_deadline"/>435 <field eval="time.strftime('%Y-%m-13')" name="date_deadline"/>
436 <field eval="time.strftime('%Y-%m-4')" name="date_action"/>436 <field eval="time.strftime('%Y-%m-4')" name="date_action"/>
437 <field name="title_action">Call to define real needs about training</field>437 <field name="title_action">Call to define real needs about training</field>
@@ -492,7 +492,7 @@
492 <field name="type_id" ref="type_lead2"/>492 <field name="type_id" ref="type_lead2"/>
493 <field name="categ_ids" eval="[(6, 0, [categ_oppor7])]"/>493 <field name="categ_ids" eval="[(6, 0, [categ_oppor7])]"/>
494 <field name="channel_id" ref="crm_case_channel_phone"/>494 <field name="channel_id" ref="crm_case_channel_phone"/>
495 <field name="priority">3</field>495 <field name="priority">2</field>
496 <field name="section_id" ref="crm_case_section_2"/>496 <field name="section_id" ref="crm_case_section_2"/>
497 <field name="user_id" ref="base.user_root"/>497 <field name="user_id" ref="base.user_root"/>
498 <field name="stage_id" ref="crm.stage_lead4"/>498 <field name="stage_id" ref="crm.stage_lead4"/>
@@ -510,7 +510,7 @@
510 <field name="type_id" ref="type_lead7"/>510 <field name="type_id" ref="type_lead7"/>
511 <field name="categ_ids" eval="[(6, 0, [categ_oppor3])]"/>511 <field name="categ_ids" eval="[(6, 0, [categ_oppor3])]"/>
512 <field name="channel_id" ref="crm_case_channel_email"/>512 <field name="channel_id" ref="crm_case_channel_email"/>
513 <field name="priority">3</field>513 <field name="priority">1</field>
514 <field name="section_id" ref="crm_case_section_2"/>514 <field name="section_id" ref="crm_case_section_2"/>
515 <field name="user_id" ref="base.user_root"/>515 <field name="user_id" ref="base.user_root"/>
516 <field name="stage_id" ref="crm.stage_lead5"/>516 <field name="stage_id" ref="crm.stage_lead5"/>
@@ -525,7 +525,7 @@
525 <field name="type_id" ref="type_lead5"/>525 <field name="type_id" ref="type_lead5"/>
526 <field name="categ_ids" eval="[(6, 0, [categ_oppor3])]"/>526 <field name="categ_ids" eval="[(6, 0, [categ_oppor3])]"/>
527 <field name="channel_id" ref="crm_case_channel_direct"/>527 <field name="channel_id" ref="crm_case_channel_direct"/>
528 <field name="priority">5</field>528 <field name="priority">0</field>
529 <field name="section_id" ref="section_sales_department"/>529 <field name="section_id" ref="section_sales_department"/>
530 <field name="user_id" ref="base.user_demo"/>530 <field name="user_id" ref="base.user_demo"/>
531 <field name="stage_id" ref="crm.stage_lead5"/>531 <field name="stage_id" ref="crm.stage_lead5"/>
@@ -543,7 +543,7 @@
543 <field name="type_id" ref="type_lead8"/>543 <field name="type_id" ref="type_lead8"/>
544 <field name="categ_ids" eval="[(6, 0, [categ_oppor7])]"/>544 <field name="categ_ids" eval="[(6, 0, [categ_oppor7])]"/>
545 <field name="channel_id" ref="crm_case_channel_website"/>545 <field name="channel_id" ref="crm_case_channel_website"/>
546 <field name="priority">5</field>546 <field name="priority">0</field>
547 <field eval="time.strftime('%Y-%m-6')" name="date_deadline"/>547 <field eval="time.strftime('%Y-%m-6')" name="date_deadline"/>
548 <field name="section_id" ref="section_sales_department"/>548 <field name="section_id" ref="section_sales_department"/>
549 <field name="user_id" ref="base.user_root"/>549 <field name="user_id" ref="base.user_root"/>
@@ -588,7 +588,7 @@
588 <field name="type_id" ref="type_lead3"/>588 <field name="type_id" ref="type_lead3"/>
589 <field name="categ_ids" eval="[(6, 0, [categ_oppor2])]"/>589 <field name="categ_ids" eval="[(6, 0, [categ_oppor2])]"/>
590 <field name="channel_id" ref="crm_case_channel_website"/>590 <field name="channel_id" ref="crm_case_channel_website"/>
591 <field name="priority">3</field>591 <field name="priority">2</field>
592 <field eval="time.strftime('%Y-%m-23')" name="date_deadline"/>592 <field eval="time.strftime('%Y-%m-23')" name="date_deadline"/>
593 <field eval="time.strftime('%Y-%m-10')" name="date_action"/>593 <field eval="time.strftime('%Y-%m-10')" name="date_action"/>
594 <field name="title_action">Send Catalogue by Email</field>594 <field name="title_action">Send Catalogue by Email</field>
595595
=== modified file 'crm/crm_lead_view.xml'
--- crm/crm_lead_view.xml 2014-05-02 13:22:58 +0000
+++ crm/crm_lead_view.xml 2014-05-08 15:35:32 +0000
@@ -158,7 +158,7 @@
158 <field name="type" invisible="1"/>158 <field name="type" invisible="1"/>
159 </group>159 </group>
160 <group>160 <group>
161 <field name="priority"/>161 <field name="priority" widget="priority"/>
162 <field name="categ_ids"162 <field name="categ_ids"
163 widget="many2many_tags"163 widget="many2many_tags"
164 domain="[('object_id.model','=','crm.lead')]"164 domain="[('object_id.model','=','crm.lead')]"
@@ -303,9 +303,10 @@
303 <field name="title_action"/>303 <field name="title_action"/>
304 </div>304 </div>
305 <div class="oe_kanban_bottom_right">305 <div class="oe_kanban_bottom_right">
306 <a t-if="record.priority.raw_value == 1" type="object" name="set_normal_priority" class="oe_e oe_star_on">7</a>306 <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
307 <a t-if="record.priority.raw_value != 1" type="object" name="set_high_priority" class="oe_e oe_star_off">7</a>307 <div class="pull-left" groups="base.group_user">
308 <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar" t-if="record.user_id.value"/>308 <field name="priority" widget="priority"/>
309 </div>
309 </div>310 </div>
310 <div class="oe_kanban_footer_left">311 <div class="oe_kanban_footer_left">
311 <t t-raw="record.message_summary.raw_value"/>312 <t t-raw="record.message_summary.raw_value"/>
@@ -430,7 +431,7 @@
430 <field name="title_action" class="oe_inline" nolabel="1" placeholder="e.g. Call for proposal"/>431 <field name="title_action" class="oe_inline" nolabel="1" placeholder="e.g. Call for proposal"/>
431 </div>432 </div>
432 <field name="date_deadline"/>433 <field name="date_deadline"/>
433 <field name="priority"/>434 <field name="priority" widget="priority"/>
434 </group>435 </group>
435436
436 <group>437 <group>
437438
=== modified file 'crm/crm_phonecall.py'
--- crm/crm_phonecall.py 2014-05-07 09:45:53 +0000
+++ crm/crm_phonecall.py 2014-05-08 15:35:32 +0000
@@ -62,7 +62,7 @@
62 ('object_id.model', '=', 'crm.phonecall')]"),62 ('object_id.model', '=', 'crm.phonecall')]"),
63 'partner_phone': fields.char('Phone', size=32),63 'partner_phone': fields.char('Phone', size=32),
64 'partner_mobile': fields.char('Mobile', size=32),64 'partner_mobile': fields.char('Mobile', size=32),
65 'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),65 'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')], 'Priority'),
66 'date_closed': fields.datetime('Closed', readonly=True),66 'date_closed': fields.datetime('Closed', readonly=True),
67 'date': fields.datetime('Date'),67 'date': fields.datetime('Date'),
68 'opportunity_id': fields.many2one ('crm.lead', 'Lead/Opportunity'),68 'opportunity_id': fields.many2one ('crm.lead', 'Lead/Opportunity'),
@@ -75,7 +75,7 @@
7575
76 _defaults = {76 _defaults = {
77 'date': fields.datetime.now,77 'date': fields.datetime.now,
78 'priority': crm.AVAILABLE_PRIORITIES[2][0],78 'priority': '1',
79 'state': _get_default_state,79 'state': _get_default_state,
80 'user_id': lambda self, cr, uid, ctx: uid,80 'user_id': lambda self, cr, uid, ctx: uid,
81 'active': 181 'active': 1
8282
=== modified file 'crm/crm_phonecall_demo.xml'
--- crm/crm_phonecall_demo.xml 2013-10-27 12:31:04 +0000
+++ crm/crm_phonecall_demo.xml 2014-05-08 15:35:32 +0000
@@ -6,7 +6,7 @@
6 <record id="crm_phonecall_1" model="crm.phonecall">6 <record id="crm_phonecall_1" model="crm.phonecall">
7 <field eval="time.strftime('%Y-%m-04 10:45:36')" name="date"/>7 <field eval="time.strftime('%Y-%m-04 10:45:36')" name="date"/>
8 <field name="partner_id" ref="base.res_partner_11"/>8 <field name="partner_id" ref="base.res_partner_11"/>
9 <field eval="'3'" name="priority"/>9 <field eval="'1'" name="priority"/>
10 <field name="user_id" ref="base.user_root"/>10 <field name="user_id" ref="base.user_root"/>
11 <field name="name">Left the message</field>11 <field name="name">Left the message</field>
12 <field name="state">done</field>12 <field name="state">done</field>
@@ -19,7 +19,7 @@
19 <record id="crm_phonecall_2" model="crm.phonecall">19 <record id="crm_phonecall_2" model="crm.phonecall">
20 <field eval="time.strftime('%Y-%m-11 11:19:25')" name="date"/>20 <field eval="time.strftime('%Y-%m-11 11:19:25')" name="date"/>
21 <field name="partner_id" ref="base.res_partner_7"/>21 <field name="partner_id" ref="base.res_partner_7"/>
22 <field eval="'4'" name="priority"/>22 <field eval="'0'" name="priority"/>
23 <field name="user_id" ref="base.user_root"/>23 <field name="user_id" ref="base.user_root"/>
24 <field name="name">Need more information on the proposed deal</field>24 <field name="name">Need more information on the proposed deal</field>
25 <field name="state">done</field>25 <field name="state">done</field>
@@ -44,7 +44,7 @@
44 </record>44 </record>
45 <record id="crm_phonecall_4" model="crm.phonecall">45 <record id="crm_phonecall_4" model="crm.phonecall">
46 <field eval="time.strftime('%Y-%m-21 14:10:23')" name="date"/>46 <field eval="time.strftime('%Y-%m-21 14:10:23')" name="date"/>
47 <field eval="'3'" name="priority"/>47 <field eval="'1'" name="priority"/>
48 <field name="user_id" ref="base.user_root"/>48 <field name="user_id" ref="base.user_root"/>
49 <field name="name">Wanted information about pricing of laptops</field>49 <field name="name">Wanted information about pricing of laptops</field>
50 <field name="state">done</field>50 <field name="state">done</field>
@@ -58,7 +58,7 @@
58 <record id="crm_phonecall_5" model="crm.phonecall">58 <record id="crm_phonecall_5" model="crm.phonecall">
59 <field eval="time.strftime('%Y-%m-28 16:20:43')" name="date"/>59 <field eval="time.strftime('%Y-%m-28 16:20:43')" name="date"/>
60 <field name="partner_id" ref="base.res_partner_5"/>60 <field name="partner_id" ref="base.res_partner_5"/>
61 <field eval="'3'" name="priority"/>61 <field eval="'1'" name="priority"/>
62 <field name="user_id" ref="base.user_root"/>62 <field name="user_id" ref="base.user_root"/>
63 <field name="name">More information on the proposed deal</field>63 <field name="name">More information on the proposed deal</field>
64 <field name="state">pending</field>64 <field name="state">pending</field>
@@ -69,7 +69,7 @@
69 <field eval="2.08" name="duration"/>69 <field eval="2.08" name="duration"/>
70 </record>70 </record>
71 <record id="crm_phonecall_6" model="crm.phonecall">71 <record id="crm_phonecall_6" model="crm.phonecall">
72 <field eval="'3'" name="priority"/>72 <field eval="'1'" name="priority"/>
73 <field name="user_id" ref="base.user_root"/>73 <field name="user_id" ref="base.user_root"/>
74 <field name="name">Proposal for discount offer</field>74 <field name="name">Proposal for discount offer</field>
75 <field name="state">open</field>75 <field name="state">open</field>
7676
=== modified file 'crm/crm_phonecall_view.xml'
--- crm/crm_phonecall_view.xml 2014-05-02 13:07:53 +0000
+++ crm/crm_phonecall_view.xml 2014-05-08 15:35:32 +0000
@@ -103,7 +103,7 @@
103 <field name="categ_id" widget="selection"103 <field name="categ_id" widget="selection"
104 domain="[('object_id.model', '=', 'crm.phonecall')]"/>104 domain="[('object_id.model', '=', 'crm.phonecall')]"/>
105 <field name="partner_mobile"/>105 <field name="partner_mobile"/>
106 <field name="priority"/>106 <field name="priority" widget="priority"/>
107 <field name="opportunity_id" on_change="on_change_opportunity(opportunity_id)"/>107 <field name="opportunity_id" on_change="on_change_opportunity(opportunity_id)"/>
108 </group>108 </group>
109 <field name="description" placeholder="Description..."/>109 <field name="description" placeholder="Description..."/>
110110
=== modified file 'crm/report/crm_phonecall_report.py'
--- crm/report/crm_phonecall_report.py 2014-01-29 09:56:55 +0000
+++ crm/report/crm_phonecall_report.py 2014-05-08 15:35:32 +0000
@@ -42,7 +42,7 @@
42 _columns = {42 _columns = {
43 'user_id':fields.many2one('res.users', 'User', readonly=True),43 'user_id':fields.many2one('res.users', 'User', readonly=True),
44 'section_id':fields.many2one('crm.case.section', 'Section', readonly=True),44 'section_id':fields.many2one('crm.case.section', 'Section', readonly=True),
45 'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),45 'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')], 'Priority'),
46 'nbr': fields.integer('# of Cases', readonly=True),46 'nbr': fields.integer('# of Cases', readonly=True),
47 'state': fields.selection(AVAILABLE_STATES, 'Status', size=16, readonly=True),47 'state': fields.selection(AVAILABLE_STATES, 'Status', size=16, readonly=True),
48 'create_date': fields.datetime('Create Date', readonly=True, select=True),48 'create_date': fields.datetime('Create Date', readonly=True, select=True),
4949
=== modified file 'crm_claim/crm_claim.py'
--- crm_claim/crm_claim.py 2014-05-07 08:17:23 +0000
+++ crm_claim/crm_claim.py 2014-05-08 15:35:32 +0000
@@ -88,7 +88,7 @@
88 'categ_id': fields.many2one('crm.case.categ', 'Category', \88 'categ_id': fields.many2one('crm.case.categ', 'Category', \
89 domain="[('section_id','=',section_id),\89 domain="[('section_id','=',section_id),\
90 ('object_id.model', '=', 'crm.claim')]"),90 ('object_id.model', '=', 'crm.claim')]"),
91 'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),91 'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')], 'Priority'),
92 'type_action': fields.selection([('correction','Corrective Action'),('prevention','Preventive Action')], 'Action Type'),92 'type_action': fields.selection([('correction','Corrective Action'),('prevention','Preventive Action')], 'Action Type'),
93 'user_id': fields.many2one('res.users', 'Responsible'),93 'user_id': fields.many2one('res.users', 'Responsible'),
94 'user_fault': fields.char('Trouble Responsible', size=64),94 'user_fault': fields.char('Trouble Responsible', size=64),
@@ -111,7 +111,7 @@
111 'section_id': lambda s, cr, uid, c: s._get_default_section_id(cr, uid, c),111 'section_id': lambda s, cr, uid, c: s._get_default_section_id(cr, uid, c),
112 'date': fields.datetime.now,112 'date': fields.datetime.now,
113 'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.case', context=c),113 'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.case', context=c),
114 'priority': lambda *a: crm.AVAILABLE_PRIORITIES[2][0],114 'priority': '1',
115 'active': lambda *a: 1,115 'active': lambda *a: 1,
116 'stage_id': lambda s, cr, uid, c: s._get_default_stage_id(cr, uid, c)116 'stage_id': lambda s, cr, uid, c: s._get_default_stage_id(cr, uid, c)
117 }117 }
118118
=== modified file 'crm_claim/crm_claim_demo.xml'
--- crm_claim/crm_claim_demo.xml 2012-11-29 22:26:45 +0000
+++ crm_claim/crm_claim_demo.xml 2014-05-08 15:35:32 +0000
@@ -9,7 +9,7 @@
9 <record id="crm_claim_1" model="crm.claim">9 <record id="crm_claim_1" model="crm.claim">
10 <field eval="time.strftime('%Y-%m-04 10:45:36')" name="date"/>10 <field eval="time.strftime('%Y-%m-04 10:45:36')" name="date"/>
11 <field name="partner_id" ref="base.res_partner_11"/>11 <field name="partner_id" ref="base.res_partner_11"/>
12 <field eval="&quot;3&quot;" name="priority"/>12 <field eval="&quot;1&quot;" name="priority"/>
13 <field name="user_id" ref="base.user_root"/>13 <field name="user_id" ref="base.user_root"/>
14 <field eval="&quot;Problem with the delivery of goods&quot;" name="name"/>14 <field eval="&quot;Problem with the delivery of goods&quot;" name="name"/>
15 <field name="section_id" ref="crm.section_sales_department"/>15 <field name="section_id" ref="crm.section_sales_department"/>
@@ -21,7 +21,7 @@
21 <record id="crm_claim_2" model="crm.claim">21 <record id="crm_claim_2" model="crm.claim">
22 <field eval="time.strftime('%Y-%m-11 11:19:25')" name="date"/>22 <field eval="time.strftime('%Y-%m-11 11:19:25')" name="date"/>
23 <field name="partner_id" ref="base.res_partner_6"/>23 <field name="partner_id" ref="base.res_partner_6"/>
24 <field eval="&quot;4&quot;" name="priority"/>24 <field eval="&quot;0&quot;" name="priority"/>
25 <field name="user_id" ref="base.user_root"/>25 <field name="user_id" ref="base.user_root"/>
26 <field eval="&quot;Damaged Products&quot;" name="name"/>26 <field eval="&quot;Damaged Products&quot;" name="name"/>
27 <field name="section_id" ref="crm.section_sales_department"/>27 <field name="section_id" ref="crm.section_sales_department"/>
@@ -46,7 +46,7 @@
46 <record id="crm_claim_4" model="crm.claim">46 <record id="crm_claim_4" model="crm.claim">
47 <field eval="time.strftime('%Y-%m-21 14:10:23')" name="date"/>47 <field eval="time.strftime('%Y-%m-21 14:10:23')" name="date"/>
48 <field name="partner_id" ref="base.res_partner_18"/>48 <field name="partner_id" ref="base.res_partner_18"/>
49 <field eval="&quot;3&quot;" name="priority"/>49 <field eval="&quot;1&quot;" name="priority"/>
50 <field name="user_id" ref="base.user_root"/>50 <field name="user_id" ref="base.user_root"/>
51 <field eval="&quot;Product quality not maintained&quot;" name="name"/>51 <field eval="&quot;Product quality not maintained&quot;" name="name"/>
52 <field name="section_id" ref="crm.section_sales_department"/>52 <field name="section_id" ref="crm.section_sales_department"/>
@@ -58,7 +58,7 @@
58 <record id="crm_claim_5" model="crm.claim">58 <record id="crm_claim_5" model="crm.claim">
59 <field eval="time.strftime('%Y-%m-28 16:20:43')" name="date"/>59 <field eval="time.strftime('%Y-%m-28 16:20:43')" name="date"/>
60 <field name="partner_id" ref="base.res_partner_5"/>60 <field name="partner_id" ref="base.res_partner_5"/>
61 <field eval="&quot;3&quot;" name="priority"/>61 <field eval="&quot;1&quot;" name="priority"/>
62 <field name="user_id" ref="base.user_root"/>62 <field name="user_id" ref="base.user_root"/>
63 <field eval="&quot;Some products missing&quot;" name="name"/>63 <field eval="&quot;Some products missing&quot;" name="name"/>
64 <field name="section_id" ref="crm.section_sales_department"/>64 <field name="section_id" ref="crm.section_sales_department"/>
@@ -69,7 +69,7 @@
69 69
70 <record id="crm_claim_6" model="crm.claim">70 <record id="crm_claim_6" model="crm.claim">
71 <field name="partner_id" ref="base.res_partner_9"/>71 <field name="partner_id" ref="base.res_partner_9"/>
72 <field eval="&quot;3&quot;" name="priority"/>72 <field eval="&quot;1&quot;" name="priority"/>
73 <field name="user_id" ref="base.user_root"/>73 <field name="user_id" ref="base.user_root"/>
74 <field eval="&quot;Problem with the delivery of assignments&quot;" name="name"/>74 <field eval="&quot;Problem with the delivery of assignments&quot;" name="name"/>
75 <field name="section_id" ref="crm.section_sales_department"/>75 <field name="section_id" ref="crm.section_sales_department"/>
@@ -82,7 +82,7 @@
82 82
83 <record id="crm_claim_7" model="crm.claim">83 <record id="crm_claim_7" model="crm.claim">
84 <field name="partner_id" ref="base.res_partner_19"/>84 <field name="partner_id" ref="base.res_partner_19"/>
85 <field eval="&quot;3&quot;" name="priority"/>85 <field eval="&quot;1&quot;" name="priority"/>
86 <field name="user_id" ref="base.user_root"/>86 <field name="user_id" ref="base.user_root"/>
87 <field eval="&quot;Documents unclear&quot;" name="name"/>87 <field eval="&quot;Documents unclear&quot;" name="name"/>
88 <field name="section_id" ref="crm.section_sales_department"/>88 <field name="section_id" ref="crm.section_sales_department"/>
8989
=== modified file 'crm_claim/crm_claim_view.xml'
--- crm_claim/crm_claim_view.xml 2013-10-27 12:31:04 +0000
+++ crm_claim/crm_claim_view.xml 2014-05-08 15:35:32 +0000
@@ -107,7 +107,7 @@
107 </group>107 </group>
108 <group colspan="4" col="4" groups="base.group_user">108 <group colspan="4" col="4" groups="base.group_user">
109 <field name="user_id" context="{'default_groups_ref': ['base.group_user', 'base.group_partner_manager', 'base.group_sale_salesman_all_leads']}"/>109 <field name="user_id" context="{'default_groups_ref': ['base.group_user', 'base.group_partner_manager', 'base.group_sale_salesman_all_leads']}"/>
110 <field name="priority"/>110 <field name="priority" widget="priority"/>
111 <field name="section_id" groups="base.group_multi_salesteams"/>111 <field name="section_id" groups="base.group_multi_salesteams"/>
112 <field name="date_deadline"/>112 <field name="date_deadline"/>
113 </group>113 </group>
114114
=== modified file 'crm_claim/report/crm_claim_report.py'
--- crm_claim/report/crm_claim_report.py 2013-10-27 12:31:04 +0000
+++ crm_claim/report/crm_claim_report.py 2014-05-08 15:35:32 +0000
@@ -23,11 +23,9 @@
23from openerp import tools23from openerp import tools
2424
25AVAILABLE_PRIORITIES = [25AVAILABLE_PRIORITIES = [
26 ('5', 'Lowest'),26 ('0', 'Low'),
27 ('4', 'Low'),27 ('1', 'Normal'),
28 ('3', 'Normal'),28 ('2', 'High')
29 ('2', 'High'),
30 ('1', 'Highest')
31]29]
3230
3331
3432
=== modified file 'crm_helpdesk/crm_helpdesk.py'
--- crm_helpdesk/crm_helpdesk.py 2013-11-27 15:32:57 +0000
+++ crm_helpdesk/crm_helpdesk.py 2014-05-08 15:35:32 +0000
@@ -59,7 +59,7 @@
59 'channel_id': fields.many2one('crm.case.channel', 'Channel', help="Communication channel."),59 'channel_id': fields.many2one('crm.case.channel', 'Channel', help="Communication channel."),
60 'planned_revenue': fields.float('Planned Revenue'),60 'planned_revenue': fields.float('Planned Revenue'),
61 'planned_cost': fields.float('Planned Costs'),61 'planned_cost': fields.float('Planned Costs'),
62 'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),62 'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')], 'Priority'),
63 'probability': fields.float('Probability (%)'),63 'probability': fields.float('Probability (%)'),
64 'categ_id': fields.many2one('crm.case.categ', 'Category', \64 'categ_id': fields.many2one('crm.case.categ', 'Category', \
65 domain="['|',('section_id','=',False),('section_id','=',section_id),\65 domain="['|',('section_id','=',False),('section_id','=',section_id),\
@@ -83,7 +83,7 @@
83 'state': lambda *a: 'draft',83 'state': lambda *a: 'draft',
84 'date': fields.datetime.now,84 'date': fields.datetime.now,
85 'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.helpdesk', context=c),85 'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.helpdesk', context=c),
86 'priority': lambda *a: crm.AVAILABLE_PRIORITIES[2][0],86 'priority': '1',
87 }87 }
8888
89 def on_change_partner_id(self, cr, uid, ids, partner_id, context=None):89 def on_change_partner_id(self, cr, uid, ids, partner_id, context=None):
9090
=== modified file 'crm_helpdesk/crm_helpdesk_demo.xml'
--- crm_helpdesk/crm_helpdesk_demo.xml 2012-11-29 22:26:45 +0000
+++ crm_helpdesk/crm_helpdesk_demo.xml 2014-05-08 15:35:32 +0000
@@ -5,7 +5,7 @@
5 <field eval="1" name="active"/>5 <field eval="1" name="active"/>
6 <field name="user_id" ref="base.user_root"/>6 <field name="user_id" ref="base.user_root"/>
7 <field name="company_id" ref="base.main_company"/>7 <field name="company_id" ref="base.main_company"/>
8 <field name="priority">3</field>8 <field name="priority">1</field>
9 <field name="state">draft</field>9 <field name="state">draft</field>
10 <field name="section_id" ref="crm.section_sales_department"/>10 <field name="section_id" ref="crm.section_sales_department"/>
11 <field name="date" eval="time.strftime('%Y-%m-04 11:10:36')"/>11 <field name="date" eval="time.strftime('%Y-%m-04 11:10:36')"/>
@@ -17,7 +17,7 @@
17 <field eval="1" name="active"/>17 <field eval="1" name="active"/>
18 <field name="user_id" ref="base.user_demo"/>18 <field name="user_id" ref="base.user_demo"/>
19 <field name="company_id" ref="base.main_company"/>19 <field name="company_id" ref="base.main_company"/>
20 <field name="priority">3</field>20 <field name="priority">1</field>
21 <field name="state">draft</field>21 <field name="state">draft</field>
22 <field name="section_id" ref="crm.section_sales_department"/>22 <field name="section_id" ref="crm.section_sales_department"/>
23 <field name="date" eval="time.strftime('%Y-%m-12 11:12:09')"/>23 <field name="date" eval="time.strftime('%Y-%m-12 11:12:09')"/>
@@ -42,7 +42,7 @@
42 <field name="partner_id" ref="base.res_partner_2"/>42 <field name="partner_id" ref="base.res_partner_2"/>
43 <field name="user_id" ref="base.user_root"/>43 <field name="user_id" ref="base.user_root"/>
44 <field name="company_id" ref="base.main_company"/>44 <field name="company_id" ref="base.main_company"/>
45 <field name="priority">3</field>45 <field name="priority">1</field>
46 <field name="state">draft</field>46 <field name="state">draft</field>
47 <field name="date" eval="time.strftime('%Y-%m-12 11:15:17')"/>47 <field name="date" eval="time.strftime('%Y-%m-12 11:15:17')"/>
48 <field name="name">How to create a new module</field>48 <field name="name">How to create a new module</field>
4949
=== modified file 'crm_helpdesk/crm_helpdesk_view.xml'
--- crm_helpdesk/crm_helpdesk_view.xml 2014-04-17 11:26:55 +0000
+++ crm_helpdesk/crm_helpdesk_view.xml 2014-05-08 15:35:32 +0000
@@ -51,7 +51,7 @@
51 <field name="email_from"/>51 <field name="email_from"/>
52 </group>52 </group>
53 <group string="Categorization">53 <group string="Categorization">
54 <field name="priority"/>54 <field name="priority" widget="priority"/>
55 <field name="categ_id" domain="[('object_id.model', '=', 'crm.helpdesk')]" context="{'object_name': 'crm.helpdesk'}"/>55 <field name="categ_id" domain="[('object_id.model', '=', 'crm.helpdesk')]" context="{'object_name': 'crm.helpdesk'}"/>
56 <field name="channel_id"/>56 <field name="channel_id"/>
57 </group>57 </group>
5858
=== modified file 'hr_recruitment/hr_recruitment.py'
--- hr_recruitment/hr_recruitment.py 2014-05-07 13:16:29 +0000
+++ hr_recruitment/hr_recruitment.py 2014-05-08 15:35:32 +0000
@@ -25,12 +25,11 @@
2525
2626
27AVAILABLE_PRIORITIES = [27AVAILABLE_PRIORITIES = [
28 ('', ''),28 ('0', 'Bad'),
29 ('5', 'Not Good'),29 ('1', 'Below Average'),
30 ('4', 'On Average'),30 ('2', 'Average'),
31 ('3', 'Good'),31 ('3', 'Good'),
32 ('2', 'Very Good'),32 ('4', 'Excellent')
33 ('1', 'Excellent')
34]33]
3534
36class hr_recruitment_source(osv.osv):35class hr_recruitment_source(osv.osv):
@@ -489,21 +488,6 @@
489 dict_act_window['view_mode'] = 'form,tree'488 dict_act_window['view_mode'] = 'form,tree'
490 return dict_act_window489 return dict_act_window
491490
492 def set_priority(self, cr, uid, ids, priority, *args):
493 """Set applicant priority
494 """
495 return self.write(cr, uid, ids, {'priority': priority})
496
497 def set_high_priority(self, cr, uid, ids, *args):
498 """Set applicant priority to high
499 """
500 return self.set_priority(cr, uid, ids, '1')
501
502 def set_normal_priority(self, cr, uid, ids, *args):
503 """Set applicant priority to normal
504 """
505 return self.set_priority(cr, uid, ids, '3')
506
507 def get_empty_list_help(self, cr, uid, help, context=None):491 def get_empty_list_help(self, cr, uid, help, context=None):
508 context['empty_list_help_model'] = 'hr.job'492 context['empty_list_help_model'] = 'hr.job'
509 context['empty_list_help_id'] = context.get('default_job_id', None)493 context['empty_list_help_id'] = context.get('default_job_id', None)
510494
=== modified file 'hr_recruitment/hr_recruitment_demo.xml'
--- hr_recruitment/hr_recruitment_demo.xml 2014-02-12 09:56:06 +0000
+++ hr_recruitment/hr_recruitment_demo.xml 2014-05-08 15:35:32 +0000
@@ -75,7 +75,7 @@
75 <field name="type_id" ref="degree_licenced"/>75 <field name="type_id" ref="degree_licenced"/>
76 <field name="categ_ids" eval="[(6,0,[ref('tag_applicant_reserve')])]"/>76 <field name="categ_ids" eval="[(6,0,[ref('tag_applicant_reserve')])]"/>
77 <field name="user_id" ref="base.user_root"/>77 <field name="user_id" ref="base.user_root"/>
78 <field name="priority">4</field>78 <field name="priority">2</field>
79 <field name="partner_name">David Armstrong</field>79 <field name="partner_name">David Armstrong</field>
80 <field name="stage_id" ref="stage_job2"/>80 <field name="stage_id" ref="stage_job2"/>
81 <field name="partner_phone">33968745</field>81 <field name="partner_phone">33968745</field>
8282
=== modified file 'hr_recruitment/hr_recruitment_view.xml'
--- hr_recruitment/hr_recruitment_view.xml 2014-04-15 15:01:46 +0000
+++ hr_recruitment/hr_recruitment_view.xml 2014-05-08 15:35:32 +0000
@@ -130,7 +130,7 @@
130 <field name="date_action"/>130 <field name="date_action"/>
131 <field name="title_action" class="oe_inline" placeholder="e.g. Call for interview"/>131 <field name="title_action" class="oe_inline" placeholder="e.g. Call for interview"/>
132 </div>132 </div>
133 <field name="priority"/>133 <field name="priority" widget="priority"/>
134 <field name="source_id"/>134 <field name="source_id"/>
135 <field name="reference"/>135 <field name="reference"/>
136 </group>136 </group>
@@ -293,22 +293,11 @@
293 <field name="title_action"/>293 <field name="title_action"/>
294 </div>294 </div>
295 <div style="width:240px"><field name="categ_ids"/></div>295 <div style="width:240px"><field name="categ_ids"/></div>
296 <div class="oe_kanban_right">296 <div class="oe_kanban_bottom_right">
297 <t t-set="priority" t-value="record.priority.raw_value || 5"/>297 <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
298 <a type="object" name="set_priority" args="['3']" t-if="priority gt 3">298 <div class="pull-left" groups="base.group_user">
299 <img src="/web/static/src/img/icons/star-off.png" width="16" height="16" title="Good"/>299 <field name="priority" widget="priority"/>
300 </a>300 </div>
301 <a type="object" name="set_priority" args="['5']" t-if="priority lte 3">
302 <img t-attf-src="/web/static/src/img/icons/star-#{priority lte 3 ? 'on' : 'off'}.png" width="16" height="16" title="Good"/>
303 </a>
304 <a type="object" name="set_priority" args="['2']">
305 <img t-attf-src="/web/static/src/img/icons/star-#{priority lte 2 ? 'on' : 'off'}.png" width="16" height="16" title="Very Good"/>
306 </a>
307 <a type="object" name="set_priority" args="['1']">
308 <img t-attf-src="/web/static/src/img/icons/star-#{priority == 1 ? 'on' : 'off'}.png" width="16" height="16" title="Excellent"/>
309 </a>
310 <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar"/>
311
312 </div>301 </div>
313 <div class="oe_kanban_footer_left" style="margin-top:5px;">302 <div class="oe_kanban_footer_left" style="margin-top:5px;">
314 <t t-raw="record.message_summary.raw_value"/>303 <t t-raw="record.message_summary.raw_value"/>
315304
=== modified file 'portal_project_issue/portal_project_issue_view.xml'
--- portal_project_issue/portal_project_issue_view.xml 2013-10-27 12:31:04 +0000
+++ portal_project_issue/portal_project_issue_view.xml 2014-05-08 15:35:32 +0000
@@ -38,21 +38,7 @@
38 <field name="categ_ids"/>38 <field name="categ_ids"/>
39 <div class="oe_right">39 <div class="oe_right">
40 Creation: <field name="create_date"/>40 Creation: <field name="create_date"/>
41 <span class="oe_kanban_highlight">41 <field name="priority" widget="priority"/>
42 <t t-set="priority" t-value="record.priority.raw_value || 5"/>
43 <a type="object" name="set_priority" args="['3']" t-if="priority gt 3" title="Normal Priority">
44 <img src="/web/static/src/img/icons/star-off.png" width="16" height="16"/>
45 </a>
46 <a type="object" name="set_priority" args="['5']" t-if="priority lte 3" title="Normal Priority">
47 <img t-attf-src="/web/static/src/img/icons/star-#{priority lte 3 ? 'on' : 'off'}.png" width="16" height="16"/>
48 </a>
49 <a type="object" name="set_priority" args="['2']" title="High Priority">
50 <img t-attf-src="/web/static/src/img/icons/star-#{priority lte 2 ? 'on' : 'off'}.png" width="16" height="16"/>
51 </a>
52 <a type="object" name="set_priority" args="['1']" title="Highest Priority">
53 <img t-attf-src="/web/static/src/img/icons/star-#{priority == 1 ? 'on' : 'off'}.png" width="16" height="16"/>
54 </a>
55 </span>
56 <t t-if="record.date_deadline.raw_value and record.date_deadline.raw_value lt (new Date())">42 <t t-if="record.date_deadline.raw_value and record.date_deadline.raw_value lt (new Date())">
57 <span t-attf-class="oe_kanban_status oe_kaban_status_red"> </span>43 <span t-attf-class="oe_kanban_status oe_kaban_status_red"> </span>
58 </t>44 </t>
5945
=== modified file 'project/project.py'
--- project/project.py 2014-04-10 14:51:31 +0000
+++ project/project.py 2014-05-08 15:35:32 +0000
@@ -565,6 +565,7 @@
565 },565 },
566 'kanban_state': {566 'kanban_state': {
567 'project.mt_task_blocked': lambda self, cr, uid, obj, ctx=None: obj.kanban_state == 'blocked',567 'project.mt_task_blocked': lambda self, cr, uid, obj, ctx=None: obj.kanban_state == 'blocked',
568 'project.mt_task_ready': lambda self, cr, uid, obj, ctx=None: obj.kanban_state == 'done',
568 },569 },
569 }570 }
570571
@@ -740,18 +741,18 @@
740 'active': fields.function(_is_template, store=True, string='Not a Template Task', type='boolean', help="This field is computed automatically and have the same behavior than the boolean 'active' field: if the task is linked to a template or unactivated project, it will be hidden unless specifically asked."),741 'active': fields.function(_is_template, store=True, string='Not a Template Task', type='boolean', help="This field is computed automatically and have the same behavior than the boolean 'active' field: if the task is linked to a template or unactivated project, it will be hidden unless specifically asked."),
741 'name': fields.char('Task Summary', track_visibility='onchange', size=128, required=True, select=True),742 'name': fields.char('Task Summary', track_visibility='onchange', size=128, required=True, select=True),
742 'description': fields.text('Description'),743 'description': fields.text('Description'),
743 'priority': fields.selection([('4','Very Low'), ('3','Low'), ('2','Medium'), ('1','Important'), ('0','Very important')], 'Priority', select=True),744 'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')], 'Priority', select=True),
744 'sequence': fields.integer('Sequence', select=True, help="Gives the sequence order when displaying a list of tasks."),745 'sequence': fields.integer('Sequence', select=True, help="Gives the sequence order when displaying a list of tasks."),
745 'stage_id': fields.many2one('project.task.type', 'Stage', track_visibility='onchange', select=True,746 'stage_id': fields.many2one('project.task.type', 'Stage', track_visibility='onchange', select=True,
746 domain="[('project_ids', '=', project_id)]"),747 domain="[('project_ids', '=', project_id)]"),
747 'categ_ids': fields.many2many('project.category', string='Tags'),748 'categ_ids': fields.many2many('project.category', string='Tags'),
748 'kanban_state': fields.selection([('normal', 'Normal'),('blocked', 'Blocked'),('done', 'Ready for next stage')], 'Kanban State',749 'kanban_state': fields.selection([('normal', 'In Progress'),('blocked', 'Blocked'),('done', 'Ready for next stage')], 'Kanban State',
749 track_visibility='onchange',750 track_visibility='onchange',
750 help="A task's kanban state indicates special situations affecting it:\n"751 help="A task's kanban state indicates special situations affecting it:\n"
751 " * Normal is the default situation\n"752 " * Normal is the default situation\n"
752 " * Blocked indicates something is preventing the progress of this task\n"753 " * Blocked indicates something is preventing the progress of this task\n"
753 " * Ready for next stage indicates the task is ready to be pulled to the next stage",754 " * Ready for next stage indicates the task is ready to be pulled to the next stage",
754 readonly=True, required=False),755 required=False),
755 'create_date': fields.datetime('Create Date', readonly=True, select=True),756 'create_date': fields.datetime('Create Date', readonly=True, select=True),
756 'write_date': fields.datetime('Last Modification Date', readonly=True, select=True), #not displayed in the view but it might be useful with base_action_rule module (and it needs to be defined first for that)757 'write_date': fields.datetime('Last Modification Date', readonly=True, select=True), #not displayed in the view but it might be useful with base_action_rule module (and it needs to be defined first for that)
757 'date_start': fields.datetime('Starting Date',select=True),758 'date_start': fields.datetime('Starting Date',select=True),
@@ -799,7 +800,7 @@
799 'project_id': _get_default_project_id,800 'project_id': _get_default_project_id,
800 'date_last_stage_update': fields.datetime.now,801 'date_last_stage_update': fields.datetime.now,
801 'kanban_state': 'normal',802 'kanban_state': 'normal',
802 'priority': '2',803 'priority': '1',
803 'progress': 0,804 'progress': 0,
804 'sequence': 10,805 'sequence': 10,
805 'active': True,806 'active': True,
@@ -808,17 +809,7 @@
808 'partner_id': lambda self, cr, uid, ctx=None: self._get_default_partner(cr, uid, context=ctx),809 'partner_id': lambda self, cr, uid, ctx=None: self._get_default_partner(cr, uid, context=ctx),
809 }810 }
810 _order = "priority, sequence, date_start, name, id"811 _order = "priority, sequence, date_start, name, id"
811812
812 def set_high_priority(self, cr, uid, ids, *args):
813 """Set task priority to high
814 """
815 return self.write(cr, uid, ids, {'priority' : '0'})
816
817 def set_normal_priority(self, cr, uid, ids, *args):
818 """Set task priority to normal
819 """
820 return self.write(cr, uid, ids, {'priority' : '2'})
821
822 def _check_recursion(self, cr, uid, ids, context=None):813 def _check_recursion(self, cr, uid, ids, context=None):
823 for id in ids:814 for id in ids:
824 visited_branch = set()815 visited_branch = set()
@@ -1003,16 +994,6 @@
1003 def set_remaining_time_10(self, cr, uid, ids, context=None):994 def set_remaining_time_10(self, cr, uid, ids, context=None):
1004 return self.set_remaining_time(cr, uid, ids, 10.0, context)995 return self.set_remaining_time(cr, uid, ids, 10.0, context)
1005996
1006 def set_kanban_state_blocked(self, cr, uid, ids, context=None):
1007 return self.write(cr, uid, ids, {'kanban_state': 'blocked'}, context=context)
1008
1009 def set_kanban_state_normal(self, cr, uid, ids, context=None):
1010 return self.write(cr, uid, ids, {'kanban_state': 'normal'}, context=context)
1011
1012 def set_kanban_state_done(self, cr, uid, ids, context=None):
1013 self.write(cr, uid, ids, {'kanban_state': 'done'}, context=context)
1014 return False
1015
1016 def _store_history(self, cr, uid, ids, context=None):997 def _store_history(self, cr, uid, ids, context=None):
1017 for task in self.browse(cr, uid, ids, context=context):998 for task in self.browse(cr, uid, ids, context=context):
1018 self.pool.get('project.task.history').create(cr, uid, {999 self.pool.get('project.task.history').create(cr, uid, {
10191000
=== modified file 'project/project_data.xml'
--- project/project_data.xml 2014-02-21 11:27:04 +0000
+++ project/project_data.xml 2014-05-08 15:35:32 +0000
@@ -93,6 +93,12 @@
93 <field name="default" eval="False"/>93 <field name="default" eval="False"/>
94 <field name="description">Task blocked</field>94 <field name="description">Task blocked</field>
95 </record>95 </record>
96 <record id="mt_task_ready" model="mail.message.subtype">
97 <field name="name">Task Ready for Next Stage</field>
98 <field name="res_model">project.task</field>
99 <field name="default" eval="False"/>
100 <field name="description">Task Ready for Next Stage</field>
101 </record>
96 <record id="mt_task_stage" model="mail.message.subtype">102 <record id="mt_task_stage" model="mail.message.subtype">
97 <field name="name">Stage Changed</field>103 <field name="name">Stage Changed</field>
98 <field name="res_model">project.task</field>104 <field name="res_model">project.task</field>
99105
=== modified file 'project/project_demo.xml'
--- project/project_demo.xml 2013-11-27 15:32:57 +0000
+++ project/project_demo.xml 2014-05-08 15:35:32 +0000
@@ -110,7 +110,7 @@
110 <field name="planned_hours" eval="40.0"/>110 <field name="planned_hours" eval="40.0"/>
111 <field name="remaining_hours" eval="40.0"/>111 <field name="remaining_hours" eval="40.0"/>
112 <field name="user_id" ref="base.user_demo"/>112 <field name="user_id" ref="base.user_demo"/>
113 <field name="priority">4</field>113 <field name="priority">0</field>
114 <field name="project_id" ref="project.project_project_1"/>114 <field name="project_id" ref="project.project_project_1"/>
115 <field name="name">Prepare Requirements Document</field>115 <field name="name">Prepare Requirements Document</field>
116 <field name="stage_id" ref="project_tt_analysis"/>116 <field name="stage_id" ref="project_tt_analysis"/>
@@ -120,7 +120,7 @@
120 <field name="planned_hours" eval="32.0"/>120 <field name="planned_hours" eval="32.0"/>
121 <field name="remaining_hours" eval="32.0"/>121 <field name="remaining_hours" eval="32.0"/>
122 <field name="user_id" ref="base.user_demo"/>122 <field name="user_id" ref="base.user_demo"/>
123 <field name="priority">4</field>123 <field name="priority">0</field>
124 <field name="project_id" ref="project.project_project_1"/>124 <field name="project_id" ref="project.project_project_1"/>
125 <field name="name">Make SRS</field>125 <field name="name">Make SRS</field>
126 <field name="stage_id" ref="project_tt_specification"/>126 <field name="stage_id" ref="project_tt_specification"/>
@@ -129,7 +129,7 @@
129 <field name="planned_hours" eval="10.0"/>129 <field name="planned_hours" eval="10.0"/>
130 <field name="remaining_hours" eval="10.0"/>130 <field name="remaining_hours" eval="10.0"/>
131 <field name="user_id" ref="base.user_root"/>131 <field name="user_id" ref="base.user_root"/>
132 <field name="priority">4</field>132 <field name="priority">0</field>
133 <field name="project_id" ref="project.project_project_1"/>133 <field name="project_id" ref="project.project_project_1"/>
134 <field name="name">Budget Planning</field>134 <field name="name">Budget Planning</field>
135 <field name="date_deadline" eval="time.strftime('%Y-%m-24')"/>135 <field name="date_deadline" eval="time.strftime('%Y-%m-24')"/>
@@ -140,7 +140,7 @@
140 <field name="planned_hours" eval="60.0"/>140 <field name="planned_hours" eval="60.0"/>
141 <field name="remaining_hours" eval="60.0"/>141 <field name="remaining_hours" eval="60.0"/>
142 <field name="user_id" ref="base.user_demo"/>142 <field name="user_id" ref="base.user_demo"/>
143 <field name="priority">4</field>143 <field name="priority">0</field>
144 <field name="project_id" ref="project.project_project_1"/>144 <field name="project_id" ref="project.project_project_1"/>
145 <field name="name">Develop module for Sale Management</field>145 <field name="name">Develop module for Sale Management</field>
146 <field name="description">Use the account_budget module</field>146 <field name="description">Use the account_budget module</field>
147147
=== modified file 'project/project_view.xml'
--- project/project_view.xml 2014-04-15 12:14:04 +0000
+++ project/project_view.xml 2014-05-08 15:35:32 +0000
@@ -377,12 +377,11 @@
377 options="{'fold_field': 'fold'}"/>377 options="{'fold_field': 'fold'}"/>
378 </header>378 </header>
379 <sheet string="Task">379 <sheet string="Task">
380 <div class="oe_right">
381 <field name="kanban_state" class="oe_inline" widget="kanban_state_selection"/>
382 </div>
380 <h1>383 <h1>
381 <field name="name" placeholder="Task summary..." class="oe_inline"/>384 <field name="name" placeholder="Task summary..." class="oe_inline"/>
382 <field name="kanban_state" invisible='1'/>
383 <button name="set_kanban_state_done" help="In Progress" attrs="{'invisible': [('kanban_state', 'in', ['done','blocked'])]}" type="object" icon="gtk-normal" class="oe_link oe_right"/>
384 <button name="set_kanban_state_blocked" help="Ready for Next Stage" attrs="{'invisible': [('kanban_state', 'in', ['normal','blocked'])]}" type="object" icon="gtk-yes" class="oe_link oe_right"/>
385 <button name="set_kanban_state_normal" help="Blocked" attrs="{'invisible': [('kanban_state', 'in', ['done','normal'])]}" type="object" icon="gtk-no" class="oe_link oe_right"/>
386 </h1>385 </h1>
387 <group>386 <group>
388 <group>387 <group>
@@ -444,7 +443,7 @@
444 </page>443 </page>
445 <page string="Extra Info">444 <page string="Extra Info">
446 <group col="4">445 <group col="4">
447 <field name="priority" groups="base.group_user"/>446 <field name="priority" groups="base.group_user" widget="priority"/>
448 <field name="sequence"/>447 <field name="sequence"/>
449 <field name="partner_id"/>448 <field name="partner_id"/>
450 <field name="company_id" groups="base.group_multi_company" widget="selection"/>449 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
@@ -515,16 +514,6 @@
515 <t t-if="record.date_deadline.raw_value and record.date_deadline.raw_value lt (new Date())" t-set="red">oe_kanban_text_red</t>514 <t t-if="record.date_deadline.raw_value and record.date_deadline.raw_value lt (new Date())" t-set="red">oe_kanban_text_red</t>
516 <span t-attf-class="#{red || ''}"><i><field name="date_deadline"/></i></span>515 <span t-attf-class="#{red || ''}"><i><field name="date_deadline"/></i></span>
517 </div>516 </div>
518 <div class="oe_kanban_bottom_right">
519 <t groups="base.group_user">
520 <a t-if="record.kanban_state.raw_value === 'normal'" type="object" string="In Progress" name="set_kanban_state_done" class="oe_kanban_status"> </a>
521 <a t-if="record.kanban_state.raw_value === 'done'" type="object" string="Ready for next stage" name="set_kanban_state_blocked" class="oe_kanban_status oe_kanban_status_green"> </a>
522 <a t-if="record.kanban_state.raw_value === 'blocked'" type="object" string="Blocked" name="set_kanban_state_normal" class="oe_kanban_status oe_kanban_status_red"> </a>
523 <a t-if="record.priority.raw_value > 0" type="object" string="Normal" name="set_high_priority" class="oe_e oe_star_off">7</a>
524 <a t-if="record.priority.raw_value == 0" type="object" string="Very Important" name="set_normal_priority" class="oe_e oe_star_on">7</a>
525 </t>
526 <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar"/>
527 </div>
528 <div class="oe_kanban_footer_left">517 <div class="oe_kanban_footer_left">
529 <span groups="project.group_time_work_estimation_tasks" title="Remaining hours">518 <span groups="project.group_time_work_estimation_tasks" title="Remaining hours">
530 <span class="oe_e">N</span>519 <span class="oe_e">N</span>
@@ -535,6 +524,13 @@
535 <t t-raw="record.message_summary.raw_value"/>524 <t t-raw="record.message_summary.raw_value"/>
536 <field name="categ_ids"/>525 <field name="categ_ids"/>
537 </div>526 </div>
527 <div class="oe_kanban_bottom_right">
528 <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
529 <div class="pull-left" groups="base.group_user">
530 <field name="kanban_state" widget="kanban_state_selection"/>
531 <field name="priority" widget="priority"/>
532 </div>
533 </div>
538 </div>534 </div>
539 <div class="oe_clear"></div>535 <div class="oe_clear"></div>
540 </div>536 </div>
541537
=== modified file 'project/report/project_report.py'
--- project/report/project_report.py 2014-01-29 15:24:40 +0000
+++ project/report/project_report.py 2014-05-08 15:35:32 +0000
@@ -48,7 +48,7 @@
48 help="Number of Days to Open the task"),48 help="Number of Days to Open the task"),
49 'delay_endings_days': fields.float('Overpassed Deadline', digits=(16,2), readonly=True),49 'delay_endings_days': fields.float('Overpassed Deadline', digits=(16,2), readonly=True),
50 'nbr': fields.integer('# of tasks', readonly=True),50 'nbr': fields.integer('# of tasks', readonly=True),
51 'priority': fields.selection([('4', 'Very Low'), ('3', 'Low'), ('2', 'Medium'), ('1', 'Urgent'), ('0', 'Very urgent')],51 'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')],
52 string='Priority', readonly=True),52 string='Priority', readonly=True),
53 'state': fields.selection([('draft', 'Draft'), ('open', 'In Progress'), ('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')],'Status', readonly=True),53 'state': fields.selection([('draft', 'Draft'), ('open', 'In Progress'), ('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')],'Status', readonly=True),
54 'company_id': fields.many2one('res.company', 'Company', readonly=True),54 'company_id': fields.many2one('res.company', 'Company', readonly=True),
5555
=== modified file 'project_issue/project_issue.py'
--- project_issue/project_issue.py 2014-05-07 13:29:49 +0000
+++ project_issue/project_issue.py 2014-05-08 15:35:32 +0000
@@ -57,6 +57,7 @@
57 },57 },
58 'kanban_state': {58 'kanban_state': {
59 'project_issue.mt_issue_blocked': lambda self, cr, uid, obj, ctx=None: obj.kanban_state == 'blocked',59 'project_issue.mt_issue_blocked': lambda self, cr, uid, obj, ctx=None: obj.kanban_state == 'blocked',
60 'project_issue.mt_issue_ready': lambda self, cr, uid, obj, ctx=None: obj.kanban_state == 'done',
60 },61 },
61 }62 }
6263
@@ -250,7 +251,7 @@
250 " * Normal is the default situation\n"251 " * Normal is the default situation\n"
251 " * Blocked indicates something is preventing the progress of this issue\n"252 " * Blocked indicates something is preventing the progress of this issue\n"
252 " * Ready for next stage indicates the issue is ready to be pulled to the next stage",253 " * Ready for next stage indicates the issue is ready to be pulled to the next stage",
253 readonly=True, required=False),254 required=False),
254 'email_from': fields.char('Email', size=128, help="These people will receive email.", select=1),255 'email_from': fields.char('Email', size=128, help="These people will receive email.", select=1),
255 'email_cc': fields.char('Watchers Emails', size=256, help="These email addresses will be added to the CC field of all inbound and outbound emails for this record before being sent. Separate multiple email addresses with a comma"),256 'email_cc': fields.char('Watchers Emails', size=256, help="These email addresses will be added to the CC field of all inbound and outbound emails for this record before being sent. Separate multiple email addresses with a comma"),
256 'date_open': fields.datetime('Opened', readonly=True,select=True),257 'date_open': fields.datetime('Opened', readonly=True,select=True),
@@ -260,7 +261,7 @@
260 'date_last_stage_update': fields.datetime('Last Stage Update', select=True),261 'date_last_stage_update': fields.datetime('Last Stage Update', select=True),
261 'channel_id': fields.many2one('crm.case.channel', 'Channel', help="Communication channel."),262 'channel_id': fields.many2one('crm.case.channel', 'Channel', help="Communication channel."),
262 'categ_ids': fields.many2many('project.category', string='Tags'),263 'categ_ids': fields.many2many('project.category', string='Tags'),
263 'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority', select=True),264 'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')], 'Priority', select=True),
264 'version_id': fields.many2one('project.issue.version', 'Version'),265 'version_id': fields.many2one('project.issue.version', 'Version'),
265 'stage_id': fields.many2one ('project.task.type', 'Stage',266 'stage_id': fields.many2one ('project.task.type', 'Stage',
266 track_visibility='onchange', select=True,267 track_visibility='onchange', select=True,
@@ -295,7 +296,7 @@
295 'active': 1,296 'active': 1,
296 'stage_id': lambda s, cr, uid, c: s._get_default_stage_id(cr, uid, c),297 'stage_id': lambda s, cr, uid, c: s._get_default_stage_id(cr, uid, c),
297 'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.helpdesk', context=c),298 'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.helpdesk', context=c),
298 'priority': crm.AVAILABLE_PRIORITIES[2][0],299 'priority': '1',
299 'kanban_state': 'normal',300 'kanban_state': 'normal',
300 'date_last_stage_update': fields.datetime.now,301 'date_last_stage_update': fields.datetime.now,
301 'user_id': lambda obj, cr, uid, context: uid,302 'user_id': lambda obj, cr, uid, context: uid,
@@ -305,19 +306,6 @@
305 'stage_id': _read_group_stage_ids306 'stage_id': _read_group_stage_ids
306 }307 }
307308
308 def set_priority(self, cr, uid, ids, priority, *args):
309 return self.write(cr, uid, ids, {'priority' : priority})
310
311 def set_high_priority(self, cr, uid, ids, *args):
312 """Set lead priority to high
313 """
314 return self.set_priority(cr, uid, ids, '1')
315
316 def set_normal_priority(self, cr, uid, ids, *args):
317 """Set lead priority to normal
318 """
319 return self.set_priority(cr, uid, ids, '3')
320
321 def copy(self, cr, uid, id, default=None, context=None):309 def copy(self, cr, uid, id, default=None, context=None):
322 issue = self.read(cr, uid, id, ['name'], context=context)310 issue = self.read(cr, uid, id, ['name'], context=context)
323 if not default:311 if not default:
@@ -375,15 +363,6 @@
375 # Stage management363 # Stage management
376 # -------------------------------------------------------364 # -------------------------------------------------------
377365
378 def set_kanban_state_blocked(self, cr, uid, ids, context=None):
379 return self.write(cr, uid, ids, {'kanban_state': 'blocked'}, context=context)
380
381 def set_kanban_state_normal(self, cr, uid, ids, context=None):
382 return self.write(cr, uid, ids, {'kanban_state': 'normal'}, context=context)
383
384 def set_kanban_state_done(self, cr, uid, ids, context=None):
385 return self.write(cr, uid, ids, {'kanban_state': 'done'}, context=context)
386
387 def stage_find(self, cr, uid, cases, section_id, domain=[], order='sequence', context=None):366 def stage_find(self, cr, uid, cases, section_id, domain=[], order='sequence', context=None):
388 """ Override of the base.stage method367 """ Override of the base.stage method
389 Parameter of the stage search taken from the issue:368 Parameter of the stage search taken from the issue:
390369
=== modified file 'project_issue/project_issue_data.xml'
--- project_issue/project_issue_data.xml 2014-02-21 11:27:04 +0000
+++ project_issue/project_issue_data.xml 2014-05-08 15:35:32 +0000
@@ -48,6 +48,12 @@
48 <field name="default" eval="False"/>48 <field name="default" eval="False"/>
49 <field name="description">Issue blocked</field>49 <field name="description">Issue blocked</field>
50 </record>50 </record>
51 <record id="mt_issue_ready" model="mail.message.subtype">
52 <field name="name">Issue Ready for Next Stage</field>
53 <field name="res_model">project.issue</field>
54 <field name="default" eval="False"/>
55 <field name="description">Issue Ready for Next Stage</field>
56 </record>
51 <record id="mt_issue_stage" model="mail.message.subtype">57 <record id="mt_issue_stage" model="mail.message.subtype">
52 <field name="name">Stage Changed</field>58 <field name="name">Stage Changed</field>
53 <field name="res_model">project.issue</field>59 <field name="res_model">project.issue</field>
5460
=== modified file 'project_issue/project_issue_demo.xml'
--- project_issue/project_issue_demo.xml 2012-11-29 22:26:45 +0000
+++ project_issue/project_issue_demo.xml 2014-05-08 15:35:32 +0000
@@ -35,7 +35,7 @@
35 <!-- Issues -->35 <!-- Issues -->
36 <record id="crm_case_buginaccountsmodule0" model="project.issue">36 <record id="crm_case_buginaccountsmodule0" model="project.issue">
37 <field eval="time.strftime('%Y-%m-08 10:15:00')" name="date"/>37 <field eval="time.strftime('%Y-%m-08 10:15:00')" name="date"/>
38 <field name="priority">5</field>38 <field name="priority">0</field>
39 <field name="user_id" ref="base.user_root"/>39 <field name="user_id" ref="base.user_root"/>
40 <field name="partner_id" ref="base.res_partner_2"/>40 <field name="partner_id" ref="base.res_partner_2"/>
41 <field name="section_id" ref="crm.section_sales_department"/>41 <field name="section_id" ref="crm.section_sales_department"/>
@@ -51,7 +51,7 @@
5151
52 <record id="crm_case_programnotgivingproperoutput0" model="project.issue">52 <record id="crm_case_programnotgivingproperoutput0" model="project.issue">
53 <field eval="time.strftime('%Y-%m-15 12:50:00')" name="date"/>53 <field eval="time.strftime('%Y-%m-15 12:50:00')" name="date"/>
54 <field name="priority">3</field>54 <field name="priority">1</field>
55 <field name="user_id" ref="base.user_root"/>55 <field name="user_id" ref="base.user_root"/>
56 <field name="partner_id" ref="base.res_partner_1"/>56 <field name="partner_id" ref="base.res_partner_1"/>
57 <field name="section_id" ref="crm.section_sales_department"/>57 <field name="section_id" ref="crm.section_sales_department"/>
@@ -64,7 +64,7 @@
6464
65 <record id="crm_case_outputincorrect0" model="project.issue">65 <record id="crm_case_outputincorrect0" model="project.issue">
66 <field eval="time.strftime('%Y-%m-18 14:30:00')" name="date"/>66 <field eval="time.strftime('%Y-%m-18 14:30:00')" name="date"/>
67 <field name="priority">4</field>67 <field name="priority">0</field>
68 <field name="user_id" ref="base.user_demo"/>68 <field name="user_id" ref="base.user_demo"/>
69 <field name="section_id" ref="crm.section_sales_department"/>69 <field name="section_id" ref="crm.section_sales_department"/>
70 <field eval="1" name="active"/>70 <field eval="1" name="active"/>
@@ -79,7 +79,7 @@
7979
80 <record id="crm_case_problemloadingpage0" model="project.issue">80 <record id="crm_case_problemloadingpage0" model="project.issue">
81 <field eval="time.strftime('%Y-%m-20 15:25:05')" name="date"/>81 <field eval="time.strftime('%Y-%m-20 15:25:05')" name="date"/>
82 <field name="priority">3</field>82 <field name="priority">1</field>
83 <field name="user_id" ref="base.user_root"/>83 <field name="user_id" ref="base.user_root"/>
84 <field name="partner_id" ref="base.res_partner_14"/>84 <field name="partner_id" ref="base.res_partner_14"/>
85 <field name="section_id" ref="crm.section_sales_department"/>85 <field name="section_id" ref="crm.section_sales_department"/>
@@ -92,7 +92,7 @@
9292
93 <record id="crm_case_pagenotfound0" model="project.issue">93 <record id="crm_case_pagenotfound0" model="project.issue">
94 <field eval="time.strftime('%Y-%m-22 18:15:00')" name="date"/>94 <field eval="time.strftime('%Y-%m-22 18:15:00')" name="date"/>
95 <field name="priority">3</field>95 <field name="priority">1</field>
96 <field name="user_id" ref="base.user_root"/>96 <field name="user_id" ref="base.user_root"/>
97 <field name="partner_id" ref="base.res_partner_13"/>97 <field name="partner_id" ref="base.res_partner_13"/>
98 <field name="section_id" ref="crm.section_sales_department"/>98 <field name="section_id" ref="crm.section_sales_department"/>
@@ -105,7 +105,7 @@
105105
106 <record id="crm_case_programmingerror0" model="project.issue">106 <record id="crm_case_programmingerror0" model="project.issue">
107 <field eval="time.strftime('%Y-%m-24 09:45:00')" name="date"/>107 <field eval="time.strftime('%Y-%m-24 09:45:00')" name="date"/>
108 <field name="priority">3</field>108 <field name="priority">1</field>
109 <field name="user_id" ref="base.user_root"/>109 <field name="user_id" ref="base.user_root"/>
110 <field name="partner_id" ref="base.res_partner_5"/>110 <field name="partner_id" ref="base.res_partner_5"/>
111 <field name="section_id" ref="crm.section_sales_department"/>111 <field name="section_id" ref="crm.section_sales_department"/>
@@ -172,7 +172,7 @@
172172
173 <record id="crm_case_newfeaturestobeadded0" model="project.issue">173 <record id="crm_case_newfeaturestobeadded0" model="project.issue">
174 <field eval="time.strftime('%Y-%m-01 12:15:10')" name="date"/>174 <field eval="time.strftime('%Y-%m-01 12:15:10')" name="date"/>
175 <field name="priority">4</field>175 <field name="priority">0</field>
176 <field name="user_id" ref="base.user_root"/>176 <field name="user_id" ref="base.user_root"/>
177 <field name="partner_id" ref="base.res_partner_8"/>177 <field name="partner_id" ref="base.res_partner_8"/>
178 <field name="section_id" ref="crm.section_sales_department"/>178 <field name="section_id" ref="crm.section_sales_department"/>
@@ -199,7 +199,7 @@
199199
200 <record id="crm_case_includeattendancesheetinproject0" model="project.issue">200 <record id="crm_case_includeattendancesheetinproject0" model="project.issue">
201 <field eval="time.strftime('%Y-%m-10 17:05:30')" name="date"/>201 <field eval="time.strftime('%Y-%m-10 17:05:30')" name="date"/>
202 <field name="priority">3</field>202 <field name="priority">1</field>
203 <field name="user_id" ref="base.user_root"/>203 <field name="user_id" ref="base.user_root"/>
204 <field name="partner_id" ref="base.res_partner_10"/>204 <field name="partner_id" ref="base.res_partner_10"/>
205 <field name="section_id" ref="crm.section_sales_department"/>205 <field name="section_id" ref="crm.section_sales_department"/>
@@ -213,7 +213,7 @@
213213
214 <record id="crm_case_createnewobject0" model="project.issue">214 <record id="crm_case_createnewobject0" model="project.issue">
215 <field eval="time.strftime('%Y-%m-15 10:35:15')" name="date"/>215 <field eval="time.strftime('%Y-%m-15 10:35:15')" name="date"/>
216 <field name="priority">3</field>216 <field name="priority">1</field>
217 <field name="user_id" ref="base.user_root"/>217 <field name="user_id" ref="base.user_root"/>
218 <field name="partner_id" ref="base.res_partner_6"/>218 <field name="partner_id" ref="base.res_partner_6"/>
219 <field name="section_id" ref="crm.section_sales_department"/>219 <field name="section_id" ref="crm.section_sales_department"/>
@@ -226,7 +226,7 @@
226226
227 <record id="crm_case_improvereportsinhrms0" model="project.issue">227 <record id="crm_case_improvereportsinhrms0" model="project.issue">
228 <field eval="time.strftime('%Y-%m-19 12:15:00')" name="date"/>228 <field eval="time.strftime('%Y-%m-19 12:15:00')" name="date"/>
229 <field name="priority">4</field>229 <field name="priority">0</field>
230 <field name="user_id" ref="base.user_root"/>230 <field name="user_id" ref="base.user_root"/>
231 <field name="partner_id" ref="base.res_partner_11"/>231 <field name="partner_id" ref="base.res_partner_11"/>
232 <field name="section_id" ref="crm.section_sales_department"/>232 <field name="section_id" ref="crm.section_sales_department"/>
233233
=== modified file 'project_issue/project_issue_view.xml'
--- project_issue/project_issue_view.xml 2014-05-02 13:07:53 +0000
+++ project_issue/project_issue_view.xml 2014-05-08 15:35:32 +0000
@@ -52,13 +52,12 @@
52 options="{'fold_field': 'fold'}"/>52 options="{'fold_field': 'fold'}"/>
53 </header>53 </header>
54 <sheet string="Issue">54 <sheet string="Issue">
55 <div class="oe_right">
56 <field name="kanban_state" class="oe_inline" widget="kanban_state_selection"/>
57 </div>
55 <label for="name" class="oe_edit_only"/>58 <label for="name" class="oe_edit_only"/>
56 <h1>59 <h1>
57 <field name="name" class="oe_inline"/>60 <field name="name" class="oe_inline"/>
58 <field name="kanban_state" invisible='1'/>
59 <button name="set_kanban_state_done" help="In Progress" attrs="{'invisible': [('kanban_state', 'in', ['done','blocked'])]}" type="object" icon="gtk-normal" class="oe_link oe_right"/>
60 <button name="set_kanban_state_blocked" help="Ready for Next Stage" attrs="{'invisible': [('kanban_state', 'in', ['normal','blocked'])]}" type="object" icon="gtk-yes" class="oe_link oe_right"/>
61 <button name="set_kanban_state_normal" help="Blocked" attrs="{'invisible': [('kanban_state', 'in', ['done','normal'])]}" type="object" icon="gtk-no" class="oe_link oe_right"/>
62 </h1>61 </h1>
63 <label for="categ_ids" class="oe_edit_only"/>62 <label for="categ_ids" class="oe_edit_only"/>
64 <field name="categ_ids" widget="many2many_tags"/>63 <field name="categ_ids" widget="many2many_tags"/>
@@ -78,7 +77,7 @@
78 <group>77 <group>
79 <field name="id"/>78 <field name="id"/>
80 <field name="version_id" groups="base.group_user"/>79 <field name="version_id" groups="base.group_user"/>
81 <field name="priority" groups="base.group_user"/>80 <field name="priority" groups="base.group_user" widget="priority"/>
82 <label for="task_id" groups="base.group_user"/>81 <label for="task_id" groups="base.group_user"/>
83 <div groups="base.group_user">82 <div groups="base.group_user">
84 <field name="task_id" on_change="onchange_task_id(task_id)" class="oe_inline" context="{'default_project_id':project_id}"/>83 <field name="task_id" on_change="onchange_task_id(task_id)" class="oe_inline" context="{'default_project_id':project_id}"/>
@@ -217,34 +216,15 @@
217 <field name="partner_id"/> <br/>216 <field name="partner_id"/> <br/>
218 <field name="version_id"/>217 <field name="version_id"/>
219 </div>218 </div>
219 <div class="oe_kanban_bottom_right">
220 <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar pull-right"/>
221 <div class="pull-left" groups="base.group_user">
222 <field name="kanban_state" widget="kanban_state_selection"/>
223 <field name="priority" widget="priority"/>
224 </div>
225 </div>
220 <div class="oe_kanban_footer_left">226 <div class="oe_kanban_footer_left">
221 <field name="categ_ids"/>227 <field name="categ_ids"/>
222 <div class="oe_right">
223 <span class="oe_kanban_highlight" groups="base.group_user">
224 <a t-if="record.kanban_state.raw_value === 'normal'" type="object" string="In Progress" name="set_kanban_state_done" class="oe_kanban_status"> </a>
225 <a t-if="record.kanban_state.raw_value === 'done'" type="object" string="Ready for next stage" name="set_kanban_state_blocked" class="oe_kanban_status oe_kanban_status_green"> </a>
226 <a t-if="record.kanban_state.raw_value === 'blocked'" type="object" string="Blocked" name="set_kanban_state_normal" class="oe_kanban_status oe_kanban_status_red"> </a>
227 <t t-set="priority" t-value="record.priority.raw_value || 5"/>
228 <a type="object" name="set_priority" args="['3']" t-if="priority gt 3" title="Normal Priority">
229 <img src="/web/static/src/img/icons/star-off.png" width="16" height="16"/>
230 </a>
231 <a type="object" name="set_priority" args="['5']" t-if="priority lte 3" title="Normal Priority">
232 <img t-attf-src="/web/static/src/img/icons/star-#{priority lte 3 ? 'on' : 'off'}.png" width="16" height="16"/>
233 </a>
234 <a type="object" name="set_priority" args="['2']" title="High Priority">
235 <img t-attf-src="/web/static/src/img/icons/star-#{priority lte 2 ? 'on' : 'off'}.png" width="16" height="16"/>
236 </a>
237 <a type="object" name="set_priority" args="['1']" title="Highest Priority">
238 <img t-attf-src="/web/static/src/img/icons/star-#{priority == 1 ? 'on' : 'off'}.png" width="16" height="16"/>
239 </a>
240 </span>
241 <t t-if="record.date_deadline.raw_value and record.date_deadline.raw_value lt (new Date())">
242 <span t-attf-class="oe_kanban_status oe_kaban_status_red"> </span>
243 </t>
244 <img t-att-src="kanban_image('res.users', 'image_small', record.user_id.raw_value)" t-att-title="record.user_id.value" width="24" height="24" class="oe_kanban_avatar"/>
245 </div>
246 </div>
247 <div class="oe_kanban_footer_left">
248 <t t-raw="record.message_summary.raw_value"/>228 <t t-raw="record.message_summary.raw_value"/>
249 </div>229 </div>
250 </div>230 </div>
251231
=== modified file 'project_issue/report/project_issue_report.py'
--- project_issue/report/project_issue_report.py 2013-10-27 12:31:04 +0000
+++ project_issue/report/project_issue_report.py 2014-05-08 15:35:32 +0000
@@ -47,7 +47,7 @@
47 'delay_close': fields.float('Avg. Delay to Close', digits=(16,2), readonly=True, group_operator="avg",47 'delay_close': fields.float('Avg. Delay to Close', digits=(16,2), readonly=True, group_operator="avg",
48 help="Number of Days to close the project issue"),48 help="Number of Days to close the project issue"),
49 'company_id' : fields.many2one('res.company', 'Company'),49 'company_id' : fields.many2one('res.company', 'Company'),
50 'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),50 'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')], 'Priority'),
51 'project_id':fields.many2one('project.project', 'Project',readonly=True),51 'project_id':fields.many2one('project.project', 'Project',readonly=True),
52 'version_id': fields.many2one('project.issue.version', 'Version'),52 'version_id': fields.many2one('project.issue.version', 'Version'),
53 'user_id' : fields.many2one('res.users', 'Assigned to',readonly=True),53 'user_id' : fields.many2one('res.users', 'Assigned to',readonly=True),

Subscribers

People subscribed via source and target branches

to all changes: