Initial import from Docker volume

This commit is contained in:
root
2025-12-26 13:11:43 +00:00
commit 4998dc066a
13336 changed files with 1767801 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
from trytond.pool import Pool
from . import carrier, stock
__all__ = ['register']
def register():
Pool.register(
carrier.CredentialSendcloud,
carrier.SendcloudAddress,
carrier.SendcloudShippingMethod,
carrier.Carrier,
stock.Package,
stock.ShipmentOut,
stock.ShipmentInReturn,
module='stock_package_shipping_sendcloud', type_='model')
Pool.register(
stock.CreateShipping,
stock.CreateShippingSendcloud,
module='stock_package_shipping_sendcloud', type_='wizard')
Pool.register(
module='stock_package_shipping_sendcloud', type_='report')

View File

@@ -0,0 +1,278 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
import time
from functools import wraps
import requests
from trytond.cache import Cache
from trytond.config import config
from trytond.i18n import gettext
from trytond.model import (
MatchMixin, ModelSQL, ModelView, fields, sequence_ordered)
from trytond.pool import PoolMeta
from trytond.protocols.wrappers import HTTPStatus
from trytond.pyson import Eval
from .exceptions import SendcloudError
SENDCLOUD_API_URL = 'https://panel.sendcloud.sc/api/v2/'
TIMEOUT = config.getfloat(
'stock_package_shipping_sendcloud', 'requests_timeout', default=300)
HEADERS = {
'Sendcloud-Partner-Id': '03c1facb-63da-4bb1-889c-192fc91ec4e6',
}
def sendcloud_api(func):
@wraps(func)
def wrapper(*args, **kwargs):
nb_tries, error_message = 0, ''
try:
while nb_tries < 5:
try:
return func(*args, **kwargs)
except requests.HTTPError as e:
if e.response.status_code == HTTPStatus.TOO_MANY_REQUESTS:
error_message = e.args[0]
nb_tries += 1
time.sleep(1)
else:
raise
except requests.HTTPError as e:
error_message = e.args[0]
raise SendcloudError(
gettext('stock_package_shipping_sendcloud'
'.msg_sendcloud_webserver_error',
message=error_message))
return wrapper
class CredentialSendcloud(sequence_ordered(), ModelSQL, ModelView, MatchMixin):
"Sendcloud Credential"
__name__ = 'carrier.credential.sendcloud'
company = fields.Many2One('company.company', "Company")
public_key = fields.Char("Public Key", required=True, strip=False)
secret_key = fields.Char("Secret Key", required=True, strip=False)
addresses = fields.One2Many(
'carrier.sendcloud.address', 'sendcloud', "Addresses",
states={
'readonly': ~Eval('id') | (Eval('id', -1) < 0),
})
shipping_methods = fields.One2Many(
'carrier.sendcloud.shipping_method', 'sendcloud', "Methods",
states={
'readonly': ~Eval('id') | (Eval('id', -1) < 0),
})
_addresses_sender_cache = Cache(
'carrier.credential.sendcloud.addresses_sender',
duration=config.getint(
'stock_package_shipping_sendcloud', 'addresses_cache',
default=15 * 60),
context=False)
_shiping_methods_cache = Cache(
'carrier.credential.sendcloud.shipping_methods',
duration=config.getint(
'stock_package_shipping_sendcloud', 'shipping_methods_cache',
default=60 * 60))
@property
def auth(self):
return self.public_key, self.secret_key
@property
@sendcloud_api
def addresses_sender(self):
addresses = self._addresses_sender_cache.get(self.id)
if addresses is not None:
return addresses
response = requests.get(
SENDCLOUD_API_URL + 'user/addresses/sender',
auth=self.auth, timeout=TIMEOUT, headers=HEADERS)
response.raise_for_status()
addresses = response.json()['sender_addresses']
self._addresses_sender_cache.set(self.id, addresses)
return addresses
def get_sender_address(self, shipment):
pattern = self._get_sender_address_pattern(shipment)
for address in self.addresses:
if address.match(pattern):
return int(address.address) if address.address else None
@classmethod
def _get_sender_address_pattern(cls, shipment):
return {
'warehouse': shipment.shipping_warehouse.id,
}
@sendcloud_api
def get_shipping_methods(
self, sender_address=None, service_point=None, is_return=False):
key = (self.id, sender_address, service_point, is_return)
methods = self._shiping_methods_cache.get(key)
if methods is not None:
return methods
params = {}
if sender_address:
params['sender_address'] = sender_address
if service_point:
params['service_point'] = service_point
if is_return:
params['is_return'] = is_return
response = requests.get(
SENDCLOUD_API_URL + 'shipping_methods', params=params,
auth=self.auth, timeout=TIMEOUT, headers=HEADERS)
response.raise_for_status()
methods = response.json()['shipping_methods']
self._shiping_methods_cache.set(key, methods)
return methods
def get_shipping_method(self, shipment):
pattern = self._get_shipping_method_pattern(shipment)
for method in self.shipping_methods:
if method.match(pattern):
if method.shipping_method:
return int(method.shipping_method)
else:
return None
@classmethod
def _get_shipping_method_pattern(cls, shipment):
return {
'carrier': shipment.carrier.id if shipment.carrier else None,
}
@sendcloud_api
def get_parcel(self, id):
response = requests.get(
SENDCLOUD_API_URL + 'parcels/%s' % id,
auth=self.auth, timeout=TIMEOUT, headers=HEADERS)
response.raise_for_status()
return response.json()['parcel']
@sendcloud_api
def create_parcels(self, parcels):
response = requests.post(
SENDCLOUD_API_URL + 'parcels', json={'parcels': parcels},
auth=self.auth, timeout=TIMEOUT, headers=HEADERS)
if response.status_code == 400:
msg = response.json()['error']['message']
raise requests.HTTPError(msg, response=response)
response.raise_for_status()
return response.json()['parcels']
@sendcloud_api
def get_label(self, url):
response = requests.get(
url, auth=self.auth, timeout=TIMEOUT, headers=HEADERS)
response.raise_for_status()
return response.content
class SendcloudAddress(sequence_ordered(), ModelSQL, ModelView, MatchMixin):
"Sendcloud Address"
__name__ = 'carrier.sendcloud.address'
sendcloud = fields.Many2One(
'carrier.credential.sendcloud', "Sendcloud", required=True)
warehouse = fields.Many2One(
'stock.location', "Warehouse",
domain=[
('type', '=', 'warehouse'),
])
address = fields.Selection(
'get_addresses', "Address",
help="Leave empty for the Sendcloud default.")
@fields.depends('sendcloud', '_parent_sendcloud.id')
def get_addresses(self):
addresses = [('', "")]
if (self.sendcloud
and self.sendcloud.id is not None
and self.sendcloud.id >= 0):
for address in self.sendcloud.addresses_sender:
addresses.append(
(str(address['id']), self._format_address(address)))
return addresses
@classmethod
def _format_address(cls, address):
return ', '.join(
filter(None, [
address.get('company_name'),
address.get('street'),
address.get('house_number'),
address.get('postal_code'),
address.get('city'),
address.get('country')]))
class SendcloudShippingMethod(
sequence_ordered(), ModelSQL, ModelView, MatchMixin):
"Sendcloud Shipping Method"
__name__ = 'carrier.sendcloud.shipping_method'
sendcloud = fields.Many2One(
'carrier.credential.sendcloud', "Sendcloud", required=True)
carrier = fields.Many2One(
'carrier', "Carrier",
domain=[
('shipping_service', '=', 'sendcloud'),
])
shipping_method = fields.Selection(
'get_shipping_methods', "Shipping Method")
@fields.depends('sendcloud', '_parent_sendcloud.id')
def get_shipping_methods(self):
methods = [(None, '')]
if (self.sendcloud
and self.sendcloud.id is not None
and self.sendcloud.id >= 0):
methods += [
(str(m['id']), m['name'])
for m in self.sendcloud.get_shipping_methods()]
return methods
class Carrier(metaclass=PoolMeta):
__name__ = 'carrier'
sendcloud_format = fields.Selection([
('normal 0', "A4 - Top left"),
('normal 1', "A4 - Top right"),
('normal 2', "A4 - Bottom left"),
('normal 3', "A4 - Bottom right"),
('label', "A6 - Full page"),
], "Format",
states={
'invisible': Eval('shipping_service') != 'sendcloud',
'required': Eval('shipping_service') == 'sendcloud',
})
@classmethod
def __setup__(cls):
super().__setup__()
cls.shipping_service.selection.append(('sendcloud', "Sendcloud"))
@classmethod
def default_sendcloud_format(cls):
return 'label'
@classmethod
def view_attributes(cls):
return super(Carrier, cls).view_attributes() + [
("/form/separator[@id='sendcloud']", 'states', {
'invisible': Eval('shipping_service') != 'sendcloud',
}),
]
@property
def shipping_label_mimetype(self):
mimetype = super().shipping_label_mimetype
if self.shipping_service == 'sendcloud':
mimetype = 'application/pdf'
return mimetype

