<?xml version="1.0"?>
<openerp>
    <data>

<!--  Phonecall Categories Form View  -->

    <record id="crm_phonecall_categ_action" model="ir.actions.act_window">
        <field name="name">Phonecall Categories</field>
        <field name="res_model">crm.case.categ</field>
        <field name="view_type">form</field>
        <field name="view_id" ref="crm.crm_case_categ_tree-view"/>
        <field name="domain">[('object_id.model', '=', 'crm.phonecall')]</field>
        <field name="context">{'object_id':'crm.phonecall'}</field>
        <field name="help">Create specific phone call categories to better define the type of calls tracked in the system.</field>
    </record>

    <menuitem action="crm_phonecall_categ_action" name="Categories"
        id="menu_crm_case_phonecall-act" parent="menu_crm_config_phonecall" />

<!--  PhoneCalls Tree View -->

    <record model="ir.ui.view" id="crm_case_phone_tree_view">
        <field name="name">CRM - Phone Calls Tree</field>
        <field name="model">crm.phonecall</field>
        <field name="type">tree</field>
        <field name="arch" type="xml">
            <tree colors="gray:state in ('cancel','done');blue:state in ('pending',)" string="Phone Calls">
                <field name="date"/>
                <field name="name"/>
                <field name="partner_id"/>
                <field name="partner_contact"/>
                <field name="partner_phone"/>
                <field name="user_id"/>
                <field name="categ_id"/>
                <field name="create_date" invisible="1"/>
                <field name="opportunity_id" invisible="1"/>
                <button string="Convert to Opportunity"
                    name="%(phonecall2opportunity_act)d"
                    states="open,pending"
                    icon="gtk-index"
                    type="action" attrs="{'invisible':[('opportunity_id','!=',False)]}" />
                <button string="Meeting"
                    states="open,pending" icon="gtk-redo"
                     name="action_make_meeting" type="object" />
                <field name="state"/>
                <button name="case_cancel" string="Cancel" states="open,pending" type="object" icon="gtk-cancel"/>
                <button name="case_open" string="Todo" states="pending" type="object" icon="gtk-go-forward"/>
                <button name="case_close" string="Held" states="open,pending" type="object" icon="gtk-jump-to"/>
                <button name="case_pending" string="Not Held" states="open" type="object" icon="gtk-media-pause"/>
            </tree>
        </field>
    </record>

<!-- Phonecalls Form View -->

    <record model="ir.ui.view" id="crm_case_phone_form_view">
        <field name="name">CRM - Phone Call Form</field>
        <field name="model">crm.phonecall</field>
        <field name="type">form</field>
        <field name="arch" type="xml">
            <form string="Phone Call">
                 <group colspan="6" col="7">
                    <field name="name" required="1"/>
                    <field name="partner_phone"/>
                    <field name="duration" widget="float_time"/>
                    <button string="Schedule a Meeting" name="action_make_meeting" icon="gtk-redo" type="object"/>

                    <field name="date"/>
                    <field name="user_id"/>
                    <field name="section_id" colspan="1" widget="selection" />
                    <button string="Schedule Other Call"
                     icon="terp-call-start"
                    name="%(phonecall_to_phonecall_act)d"
                    type="action"  />
                    <label colspan="6"  string=""/>
                    <button string="Convert to Opportunity"
                        name="%(phonecall2opportunity_act)d"
                        icon="gtk-index" type="action"
                        attrs="{'invisible':[('opportunity_id','!=',False)]}" />

                </group>

                <group col="3" colspan="2">
                    <separator colspan="3" string="Contacts" />
                    <field name="partner_id"
                        on_change="onchange_partner_id(partner_id)" />
                    <button string="Create a Partner"
                        icon="terp-partner"
                        name="%(action_crm_phonecall2partner)d"
                        type="action"
                        attrs="{'invisible':[('partner_id','!=',False)]}" 
                        groups="base.group_partner_manager"/>
                    <newline/>
                    <field name="partner_address_id"
                        on_change="onchange_partner_address_id(partner_address_id)" />
                    <newline/>
                    <field name="partner_mobile" />
                </group>
                <group col="2" colspan="2">
                    <separator colspan="2" string="Categorization" />
                    <field name="categ_id" widget="selection"
                        domain="[('object_id.model', '=', 'crm.phonecall')]"/>
                    <field name="priority"/>
                    <field name="opportunity_id"/>
                </group>
                <separator string="Description" colspan="4" />
                <field name="description" nolabel="1" colspan="4" />
                <separator colspan="4" />
                <group col="8" colspan="4">
                    <field name="state" select="1" />
                    <button name="case_cancel" string="Cancel"
                        states="open,pending" type="object"
                        icon="gtk-cancel" />
                    <button name="case_open" string="Todo"
                        states="pending" type="object"
                        icon="gtk-go-forward" />
                    <button name="case_pending" string="Not Held"
                        states="open" type="object" icon="gtk-media-pause" />
                    <button name="case_close" string="Held"
                        states="open,pending" type="object"
                        icon="gtk-jump-to" />
                    <button name="case_reset" string="Reset to Todo"
                        states="cancel" type="object"
                        icon="gtk-convert" />
                </group>
            </form>
        </field>
    </record>

    <!--Logged Phonecalls Tree View -->

    <record model="ir.ui.view" id="crm_case_inbound_phone_tree_view">
        <field name="name">CRM - Logged Phone Calls Tree</field>
        <field name="model">crm.phonecall</field>
        <field name="type">tree</field>
        <field name="arch" type="xml">
            <tree string="Phone Calls" editable="top">
                <field name="date"/>
                <field name="name"/>
                <field name="partner_id"
                    on_change="onchange_partner_id(partner_id)"
                    string="Partner" />
                <field name="partner_address_id"
                        on_change="onchange_partner_address_id(partner_address_id)" />
                <field name="partner_phone"/>
                <field name="user_id"/>
                <field name="categ_id" widget="selection"
                    domain="[('object_id.model', '=', 'crm.phonecall')]"/>
                <field name="state" invisible="1"/>
                <field name="create_date" invisible="1"/>
                <button string="Schedule Other Call"
                    icon="terp-call-start"
                    name="%(phonecall_to_phonecall_act)d"
                    type="action"  />
                <button string="Meeting"
                     icon="gtk-redo"
                     name="action_make_meeting" type="object" />
            </tree>
        </field>
    </record>

