Divyesh Makwana(OpenERP) has proposed merging 
lp:~openerp-dev/openobject-addons/trunk-first_10_clicks_crm-mdi into 
lp:openobject-addons.

Requested reviews:
  Purnendu Singh (OpenERP) (psi-tinyerp)

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-first_10_clicks_crm-mdi/+merge/112715

Hello Sir,

In Order to improve user experience, i have improved the following things:

1. Improved the menu-tips.

2. Improved some usability related issues.

3. Restricted some fields to appropriate groups.

Thanks,
Divyesh
-- 
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-first_10_clicks_crm-mdi/+merge/112715
Your team OpenERP R&D Team is subscribed to branch 
lp:~openerp-dev/openobject-addons/trunk-first_10_clicks_crm-mdi.
=== modified file 'base_calendar/base_calendar.py'
--- base_calendar/base_calendar.py	2012-07-14 15:33:50 +0000
+++ base_calendar/base_calendar.py	2012-07-18 05:49:21 +0000
@@ -941,16 +941,19 @@
             duration = 1.00
             value['duration'] = duration
 
+        start = datetime.strptime(start_date, "%Y-%m-%d %H:%M:%S")
         if allday: # For all day event
-            value = {'duration': 24.0}
             duration = 24.0
-            if start_date:
-                start = datetime.strptime(start_date, "%Y-%m-%d %H:%M:%S")
-                start_date = datetime.strftime(datetime(start.year, start.month, start.day, 0,0,0), "%Y-%m-%d %H:%M:%S")
-                value['date'] = start_date
-
-
-        start = datetime.strptime(start_date, "%Y-%m-%d %H:%M:%S")
+            value['duration'] = duration
+            # change start_date's time to 00:00:00 in the user's timezone
+            user = self.pool.get('res.users').browse(cr, uid, uid)
+            tz = pytz.timezone(user.context_tz) if user.context_tz else pytz.utc
+            start = pytz.utc.localize(start).astimezone(tz)     # convert start in user's timezone
+            start = start.replace(hour=0, minute=0, second=0)   # change start's time to 00:00:00
+            start = start.astimezone(pytz.utc)                  # convert start back to utc
+            start_date = start.strftime("%Y-%m-%d %H:%M:%S")
+            value['date'] = start_date
+
         if end_date and not duration:
             end = datetime.strptime(end_date, "%Y-%m-%d %H:%M:%S")
             diff = end - start
@@ -1025,8 +1028,8 @@
         'id': fields.integer('ID', readonly=True),
         'sequence': fields.integer('Sequence'),
         'name': fields.char('Description', size=64, required=False, states={'done': [('readonly', True)]}),
-        'date': fields.datetime('Date', states={'done': [('readonly', True)]}),
-        'date_deadline': fields.datetime('Deadline', states={'done': [('readonly', True)]}),
+        'date': fields.datetime('Date', required=True, states={'done': [('readonly', True)]}),
+        'date_deadline': fields.datetime('Deadline', required=True, states={'done': [('readonly', True)]}),
         'create_date': fields.datetime('Created', readonly=True),
         'duration': fields.float('Duration', states={'done': [('readonly', True)]}),
         'description': fields.text('Description', states={'done': [('readonly', True)]}),

=== modified file 'base_calendar/base_calendar_view.xml'
--- base_calendar/base_calendar_view.xml	2012-07-02 16:37:25 +0000
+++ base_calendar/base_calendar_view.xml	2012-07-18 05:49:21 +0000
@@ -136,7 +136,7 @@
 
         <!-- Calenadar's menu -->
         <menuitem id="base.menu_calendar_configuration" name="Calendar"
-            parent="base.menu_base_config" sequence="50" groups="base.group_sale_manager" />
+            parent="base.menu_base_config" sequence="50" groups="base.group_no_one"/>
 
         <!-- Invitation menu -->
 

