[MERGE] Forward-port of latest 7.0 bugfixes, up to rev. 9085

revision-id: odo@openerp.com-20130429105458-r89mnkx8okdxsdld

bzr revid: odo@openerp.com-20130429151410-54y94063gijyk16o
This commit is contained in:
Olivier Dony 2013-04-29 17:14:10 +02:00
commit 9c08e12962
55 changed files with 576 additions and 1045 deletions

View File

@ -1670,7 +1670,7 @@ class account_move_reconcile(osv.osv):
elif reconcile.line_partial_ids: elif reconcile.line_partial_ids:
first_partner = reconcile.line_partial_ids[0].partner_id.id first_partner = reconcile.line_partial_ids[0].partner_id.id
move_lines = reconcile.line_partial_ids move_lines = reconcile.line_partial_ids
if any([line.partner_id.id != first_partner for line in move_lines]): if any([(line.account_id.type in ('receivable', 'payable') and line.partner_id.id != first_partner) for line in move_lines]):
return False return False
return True return True

View File

@ -6,16 +6,19 @@
--> -->
<record id="account_financial_report_profitandloss0" model="account.financial.report"> <record id="account_financial_report_profitandloss0" model="account.financial.report">
<field name="name">Profit and Loss</field> <field name="name">Profit and Loss</field>
<field name="sign" eval="-1" />
<field name="type">sum</field> <field name="type">sum</field>
</record> </record>
<record id="account_financial_report_income0" model="account.financial.report"> <record id="account_financial_report_income0" model="account.financial.report">
<field name="name">Income</field> <field name="name">Income</field>
<field name="sign" eval="-1" />
<field name="parent_id" ref="account_financial_report_profitandloss0"/> <field name="parent_id" ref="account_financial_report_profitandloss0"/>
<field name="display_detail">detail_with_hierarchy</field> <field name="display_detail">detail_with_hierarchy</field>
<field name="type">account_type</field> <field name="type">account_type</field>
</record> </record>
<record id="account_financial_report_expense0" model="account.financial.report"> <record id="account_financial_report_expense0" model="account.financial.report">
<field name="name">Expense</field> <field name="name">Expense</field>
<field name="sign" eval="-1" />
<field name="parent_id" ref="account_financial_report_profitandloss0"/> <field name="parent_id" ref="account_financial_report_profitandloss0"/>
<field name="display_detail">detail_with_hierarchy</field> <field name="display_detail">detail_with_hierarchy</field>
<field name="type">account_type</field> <field name="type">account_type</field>

View File

@ -626,7 +626,7 @@ class account_move_line(osv.osv):
(_check_date, 'The date of your Journal Entry is not in the defined period! You should change the date or remove this constraint from the journal.', ['date']), (_check_date, 'The date of your Journal Entry is not in the defined period! You should change the date or remove this constraint from the journal.', ['date']),
(_check_currency, 'The selected account of your Journal Entry forces to provide a secondary currency. You should remove the secondary currency on the account or select a multi-currency view on the journal.', ['currency_id']), (_check_currency, 'The selected account of your Journal Entry forces to provide a secondary currency. You should remove the secondary currency on the account or select a multi-currency view on the journal.', ['currency_id']),
(_check_currency_and_amount, "You cannot create journal items with a secondary currency without recording both 'currency' and 'amount currency' field.", ['currency_id','amount_currency']), (_check_currency_and_amount, "You cannot create journal items with a secondary currency without recording both 'currency' and 'amount currency' field.", ['currency_id','amount_currency']),
(_check_currency_amount, 'The amount expressed in the secondary currency must be positif when journal item are debit and negatif when journal item are credit.', ['amount_currency']), (_check_currency_amount, 'The amount expressed in the secondary currency must be positive when the journal item is a debit and negative when if it is a credit.', ['amount_currency']),
(_check_currency_company, "You cannot provide a secondary currency if it is the same than the company one." , ['currency_id']), (_check_currency_company, "You cannot provide a secondary currency if it is the same than the company one." , ['currency_id']),
] ]

View File