View File

@@ -0,0 +1,113 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tryton>
<data>
<record model="ir.ui.view" id="credential_view_form">
<field name="model">carrier.credential.sendcloud</field>
<field name="type">form</field>
<field name="name">credential_form</field>
</record>
<record model="ir.ui.view" id="credential_view_list">
<field name="model">carrier.credential.sendcloud</field>
<field name="type">tree</field>
<field name="name">credential_list</field>
</record>
<record model="ir.action.act_window" id="act_credential_form">
<field name="name">Sendcloud Credentials</field>
<field name="res_model">carrier.credential.sendcloud</field>
</record>
<record model="ir.action.act_window.view" id="act_credential_form_view1">
<field name="sequence" eval="10"/>
<field name="view" ref="credential_view_list"/>
<field name="act_window" ref="act_credential_form"/>
</record>
<record model="ir.action.act_window.view" id="act_credential_form_view2">
<field name="sequence" eval="20"/>
<field name="view" ref="credential_view_form"/>
<field name="act_window" ref="act_credential_form"/>
</record>
<menuitem
parent="carrier.menu_configuration"
action="act_credential_form"
sequence="20"
id="menu_credential_form"/>
<record model="ir.model.access" id="access_credential">
<field name="model">carrier.credential.sendcloud</field>
<field name="perm_read" eval="False"/>
<field name="perm_write" eval="False"/>
<field name="perm_create" eval="False"/>
<field name="perm_delete" eval="False"/>
</record>
<record model="ir.model.access" id="access_carrier_credential_carrier_admin">
<field name="model">carrier.credential.sendcloud</field>
<field name="group" ref="carrier.group_carrier_admin"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="True"/>
<field name="perm_delete" eval="True"/>
</record>
<record model="ir.ui.view" id="carrier_address_view_form">
<field name="model">carrier.sendcloud.address</field>
<field name="type">form</field>
<field name="name">carrier_address_form</field>
</record>
<record model="ir.ui.view" id="carrier_address_view_list">
<field name="model">carrier.sendcloud.address</field>
<field name="type">tree</field>
<field name="name">carrier_address_list</field>
</record>
<record model="ir.model.access" id="access_carrier_address">
<field name="model">carrier.sendcloud.address</field>
<field name="perm_read" eval="False"/>
<field name="perm_write" eval="False"/>
<field name="perm_create" eval="False"/>
<field name="perm_delete" eval="False"/>
</record>
<record model="ir.model.access" id="access_carrier_address_carrier_admin">
<field name="model">carrier.sendcloud.address</field>
<field name="group" ref="carrier.group_carrier_admin"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="True"/>
<field name="perm_delete" eval="True"/>
</record>
<record model="ir.ui.view" id="carrier_shipping_method_view_form">
<field name="model">carrier.sendcloud.shipping_method</field>
<field name="type">form</field>
<field name="name">carrier_shipping_method_form</field>
</record>
<record model="ir.ui.view" id="carrier_shipping_method_view_list">
<field name="model">carrier.sendcloud.shipping_method</field>
<field name="type">tree</field>
<field name="name">carrier_shipping_method_list</field>
</record>
<record model="ir.model.access" id="access_carrier_shipping_method">
<field name="model">carrier.sendcloud.shipping_method</field>
<field name="perm_read" eval="False"/>
<field name="perm_write" eval="False"/>
<field name="perm_create" eval="False"/>
<field name="perm_delete" eval="False"/>
</record>
<record model="ir.model.access" id="access_carrier_shipping_method_carrier_admin">
<field name="model">carrier.sendcloud.shipping_method</field>
<field name="group" ref="carrier.group_carrier_admin"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="True"/>
<field name="perm_delete" eval="True"/>
</record>
<record model="ir.ui.view" id="carrier_view_form">
<field name="model">carrier</field>
<field name="inherit" ref="carrier.carrier_view_form"/>
<field name="name">carrier_form</field>
</record>
</data>
</tryton>

