qdp (OpenERP) has proposed merging 
lp:~openerp-dev/openobject-addons/trunk-improve-addons27-event-ggh into 
lp:openobject-addons.

Requested reviews:
  OpenERP Core Team (openerp)

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-improve-addons27-event-ggh/+merge/139428
-- 
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-improve-addons27-event-ggh/+merge/139428
Your team OpenERP R&D Team is subscribed to branch 
lp:~openerp-dev/openobject-addons/trunk-improve-addons27-event-ggh.
=== modified file 'analytic_contract_hr_expense/analytic_contract_hr_expense.py'
--- analytic_contract_hr_expense/analytic_contract_hr_expense.py	2012-11-29 22:26:45 +0000
+++ analytic_contract_hr_expense/analytic_contract_hr_expense.py	2012-12-12 10:42:15 +0000
@@ -113,20 +113,20 @@
         return res
 
     def open_hr_expense(self, cr, uid, ids, context=None):
+        mod_obj = self.pool.get('ir.model.data')
+        act_obj = self.pool.get('ir.actions.act_window')
+
+        result = mod_obj.get_object_reference(cr, uid, 'hr_expense', 'expense_all')
+        id = result and result[1] or False
+        result = act_obj.read(cr, uid, [id], context=context)[0]
+
         line_ids = self.pool.get('hr.expense.line').search(cr,uid,[('analytic_account', 'in', ids)])
-        domain = [('line_ids', 'in', line_ids)]
+        result['domain'] = [('line_ids', 'in', line_ids)]
         names = [record.name for record in self.browse(cr, uid, ids, context=context)]
-        name = _('Expenses of %s') % ','.join(names)
-        return {
-            'type': 'ir.actions.act_window',
-            'name': name,
-            'view_type': 'form',
-            'view_mode': 'tree,form',
-            'context':{'analytic_account':ids[0]},
-            'domain' : domain,
-            'res_model': 'hr.expense.expense',
-            'nodestroy': True,
-        }
+        result['name'] = _('Expenses of %s') % ','.join(names)
+        result['context'] = {'analytic_account':ids[0]}
+        result['view_type'] = 'form'
+        return result
 
     def hr_to_invoice_expense(self, cr, uid, ids, context=None):
         domain = [('invoice_id','=',False),('to_invoice','!=',False), ('journal_id.type', '=', 'purchase'), ('account_id', 'in', ids)]

=== modified file 'crm/crm_lead_view.xml'
--- crm/crm_lead_view.xml	2012-12-08 16:24:56 +0000
+++ crm/crm_lead_view.xml	2012-12-12 10:42:15 +0000
@@ -177,14 +177,15 @@
                                 <field name="company_id"
                                     groups="base.group_multi_company"
                                     widget="selection" colspan="2"/>
-                                <field name="type_id"/>
-                                <field name="channel_id" widget="selection"/>
-                                <field name="referred"/>
                                 <field name="state" groups="base.group_no_one"/>
                             </group>
                             <group string="Mailings">
                                 <field name="opt_out"/>
                             </group>
+                            <group string="Misc">
+                                <field name="active"/>
+                                <field name="referred"/>
+                            </group>
                         </group>
                     </page>
                     </notebook>
@@ -463,11 +464,6 @@
                                     <field name="mobile"/>
                                     <field name="fax"/>
                                 </group>
-
-                                <group string="Categorization">
-                                    <field name="type_id" />
-                                    <field name="channel_id" widget="selection"/>
-                                </group>
                                 <group string="Mailings">
                                     <field name="opt_out"/>
                                 </group>

=== modified file 'event/event_view.xml'
--- event/event_view.xml	2012-12-07 13:08:08 +0000
+++ event/event_view.xml	2012-12-12 10:42:15 +0000
@@ -6,7 +6,7 @@
             <field name="res_model">event.registration</field>
             <field name="view_type">form</field>
             <field name="name">Registrations</field>
-            <field name="view_mode">calendar,tree,form,graph</field>
+            <field name="view_mode">tree,form,calendar,graph</field>
             <field name="context">{'search_default_event_id': active_id, 'default_event_id': active_id}</field>
         </record>
 
@@ -100,19 +100,13 @@
                             </group>
                         </group>
                         <notebook>
-                            <page string="Email Configuration" groups="base.group_no_one">
-                                <group>
+                            <page string="Event Details" groups="base.group_no_one">
+                                <group colspan="4">
                                     <field name="reply_to"/>