@ -259,17 +259,14 @@ class account_analytic_account(osv.osv):
return res return res
if child_ids: if child_ids:
cr.execute("SELECT account_analytic_line.account_id, COALESCE(SUM(amount), 0.0) \ #Search all invoice lines not in cancelled state that refer to this analytic account
FROM account_analytic_line \ inv_line_obj = self.pool.get("account.invoice.line")
JOIN account_analytic_journal \ inv_lines = inv_line_obj.search(cr, uid, ['&', ('account_analytic_id', 'in', child_ids), ('invoice_id.state', '!=', 'cancel')], context=context)
ON account_analytic_line.journal_id = account_analytic_journal.id \ for line in inv_line_obj.browse(cr, uid, inv_lines, context=context):
WHERE account_analytic_line.account_id IN %s \ res[line.account_analytic_id.id] += line.price_subtotal
AND account_analytic_journal.type = 'sale' \
GROUP BY account_analytic_line.account_id", (child_ids,))
for account_id, sum in cr.fetchall():
res[account_id] = round(sum,2)
for acc in self.browse(cr, uid, res.keys(), context=context): for acc in self.browse(cr, uid, res.keys(), context=context):
res[acc.id] = res[acc.id] - (acc.timesheet_ca_invoiced or 0.0) res[acc.id] = res[acc.id] - (acc.timesheet_ca_invoiced or 0.0)
res_final = res res_final = res
return res_final return res_final
@ -633,6 +630,21 @@ class account_analytic_account(osv.osv):
pass pass
return result return result
def hr_to_invoice_timesheets(self, cr, uid, ids, context=None):
domain = [('invoice_id','=',False),('to_invoice','!=',False), ('journal_id.type', '=', 'general'), ('account_id', 'in', ids)]
names = [record.name for record in self.browse(cr, uid, ids, context=context)]
name = _('Timesheets to Invoice of %s') % ','.join(names)
return {
'type': 'ir.actions.act_window',
'name': name,
'view_type': 'form',
'view_mode': 'tree,form',
'domain' : domain,
'res_model': 'account.analytic.line',
'nodestroy': True,
}
def _prepare_invoice(self, cr, uid, contract, context=None): def _prepare_invoice(self, cr, uid, contract, context=None):
context = context or {} context = context or {}

View File

@ -98,8 +98,8 @@
<field class="oe_inline" name="ca_to_invoice" attrs="{'invisible': [('invoice_on_timesheets','=',False)]}"/> <field class="oe_inline" name="ca_to_invoice" attrs="{'invisible': [('invoice_on_timesheets','=',False)]}"/>
</td><td class="oe_timesheet_action" attrs="{'invisible': ['|',('invoice_on_timesheets','=',False),('type','=','template')]}"> </td><td class="oe_timesheet_action" attrs="{'invisible': ['|',('invoice_on_timesheets','=',False),('type','=','template')]}">
<span attrs="{'invisible': [('ca_to_invoice','=',0.0)]}" class="oe_grey"> <span attrs="{'invisible': [('ca_to_invoice','=',0.0)]}" class="oe_grey">
<button name="%(hr_timesheet_invoice.action_hr_timesheet_invoice_create_final)d" <button name="hr_to_invoice_timesheets"
type="action" type="object"
class="oe_link" class="oe_link"
string="⇒ Invoice"/> string="⇒ Invoice"/>
or view or view

View File

@ -222,24 +222,19 @@ class account_voucher(osv.osv):
def onchange_line_ids(self, cr, uid, ids, line_dr_ids, line_cr_ids, amount, voucher_currency, type, context=None): def onchange_line_ids(self, cr, uid, ids, line_dr_ids, line_cr_ids, amount, voucher_currency, type, context=None):
context = context or {} context = context or {}
if not line_dr_ids and not line_cr_ids: if not line_dr_ids and not line_cr_ids:
return {'value':{}} return {'value':{'writeoff_amount': 0.0, 'is_multi_currency': False}}
line_osv = self.pool.get("account.voucher.line") line_osv = self.pool.get("account.voucher.line")
line_dr_ids = resolve_o2m_operations(cr, uid, line_osv, line_dr_ids, ['amount'], context) line_dr_ids = resolve_o2m_operations(cr, uid, line_osv, line_dr_ids, ['amount'], context)
line_cr_ids = resolve_o2m_operations(cr, uid, line_osv, line_cr_ids, ['amount'], context) line_cr_ids = resolve_o2m_operations(cr, uid, line_osv, line_cr_ids, ['amount'], context)
#compute the field is_multi_currency that is used to hide/display options linked to secondary currency on the voucher #compute the field is_multi_currency that is used to hide/display options linked to secondary currency on the voucher
is_multi_currency = False is_multi_currency = False
if voucher_currency: #loop on the voucher lines to see if one of these has a secondary currency. If yes, we need to see the options
# if the voucher currency is not False, it means it is different than the company currency and we need to display the options for voucher_line in line_dr_ids+line_cr_ids:
is_multi_currency = True line_currency = voucher_line.get('move_line_id', False) and self.pool.get('account.move.line').browse(cr, uid, voucher_line.get('move_line_id'), context=context).currency_id
else: if line_currency:
#loop on the voucher lines to see if one of these has a secondary currency. If yes, we need to define the options is_multi_currency = True
for voucher_line in line_dr_ids+line_cr_ids: break
company_currency = False
company_currency = voucher_line.get('move_line_id', False) and self.pool.get('account.move.line').browse(cr, uid, voucher_line.get('move_line_id'), context=context).company_id.currency_id.id
if voucher_line.get('currency_id', company_currency) != company_currency:
is_multi_currency = True
break
return {'value': {'writeoff_amount': self._compute_writeoff_amount(cr, uid, line_dr_ids, line_cr_ids, amount, type), 'is_multi_currency': is_multi_currency}} return {'value': {'writeoff_amount': self._compute_writeoff_amount(cr, uid, line_dr_ids, line_cr_ids, amount, type), 'is_multi_currency': is_multi_currency}}
def _get_writeoff_amount(self, cr, uid, ids, name, args, context=None): def _get_writeoff_amount(self, cr, uid, ids, name, args, context=None):
@ -823,6 +818,8 @@ class account_voucher(osv.osv):
currency_id = False currency_id = False
if journal.currency: if journal.currency:
currency_id = journal.currency.id currency_id = journal.currency.id
else:
currency_id = journal.company_id.currency_id.id
vals['value'].update({'currency_id': currency_id}) vals['value'].update({'currency_id': currency_id})
res = self.onchange_partner_id(cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context) res = self.onchange_partner_id(cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context)
for key in res.keys(): for key in res.keys():
@ -1159,8 +1156,13 @@ class account_voucher(osv.osv):
amount_currency = sign * (line.amount) amount_currency = sign * (line.amount)
elif line.move_line_id.currency_id.id == voucher_brw.payment_rate_currency_id.id: elif line.move_line_id.currency_id.id == voucher_brw.payment_rate_currency_id.id:
# if the rate is specified on the voucher, we must use it # if the rate is specified on the voucher, we must use it
voucher_rate = currency_obj.browse(cr, uid, voucher_currency, context=ctx).rate payment_rate = voucher_brw.payment_rate
amount_currency = (move_line['debit'] - move_line['credit']) * voucher_brw.payment_rate * voucher_rate if voucher_currency != company_currency:
#if the voucher currency is not the company currency, we need to consider the rate of the line's currency
voucher_rate = currency_obj.browse(cr, uid, voucher_currency, context=ctx).rate
payment_rate = voucher_rate * payment_rate
amount_currency = (move_line['debit'] - move_line['credit']) * payment_rate
else: else:
# otherwise we use the rates of the system (giving the voucher date in the context) # otherwise we use the rates of the system (giving the voucher date in the context)
amount_currency = currency_obj.compute(cr, uid, company_currency, line.move_line_id.currency_id.id, move_line['debit']-move_line['credit'], context=ctx) amount_currency = currency_obj.compute(cr, uid, company_currency, line.move_line_id.currency_id.id, move_line['debit']-move_line['credit'], context=ctx)

View File

@ -157,7 +157,7 @@
<notebook> <notebook>
<page string="Payment Information"> <page string="Payment Information">
<label for="line_dr_ids"/> <label for="line_dr_ids"/>
<field name="line_dr_ids" context="{'journal_id':journal_id, 'type':type, 'partner_id':partner_id}"> <field name="line_dr_ids" context="{'journal_id':journal_id, 'type':type, 'partner_id':partner_id}" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, currency_id, type, context)">
<tree string="Supplier Invoices and Outstanding transactions" editable="bottom" colors="gray:amount==0"> <tree string="Supplier Invoices and Outstanding transactions" editable="bottom" colors="gray:amount==0">
<field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}" <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}"
on_change="onchange_move_line_id(move_line_id)" on_change="onchange_move_line_id(move_line_id)"
@ -173,7 +173,7 @@
</tree> </tree>
</field> </field>
<label for="line_cr_ids" attrs="{'invisible': [('pre_line','=',False)]}"/> <label for="line_cr_ids" attrs="{'invisible': [('pre_line','=',False)]}"/>
<field name="line_cr_ids" attrs="{'invisible': [('pre_line','=',False)]}" context="{'journal_id':journal_id, 'partner_id':partner_id}"> <field name="line_cr_ids" attrs="{'invisible': [('pre_line','=',False)]}" context="{'journal_id':journal_id, 'partner_id':partner_id}" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, currency_id, type, context)">
<tree string="Credits" editable="bottom" colors="gray:amount==0"> <tree string="Credits" editable="bottom" colors="gray:amount==0">
<field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}" <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}"
on_change="onchange_move_line_id(move_line_id)" on_change="onchange_move_line_id(move_line_id)"
@ -193,7 +193,7 @@
<field name="narration" colspan="2" nolabel="1"/> <field name="narration" colspan="2" nolabel="1"/>
</group> </group>
<group> <group>
<group col="4" attrs="{'invisible':[('currency_id','=',False),('is_multi_currency','=',False)]}"> <group col="4" attrs="{'invisible':[('is_multi_currency','=',False)]}">
<separator string="Currency Options" colspan="4"/> <separator string="Currency Options" colspan="4"/>
<field name="is_multi_currency" invisible="1"/> <field name="is_multi_currency" invisible="1"/>
<field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" colspan="3"/> <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" colspan="3"/>
@ -305,6 +305,7 @@
on_change="onchange_journal(journal_id, line_cr_ids, False, partner_id, date, amount, type, company_id, context)" on_change="onchange_journal(journal_id, line_cr_ids, False, partner_id, date, amount, type, company_id, context)"
string="Payment Method"/> string="Payment Method"/>
</group> </group>
<group> <group>
<field name="date" invisible="context.get('line_type', False)" on_change="onchange_date(date, currency_id, payment_rate_currency_id, amount, company_id, context)"/> <field name="date" invisible="context.get('line_type', False)" on_change="onchange_date(date, currency_id, payment_rate_currency_id, amount, company_id, context)"/>
<field name="period_id"/> <field name="period_id"/>
@ -319,6 +320,21 @@
<field name="type" invisible="True"/> <field name="type" invisible="True"/>
</group> </group>
</group> </group>
<group>
<group>
<field name="writeoff_amount" widget="monetary" options="{'currency_field': 'currency_id'}"/>
<field name="payment_option" required="1"/>
<field name="writeoff_acc_id"
attrs="{'invisible':[('payment_option','!=','with_writeoff')], 'required':[('payment_option','=','with_writeoff')]}"
domain="[('type','=','other')]"/>
<field name="comment"
attrs="{'invisible':[('payment_option','!=','with_writeoff')]}"/>
<field name="analytic_id"
groups="analytic.group_analytic_accounting"/>
</group>
<group>
</group>
</group>
<notebook invisible="1"> <notebook invisible="1">
<page string="Payment Information" groups="base.group_user"> <page string="Payment Information" groups="base.group_user">
<label for="line_cr_ids"/> <label for="line_cr_ids"/>
@ -358,23 +374,12 @@
<group> <group>
<field name="narration" colspan="2" nolabel="1"/> <field name="narration" colspan="2" nolabel="1"/>
</group> </group>
<group col="4" attrs="{'invisible':[('currency_id','=',False),('is_multi_currency','=',False)]}"> <group col="4" attrs="{'invisible':[('is_multi_currency','=',False)]}">
<field name="is_multi_currency" invisible="1"/> <field name="is_multi_currency" invisible="1"/>
<field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" colspan="3"/> <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" colspan="3"/>
<field name="payment_rate_currency_id" colspan="1" nolabel="1" on_change="onchange_payment_rate_currency(currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context)" groups="base.group_multi_currency"/> <field name="payment_rate_currency_id" colspan="1" nolabel="1" on_change="onchange_payment_rate_currency(currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context)" groups="base.group_multi_currency"/>
<field name="paid_amount_in_company_currency" colspan="4" invisible="1"/> <field name="paid_amount_in_company_currency" colspan="4" invisible="1"/>
</group> </group>
<group>
<field name="writeoff_amount" widget="monetary" options="{'currency_field': 'currency_id'}"/>
<field name="payment_option" required="1"/>
<field name="writeoff_acc_id"
attrs="{'invisible':[('payment_option','!=','with_writeoff')], 'required':[('payment_option','=','with_writeoff')]}"
domain="[('type','=','other')]"/>
<field name="comment"
attrs="{'invisible':[('payment_option','!=','with_writeoff')]}"/>
<field name="analytic_id"
groups="analytic.group_analytic_accounting"/>
</group>
</group> </group>
</page> </page>
</notebook> </notebook>
@ -467,7 +472,7 @@
<group> <group>
<field name="narration" colspan="2" nolabel="1"/> <field name="narration" colspan="2" nolabel="1"/>
</group> </group>
<group col="4" attrs="{'invisible':[('currency_id','=',False),('is_multi_currency','=',False)]}"> <group col="4" attrs="{'invisible':[('is_multi_currency','=',False)]}">
<field name="is_multi_currency" invisible="1"/> <field name="is_multi_currency" invisible="1"/>
<field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" colspan="3"/> <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" colspan="3"/>
<field name="payment_rate_currency_id" colspan="1" nolabel="1" on_change="onchange_payment_rate_currency(currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context)" groups="base.group_multi_currency"/> <field name="payment_rate_currency_id" colspan="1" nolabel="1" on_change="onchange_payment_rate_currency(currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context)" groups="base.group_multi_currency"/>

