Inital commit
This commit is contained in:
59
local/modules/Colissimo/Form/Configuration.php
Normal file
59
local/modules/Colissimo/Form/Configuration.php
Normal file
@@ -0,0 +1,59 @@
|
||||
<?php
|
||||
/*************************************************************************************/
|
||||
/* This file is part of the Thelia package. */
|
||||
/* */
|
||||
/* Copyright (c) OpenStudio */
|
||||
/* email : dev@thelia.net */
|
||||
/* web : http://www.thelia.net */
|
||||
/* */
|
||||
/* For the full copyright and license information, please view the LICENSE.txt */
|
||||
/* file that was distributed with this source code. */
|
||||
/*************************************************************************************/
|
||||
|
||||
namespace Colissimo\Form;
|
||||
|
||||
use Colissimo\Colissimo;
|
||||
use Colissimo\Model\Config\Base\ColissimoConfigValue;
|
||||
use Thelia\Core\Translation\Translator;
|
||||
use Thelia\Form\BaseForm;
|
||||
|
||||
/**
|
||||
* Class Configuration
|
||||
* @package Colissimo\Form
|
||||
* @author Thomas Arnaud <tarnaud@openstudio.fr>
|
||||
*/
|
||||
class Configuration extends BaseForm
|
||||
{
|
||||
|
||||
protected function buildForm()
|
||||
{
|
||||
$this->formBuilder
|
||||
->add(
|
||||
"enabled",
|
||||
"checkbox",
|
||||
array(
|
||||
"label" => "Enabled",
|
||||
"label_attr" => [
|
||||
"for" => "enabled",
|
||||
"help" => Translator::getInstance()->trans(
|
||||
'Check if you want to activate Colissimo',
|
||||
[],
|
||||
Colissimo::DOMAIN_NAME
|
||||
)
|
||||
],
|
||||
"required" => false,
|
||||
"constraints" => array(
|
||||
),
|
||||
"value" => Colissimo::getConfigValue(ColissimoConfigValue::ENABLED, 1),
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string the name of you form. This name must be unique
|
||||
*/
|
||||
public function getName()
|
||||
{
|
||||
return "colissimo_enable";
|
||||
}
|
||||
}
|
||||
@@ -14,21 +14,16 @@ namespace Colissimo\Form;
|
||||
|
||||
use Colissimo\Colissimo;
|
||||
use Colissimo\Model\ColissimoQuery;
|
||||
use Propel\Runtime\ActiveQuery\Criteria;
|
||||
use Symfony\Component\Validator\Constraints\Callback;
|
||||
use Symfony\Component\Validator\Constraints\NotBlank;
|
||||
use Symfony\Component\Validator\ExecutionContextInterface;
|
||||
use Symfony\Component\Validator\Context\ExecutionContextInterface;
|
||||
use Thelia\Core\Translation\Translator;
|
||||
use Thelia\Form\BaseForm;
|
||||
use Thelia\Model\OrderQuery;
|
||||
use Thelia\Model\OrderStatus;
|
||||
use Thelia\Model\OrderStatusQuery;
|
||||
|
||||
|
||||
/**
|
||||
* Class Export
|
||||
* @package Colissimo\Form
|
||||
* @author Manuel Raynaud <mraynaud@openstudio.fr>
|
||||
* @author Manuel Raynaud <manu@raynaud.io>
|
||||
*/
|
||||
class Export extends BaseForm
|
||||
{
|
||||
@@ -59,35 +54,61 @@ class Export extends BaseForm
|
||||
->find();
|
||||
|
||||
$this->formBuilder
|
||||
->add('status_id', 'text',[
|
||||
'constraints' => [
|
||||
new NotBlank(),
|
||||
new Callback(array(
|
||||
"methods" => array(
|
||||
array($this,
|
||||
"verifyValue")
|
||||
->add(
|
||||
'status_id',
|
||||
'text',
|
||||
[
|
||||
'constraints' => [
|
||||
new NotBlank(),
|
||||
new Callback(
|
||||
array("methods" => array(array($this, "verifyValue")))
|
||||
)
|
||||
))
|
||||
],
|
||||
'label' => Translator::getInstance()->trans('Modify status export after export', [], Colissimo::MESSAGE_DOMAIN),
|
||||
'label_attr' => [
|
||||
'for' => 'status_id'
|
||||
],
|
||||
'label' => Translator::getInstance()->trans(
|
||||
'Modify status export after export',
|
||||
[],
|
||||
Colissimo::DOMAIN_NAME
|
||||
),
|
||||
'label_attr' => [
|
||||
'for' => 'status_id'
|
||||
]
|
||||
]
|
||||
]);
|
||||
);
|
||||
|
||||
/** @var \Thelia\Model\Order $order */
|
||||
foreach ($orders as $order) {
|
||||
$this->formBuilder->add("order_".$order->getId(), "checkbox", array(
|
||||
'label'=>$order->getRef(),
|
||||
'label_attr'=>array('for'=>'export_'.$order->getId())
|
||||
));
|
||||
$this->formBuilder
|
||||
->add(
|
||||
"order_".$order->getId(),
|
||||
"checkbox",
|
||||
array(
|
||||
'label'=>$order->getRef(),
|
||||
'label_attr'=>array(
|
||||
'for'=>'export_'.$order->getId()
|
||||
)
|
||||
)
|
||||
)
|
||||
->add(
|
||||
"order_nb_pkg_".$order->getId(),
|
||||
'number'
|
||||
)
|
||||
->add(
|
||||
"order_weight_".$order->getId(),
|
||||
'number'
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
public function verifyValue($value, ExecutionContextInterface $context)
|
||||
{
|
||||
if (!preg_match("#^nochange|processing|sent$#",$value)) {
|
||||
$context->addViolation(Translator::getInstance()->trans('select a valid status', [], Colissimo::MESSAGE_DOMAIN));
|
||||
if (!preg_match("#^nochange|processing|sent$#", $value)) {
|
||||
$context->addViolation(
|
||||
Translator::getInstance()->trans(
|
||||
'select a valid status',
|
||||
[],
|
||||
Colissimo::DOMAIN_NAME
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -98,4 +119,4 @@ class Export extends BaseForm
|
||||
{
|
||||
return "colissimo_export";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,13 +12,13 @@
|
||||
|
||||
namespace Colissimo\Form;
|
||||
|
||||
|
||||
use Colissimo\Colissimo;
|
||||
use Colissimo\Model\ColissimoFreeshippingQuery;
|
||||
use Colissimo\Model\Config\Base\ColissimoConfigValue;
|
||||
use Thelia\Core\Translation\Translator;
|
||||
use Thelia\Form\BaseForm;
|
||||
|
||||
class FreeShipping extends BaseForm {
|
||||
class FreeShipping extends BaseForm
|
||||
{
|
||||
/**
|
||||
*
|
||||
* in this function you add all the fields you need for your Form.
|
||||
@@ -41,13 +41,15 @@ class FreeShipping extends BaseForm {
|
||||
*/
|
||||
protected function buildForm()
|
||||
{
|
||||
$freeshipping = ColissimoFreeshippingQuery::create()->getLast();
|
||||
$this->formBuilder
|
||||
->add("freeshipping", "checkbox", array(
|
||||
'data'=>$freeshipping,
|
||||
'label'=>Translator::getInstance()->trans("Activate free shipping: ", [], Colissimo::MESSAGE_DOMAIN)
|
||||
))
|
||||
;
|
||||
->add(
|
||||
"freeshipping",
|
||||
"checkbox",
|
||||
array(
|
||||
"label" => Translator::getInstance()->trans("Activate free shipping: ", [], Colissimo::DOMAIN_NAME),
|
||||
"value" => Colissimo::getConfigValue(ColissimoConfigValue::FREE_SHIPPING, false),
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -57,6 +59,4 @@ class FreeShipping extends BaseForm {
|
||||
{
|
||||
return "colissimofreeshipping";
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user