View File

@@ -0,0 +1,8 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
from trytond.exceptions import UserError
class SendcloudError(UserError):
pass

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,131 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr "Format"
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr "Adreces"
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr "Empresa"
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr "Clau pública"
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr "Clau secreta"
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr "Mètodes"
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr "Adreça"
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr "Magatzem"
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr "Transportista"
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr "Mètode d'enviament"
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr "ID"
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr "URL de seguiment"
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr "Deixar buit per al valor per defecte de Sendcloud."
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr "Credencial Sendcloud"
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr "Adreça Sendcloud"
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr "Mètode d'enviament Sendcloud"
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr "Crear enviament Sendcloud pels paquets"
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr "Credencials Sendcloud"
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
"La trucada del servei web Sendcloud ha fallat amb el següent missatge d'error:\n"
"%(message)s"
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
"No podeu crear una etiqueta d'enviament per l'albarà \"%(shipment)s\" perquè"
" ja té un número de referència de l'enviament."
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr "Credencials Sendcloud"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr "A4 - A baix a l'esquerra"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr "A4 - A baix a la dreta"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr "A4 - A dalt a l'esquerra"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr "A4 - A dalt a la dreta"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr "A6 - Pàgina completa"
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr "Sendcloud"

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,131 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr "Format"
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr "Adressen"
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr "Unternehmen"
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr "Öffentlicher Schlüssel"
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr "Geheimer Schlüssel"
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr "Methoden"
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr "Adresse"
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr "Logistikstandort"
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr "Versanddienstleister"
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr "Versandart"
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr "ID"
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr "Tracking-URL"
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr "Leer lassen für Sendcloud Standard."
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr "Sendcloud Anmeldedaten"
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr "Sendcloud Adresse"
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr "Sendcloud Versandart"
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr "Sendcloud Versandauftrag für Pakete erstellen"
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr "Sendcloud Anmeldedaten"
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
"Beim Aufruf des Sendcloud Webservice ist folgender Fehler aufgetreten:\n"
"%(message)s"
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
"Es kann kein Versandetikett für die Lieferung \"%(shipment)s\" erstellt "
"werden, weil bereits eine Versandreferenznummer vorhanden ist."
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr "Sendcloud Anmeldedaten"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr "A4 - Unten links"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr "A4 - Unten rechts"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr "A4 - Oben links"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr "A4 - Oben rechts"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr "A6 - Ganze Seite"
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr "Sendcloud"