View File

@ -145,6 +145,12 @@
</field> </field>
</page> </page>
</notebook> </notebook>
<group col="4" invisible="1">
<field name="is_multi_currency" invisible="1"/>
<field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" colspan="3" invisible="1"/>
<field name="payment_rate_currency_id" colspan="1" nolabel="1" on_change="onchange_payment_rate_currency(currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context)" groups="base.group_multi_currency" invisible="1"/>
<field name="paid_amount_in_company_currency" colspan="4" invisible="1"/>
</group>
</sheet> </sheet>
<div class="oe_chatter"> <div class="oe_chatter">
<field name="message_follower_ids" widget="mail_followers"/> <field name="message_follower_ids" widget="mail_followers"/>

View File

@ -1,49 +1,25 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
# OpenERP, Open Source Management Solution>.. #############################################################################
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
from com.sun.star.task import XJobExecutor from com.sun.star.task import XJobExecutor

View File

@ -1,49 +1,26 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# This library is free software; you can redistribute it and/or # You should have received a copy of the GNU Lesser General Public
# modify it under the terms of the GNU Lesser General Public # License along with this library; if not, write to the Free Software
# License as published by the Free Software Foundation; either # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# version 2.1 of the License, or (at your option) any later version.
# #
# This library is distributed in the hope that it will be useful, # See: http://www.gnu.org/licenses/lgpl.html
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# You should have received a copy of the GNU Lesser General Public #############################################################################
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
#
#
# and other portions are under the following copyright and license:
#
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import os import os
import uno import uno
import unohelper import unohelper

View File

@ -1,49 +1,26 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
# OpenERP, Open Source Management Solution>.. #############################################################################
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
import string import string
import unohelper import unohelper
@ -72,7 +49,7 @@ class Change( unohelper.Base, XJobExecutor ):
'XML-RPC': 'http://', 'XML-RPC': 'http://',
'XML-RPC secure': 'https://', 'XML-RPC secure': 'https://',
'NET-RPC': 'socket://', 'NET-RPC': 'socket://',
} }
host=port=protocol='' host=port=protocol=''
if docinfo.getUserFieldValue(0): if docinfo.getUserFieldValue(0):
m = re.match('^(http[s]?://|socket://)([\w.\-]+):(\d{1,5})$', docinfo.getUserFieldValue(0) or '') m = re.match('^(http[s]?://|socket://)([\w.\-]+):(\d{1,5})$', docinfo.getUserFieldValue(0) or '')
@ -80,7 +57,7 @@ class Change( unohelper.Base, XJobExecutor ):
port = m.group(3) port = m.group(3)
protocol = m.group(1) protocol = m.group(1)
if protocol: if protocol:
for (key, value) in self.protocol.iteritems(): for (key, value) in self.protocol.iteritems():
if value==protocol: if value==protocol:
protocol=key protocol=key
break break
@ -102,7 +79,7 @@ class Change( unohelper.Base, XJobExecutor ):
self.win.addButton( 'btnNext', -2, -5, 30, 15, 'Next', actionListenerProc = self.btnNext_clicked ) self.win.addButton( 'btnNext', -2, -5, 30, 15, 'Next', actionListenerProc = self.btnNext_clicked )
self.win.addButton( 'btnCancel', -2 - 30 - 5 ,-5, 30, 15, 'Cancel', actionListenerProc = self.btnCancel_clicked ) self.win.addButton( 'btnCancel', -2 - 30 - 5 ,-5, 30, 15, 'Cancel', actionListenerProc = self.btnCancel_clicked )
for i in self.protocol.keys(): for i in self.protocol.keys():
self.lstProtocol.addItem(i,self.lstProtocol.getItemCount() ) self.lstProtocol.addItem(i,self.lstProtocol.getItemCount() )
self.win.doModalDialog( "lstProtocol", protocol) self.win.doModalDialog( "lstProtocol", protocol)
@ -110,27 +87,27 @@ class Change( unohelper.Base, XJobExecutor ):
def btnNext_clicked(self, oActionEvent): def btnNext_clicked(self, oActionEvent):
global url global url
aVal='' aVal=''
#aVal= Fetature used #aVal= Fetature used
try: try:
url = self.protocol[self.win.getListBoxSelectedItem("lstProtocol")]+self.win.getEditText("txtHost")+":"+self.win.getEditText("txtPort") url = self.protocol[self.win.getListBoxSelectedItem("lstProtocol")]+self.win.getEditText("txtHost")+":"+self.win.getEditText("txtPort")
self.sock=RPCSession(url) self.sock=RPCSession(url)
desktop=getDesktop() desktop=getDesktop()
doc = desktop.getCurrentComponent() doc = desktop.getCurrentComponent()
docinfo=doc.getDocumentInfo() docinfo=doc.getDocumentInfo()
docinfo.setUserFieldValue(0,url) docinfo.setUserFieldValue(0,url)
res=self.sock.listdb() res=self.sock.listdb()
self.win.endExecute() self.win.endExecute()
ServerParameter(aVal,url) ServerParameter(aVal,url)
except : except :
import traceback,sys import traceback,sys
info = reduce(lambda x, y: x+y, traceback.format_exception(sys.exc_type, sys.exc_value, sys.exc_traceback)) info = reduce(lambda x, y: x+y, traceback.format_exception(sys.exc_type, sys.exc_value, sys.exc_traceback))
self.logobj.log_write('ServerParameter', LOG_ERROR, info) self.logobj.log_write('ServerParameter', LOG_ERROR, info)
ErrorDialog("Connection to server is fail. Please check your Server Parameter.", "", "Error!") ErrorDialog("Connection to server is fail. Please check your Server Parameter.", "", "Error!")
self.win.endExecute() self.win.endExecute()
def btnCancel_clicked(self,oActionEvent): def btnCancel_clicked(self,oActionEvent):
self.win.endExecute() self.win.endExecute()
if __name__<>"package" and __name__=="__main__": if __name__<>"package" and __name__=="__main__":
Change(None) Change(None)

View File

@ -1,49 +1,26 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# This library is free software; you can redistribute it and/or # You should have received a copy of the GNU Lesser General Public
# modify it under the terms of the GNU Lesser General Public # License along with this library; if not, write to the Free Software
# License as published by the Free Software Foundation; either # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# version 2.1 of the License, or (at your option) any later version.
# #
# This library is distributed in the hope that it will be useful, # See: http://www.gnu.org/licenses/lgpl.html
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# You should have received a copy of the GNU Lesser General Public #############################################################################
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
#
#
# and other portions are under the following copyright and license:
#
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
import unohelper import unohelper
import string import string

View File

@ -1,49 +1,25 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
# OpenERP, Open Source Management Solution>.. #############################################################################
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
import unohelper import unohelper
@ -81,7 +57,7 @@ class ConvertFieldsToBraces( unohelper.Base, XJobExecutor ):
if __name__<>"package": if __name__<>"package":
ConvertFieldsToBraces(None) ConvertFieldsToBraces(None)
else: else:
g_ImplementationHelper.addImplementation( ConvertFieldsToBraces, "org.openoffice.openerp.report.convertFB", ("com.sun.star.task.Job",),) g_ImplementationHelper.addImplementation( ConvertFieldsToBraces, "org.openoffice.openerp.report.convertFB", ("com.sun.star.task.Job",),)
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -1,49 +1,26 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# This library is free software; you can redistribute it and/or # You should have received a copy of the GNU Lesser General Public
# modify it under the terms of the GNU Lesser General Public # License along with this library; if not, write to the Free Software
# License as published by the Free Software Foundation; either # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# version 2.1 of the License, or (at your option) any later version.
# #
# This library is distributed in the hope that it will be useful, # See: http://www.gnu.org/licenses/lgpl.html
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# You should have received a copy of the GNU Lesser General Public #############################################################################
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
#
#
# and other portions are under the following copyright and license:
#
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import os import os
import uno import uno
import unohelper import unohelper

View File

