Amit (Open ERP) has proposed merging
lp:~openerp-dev/openobject-addons/trunk-kabanization-tasks-tta into
lp:~openerp-dev/openobject-addons/trunk-kabanization.
Requested reviews:
Amit (Open ERP) (apa-tiny)
Antony Lesuisse (OpenERP) (al-openerp)
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-kabanization-tasks-tta/+merge/76372
Hello,
Kanban View : Project.task
Also Separate view of form and tree added.
And Color field and priority methods are added too.
Thanks,
Tejas
--
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-kabanization-tasks-tta/+merge/76372
Your team OpenERP R&D Team is subscribed to branch
lp:~openerp-dev/openobject-addons/trunk-kabanization.
=== modified file 'project/project.py'
--- project/project.py 2011-09-07 22:48:29 +0000
+++ project/project.py 2011-09-21 10:21:25 +0000
@@ -470,6 +470,7 @@
'manager_id': fields.related('project_id', 'analytic_account_id', 'user_id', type='many2one', relation='res.users', string='Project Manager'),
'company_id': fields.many2one('res.company', 'Company'),
'id': fields.integer('ID'),
+ 'color': fields.integer('Color Index'),
}
_defaults = {
@@ -485,6 +486,21 @@
_order = "sequence,priority, date_start, name, id"
+ def set_priority(self, cr, uid, ids, priority):
+ """Set task priority
+ """
+ return self.write(cr, uid, ids, {'priority' : priority})
+
+ def set_high_priority(self, cr, uid, ids, *args):
+ """Set task priority to high
+ """
+ return self.set_priority(cr, uid, ids, '1')
+
+ def set_normal_priority(self, cr, uid, ids, *args):
+ """Set task priority to normal
+ """
+ return self.set_priority(cr, uid, ids, '3')
+
def _check_recursion(self, cr, uid, ids, context=None):
for id in ids:
visited_branch = set()
=== modified file 'project/project_view.xml'
--- project/project_view.xml 2011-09-13 16:29:07 +0000
+++ project/project_view.xml 2011-09-21 10:21:25 +0000
@@ -312,62 +312,71 @@
</field>
</record>
-
-
- <record id="view_task_kanban" model="ir.ui.view">
+
+ <!-- Project Task Kanban View -->
+ <record model="ir.ui.view" id="view_task_kanban">
<field name="name">project.task.kanban</field>
<field name="model">project.task</field>
<field name="type">kanban</field>
<field name="arch" type="xml">
- <kanban>
- <field name="state"/>
+ <kanban default_group_by="type_id" >
<templates>
<t t-name="kanban-box">
- <t t-set="color">#fff</t>
- <t t-if="state.raw_value == 'done'" t-set="color">#dfd</t>
- <t t-if="state.raw_value == 'open'" t-set="color">lightcyan</t>
- <t t-if="state.raw_value == 'cancel' and total_hours.raw_value gt 0" t-set="color">red</t>
- <div t-attf-style="background: #{color}">
- <table>
- <tr>
- <td>Title :</td>
- <td><field name="name"/></td>
- </tr>
- <tr>
- <td>Progress :</td>
- <td><field name="progress"/></td>
- </tr>
- <tr>
- <td><button data-type="action" data-name="%(action_project_task_reevaluate)d">Reevaluate</button><button data-type="edit" >Edit</button></td>
- <td><button data-type="object" data-name="prev_type">Previous phase</button></td>
- </tr>
- <tr>
- <td>Project name:</td>
- <td colspan="2"><field name="project_id"/></td>
- </tr>
- <tr>
- <td>Phase</td>
- <td colspan="2"><field name="type_id"/></td>
- </tr>
- <tr>
- <td>Remain Time :</td>
- <td colspan="2"><field name="remaining_hours"/></td>
- </tr>
- <tr>
- <td>Spent Time :</td>
- <td colspan="2"><field name="remaining_hours"/></td>
- </tr>
- <tr>
- <td>Remain Time :</td>
- <td colspan="2"><field name="remaining_hours"/></td>
- </tr>
- </table>
+ <t t-set="color" t-value="kanban_color(record.color.raw_value || record.type_id.raw_value)"/>
+ <div t-att-class="color + (record.priority.raw_value == 1 ? ' oe_kanban_color_alert' : '')">
+ <div class="oe_kanban_box oe_kanban_color_border">
+ <table class="oe_kanban_table oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle">
+ <tr>
+ <td class="oe_kanban_title1" align="left" valign="middle">
+ <a t-if="record.priority.raw_value == 1" icon="star-on" type="object" name="set_normal_priority"/>
+ <a t-if="record.priority.raw_value != 1" icon="star-off" type="object" name="set_high_priority" style="opacity:0.6; filter:alpha(opacity=60);"/>
+ <field name="name"/>
+ </td>
+ <td valign="top" width="22">
+ <img t-att-src="kanban_gravatar(record.user_id.value, 22)" class="oe_kanban_gravatar"/>
+ </td>
+ </tr>
+ </table>
+ <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger">
+ <div class="oe_kanban_right oe_kanban_small">
+ <field name="user_id"/>
+ </div>
+ <div class="oe_kanban_title2">
+ <field name="project_id"/>
+ </div>
+ <div class="oe_kanban_small">
+ <a target="_blank" t-att-href="'http://pad.openerp.com/'+record.name.raw_value.toLowerCase().replace(' ','-')">
+ http://pad.openerp.com/<t t-esc="record.name.raw_value.toLowerCase().replace(' ','-')"/>
+ </a>
+ </div>
+ <div class="oe_kanban_small">
+ <i><field name="date_deadline"/></i>
+ </div>
+ </div>
+ <div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick">
+ <div class="oe_kanban_left">
+ <a string="Edit" icon="gtk-edit" type="edit"/>
+ <a string="Change Color" icon="color-picker" type="color" name="color"/>
+ <a string="" />
+ <a title="OpenERP Pad" icon="pad-openerp" target="_blank" t-att-href="'http://pad.openerp.com/'+record.name.value" style="text-decoration: none;" >
+ <img src="/web/static/src/img/icons/pad-openerp.png" border="0" width="16" height="16"/>
+ </a>
+ <a name="%(action_project_task_delegate)d" string="Delegate" states="pending,open,draft" type="action" icon="gtk-sort-descending" />
+ </div>
+ <div class="oe_kanban_right">
+ <a name="do_cancel" string="Mark Lost" states="draft,open,pending" type="object" icon="lead-stage-lost"/>
+ <a name="do_pending" string="Pending" states="open" type="object" icon="gtk-media-pause"/>
+ <a name="action_close" string="Mark Won" states="pending,open" type="object" icon="lead-stage-won"/>
+ </div>
+ <br class="oe_kanban_clear"/>
+ </div>
+ </div>
</div>
</t>
</templates>
</kanban>
</field>
- </record>
+ </record>
<record id="view_task_tree2" model="ir.ui.view">
<field name="name">project.task.tree</field>
@@ -501,6 +510,21 @@
<field name="search_view_id" ref="view_task_search_form"/>
<field name="help">A task represents a work that has to be done. Each user works in his own list of tasks where he can record his task work in hours. He can work and close the task itself or delegate it to another user. If you delegate a task to another user, you get a new task in pending state, which will be reopened when you have to review the work achieved. If you install the project_timesheet module, task work can be invoiced based on the project configuration. With the project_mrp module, sales orders can create tasks automatically when they are confirmed.</field>
</record>
+
+ <record id="action_view_task_tree" model="ir.actions.act_window.view">
+ <field name="sequence" eval="1"/>
+ <field name="view_mode">tree</field>
+ <field name="view_id" ref="view_task_tree2"/>
+ <field name="act_window_id" ref="action_view_task"/>
+ </record>
+
+ <record id="action_view_task_form" model="ir.actions.act_window.view">
+ <field name="sequence" eval="2"/>
+ <field name="view_mode">form</field>
+ <field name="view_id" ref="view_task_form2"/>
+ <field name="act_window_id" ref="action_view_task"/>
+ </record>
+
<menuitem action="action_view_task" id="menu_action_view_task" parent="project.menu_project_management" sequence="3"/>
<record id="action_view_task_overpassed_draft" model="ir.actions.act_window">
_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help : https://help.launchpad.net/ListHelp