View File

@@ -0,0 +1,131 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr "Formato"
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr "Direcciones"
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr "Empresa"
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr "Clave pública"
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr "Clave secreta"
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr "Métodos"
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr "Dirección"
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr "Almacén"
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr "Transportista"
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr "Método de envío"
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr "ID"
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr "URL Seguimiento"
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr "Dejar vacío para el valor por defecto de Sendcloud."
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr "Credencial Sendcloud"
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr "Dirección Sendcloud"
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr "Método de envío Sendcloud"
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr "Crear envío Sendcloud para paquetes"
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr "Credenciales Sendcloud"
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
"La llamada al servicio web de Sendcloud ha fallado con el siguiente mensaje de error:\n"
"%(message)s"
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
"No puedes crear una etiqueta de envío para el albarán \"%(shipment)s\" "
"porque ya tiene un número de referencia del envío."
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr "Credenciales Sendcloud"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr "A4 - Abajo a la izquierda"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr "A4 - Abajo a la derecha"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr "A4 - Arriba a la izquierda"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr "A4 - Arriba a la derecha"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr "A6 - Página completa"
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr "Sendcloud"

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,131 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr "Format"
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr "Adresses"
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr "Société"
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr "Clé publique"
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr "Clé secrète"
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr "Méthodes"
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr "Adresse"
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr "Entrepôt"
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr "Transporteur"
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr "Méthode d'expédition"
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr "ID"
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr "URL de suivi"
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr "Laissez vide pour la valeur par défaut de Sendcloud."
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr "Identifiant Sendcloud"
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr "Adresse Sendcloud"
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr "Méthode de livraison Sendcloud"
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr "Créer la livraison Sendcloud pour les emballages"
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr "Identifiants Sendcloud"
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
"L'appel au service web de Sendcloud a échoué avec le message d'erreur suivant :\n"
"%(message)s"
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
"Vous ne pouvez pas créer d'étiquette de livraison pour l'expédition "
"« %(shipment)s » car elle a déjà un numéro de référence de livraison."
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr "Identifiants Sendcloud"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr "A4 - En bas à gauche"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr "A4 - En bas à droite"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr "A4 - En haut à gauche"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr "A4 - En haut à droite"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr "A6 - Pleine page"
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr "Sendcloud"

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr "Perusahaan"
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr "Alamat"
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,131 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr "Formato"
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr "Indirizzi"
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr "Azienda"
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr "Chiave pubblica"
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr "Chiave segreta"
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr "Metodi"
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr "Indirizzo"
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr "Magazzino"
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr "Vettore"
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr "Metodo di spedizione"
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr "ID"
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr "URL di tracciamento"
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr "Lascia vuoto per l'impostazione predefinita di Sendcloud."
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr "Credenziali Sendcloud"
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr "Indirizzo Sendcloud"
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr "Metodo di spedizione Sendcloud"
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr "Crea spedizione Sendcloud per i pacchi"
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr "Credenziali Sendcloud"
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
"La chiamata al servizio web Sendcloud non è fallita con il seguente messaggio di errore:\n"
"%(message)s"
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
"Non puoi creare un'etichetta di spedizione per la spedizione "
"\"%(shipment)s\" perché ha già un numero di riferimento."
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr "Credenziali Sendcloud"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr "A4 - In basso a sinistra"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr "A4 - In basso a destra"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr "A4 - In alto a sinistra"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr "A4 - In alto a destra"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr "A6 - Pagina intera"
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr "Sendcloud"

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,131 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr "Formaat"
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr "Adressen"
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr "Bedrijf"
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr "Publieke sleutel"
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr "Geheime sleutel"
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr "Methodes"
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr "Adres"
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr "Magazijn"
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr "Transporteur"
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr "Verzendwijze"
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr "ID"
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr "Tracking-URL"
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr "Laat leeg voor de Sendcloud-standaard."
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr "Sendcloud-referentie"
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr "Sendcloud-adres"
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr "Sendcloud Verzendmethode"
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr "Creëer Sendcloud-verzending voor pakketten"
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr "Sendcloud-referentie"
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
"Bij het oproepen van de Sendcloud webservice is volgende fout opgetreden:\n"
"%(message)s"
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
"U kunt geen verzendlabel maken voor verzending \"%(shipment)s\", omdat deze "
"al een referentienummer heeft."
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr "Sendcloud-referentie"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr "A4 - Linksonder"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr "A4 - Rechtsonder"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr "A4 - Linksboven"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr "A4 - Rechtsboven"
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr "A6 - Volledige pagina"
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr "Sendcloud"
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr "Sendcloud"

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,129 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
"Nu se poate crea o eticheta pentru expedierea \"%(shipment)s\" pentru că are"
" deja un număr de referinţa."
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,127 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:carrier,sendcloud_format:"
msgid "Format"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,addresses:"
msgid "Addresses"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,company:"
msgid "Company"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,public_key:"
msgid "Public Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,secret_key:"
msgid "Secret Key"
msgstr ""
msgctxt "field:carrier.credential.sendcloud,shipping_methods:"
msgid "Methods"
msgstr ""
msgctxt "field:carrier.sendcloud.address,address:"
msgid "Address"
msgstr ""
msgctxt "field:carrier.sendcloud.address,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.address,warehouse:"
msgid "Warehouse"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,carrier:"
msgid "Carrier"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,sendcloud:"
msgid "Sendcloud"
msgstr ""
msgctxt "field:carrier.sendcloud.shipping_method,shipping_method:"
msgid "Shipping Method"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_id:"
msgid "ID"
msgstr ""
msgctxt "field:stock.package,sendcloud_shipping_tracking_url:"
msgid "Tracking URL"
msgstr ""
msgctxt "help:carrier.sendcloud.address,address:"
msgid "Leave empty for the Sendcloud default."
msgstr ""
msgctxt "model:carrier.credential.sendcloud,name:"
msgid "Sendcloud Credential"
msgstr ""
msgctxt "model:carrier.sendcloud.address,name:"
msgid "Sendcloud Address"
msgstr ""
msgctxt "model:carrier.sendcloud.shipping_method,name:"
msgid "Sendcloud Shipping Method"
msgstr ""
msgctxt "model:ir.action,name:act_create_shipping_wizard"
msgid "Create Sendcloud Shipping for Packages"
msgstr ""
msgctxt "model:ir.action,name:act_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "model:ir.message,text:msg_sendcloud_webserver_error"
msgid ""
"Sendcloud webservice call failed with the following error message:\n"
"%(message)s"
msgstr ""
msgctxt "model:ir.message,text:msg_shipment_has_shipping_reference_number"
msgid ""
"You cannot create a shipping label for shipment \"%(shipment)s\" because it "
"already has a shipping reference number."
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_credential_form"
msgid "Sendcloud Credentials"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Bottom right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top left"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A4 - Top right"
msgstr ""
msgctxt "selection:carrier,sendcloud_format:"
msgid "A6 - Full page"
msgstr ""
msgctxt "selection:carrier,shipping_service:"
msgid "Sendcloud"
msgstr ""
msgctxt "view:carrier:"
msgid "Sendcloud"
msgstr ""

