[MERGE] from trunk

bzr revid: fva@openerp.com-20121002101440-k67jsemnx4d01tr3
This commit is contained in:
Frédéric van der Essen
2012-10-02 12:14:40 +02:00
22 changed files with 1450 additions and 855 deletions
+4 -1
View File
@@ -38,7 +38,10 @@ Allow users to login through Google OAuth2.
'security/ir.model.access.csv'
],
'js': ['static/src/js/auth_oauth.js'],
'css': ['static/lib/zocial/css/zocial.css'],
'css': [
'static/lib/zocial/css/zocial.css',
'static/src/css/auth_oauth.css',
],
'qweb': ['static/src/xml/auth_oauth.xml'],
'installable': True,
'auto_install': False,
+9
View File
@@ -2,6 +2,15 @@
<openerp>
<data>
<record id="provider_openerp" model="auth.oauth.provider">
<field name="name">OpenERP Accounts</field>
<field name="auth_endpoint">https://accounts.openerp.com/oauth2/auth</field>
<field name="scope">userinfo</field>
<field name="validation_endpoint">https://accounts.openerp.com/oauth2/tokeninfo</field>
<field name="data_endpoint"></field>
<field name="css_class">zocial openerp</field>
<field name="body">Sign in with OpenERP account</field>
</record>
<record id="provider_facebook" model="auth.oauth.provider">
<field name="name">Facebook Graph</field>
<field name="auth_endpoint">https://www.facebook.com/dialog/oauth</field>
+7 -4
View File
@@ -16,10 +16,13 @@ class OAuthController(openerpweb.Controller):
@openerpweb.jsonrequest
def list_providers(self, req, dbname):
registry = openerp.modules.registry.RegistryManager.get(dbname)
with registry.cursor() as cr:
providers = registry.get('auth.oauth.provider')
l = providers.read(cr, SUPERUSER_ID, providers.search(cr, SUPERUSER_ID, [('enabled','=',True)]))
try:
registry = openerp.modules.registry.RegistryManager.get(dbname)
with registry.cursor() as cr:
providers = registry.get('auth.oauth.provider')
l = providers.read(cr, SUPERUSER_ID, providers.search(cr, SUPERUSER_ID, [('enabled','=',True)]))
except Exception:
l = []
return l
@openerpweb.httprequest
+20 -10
View File
@@ -1,6 +1,7 @@
import logging
import urllib
import urlparse
import urllib2
import simplejson
@@ -20,8 +21,11 @@ class res_users(osv.Model):
}
def auth_oauth_rpc(self, cr, uid, endpoint, access_token, context=None):
params = urllib.urlencode({'access_token':access_token})
url = endpoint + '?' + params
params = urllib.urlencode({ 'access_token': access_token })
if urlparse.urlparse(endpoint)[4]:
url = endpoint + '&' + params
else:
url = endpoint + '?' + params
f = urllib2.urlopen(url)
response = f.read()
return simplejson.loads(response)
@@ -38,26 +42,32 @@ class res_users(osv.Model):
validation = self.auth_oauth_rpc(cr, uid, p.validation_endpoint, access_token)
if validation.get("error"):
raise openerp.exceptions.AccessDenied
login = validation['email']
if p.data_endpoint:
data = self.auth_oauth_rpc(cr, uid, p.data_endpoint, access_token)
validation.update(data)
# required
oauth_uid = validation['user_id']
name = self.auth_oauth_rpc(cr, uid, p.data_endpoint, access_token)['name']
credentials = (cr.dbname, login, access_token)
if not oauth_uid:
raise openerp.exceptions.AccessDenied
email = validation.get('email', 'provider_%d_user_%d' % (p.id, oauth_uid))
# optional
name = validation.get('name', email)
res = self.search(cr, uid, [("oauth_uid", "=", oauth_uid)])
if res:
self.write(cr, uid, res[0], {'oauth_access_token':access_token})
self.write(cr, uid, res[0], { 'oauth_access_token': access_token })
else:
# New user
new_user = {
'name': name,
'login': login,
'user_email': login,
'oauth_provider_id': 1,
'login': email,
'user_email': email,
'oauth_provider_id': p.id,
'oauth_uid': oauth_uid,
'oauth_access_token': access_token,
'active': True,
}
self.auth_signup_create(cr, uid, new_user)
credentials = (cr.dbname, email, access_token)
return credentials
def check_credentials(self, cr, uid, password):
@@ -0,0 +1,35 @@
.openerp .oe_application .zocial {
font: white;
}
.openerp .zocial.openerp:before {
content: "\E02E";
font-style: italic;
text-shadow: 0 1px 1px black;
}
.openerp a.zocial.openerp {
float: right;
border: 1px solid #222222;
color: white;
margin: 0;
background-color: #b92020;
background-image: -webkit-gradient(linear, left top, left bottom, from(#b92020), to(#600606));
background-image: -webkit-linear-gradient(top, #b92020, #600606);
background-image: -moz-linear-gradient(top, #b92020, #600606);
background-image: -ms-linear-gradient(top, #b92020, #600606);
background-image: -o-linear-gradient(top, #b92020, #600606);
background-image: linear-gradient(to bottom, #b92020, #600606);
-moz-border-radius: 4px;
-webkit-border-radius: 4px;
border-radius: 4px;
-moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 1px rgba(155, 155, 155, 0.4) inset;
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 1px rgba(155, 155, 155, 0.4) inset;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 1px rgba(155, 155, 155, 0.4) inset;
text-shadow: none;
font-weight: normal;
}
.openerp .oe_login .oe_oauth_provider_login_button {
margin-top: 4px;
}
+11 -3
View File
@@ -1,8 +1,9 @@
openerp.auth_oauth = function(instance) {
var QWeb = instance.web.qweb;
instance.web.Login = instance.web.Login.extend({
instance.web.Login.include({
start: function(parent, params) {
var self = this;
var d = this._super.apply(this, arguments);
this.$el.on('click', 'a.zocial', this.on_oauth_sign_in);
this.oauth_providers = [];
@@ -11,7 +12,13 @@ openerp.auth_oauth = function(instance) {
} else if(this.params.oauth_error === 2) {
this.do_warn("Authentication error","");
}
return d.then(this.do_oauth_load);
return d.then(this.do_oauth_load).fail(function() {
self.do_oauth_load([]);
});
},
on_db_loaded: function(result) {
this._super.apply(this, arguments);
this.$("form [name=db]").change(this.do_oauth_load);
},
do_oauth_load: function() {
var db = this.$("form [name=db]").val();
@@ -21,6 +28,7 @@ openerp.auth_oauth = function(instance) {
},
on_oauth_loaded: function(result) {
this.oauth_providers = result;
this.$('.oe_oauth_provider_login_button').remove();
var buttons = QWeb.render("auth_oauth.Login.button",{"widget":this});
this.$(".oe_login_pane form ul").after(buttons);
},
@@ -33,7 +41,7 @@ openerp.auth_oauth = function(instance) {
var state_object = {
d: dbname,
p: p.id
}
};
var state = JSON.stringify(state_object);
var params = {
response_type: 'token',
@@ -2,8 +2,7 @@
<templates id="template" xml:space="preserve">
<t t-name="auth_oauth.Login.button">
<t t-foreach="widget.oauth_providers" t-as="p">
<a href="#" t-att-class="p.css_class" t-att-data-index="p_index"><t t-esc="p.body"/></a>
<br/>
<a href="#" t-attf-class="oe_oauth_provider_login_button #{p.css_class}" t-att-data-index="p_index"><t t-esc="p.body"/></a>
</t>
</t>
</templates>
+15 -8
View File
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-02-08 00:36+0000\n"
"PO-Revision-Date: 2009-04-20 10:04+0000\n"
"Last-Translator: <>\n"
"PO-Revision-Date: 2012-10-01 11:08+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-08-28 05:58+0000\n"
"X-Generator: Launchpad (build 15864)\n"
"X-Launchpad-Export-Date: 2012-10-02 05:20+0000\n"
"X-Generator: Launchpad (build 16061)\n"
#. module: base_iban
#: constraint:res.partner.bank:0
@@ -23,22 +23,27 @@ msgid ""
"Please define BIC/Swift code on bank for bank type IBAN Account to make "
"valid payments"
msgstr ""
"\n"
"Definieer een BIC/Swift-code voor IBAN-rekeningen om geldige betalingen te "
"maken."
#. module: base_iban
#: code:addons/base_iban/base_iban.py:139
#, python-format
msgid "This IBAN does not pass the validation check, please verify it"
msgstr ""
"Dit IBAN-nummer voldoet niet aan de controle. Gelieve het nummer na te "
"kijken."
#. module: base_iban
#: model:res.partner.bank.type,format_layout:base_iban.bank_iban
msgid "%(bank_name)s: IBAN %(acc_number)s - BIC %(bank_bic)s"
msgstr ""
msgstr "%(bank_name)s: IBAN %(acc_number)s - BIC %(bank_bic)s"
#. module: base_iban
#: model:res.partner.bank.type.field,name:base_iban.bank_swift_field
msgid "bank_bic"
msgstr ""
msgstr "bank_bic"
#. module: base_iban
#: model:res.partner.bank.type.field,name:base_iban.bank_zip_field
@@ -67,6 +72,8 @@ msgid ""
"The IBAN does not seem to be correct. You should have entered something like "
"this %s"
msgstr ""
"Dit IBAN-nummer lijkt niet juist te zijn. U dient een nummer in te geven in "
"dit formaat %s."
#. module: base_iban
#: field:res.partner.bank,iban:0
@@ -77,7 +84,7 @@ msgstr "IBAN"
#: code:addons/base_iban/base_iban.py:140
#, python-format
msgid "The IBAN is invalid, it should begin with the country code"
msgstr ""
msgstr "Dit IBAN-nummer is ongeldig; het moet beginnen met de landcode."
#. module: base_iban
#: model:res.partner.bank.type,name:base_iban.bank_iban
@@ -87,7 +94,7 @@ msgstr "IBAN-rekening"
#. module: base_iban
#: constraint:res.partner.bank:0
msgid "The RIB and/or IBAN is not valid"
msgstr ""
msgstr "RIB en/of IBAN is niet geldig."
#, python-format
#~ msgid "The IBAN is invalid, It should begin with the country code"
+62 -43
View File
@@ -7,44 +7,44 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-02-08 00:36+0000\n"
"PO-Revision-Date: 2009-04-24 15:11+0000\n"
"Last-Translator: <>\n"
"PO-Revision-Date: 2012-10-01 11:22+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-08-28 06:08+0000\n"
"X-Generator: Launchpad (build 15864)\n"
"X-Launchpad-Export-Date: 2012-10-02 05:20+0000\n"
"X-Generator: Launchpad (build 16061)\n"
#. module: base_setup
#: field:user.preferences.config,menu_tips:0
msgid "Display Tips"
msgstr ""
msgstr "Tips weergeven"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
msgid "Guest"
msgstr ""
msgstr "Gast"
#. module: base_setup
#: model:ir.model,name:base_setup.model_product_installer
msgid "product.installer"
msgstr ""
msgstr "product.installer"
#. module: base_setup
#: selection:product.installer,customers:0
msgid "Create"
msgstr ""
msgstr "Maken"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
msgid "Member"
msgstr ""
msgstr "Lid"
#. module: base_setup
#: field:migrade.application.installer.modules,sync_google_contact:0
msgid "Sync Google Contact"
msgstr ""
msgstr "Google-contacten synchroniseren"
#. module: base_setup
#: help:user.preferences.config,context_tz:0
@@ -52,21 +52,23 @@ msgid ""
"Set default for new user's timezone, used to perform timezone conversions "
"between the server and the client."
msgstr ""
"Stel de standaardtijdzone in voor nieuwe gebruikers. Deze wordt gebruikt om "
"tijdzoneconversies te doen tussen server en client."
#. module: base_setup
#: selection:product.installer,customers:0
msgid "Import"
msgstr ""
msgstr "Importeren"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
msgid "Donor"
msgstr ""
msgstr "Donor"
#. module: base_setup
#: model:ir.actions.act_window,name:base_setup.action_base_setup_company
msgid "Set Company Header and Footer"
msgstr ""
msgstr "Stel uw kop- en voettekst in"
#. module: base_setup
#: model:ir.actions.act_window,help:base_setup.action_base_setup_company
@@ -75,21 +77,24 @@ msgid ""
"printed on your reports. You can click on the button 'Preview Header' in "
"order to check the header/footer of PDF documents."
msgstr ""
"Vul uw bedrijfsgegevens in (adres, logo, bankrekeningen), zodat deze worden "
"afgedrukt op uw rapporten. U kunt op de knop 'Voorbeeld koptekst' klikken om "
"de koptekst en voettekst van pdf-documenten te controleren."
#. module: base_setup
#: field:product.installer,customers:0
msgid "Customers"
msgstr ""
msgstr "Klanten"
#. module: base_setup
#: selection:user.preferences.config,view:0
msgid "Extended"
msgstr ""
msgstr "Uitgebreid"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
msgid "Patient"
msgstr ""
msgstr "Patiënt"
#. module: base_setup
#: model:ir.actions.act_window,help:base_setup.action_import_create_installer
@@ -98,26 +103,29 @@ msgid ""
"you can import your existing partners by CSV spreadsheet from \"Import "
"Data\" wizard"
msgstr ""
"Maak of importeer klanten en contactpersonen manueel vanuit dit scherm. U "
"kunt ook bestaande klanten importeren vanuit een csv-bestand met de wizard "
"\"Gegevens importeren\"."
#. module: base_setup
#: view:user.preferences.config:0
msgid "Define Users's Preferences"
msgstr ""
msgstr "Stel de gebruikersvoorkeuren in"
#. module: base_setup
#: model:ir.actions.act_window,name:base_setup.action_user_preferences_config_form
msgid "Define default users preferences"
msgstr ""
msgstr "Stel de standaard gebruikersvoorkeuren in"
#. module: base_setup
#: help:migrade.application.installer.modules,import_saleforce:0
msgid "For Import Saleforce"
msgstr ""
msgstr "Voor Salesforce-import"
#. module: base_setup
#: help:migrade.application.installer.modules,quickbooks_ippids:0
msgid "For Quickbooks Ippids"
msgstr ""
msgstr "Voor Quickboos Ippids"
#. module: base_setup
#: help:user.preferences.config,view:0
@@ -126,6 +134,9 @@ msgid ""
"simplified interface, which has less features but is easier. You can always "
"switch later from the user preferences."
msgstr ""
"Als u OpenERP voor de eerste keer gebruikt, raden wij u aan de eenvoudige "
"weergave te kiezen, met minder functies en een eenvoudige werking. U kunt "
"deze keuze altijd wijzigen via de gebruikersvoorkeuren."
#. module: base_setup
#: view:base.setup.terminology:0
@@ -136,12 +147,12 @@ msgstr "res_config_contents"
#. module: base_setup
#: field:user.preferences.config,view:0
msgid "Interface"
msgstr ""
msgstr "Interface"
#. module: base_setup
#: model:ir.model,name:base_setup.model_migrade_application_installer_modules
msgid "migrade.application.installer.modules"
msgstr ""
msgstr "migrade.application.installer.modules"
#. module: base_setup
#: view:base.setup.terminology:0
@@ -149,21 +160,23 @@ msgid ""
"You can use this wizard to change the terminologies for customers in the "
"whole application."
msgstr ""
"Met deze wizard kunt u een andere benaming kiezen voor klanten, die in de "
"volledige toepassing zal worden gebruikt."
#. module: base_setup
#: selection:base.setup.terminology,partner:0
msgid "Tenant"
msgstr ""
msgstr "Huurder"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
msgid "Customer"
msgstr ""
msgstr "Klant"
#. module: base_setup
#: field:user.preferences.config,context_lang:0
msgid "Language"
msgstr ""
msgstr "Taal"
#. module: base_setup
#: help:user.preferences.config,context_lang:0
@@ -172,6 +185,9 @@ msgid ""
"available. If you want to Add new Language, you can add it from 'Load an "
"Official Translation' wizard from 'Administration' menu."
msgstr ""
"Kiest de standaardtaal voor de gebruik, als er vertalingen beschikbaar zijn. "
"Een Nieuwe taal instellen kan via het menu Beheer, Laad een officiële "
"vertaling."
#. module: base_setup
#: view:user.preferences.config:0
@@ -180,47 +196,50 @@ msgid ""
"ones. Afterwards, users are free to change those values on their own user "
"preference form."
msgstr ""
"Hiermee wijst u de standaardinstellingen toe aan nieuwe en bestaande "
"gebruikers. Een gebruiker kan deze waarden altijd wijzigen via zijn "
"voorkeuren."
#. module: base_setup
#: field:base.setup.terminology,partner:0
msgid "How do you call a Customer"
msgstr ""
msgstr "Hoe wordt een klant bij u genoemd?"
#. module: base_setup
#: field:migrade.application.installer.modules,quickbooks_ippids:0
msgid "Quickbooks Ippids"
msgstr ""
msgstr "Quickbooks Ippids"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
msgid "Client"
msgstr ""
msgstr "Cliënt"
#. module: base_setup
#: field:migrade.application.installer.modules,import_saleforce:0
msgid "Import Saleforce"
msgstr ""
msgstr "Salesforce-import"
#. module: base_setup
#: field:user.preferences.config,context_tz:0
msgid "Timezone"
msgstr ""
msgstr "Tijdzone"
#. module: base_setup
#: model:ir.actions.act_window,name:base_setup.action_partner_terminology_config_form
msgid "Use another word to say \"Customer\""
msgstr ""
msgstr "Gebruik een andere benaming voor Klant"
#. module: base_setup
#: model:ir.model,name:base_setup.model_base_setup_terminology
msgid "base.setup.terminology"
msgstr ""
msgstr "base.setup.terminology"
#. module: base_setup
#: help:user.preferences.config,menu_tips:0
msgid ""
"Check out this box if you want to always display tips on each menu action"
msgstr ""
msgstr "Schakel dit vakje in als u voor elke menuactie tips wilt weergaven."
#. module: base_setup
#: field:base.setup.terminology,config_logo:0
@@ -233,52 +252,52 @@ msgstr "Afbeelding"
#. module: base_setup
#: model:ir.model,name:base_setup.model_user_preferences_config
msgid "user.preferences.config"
msgstr ""
msgstr "user.preferences.config"
#. module: base_setup
#: model:ir.actions.act_window,name:base_setup.action_config_access_other_user
msgid "Create Additional Users"
msgstr ""
msgstr "Extra gebruikers maken"
#. module: base_setup
#: model:ir.actions.act_window,name:base_setup.action_import_create_installer
msgid "Create or Import Customers"
msgstr ""
msgstr "Klanten maken of importeren"
#. module: base_setup
#: field:migrade.application.installer.modules,import_sugarcrm:0
msgid "Import Sugarcrm"
msgstr ""
msgstr "SugarCRM-import"
#. module: base_setup
#: help:product.installer,customers:0
msgid "Import or create customers"
msgstr ""
msgstr "Klanten maken of importeren"
#. module: base_setup
#: selection:user.preferences.config,view:0
msgid "Simplified"
msgstr ""
msgstr "Eenvoudig"
#. module: base_setup
#: help:migrade.application.installer.modules,import_sugarcrm:0
msgid "For Import Sugarcrm"
msgstr ""
msgstr "Voor SugarCRM-import"
#. module: base_setup
#: selection:base.setup.terminology,partner:0
msgid "Partner"
msgstr ""
msgstr "Relatie"
#. module: base_setup
#: view:base.setup.terminology:0
msgid "Specify Your Terminology"
msgstr ""
msgstr "Kies uw terminologie"
#. module: base_setup
#: help:migrade.application.installer.modules,sync_google_contact:0
msgid "For Sync Google Contact"
msgstr ""
msgstr "Voor synchronisatie met Google-contacten"
#~ msgid "Logo"
#~ msgstr "Logo"
+5 -5
View File
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-02-08 00:36+0000\n"
"PO-Revision-Date: 2009-04-24 15:11+0000\n"
"Last-Translator: <>\n"
"PO-Revision-Date: 2012-10-01 11:23+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-08-28 06:07+0000\n"
"X-Generator: Launchpad (build 15864)\n"
"X-Launchpad-Export-Date: 2012-10-02 05:20+0000\n"
"X-Generator: Launchpad (build 16061)\n"
#. module: base_vat
#: code:addons/base_vat/base_vat.py:141
@@ -34,7 +34,7 @@ msgstr "De naam van de firma moet uniek zijn"
#. module: base_vat
#: constraint:res.partner:0
msgid "Error ! You cannot create recursive associated members."
msgstr ""
msgstr "U kunt niet dezelfde verenigingsleden maken."
#. module: base_vat
#: field:res.company,vat_check_vies:0
+23
View File
@@ -0,0 +1,23 @@
# Dutch (Belgium) translation for openobject-addons
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2012-02-08 00:36+0000\n"
"PO-Revision-Date: 2012-10-01 11:24+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) <Unknown>\n"
"Language-Team: Dutch (Belgium) <nl_BE@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-10-02 05:20+0000\n"
"X-Generator: Launchpad (build 16061)\n"
#. module: claim_from_delivery
#: model:ir.actions.act_window,name:claim_from_delivery.action_claim_from_delivery
msgid "Claim"
msgstr "Klacht"
+726 -570
View File
File diff suppressed because it is too large Load Diff
@@ -11,9 +11,11 @@
!assert {model: crm.lead, id: crm.crm_case_4, string: Lead in open state}:
- state == "open"
-
I create partner from lead.
I fill in a lead2partner wizard.
-
!record {model: crm.lead2partner, id: crm_lead2partner_id1, context: '{"active_model": "crm.lead", "active_ids": [ref("crm_case_4")]}'}:
-
I create a partner from the lead2partner wizard.
-
!python {model: crm.lead2partner}: |
context.update({'active_model': 'crm.lead', 'active_ids': [ref('crm_case_4')], 'active_id': ref('crm_case_4')})
File diff suppressed because one or more lines are too long
+99 -80
View File
@@ -1,30 +1,33 @@
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
# * l10n_be
#
# * l10n_be
# Els Van Vossel <evv@agaplan.eu>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-12-23 09:56+0000\n"
"PO-Revision-Date: 2009-02-03 14:48+0000\n"
"Last-Translator: Niels Huylebroeck <Unknown>\n"
"Language-Team: \n"
"PO-Revision-Date: 2012-10-01 14:57+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) <Unknown>\n"
"Language-Team: Els Van Vossel\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-08-28 06:22+0000\n"
"X-Generator: Launchpad (build 15864)\n"
"X-Launchpad-Export-Date: 2012-10-02 05:20+0000\n"
"X-Generator: Launchpad (build 16061)\n"
"Language: nl\n"
#. module: l10n_be
#: field:partner.vat.intra,test_xml:0
msgid "Test XML file"
msgstr "Test XML bestand"
msgstr "Test XML-bestand"
#. module: l10n_be
#: view:partner.vat.list_13:0
msgid "You can remove customers which you do not want in exported xml file"
msgstr ""
"U kunt klanten die u niet wilt, verwijderen uit het geëxporteerde xml-"
"bestand."
#. module: l10n_be
#: view:partner.vat_13:0
@@ -32,34 +35,36 @@ msgid ""
"This wizard will create an XML file for VAT details and total invoiced "
"amounts per partner."
msgstr ""
"Deze assistent zal een XML-bestand maken met de btw-gegevens en totaal "
"gefactureerde bedragen per relatie."
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_tiers_receiv
msgid "Tiers - Recevable"
msgstr ""
msgstr "Derden - te ontvangen"
#. module: l10n_be
#: code:addons/l10n_be/wizard/l10n_be_vat_intra.py:102
#, python-format
msgid "Wrong Period Code"
msgstr ""
msgstr "Verkeerde periode"
#. module: l10n_be
#: code:addons/l10n_be/wizard/l10n_be_partner_vat_listing.py:52
#: code:addons/l10n_be/wizard/l10n_be_vat_intra.py:109
#, python-format
msgid "No partner has a VAT Number asociated with him."
msgstr ""
msgstr "Er is geen relatie met een btw-nummer."
#. module: l10n_be
#: constraint:res.company:0
msgid "Error! You can not create recursive companies."
msgstr ""
msgstr "U kunt niet dezelfde bedrijven maken."
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_tiers
msgid "Tiers"
msgstr ""
msgstr "Derde"
#. module: l10n_be
#: field:l1on_be.vat.declaration,period_id:0
@@ -69,18 +74,18 @@ msgstr "Periode"
#. module: l10n_be
#: field:partner.vat.intra,period_ids:0
msgid "Period (s)"
msgstr ""
msgstr "Periode(n)"
#. module: l10n_be
#: view:l1on_be.vat.declaration:0
#: view:partner.vat.intra:0
msgid "Save the File with '.xml' extension."
msgstr ""
msgstr "Bestand opslaan met '.xml'-extensie"
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_charge
msgid "Charge"
msgstr ""
msgstr "Kosten"
#. module: l10n_be
#: code:addons/l10n_be/wizard/l10n_be_partner_vat_listing.py:47
@@ -89,13 +94,13 @@ msgstr ""
#: code:addons/l10n_be/wizard/l10n_be_vat_intra.py:109
#, python-format
msgid "Data Insufficient!"
msgstr ""
msgstr "Onvoldoende gegevens"
#. module: l10n_be
#: view:l1on_be.vat.declaration:0
#: view:partner.vat.list_13:0
msgid "Create XML"
msgstr "XML Aanmaken"
msgstr "XML maken"
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_capitaux
@@ -105,23 +110,23 @@ msgstr "Kapitaal"
#. module: l10n_be
#: view:partner.vat.list_13:0
msgid "Print"
msgstr ""
msgstr "Afdrukken"
#. module: l10n_be
#: view:partner.vat.intra:0
msgid "Save XML"
msgstr ""
msgstr "XML opslaan"
#. module: l10n_be
#: code:addons/l10n_be/wizard/l10n_be_vat_intra.py:219
#, python-format
msgid "Save"
msgstr ""
msgstr "Opslaan"
#. module: l10n_be
#: sql_constraint:res.company:0
msgid "The company name must be unique !"
msgstr ""
msgstr "De firmanaam moet uniek zijn"
#. module: l10n_be
#: field:l1on_be.vat.declaration,msg:0
@@ -133,65 +138,65 @@ msgstr "Bestand aangemaakt"
#. module: l10n_be
#: view:partner.vat.intra:0
msgid "_Close"
msgstr ""
msgstr "_Sluiten"
#. module: l10n_be
#: code:addons/l10n_be/wizard/l10n_be_account_vat_declaration.py:131
#, python-format
msgid "Save XML For Vat declaration"
msgstr ""
msgstr "XML voor btw-aangifte opslaan"
#. module: l10n_be
#: view:partner.vat.list_13:0
msgid "Customers"
msgstr ""
msgstr "Klanten"
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_tax_in
msgid "Taxes à l'entrée"
msgstr ""
msgstr "Te ontvangen btw"
#. module: l10n_be
#: help:l1on_be.vat.declaration,ask_restitution:0
msgid "It indicates whether a resitution is to made or not?"
msgstr ""
msgstr "Het geeft aan of een teruggave nodig is of niet"
#. module: l10n_be
#: model:ir.actions.act_window,name:l10n_be.action_vat_declaration
msgid "Vat Declaraion"
msgstr ""
msgstr "Btw-aangifte"
#. module: l10n_be
#: view:partner.vat.intra:0
#: field:partner.vat.intra,no_vat:0
msgid "Partner With No VAT"
msgstr ""
msgstr "Relatie zonder btw"
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_immo
msgid "Immobilisation"
msgstr "Onroerende goederen"
msgstr "Activa"
#. module: l10n_be
#: view:l1on_be.vat.declaration:0
#: view:partner.vat.intra:0
msgid "Company"
msgstr ""
msgstr "Bedrijf"
#. module: l10n_be
#: model:ir.model,name:l10n_be.model_partner_vat_13
msgid "partner.vat_13"
msgstr ""
msgstr "partner.vat_13"
#. module: l10n_be
#: model:ir.ui.menu,name:l10n_be.partner_vat_listing
msgid "Annual Listing Of VAT-Subjected Customers"
msgstr ""
msgstr "Jaarlijke klantenlisting"
#. module: l10n_be
#: view:partner.vat.list_13:0
msgid "XML File has been Created."
msgstr "XML bestand is aangemaakt"
msgstr "XML-bestand is gemaakt."
#. module: l10n_be
#: help:l1on_be.vat.declaration,client_nihil:0
@@ -199,64 +204,66 @@ msgid ""
"Tick this case only if it concerns only the last statement on the civil or "
"cessation of activity"
msgstr ""
"Dit vakje alleen inschakelen als het gaat om de laatste aangifte van het "
"boekjaar of om de stopzetting van een activiteit."
#. module: l10n_be
#: view:partner.vat.list_13:0
msgid "Select Fiscal Year"
msgstr "Selecteer Fiscaaljaar"
msgstr "Selecteer boekjaar"
#. module: l10n_be
#: field:l1on_be.vat.declaration,ask_restitution:0
msgid "Ask Restitution"
msgstr ""
msgstr "Teruggave"
#. module: l10n_be
#: model:ir.model,name:l10n_be.model_partner_vat_intra
#: model:ir.ui.menu,name:l10n_be.l10_be_vat_intra
msgid "Partner VAT Intra"
msgstr ""
msgstr "Intracommunautaire opgave"
#. module: l10n_be
#: model:ir.ui.menu,name:l10n_be.l10_be_vat_declaration
#: view:l1on_be.vat.declaration:0
msgid "Periodical VAT Declaration"
msgstr ""
msgstr "Periodieke btw-aangifte"
#. module: l10n_be
#: view:partner.vat.intra:0
msgid "Note: "
msgstr ""
msgstr "Opmerking: "
#. module: l10n_be
#: view:partner.vat.intra:0
msgid "_Preview"
msgstr ""
msgstr "_Voorbeeld"
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_tiers_payable
msgid "Tiers - Payable"
msgstr ""
msgstr "Derden - te betalen"
#. module: l10n_be
#: field:l1on_be.vat.declaration,tax_code_id:0
#: field:partner.vat.intra,tax_code_id:0
msgid "Tax Code"
msgstr ""
msgstr "Btw-code"
#. module: l10n_be
#: view:partner.vat.intra:0
msgid "Periods"
msgstr ""
msgstr "Perioden"
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_produit
msgid "Produit"
msgstr "Product"
msgstr "Opbrengsten"
#. module: l10n_be
#: help:partner.vat.intra,test_xml:0
msgid "Sets the XML output as test file"
msgstr ""
msgstr "Maakt een testbestand in xml"
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_view
@@ -266,18 +273,19 @@ msgstr "Weergave"
#. module: l10n_be
#: view:l1on_be.vat.declaration:0
msgid "Ok"
msgstr "Ok"
msgstr "OK"
#. module: l10n_be
#: field:l1on_be.vat.declaration,ask_payment:0
msgid "Ask Payment"
msgstr ""
msgstr "Betaling vragen"
#. module: l10n_be
#: help:partner.vat.intra,no_vat:0
msgid ""
"The Partner whose VAT number is not defined they doesn't include in XML File."
msgstr ""
"Een relatie zonder btw-nummer wordt niet opgenomen in het xml-bestand."
#. module: l10n_be
#: field:partner.vat_13,limit_amount:0
@@ -287,44 +295,44 @@ msgstr "Bestedingslimiet"
#. module: l10n_be
#: model:ir.model,name:l10n_be.model_res_company
msgid "Companies"
msgstr ""
msgstr "Bedrijven"
#. module: l10n_be
#: view:partner.vat.intra:0
msgid "Create _XML"
msgstr ""
msgstr "_XML maken"
#. module: l10n_be
#: help:partner.vat.intra,period_ids:0
msgid ""
"Select here the period(s) you want to include in your intracom declaration"
msgstr ""
msgstr "Kies hier de periode(n) voor uw intracommunautaire opgave"
#. module: l10n_be
#: view:partner.vat_13:0
msgid "View Customers"
msgstr ""
msgstr "Klanten bekijken"
#. module: l10n_be
#: code:addons/l10n_be/wizard/l10n_be_vat_intra.py:102
#, python-format
msgid "The period code you entered is not valid."
msgstr ""
msgstr "De periode die u heeft ingevoerd, is onjuist."
#. module: l10n_be
#: view:l1on_be.vat.declaration:0
msgid "Is Last Declaration"
msgstr ""
msgstr "Laatste aangifte"
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_stock
msgid "Stock et Encours"
msgstr ""
msgstr "Voorraden in bestelling"
#. module: l10n_be
#: field:l1on_be.vat.declaration,client_nihil:0
msgid "Last Declaration of Enterprise"
msgstr ""
msgstr "Laatste aangifte van bedrijf"
#. module: l10n_be
#: help:partner.vat.intra,mand_id:0
@@ -332,6 +340,8 @@ msgid ""
"This identifies the representative of the sending company. This is a string "
"of 14 characters"
msgstr ""
"Identificatie van de vertegenwoordiger van de verzender. Dit is een reeks "
"van 14 tekens."
#. module: l10n_be
#: code:addons/l10n_be/wizard/l10n_be_account_vat_declaration.py:75
@@ -339,37 +349,37 @@ msgstr ""
#: code:addons/l10n_be/wizard/l10n_be_vat_intra.py:98
#, python-format
msgid "Data Insufficient"
msgstr ""
msgstr "Onvoldoende gegevens"
#. module: l10n_be
#: model:ir.ui.menu,name:l10n_be.menu_finance_belgian_statement
msgid "Belgium Statements"
msgstr ""
msgstr "Belgische aangiften"
#. module: l10n_be
#: model:ir.actions.act_window,name:l10n_be.action_vat_intra
msgid "Partner Vat Intra"
msgstr ""
msgstr "Intracommunautaire opgave"
#. module: l10n_be
#: view:l1on_be.vat.declaration:0
msgid "Declare Periodical VAT"
msgstr ""
msgstr "Periodieke btw-aangifte"
#. module: l10n_be
#: model:ir.model,name:l10n_be.model_partner_vat_list_13
msgid "partner.vat.list_13"
msgstr ""
msgstr "partner.vat.list_13"
#. module: l10n_be
#: view:l1on_be.vat.declaration:0
msgid "Save xml"
msgstr ""
msgstr "Xml opslaan"
#. module: l10n_be
#: field:partner.vat.intra,mand_id:0
msgid "MandataireId"
msgstr ""
msgstr "MandataireId"
#. module: l10n_be
#: field:l1on_be.vat.declaration,file_save:0
@@ -391,23 +401,32 @@ msgid ""
" YYYY stands for the year (4 positions).\n"
" "
msgstr ""
"Hier typt u de periode voor de intracommunautaire opgave in het formaat: "
"ppyyyy\n"
" PP betekent een maand: van '01' tot '12'.\n"
" PP kan ook een kwartaal beteken: '31','32','33','34'\n"
" Het eerste cijfer duidt aan dat het om een kwartaal gaat,\n"
" Het tweede cijfer geeft het specifieke kwartaal aan.\n"
" PP kan ook een volledig boekjaar betekenen: '00'.\n"
" YYYY duidt het jaar aan (4 posities).\n"
" "
#. module: l10n_be
#: field:l1on_be.vat.declaration,name:0
#: field:partner.vat.intra,name:0
#: field:partner.vat.list_13,name:0
msgid "File Name"
msgstr ""
msgstr "Bestandsnaam"
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_tax_out
msgid "Taxes à la sortie"
msgstr ""
msgstr "Te betalen btw"
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_tax
msgid "Tax"
msgstr "Belasting"
msgstr "Btw"
#. module: l10n_be
#: code:addons/l10n_be/wizard/l10n_be_account_vat_declaration.py:75
@@ -415,83 +434,83 @@ msgstr "Belasting"
#: code:addons/l10n_be/wizard/l10n_be_vat_intra.py:98
#, python-format
msgid "No VAT Number Associated with Main Company!"
msgstr ""
msgstr "De firma heeft geen btw-nummer."
#. module: l10n_be
#: model:ir.model,name:l10n_be.model_l1on_be_vat_declaration
msgid "Vat Declaration"
msgstr ""
msgstr "Btw-aangifte"
#. module: l10n_be
#: view:partner.vat.intra:0
#: field:partner.vat.intra,country_ids:0
msgid "European Countries"
msgstr ""
msgstr "Europese landen"
#. module: l10n_be
#: model:ir.actions.act_window,name:l10n_be.action_partner_vat_listing_13
#: view:partner.vat_13:0
msgid "Partner VAT Listing"
msgstr ""
msgstr "Intracommunautaire opgave"
#. module: l10n_be
#: view:partner.vat.intra:0
msgid "General Information"
msgstr ""
msgstr "Algemene informatie"
#. module: l10n_be
#: view:partner.vat.intra:0
msgid "Create an XML file for Vat Intra"
msgstr ""
msgstr "Maak een xml-bestand voor de IC-opgave"
#. module: l10n_be
#: field:partner.vat.intra,period_code:0
msgid "Period Code"
msgstr ""
msgstr "Periodecode"
#. module: l10n_be
#: model:account.account.type,name:l10n_be.user_type_financiers
msgid "Financier"
msgstr ""
msgstr "Financieel"
#. module: l10n_be
#: field:partner.vat_13,year:0
msgid "Year"
msgstr ""
msgstr "Jaar"
#. module: l10n_be
#: view:partner.vat_13:0
msgid "Cancel"
msgstr "Annuleer"
msgstr "Annuleren"
#. module: l10n_be
#: view:l1on_be.vat.declaration:0
#: view:partner.vat.intra:0
#: view:partner.vat.list_13:0
msgid "Close"
msgstr ""
msgstr "Sluiten"
#. module: l10n_be
#: code:addons/l10n_be/wizard/l10n_be_vat_intra.py:105
#, python-format
msgid "Please select at least one Period."
msgstr ""
msgstr "Selecteer minimaal een periode."
#. module: l10n_be
#: help:l1on_be.vat.declaration,ask_payment:0
msgid "It indicates whether a payment is to made or not?"
msgstr ""
msgstr "Het geeft aan of een betaling nodig is of niet"
#. module: l10n_be
#: view:partner.vat.intra:0
msgid "Partner VAT intra"
msgstr ""
msgstr "Intracommunautaire opgave"
#. module: l10n_be
#: code:addons/l10n_be/wizard/l10n_be_partner_vat_listing.py:47
#, python-format
msgid "No data for the selected Year."
msgstr ""
msgstr "Geen gegevens voor het geselecteerde jaar."
#~ msgid "Notification"
#~ msgstr "Mededeling"
@@ -1,2 +1,6 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_mail_message_portal,mail.message.portal,mail.model_mail_message,group_portal,1,0,1,1
access_res_partner,res.partner,base.model_res_partner,portal.group_portal,1,0,0,0
access_res_partner_address,res.partner_address,base.model_res_partner_address,portal.group_portal,1,0,0,0
access_res_partner_category,res.partner_category,base.model_res_partner_category,portal.group_portal,1,0,0,0
access_res_partner_title,res.partner_title,base.model_res_partner_title,portal.group_portal,1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_mail_message_portal mail.message.portal mail.model_mail_message group_portal 1 0 1 1
3 access_res_partner res.partner base.model_res_partner portal.group_portal 1 0 0 0
4 access_res_partner_address res.partner_address base.model_res_partner_address portal.group_portal 1 0 0 0
5 access_res_partner_category res.partner_category base.model_res_partner_category portal.group_portal 1 0 0 0
6 access_res_partner_title res.partner_title base.model_res_partner_title portal.group_portal 1 0 0 0
+4 -1
View File
@@ -27,11 +27,14 @@
'complexity': 'easy',
'description': """
This module adds a contact page (with a contact form creating a lead when submitted) to your portal if crm and portal are installed.
====================================================================================================================================
====================================================================================================================================
""",
'author': 'OpenERP SA',
'depends': ['crm','portal'],
'data': ['wizard/contact_view.xml'],
'test': [
'test/contact_form.yml',
],
'installable': True,
'auto_install': True,
'category': 'Hidden',
+38
View File
@@ -0,0 +1,38 @@
-
Set the current user as portal user.
-
!context
'uid': 'portal.demo_user0'
-
As a portal user, I fill in the contact form and submit it.
-
!record {model: portal_crm.crm_contact_us, id: contact_us_01}:
name: 'Need information about your contact form module'
partner_name: 'Mr. John Doe'
email_from: 'mister@john.doe'
phone: '+32 444 11 22 33'
description: 'Dear Sir or Madam, could you get back to me asap ? Regards.'
-
For security reasons, the wizard values is empty.
-
!python {model: portal_crm.crm_contact_us}: |
obj = self.browse(cr, uid, ref("contact_us_01"))
assert not(obj.name or obj.partner_name or obj.email_from or obj.phone or obj.description), 'All the wizard\'s values are not empty'
-
And a lead is created with the proper values.
-
!python {model: crm.lead}: |
from openerp import SUPERUSER_ID
ids = self.search(cr, SUPERUSER_ID, [('name', '=', 'Need information about your contact form module')])
assert len(ids) == 1, 'There are more than one matching lead, while only one was expected'
obj = self.browse(cr, SUPERUSER_ID, ids[0])
expected_values = dict(
name='Need information about your contact form module',
partner_name='Mr. John Doe',
email_from='mister@john.doe',
phone='+32 444 11 22 33',
description='Dear Sir or Madam, could you get back to me asap ? Regards.')
for k, v in expected_values.iteritems():
assert obj[k] == expected_values[k], 'Lead data mismatch: expected %s, got %s' % (expected_values[k], obj[k])
+5 -5
View File
@@ -81,8 +81,8 @@ class crm_contact_us(osv.TransientModel):
def create(self, cr, uid, values, context=None):
"""
Since they are potentially sensitive, we don't want any user to be able
to read datas generated through this module. That's why we'll write
those information directly in the crm.lead table and leave blank
to read datas generated through this module. Therefore we'll write
these information directly in the crm.lead table and leave blank
entries in the portal_crm.crm_contact_us table.
This is why the create() method is overwritten.
"""
@@ -93,8 +93,7 @@ class crm_contact_us(osv.TransientModel):
models implied (like mail.thread, among others, that performs a read
when its create() method is called (in method message_get_subscribers()),
it is quite complicated to set proper rights for this object.
Therefore, user SUPERUSER_ID will perform the creation until a better
workaround is figured out.
Therefore, user SUPERUSER_ID will perform the creation.
"""
values['contact_name'] = values['name']
crm_lead.create(cr, SUPERUSER_ID, dict(values,user_id=False), context)
@@ -103,7 +102,8 @@ class crm_contact_us(osv.TransientModel):
Create an empty record in the portal_crm.crm_contact_us table.
Since the 'name' field is mandatory, give an empty string to avoid an integrity error.
"""
return super(crm_contact_us, self).create(cr, uid, {'name': ' '})
empty_values = dict((k, False) if k != 'name' else (k, '') for k, v in values.iteritems())
return super(crm_contact_us, self).create(cr, uid, empty_values)
def submit(self, cr, uid, ids, context=None):
""" When the form is submitted, redirect the user to a "Thanks" message """
@@ -1,6 +1,2 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_hr_employee_user,hr.employee user,hr.model_hr_employee,portal.group_portal,1,0,0,0
access_res_partner,res.partner,base.model_res_partner,portal.group_portal,1,0,0,0
access_res_partner_address,res.partner_address,base.model_res_partner_address,portal.group_portal,1,0,0,0
access_res_partner_category,res.partner_category,base.model_res_partner_category,portal.group_portal,1,0,0,0
access_res_partner_title,res.partner_title,base.model_res_partner_title,portal.group_portal,1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_hr_employee_user hr.employee user hr.model_hr_employee portal.group_portal 1 0 0 0
access_res_partner res.partner base.model_res_partner portal.group_portal 1 0 0 0
access_res_partner_address res.partner_address base.model_res_partner_address portal.group_portal 1 0 0 0
access_res_partner_category res.partner_category base.model_res_partner_category portal.group_portal 1 0 0 0
access_res_partner_title res.partner_title base.model_res_partner_title portal.group_portal 1 0 0 0
+6 -6
View File
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-02-08 01:37+0100\n"
"PO-Revision-Date: 2009-04-10 09:33+0000\n"
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n"
"PO-Revision-Date: 2012-10-01 11:28+0000\n"
"Last-Translator: Els Van Vossel (Agaplan) <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2012-09-07 04:57+0000\n"
"X-Generator: Launchpad (build 15914)\n"
"X-Launchpad-Export-Date: 2012-10-02 05:20+0000\n"
"X-Generator: Launchpad (build 16061)\n"
#. module: purchase
#: model:process.transition,note:purchase.process_transition_confirmingpurchaseorder0
@@ -111,7 +111,7 @@ msgstr "Te factureren"
#. module: purchase
#: view:purchase.order.line_invoice:0
msgid "Do you want to generate the supplier invoices?"
msgstr ""
msgstr "Wilt u de aankoopfacturen maken?"
#. module: purchase
#: model:ir.actions.act_window,help:purchase.purchase_form_action
@@ -1831,7 +1831,7 @@ msgstr ""
#. module: purchase
#: view:purchase.order.group:0
msgid "Are you sure you want to merge these orders?"
msgstr ""
msgstr "Weet u zeker dat u deze orders wilt samenvoegen?"
#. module: purchase
#: model:process.transition,name:purchase.process_transition_purchaseinvoice0
+372 -111
View File
File diff suppressed because it is too large Load Diff