364 lines
20 KiB
XML
364 lines
20 KiB
XML
<?xml version="1.0"?>
|
|
<openerp>
|
|
<data>
|
|
|
|
<record model="ir.ui.view" id="project_issue_form_view">
|
|
<field name="name">Project Issue Tracker Form</field>
|
|
<field name="model">project.issue</field>
|
|
<field name="arch" type="xml">
|
|
<form>
|
|
<header>
|
|
<field name="stage_id" widget="statusbar" clickable="True"
|
|
options="{'fold_field': 'fold'}"/>
|
|
</header>
|
|
<sheet string="Issue">
|
|
<div class="oe_button_box" name="button_box">
|
|
<button name="toggle_active" type="object" groups="base.group_no_one"
|
|
class="oe_stat_button" icon="fa-archive">
|
|
<field name="active" widget="boolean_button"
|
|
options='{"terminology": "archive"}'/>
|
|
</button>
|
|
</div>
|
|
<field name="kanban_state" class="oe_inline" widget="kanban_state_selection"/>
|
|
<div class="oe_title">
|
|
<h1><field name="name" placeholder="Issue Summary..."/></h1>
|
|
</div>
|
|
<group>
|
|
<group>
|
|
<field name="user_id"/>
|
|
<field name="priority" groups="base.group_user" widget="priority"/>
|
|
<field name="tag_ids" widget="many2many_tags"/>
|
|
</group>
|
|
<group>
|
|
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
|
|
<field name="email_from"/>
|
|
<field name="project_id" on_change="on_change_project(project_id)" context="{'default_use_issues':1}"/>
|
|
<field name="task_id" groups="base.group_no_one" on_change="onchange_task_id(task_id)" context="{'default_project_id':project_id}"/>
|
|
</group>
|
|
</group>
|
|
<notebook>
|
|
<page string="Description">
|
|
<field name="description" placeholder="Add an internal note..." groups="base.group_user"/>
|
|
</page>
|
|
<page string="Extra Info" name="extra_info" groups="project.group_project_manager,project.group_project_user">
|
|
<group>
|
|
<group>
|
|
<field name="id"/>
|
|
<field name="day_open"/>
|
|
<field name="day_close"/>
|
|
<field name="working_hours_open" widget="float_time"/>
|
|
<field name="working_hours_close" widget="float_time"/>
|
|
<field name="inactivity_days"/>
|
|
<field name="days_since_creation"/>
|
|
<field name="legend_blocked" invisible="1"/>
|
|
<field name="legend_done" invisible="1"/>
|
|
<field name="legend_normal" invisible="1"/>
|
|
</group>
|
|
</group>
|
|
</page>
|
|
</notebook>
|
|
</sheet>
|
|
<div class="oe_chatter">
|
|
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
|
|
<field name="message_ids" widget="mail_thread"/>
|
|
</div>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record model="ir.ui.view" id="project_issue_tree_view">
|
|
<field name="name">Project Issue Tracker Tree</field>
|
|
<field name="model">project.issue</field>
|
|
<field name="arch" type="xml">
|
|
<tree string="Issue Tracker Tree" decoration-bf="message_needaction==True">
|
|
<field name="message_needaction" invisible="1"/>
|
|
<field name="id"/>
|
|
<field name="name"/>
|
|
<field name="partner_id"/>
|
|
<field name="project_id"/>
|
|
<field name="priority" string="Priority" groups="base.group_user"/>
|
|
<field name="create_date"/>
|
|
<field name="user_id"/>
|
|
<field name="stage_id" widget="selection" readonly="1"/>
|
|
<field name="tag_ids" invisible="1"/>
|
|
<field name="task_id" invisible="1"/>
|
|
</tree>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="view_project_issue_filter" model="ir.ui.view">
|
|
<field name="name">Project Issue Tracker Search</field>
|
|
<field name="model">project.issue</field>
|
|
<field name="arch" type="xml">
|
|
<search string="Issue Tracker Search">
|
|
<field name="name" string="Issue" filter_domain="['|', '|', '|', ('partner_id','child_of',self), ('description','ilike',self),('email_from','ilike',self),('name','ilike',self)]"/>
|
|
<field name="id"/>
|
|
<field name="partner_id" operator="child_of"/>
|
|
<field name="user_id"/>
|
|
<field name="project_id"/>
|
|
<field name="tag_ids"/>
|
|
<field name="stage_id" domain="[]"/>
|
|
<filter string="My Issues" domain="[('user_id','=',uid)]"/>
|
|
<filter string="Unassigned" name="unassigned" domain="[('user_id', '=', False)]"/>
|
|
<separator/>
|
|
<filter string="New" name="draft" domain="[('stage_id.sequence', '=', 1)]"/>
|
|
<separator/>
|
|
<filter string="Unread Messages" name="message_needaction" domain="[('message_needaction','=',True)]"/>
|
|
<filter string="Archived" name="inactive" domain="[('active','=',False)]"/>
|
|
<group expand="0" string="Group By" >
|
|
<filter string="Assigned to" name="Responsible" context="{'group_by':'user_id'}" />
|
|
<filter string="Project" name="project" context="{'group_by':'project_id'}" />
|
|
<filter string="Task" context="{'group_by':'task_id'}"/>
|
|
<filter string="Priority" context="{'group_by':'priority'}" />
|
|
<filter string="Stage" context="{'group_by':'stage_id'}"/>
|
|
<filter string="Company" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
|
|
<separator/>
|
|
<filter string="Create Day" context="{'group_by':'create_date:day'}" help="Create Date"/>
|
|
<filter string="Last Message" name="group_message_last_post" context="{'group_by':'message_last_post:week'}"/>
|
|
</group>
|
|
</search>
|
|
</field>
|
|
</record>
|
|
|
|
<record model="ir.ui.view" id="project_issue_calendar_view">
|
|
<field name="name">Project Issue Tracker Calendar</field>
|
|
<field name="model">project.issue</field>
|
|
<field name="priority" eval="2"/>
|
|
<field name="arch" type="xml">
|
|
<calendar string="Issues" date_start="date" color="user_id" date_delay="duration">
|
|
<field name="name"/>
|
|
<field name="partner_id"/>
|
|
</calendar>
|
|
</field>
|
|
</record>
|
|
|
|
|
|
<!-- Project Issue Karban View-->
|
|
|
|
<record model="ir.ui.view" id="project_issue_kanban_view">
|
|
<field name="name">Project Issue Kanban</field>
|
|
<field name="model">project.issue</field>
|
|
<field name="arch" type="xml">
|
|
<kanban default_group_by="stage_id" class="o_kanban_small_column">
|
|
<field name="stage_id" options='{"group_by_tooltip": {"description": "Description", "legend_priority": "Use of stars"}}'/>
|
|
<field name="color"/>
|
|
<field name="user_email"/>
|
|
<field name="user_id"/>
|
|
<field name="date_deadline"/>
|
|
<field name="message_needaction_counter"/>
|
|
<field name="active"/>
|
|
<field name="legend_blocked"/>
|
|
<field name="legend_done"/>
|
|
<field name="legend_normal"/>
|
|
<templates>
|
|
<t t-name="kanban-tooltip">
|
|
<ul class="oe_kanban_tooltip">
|
|
<li><b>Project:</b> <field name="project_id"/></li>
|
|
<li><b>Category:</b> <field name="tag_ids"/></li>
|
|
</ul>
|
|
</t>
|
|
<t t-name="kanban-box">
|
|
<div t-attf-class="oe_kanban_color_#{kanban_getcolor(record.color.raw_value)} oe_kanban_card oe_kanban_global_click oe_semantic_html_override">
|
|
<div class="o_dropdown_kanban dropdown" groups="base.group_user">
|
|
|
|
<a class="dropdown-toggle btn" data-toggle="dropdown" href="#" >
|
|
<span class="fa fa-bars fa-lg"/>
|
|
</a>
|
|
<ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
|
|
<t t-if="widget.editable"><li><a type="edit">Edit Issue</a></li></t>
|
|
<t t-if="widget.deletable"><li><a type="delete">Delete</a></li></t>
|
|
<li><ul class="oe_kanban_colorpicker" data-field="color"/></li>
|
|
</ul>
|
|
</div>
|
|
<div class="oe_kanban_content" tooltip="kanban-tooltip">
|
|
<field name="tag_ids"/>
|
|
<div>
|
|
<b><field name="name"/></b> <br/>
|
|
<field name="partner_id"/> <br/>
|
|
</div>
|
|
<div class="oe_kanban_bottom_left">
|
|
<field name="priority" widget="priority"/>
|
|
<t t-if="record.message_needaction_counter.raw_value">
|
|
<span class='oe_kanban_mail_new' title='Unread Messages'><i class='fa fa-comments'/><t t-raw="record.message_needaction_counter.raw_value"/></span>
|
|
</t>
|
|
</div>
|
|
<div class="oe_kanban_bottom_right">
|
|
<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"/>
|
|
<div class="pull-left" groups="base.group_user">
|
|
<field name="kanban_state" widget="kanban_state_selection"/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="oe_clear"></div>
|
|
</div>
|
|
</t>
|
|
</templates>
|
|
</kanban>
|
|
</field>
|
|
</record>
|
|
|
|
<record model="ir.ui.view" id="project_issue_pivot_view">
|
|
<field name="name">Project Issue Tracker Pivot</field>
|
|
<field name="model">project.issue</field>
|
|
<field name="arch" type="xml">
|
|
<pivot string="Project Issues">
|
|
<field name="project_id" type="row"/>
|
|
<field name="stage_id" type="col"/>
|
|
</pivot>
|
|
</field>
|
|
</record>
|
|
|
|
<record model="ir.ui.view" id="project_issue_graph_view">
|
|
<field name="name">Project Issue Tracker Graph</field>
|
|
<field name="model">project.issue</field>
|
|
<field name="arch" type="xml">
|
|
<graph string="Project Issues" type="bar">
|
|
<field name="project_id" type="row"/>
|
|
<field name="create_date" interval="month" type="col"/>
|
|
</graph>
|
|
</field>
|
|
</record>
|
|
|
|
|
|
<!-- Feature Requests -->
|
|
<record model="ir.ui.view" id="project_feature_tree_view">
|
|
<field name="name">Project Issue- Feature Tracker Tree</field>
|
|
<field name="model">project.issue</field>
|
|
<field name="arch" type="xml">
|
|
<tree string="Feature Tracker Tree" decoration-bf="message_needaction==True">
|
|
<field name="id"/>
|
|
<field name="message_needaction" invisible="1"/>
|
|
<field name="name" string="Feature description"/>
|
|
<field name="partner_id"/>
|
|
<field name="priority" string="Priority"/>
|
|
<field name="user_id"/>
|
|
<field name="stage_id" widget="selection" readonly="1"/>
|
|
</tree>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="act_project_project_2_project_issue_all" model="ir.actions.act_window">
|
|
<field name="res_model">project.issue</field>
|
|
<field name="view_type">form</field>
|
|
<field name="name">Issues</field>
|
|
<field name="view_mode">kanban,tree,form,calendar,graph,pivot</field>
|
|
<field name="context">{
|
|
'search_default_project_id': [active_id],
|
|
'default_project_id': active_id,
|
|
}
|
|
</field>
|
|
<field name="help" type="html">
|
|
<p>
|
|
The Odoo issues tacker allows you to efficiently manage things
|
|
like internal requests, software development bugs, customer
|
|
complaints, project troubles, material breakdowns, etc.
|
|
</p>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- Project -->
|
|
<record id="view_project_form_inherited" model="ir.ui.view">
|
|
<field name="name">project.project.form.inherited</field>
|
|
<field name="model">project.project</field>
|
|
<field name="inherit_id" ref="project.edit_project"/>
|
|
<field name="arch" type="xml">
|
|
<xpath expr='//field[@name="use_tasks"]' position='attributes'>
|
|
<attribute name="on_change">on_change_use_tasks_or_issues(use_tasks, use_issues)</attribute>
|
|
</xpath>
|
|
<xpath expr='//div[@name="options_active"]' position="attributes">
|
|
<attribute name="invisible">0</attribute>
|
|
</xpath>
|
|
<xpath expr='//div[@name="options_active"]' position='inside'>
|
|
<div>
|
|
<field name="use_issues" class="oe_inline" string="Use Issues"
|
|
on_change="on_change_use_tasks_or_issues(use_tasks, use_issues)"/>
|
|
<label for="use_issues" class="oe_inline"/>
|
|
<span attrs="{'invisible':[('use_issues', '=', False)]}">as </span>
|
|
<field name="label_issues" class="oe_inline oe_input_align" attrs="{'invisible': [('use_issues', '=', False)]}"/>
|
|
</div>
|
|
</xpath>
|
|
<div name="button_box" position="inside">
|
|
<button class="oe_stat_button" type="action" attrs="{'invisible':[('use_issues','=', False)]}"
|
|
name="%(act_project_project_2_project_issue_all)d" icon="fa-bug">
|
|
<field string="Issues" name="issue_count" widget="statinfo" options="{'label_field': 'label_issues'}"/>
|
|
</button>
|
|
</div>
|
|
<xpath expr='//field[@name="use_tasks"]' position="attributes">
|
|
<attribute name="attrs">{'on_change': 'on_change_use_tasks_or_issues(use_tasks, use_issues)'}</attribute>
|
|
</xpath>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="analytic_account_inherited_issue_form" model="ir.ui.view">
|
|
<field name="name">account.analytic.account.issue.form.inherit</field>
|
|
<field name="model">account.analytic.account</field>
|
|
<field name="inherit_id" ref="project.analytic_account_inherited_form"/>
|
|
<field eval="18" name="priority"/>
|
|
<field name="arch" type="xml">
|
|
<xpath expr='//div[@name="project"]' position='inside'>
|
|
<field name="use_issues"/>
|
|
<label for="use_issues"/>
|
|
</xpath>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="action_view_issues" model="ir.actions.act_window">
|
|
<field name="res_model">project.issue</field>
|
|
<field name="view_type">form</field>
|
|
<field name="name">Issues</field>
|
|
<field name="view_mode">kanban,tree,form,calendar,graph</field>
|
|
<field name="help" type="html">
|
|
<p>
|
|
The Odoo issues tacker allows you to efficiently manage things
|
|
like internal requests, software development bugs, customer
|
|
complaints, project troubles, material breakdowns, etc.
|
|
</p>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- res.partner -->
|
|
<record model="ir.ui.view" id="res_partner_issues_button_view">
|
|
<field name="name">res.partner.issues.button.view</field>
|
|
<field name="model">res.partner</field>
|
|
<field name="inherit_id" ref="base.view_partner_form" />
|
|
<field name="priority" eval="50"/>
|
|
<field name="groups_id" eval="[(4, ref('project.group_project_user'))]"/>
|
|
<field name="arch" type="xml">
|
|
<div name="button_box" position="inside">
|
|
<button class="oe_stat_button" type="action" name="%(action_view_issues)d"
|
|
context="{'search_default_partner_id': active_id, 'default_partner_id': active_id}"
|
|
attrs="{'invisible': [('customer', '=', False)]}"
|
|
icon="fa-bug">
|
|
<field string="Issues" name="issue_count" widget="statinfo"/>
|
|
</button>
|
|
</div>
|
|
</field>
|
|
</record>
|
|
|
|
<!-- Portal -->
|
|
<record id="open_view_issue" model="ir.actions.act_window">
|
|
<field name="name">Issues</field>
|
|
<field name="res_model">project.issue</field>
|
|
<field name="view_type">form</field>
|
|
<field name="view_mode">tree,form</field>
|
|
<field name="view_id" ref="project_issue.project_issue_tree_view"/>
|
|
<field name="domain" eval=""/>
|
|
<field name="context">{"search_default_user_id":'', "search_default_draft":'', "search_default_todo":'', "portal":'True'}</field>
|
|
<field name="search_view_id" ref="project_issue.view_project_issue_filter"/>
|
|
<field name="target">current</field>
|
|
<field name="help" type="html">
|
|
<p class="oe_view_nocontent_create">
|
|
Click to create an issue.
|
|
</p><p>
|
|
You can track your issues from this menu and the action we
|
|
will take.
|
|
</p>
|
|
</field>
|
|
</record>
|
|
|
|
<menuitem name="Issues" id="portal_services_issues" parent="portal.portal_projects"
|
|
action="open_view_issue" sequence="10"/>
|
|
|
|
</data>
|
|
</openerp>
|