@ -1,49 +1,26 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
# OpenERP, Open Source Management Solution>.. #############################################################################
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
import string import string
import unohelper import unohelper

View File

@ -1,50 +1,25 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
# OpenERP, Open Source Management Solution>.. #############################################################################
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
import string import string

View File

@ -1,49 +1,26 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
# OpenERP, Open Source Management Solution>.. #############################################################################
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
if __name__<>"package": if __name__<>"package":
from ServerParameter import * from ServerParameter import *
from lib.gui import * from lib.gui import *

View File

@ -1,49 +1,25 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# This library is free software; you can redistribute it and/or # You should have received a copy of the GNU Lesser General Public
# modify it under the terms of the GNU Lesser General Public # License along with this library; if not, write to the Free Software
# License as published by the Free Software Foundation; either # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# version 2.1 of the License, or (at your option) any later version.
# #
# This library is distributed in the hope that it will be useful, # See: http://www.gnu.org/licenses/lgpl.html
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# You should have received a copy of the GNU Lesser General Public #############################################################################
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
#
#
# and other portions are under the following copyright and license:
#
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
import string import string

View File

@ -1,49 +1,26 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
# OpenERP, Open Source Management Solution>.. #############################################################################
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
import string import string
import unohelper import unohelper

View File

@ -1,49 +1,26 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
# OpenERP, Open Source Management Solution>.. #############################################################################
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
import string import string
import unohelper import unohelper

View File

@ -1,49 +1,25 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# This library is free software; you can redistribute it and/or # You should have received a copy of the GNU Lesser General Public
# modify it under the terms of the GNU Lesser General Public # License along with this library; if not, write to the Free Software
# License as published by the Free Software Foundation; either # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# version 2.1 of the License, or (at your option) any later version.
# #
# This library is distributed in the hope that it will be useful, # See: http://www.gnu.org/licenses/lgpl.html
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# You should have received a copy of the GNU Lesser General Public #############################################################################
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
#
#
# and other portions are under the following copyright and license:
#
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
import string import string
@ -201,7 +177,7 @@ class SendtoServer(unohelper.Base, XJobExecutor):
if self.win.getListBoxSelectedItem("lstResourceType")=='OpenOffice': if self.win.getListBoxSelectedItem("lstResourceType")=='OpenOffice':
params['report_type']=file_type params['report_type']=file_type
self.sock.execute(database, uid, self.password, 'ir.actions.report.xml', 'write', int(docinfo.getUserFieldValue(2)), params) self.sock.execute(database, uid, self.password, 'ir.actions.report.xml', 'write', int(docinfo.getUserFieldValue(2)), params)
# Call upload_report as the *last* step, as it will call register_all() and cause the report service # Call upload_report as the *last* step, as it will call register_all() and cause the report service
# to be loaded - which requires all the data to be correct in the database # to be loaded - which requires all the data to be correct in the database
self.sock.execute(database, uid, self.password, 'ir.actions.report.xml', 'upload_report', int(docinfo.getUserFieldValue(2)),base64.encodestring(data),file_type,{}) self.sock.execute(database, uid, self.password, 'ir.actions.report.xml', 'upload_report', int(docinfo.getUserFieldValue(2)),base64.encodestring(data),file_type,{})

View File

@ -1,49 +1,26 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# This library is free software; you can redistribute it and/or # You should have received a copy of the GNU Lesser General Public
# modify it under the terms of the GNU Lesser General Public # License along with this library; if not, write to the Free Software
# License as published by the Free Software Foundation; either # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# version 2.1 of the License, or (at your option) any later version.
# #
# This library is distributed in the hope that it will be useful, # See: http://www.gnu.org/licenses/lgpl.html
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# You should have received a copy of the GNU Lesser General Public #############################################################################
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
#
#
# and other portions are under the following copyright and license:
#
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
import string import string
import unohelper import unohelper

View File

@ -1,49 +1,25 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# This library is free software; you can redistribute it and/or # You should have received a copy of the GNU Lesser General Public
# modify it under the terms of the GNU Lesser General Public # License along with this library; if not, write to the Free Software
# License as published by the Free Software Foundation; either # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# version 2.1 of the License, or (at your option) any later version.
# #
# This library is distributed in the hope that it will be useful, # See: http://www.gnu.org/licenses/lgpl.html
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# You should have received a copy of the GNU Lesser General Public #############################################################################
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
#
#
# and other portions are under the following copyright and license:
#
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import uno import uno
import string import string

View File

@ -1,49 +1,26 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
# OpenERP, Open Source Management Solution>.. #############################################################################
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import Expression import Expression
import lib import lib
import Fields import Fields

View File

@ -1,49 +1,26 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
# OpenERP, Open Source Management Solution>.. #############################################################################
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import compileall import compileall
compileall.compile_dir('package') compileall.compile_dir('package')

View File

@ -1,47 +1,23 @@
########################################################################## ##########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
############################################################################## ##############################################################################

View File

@ -1,47 +1,23 @@
########################################################################## ##########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
############################################################################## ##############################################################################

View File

@ -1,47 +1,23 @@
########################################################################## ##########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
############################################################################## ##############################################################################

View File

@ -1,47 +1,23 @@
########################################################################## ##########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# This library is free software; you can redistribute it and/or # Lesser General Public License for more details.
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
# #
# # You should have received a copy of the GNU Lesser General Public
# and other portions are under the following copyright and license: # License along with this library; if not, write to the Free Software
# # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# #
# See: http://www.gnu.org/licenses/lgpl.html
# #
############################################################################## ##############################################################################

View File

@ -1,49 +1,25 @@
########################################################################## #########################################################################
# #
# Portions of this file are under the following copyright and license: # Copyright (c) 2003-2004 Danny Brewer d29583@groovegarden.com
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
# #
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# #
# Copyright (c) 2003-2004 Danny Brewer # This library is distributed in the hope that it will be useful,
# d29583@groovegarden.com # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# This library is free software; you can redistribute it and/or # You should have received a copy of the GNU Lesser General Public
# modify it under the terms of the GNU Lesser General Public # License along with this library; if not, write to the Free Software
# License as published by the Free Software Foundation; either # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# version 2.1 of the License, or (at your option) any later version.
# #
# This library is distributed in the hope that it will be useful, # See: http://www.gnu.org/licenses/lgpl.html
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# #
# You should have received a copy of the GNU Lesser General Public #############################################################################
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See: http://www.gnu.org/licenses/lgpl.html
#
#
# and other portions are under the following copyright and license:
#
#
# OpenERP, Open Source Management Solution>..
# Copyright (C) 2004-2010 OpenERP SA (<http://openerp.com>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
#
##############################################################################
import re import re
import uno import uno

View File

@ -23,8 +23,9 @@ from openerp.addons.base_status.base_stage import base_stage
import crm import crm
from datetime import datetime from datetime import datetime
from operator import itemgetter from operator import itemgetter
from openerp.osv import fields, osv from openerp.osv import fields, osv, orm
import time import time
from openerp import SUPERUSER_ID
from openerp import tools from openerp import tools
from openerp.tools.translate import _ from openerp.tools.translate import _
from openerp.tools import html2plaintext from openerp.tools import html2plaintext
@ -980,15 +981,18 @@ class crm_lead(base_stage, format_address, osv.osv):
def message_get_reply_to(self, cr, uid, ids, context=None): def message_get_reply_to(self, cr, uid, ids, context=None):
""" Override to get the reply_to of the parent project. """ """ Override to get the reply_to of the parent project. """
return [lead.section_id.message_get_reply_to()[0] if lead.section_id else False return [lead.section_id.message_get_reply_to()[0] if lead.section_id else False
for lead in self.browse(cr, uid, ids, context=context)] for lead in self.browse(cr, SUPERUSER_ID, ids, context=context)]
def message_get_suggested_recipients(self, cr, uid, ids, context=None): def message_get_suggested_recipients(self, cr, uid, ids, context=None):
recipients = super(crm_lead, self).message_get_suggested_recipients(cr, uid, ids, context=context) recipients = super(crm_lead, self).message_get_suggested_recipients(cr, uid, ids, context=context)
for lead in self.browse(cr, uid, ids, context=context): try:
if lead.partner_id: for lead in self.browse(cr, uid, ids, context=context):
self._message_add_suggested_recipient(cr, uid, recipients, lead, partner=lead.partner_id, reason=_('Customer')) if lead.partner_id:
elif lead.email_from: self._message_add_suggested_recipient(cr, uid, recipients, lead, partner=lead.partner_id, reason=_('Customer'))
self._message_add_suggested_recipient(cr, uid, recipients, lead, email=lead.email_from, reason=_('Customer Email')) elif lead.email_from:
self._message_add_suggested_recipient(cr, uid, recipients, lead, email=lead.email_from, reason=_('Customer Email'))
except (osv.except_osv, orm.except_orm): # no read access rights -> just ignore suggested recipients because this imply modifying followers
pass
return recipients return recipients
def message_new(self, cr, uid, msg, custom_values=None, context=None): def message_new(self, cr, uid, msg, custom_values=None, context=None):

