diff --git a/addons/account/account.py b/addons/account/account.py
index c11d7394100..75041705547 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -2146,8 +2146,8 @@ class account_model_line(osv.osv):
_description = "Account Model Entries"
_columns = {
'name': fields.char('Name', size=64, required=True),
- 'sequence': fields.integer('Sequence', required=True, help="The sequence field is used to order the resources from lower sequences to higher ones"),
- 'quantity': fields.float('Quantity', digits_compute=dp.get_precision('Account'), help="The optional quantity on entries"),
+ 'sequence': fields.integer('Sequence', required=True, help="The sequence field is used to order the resources from lower sequences to higher ones."),
+ 'quantity': fields.float('Quantity', digits_compute=dp.get_precision('Account'), help="The optional quantity on entries."),
'debit': fields.float('Debit', digits_compute=dp.get_precision('Account')),
'credit': fields.float('Credit', digits_compute=dp.get_precision('Account')),
'account_id': fields.many2one('account.account', 'Account', required=True, ondelete="cascade"),
@@ -2156,7 +2156,7 @@ class account_model_line(osv.osv):
'amount_currency': fields.float('Amount Currency', help="The amount expressed in an optional other currency."),
'currency_id': fields.many2one('res.currency', 'Currency'),
'partner_id': fields.many2one('res.partner', 'Partner'),
- 'date_maturity': fields.selection([('today','Date of the day'), ('partner','Partner Payment Term')], 'Maturity date', help="The maturity date of the generated entries for this model. You can choose between the creation date or the creation date of the entries plus the partner payment terms."),
+ 'date_maturity': fields.selection([('today','Date of the day'), ('partner','Partner Payment Term')], 'Maturity Date', help="The maturity date of the generated entries for this model. You can choose between the creation date or the creation date of the entries plus the partner payment terms."),
}
_order = 'sequence'
_sql_constraints = [
diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index bab2f43060f..e0a355c35bf 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -454,7 +454,7 @@
-
+
diff --git a/addons/account/wizard/account_report_aged_partner_balance.py b/addons/account/wizard/account_report_aged_partner_balance.py
index 59784e6e15d..4e6c6dea752 100644
--- a/addons/account/wizard/account_report_aged_partner_balance.py
+++ b/addons/account/wizard/account_report_aged_partner_balance.py
@@ -31,7 +31,7 @@ class account_aged_trial_balance(osv.osv_memory):
_description = 'Account Aged Trial balance Report'
_columns = {
- 'period_length':fields.integer('Period length (days)', required=True),
+ 'period_length':fields.integer('Period Length (days)', required=True),
'direction_selection': fields.selection([('past','Past'),
('future','Future')],
'Analysis Direction', required=True),
diff --git a/addons/account/wizard/account_report_common.py b/addons/account/wizard/account_report_common.py
index 7a8a0365208..42153c096e6 100644
--- a/addons/account/wizard/account_report_common.py
+++ b/addons/account/wizard/account_report_common.py
@@ -30,11 +30,11 @@ class account_common_report(osv.osv_memory):
_description = "Account Common Report"
_columns = {
- 'chart_account_id': fields.many2one('account.account', 'Chart of account', help='Select Charts of Accounts', required=True, domain = [('parent_id','=',False)]),
- 'fiscalyear_id': fields.many2one('account.fiscalyear', 'Fiscal year', help='Keep empty for all open fiscal year'),
+ 'chart_account_id': fields.many2one('account.account', 'Chart of Account', help='Select Charts of Accounts', required=True, domain = [('parent_id','=',False)]),
+ 'fiscalyear_id': fields.many2one('account.fiscalyear', 'Fiscal Year', help='Keep empty for all open fiscal year'),
'filter': fields.selection([('filter_no', 'No Filters'), ('filter_date', 'Date'), ('filter_period', 'Periods')], "Filter by", required=True),
- 'period_from': fields.many2one('account.period', 'Start period'),
- 'period_to': fields.many2one('account.period', 'End period'),
+ 'period_from': fields.many2one('account.period', 'Start Period'),
+ 'period_to': fields.many2one('account.period', 'End Period'),
'journal_ids': fields.many2many('account.journal', 'account_common_journal_rel', 'account_id', 'journal_id', 'Journals', required=True),
'date_from': fields.date("Start Date"),
'date_to': fields.date("End Date"),
diff --git a/addons/account/wizard/account_report_common_account.py b/addons/account/wizard/account_report_common_account.py
index 7205a9e53bf..0040d563bdd 100644
--- a/addons/account/wizard/account_report_common_account.py
+++ b/addons/account/wizard/account_report_common_account.py
@@ -28,7 +28,7 @@ class account_common_account_report(osv.osv_memory):
_columns = {
'display_account': fields.selection([('bal_all','All'), ('bal_movement','With movements'),
('bal_solde','With balance is not equal to 0'),
- ],'Display accounts', required=True),
+ ],'Display Accounts', required=True),
}
_defaults = {
diff --git a/addons/account/wizard/account_report_general_ledger.py b/addons/account/wizard/account_report_general_ledger.py
index c08894bfadd..1e17a66dd85 100644
--- a/addons/account/wizard/account_report_general_ledger.py
+++ b/addons/account/wizard/account_report_general_ledger.py
@@ -28,10 +28,10 @@ class account_report_general_ledger(osv.osv_memory):
_columns = {
'landscape': fields.boolean("Landscape Mode"),
- 'initial_balance': fields.boolean("Include initial balances",
+ 'initial_balance': fields.boolean("Include Initial Balances",
help='It adds initial balance row on report which display previous sum amount of debit/credit/balance'),
'amount_currency': fields.boolean("With Currency", help="It adds the currency column if the currency is different then the company currency"),
- 'sortby': fields.selection([('sort_date', 'Date'), ('sort_journal_partner', 'Journal & Partner')], 'Sort By', required=True),
+ 'sortby': fields.selection([('sort_date', 'Date'), ('sort_journal_partner', 'Journal & Partner')], 'Sort by', required=True),
}
_defaults = {
'landscape': True,
diff --git a/addons/account/wizard/account_report_partner_ledger.py b/addons/account/wizard/account_report_partner_ledger.py
index 1a09a6344f4..590ba80bd02 100644
--- a/addons/account/wizard/account_report_partner_ledger.py
+++ b/addons/account/wizard/account_report_partner_ledger.py
@@ -30,10 +30,10 @@ class account_partner_ledger(osv.osv_memory):
_description = 'Account Partner Ledger'
_columns = {
- 'initial_balance': fields.boolean('Include initial balances',
+ 'initial_balance': fields.boolean('Include Initial Balances',
help='It adds initial balance row on report which display previous sum amount of debit/credit/balance'),
'reconcil': fields.boolean('Include Reconciled Entries', help='Consider reconciled entries'),
- 'page_split': fields.boolean('One Partner Per Page', help='Display Ledger Report with One partner per page'),
+ 'page_split': fields.boolean('One Partner per Page', help='Display Ledger Report with One partner per page'),
'amount_currency': fields.boolean("With Currency", help="It adds the currency column if the currency is different then the company currency"),
}
diff --git a/addons/account/wizard/account_report_print_journal.py b/addons/account/wizard/account_report_print_journal.py
index b1ca30dc560..f4a5fcaf9f9 100644
--- a/addons/account/wizard/account_report_print_journal.py
+++ b/addons/account/wizard/account_report_print_journal.py
@@ -29,7 +29,7 @@ class account_print_journal(osv.osv_memory):
_columns = {
'sort_selection': fields.selection([('date', 'Date'),
('ref', 'Reference Number'),],
- 'Entries Sorted By', required=True),
+ 'Entries Sorted by', required=True),
}
_defaults = {
'sort_selection': 'date',
diff --git a/addons/account/wizard/account_vat.py b/addons/account/wizard/account_vat.py
index 3aecfb04a30..186f79cad6d 100644
--- a/addons/account/wizard/account_vat.py
+++ b/addons/account/wizard/account_vat.py
@@ -28,7 +28,7 @@ class account_vat_declaration(osv.osv_memory):
_columns = {
'based_on': fields.selection([('invoices', 'Invoices'),
('payments', 'Payments'),],
- 'Based On', required=True),
+ 'Based on', required=True),
'chart_tax_id': fields.many2one('account.tax.code', 'Chart of Tax', help='Select Charts of Taxes', required=True, domain = [('parent_id','=', False)]),
}
diff --git a/addons/account_budget/report/budget_report.py b/addons/account_budget/report/budget_report.py
index 8b98b067bb3..7681f9268d9 100644
--- a/addons/account_budget/report/budget_report.py
+++ b/addons/account_budget/report/budget_report.py
@@ -67,6 +67,8 @@ class budget_report(report_sxw.rml_parse):
context = {'wizard_date_from': d_from, 'wizard_date_to': d_to}
for i in range(0, len(an_ids)):
+ if not an_ids[i][0]:
+ continue
analytic_name = acc_analytic_obj.browse(self.cr, self.uid, [an_ids[i][0]])
res={
'b_id': '-1',
diff --git a/addons/account_budget/report/crossovered_budget_report.py b/addons/account_budget/report/crossovered_budget_report.py
index 8a3b745e32a..b70b7da34bb 100644
--- a/addons/account_budget/report/crossovered_budget_report.py
+++ b/addons/account_budget/report/crossovered_budget_report.py
@@ -72,6 +72,8 @@ class budget_report(report_sxw.rml_parse):
context = {'wizard_date_from': d_from, 'wizard_date_to': d_to}
for i in range(0, len(an_ids)):
+ if not an_ids[i][0]:
+ continue
analytic_name = acc_analytic_obj.browse(self.cr, self.uid, [an_ids[i][0]])
res={
'b_id': '-1',
diff --git a/addons/account_payment/account_payment.py b/addons/account_payment/account_payment.py
index f3259f846cc..8437622e93e 100644
--- a/addons/account_payment/account_payment.py
+++ b/addons/account_payment/account_payment.py
@@ -328,7 +328,7 @@ class payment_line(osv.osv):
required=True, help='Payment amount in the partner currency'),
'currency': fields.many2one('res.currency','Partner Currency', required=True),
'company_currency': fields.many2one('res.currency', 'Company Currency', readonly=True),
- 'bank_id': fields.many2one('res.partner.bank', 'Destination Bank account'),
+ 'bank_id': fields.many2one('res.partner.bank', 'Destination Bank Account'),
'order_id': fields.many2one('payment.order', 'Order', required=True,
ondelete='cascade', select=True),
'partner_id': fields.many2one('res.partner', string="Partner", required=True, help='The Ordering Customer'),
diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py
index 9bfee8b8d49..b4422cd8051 100644
--- a/addons/account_voucher/account_voucher.py
+++ b/addons/account_voucher/account_voucher.py
@@ -379,6 +379,8 @@ class account_voucher(osv.osv):
account_id = partner.property_account_payable.id
tr_type = 'purchase'
else:
+ if not journal.default_credit_account_id or not journal.default_debit_account_id:
+ raise osv.except_osv(_('Error !'), _('Please define default credit/debit account on the %s !') % (journal.name))
account_id = journal.default_credit_account_id.id or journal.default_debit_account_id.id
tr_type = 'receipt'
diff --git a/addons/base_calendar/base_calendar.py b/addons/base_calendar/base_calendar.py
index 9693a0d5c0f..095a1654991 100644
--- a/addons/base_calendar/base_calendar.py
+++ b/addons/base_calendar/base_calendar.py
@@ -1296,7 +1296,7 @@ e.g.: Every other month on the last Sunday of the month for 10 occurrences:\
if name == "UNTIL":
is_until = True
value = parser.parse(value)
- rrule_until_date = parser.parse(value.strftime("%Y-%m-%d"))
+ rrule_until_date = parser.parse(value.strftime("%Y-%m-%d %H:%M:%S"))
if until_date and until_date >= rrule_until_date:
until_date = rrule_until_date
if until_date:
diff --git a/addons/base_calendar/wizard/base_calendar_invite_attendee.py b/addons/base_calendar/wizard/base_calendar_invite_attendee.py
index ea4d5aca85f..59bde615645 100644
--- a/addons/base_calendar/wizard/base_calendar_invite_attendee.py
+++ b/addons/base_calendar/wizard/base_calendar_invite_attendee.py
@@ -140,7 +140,7 @@ send an Email to Invited Person')
if not mail_to:
name = map(lambda x: x[1], filter(lambda x: type==x[0], \
self._columns['type'].selection))
- raise osv.except_osv(_('Error!'), ("%s must have an email Address to send mail") %(name[0]))
+ raise osv.except_osv(_('Error!'), ("%s must have an email address to send mail") %(name[0]))
att_obj._send_mail(cr, uid, attendees, mail_to, \
email_from = current_user.user_email or tools.config.get('email_from', False))
diff --git a/addons/base_module_doc_rst/report/report_proximity_graph.py b/addons/base_module_doc_rst/report/report_proximity_graph.py
index 2d3704fd5b7..d14d709f501 100644
--- a/addons/base_module_doc_rst/report/report_proximity_graph.py
+++ b/addons/base_module_doc_rst/report/report_proximity_graph.py
@@ -48,7 +48,7 @@ class report_graph(report.interface.report_int):
if id:
get_dpend_module(id[0].id)
get_dpend_module(module_id)
- graph = pydot.Dot(graph_type='digraph',fontsize='10', label="\\nProximity Graph. \\n\\nGray Color:Official Modules, Red Color:Extra Addons Modules, Blue Color:Community Modules, Purple Color:Unknow Modules"
+ graph = pydot.Dot(graph_type='digraph',fontsize='10', label="\\nProximity Graph. \\n\\nGray Color-Official Modules, Red Color-Extra Addons Modules, Blue Color-Community Modules, Purple Color-Unknow Modules"
, center='1')
for node in nodes:
if node[1] == "official":
diff --git a/addons/caldav/wizard/caldav_browse_view.xml b/addons/caldav/wizard/caldav_browse_view.xml
index 0a7e6269fe2..53af6029883 100644
--- a/addons/caldav/wizard/caldav_browse_view.xml
+++ b/addons/caldav/wizard/caldav_browse_view.xml
@@ -15,8 +15,10 @@
-
-
+
+
+
+
diff --git a/addons/crm/crm.py b/addons/crm/crm.py
index f25e4c1a0bf..7014fd77517 100644
--- a/addons/crm/crm.py
+++ b/addons/crm/crm.py
@@ -199,6 +199,13 @@ class crm_case(object):
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
return user.context_section_id.id or False
+ def unlink(self, cr, uid, ids, context={}):
+ for case in self.browse(cr, uid, ids, context):
+ if (not case.section_id.allow_unlink) and (case.state <> 'draft'):
+ raise osv.except_osv(_('Warning !'),
+ _('You can not delete this case. You should better cancel it.'))
+ return super(crm_case, self).unlink(cr, uid, ids, context)
+
def _find_next_stage(self, cr, uid, stage_list, index, current_seq, stage_pool, context=None):
if index + 1 == len(stage_list):
return False
diff --git a/addons/crm/crm_meeting_view.xml b/addons/crm/crm_meeting_view.xml
index aba69889f57..baa022a7d39 100644
--- a/addons/crm/crm_meeting_view.xml
+++ b/addons/crm/crm_meeting_view.xml
@@ -44,7 +44,7 @@
-
+
@@ -102,7 +102,7 @@
-
+
-
+
diff --git a/addons/crm/crm_opportunity_view.xml b/addons/crm/crm_opportunity_view.xml
index b49edb850da..0ab4c10e6ff 100644
--- a/addons/crm/crm_opportunity_view.xml
+++ b/addons/crm/crm_opportunity_view.xml
@@ -136,6 +136,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -188,25 +208,7 @@
context="{'mail':'new', 'model': 'crm.lead'}"
icon="terp-mail-message-new" type="action" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -253,6 +255,9 @@
+
diff --git a/addons/crm/crm_view.xml b/addons/crm/crm_view.xml
index 685019a3001..cc9005d69bf 100644
--- a/addons/crm/crm_view.xml
+++ b/addons/crm/crm_view.xml
@@ -3,7 +3,7 @@
+ groups="base.group_sale_manager,base.group_sale_salesman"/>
diff --git a/addons/crm/wizard/crm_lead_to_opportunity.py b/addons/crm/wizard/crm_lead_to_opportunity.py
index 33ec426d7d6..4b6e047f475 100644
--- a/addons/crm/wizard/crm_lead_to_opportunity.py
+++ b/addons/crm/wizard/crm_lead_to_opportunity.py
@@ -105,7 +105,7 @@ class crm_lead2opportunity_partner(osv.osv_memory):
for lead in lead_obj.browse(cr, uid, context.get('active_ids', []), context=context):
if lead.state in ['done', 'cancel']:
- raise osv.except_osv(_("Warning !"), _("Closed/Cancelled Leads Could not convert into Opportunity"))
+ raise osv.except_osv(_("Warning !"), _("Closed/Cancelled Leads can not be converted into Opportunity"))
return False
def _convert(self, cr, uid, ids, lead, partner_id, stage_ids, context=None):
diff --git a/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml b/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml
index 23ddaad5bfe..9a623d2eaab 100644
--- a/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml
+++ b/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml
@@ -16,7 +16,7 @@
-
+
diff --git a/addons/crm/wizard/crm_partner_to_opportunity_view.xml b/addons/crm/wizard/crm_partner_to_opportunity_view.xml
index 7ceb9bc40d9..762303f06ba 100644
--- a/addons/crm/wizard/crm_partner_to_opportunity_view.xml
+++ b/addons/crm/wizard/crm_partner_to_opportunity_view.xml
@@ -8,7 +8,7 @@
crm.partner2opportunity
form
-