View File

@@ -0,0 +1,14 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tryton>
<data grouped="1">
<record model="ir.message" id="msg_sendcloud_webserver_error">
<field name="text">Sendcloud webservice call failed with the following error message:
%(message)s</field>
</record>
<record model="ir.message" id="msg_shipment_has_shipping_reference_number">
<field name="text">You cannot create a shipping label for shipment "%(shipment)s" because it already has a shipping reference number.</field>
</record>
</data>
</tryton>

View File

@@ -0,0 +1,187 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
from itertools import zip_longest
from trytond.i18n import gettext
from trytond.model import fields
from trytond.model.exceptions import AccessError
from trytond.pool import Pool, PoolMeta
from trytond.transaction import Transaction
from trytond.wizard import StateAction, StateTransition, Wizard
class Package(metaclass=PoolMeta):
__name__ = 'stock.package'
sendcloud_shipping_id = fields.Integer("ID", readonly=True)
sendcloud_shipping_tracking_url = fields.Char(
"Tracking URL", readonly=True)
def get_shipping_tracking_url(self, name):
url = super().get_shipping_tracking_url(name)
if (self.shipping_reference
and self.shipment
and self.shipment.id >= 0
and self.shipment.carrier
and self.shipment.carrier.shipping_service == 'sendcloud'):
url = self.sendcloud_shipping_tracking_url
return url
@classmethod
def copy(cls, packages, default=None):
if default is None:
default = {}
else:
default = default.copy()
default.setdefault('sendcloud_shipping_id')
default.setdefault('sendcloud_shipping_tracking_url')
return super().copy(packages, default=default)
class ShippingSendcloudMixin:
__slots__ = ()
def get_sendcloud_credential(self):
pool = Pool()
SendcloudCredential = pool.get('carrier.credential.sendcloud')
pattern = self._get_sendcloud_credential_pattern()
for credential in SendcloudCredential.search([]):
if credential.match(pattern):
return credential
def _get_sendcloud_credential_pattern(self):
return {
'company': self.company.id,
}
def validate_packing_sendcloud(self):
pass
class ShipmentOut(ShippingSendcloudMixin, metaclass=PoolMeta):
__name__ = 'stock.shipment.out'
class ShipmentInReturn(ShippingSendcloudMixin, metaclass=PoolMeta):
__name__ = 'stock.shipment.in.return'
class CreateShipping(metaclass=PoolMeta):
__name__ = 'stock.shipment.create_shipping'
sendcloud = StateAction(
'stock_package_shipping_sendcloud.act_create_shipping_wizard')
def transition_start(self):
next_state = super().transition_start()
if self.record.carrier.shipping_service == 'sendcloud':
next_state = 'sendcloud'
return next_state
def do_sendcloud(self, action):
ctx = Transaction().context
return action, {
'model': ctx['active_model'],
'id': ctx['active_id'],
'ids': [ctx['active_id']],
}
class CreateShippingSendcloud(Wizard):
"Create Sendcloud Shipping"
__name__ = 'stock.shipment.create_shipping.sendcloud'
start = StateTransition()
def transition_start(self):
pool = Pool()
Package = pool.get('stock.package')
shipment = self.record
if shipment.shipping_reference:
raise AccessError(
gettext('stock_package_shipping_sendcloud'
'.msg_shipment_has_shipping_reference_number',
shipment=shipment.rec_name))
credential = shipment.get_sendcloud_credential()
carrier = shipment.carrier
packages = shipment.root_packages
parcels = []
for package in packages:
parcels.append(self.get_parcel(shipment, package, credential))
parcels = credential.create_parcels(parcels)
for package, parcel in zip_longest(packages, parcels):
format_ = shipment.carrier.sendcloud_format.split()
label_url = parcel['label']
for key in format_:
try:
index = int(key)
except ValueError:
key += '_printer'
label_url = label_url[key]
else:
label_url = label_url[index]
package.sendcloud_shipping_id = parcel['id']
package.shipping_label = credential.get_label(label_url)
package.shipping_label_mimetype = carrier.shipping_label_mimetype
package.shipping_reference = parcel['tracking_number']
package.sendcloud_shipping_tracking_url = parcel['tracking_url']
if not shipment.shipping_reference:
shipment.shipping_reference = (
parcel.get('colli_tracking_number')
or parcel['tracking_number'])
Package.save(packages)
shipment.save()
return 'end'
def get_parcel(self, shipment, package, credential, usage=None):
pool = Pool()
UoM = pool.get('product.uom')
ModelData = pool.get('ir.model.data')
cm = UoM(ModelData.get_id('product', 'uom_centimeter'))
kg = UoM(ModelData.get_id('product', 'uom_kilogram'))
party = shipment.shipping_to
address = shipment.shipping_to_address
phone = address.contact_mechanism_get(
{'phone', 'mobile'}, usage=usage)
email = address.contact_mechanism_get('email', usage=usage)
street_lines = (address.street or '').splitlines()
parcel = {
'name': address.party_full_name,
'company_name': (
party.full_name if party.full_name != address.party_full_name
else None),
'address': street_lines[0] if street_lines else '',
'address_2': (
' '.join(street_lines[1:]) if len(street_lines) > 1 else ''),
'city': address.city,
'postal_code': address.postal_code,
'country': address.country.code if address.country else None,
'country_state': (
address.subdivision.code.split('-', 1)[1]
if address.subdivision else None),
'telephone': phone.value if phone else None,
'email': email.value if email else None,
'sender_address': credential.get_sender_address(shipment),
'external_reference': '/'.join([shipment.number, package.number]),
'quantity': 1,
'order_number': shipment.number,
'weight': UoM.compute_qty(
package.weight_uom, package.total_weight, kg),
'length': UoM.compute_qty(package.length_uom, package.length, cm),
'width': UoM.compute_qty(package.width_uom, package.width, cm),
'height': UoM.compute_qty(package.height_uom, package.height, cm),
'request_label': True,
}
shipping_method = credential.get_shipping_method(shipment)
if shipping_method:
parcel['shipment'] = {'id': shipping_method}
else:
parcel['apply_shipping_rules'] = True
return parcel