View File

@ -12,6 +12,7 @@
<field name="context">{ <field name="context">{
'default_type':'lead', 'default_type':'lead',
'stage_type':'lead', 'stage_type':'lead',
'needaction_menu_ref': 'crm.menu_crm_opportunities',
'search_default_unassigned':1, 'search_default_unassigned':1,
} }
</field> </field>

View File

@ -382,6 +382,7 @@ class email_template(osv.osv):
attachment_ids = values.pop('attachment_ids', []) attachment_ids = values.pop('attachment_ids', [])
attachments = values.pop('attachments', []) attachments = values.pop('attachments', [])
msg_id = mail_mail.create(cr, uid, values, context=context) msg_id = mail_mail.create(cr, uid, values, context=context)
mail = mail_mail.browse(cr, uid, msg_id, context=context)
# manage attachments # manage attachments
for attachment in attachments: for attachment in attachments:
@ -390,7 +391,7 @@ class email_template(osv.osv):
'datas_fname': attachment[0], 'datas_fname': attachment[0],
'datas': attachment[1], 'datas': attachment[1],
'res_model': 'mail.message', 'res_model': 'mail.message',
'res_id': msg_id, 'res_id': mail.mail_message_id.id,
} }
context.pop('default_type', None) context.pop('default_type', None)
attachment_ids.append(ir_attachment.create(cr, uid, attachment_data, context=context)) attachment_ids.append(ir_attachment.create(cr, uid, attachment_data, context=context))

View File

@ -23,6 +23,7 @@ import logging
from openerp.modules.module import get_module_resource from openerp.modules.module import get_module_resource
from openerp.osv import fields, osv from openerp.osv import fields, osv
from openerp.tools.translate import _
from openerp import tools from openerp import tools
_logger = logging.getLogger(__name__) _logger = logging.getLogger(__name__)
@ -221,7 +222,7 @@ class hr_employee(osv.osv):
(model, mail_group_id) = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'mail', 'group_all_employees') (model, mail_group_id) = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'mail', 'group_all_employees')
employee = self.browse(cr, uid, employee_id, context=context) employee = self.browse(cr, uid, employee_id, context=context)
self.pool.get('mail.group').message_post(cr, uid, [mail_group_id], self.pool.get('mail.group').message_post(cr, uid, [mail_group_id],
body='Welcome to %s! Please help him/her take the first steps with OpenERP!' % (employee.name), body=_('Welcome to %s! Please help him/her take the first steps with OpenERP!') % (employee.name),
subtype='mail.mt_comment', context=context) subtype='mail.mt_comment', context=context)
except: except:
pass # group deleted: do not push a message pass # group deleted: do not push a message

View File

@ -50,6 +50,7 @@ class hr_payroll_structure(osv.osv):
'note': fields.text('Description'), 'note': fields.text('Description'),
'parent_id':fields.many2one('hr.payroll.structure', 'Parent'), 'parent_id':fields.many2one('hr.payroll.structure', 'Parent'),
'children_ids':fields.one2many('hr.payroll.structure', 'parent_id', 'Children'), 'children_ids':fields.one2many('hr.payroll.structure', 'parent_id', 'Children'),
'rule_ids':fields.many2many('hr.salary.rule', 'hr_structure_salary_rule_rel', 'struct_id', 'rule_id', 'Salary Rules'),
} }
def _get_parent(self, cr, uid, context=None): def _get_parent(self, cr, uid, context=None):
@ -67,6 +68,10 @@ class hr_payroll_structure(osv.osv):
'parent_id': _get_parent, 'parent_id': _get_parent,
} }
_constraints = [
(osv.osv._check_recursion, 'Error ! You cannot create a recursive Salary Structure.', ['parent_id'])
]
def copy(self, cr, uid, id, default=None, context=None): def copy(self, cr, uid, id, default=None, context=None):
""" """
Create a new record in hr_payroll_structure model from existing one Create a new record in hr_payroll_structure model from existing one
@ -938,13 +943,6 @@ class hr_payslip_line(osv.osv):
} }
class hr_payroll_structure(osv.osv):
_inherit = 'hr.payroll.structure'
_columns = {
'rule_ids':fields.many2many('hr.salary.rule', 'hr_structure_salary_rule_rel', 'struct_id', 'rule_id', 'Salary Rules'),
}
class hr_employee(osv.osv): class hr_employee(osv.osv):
''' '''

View File

@ -37,8 +37,11 @@ class hr_employee(osv.osv):
def _getAnalyticJournal(self, cr, uid, context=None): def _getAnalyticJournal(self, cr, uid, context=None):
md = self.pool.get('ir.model.data') md = self.pool.get('ir.model.data')
try: try:
result = md.get_object_reference(cr, uid, 'hr_timesheet', 'analytic_journal') dummy, res_id = md.get_object_reference(cr, uid, 'hr_timesheet', 'analytic_journal')
return result[1] #search on id found in result to check if current user has read access right
check_right = self.pool.get('account.analytic.journal').search(cr, uid, [('id', '=', res_id)], context=context)
if check_right:
return res_id
except ValueError: except ValueError:
pass pass
return False return False
@ -46,8 +49,11 @@ class hr_employee(osv.osv):
def _getEmployeeProduct(self, cr, uid, context=None): def _getEmployeeProduct(self, cr, uid, context=None):
md = self.pool.get('ir.model.data') md = self.pool.get('ir.model.data')
try: try:
result = md.get_object_reference(cr, uid, 'product', 'product_product_consultant') dummy, res_id = md.get_object_reference(cr, uid, 'product', 'product_product_consultant')
return result[1] #search on id found in result to check if current user has read access right
check_right = self.pool.get('product.template').search(cr, uid, [('id', '=', res_id)], context=context)
if check_right:
return res_id
except ValueError: except ValueError:
pass pass
return False return False

View File

@ -102,17 +102,4 @@
assert aline.invoice_id, "Invoice created, but analytic line wasn't updated." assert aline.invoice_id, "Invoice created, but analytic line wasn't updated."
assert aline.invoice_id == invoice_id, "Invoice doesn't match the one at analytic line" assert aline.invoice_id == invoice_id, "Invoice doesn't match the one at analytic line"
assert invoice_id.amount_untaxed == 187.5, "Invoice amount mismatch: %s" % invoice_id.amount_untaxed assert invoice_id.amount_untaxed == 187.5, "Invoice amount mismatch: %s" % invoice_id.amount_untaxed
assert invoice_id.amount_tax == 50, "Invoice tax mismatch: %s" % invoice_id.amount_tax assert invoice_id.amount_tax == 50, "Invoice tax mismatch: %s" % invoice_id.amount_tax
-
I create final invoice for this analytic account.
-
!record {model: hr.timesheet.invoice.create.final, id: hr_timesheet_invoice_create_final_0}:
date: 1
name: 1
price: 1
time: 1
-
I click on "Create Invoice" button to create Invoice and validate the invoice.
-
!python {model: hr.timesheet.invoice.create.final}: |
res = self.do_create(cr, uid, [ref("hr_timesheet_invoice_create_final_0")], {"active_ids": [ref("account.analytic_agrolait")]})

View File

@ -101,17 +101,4 @@
assert aline.invoice_id, "Invoice created, but analytic line wasn't updated." assert aline.invoice_id, "Invoice created, but analytic line wasn't updated."
assert aline.invoice_id == invoice_id, "Invoice doesn't match the one at analytic line" assert aline.invoice_id == invoice_id, "Invoice doesn't match the one at analytic line"
assert invoice_id.amount_untaxed == 187.5, "Invoice amount mismatch: %s" % invoice_id.amount_untaxed assert invoice_id.amount_untaxed == 187.5, "Invoice amount mismatch: %s" % invoice_id.amount_untaxed
assert invoice_id.amount_tax == 40, "Invoice tax mismatch: %s" % invoice_id.amount_tax assert invoice_id.amount_tax == 40, "Invoice tax mismatch: %s" % invoice_id.amount_tax
-
I create final invoice for this analytic account.
-
!record {model: hr.timesheet.invoice.create.final, id: hr_timesheet_invoice_create_final_0}:
date: 1
name: 1
price: 1
time: 1
-
I click on "Create Invoice" button to create Invoice and validate the invoice.
-
!python {model: hr.timesheet.invoice.create.final}: |
res = self.do_create(cr, uid, [ref("hr_timesheet_invoice_create_final_0")], {"active_ids": [ref("account.analytic_agrolait")]})

View File