=== modified file 'crm/crm_lead_menu.xml'
--- crm/crm_lead_menu.xml	2012-06-22 05:52:30 +0000
+++ crm/crm_lead_menu.xml	2012-07-18 05:49:21 +0000
@@ -12,17 +12,11 @@
         <field name="context">{'default_type':'lead', 'stage_type':'lead'}</field>
         <field name="help">
             &lt;img src="http://www.thaicrmsoftware.com/wp-content/uploads/2011/11/lead-conversion.jpg"; align="right" style="padding: 6px" width="306" height="223"&gt;
-            &lt;h2&gt;Create your first OpenERP Lead &lt;/h2&gt;
-            &lt;p&gt;
-            Leads allow you to manage and keep track of all initial contacts with a prospect or partner showing interest in your products or services.
+            &lt;h2&gt;Click here to create a Lead. &lt;/h2&gt;
             &lt;p&gt;
             A lead is usually the first step in your sales cycle.
             &lt;p&gt;
             Once qualified, a lead may be converted into a business opportunity, while creating the related partner for further detailed tracking of any linked activities.
-            &lt;p&gt;
-            You can import a database of prospects, keep track of your business cards or integrate your website's contact form with the OpenERP Leads.
-            &lt;p&gt;
-            Leads can be connected to the email gateway: new emails may create leads, each of them automatically gets the history of the conversation with the prospect.
         </field>
     </record>
 

=== modified file 'crm/crm_lead_view.xml'
--- crm/crm_lead_view.xml	2012-07-16 21:18:52 +0000
+++ crm/crm_lead_view.xml	2012-07-18 05:49:21 +0000
@@ -67,7 +67,7 @@
             <field name="help">Add specific stages to leads and opportunities allowing your sales to better organise their sales pipeline. Stages will allow them to easily track how a specific lead or opportunity is positioned in the sales cycle.</field>
         </record>
 
-        <menuitem action="crm_lead_stage_act" id="menu_crm_lead_stage_act" name="Stages" sequence="0" parent="base.menu_crm_config_lead" />
+        <menuitem action="crm_lead_stage_act" id="menu_crm_lead_stage_act" name="Stages" sequence="0" parent="base.menu_crm_config_lead" groups="base.group_no_one"/>
 
         <!--
             LEADS/OPPORTUNITIES CATEGORIES
@@ -147,7 +147,7 @@
                     <group>
                         <group>
                             <field name="user_id" />
-                            <field name="section_id" widget="selection" />
+                            <field name="section_id"/>
                             <field name="type" invisible="1"/>
                         </group>
                         <group>
@@ -236,6 +236,7 @@
                     <field name="phone"/>
                     <field name="stage_id"/>
                     <field name="categ_id" invisible="1"/>
+                    <field name="user_id" invisible="1"/>
                     <field name="section_id" invisible="context.get('invisible_section', True)" />
                     <field name="state" groups="base.group_no_one"/>
                     <field name="type_id" invisible="1"/>
@@ -433,9 +434,9 @@
             <form string="Opportunities" version="7.0">
                 <header>
                     <button name="stage_previous" string="Previous" type="object"
-                            states="open" icon="gtk-go-back" context="{'stage_type': 'opportunity'}"/>
+                            states="open" context="{'stage_type': 'opportunity'}"/>
                     <button name="stage_next" string="Next" type="object"  
-                            states="open" icon="gtk-go-forward" context="{'stage_type': 'opportunity'}"/>
+                            states="open" context="{'stage_type': 'opportunity'}"/>
                     <button name="case_mark_won" string="Mark Won" type="object"
                             states="open" class="oe_highlight"/>
                     <button name="case_mark_won" string="Mark Won" type="object"
@@ -485,7 +486,7 @@
                         <group>
                             <label for="title_action"/>
                             <div>
-                                <field name="date_action" nolabel="1"/> -
+                                <field name="date_action" nolabel="1"/> <label string="-" attrs="{'invisible': ['|', ('date_action', '=', False), ('title_action', '=', False)]}"/>
                                 <field name="title_action" class="oe_inline" nolabel="1" placeholder="Call for proposal"/>
                             </div>
                             <field name="date_deadline"/>