View File

@@ -0,0 +1,11 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tryton>
<data>
<record model="ir.action.wizard" id="act_create_shipping_wizard">
<field name="name">Create Sendcloud Shipping for Packages</field>
<field name="wiz_name">stock.shipment.create_shipping.sendcloud</field>
</record>
</data>
</tryton>

View File

@@ -0,0 +1,2 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.

View File

@@ -0,0 +1,232 @@
=========================================
Stock Package Shipping Sendcloud Scenario
=========================================
Imports::
>>> import os
>>> from decimal import Decimal
>>> from random import randint
>>> import requests
>>> from proteus import Model
>>> from trytond.modules.account.tests.tools import (
... create_chart, create_fiscalyear, get_accounts)
>>> from trytond.modules.account_invoice.tests.tools import (
... set_fiscalyear_invoice_sequences)
>>> from trytond.modules.company.tests.tools import create_company, get_company
>>> from trytond.modules.stock_package_shipping_sendcloud.carrier import (
... SENDCLOUD_API_URL)
>>> from trytond.tests.tools import activate_modules
Activate modules::
>>> config = activate_modules(
... ['stock_package_shipping_sendcloud', 'sale', 'sale_shipment_cost'])
>>> Address = Model.get('party.address')
>>> Carrier = Model.get('carrier')
>>> CarrierAddress = Model.get('carrier.sendcloud.address')
>>> CarrierShippingMethod = Model.get('carrier.sendcloud.shipping_method')
>>> Country = Model.get('country.country')
>>> Credential = Model.get('carrier.credential.sendcloud')
>>> Location = Model.get('stock.location')
>>> Package = Model.get('stock.package')
>>> PackageType = Model.get('stock.package.type')
>>> Party = Model.get('party.party')
>>> ProductCategory = Model.get('product.category')
>>> ProductTemplate = Model.get('product.template')
>>> ProductUoM = Model.get('product.uom')
>>> Sale = Model.get('sale.sale')
>>> StockConfiguration = Model.get('stock.configuration')
>>> UoM = Model.get('product.uom')
Create company::
>>> _ = create_company()
>>> company = get_company()
Create fiscal year::
>>> fiscalyear = set_fiscalyear_invoice_sequences(
... create_fiscalyear(company))
>>> fiscalyear.click('create_period')
Create chart of accounts::
>>> _ = create_chart(company)
>>> accounts = get_accounts(company)
Set random sequence::
>>> stock_config = StockConfiguration(1)
>>> stock_config.shipment_out_sequence.number_next = randint(1, 10**6)
>>> stock_config.shipment_out_sequence.save()
>>> stock_config.package_sequence.number_next = randint(1, 10**6)
>>> stock_config.package_sequence.save()
Create parties::
>>> belgium = Country(code='BE', name='Belgium')
>>> belgium.save()
>>> france = Country(code='FR', name='France')
>>> subdivision = france.subdivisions.new()
>>> subdivision.name = "Paris"
>>> subdivision.code = 'FR-75'
>>> subdivision.type = 'metropolitan department'
>>> france.save()
>>> customer = Party(name='Customer')
>>> customer.save()
>>> customer_address = customer.addresses.new()
>>> customer_address.street = 'Champs élysées'
>>> customer_address.postal_code = '75008'
>>> customer_address.city = 'Paris'
>>> customer_address.country = france
>>> customer_address.subdivision = france.subdivisions[0]
>>> customer_address.save()
>>> customer_phone = customer.contact_mechanisms.new()
>>> customer_phone.type = 'phone'
>>> customer_phone.value = '+33 93 842 8862'
>>> customer_phone.save()
Set the warehouse address::
>>> warehouse, = Location.find([('type', '=', 'warehouse')])
>>> company_address = Address()
>>> company_address.party = company.party
>>> company_address.street = '2 rue de la Centrale'
>>> company_address.postal_code = '4000'
>>> company_address.city = 'Sclessin'
>>> company_address.country = belgium
>>> company_address.save()
>>> company_phone = company.party.contact_mechanisms.new()
>>> company_phone.type = 'phone'
>>> company_phone.value = '+32 4 2522122'
>>> company_phone.save()
>>> warehouse.address = company_address
>>> warehouse.save()
Get some units::
>>> cm, = UoM.find([('symbol', '=', 'cm')])
>>> g, = UoM.find([('symbol', '=', 'g')])
Create account category::
>>> account_category = ProductCategory(name="Account Category")
>>> account_category.accounting = True
>>> account_category.account_expense = accounts['expense']
>>> account_category.account_revenue = accounts['revenue']
>>> account_category.save()
Create product::
>>> unit, = ProductUoM.find([('name', '=', 'Unit')])
>>> template = ProductTemplate()
>>> template.name = 'product'
>>> template.default_uom = unit
>>> template.type = 'goods'
>>> template.salable = True
>>> template.weight = 100
>>> template.weight_uom = g
>>> template.list_price = Decimal('10')
>>> template.account_category = account_category
>>> template.save()
>>> product, = template.products
Create Package Type::
>>> box = PackageType(
... name="Box",
... length=10, length_uom=cm,
... height=8, height_uom=cm,
... width=1, width_uom=cm)
>>> box.save()
Create a Sendcloud Carrier and the related credentials::
>>> credential = Credential()
>>> credential.company = company
>>> credential.public_key = os.getenv('SENDCLOUD_PUBLIC_KEY')
>>> credential.secret_key = os.getenv('SENDCLOUD_SECRET_KEY')
>>> credential.save()
>>> address = credential.addresses.new()
>>> address.warehouse = warehouse
>>> address.address = CarrierAddress.get_addresses(
... {'id': address.id, 'sendcloud': {'id': credential.id}},
... address._context)[-1][0]
>>> shipping_method = credential.shipping_methods.new()
>>> shipping_method.shipping_method, = [
... m[0] for m in CarrierShippingMethod.get_shipping_methods(
... {'id': shipping_method.id, 'sendcloud': {'id': credential.id}},
... shipping_method._context)
... if m[1] == "Unstamped letter"]
>>> credential.save()
>>> template = ProductTemplate()
>>> template.name = "Sendcloud"
>>> template.default_uom = unit
>>> template.type = 'service'
>>> template.salable = True
>>> template.list_price = Decimal(20)
>>> template.account_category = account_category
>>> template.save()
>>> carrier_product, = template.products
>>> sendcloud = Party(name="Sendcloud")
>>> sendcloud.save()
>>> carrier = Carrier()
>>> carrier.party = sendcloud
>>> carrier.carrier_product = carrier_product
>>> carrier.shipping_service = 'sendcloud'
>>> carrier.save()
Create a sale and thus a shipment::
>>> sale = Sale()
>>> sale.party = customer
>>> sale.shipment_address = customer_address
>>> sale.invoice_method = 'order'
>>> sale.carrier = carrier
>>> sale_line = sale.lines.new()
>>> sale_line.product = product
>>> sale_line.quantity = 2.0
>>> sale.click('quote')
>>> sale.click('confirm')
>>> sale.click('process')
Create the packages and ship the shipment::
>>> shipment, = sale.shipments
>>> shipment.click('assign_force')
>>> shipment.click('pick')
>>> pack = shipment.packages.new()
>>> pack.type = box
>>> pack_move, = pack.moves.find([])
>>> pack.moves.append(pack_move)
>>> shipment.click('pack')
>>> create_shipping = shipment.click('create_shipping')
>>> shipment.reload()
>>> bool(shipment.shipping_reference)
True
>>> pack, = shipment.root_packages
>>> bool(pack.sendcloud_shipping_id)
True
>>> pack.shipping_label is not None
True
>>> pack.shipping_label_mimetype
'application/pdf'
>>> pack.shipping_reference is not None
True
>>> pack.shipping_tracking_url
'http...'
Clean up::
>>> _ = requests.post(
... SENDCLOUD_API_URL + 'parcels/%s/cancel' % pack.sendcloud_shipping_id,
... auth=(credential.public_key, credential.secret_key))

