Delivery date in order process
Forum rules
Always add your TYPO3, Aimeos and PHP version as well as your environment (Linux/Mac/Win)
Spam and unrelated posts will be removed immediately!
Always add your TYPO3, Aimeos and PHP version as well as your environment (Linux/Mac/Win)
Spam and unrelated posts will be removed immediately!
Delivery date in order process
Hi,
how can i include a delivery date (custom value) in order process?
is this possible?
best regards
derJu
how can i include a delivery date (custom value) in order process?
is this possible?
best regards
derJu
Re: Delivery date in order process
Yes, that's not a big problem. Create a new service provider decorator and add the configuration for the value you want to add as additionally required value in the delivery checkout page: https://aimeos.org/docs/Developers/Libr ... figuration
You can use the existing decorators as examples:
https://github.com/aimeos/aimeos-core/t ... /Decorator
Here you can find how to configure your new decorator afterwards:
https://aimeos.org/docs/User_Manual/Adm ... decorators
You can use the existing decorators as examples:
https://github.com/aimeos/aimeos-core/t ... /Decorator
Here you can find how to configure your new decorator afterwards:
https://aimeos.org/docs/User_Manual/Adm ... decorators
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos, give us a star
If you like Aimeos, give us a star
Re: Delivery date in order process
hi,
i have a problem in the backend config of my own service provider.
i got an error when i will save it in backend see print screen.
hear ist the code of my own service decorator:
has someone an idea?
LG - derju
i have a problem in the backend config of my own service provider.
i got an error when i will save it in backend see print screen.
hear ist the code of my own service decorator:
Code: Select all
<?php
/**
* @license LGPLv3, http://opensource.org/licenses/LGPL-3.0
* @copyright Metaways Infosystems GmbH, 2011
* @copyright Aimeos (aimeos.org), 2015-2016
* @package MShop
* @subpackage Service
*/
namespace Aimeos\MShop\Service\Provider\Decorator;
/**
* Ddate decorator for service provider.
*
* @package MShop
* @subpackage Service
*/
class Swisspost
extends \Aimeos\MShop\Service\Provider\Decorator\Base
implements \Aimeos\MShop\Service\Provider\Decorator\Iface
{
private $feConfig = array(
'swisspost' => array(
'code' => 'swisspost',
'internalcode'=> 'swisspost',
'label'=> 'PostPac Priority',
'type'=> 'date',
'internaltype'=> 'datetime',
'default'=> '',
'required'=> true,
),
);
private $beConfig = array(
'swisspost.date' => array(
'code' => 'swisspost.date',
'internalcode'=> 'swisspost.date',
'label'=> 'PostPac Priority',
'type'=> 'date',
'internaltype'=> 'datetime',
'default'=> '',
'required'=> true,
),
);
public function getConfigFE( \Aimeos\MShop\Order\Item\Base\Iface $basket )
{
$list = [];
$feconfig = $this->feConfig;
foreach( $feconfig as $key => $config ) {
$list[$key] = new \Aimeos\MW\Criteria\Attribute\Standard( $config );
}
return $list;
}
public function checkConfigFE( array $attributes )
{
return $this->checkConfig( $this->feConfig, $attributes );
}
/**
* Checks the backend configuration attributes for validity.
*
* @param array $attributes Attributes added by the shop owner in the administraton interface
* @return array An array with the attribute keys as key and an error message as values for all attributes that are
* known by the provider but aren't valid
*/
public function checkConfigBE( array $attributes )
{
$error = $this->getProvider()->checkConfigBE( $attributes );
$error += $this->checkConfig( $this->beConfig, $attributes );
return $error;
}
/**
* Returns the configuration attribute definitions of the provider to generate a list of available fields and
* rules for the value of each field in the administration interface.
*
* @return array List of attribute definitions implementing \Aimeos\MW\Common\Critera\Attribute\Iface
*/
public function getConfigBE()
{
$list = $this->getProvider()->getConfigBE();
foreach( $this->beConfig as $key => $config ) {
$list[$key] = new \Aimeos\MW\Criteria\Attribute\Standard( $config );
}
return $list;
}
/**
* Checks if payment provider can be used based on the basket content.
* Checks for country, currency, address, scoring, etc. should be implemented in separate decorators
*
* @param \Aimeos\MShop\Order\Item\Base\Iface $basket Basket object
* @return boolean True if payment provider can be used, false if not
*/
public function isAvailable( \Aimeos\MShop\Order\Item\Base\Iface $basket )
{
if( $basket->getLocale()->getLanguageId() === 'en' ) {
return $this->getProvider()->isAvailable( $basket );
}
return false;
}
}
LG - derju
- Attachments
-
- Screen Shot 2017-06-07 at 09.42.23.png (12.81 KiB) Viewed 2844 times
Re: Delivery date in order process
You've defined it as backend config instead of a frontend configuration.
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos, give us a star
If you like Aimeos, give us a star
Re: Delivery date in order process
thank's that's it!
next problem it show the code as label in frontend not the label from the config?
i tried:
next problem it show the code as label in frontend not the label from the config?
i tried:
Code: Select all
# Example for overwriting translations
plugin.tx_aimeos.settings.i18n.en.0 {
0 {
domain = client
string = Attributes
trans = Filter
}
1 {
domain = client
string = %1$d article
trans {
0 = %1$d
1 = %1$d
}
2 {
domain = client/code
string = swisspost
trans = Lieferdatum
}
}
}
Re: Delivery date in order process
The label is only for internal use because you can't localize it. Therefore, the code is used which you can translate but your translation array is wrong. You have one index to much and your TS config is equal to
but it must be
Code: Select all
plugin.tx_aimeos.settings.i18n.en.0.2.domain = client/code
Code: Select all
plugin.tx_aimeos.settings.i18n.en.2.domain = client/code
Professional support and custom implementation are available at Aimeos.com
If you like Aimeos, give us a star
If you like Aimeos, give us a star