=== modified file 'crm/crm_meeting_demo.xml'
--- crm/crm_meeting_demo.xml	2012-07-14 15:33:50 +0000
+++ crm/crm_meeting_demo.xml	2012-07-18 05:49:21 +0000
@@ -23,10 +23,10 @@
             <field eval="7.0" name="duration"/>
             <field name="user_id" ref="base.user_root"/>
             <field eval="&quot;draft&quot;" name="state"/>
-            <field eval="time.strftime('%Y-%m-05 12:01:01')" name="date"/>
+            <field eval="time.strftime('%Y-%m-05 10:01:01')" name="date"/>
             <field name="categ_id" ref="crm.categ_meet3"/>
             <field eval="&quot;Initial discussion&quot;" name="name"/>
-            <field eval="time.strftime('%Y-%m-05 19:01:01')" name="date_deadline"/>
+            <field eval="time.strftime('%Y-%m-05 17:01:01')" name="date_deadline"/>
             <field eval="&quot;[email protected]&quot;" name="email_from"/>
         </record>
     
@@ -36,10 +36,10 @@
             <field name="user_id" ref="base.user_root"/>
             <field eval="&quot;Meeting to discuss project plan and hash out the details of implementation  &quot;" name="description"/>
             <field eval="&quot;done&quot;" name="state"/>
-            <field eval="time.strftime('%Y-%m-12 15:55:05')" name="date"/>
+            <field eval="time.strftime('%Y-%m-12 10:55:05')" name="date"/>
             <field name="categ_id" ref="crm.categ_meet1"/>
             <field eval="&quot;Discuss pricing&quot;" name="name"/>
-            <field eval="time.strftime('%Y-%m-12 18:55:05')" name="date_deadline"/>
+            <field eval="time.strftime('%Y-%m-12 13:55:05')" name="date_deadline"/>
         </record>
 
         <record id="crm_case_reviewneeds0" model="crm.meeting">

=== modified file 'crm/crm_phonecall.py'
--- crm/crm_phonecall.py	2012-07-06 12:29:59 +0000
+++ crm/crm_phonecall.py	2012-07-18 05:49:21 +0000
@@ -41,7 +41,7 @@
         'section_id': fields.many2one('crm.case.section', 'Sales Team', \
                         select=True, help='Sales team to which Case belongs to.'),
         'user_id': fields.many2one('res.users', 'Responsible'),