@ -236,6 +236,8 @@ class mail_message(osv.Model):
:param bool read: set notification as (un)read :param bool read: set notification as (un)read
:param bool create_missing: create notifications for missing entries :param bool create_missing: create notifications for missing entries
(i.e. when acting on displayed messages not notified) (i.e. when acting on displayed messages not notified)
:return number of message mark as read
""" """
notification_obj = self.pool.get('mail.notification') notification_obj = self.pool.get('mail.notification')
user_pid = self.pool.get('res.users').read(cr, uid, uid, ['partner_id'], context=context)['partner_id'][0] user_pid = self.pool.get('res.users').read(cr, uid, uid, ['partner_id'], context=context)['partner_id'][0]
@ -246,14 +248,16 @@ class mail_message(osv.Model):
# all message have notifications: already set them as (un)read # all message have notifications: already set them as (un)read
if len(notif_ids) == len(msg_ids) or not create_missing: if len(notif_ids) == len(msg_ids) or not create_missing:
return notification_obj.write(cr, uid, notif_ids, {'read': read}, context=context) notification_obj.write(cr, uid, notif_ids, {'read': read}, context=context)
return len(notif_ids)
# some messages do not have notifications: find which one, create notification, update read status # some messages do not have notifications: find which one, create notification, update read status
notified_msg_ids = [notification.message_id.id for notification in notification_obj.browse(cr, uid, notif_ids, context=context)] notified_msg_ids = [notification.message_id.id for notification in notification_obj.browse(cr, uid, notif_ids, context=context)]
to_create_msg_ids = list(set(msg_ids) - set(notified_msg_ids)) to_create_msg_ids = list(set(msg_ids) - set(notified_msg_ids))
for msg_id in to_create_msg_ids: for msg_id in to_create_msg_ids:
notification_obj.create(cr, uid, {'partner_id': user_pid, 'read': read, 'message_id': msg_id}, context=context) notification_obj.create(cr, uid, {'partner_id': user_pid, 'read': read, 'message_id': msg_id}, context=context)
return notification_obj.write(cr, uid, notif_ids, {'read': read}, context=context) notification_obj.write(cr, uid, notif_ids, {'read': read}, context=context)
return len(notif_ids)
def set_message_starred(self, cr, uid, msg_ids, starred, create_missing=True, context=None): def set_message_starred(self, cr, uid, msg_ids, starred, create_missing=True, context=None):
""" Set messages as (un)starred. Technically, the notifications related """ Set messages as (un)starred. Technically, the notifications related

View File

@ -33,7 +33,7 @@ from email.message import Message
from openerp import tools from openerp import tools
from openerp import SUPERUSER_ID from openerp import SUPERUSER_ID
from openerp.addons.mail.mail_message import decode from openerp.addons.mail.mail_message import decode
from openerp.osv import fields, osv from openerp.osv import fields, osv, orm
from openerp.tools.safe_eval import safe_eval as eval from openerp.tools.safe_eval import safe_eval as eval
from openerp.tools.translate import _ from openerp.tools.translate import _
@ -459,7 +459,7 @@ class mail_thread(osv.AbstractModel):
return ["%s@%s" % (record['alias_name'], record['alias_domain']) return ["%s@%s" % (record['alias_name'], record['alias_domain'])
if record.get('alias_domain') and record.get('alias_name') if record.get('alias_domain') and record.get('alias_name')
else False else False
for record in self.read(cr, uid, ids, ['alias_name', 'alias_domain'], context=context)] for record in self.read(cr, SUPERUSER_ID, ids, ['alias_name', 'alias_domain'], context=context)]
#------------------------------------------------------ #------------------------------------------------------
# Mail gateway # Mail gateway
@ -1200,7 +1200,10 @@ class mail_thread(osv.AbstractModel):
""" Add partners to the records followers. """ """ Add partners to the records followers. """
user_pid = self.pool.get('res.users').read(cr, uid, uid, ['partner_id'], context=context)['partner_id'][0] user_pid = self.pool.get('res.users').read(cr, uid, uid, ['partner_id'], context=context)['partner_id'][0]
if set(partner_ids) == set([user_pid]): if set(partner_ids) == set([user_pid]):
self.check_access_rights(cr, uid, 'read') try:
self.check_access_rights(cr, uid, 'read')
except (osv.except_osv, orm.except_orm):
return
else: else:
self.check_access_rights(cr, uid, 'write') self.check_access_rights(cr, uid, 'write')

View File