-                                    <group>
-                                        <field name="email_registration_id"/>
-                                    </group>
-                                    <group>
-                                        <field name="email_confirmation_id"/>
-                                    </group>
+                                    <field name="email_registration_id"/>
+                                    <field name="email_confirmation_id"/>
                                 </group>
-                            </page>
-                            <page string="Event Description">
-                                <field name="note" colspan="4" nolabel="1"/>
+                                <field name="note" nolabel="1" placeholder="Event Description..."/>
                             </page>
                             <page string="Registrations">
                                 <group>

=== modified file 'event_sale/event_sale.py'
--- event_sale/event_sale.py	2012-12-08 10:33:38 +0000
+++ event_sale/event_sale.py	2012-12-12 10:42:15 +0000
@@ -71,6 +71,8 @@
         '''
         create registration with sale order
         '''
+        if context is None:
+            context = {}
         registration_obj = self.pool.get('event.registration')
         sale_obj = self.pool.get('sale.order')
         for order_line in self.browse(cr, uid, ids, context=context):
@@ -84,7 +86,24 @@
                     'origin': order_line.order_id.name,
                     'event_id': order_line.event_id.id,
                 }
+                message = _("The registration has been <b>created</b> for event <i>%s</i> from the Sale Order %s. ") % (order_line.event_id.name, order_line.order_id.name)
+                context.update({'sale_event': True, 'message': message })
                 registration_id = registration_obj.create(cr, uid, dic, context=context)
-                message = _("The registration %s has been created from the Sale Order %s.") % (registration_id, order_line.order_id.name)
-                registration_obj.message_post(cr, uid, [registration_id], body=message, context=context)
         return super(sale_order_line, self).button_confirm(cr, uid, ids, context=context)
+
+sale_order_line()
+
+class event_registration(osv.osv):
+    _inherit = 'event.registration'
+
+    # ----------------------------------------
+    # OpenChatter methods and notifications
+    # ----------------------------------------
+
+    def create_send_note(self, cr, uid, ids, context=None):
+        if context.get("sale_event") and context.get("message"):
+            message = context.get("message")
+            self.message_post(cr, uid, ids, body=message, context=context)
+        else:
+            super(event_registration, self).create_send_note(cr, uid, ids, context)
+        return True

=== modified file 'hr_expense/hr_expense_view.xml'
--- hr_expense/hr_expense_view.xml	2012-11-29 22:26:45 +0000
+++ hr_expense/hr_expense_view.xml	2012-12-12 10:42:15 +0000
@@ -58,15 +58,16 @@
         <record id="view_expenses_form" model="ir.ui.view">
             <field name="name">hr.expense.form</field>
             <field name="model">hr.expense.expense</field>
+            <field eval="25" name="priority"/>
             <field name="arch" type="xml">
                 <form string="Expenses Sheet" version="7.0">
                 <header>
                     <button name="confirm" states="draft" string="Submit to Manager" type="workflow" class="oe_highlight"/>
                     <button name="validate" states="confirm" string="Approve" type="workflow" groups="base.group_hr_user" class="oe_highlight"/>
+                    <button name="refuse" states="confirm,accepted" string="Refuse" type="workflow" groups="base.group_hr_user" />
                     <button name="draft" states="confirm,cancelled" string="Set to Draft" type="workflow" groups="base.group_hr_user" />
                     <button name="done" states="accepted" string="Generate Accounting Entries" type="workflow" groups="account.group_account_invoice" class="oe_highlight"/>
                     <button name="action_view_receipt" states="done" string="Open Receipt" type="object"/>
-                    <button name="refuse" states="confirm,accepted" string="Refuse" type="workflow" groups="base.group_hr_user" />
                     <field name="state" widget="statusbar" statusbar_visible="draft,confirm,accepted,done" statusbar_colors='{"confirm":"blue","cancelled":"red"}'/>
                 </header>
                 <sheet>