-        'partner_id': fields.many2one('res.partner', 'Partner'),
+        'partner_id': fields.many2one('res.partner', 'Contact'),
         'company_id': fields.many2one('res.company', 'Company'),
         'description': fields.text('Description'),
         'state': fields.selection([ ('draft', 'Draft'),

=== modified file 'crm/crm_phonecall_menu.xml'
--- crm/crm_phonecall_menu.xml	2012-06-15 05:08:45 +0000
+++ crm/crm_phonecall_menu.xml	2012-07-18 05:49:21 +0000
@@ -68,7 +68,13 @@
         <field name="domain">[]</field>
         <field name="context">{}</field>
         <field name="search_view_id" ref="crm.view_crm_case_phonecalls_filter"/>
-        <field name="help">This tool allows you to log your inbound calls on the fly. Each call you get will appear on the partner form to trace every contact you have with a partner. From the phone call form, you can trigger a request for another call, a meeting or an opportunity.</field>
+        <field name="help">
+        Click on "Create" to log a new call.
+        &lt;p&gt;
+        This tool allows you to log your calls on the fly.
+        &lt;p&gt;
+        From this feature, you can trigger a request for another call, a meeting or an opportunity.
+        </field>
 
     </record>
 
@@ -106,7 +112,13 @@
         <field name="domain">[('state','!=','done')]</field>
         <field name="context" eval="'{\'default_state\':\'open\'}'"/>
         <field name="search_view_id" ref="crm.view_crm_case_phonecalls_filter"/>
-        <field name="help">Scheduled calls list all the calls to be done by your sales team. A salesman can record the information about the call in the form view. This information will be stored in the partner form to trace every contact you have with a customer. You can also import a .CSV file with a list of calls to be done by your sales team.</field>
+        <field name="help">
+        Click here to schedule a new call.
+        &lt;p&gt;
+        Scheduled calls list all the calls to be done by your sales team.
+        &lt;p&gt;
+        This information will be stored in the partner form to trace every contact you have with a customer.
+        </field>
     </record>
 
     <record model="ir.actions.act_window.view" id="action_crm_tag_tree_phone_outgoing0">

=== modified file 'crm/crm_phonecall_view.xml'
--- crm/crm_phonecall_view.xml	2012-07-13 09:53:41 +0000
+++ crm/crm_phonecall_view.xml	2012-07-18 05:49:21 +0000
@@ -135,7 +135,7 @@
                     <field name="user_id" />
                     <field name="duration" widget="float_time" />
                     <field name="section_id" colspan="1" widget="selection" />
-                    <field name="partner_id" on_change="onchange_partner_id(partner_id)" />
+                    <field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
                     <field name="categ_id" widget="selection"
                         domain="[('object_id.model', '=', 'crm.phonecall')]"/>
                     <field name="partner_mobile" />
@@ -163,8 +163,7 @@
                 <field name="date"/>
                 <field name="name"/>
                 <field name="partner_id"
-                    on_change="onchange_partner_id(partner_id)"
-                    string="Partner" />
+                    on_change="onchange_partner_id(partner_id)"/>
                 <field name="partner_phone"
                     invisible="1"/>
                 <field name="user_id"/>

=== modified file 'crm/res_partner_view.xml'
--- crm/res_partner_view.xml	2012-07-14 16:04:03 +0000
+++ crm/res_partner_view.xml	2012-07-18 05:49:21 +0000
@@ -11,7 +11,7 @@
                 <field eval="18" name="priority"/>
                 <field name="arch" type="xml">
                     <field name="user_id" position="after">
-                        <field name="section_id" completion="1" widget="selection"/>
+                        <field name="section_id" completion="1"/>
                     </field>
                 </field>
         </record>
@@ -24,7 +24,7 @@
                 <field eval="18" name="priority"/>
                 <field name="arch" type="xml">
                     <field name="phone" position="after">
-                        <field name="section_id" completion="1" widget="selection"/>
+                        <field name="section_id" completion="1" invisible="context.get('invisible_section', True)"/>
                     </field>
                 </field>
         </record>
@@ -37,11 +37,16 @@
                 <field eval="18" name="priority"/>
                 <field name="arch" type="xml">
                     <field name="category_id" position="after">
-                        <field name="section_id" completion="1" widget="selection"/>
+                        <field name="section_id" completion="1" widget="selection" context="{'invisible_section': False}"/>
                     </field>
                     <xpath expr="//field[@name='user_id']" position="after">
                         <field name="country_id"/>
                     </xpath>
+                    <xpath expr="//group[@string='Group By...']" position="after">
+                         <group string="Display">
+                           <filter string="Show Sales Team" icon="terp-personal+" context="{'invisible_section': False}" help="Show Sales Team"/>
+                         </group>
+                    </xpath>
                 </field>
         </record>
 

=== modified file 'purchase/partner_view.xml'
--- purchase/partner_view.xml	2012-06-18 16:00:57 +0000
+++ purchase/partner_view.xml	2012-07-18 05:49:21 +0000
@@ -11,6 +11,9 @@
                 <field name="property_product_pricelist" position="after">
                     <field name="property_product_pricelist_purchase" />
                 </field>
+                <field name="supplier" position="replace">
+                    <field name="supplier"/>
+                </field>
             </field>
         </record>
 

_______________________________________________
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

Reply via email to