@ -8,6 +8,7 @@
<field name="context">{ <field name="context">{
'default_model': 'res.users', 'default_model': 'res.users',
'default_res_id': uid, 'default_res_id': uid,
'needaction_menu_ref': ['mail.mail_tomefeeds', 'mail.mail_starfeeds']
}</field> }</field>
<field name="params" eval="&quot;{ <field name="params" eval="&quot;{
'domain': [ 'domain': [
@ -36,7 +37,8 @@
<field name="context">{ <field name="context">{
'default_model': 'res.users', 'default_model': 'res.users',
'default_res_id': uid, 'default_res_id': uid,
'search_default_message_unread': True 'search_default_message_unread': True,
'needaction_menu_ref': ['mail.mail_starfeeds', 'mail.mail_inboxfeeds']
}</field> }</field>
<field name="params" eval="&quot;{ <field name="params" eval="&quot;{
'domain': [ 'domain': [
@ -87,7 +89,8 @@
<field name="tag">mail.wall</field> <field name="tag">mail.wall</field>
<field name="context">{ <field name="context">{
'default_model': 'res.users', 'default_model': 'res.users',
'default_res_id': uid 'default_res_id': uid,
'needaction_menu_ref': ['mail.mail_tomefeeds', 'mail.mail_starfeeds', 'mail.mail_inboxfeeds']
}</field> }</field>
<field name="params" eval="&quot;{ <field name="params" eval="&quot;{
'domain': [ 'domain': [

View File

@ -1056,9 +1056,7 @@ openerp.mail = function (session) {
msg.renderElement(); msg.renderElement();
msg.start(); msg.start();
} }
if( self.options.root_thread.__parentedParent.__parentedParent.do_reload_menu_emails ) { self.options.root_thread.MailWidget.do_reload_menu_emails();
self.options.root_thread.__parentedParent.__parentedParent.do_reload_menu_emails();
}
}); });
}); });
@ -1198,6 +1196,7 @@ openerp.mail = function (session) {
init: function (parent, datasets, options) { init: function (parent, datasets, options) {
var self = this; var self = this;
this._super(parent, options); this._super(parent, options);
this.MailWidget = parent.__proto__ == mail.Widget.prototype ? parent : false;
this.domain = options.domain || []; this.domain = options.domain || [];
this.context = _.extend(options.context || {}); this.context = _.extend(options.context || {});
@ -1431,11 +1430,16 @@ openerp.mail = function (session) {
message_fetch_set_read: function (message_list) { message_fetch_set_read: function (message_list) {
if (! this.context.mail_read_set_read) return; if (! this.context.mail_read_set_read) return;
this.render_mutex.exec(_.bind(function() { var self = this;
this.render_mutex.exec(function() {
msg_ids = _.pluck(message_list, 'id'); msg_ids = _.pluck(message_list, 'id');
return this.ds_message.call('set_message_read', [ return self.ds_message.call('set_message_read', [msg_ids, true, false, self.context])
msg_ids, true, false, this.context]); .then(function (nb_read) {
}, this)); if (nb_read) {
self.options.root_thread.MailWidget.do_reload_menu_emails();
}
});
});
}, },
/** /**
@ -1700,6 +1704,15 @@ openerp.mail = function (session) {
this.bind_events(); this.bind_events();
}, },
/**
* create an object "related_menu"
* contains the menu widget and the sub menu related of this wall
*/
do_reload_menu_emails: function () {
var ActionManager = this.__parentedParent.ActionManager || this.__parentedParent.__parentedParent.ViewManager.ActionManager;
ActionManager.__parentedParent.menu.do_reload_needaction();
},
/** /**
*Create the root thread and display this object in the DOM. *Create the root thread and display this object in the DOM.
* Call the no_message method then c all the message_fetch method * Call the no_message method then c all the message_fetch method
@ -1749,6 +1762,7 @@ openerp.mail = function (session) {
init: function (parent, node) { init: function (parent, node) {
this._super.apply(this, arguments); this._super.apply(this, arguments);
this.ParentViewManager = parent;
this.node = _.clone(node); this.node = _.clone(node);
this.node.params = _.extend({ this.node.params = _.extend({
'display_indented_thread': -1, 'display_indented_thread': -1,
@ -1768,7 +1782,7 @@ openerp.mail = function (session) {
this.domain = this.node.params && this.node.params.domain || []; this.domain = this.node.params && this.node.params.domain || [];
if (!this.__parentedParent.is_action_enabled('edit')) { if (!this.ParentViewManager.is_action_enabled('edit')) {
this.node.params.show_link = false; this.node.params.show_link = false;
} }
}, },
@ -1839,6 +1853,7 @@ openerp.mail = function (session) {
*/ */
init: function (parent, action) { init: function (parent, action) {
this._super(parent, action); this._super(parent, action);
this.ActionManager = parent;
this.action = _.clone(action); this.action = _.clone(action);
this.domain = this.action.params.domain || this.action.domain || []; this.domain = this.action.params.domain || this.action.domain || [];
@ -1871,23 +1886,6 @@ openerp.mail = function (session) {
} }
}, },
/**
* crete an object "related_menu"
* contain the menu widget and the the sub menu related of this wall
*/
do_reload_menu_emails: function () {
var menu = this.__parentedParent.__parentedParent.menu;
// return this.rpc("/web/menu/load", {'menu_id': 100}).done(function(r) {
// _.each(menu.data.data.children, function (val) {
// if (val.id == 100) {
// val.children = _.find(r.data.children, function (r_val) {return r_val.id == 100;}).children;
// }
// });
// var r = menu.data;
// window.setTimeout(function(){menu.do_reload();}, 0);
// });
},
/** /**
* Load the mail.message search view * Load the mail.message search view
* @param {Object} defaults ?? * @param {Object} defaults ??

View File

@ -144,7 +144,9 @@
<t t-foreach='widget.recipients' t-as='recipient'> <t t-foreach='widget.recipients' t-as='recipient'>
<label t-attf-title="Add as recipient and follower (reason: #{recipient.reason})"> <label t-attf-title="Add as recipient and follower (reason: #{recipient.reason})">
<input type="checkbox" t-att-checked="recipient.checked ? 'checked' : undefined" t-att-data="recipient.email_address"/> <input type="checkbox" t-att-checked="recipient.checked ? 'checked' : undefined" t-att-data="recipient.email_address"/>
<t t-raw="recipient.name"/> (<t t-raw="recipient.email_address"/>) <t t-raw="recipient.name"/>
<t t-if="recipient.email_address">(<t t-raw="recipient.email_address"/>)</t>
<t t-if="!recipient.email_address">(no email address)</t>
</label> </label>
</t> </t>
</div> </div>

View File

@ -75,7 +75,7 @@ class invite_wizard(osv.osv_memory):
model_name = ir_model.name_get(cr, uid, model_ids, context=context)[0][1] model_name = ir_model.name_get(cr, uid, model_ids, context=context)[0][1]
# send an email if option checked and if a message exists (do not send void emails) # send an email if option checked and if a message exists (do not send void emails)
if wizard.send_mail and wizard.message: if wizard.send_mail and wizard.message and not wizard.message == '<br>': # when deleting the message, cleditor keeps a <br>
# add signature # add signature
# FIXME 8.0: use notification_email_send, send a wall message and let mail handle email notification + message box # FIXME 8.0: use notification_email_send, send a wall message and let mail handle email notification + message box
signature_company = self.pool.get('mail.notification').get_signature_footer(cr, uid, user_id=uid, res_model=wizard.res_model, res_id=wizard.res_id, context=context) signature_company = self.pool.get('mail.notification').get_signature_footer(cr, uid, user_id=uid, res_model=wizard.res_model, res_id=wizard.res_id, context=context)

View File

@ -141,12 +141,19 @@ class note_note(osv.osv):
#note without user's stage #note without user's stage
nb_notes_ws = self.search(cr,uid, domain+[('stage_ids', 'not in', current_stage_ids)], context=context, count=True) nb_notes_ws = self.search(cr,uid, domain+[('stage_ids', 'not in', current_stage_ids)], context=context, count=True)
if nb_notes_ws: if nb_notes_ws:
result += [{ #notes for unknown stage and if stage_ids is not empty # add note to the first column if it's the first stage
'__context': {'group_by': groupby[1:]}, dom_not_in = ('stage_ids', 'not in', current_stage_ids)
'__domain': domain + [('stage_ids', 'not in', current_stage_ids)], if result and result[0]['stage_id'][0] == current_stage_ids[0]:
'stage_id': (0, 'Unknown'), dom_in = result[0]['__domain'].pop()
'stage_id_count':nb_notes_ws result[0]['__domain'] = domain + ['|', dom_in, dom_not_in]
}] else:
# add the first stage column
result = [{
'__context': {'group_by': groupby[1:]},
'__domain': domain + [dom_not_in],
'stage_id': (current_stage_ids[0], stage_name[current_stage_ids[0]]),
'stage_id_count':nb_notes_ws
}] + result
else: # if stage_ids is empty else: # if stage_ids is empty
@ -156,7 +163,7 @@ class note_note(osv.osv):
result = [{ #notes for unknown stage result = [{ #notes for unknown stage
'__context': {'group_by': groupby[1:]}, '__context': {'group_by': groupby[1:]},
'__domain': domain, '__domain': domain,
'stage_id': (0, 'Unknown'), 'stage_id': False,
'stage_id_count':nb_notes_ws 'stage_id_count':nb_notes_ws
}] }]
else: else:
@ -187,9 +194,12 @@ class res_users(osv.Model):
model_id = data_obj.get_object_reference(cr, uid, 'base', 'group_user') #Employee Group model_id = data_obj.get_object_reference(cr, uid, 'base', 'group_user') #Employee Group
group_id = model_id and model_id[1] or False group_id = model_id and model_id[1] or False
if group_id in [x.id for x in user.groups_id]: if group_id in [x.id for x in user.groups_id]:
for note_xml_id in ['note_stage_01','note_stage_02','note_stage_03','note_stage_04']: for note_xml_id in ['note_stage_00','note_stage_01','note_stage_02','note_stage_03','note_stage_04']:
data_id = data_obj._get_id(cr, uid, 'note', note_xml_id) try:
data_id = data_obj._get_id(cr, uid, 'note', note_xml_id)
except ValueError:
continue
stage_id = data_obj.browse(cr, uid, data_id, context=context).res_id stage_id = data_obj.browse(cr, uid, data_id, context=context).res_id
note_obj.copy(cr, uid, stage_id, default = { note_obj.copy(cr, uid, stage_id, default = {
'user_id': user_id}, context=context) 'user_id': user_id}, context=context)
return user_id return user_id

View File

@ -2,6 +2,12 @@
<openerp> <openerp>
<data> <data>
<record model="note.stage" id="note_stage_00">
<field name="name">New</field>
<field name="sequence" eval="0"/>
<field name="user_id" eval="ref('base.user_root')"/>
</record>
<record model="note.stage" id="note_stage_01"> <record model="note.stage" id="note_stage_01">
<field name="name">Today</field> <field name="name">Today</field>
<field name="sequence">1</field> <field name="sequence">1</field>

View File

@ -43,7 +43,7 @@
z-index: 1000; z-index: 1000;
} }
.oe_pad.oe_configured .oe_pad_content.oe_editing{ .oe_pad .oe_pad_content.oe_editing{
border: solid 1px #c4c4c4; border: solid 1px #c4c4c4;
height:500px; height:500px;
-webkit-box-shadow: 0 5px 10px rgba(0,0,0,0.1); -webkit-box-shadow: 0 5px 10px rgba(0,0,0,0.1);
@ -53,7 +53,7 @@
box-shadow: 0 5px 10px rgba(0,0,0,0.1); box-shadow: 0 5px 10px rgba(0,0,0,0.1);
} }
.oe_pad.oe_configured.oe_pad_fullscreen .oe_pad_content { .oe_pad.oe_pad_fullscreen .oe_pad_content {
height: 100%; height: 100%;
border: none; border: none;
-webkit-box-shadow: none; -webkit-box-shadow: none;
@ -63,7 +63,7 @@
box-shadow: none; box-shadow: none;
} }
.oe_pad.oe_unconfigured > p { .oe_pad .oe_unconfigured {
text-align: center; text-align: center;
opacity: 0.75; opacity: 0.75;
} }

View File

@ -9,6 +9,7 @@ openerp.pad = function(instance) {
this.on("change:configured", this, this.switch_configured); this.on("change:configured", this, this.switch_configured);
}, },
initialize_content: function() { initialize_content: function() {
var self = this;
this.switch_configured(); this.switch_configured();
this.$('.oe_pad_switch').click(function() { this.$('.oe_pad_switch').click(function() {
self.$el.toggleClass('oe_pad_fullscreen'); self.$el.toggleClass('oe_pad_fullscreen');

View File

@ -303,7 +303,7 @@ class project(osv.osv):
'sequence': 10, 'sequence': 10,
'type_ids': _get_type_common, 'type_ids': _get_type_common,
'alias_model': 'project.task', 'alias_model': 'project.task',
'privacy_visibility': 'public', 'privacy_visibility': 'employees',
} }
# TODO: Why not using a SQL contraints ? # TODO: Why not using a SQL contraints ?

View File

@ -62,7 +62,7 @@
<field name="name">E-Learning Integration</field> <field name="name">E-Learning Integration</field>
<field name="user_id" ref="base.user_demo"/> <field name="user_id" ref="base.user_demo"/>
<field name="alias_model">project.task</field> <field name="alias_model">project.task</field>
<field name="privacy_visibility">public</field> <field name="privacy_visibility">employees</field>
<field name="members" eval="[(4, ref('base.user_root')), (4, ref('base.user_demo'))]"/> <field name="members" eval="[(4, ref('base.user_root')), (4, ref('base.user_demo'))]"/>
</record> </record>
@ -76,6 +76,7 @@
<field name="name">Website Design Templates</field> <field name="name">Website Design Templates</field>
<field name="user_id" ref="base.user_root"/> <field name="user_id" ref="base.user_root"/>
<field name="alias_model">project.task</field> <field name="alias_model">project.task</field>
<field name="privacy_visibility">employees</field>
<field name="members" eval="[(4, ref('base.user_root')), (4,ref('base.user_demo'))]"/> <field name="members" eval="[(4, ref('base.user_root')), (4,ref('base.user_demo'))]"/>
</record> </record>
@ -89,6 +90,7 @@
<field name="partner_id" ref="base.res_partner_7"/> <field name="partner_id" ref="base.res_partner_7"/>
<field name="name">Data Import/Export Plugin</field> <field name="name">Data Import/Export Plugin</field>
<field name="alias_model">project.task</field> <field name="alias_model">project.task</field>
<field name="privacy_visibility">followers</field>
<field name="members" eval="[(6, 0, [ <field name="members" eval="[(6, 0, [
ref('base.user_root'), ref('base.user_root'),
ref('base.user_demo')])]"/> ref('base.user_demo')])]"/>

View File

@ -106,6 +106,8 @@
<filter name="open" string="In Progress" domain="[('state','in',('draft','open'))]" help="In Progress and draft tasks" icon="terp-camera_test"/> <filter name="open" string="In Progress" domain="[('state','in',('draft','open'))]" help="In Progress and draft tasks" icon="terp-camera_test"/>
<filter string="Pending" domain="[('state','=','pending')]" context="{'show_delegated':False}" help="Pending Tasks" icon="terp-gtk-media-pause"/> <filter string="Pending" domain="[('state','=','pending')]" context="{'show_delegated':False}" help="Pending Tasks" icon="terp-gtk-media-pause"/>
<separator/> <separator/>
<filter name="message_unread" string="Unread Messages" domain="[('message_unread','=',True)]"/>
<separator/>
<filter string="Inbox" domain="[('timebox_id','=', False)]" help="Tasks having no timebox assigned yet"/> <filter string="Inbox" domain="[('timebox_id','=', False)]" help="Tasks having no timebox assigned yet"/>
<group expand="0" string="Display"> <group expand="0" string="Display">
<filter string="Show Context" name="context_show" context="{'context_show': True}" domain="[]" icon="terp-camera_test" help="Show the context field"/> <filter string="Show Context" name="context_show" context="{'context_show': True}" domain="[]" icon="terp-camera_test" help="Show the context field"/>

View File

@ -69,27 +69,15 @@
<attribute name="invisible">False</attribute> <attribute name="invisible">False</attribute>
<attribute name="groups">sale.group_delivery_invoice_address</attribute> <attribute name="groups">sale.group_delivery_invoice_address</attribute>
</xpath> </xpath>
<xpath expr="//field[@name='use_parent_address']" position="attributes"> <!-- Version-specific hacks to avoid breaking view inheritance when the sale module
is installed on top of an older 7.0 version of the base module
(as the second embedded div_type was added later in the 7.0 release)
TODO: remove the hacks in trunk -->
<xpath expr="//div[@name='div_type'][field[@name='use_parent_address']] | //field[@name='child_ids']//div[@name='div_type']" position="attributes">
<attribute name="invisible">False</attribute> <attribute name="invisible">False</attribute>
<attribute name="groups">sale.group_delivery_invoice_address</attribute> <attribute name="groups">sale.group_delivery_invoice_address</attribute>
</xpath> </xpath>
<xpath expr="//label[@for='use_parent_address']" position="attributes"> <xpath expr="//label[@for='type'][following-sibling::div[@name='div_type']/field[@name='use_parent_address']] | //field[@name='child_ids']//label[@for='type']" position="attributes">
<attribute name="invisible">False</attribute>
<attribute name="groups">sale.group_delivery_invoice_address</attribute>
</xpath>
<xpath expr="//field[@name='child_ids']//field[@name='use_parent_address']" position="attributes">
<attribute name="invisible">False</attribute>
<attribute name="groups">sale.group_delivery_invoice_address</attribute>
</xpath>
<xpath expr="//field[@name='child_ids']//label[@for='use_parent_address']" position="attributes">
<attribute name="invisible">False</attribute>
<attribute name="groups">sale.group_delivery_invoice_address</attribute>
</xpath>
<xpath expr="//field[@name='child_ids']//div[@name='div_type']" position="attributes">
<attribute name="invisible">False</attribute>
<attribute name="groups">sale.group_delivery_invoice_address</attribute>
</xpath>
<xpath expr="//field[@name='child_ids']//label[@for='type']" position="attributes">
<attribute name="invisible">False</attribute> <attribute name="invisible">False</attribute>
<attribute name="groups">sale.group_delivery_invoice_address</attribute> <attribute name="groups">sale.group_delivery_invoice_address</attribute>
</xpath> </xpath>

View File

@ -52,5 +52,17 @@
</field> </field>
</record> </record>
<record model="ir.ui.view" id="view_invoice_form_analytic_inherit">
<field name="name">account.invoice.form.analytic.inherit</field>
<field name="model">account.invoice</field>
<field name="inherit_id" ref="account.invoice_form"/>
<field name="arch" type="xml">
<field name="account_analytic_id" position="replace">
<field name="analytics_id" context="{'journal_id':parent.journal_id}" domain="[('plan_id','&lt;&gt;',False)]" groups="analytic.group_analytic_accounting"/>
</field>
</field>
</record>
</data> </data>
</openerp> </openerp>

View File

@ -16,6 +16,11 @@
</field> </field>
</record> </record>
<!-- add needaction_menu_ref to reload quotation needaction when opportunity needaction is reloaded -->
<record model="ir.actions.act_window" id="crm.crm_case_category_act_oppor11">
<field name="context">{'stage_type': 'opportunity', 'default_type': 'opportunity', 'default_user_id': uid, 'needaction_menu_ref': 'sale.menu_sale_quotations'}</field>
</record>
<record model="ir.ui.view" id="sale_view_inherit123"> <record model="ir.ui.view" id="sale_view_inherit123">
<field name="name">sale.order.inherit</field> <field name="name">sale.order.inherit</field>
<field name="model">sale.order</field> <field name="model">sale.order</field>

View File

@ -2412,14 +2412,14 @@ class stock_move(osv.osv):
# or if it's the same as that of the secondary amount being posted. # or if it's the same as that of the secondary amount being posted.
account_obj = self.pool.get('account.account') account_obj = self.pool.get('account.account')
src_acct, dest_acct = account_obj.browse(cr, uid, [src_account_id, dest_account_id], context=context) src_acct, dest_acct = account_obj.browse(cr, uid, [src_account_id, dest_account_id], context=context)
src_main_currency_id = src_acct.company_id.currency_id.id src_main_currency_id = src_acct.currency_id and src_acct.currency_id.id or src_acct.company_id.currency_id.id
dest_main_currency_id = dest_acct.company_id.currency_id.id dest_main_currency_id = dest_acct.currency_id and dest_acct.currency_id.id or dest_acct.company_id.currency_id.id
cur_obj = self.pool.get('res.currency') cur_obj = self.pool.get('res.currency')
if reference_currency_id != src_main_currency_id: if reference_currency_id != src_main_currency_id:
# fix credit line: # fix credit line:
credit_line_vals['credit'] = cur_obj.compute(cr, uid, reference_currency_id, src_main_currency_id, reference_amount, context=context) credit_line_vals['credit'] = cur_obj.compute(cr, uid, reference_currency_id, src_main_currency_id, reference_amount, context=context)
if (not src_acct.currency_id) or src_acct.currency_id.id == reference_currency_id: if (not src_acct.currency_id) or src_acct.currency_id.id == reference_currency_id:
credit_line_vals.update(currency_id=reference_currency_id, amount_currency=reference_amount) credit_line_vals.update(currency_id=reference_currency_id, amount_currency=-reference_amount)
if reference_currency_id != dest_main_currency_id: if reference_currency_id != dest_main_currency_id:
# fix debit line: # fix debit line:
debit_line_vals['debit'] = cur_obj.compute(cr, uid, reference_currency_id, dest_main_currency_id, reference_amount, context=context) debit_line_vals['debit'] = cur_obj.compute(cr, uid, reference_currency_id, dest_main_currency_id, reference_amount, context=context)