View File

@@ -0,0 +1,12 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
from trytond.tests.test_tryton import ModuleTestCase
class StockPackageShippingSendcloudTestCase(ModuleTestCase):
'Test Stock Package Shipping Sendcloud module'
module = 'stock_package_shipping_sendcloud'
del ModuleTestCase

View File

@@ -0,0 +1,11 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
import os
from trytond.tests.test_tryton import load_doc_tests
if (os.getenv('SENDCLOUD_PUBLIC_KEY')
and os.getenv('SENDCLOUD_SECRET_KEY')):
def load_tests(*args, **kwargs):
return load_doc_tests(__name__, __file__, *args, **kwargs)

View File

@@ -0,0 +1,16 @@
[tryton]
version=7.2.2
depends:
carrier
company
ir
party
product
stock
stock_shipment_measurements
stock_package
stock_package_shipping
xml:
carrier.xml
stock.xml
message.xml

View File

@@ -0,0 +1,14 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<form cursor="warehouse">
<label name="sendcloud"/>
<field name="sendcloud"/>
<label name="sequence"/>
<field name="sequence"/>
<label name="warehouse"/>
<field name="warehouse"/>
<label name="address"/>
<field name="address"/>
</form>

View File

@@ -0,0 +1,8 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tree sequence="sequence">
<field name="sendcloud" expand="1"/>
<field name="warehouse" expand="1"/>
<field name="address" expand="2"/>
</tree>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<data>
<xpath expr="/form/field[@name='shipping_service']" position="after">
<separator string="Sendcloud" colspan="4" id="sendcloud"/>
<label name="sendcloud_format"/>
<field name="sendcloud_format"/>
</xpath>
</data>

View File

@@ -0,0 +1,14 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<form cursor="warehouse">
<label name="sendcloud"/>
<field name="sendcloud"/>
<label name="sequence"/>
<field name="sequence"/>
<label name="carrier"/>
<field name="carrier"/>
<label name="shipping_method"/>
<field name="shipping_method"/>
</form>

View File

@@ -0,0 +1,8 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tree sequence="sequence">
<field name="sendcloud" expand="1"/>
<field name="carrier" expand="1"/>
<field name="shipping_method" expand="2"/>
</tree>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<form cursor="company">
<label name="company"/>
<field name="company"/>
<label name="sequence"/>
<field name="sequence"/>
<label name="public_key"/>
<field name="public_key" colspan="3"/>
<label name="secret_key"/>
<field name="secret_key" colspan="3"/>
<field name="addresses" colspan="4"/>
<field name="shipping_methods" colspan="4"/>
</form>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tree sequence="sequence">
<field name="company" expand="1"/>
<field name="public_key" expand="2"/>
</tree>