=== modified file 'hr_timesheet/__openerp__.py'
--- hr_timesheet/__openerp__.py	2012-11-29 22:26:45 +0000
+++ hr_timesheet/__openerp__.py	2012-12-12 10:42:15 +0000
@@ -21,7 +21,7 @@
 
 
 {
-    'name': 'Timesheets',
+    'name': 'Time Tracking',
     'version': '1.0',
     'category': 'Human Resources',
     'sequence': 23,

=== modified file 'mail/data/mail_demo.xml'
--- mail/data/mail_demo.xml	2012-11-29 22:26:45 +0000
+++ mail/data/mail_demo.xml	2012-12-12 10:42:15 +0000
@@ -332,7 +332,7 @@
         </record>
         <record id="msg_discus1_1" model="mail.message">
             <field name="subject">RE: Feedback about our On Site Assistance</field>
-            <field name="body"><![CDATA[<p>Hello Administrator,</p><p>Glad to hearing from you! Everything is perfect, thanks for asking. Concerning the order of 2 IP phones, I ordered them for new employees. We are satisfied with the products of <i>YourCompany</i>, and we plan to fit out each new employee with one of your phone this year.<br />Regards,</p>]]></field>
+            <field name="body"><![CDATA[<p>Hello Administrator,</p><p>Glad to hear from you! Everything is perfect, thanks for asking. Concerning the order of 2 IP phones, I ordered them for new employees. We are satisfied with the products of <i>YourCompany</i>, and we plan to fit out each new employee with one of your phone this year.<br />Regards,</p>]]></field>
             <field name="parent_id" ref="msg_discus1"/>
             <field name="type">comment</field>
             <field name="subtype_id" ref="mt_comment"/>

=== modified file 'mail/doc/mail_message.rst'
--- mail/doc/mail_message.rst	2012-12-04 10:31:46 +0000
+++ mail/doc/mail_message.rst	2012-12-12 10:42:15 +0000
@@ -6,101 +6,23 @@
 Models
 +++++++
 
-``mail.message`` is a class for holding the main attributes of a message object
-(notification for system message, reciving email message or sent messages). It 
-could be reused as parent model for any database model, wall thread view, or 
-wizard screen that needs to hold a kind of message.
+``mail.message.common`` is an abstract class for holding the main attributes of a 
+message object. It could be reused as parent model for any database model 
+or wizard screen that needs to hold a kind of message.
 
 All internal logic should be in a database-based model while this model 
 holds the basics of a message. For example, a wizard for writing emails 
-should inherit from this class.
+should inherit from this class and not from mail.message.
 
 
 .. versionchanged:: 7.0
 
-ClientAction (ir.actions.client)
-+++++++
-     <record id="action_mail_inbox_feeds" model="ir.actions.client">
-         <field name="name">Inbox</field>
-         <field name="tag">mail.wall</field>
-         <field name="res_model">mail.message</field>
-         <field name="context"></field>
-         <field name="params"></field>
-         <field name="help" type="html"></field>
-     </record>
-
- - ``tag`` : 'mail.wall', 'mail_thread' or 'mail.widget'
-      'mail.wall' to have a display like the mail wall with threads, title, search view 
-         (default value like a wall)
-      'mail_thread' widget for field on standard view. (default value like a thread for 
-         record, view on flat mode, no reply, no read/unread)
-      'mail.widget' it's the root thread, used by 'mail.wall' and 'mail_thread'
- - ``help`` : Text HTML to display if there are no message
- - ``context`` : insert 'default_model' and 'default_res_id'
- - ``params`` : options for the widget
-      - ``domain`` : choose the domain of the messages
-      - ``truncate_limit`` : {Number} number of character to display before having a "show more" 
-         link; note that the text will not be truncated if it does not have 110% of the parameter
-      - ``show_record_name`` : {Boolean} display the name and link of the related record
-      - ``show_reply_button`` : {Boolean} display the reply button
-      - ``show_read_unread_button`` : {Boolean} display the read/unread button
-      - ``display_indented_thread`` : {int [0,1]} number thread level to indented threads.
-      - ``show_compose_message`` : display the composer on top thread
-      - ``show_compact_message`` : display the compact message on the thread when the user clic 
-         on this compact mode, the composer is open
-      - ``message_ids`` : {Array | False} List of ids to fetch by the root thread. If no value,
-         the root search the message by the domain
-      - ``compose_placeholder`` : Message to display on the textareaboxes.
-      - ``show_link`` : Display partner (authors, followers...) on link or not
-      - ``compose_as_todo`` : The root composer mark automatically the message as todo
-
-Fields
-+++++++
-
- - ``type`` : usually 'email', 'comment', 'notification'.
-   Message type: email for external email message recieve, notification for system
-   message, comment for other messages such as user replies.
- - ``subtype_id`` :
-   Subtype of the notification for system message. The users can followe a document
-   and choose the subtype of this document (eg: Create, Comment, Done).
-   You can defined new subtypes and choose his name, by agreement the id begin by "mt_" on the model
-   "mail.message.subtype".
- - ``partner_ids`` :
-   List of recipients, the recipients have this message in their personal mailboxe.
- - ``notified_partner_ids`` :
-   Partners that have a notification pushing this message in their mailboxes. Usualy 
-   it's an automatic system message for a model followed by users.
- - ``notification_ids`` :
-   Technical field holding the message notifications. Use notified_partner_ids to access 
-   notified partners.
- - ``attachment_ids`` :
-   List of attachments
- - ``parent_id`` :
-   It's the initial thread message. It's use for group message by thread in mailboxes.
- - ``child_ids`` :
-   List of child message linked to the initial thread message.
- - ``model`` :
-   Related Document Moded. It's use for group message by document.
- - ``res_id`` :
-   Related Document ID. It's use for group message by document.
- - ``record_name`` :
-   Functionnal field use to get the name of related document.
- - ``vote_user_ids`` :
-   List of partner that vote/like this message.
- - ``to_read`` :
-   Functional field to search for messages the current user has to read. The messages as
-   treat like a need action. When the user recive a message (to_read = True) this message
-   or action must be performed and mark done (to_read = False)
- - ``favorite_user_ids`` :
-   Users that set this message in their favorites/todo list.
-
-Methods
-+++++++
-
- - ``message_read`` :
-   Value: ids, domain, message_unload_ids, thread_level, context, parent_id, limit
-   Return: List of dictinary of message. All message is sent with their parented messages and
-   sort by id. The messages that the user can read but not in his search, are group in
-   expandable messages. The expandable messages contain the domain to expand.
- - ``check_access_rule`` :
-   Overwrite the initial message for this model.
\ No newline at end of file
+ - ``subtype`` is renamed to ``content_subtype``: usually 'html' or 'plain'.
+   This field is used to select plain-text or rich-text contents accordingly.
+ - ``subtype`` is moved to mail.message model. The purpose is to be able to 
+   distinguish message of the same type, such as notifications about creating
+   or cancelling a record. For example, it is used to add the possibility 
+   to hide notifications in the wall.
+
+Those changes aim at being able to distinguish the message content to the
+message itself.

=== modified file 'mail/mail_mail_view.xml'
--- mail/mail_mail_view.xml	2012-09-04 09:28:20 +0000
+++ mail/mail_mail_view.xml	2012-12-12 10:42:15 +0000
@@ -6,6 +6,11 @@
             <field name="model">mail.mail</field>
             <field name="arch" type="xml">
                 <form string="Email message" version="7.0">
+                    <header>
+                        <button name="send" string="Send Now" type="object" states='outgoing'/>
+                        <button name="mark_outgoing" string="Retry" type="object" states='exception,cancel'/>
+                        <button name="cancel" string="Cancel" type="object" states='outgoing'/>
+                    </header>
                     <sheet>
                         <label for="subject" class="oe_edit_only"/>
                         <h2><field name="subject"/></h2>

=== modified file 'mail/static/src/js/mail.js'
--- mail/static/src/js/mail.js	2012-12-11 15:22:19 +0000
+++ mail/static/src/js/mail.js	2012-12-12 10:42:15 +0000
@@ -1411,10 +1411,9 @@
          *      when the user clic on this compact mode, the composer is open
          *...  @param {Array} [message_ids] List of ids to fetch by the root thread.
          *      When you use this option, the domain is not used for the fetch root.
-         *...  @param {String} [help] Message to display when there are no message.
-         *...  @param {String} [compose_placeholder] Message to display on the textareaboxes.
-         *...  @param {Boolean} [show_link_partner] Display partner (authors, followers...) on link or not
-         *...  @param {Boolean} [compose_as_todo] The root composer mark automatically the message as todo
+         *     @param {String} [no_message] Message to display when there are no message
+         *     @param {Boolean} [show_link_partner] Display partner (authors, followers...) on link or not
+         *     @param {Boolean} [compose_as_todo] The root composer mark automatically the message as todo
          */
         init: function (parent, action) {
             this._super(parent, action);

=== modified file 'marketing/__openerp__.py'
--- marketing/__openerp__.py	2012-11-29 22:26:45 +0000
+++ marketing/__openerp__.py	2012-12-12 10:42:15 +0000
@@ -23,7 +23,7 @@
 {
     'name': 'Marketing',
     'version': '1.1',
-    'depends': ['base', 'base_setup'],
+    'depends': ['base', 'base_setup', 'crm'],
     'author': 'OpenERP SA',
     'category': 'Hidden/Dependency',
     'description': """

=== modified file 'marketing/marketing_view.xml'
--- marketing/marketing_view.xml	2012-11-29 22:26:45 +0000
+++ marketing/marketing_view.xml	2012-12-12 10:42:15 +0000
@@ -7,6 +7,32 @@
             id="base.marketing_menu"
             groups="marketing.group_marketing_user,marketing.group_marketing_manager"
             sequence="85"/>
-
+         <record id="view_crm_lead_form" model="ir.ui.view">
+            <field name="name">crm.lead.inherit.form</field>
+            <field name="model">crm.lead</field>
+            <field name="inherit_id" ref="crm.crm_case_form_view_leads"/>
+            <field name="arch" type="xml">
+                <xpath expr="//group[@string='Categorization']" position="attributes">
+                    <attribute name="string">Marketing</attribute>
+                </xpath>
+                <xpath expr="//field[@name='company_id']" position="after">
+                    <field name="type_id"/>
+                    <field name="channel_id" widget="selection"/>
+                </xpath>
+            </field>
+        </record>
+        <record id="view_crm_opportunity_form" model="ir.ui.view">
+            <field name="name">crm.lead.inherit.form</field>
+            <field name="model">crm.lead</field>
+            <field name="inherit_id" ref="crm.crm_case_form_view_oppor"/>
+            <field name="arch" type="xml">
+                <xpath expr="//group[@string='Mailings']" position="before">
+                    <group string="Marketing">
+                        <field name="type_id" />
+                        <field name="channel_id" widget="selection"/>
+                    </group>
+                </xpath>
+            </field>
+        </record>
     </data>
 </openerp>

=== modified file 'mrp/mrp.py'
--- mrp/mrp.py	2012-12-08 16:27:24 +0000
+++ mrp/mrp.py	2012-12-12 10:42:15 +0000
@@ -1084,7 +1084,7 @@
         'cycle': fields.float('Number of Cycles', digits=(16,2)),
         'hour': fields.float('Number of Hours', digits=(16,2)),
         'sequence': fields.integer('Sequence', required=True, help="Gives the sequence order when displaying a list of work orders."),
-        'production_id': fields.many2one('mrp.production', 'Production Order', select=True, ondelete='cascade', required=True),
+        'production_id': fields.many2one('mrp.production', 'Manufacturing Order', select=True, ondelete='cascade', required=True),
     }
     _defaults = {
         'sequence': lambda *a: 1,

=== modified file 'mrp/mrp_view.xml'
--- mrp/mrp_view.xml	2012-12-09 10:55:27 +0000
+++ mrp/mrp_view.xml	2012-12-12 10:42:15 +0000
@@ -784,8 +784,8 @@
                             <group>
                                 <group>
                                     <field name="priority"/>
-                                    <field name="date_start"/>
-                                    <field name="date_finished"/>
+                                    <field name="date_start" invisible="1"/>
+                                    <field name="date_finished" invisible="1"/>
                                 </group>
                                 <group>
                                     <field name="company_id" groups="base.group_multi_company" widget="selection"/>

=== modified file 'mrp_operations/mrp_operations.py'
--- mrp_operations/mrp_operations.py	2012-11-29 22:26:45 +0000
+++ mrp_operations/mrp_operations.py	2012-12-12 10:42:15 +0000
@@ -70,6 +70,30 @@
                 else:
                     res[op.id] = op.date_planned
         return res
+    
+    def onchange_get_date_end(self, cr, uid, ids, workcenter_id, date_planned, cycle, hour, context=None):
+        work_ids = self.search(cr,uid,[('workcenter_id','=',workcenter_id)],context=context)
+        ops = self.browse(cr, uid, work_ids, context=context)
+        date_and_hours_by_cal = [(op.date_planned, op.hour, op.workcenter_id.calendar_id.id) for op in ops if op.date_planned]
+        intervals = self.pool.get('resource.calendar').interval_get_multi(cr, uid, date_and_hours_by_cal)
+        res = False
+        for op in ops:
+            if date_planned:
+                i = intervals.get((op.date_planned,op.hour, op.workcenter_id.calendar_id.id))
+                if i:
+                    res= i[-1][1].strftime('%Y-%m-%d %H:%M:%S')
+                else:
+                    res = op.date_planned
+        return {'value':{'date_planned_end': res}}
+
+    def onchange_production_id(self, cr, uid, ids, production_id, context=None):
+        products = self.pool.get('mrp.production').browse(cr, uid, production_id, context=None)
+        result = {
+            'product': products.product_id.id,
+            'qty': products.product_qty,
+            'uom': products.product_uom.id,
+        }
+        return {'value': result}
 
     _inherit = 'mrp.production.workcenter.line'
     _order = "sequence, date_planned"
@@ -98,7 +122,8 @@
 
     _defaults = {
         'state': lambda *a: 'draft',
-        'delay': lambda *a: 0.0
+        'delay': lambda *a: 0.0,
+        'production_state': 'draft'
     }
 
     def modify_production_order_state(self, cr, uid, ids, action):

=== modified file 'mrp_operations/mrp_operations_view.xml'
--- mrp_operations/mrp_operations_view.xml	2012-11-29 22:26:45 +0000
+++ mrp_operations/mrp_operations_view.xml	2012-12-12 10:42:15 +0000
@@ -74,9 +74,9 @@
             </header>
             <sheet string="Work Orders">
                 <group col="4">
-                    <field colspan="4" name="name"/>
-                    <field name="workcenter_id"/>
-                    <field name="production_id"/>
+                    <field colspan="2" name="name"/>
+                    <field name="workcenter_id" on_change="onchange_get_date_end(date_planned, cycle, hour, context)"/>
+                    <field name="production_id" on_change="onchange_production_id(production_id)"/>
                     <field name="production_state"/>
                     <field name="sequence"/>
                 </group>
@@ -84,7 +84,7 @@
                 <page string="Information">
                     <group>
                         <group string="Planned Date">
-                            <field name="date_planned"/>
+                            <field name="date_planned" on_change="onchange_get_date_end(workcenter_id, date_planned, cycle, hour, context)"/>
                             <field name="date_planned_end"/>
                         </group>
 
@@ -92,7 +92,7 @@
                             <field name="cycle"/>
                             <field name="hour" widget="float_time"/>
                         </group>
-                        <group string="Real" >
+                        <group string="Actual Production Date" >
                             <field name="date_start" readonly="1"/>
                             <field name="date_finished" readonly="1"/>
                             <field name="delay" widget="float_time"/>

=== modified file 'purchase/res_config.py'
--- purchase/res_config.py	2012-12-08 16:36:13 +0000
+++ purchase/res_config.py	2012-12-12 10:42:15 +0000
@@ -66,7 +66,9 @@
         'default_invoice_method': 'manual',
     }
 
-
+    def onchange_purchase_analytic_plans(self, cr, uid, ids, module_purchase_analytic_plans, context=None):
+        """ change group_analytic_account_for_purchases following module_purchase_analytic_plans """
+        return {'value': {'group_analytic_account_for_purchases': module_purchase_analytic_plans}}
 
 
 class account_config_settings(osv.osv_memory):

=== modified file 'purchase/res_config_view.xml'
--- purchase/res_config_view.xml	2012-11-29 22:26:45 +0000
+++ purchase/res_config_view.xml	2012-12-12 10:42:15 +0000
@@ -67,7 +67,7 @@
                                 <label for="module_purchase_requisition"/>
                             </div>
                             <div>
-                                <field name="module_purchase_analytic_plans" class="oe_inline"/>
+                                <field name="module_purchase_analytic_plans" class="oe_inline" on_change="onchange_purchase_analytic_plans(module_purchase_analytic_plans)"/>
                                 <label for="module_purchase_analytic_plans"/>
                             </div>
                             <div>

=== modified file 'sale/wizard/sale_make_invoice.py'
--- sale/wizard/sale_make_invoice.py	2012-11-29 22:26:45 +0000
+++ sale/wizard/sale_make_invoice.py	2012-12-12 10:42:15 +0000
@@ -30,7 +30,8 @@
         'invoice_date': fields.date('Invoice Date'),
     }
     _defaults = {
-        'grouped': False
+        'grouped': False,
+        'invoice_date': fields.date.context_today
     }
 
     def view_init(self, cr, uid, fields_list, context=None):

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : openerp-dev-gtk@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to