<!-- Phonecalls Calendar View -->

    <record model="ir.ui.view" id="crm_case_phone_calendar_view">
        <field name="name">CRM - Phone Calls Calendar</field>
        <field name="model">crm.phonecall</field>
        <field name="type">calendar</field>
        <field name="priority" eval="2"/>
        <field name="arch" type="xml">
            <calendar string="Phone Calls" date_start="date" color="user_id" date_delay="duration">
                <field name="name"/>
                <field name="partner_id"/>
            </calendar>
        </field>
    </record>

<!-- Phonecalls Search View  -->

    <record id="view_crm_case_phonecalls_filter" model="ir.ui.view">
        <field name="name">CRM - Phone Calls Search</field>
        <field name="model">crm.phonecall</field>
        <field name="type">search</field>
        <field name="arch" type="xml">
            <search string="Search Phonecalls">
               <filter icon="terp-check" string="Current"
                   name="current"
                   domain="[('state','in', ('open','pending'))]"/>
               <filter icon="terp-go-today" string="Today"
                   domain="[('date','&lt;', time.strftime('%%Y-%%m-%%d 23:59:59')),
                    ('date','&gt;=',time.strftime('%%Y-%%m-%%d 00:00:00'))]"
                   name="today"
                   help="Todays's Phonecalls"
               />
               <filter icon="terp-go-week"
                   string="7 Days"
                   help="Phonecalls during last 7 days"
                   domain="[('date','&gt;=',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]"
               />

               <separator orientation="vertical"/>
               <field name="name"/>
               <field name="partner_id"/>
               <field name="user_id">
                   <filter icon="terp-personal-"
                       domain="[('user_id','=',False)]"
                       help="Unassigned Phonecalls" />
               </field>
               <field name="section_id"
                   select="1" widget="selection" string="Sales Team">
                   <filter icon="terp-personal+" groups="base.group_extended"
                       domain="['|', ('section_id', '=', context.get('section_id')), '|', ('section_id.user_id','=',uid), ('section_id.member_ids', 'in', [uid])]"
                       help="My Sales Team(s)" />
               </field>
               <newline/>
               <group expand="0" string="Group By..." colspan="4">
                   <filter string="Partner" icon="terp-partner" domain="[]"
                       context="{'group_by':'partner_id'}" />
                   <filter string="Responsible" icon="terp-personal"
                       domain="[]" context="{'group_by':'user_id'}" />
                   <separator orientation="vertical" />
                   <filter string="Creation" icon="terp-go-month" help="Creation Date"
                       domain="[]" context="{'group_by':'create_date'}" />
                   <filter string="Date" icon="terp-go-month" domain="[]"
                       context="{'group_by':'date'}" help="Date of Call" />
               </group>
           </search>
        </field>
    </record>

    </data>
</openerp>
