{ | { | ||||
"directory" : "vendor/bower" | |||||
"directory" : "vendor/bower", | |||||
"strict-ssl": false, | |||||
"https-proxy": "" | |||||
} | } |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
* @author Qiang Xue <qiang.xue@gmail.com> | * @author Qiang Xue <qiang.xue@gmail.com> | ||||
* @since 2.0 | * @since 2.0 | ||||
*/ | */ | ||||
class VuejsReportIndexAsset extends \common\components\MyAssetBundle | |||||
class AdminLteAsset extends \common\components\MyAssetBundle | |||||
{ | { | ||||
public $basePath = '@webroot'; | |||||
public $baseUrl = '@web'; | |||||
public $css = []; | |||||
public $js = []; | |||||
public $depends = [ | |||||
'common\assets\CommonAsset' | |||||
]; | |||||
public $sourcePath = '@vendor/almasaeed2010/adminlte/dist'; | |||||
public function __construct() | |||||
{ | |||||
public function __construct() { | |||||
parent::__construct() ; | parent::__construct() ; | ||||
$this->addAsset('js','js/vuejs/report-index.js') ; | |||||
$this->addAsset('css', 'css/AdminLTE.min.css'); | |||||
$this->addAsset('css', 'css/skins/skin-black.min.css'); | |||||
$this->addAsset('js', 'js/adminlte.min.js'); | |||||
} | } | ||||
} | } |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
public $baseUrl = '@web'; | public $baseUrl = '@web'; | ||||
public $css = []; | public $css = []; | ||||
public $js = []; | public $js = []; | ||||
public $depends = []; | |||||
public $depends = [ | |||||
'rmrevin\yii\fontawesome\AssetBundle' | |||||
]; | |||||
public function __construct() { | public function __construct() { | ||||
parent::__construct() ; | parent::__construct() ; | ||||
$dirSelect2 = 'js/select2-4.0.13'; | $dirSelect2 = 'js/select2-4.0.13'; | ||||
// css | // css | ||||
$this->addAsset('css','bootstrap/css/bootstrap.min.css') ; | |||||
$this->addAsset('css',$dirJquery.'/jquery-ui.min.css'); | $this->addAsset('css',$dirJquery.'/jquery-ui.min.css'); | ||||
$this->addAsset('css',$dirJquery.'/jquery-ui.theme.min.css') ; | $this->addAsset('css',$dirJquery.'/jquery-ui.theme.min.css') ; | ||||
$this->addAsset('css',$dirSelect2.'/css/select2.min.css') ; | $this->addAsset('css',$dirSelect2.'/css/select2.min.css') ; | ||||
$this->addAsset('css','css/site.css') ; | $this->addAsset('css','css/site.css') ; | ||||
$this->addAsset('css','css/screen.css') ; | $this->addAsset('css','css/screen.css') ; | ||||
// js | // js | ||||
$this->addAsset('js','bootstrap/js/bootstrap.min.js') ; | |||||
$this->addAsset('js',$dirJquery.'/jquery-ui.min.js') ; | $this->addAsset('js',$dirJquery.'/jquery-ui.min.js') ; | ||||
$this->addAsset('js',$dirSelect2.'/js/select2.min.js') ; | $this->addAsset('js',$dirSelect2.'/js/select2.min.js') ; | ||||
$this->addAsset('js','js/backend.js') ; | $this->addAsset('js','js/backend.js') ; | ||||
// js spécifique | |||||
$this->addAsset('js','js/vuejs/user-form.js') ; | |||||
$this->addAsset('js','js/vuejs/distribution-index.js') ; | |||||
$this->addAsset('js','js/vuejs/subscription-form.js') ; | |||||
$this->addAsset('js', 'js/vuejs/document-form.js'); | |||||
$this->addAsset('js','js/vuejs/producer-update.js') ; | |||||
$this->addAsset('js','js/vuejs/report-index.js') ; | |||||
$this->addAsset('js','js/vuejs/setting-form.js') ; | |||||
} | } | ||||
} | } |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
* @author Qiang Xue <qiang.xue@gmail.com> | * @author Qiang Xue <qiang.xue@gmail.com> | ||||
* @since 2.0 | * @since 2.0 | ||||
*/ | */ | ||||
class VuejsDistributionIndexAsset extends \common\components\MyAssetBundle | |||||
class CommonAsset extends \common\components\MyAssetBundle | |||||
{ | { | ||||
public $basePath = '@webroot'; | |||||
public $baseUrl = '@web'; | |||||
public $sourcePath = '@common/web/' ; | |||||
public $css = []; | public $css = []; | ||||
public $js = []; | public $js = []; | ||||
public $depends = [ | public $depends = [ | ||||
'common\assets\CommonAsset', | |||||
'backend\assets\AppAsset', | |||||
'yii\web\YiiAsset', | |||||
]; | ]; | ||||
public function __construct() | |||||
{ | |||||
public function __construct() { | |||||
parent::__construct() ; | parent::__construct() ; | ||||
$this->addAsset('js','js/vuejs/distribution-index.js') ; | |||||
// css | |||||
$this->addAsset('css','bootstrap-icons/font/bootstrap-icons.min.css') ; | |||||
$this->addAsset('css','css/screen.css') ; | |||||
// js | |||||
$this->addAsset('js','js/jquery-ui-1.11.4.custom/jquery-ui.min.js'); | |||||
$this->addAsset('js','js/promise-polyfill/promise.min.js'); | |||||
$this->addAsset('js','js/axios/axios.min.js'); | |||||
$this->addAsset('js','js/simple-lightbox/simpleLightbox.min.js') ; | |||||
$this->addAsset('js','js/vuejs/vue.js'); | |||||
$this->addAsset('js','js/vuejs/vcalendar/v-calendar.umd.min.js') ; | |||||
$this->addAsset('js','js/common.js') ; | |||||
} | } | ||||
} | } |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
public $css = []; | public $css = []; | ||||
public $js = []; | public $js = []; | ||||
public $depends = [ | public $depends = [ | ||||
'common\assets\CommonAsset' | |||||
//'backend\assets\AppAsset', | |||||
]; | ]; | ||||
public function __construct() | public function __construct() |
<?php | |||||
/** | |||||
* Copyright distrib (2018) | |||||
* | |||||
* contact@opendistrib.net | |||||
* | |||||
* Ce logiciel est un programme informatique servant à aider les producteurs | |||||
* à distribuer leur production en circuits courts. | |||||
* | |||||
* Ce logiciel est régi par la licence CeCILL soumise au droit français et | |||||
* respectant les principes de diffusion des logiciels libres. Vous pouvez | |||||
* utiliser, modifier et/ou redistribuer ce programme sous les conditions | |||||
* de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA | |||||
* sur le site "http://www.cecill.info". | |||||
* | |||||
* En contrepartie de l'accessibilité au code source et des droits de copie, | |||||
* de modification et de redistribution accordés par cette licence, il n'est | |||||
* offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, | |||||
* seule une responsabilité restreinte pèse sur l'auteur du programme, le | |||||
* titulaire des droits patrimoniaux et les concédants successifs. | |||||
* | |||||
* A cet égard l'attention de l'utilisateur est attirée sur les risques | |||||
* associés au chargement, à l'utilisation, à la modification et/ou au | |||||
* développement et à la reproduction du logiciel par l'utilisateur étant | |||||
* donné sa spécificité de logiciel libre, qui peut le rendre complexe à | |||||
* manipuler et qui le réserve donc à des développeurs et des professionnels | |||||
* avertis possédant des connaissances informatiques approfondies. Les | |||||
* utilisateurs sont donc invités à charger et tester l'adéquation du | |||||
* logiciel à leurs besoins dans des conditions permettant d'assurer la | |||||
* sécurité de leurs systèmes et ou de leurs données et, plus généralement, | |||||
* à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. | |||||
* | |||||
* Le fait que vous puissiez accéder à cet en-tête signifie que vous avez | |||||
* pris connaissance de la licence CeCILL, et que vous en avez accepté les | |||||
* termes. | |||||
*/ | |||||
namespace backend\assets; | |||||
use yii\web\AssetBundle; | |||||
use yii; | |||||
/** | |||||
* @author Qiang Xue <qiang.xue@gmail.com> | |||||
* @since 2.0 | |||||
*/ | |||||
class VuejsDocumentFormAsset extends \common\components\MyAssetBundle | |||||
{ | |||||
public $basePath = '@webroot'; | |||||
public $baseUrl = '@web'; | |||||
public $css = []; | |||||
public $js = []; | |||||
public $depends = [ | |||||
'common\assets\CommonAsset', | |||||
'backend\assets\AppAsset', | |||||
'backend\assets\VuejsAlertsAsset', | |||||
]; | |||||
public function __construct() | |||||
{ | |||||
parent::__construct(); | |||||
$this->addAsset('js', 'js/vuejs/document-form.js'); | |||||
} | |||||
} |
<?php | |||||
/** | |||||
Copyright distrib (2018) | |||||
contact@opendistrib.net | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | |||||
à distribuer leur production en circuits courts. | |||||
Ce logiciel est régi par la licence CeCILL soumise au droit français et | |||||
respectant les principes de diffusion des logiciels libres. Vous pouvez | |||||
utiliser, modifier et/ou redistribuer ce programme sous les conditions | |||||
de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA | |||||
sur le site "http://www.cecill.info". | |||||
En contrepartie de l'accessibilité au code source et des droits de copie, | |||||
de modification et de redistribution accordés par cette licence, il n'est | |||||
offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, | |||||
seule une responsabilité restreinte pèse sur l'auteur du programme, le | |||||
titulaire des droits patrimoniaux et les concédants successifs. | |||||
A cet égard l'attention de l'utilisateur est attirée sur les risques | |||||
associés au chargement, à l'utilisation, à la modification et/ou au | |||||
développement et à la reproduction du logiciel par l'utilisateur étant | |||||
donné sa spécificité de logiciel libre, qui peut le rendre complexe à | |||||
manipuler et qui le réserve donc à des développeurs et des professionnels | |||||
avertis possédant des connaissances informatiques approfondies. Les | |||||
utilisateurs sont donc invités à charger et tester l'adéquation du | |||||
logiciel à leurs besoins dans des conditions permettant d'assurer la | |||||
sécurité de leurs systèmes et ou de leurs données et, plus généralement, | |||||
à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. | |||||
Le fait que vous puissiez accéder à cet en-tête signifie que vous avez | |||||
pris connaissance de la licence CeCILL, et que vous en avez accepté les | |||||
termes. | |||||
*/ | |||||
namespace backend\assets; | |||||
use yii\web\AssetBundle; | |||||
use yii ; | |||||
/** | |||||
* @author Qiang Xue <qiang.xue@gmail.com> | |||||
* @since 2.0 | |||||
*/ | |||||
class VuejsProducerUpdateAsset extends \common\components\MyAssetBundle | |||||
{ | |||||
public $basePath = '@webroot'; | |||||
public $baseUrl = '@web'; | |||||
public $css = []; | |||||
public $js = []; | |||||
public $depends = [ | |||||
'common\assets\CommonAsset' | |||||
]; | |||||
public function __construct() | |||||
{ | |||||
parent::__construct() ; | |||||
$this->addAsset('js','js/vuejs/producer-update.js') ; | |||||
} | |||||
} |
<?php | |||||
/** | |||||
Copyright distrib (2018) | |||||
contact@opendistrib.net | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | |||||
à distribuer leur production en circuits courts. | |||||
Ce logiciel est régi par la licence CeCILL soumise au droit français et | |||||
respectant les principes de diffusion des logiciels libres. Vous pouvez | |||||
utiliser, modifier et/ou redistribuer ce programme sous les conditions | |||||
de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA | |||||
sur le site "http://www.cecill.info". | |||||
En contrepartie de l'accessibilité au code source et des droits de copie, | |||||
de modification et de redistribution accordés par cette licence, il n'est | |||||
offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, | |||||
seule une responsabilité restreinte pèse sur l'auteur du programme, le | |||||
titulaire des droits patrimoniaux et les concédants successifs. | |||||
A cet égard l'attention de l'utilisateur est attirée sur les risques | |||||
associés au chargement, à l'utilisation, à la modification et/ou au | |||||
développement et à la reproduction du logiciel par l'utilisateur étant | |||||
donné sa spécificité de logiciel libre, qui peut le rendre complexe à | |||||
manipuler et qui le réserve donc à des développeurs et des professionnels | |||||
avertis possédant des connaissances informatiques approfondies. Les | |||||
utilisateurs sont donc invités à charger et tester l'adéquation du | |||||
logiciel à leurs besoins dans des conditions permettant d'assurer la | |||||
sécurité de leurs systèmes et ou de leurs données et, plus généralement, | |||||
à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. | |||||
Le fait que vous puissiez accéder à cet en-tête signifie que vous avez | |||||
pris connaissance de la licence CeCILL, et que vous en avez accepté les | |||||
termes. | |||||
*/ | |||||
namespace backend\assets; | |||||
use yii\web\AssetBundle; | |||||
use yii ; | |||||
class VuejsSettingFormAsset extends \common\components\MyAssetBundle | |||||
{ | |||||
public $basePath = '@webroot'; | |||||
public $baseUrl = '@web'; | |||||
public $css = []; | |||||
public $js = []; | |||||
public $depends = [ | |||||
'common\assets\CommonAsset' | |||||
]; | |||||
public function __construct() | |||||
{ | |||||
parent::__construct() ; | |||||
$this->addAsset('js','js/vuejs/setting-form.js') ; | |||||
} | |||||
} |
<?php | |||||
/** | |||||
Copyright distrib (2018) | |||||
contact@opendistrib.net | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | |||||
à distribuer leur production en circuits courts. | |||||
Ce logiciel est régi par la licence CeCILL soumise au droit français et | |||||
respectant les principes de diffusion des logiciels libres. Vous pouvez | |||||
utiliser, modifier et/ou redistribuer ce programme sous les conditions | |||||
de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA | |||||
sur le site "http://www.cecill.info". | |||||
En contrepartie de l'accessibilité au code source et des droits de copie, | |||||
de modification et de redistribution accordés par cette licence, il n'est | |||||
offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, | |||||
seule une responsabilité restreinte pèse sur l'auteur du programme, le | |||||
titulaire des droits patrimoniaux et les concédants successifs. | |||||
A cet égard l'attention de l'utilisateur est attirée sur les risques | |||||
associés au chargement, à l'utilisation, à la modification et/ou au | |||||
développement et à la reproduction du logiciel par l'utilisateur étant | |||||
donné sa spécificité de logiciel libre, qui peut le rendre complexe à | |||||
manipuler et qui le réserve donc à des développeurs et des professionnels | |||||
avertis possédant des connaissances informatiques approfondies. Les | |||||
utilisateurs sont donc invités à charger et tester l'adéquation du | |||||
logiciel à leurs besoins dans des conditions permettant d'assurer la | |||||
sécurité de leurs systèmes et ou de leurs données et, plus généralement, | |||||
à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. | |||||
Le fait que vous puissiez accéder à cet en-tête signifie que vous avez | |||||
pris connaissance de la licence CeCILL, et que vous en avez accepté les | |||||
termes. | |||||
*/ | |||||
namespace backend\assets; | |||||
use yii\web\AssetBundle; | |||||
use yii ; | |||||
/** | |||||
* @author Qiang Xue <qiang.xue@gmail.com> | |||||
* @since 2.0 | |||||
*/ | |||||
class VuejsSubscriptionFormAsset extends \common\components\MyAssetBundle | |||||
{ | |||||
public $basePath = '@webroot'; | |||||
public $baseUrl = '@web'; | |||||
public $css = []; | |||||
public $js = []; | |||||
public $depends = [ | |||||
'common\assets\CommonAsset' | |||||
]; | |||||
public function __construct() | |||||
{ | |||||
parent::__construct() ; | |||||
$this->addAsset('js','js/vuejs/subscription-form.js') ; | |||||
} | |||||
} |
<?php | |||||
/** | |||||
Copyright distrib (2018) | |||||
contact@opendistrib.net | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | |||||
à distribuer leur production en circuits courts. | |||||
Ce logiciel est régi par la licence CeCILL soumise au droit français et | |||||
respectant les principes de diffusion des logiciels libres. Vous pouvez | |||||
utiliser, modifier et/ou redistribuer ce programme sous les conditions | |||||
de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA | |||||
sur le site "http://www.cecill.info". | |||||
En contrepartie de l'accessibilité au code source et des droits de copie, | |||||
de modification et de redistribution accordés par cette licence, il n'est | |||||
offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, | |||||
seule une responsabilité restreinte pèse sur l'auteur du programme, le | |||||
titulaire des droits patrimoniaux et les concédants successifs. | |||||
A cet égard l'attention de l'utilisateur est attirée sur les risques | |||||
associés au chargement, à l'utilisation, à la modification et/ou au | |||||
développement et à la reproduction du logiciel par l'utilisateur étant | |||||
donné sa spécificité de logiciel libre, qui peut le rendre complexe à | |||||
manipuler et qui le réserve donc à des développeurs et des professionnels | |||||
avertis possédant des connaissances informatiques approfondies. Les | |||||
utilisateurs sont donc invités à charger et tester l'adéquation du | |||||
logiciel à leurs besoins dans des conditions permettant d'assurer la | |||||
sécurité de leurs systèmes et ou de leurs données et, plus généralement, | |||||
à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. | |||||
Le fait que vous puissiez accéder à cet en-tête signifie que vous avez | |||||
pris connaissance de la licence CeCILL, et que vous en avez accepté les | |||||
termes. | |||||
*/ | |||||
namespace backend\assets; | |||||
use yii\web\AssetBundle; | |||||
use yii ; | |||||
/** | |||||
* @author Qiang Xue <qiang.xue@gmail.com> | |||||
* @since 2.0 | |||||
*/ | |||||
class VuejsUserFormAsset extends \common\components\MyAssetBundle | |||||
{ | |||||
public $basePath = '@webroot'; | |||||
public $baseUrl = '@web'; | |||||
public $css = []; | |||||
public $js = []; | |||||
public $depends = [ | |||||
'common\assets\CommonAsset', | |||||
'backend\assets\AppAsset', | |||||
]; | |||||
public function __construct() | |||||
{ | |||||
parent::__construct() ; | |||||
$this->addAsset('js','js/vuejs/user-form.js') ; | |||||
} | |||||
} |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
termes. | termes. | ||||
*/ | */ | ||||
return [ | |||||
'adminEmail' => 'contact@opendistrib.net', | |||||
]; | |||||
return []; |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
'orders' => $arrayOrders | 'orders' => $arrayOrders | ||||
] | ] | ||||
) | ) | ||||
->setFrom([Yii::$app->parameterBag->get('adminEmail') => 'distrib']); | |||||
->setFrom([Yii::$app->parameterBag->get('adminEmail') => 'Souke']); | |||||
if (is_array($arrayOrders) && count($arrayOrders)) { | if (is_array($arrayOrders) && count($arrayOrders)) { | ||||
$subject = '[Opendistrib] Commandes du ' . date('d/m', strtotime($date)); | |||||
$subject = '[Souke] Commandes du ' . date('d/m', strtotime($date)); | |||||
// @TODO : envoyer uniquement les exports qui sont activés dans les paramètres du producteur | // @TODO : envoyer uniquement les exports qui sont activés dans les paramètres du producteur | ||||
$distributionModule->getExportManager()->generate(ExportManager::ORDERS_PDF, $distribution, true); | $distributionModule->getExportManager()->generate(ExportManager::ORDERS_PDF, $distribution, true); | ||||
Yii::getAlias('@app/web/pdf/Commandes-' . $date . '-' . $producer->id . '.pdf') | Yii::getAlias('@app/web/pdf/Commandes-' . $date . '-' . $producer->id . '.pdf') | ||||
); | ); | ||||
} else { | } else { | ||||
$subject = '[Opendistrib] Aucune commande'; | |||||
$subject = '[Souke] Aucune commande'; | |||||
} | } | ||||
$mail->setSubject($subject); | $mail->setSubject($subject); |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
} | } | ||||
/** | /** | ||||
* Retourne l'état du paiement (historique, crédit) d'une commande donnée. | |||||
* Retourne l'état du paiement (historique, cagnotte) d'une commande donnée. | |||||
*/ | */ | ||||
public function actionPaymentStatus(int $idOrder) | public function actionPaymentStatus(int $idOrder) | ||||
{ | { | ||||
if (abs($order->amount - $amountPaid) < 0.0001) { | if (abs($order->amount - $amountPaid) < 0.0001) { | ||||
$html .= '<span class="label label-success">Payé</span>'; | $html .= '<span class="label label-success">Payé</span>'; | ||||
$buttonsCredit = Html::a('Recréditer ' . $orderModule->getOrderAmountWithTax($order, Order::AMOUNT_TOTAL, true), 'javascript:void(0);', ['class' => 'btn btn-default btn-xs rembourser', 'data-montant' => $order->amount, 'data-type' => 'refund']); | |||||
$buttonsCredit = Html::a('Rembourser ' . $orderModule->getOrderAmountWithTax($order, Order::AMOUNT_TOTAL, true), 'javascript:void(0);', ['class' => 'btn btn-default btn-xs rembourser', 'data-montant' => $order->amount, 'data-type' => 'refund']); | |||||
} elseif ($order->amount > $amountPaid) { | } elseif ($order->amount > $amountPaid) { | ||||
$amountToPay = $order->amount - $amountPaid; | $amountToPay = $order->amount - $amountPaid; | ||||
$html .= '<span class="label label-danger">Non payé</span> reste <strong>' . number_format($amountToPay, 2) . ' €</strong> à débiter'; | $html .= '<span class="label label-danger">Non payé</span> reste <strong>' . number_format($amountToPay, 2) . ' €</strong> à débiter'; | ||||
$buttonsCredit = Html::a('Débiter ' . number_format($amountToPay, 2) . ' €', 'javascript:void(0);', ['class' => 'btn btn-default btn-xs payer', 'data-montant' => $amountToPay, 'data-type' => 'payment']); | $buttonsCredit = Html::a('Débiter ' . number_format($amountToPay, 2) . ' €', 'javascript:void(0);', ['class' => 'btn btn-default btn-xs payer', 'data-montant' => $amountToPay, 'data-type' => 'payment']); | ||||
} elseif ($order->amount < $amountPaid) { | } elseif ($order->amount < $amountPaid) { | ||||
$amountToRefund = $amountPaid - $order->amount; | $amountToRefund = $amountPaid - $order->amount; | ||||
$html .= ' <span class="label label-success">Payé</span> <strong>' . number_format($amountToRefund, 2) . ' €</strong> à recréditer'; | |||||
$buttonsCredit = Html::a('Recréditer ' . number_format($amountToRefund, 2) . ' €', 'javascript:void(0);', ['class' => 'btn btn-default btn-xs rembourser', 'data-montant' => $amountToRefund, 'data-type' => 'refund']); | |||||
$html .= ' <span class="label label-success">Payé</span> <strong>' . number_format($amountToRefund, 2) . ' €</strong> à rembourser'; | |||||
$buttonsCredit = Html::a('Rembourser ' . number_format($amountToRefund, 2) . ' €', 'javascript:void(0);', ['class' => 'btn btn-default btn-xs rembourser', 'data-montant' => $amountToRefund, 'data-type' => 'refund']); | |||||
} | } | ||||
$html .= '<span class="buttons-credit">' | $html .= '<span class="buttons-credit">' | ||||
. 'Crédit : <strong>' . number_format($userProducer->credit, 2) . ' €</strong><br />' | |||||
. 'Cagnotte : <strong>' . number_format($userProducer->credit, 2) . ' €</strong><br />' | |||||
. $buttonsCredit | . $buttonsCredit | ||||
. '</span>'; | . '</span>'; | ||||
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
if ($pointSale->load(\Yii::$app->request->post()) && $pointSale->save()) { | if ($pointSale->load(\Yii::$app->request->post()) && $pointSale->save()) { | ||||
$pointSaleModule->updatePointSalePointProduction($pointSale); | $pointSaleModule->updatePointSalePointProduction($pointSale); | ||||
$pointSaleModule->processRestrictedAccess($pointSale); | $pointSaleModule->processRestrictedAccess($pointSale); | ||||
$this->initPaymentMethodsByCreditFunctioning($pointSale); | |||||
$distributionModule->addPointSaleIncomingDistributions($pointSale); | $distributionModule->addPointSaleIncomingDistributions($pointSale); | ||||
return $this->redirect(['index']); | return $this->redirect(['index']); | ||||
$pointSaleModule->updatePointSalePointProduction($model); | $pointSaleModule->updatePointSalePointProduction($model); | ||||
$pointSaleModule->processRestrictedAccess($model); | $pointSaleModule->processRestrictedAccess($model); | ||||
$this->initPaymentMethodsByCreditFunctioning($model); | |||||
$distributionModule->addPointSaleIncomingDistributions($model); | $distributionModule->addPointSaleIncomingDistributions($model); | ||||
$this->setFlash('success', 'Point de vente modifié.'); | $this->setFlash('success', 'Point de vente modifié.'); | ||||
} | } | ||||
} | } | ||||
public function initPaymentMethodsByCreditFunctioning(PointSale $pointSale) | |||||
{ | |||||
if($this->getPointSaleModule()->getBuilder()->initPaymentMethodsByCreditFunctioning($pointSale)) { | |||||
$this->addFlash('info', 'Le paiement sur place a été ajusté par rapport au fonctionnement de la cagnotte.'); | |||||
} | |||||
} | |||||
/** | /** | ||||
* Initialise le formulaire de création/modification. | * Initialise le formulaire de création/modification. | ||||
*/ | */ |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
namespace backend\controllers; | namespace backend\controllers; | ||||
use common\helpers\CSV; | |||||
use common\helpers\GlobalParam; | use common\helpers\GlobalParam; | ||||
use common\helpers\MeanPayment; | |||||
use common\helpers\Price; | use common\helpers\Price; | ||||
use Yii; | use Yii; | ||||
use yii\filters\AccessControl; | use yii\filters\AccessControl; | ||||
$resArray[] = [ | $resArray[] = [ | ||||
'name' => '', | 'name' => '', | ||||
'quantity' => '', | 'quantity' => '', | ||||
'total' => '<strong>' . Price::format(round($totalGlobal, 2)) . '</strong>', | |||||
'total' => '<strong>' . Price::format(round($totalGlobal, 2)) . ' HT</strong>', | |||||
]; | ]; | ||||
return $resArray; | return $resArray; | ||||
return $condition; | return $condition; | ||||
} | } | ||||
public function actionPayments(string $dateStart, string $dateEnd) | |||||
{ | |||||
$orderModule = $this->getOrderModule(); | |||||
$ordersArray = $orderModule->getRepository() | |||||
->findOrdersByPeriod( | |||||
new \DateTime($dateStart), | |||||
new \DateTime($dateEnd) | |||||
); | |||||
$datas = [ | |||||
[ | |||||
'Date', | |||||
'Client', | |||||
'Montant', | |||||
'Facture', | |||||
'Crédit', | |||||
'Espèce', | |||||
'Chèque', | |||||
'Virement', | |||||
'Carte bancaire', | |||||
'Total' | |||||
] | |||||
]; | |||||
$sumAmountTotalSpentByCredit = 0; | |||||
$sumAmountTotalSpentByMoney = 0; | |||||
$sumAmountTotalSpentByCheque = 0; | |||||
$sumAmountTotalSpentByTransfer = 0; | |||||
$sumAmountTotalSpentByCreditCard = 0; | |||||
foreach($ordersArray as $order) { | |||||
$orderModule->getBuilder()->initOrder($order); | |||||
$hasInvoice = false; | |||||
$referenceInvoice = 'Non'; | |||||
if($order->invoice) { | |||||
$hasInvoice = true; | |||||
$referenceInvoice = $order->invoice->reference.""; | |||||
} | |||||
$amountTotalSpentByCredit = $orderModule->getSolver()->getAmountTotalSpentByMeanPayment($order, MeanPayment::CREDIT); | |||||
$sumAmountTotalSpentByCredit += $amountTotalSpentByCredit; | |||||
$amountTotalSpentByMoney = $orderModule->getSolver()->getAmountTotalSpentByMeanPayment($order, MeanPayment::MONEY); | |||||
$sumAmountTotalSpentByMoney += $amountTotalSpentByMoney; | |||||
$amountTotalSpentByCheque = $orderModule->getSolver()->getAmountTotalSpentByMeanPayment($order, MeanPayment::CHEQUE); | |||||
$sumAmountTotalSpentByCheque += $amountTotalSpentByCheque; | |||||
$amountTotalSpentByTransfer = $orderModule->getSolver()->getAmountTotalSpentByMeanPayment($order, MeanPayment::TRANSFER); | |||||
$sumAmountTotalSpentByTransfer += $amountTotalSpentByTransfer; | |||||
$amountTotalSpentByCreditCard = $orderModule->getSolver()->getAmountTotalSpentByMeanPayment($order, MeanPayment::CREDIT_CARD); | |||||
$sumAmountTotalSpentByCreditCard += $amountTotalSpentByCreditCard; | |||||
$datas[] = [ | |||||
$order->distribution->date, | |||||
$orderModule->getSolver()->getOrderUsername($order), | |||||
CSV::formatNumber($orderModule->getSolver()->getOrderAmountWithTax($order)), | |||||
$referenceInvoice, | |||||
$hasInvoice ? '' : CSV::formatNumber($amountTotalSpentByCredit), | |||||
$hasInvoice ? '' : CSV::formatNumber($amountTotalSpentByMoney), | |||||
$hasInvoice ? '' : CSV::formatNumber($amountTotalSpentByCheque), | |||||
$hasInvoice ? '' : CSV::formatNumber($amountTotalSpentByTransfer), | |||||
$hasInvoice ? '' : CSV::formatNumber($amountTotalSpentByCreditCard) | |||||
]; | |||||
} | |||||
$datas[] = [ | |||||
'', | |||||
'', | |||||
'', | |||||
'Totaux paiements', | |||||
CSV::formatNumber($sumAmountTotalSpentByCredit), | |||||
CSV::formatNumber($sumAmountTotalSpentByMoney), | |||||
CSV::formatNumber($sumAmountTotalSpentByCheque), | |||||
CSV::formatNumber($sumAmountTotalSpentByTransfer), | |||||
CSV::formatNumber($sumAmountTotalSpentByCreditCard), | |||||
CSV::formatNumber($sumAmountTotalSpentByCredit + $sumAmountTotalSpentByMoney + $sumAmountTotalSpentByCheque + | |||||
$sumAmountTotalSpentByTransfer + $sumAmountTotalSpentByCreditCard) | |||||
]; | |||||
CSV::send('commandes.csv', $datas); | |||||
} | |||||
} | } |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
if ($userProducer) { | if ($userProducer) { | ||||
if ($userProducerModule->hasOutstandingCredit($userProducer)) { | if ($userProducerModule->hasOutstandingCredit($userProducer)) { | ||||
$this->setFlash('error', "Vous ne pouvez pas supprimer cet utilisateur car il a toujours du crédit en cours."); | |||||
$this->setFlash('error', "Vous ne pouvez pas supprimer cet utilisateur car il a toujours de l'argent dans sa cagnotte."); | |||||
} else { | } else { | ||||
$userProducerModule->unlinkUserProducer($userProducer); | $userProducerModule->unlinkUserProducer($userProducer); | ||||
$this->setFlash('success', 'L\'utilisateur a bien été supprimé de votre établissement.'); | $this->setFlash('success', 'L\'utilisateur a bien été supprimé de votre établissement.'); | ||||
} | } | ||||
/** | /** | ||||
* Affiche les données liées au crédit d'un utilisateur (formulaire, historique). | |||||
* Affiche les données liées à la cagnotte d'un utilisateur (formulaire, historique). | |||||
*/ | */ | ||||
public function actionCredit(int $id) | public function actionCredit(int $id) | ||||
{ | { | ||||
} | } | ||||
} | } | ||||
$this->addFlash('success', 'Crédit mis à jour.'); | |||||
$this->addFlash('success', 'Cagnotte mise à jour.'); | |||||
return $this->refresh(); | return $this->refresh(); | ||||
} | } |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
if($fromProducer) { | if($fromProducer) { | ||||
$producer = GlobalParam::getCurrentProducer() ; | $producer = GlobalParam::getCurrentProducer() ; | ||||
$fromEmail = $producerModule->getEmailOpendistrib($producer) ; | |||||
$fromEmail = $producerModule->getProducerEmailPlatform($producer) ; | |||||
$fromName = $producer->name ; | $fromName = $producer->name ; | ||||
$linkProducer = 'https://'.$producer->slug.'.opendistrib.net'; | |||||
$linkProducer = 'https://'.$producer->slug.'.souke.fr'; | |||||
$linkUnsubscribe = Yii::$app->urlManagerProducer->createAbsoluteUrl(['newsletter/unsubscribe', 'slug_producer' => $producer->slug]); | $linkUnsubscribe = Yii::$app->urlManagerProducer->createAbsoluteUrl(['newsletter/unsubscribe', 'slug_producer' => $producer->slug]); | ||||
// Message inscription newsletter | // Message inscription newsletter | ||||
$messageAutoHtml .= "Me désinscrire : <a href=\"".$linkUnsubscribe."\">".$linkUnsubscribe."</a>"; | $messageAutoHtml .= "Me désinscrire : <a href=\"".$linkUnsubscribe."\">".$linkUnsubscribe."</a>"; | ||||
} | } | ||||
else { | else { | ||||
$fromEmail = 'contact@opendistrib.net' ; | |||||
$fromName = 'Opendistrib' ; | |||||
$fromEmail = 'contact@souke.fr' ; | |||||
$fromName = 'Souke' ; | |||||
} | } | ||||
// Tests | // Tests |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
</div> | </div> | ||||
<div class="clr"></div> | <div class="clr"></div> | ||||
<h3>Pour réserver vos produits en ligne :</h3> | <h3>Pour réserver vos produits en ligne :</h3> | ||||
<h4><span><?= Html::encode($producer->slug).'.opendistrib.net' ?></span></h4> | |||||
<h4><span><?= Html::encode($producer->slug).'.souke.fr' ?></span></h4> | |||||
</div> | </div> |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
$userModule = $this->getUserModule(); | $userModule = $this->getUserModule(); | ||||
$this->setTitle('Crédit'); | |||||
$this->setTitle('Cagnotte'); | |||||
?> | ?> | ||||
<span class="info-box-icon <?= $sumUserProducerCredits >= 0 ? 'bg-green' : 'bg-red' ?>"><i | <span class="info-box-icon <?= $sumUserProducerCredits >= 0 ? 'bg-green' : 'bg-red' ?>"><i | ||||
class="fa fa-euro"></i></span> | class="fa fa-euro"></i></span> | ||||
<div class="info-box-content"> | <div class="info-box-content"> | ||||
<span class="info-box-text">Somme totale en crédit</span> | |||||
<span class="info-box-text">Somme totale en cagnotte</span> | |||||
<span class="info-box-number"><?= Price::format($sumUserProducerCredits); ?></span> | <span class="info-box-number"><?= Price::format($sumUserProducerCredits); ?></span> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
<span class="info-box-icon bg-orange"><i class="fa fa-download"></i></span> | <span class="info-box-icon bg-orange"><i class="fa fa-download"></i></span> | ||||
<div class="info-box-content"> | <div class="info-box-content"> | ||||
<span class="info-box-text">Exports<br /> | <span class="info-box-text">Exports<br /> | ||||
<a class="btn btn-default btn-sm" href="<?= Yii::$app->urlManager->createUrl(['credit/export-users', 'type' => 'negative']); ?>">Clients au crédit négatif (CSV)</a> | |||||
<a class="btn btn-default btn-sm" href="<?= Yii::$app->urlManager->createUrl(['credit/export-users', 'type' => 'positive']); ?>">Clients au crédit positif (CSV)</a> | |||||
<a class="btn btn-default btn-sm" href="<?= Yii::$app->urlManager->createUrl(['credit/export-users', 'type' => 'negative']); ?>">Clients avec une cagnotte en négatif (CSV)</a> | |||||
<a class="btn btn-default btn-sm" href="<?= Yii::$app->urlManager->createUrl(['credit/export-users', 'type' => 'positive']); ?>">Clients avec une cagnotte en positif (CSV)</a> | |||||
</span> | </span> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
<h3>Clients avec un crédit négatif</h3> | |||||
<h3>Clients avec une cagnotte en négatif</h3> | |||||
<?= | <?= | ||||
} | } | ||||
], | ], | ||||
[ | [ | ||||
'label' => 'Crédit', | |||||
'label' => 'Cagnotte', | |||||
'format' => 'raw', | 'format' => 'raw', | ||||
'value' => function ($user) { | 'value' => function ($user) { | ||||
return Price::format($user['credit']); | return Price::format($user['credit']); |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
termes. | termes. | ||||
*/ | */ | ||||
\backend\assets\VuejsDistributionIndexAsset::register($this); | |||||
$this->setTitle('Distributions') ; | $this->setTitle('Distributions') ; | ||||
$this->setPageTitle('Distributions') ; | $this->setPageTitle('Distributions') ; | ||||
CA TTC : <strong>{{ totalActivePointSale() }} €</strong> / Poids : <strong>{{ weightActivePointSale() }} kg</strong> | CA TTC : <strong>{{ totalActivePointSale() }} €</strong> / Poids : <strong>{{ weightActivePointSale() }} kg</strong> | ||||
</div> | </div> | ||||
<div v-if="producer.credit && pointSaleActive"> | <div v-if="producer.credit && pointSaleActive"> | ||||
<span class="title">Crédit</span> | |||||
<template v-if="pointSaleActive.credit && pointSaleActive.credit == 1"> | |||||
<span class="title">Cagnotte</span> | |||||
<template v-if="pointSaleActive.payment_method_credit && pointSaleActive.payment_method_credit == 1"> | |||||
<template v-if="pointSaleActive.credit_functioning == 'mandatory'">Obligatoire</template> | <template v-if="pointSaleActive.credit_functioning == 'mandatory'">Obligatoire</template> | ||||
<template v-else-if="pointSaleActive.credit_functioning == 'user'">Basé sur l'utilisateur</template> | <template v-else-if="pointSaleActive.credit_functioning == 'user'">Basé sur l'utilisateur</template> | ||||
<template v-else-if="pointSaleActive.credit_functioning == 'optional'">Optionnel</template> | <template v-else-if="pointSaleActive.credit_functioning == 'optional'">Optionnel</template> | ||||
<th class="column-point-sale" v-if="idActivePointSale == 0">Point de vente</th> | <th class="column-point-sale" v-if="idActivePointSale == 0">Point de vente</th> | ||||
<th class="column-amount">Montant</th> | <th class="column-amount">Montant</th> | ||||
<th class="column-state-payment">Paiement</th> | <th class="column-state-payment">Paiement</th> | ||||
<th class="column-credit" v-if="!idActivePointSale || (pointSaleActive && pointSaleActive.credit == 1)">Crédit</th> | |||||
<th class="column-credit" v-if="!idActivePointSale || (pointSaleActive && pointSaleActive.payment_method_credit == 1)">Cagnotte</th> | |||||
<th class="column-actions">Actions</th> | <th class="column-actions">Actions</th> | ||||
<th class="column-tiller" v-if="producer && producer.tiller">Tiller</th> | <th class="column-tiller" v-if="producer && producer.tiller">Tiller</th> | ||||
</tr> | </tr> | ||||
<a href="javascript:void(0);" @click="orderPaymentModalClick" :data-id-order="order.id"> | <a href="javascript:void(0);" @click="orderPaymentModalClick" :data-id-order="order.id"> | ||||
<order-state-payment :order="order" :producer="producer"></order-state-payment> | <order-state-payment :order="order" :producer="producer"></order-state-payment> | ||||
</a> | </a> | ||||
<span class="glyphicon glyphicon-time" title="Débit automatique du crédit la veille de la distribution" v-if="order.amount != 0 && order.isCreditAutoPayment && (order.amount_paid == 0 || order.amount_paid < order.amount)"></span> | |||||
<span class="glyphicon glyphicon-time" title="Débit automatique de la cagnotte la veille de la distribution" v-if="order.amount != 0 && order.isCreditAutoPayment && (order.amount_paid == 0 || order.amount_paid < order.amount)"></span> | |||||
</template> | </template> | ||||
</td> | </td> | ||||
<td class="column-credit" v-if="!idActivePointSale || (pointSaleActive && pointSaleActive.credit == 1)"> | |||||
<td class="column-credit" v-if="!idActivePointSale || (pointSaleActive && pointSaleActive.payment_method_credit == 1)"> | |||||
<template v-if="order.isCreditContext"> | <template v-if="order.isCreditContext"> | ||||
<a :href="baseUrl+'/user/credit?id='+order.id_user" target="_blank" :class="order.user.credit >= 0 ? 'positive' : 'negative'"> | <a :href="baseUrl+'/user/credit?id='+order.id_user" target="_blank" :class="order.user.credit >= 0 ? 'positive' : 'negative'"> | ||||
{{ order.user.credit.toFixed(2).replace(/(\d)(?=(\d{3})+(?:\.\d+)?$)/g, "$1,")+' €' }} | {{ order.user.credit.toFixed(2).replace(/(\d)(?=(\d{3})+(?:\.\d+)?$)/g, "$1,")+' €' }} | ||||
<template v-if="!order.isPaidViaInvoice"> | <template v-if="!order.isPaidViaInvoice"> | ||||
<li v-if="order.isCreditContext"> | <li v-if="order.isCreditContext"> | ||||
<a href="javascript:void(0);" @click="orderPaymentClick" :data-id-order="order.id" :data-type="getTypePayment(order)" data-mean-payment="credit"> | <a href="javascript:void(0);" @click="orderPaymentClick" :data-id-order="order.id" :data-type="getTypePayment(order)" data-mean-payment="credit"> | ||||
<span class="glyphicon glyphicon-piggy-bank"></span> {{ getLabelPaymentRefund(order, 'Débiter', 'Recréditer', 'le crédit') }} | |||||
<span class="glyphicon glyphicon-piggy-bank"></span> {{ getLabelPaymentRefund(order, 'Débiter', 'Recréditer', 'la cagnotte') }} | |||||
</a> | </a> | ||||
</li> | </li> | ||||
<template v-if="(!order.isCreditFunctioningMandatory && !order.isCreditFunctioningUser) || !order.id_user"> | <template v-if="(!order.isCreditFunctioningMandatory && !order.isCreditFunctioningUser) || !order.id_user"> | ||||
<div class="info-box"> | <div class="info-box"> | ||||
<span :class="'info-box-icon ' +((order.user.credit > 0) ? 'bg-green' : 'bg-red')"><i class="fa fa-user"></i></span> | <span :class="'info-box-icon ' +((order.user.credit > 0) ? 'bg-green' : 'bg-red')"><i class="fa fa-user"></i></span> | ||||
<div class="info-box-content"> | <div class="info-box-content"> | ||||
<span class="info-box-text">Crédit utilisateur</span> | |||||
<span class="info-box-text">Cagnotte</span> | |||||
<span class="info-box-number"> | <span class="info-box-number"> | ||||
{{ order.user.credit.toFixed(2).replace(/(\d)(?=(\d{3})+(?:\.\d+)?$)/g, "$1,")+' €' }} | {{ order.user.credit.toFixed(2).replace(/(\d)(?=(\d{3})+(?:\.\d+)?$)/g, "$1,")+' €' }} | ||||
</span> | </span> | ||||
</div> | </div> | ||||
<div class="form-group" v-if="isPointSaleCreditFunctioningOptional(order.id_point_sale)"> | <div class="form-group" v-if="isPointSaleCreditFunctioningOptional(order.id_point_sale)"> | ||||
<input type="checkbox" id="debit-credit" v-model="order.debitCredit" /> | <input type="checkbox" id="debit-credit" v-model="order.debitCredit" /> | ||||
<label class="control-label" for="debit-credit">Débiter le crédit</label> | |||||
<label class="control-label" for="debit-credit">Débiter la cagnotte</label> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="col-md-8"> | <div class="col-md-8"> |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
} | } | ||||
$html .= '</td>' ; | $html .= '</td>' ; | ||||
if($pointSale->credit) { | |||||
if($pointSale->payment_method_credit) { | |||||
$credit = '' ; | $credit = '' ; | ||||
if(isset($order->user) && $order->user->id) { | if(isset($order->user) && $order->user->id) { | ||||
$strProducts = substr($strProducts, 0, strlen($strProducts) - 6) ; | $strProducts = substr($strProducts, 0, strlen($strProducts) - 6) ; | ||||
$html .= '<td>'.$strProducts.'</td><td></td><td></td><td></td>' ; | $html .= '<td>'.$strProducts.'</td><td></td><td></td><td></td>' ; | ||||
if($pointSale->credit) { | |||||
if($pointSale->payment_method_credit) { | |||||
$html .= '<td></td>' ; | $html .= '<td></td>' ; | ||||
} | } | ||||
$html .= '<td><strong>'.Price::format($pointSale->revenues_with_tax) . '</strong></td>'; | $html .= '<td><strong>'.Price::format($pointSale->revenues_with_tax) . '</strong></td>'; |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
* termes. | * termes. | ||||
*/ | */ | ||||
use domain\Document\Document\DocumentModule;use domain\Document\Invoice\InvoiceModule;use domain\Payment\PaymentModule;use domain\Producer\Producer\ProducerModule;use domain\User\User\UserModule;use yii\helpers\Html;use yii\widgets\ActiveForm; | |||||
\backend\assets\VuejsDocumentFormAsset::register($this); | |||||
use domain\Document\Document\DocumentModule; | |||||
use domain\Document\Invoice\InvoiceModule; | |||||
use domain\Payment\PaymentModule; | |||||
use domain\Producer\Producer\ProducerModule; | |||||
use domain\User\User\UserModule; | |||||
use yii\helpers\Html; | |||||
use yii\widgets\ActiveForm; | |||||
$producerModule = ProducerModule::getInstance(); | $producerModule = ProducerModule::getInstance(); | ||||
$documentModule = DocumentModule::getInstance(); | $documentModule = DocumentModule::getInstance(); | ||||
$invoiceModule = InvoiceModule::getInstance(); | |||||
$invoiceModule = InvoiceModule::getInstance(); | |||||
$userModule = UserModule::getInstance(); | $userModule = UserModule::getInstance(); | ||||
$paymentManager = PaymentModule::getInstance(); | $paymentManager = PaymentModule::getInstance(); | ||||
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
<section class="content"> | <section class="content"> | ||||
<?= $this->renderFile('@common/views/alert_message.php', [ | |||||
<?php echo $this->renderFile('@common/views/alert_message.php', [ | |||||
'display' => $adminSettingBag->get('adminAlertMessageDisplay'), | 'display' => $adminSettingBag->get('adminAlertMessageDisplay'), | ||||
'type' => $adminSettingBag->get('adminAlertMessageType'), | 'type' => $adminSettingBag->get('adminAlertMessageType'), | ||||
'title' => $adminSettingBag->get('adminAlertMessageTitle'), | 'title' => $adminSettingBag->get('adminAlertMessageTitle'), | ||||
<?php $producer = GlobalParam::getCurrentProducer(); ?> | <?php $producer = GlobalParam::getCurrentProducer(); ?> | ||||
<?php if($producer && !$producerModule->isUpToDateWithOpendistribVersion($producer) && $producer->option_display_message_new_opendistrib_version): ?> | <?php if($producer && !$producerModule->isUpToDateWithOpendistribVersion($producer) && $producer->option_display_message_new_opendistrib_version): ?> | ||||
<div class="alert alert-success"> | <div class="alert alert-success"> | ||||
<p>Opendistrib a été mis à jour vers la version <?= GlobalParam::getOpendistribVersion() ?> ! <a class="alert-link" href="<?= Yii::$app->urlManager->createUrl(['development/index']) ?>">Découvrir les nouveautés</a></p> | |||||
<p>Souke a été mis à jour vers la version <?= GlobalParam::getSoukeVersion() ?> ! <a class="alert-link" href="<?= Yii::$app->urlManager->createUrl(['development/index']) ?>">Découvrir les nouveautés</a></p> | |||||
<a href="<?= Yii::$app->urlManager->createUrl(['producer/update-opendistrib-version']) ?>" class="close"><span aria-hidden="true">×</span></a> | <a href="<?= Yii::$app->urlManager->createUrl(['producer/update-opendistrib-version']) ?>" class="close"><span aria-hidden="true">×</span></a> | ||||
</div> | </div> | ||||
<?php endif; ?> | <?php endif; ?> | ||||
<?= Alert::widget() ?> | |||||
<?php | |||||
$flashTypeArray = ['error' => 'ban', 'danger' => 'ban', 'warning' => 'warning', 'info' => 'info', 'success' => 'check']; | |||||
foreach($flashTypeArray as $flashType => $icon) { | |||||
if(Yii::$app->session->hasFlash($flashType)) { | |||||
echo $this->renderFile('@common/views/alert_message.php', [ | |||||
'display' => true, | |||||
'title' => false, | |||||
'type' => $flashType, | |||||
'icon' => $icon, | |||||
'message' => Yii::$app->session->getFlash($flashType), | |||||
]); | |||||
} | |||||
} | |||||
?> | |||||
<?= $content ?> | <?= $content ?> | ||||
<div class="clr"></div> | <div class="clr"></div> | ||||
</section> | </section> | ||||
<footer class="main-footer"> | <footer class="main-footer"> | ||||
<div class="pull-right hidden-xs"> | <div class="pull-right hidden-xs"> | ||||
<strong>Version</strong> <?= GlobalParam::getOpendistribVersion(); ?> | |||||
<strong>Version</strong> <?= GlobalParam::getSoukeVersion(); ?> | |||||
</div> | </div> | ||||
<br /> | <br /> | ||||
<!--<div class="pull-right hidden-xs"> | <!--<div class="pull-right hidden-xs"> |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
?> | ?> | ||||
<header class="main-header"> | <header class="main-header"> | ||||
<!-- <?= Html::a('<span class="logo-mini"><img src="' . Yii::$app->urlManagerBackend->getBaseUrl() . '/img/logo-distrib.png" /></span><span class="logo-lg"><img src="' . Yii::$app->urlManagerBackend->getBaseUrl() . '/img/logo-distrib.png" /></span>', Yii::$app->homeUrl, ['class' => 'logo']) ?>--> | |||||
<?= | |||||
Html::a('<span class="logo-mini"><img src="' . Yii::$app->urlManagerBackend->getBaseUrl() . '/img/logo-souke.svg" /></span><span class="logo-lg"><img src="' . Yii::$app->urlManagerBackend->getBaseUrl() . '/img/logo-souke.svg" /></span>', Yii::$app->homeUrl, ['class' => 'logo']) | |||||
?> | |||||
<?= Html::a( | |||||
<?php /*Html::a( | |||||
'Opendistrib', | 'Opendistrib', | ||||
$userModule->getAuthorizationChecker()->isGrantedAsAdministrator($userCurrent) | $userModule->getAuthorizationChecker()->isGrantedAsAdministrator($userCurrent) | ||||
? Yii::$app->urlManager->createUrl('dashboard-admin/index') | ? Yii::$app->urlManager->createUrl('dashboard-admin/index') | ||||
: Yii::$app->homeUrl, | : Yii::$app->homeUrl, | ||||
['class' => 'logo'] | ['class' => 'logo'] | ||||
); ?> | |||||
);*/ ?> | |||||
<nav class="navbar navbar-static-top" role="navigation"> | <nav class="navbar navbar-static-top" role="navigation"> | ||||
<?php if ($userModule->getAuthorizationChecker()->isGrantedAsAdministrator($userCurrent)): ?> | <?php if ($userModule->getAuthorizationChecker()->isGrantedAsAdministrator($userCurrent)): ?> | ||||
<li class="dropdown producer-menu"> | <li class="dropdown producer-menu"> | ||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"> | <a href="#" class="dropdown-toggle" data-toggle="dropdown"> | ||||
<span class="glyphicon glyphicon-grain"></span> | |||||
<i class="bi bi-bookmarks"></i> | |||||
<span class="hidden-xs hidden-sm">Producteurs</span> | <span class="hidden-xs hidden-sm">Producteurs</span> | ||||
<i class="fa fa-caret-down"></i> | <i class="fa fa-caret-down"></i> | ||||
</a> | </a> | ||||
<li class="dropdown distributions-menu notifications-menu"> | <li class="dropdown distributions-menu notifications-menu"> | ||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"> | <a href="#" class="dropdown-toggle" data-toggle="dropdown"> | ||||
<i class="fa fa-calendar"></i> | |||||
<i class="bi bi-calendar"></i> | |||||
<i class="fa fa-caret-down"></i> | |||||
</a> | </a> | ||||
<ul class="dropdown-menu"> | <ul class="dropdown-menu"> | ||||
<li class="dropdown users-menu notifications-menu"> | <li class="dropdown users-menu notifications-menu"> | ||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"> | <a href="#" class="dropdown-toggle" data-toggle="dropdown"> | ||||
<i class="fa fa-user-plus"></i> | |||||
<i class="bi bi-person-plus"></i> | |||||
<?php if (count($usersArray)): ?><span | <?php if (count($usersArray)): ?><span | ||||
class="label label-success"><?= count($usersArray) ?></span> | class="label label-success"><?= count($usersArray) ?></span> | ||||
<?php else: ?><span class="label label-warning">0</span><?php endif; ?> | <?php else: ?><span class="label label-warning">0</span><?php endif; ?> | ||||
<i class="fa fa-caret-down"></i> | |||||
</a> | </a> | ||||
<ul class="dropdown-menu"> | <ul class="dropdown-menu"> | ||||
<?php if (count($usersArray)): ?> | <?php if (count($usersArray)): ?> | ||||
<li class="dropdown users-negative-credit-menu notifications-menu"> | <li class="dropdown users-negative-credit-menu notifications-menu"> | ||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"> | <a href="#" class="dropdown-toggle" data-toggle="dropdown"> | ||||
<i class="fa fa-euro"></i> | |||||
<i class="bi bi-currency-euro"></i> | |||||
<?php if (count($usersNegativeCreditArray)): ?><span | <?php if (count($usersNegativeCreditArray)): ?><span | ||||
class="label label-warning"><?= count($usersNegativeCreditArray) ?></span> | class="label label-warning"><?= count($usersNegativeCreditArray) ?></span> | ||||
<?php else: ?><span class="label label-success">0</span><?php endif; ?> | <?php else: ?><span class="label label-success">0</span><?php endif; ?> | ||||
<i class="fa fa-caret-down"></i> | |||||
</a> | </a> | ||||
<ul class="dropdown-menu"> | <ul class="dropdown-menu"> | ||||
<?php if (count($usersNegativeCreditArray)): ?> | <?php if (count($usersNegativeCreditArray)): ?> | ||||
<li class="header"><a href="<?= Yii::$app->urlManager->createUrl(['credit/index']); ?>">Utilisateurs au crédit négatif</a></li> | |||||
<li class="header"><a href="<?= Yii::$app->urlManager->createUrl(['credit/index']); ?>">Utilisateurs avec une cagnotte en négatif</a></li> | |||||
<li> | <li> | ||||
<ul class="menu"> | <ul class="menu"> | ||||
<?php foreach ($usersNegativeCreditArray as $user): ?> | <?php foreach ($usersNegativeCreditArray as $user): ?> | ||||
</ul> | </ul> | ||||
</li> | </li> | ||||
<?php else: ?> | <?php else: ?> | ||||
<li class="header">Aucun de vos utilisateurs n'a de crédit négatif.</li> | |||||
<li class="header">Aucun de vos utilisateurs n'a de cagnotte en négatif.</li> | |||||
<?php endif; ?> | <?php endif; ?> | ||||
</ul> | </ul> | ||||
</li> | </li> | ||||
<li> | |||||
<a href="<?= Yii::$app->urlManagerFrontend->createAbsoluteUrl(['site/index']); ?>"> | |||||
<i class="bi bi-house-door"></i> | |||||
<span class="hidden-xs hidden-sm">Accueil</span> | |||||
</a> | |||||
</li> | |||||
<?php if ($userModule->getAuthorizationChecker()->isGrantedAsProducer($userCurrent)): ?> | <?php if ($userModule->getAuthorizationChecker()->isGrantedAsProducer($userCurrent)): ?> | ||||
<li> | <li> | ||||
<a href="<?= Yii::$app->urlManagerProducer->createAbsoluteUrl(['site/index', 'slug_producer' => GlobalParam::getCurrentProducer()->slug]); ?>"> | <a href="<?= Yii::$app->urlManagerProducer->createAbsoluteUrl(['site/index', 'slug_producer' => GlobalParam::getCurrentProducer()->slug]); ?>"> | ||||
<span class="glyphicon glyphicon-eye-open"></span> | |||||
<span class="hidden-xs hidden-sm">Mon espace producteur</span> | |||||
<i class="bi bi-shop"></i> | |||||
<span class="hidden-xs hidden-sm">Ma boutique</span> | |||||
</a> | </a> | ||||
</li> | </li> | ||||
<?php endif; ?> | <?php endif; ?> | ||||
<li class="dropdown user user-menu"> | <li class="dropdown user user-menu"> | ||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown"> | <a href="#" class="dropdown-toggle" data-toggle="dropdown"> | ||||
<i class="fa fa-user"></i> | |||||
<i class="bi bi-person"></i> | |||||
<span class="hidden-xs hidden-sm"><?= Html::encode(GlobalParam::getCurrentUser()->name . ' ' . substr(GlobalParam::getCurrentUser()->lastname, 0, 1) .'.'); ?></span> | <span class="hidden-xs hidden-sm"><?= Html::encode(GlobalParam::getCurrentUser()->name . ' ' . substr(GlobalParam::getCurrentUser()->lastname, 0, 1) .'.'); ?></span> | ||||
<i class="fa fa-caret-down"></i> | <i class="fa fa-caret-down"></i> | ||||
</a> | </a> | ||||
<ul class="dropdown-menu"> | <ul class="dropdown-menu"> | ||||
<li><a href="<?= Yii::$app->urlManagerFrontend->createAbsoluteUrl(['site/index']); ?>"><i | |||||
class="fa fa-home"></i> Retour à l'accueil</a></li> | |||||
<li><a href="<?= Yii::$app->urlManagerFrontend->createAbsoluteUrl(['user/update']); ?>"><i | |||||
class="fa fa-user"></i> Mon profil</a></li> | |||||
<li><a href="<?= Yii::$app->urlManagerBackend->createUrl(['site/logout']); ?>"><i | |||||
class="fa fa-sign-out"></i> Déconnexion</a></li> | |||||
<!--<li><a href="<?= Yii::$app->urlManagerFrontend->createAbsoluteUrl(['site/index']); ?>"> | |||||
<i class="bi bi-house-door"></i> Accueil</a></li>--> | |||||
<li><a href="<?= Yii::$app->urlManagerFrontend->createAbsoluteUrl(['user/update']); ?>"> | |||||
<i class="bi bi-person"></i> Mon profil</a></li> | |||||
<li><a href="<?= Yii::$app->urlManagerBackend->createUrl(['site/logout']); ?>"> | |||||
<i class="bi bi-box-arrow-left"></i> Déconnexion</a></li> | |||||
</ul> | </ul> | ||||
</li> | </li> | ||||
<li class="link-control-sidebar"> | <li class="link-control-sidebar"> |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
if(!$producerModule->isUpToDateWithOpendistribVersion($producer)) { | if(!$producerModule->isUpToDateWithOpendistribVersion($producer)) { | ||||
$backgroundLabelVersionOpendistrib = 'green'; | $backgroundLabelVersionOpendistrib = 'green'; | ||||
} | } | ||||
$versionOpendistribLabel = '<span class="pull-right-container"><small class="label pull-right bg-'.$backgroundLabelVersionOpendistrib.'">' . GlobalParam::getOpendistribVersion() . '</small></span>'; | |||||
$versionOpendistribLabel = '<span class="pull-right-container"><small class="label pull-right bg-'.$backgroundLabelVersionOpendistrib.'">' . GlobalParam::getSoukeVersion() . '</small></span>'; | |||||
} | } | ||||
$countTicketsProducerUnreadLabel = ''; | $countTicketsProducerUnreadLabel = ''; | ||||
'items' => [ | 'items' => [ | ||||
['label' => 'Liste', 'icon' => 'th-list', 'url' => ['/user/index'], 'visible' => $isUserCurrentGrantedAsProducer], | ['label' => 'Liste', 'icon' => 'th-list', 'url' => ['/user/index'], 'visible' => $isUserCurrentGrantedAsProducer], | ||||
[ | [ | ||||
'label' => 'Crédit', | |||||
'label' => 'Cagnotte', | |||||
'icon' => 'euro', | 'icon' => 'euro', | ||||
'url' => ['/credit/index'], | 'url' => ['/credit/index'], | ||||
'template' => '<a href="{url}">{icon} {label}' . $sumUserProducerCreditsLabel . '</a>', | 'template' => '<a href="{url}">{icon} {label}' . $sumUserProducerCreditsLabel . '</a>', |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
termes. | termes. | ||||
*/ | */ | ||||
use backend\assets\CommonAsset; | |||||
use backend\assets\AdminLteAsset; | |||||
use backend\assets\AppAsset; | |||||
use backend\assets\VuejsAlertsAsset; | |||||
use lo\widgets\ToggleAsset; | |||||
use yii\helpers\Html; | use yii\helpers\Html; | ||||
/* @var $this \yii\web\View */ | /* @var $this \yii\web\View */ | ||||
); | ); | ||||
} else { | } else { | ||||
\dmstr\web\AdminLteAsset::register($this); | |||||
\common\assets\CommonAsset::register($this); | |||||
\backend\assets\AppAsset::register($this); | |||||
\backend\assets\VuejsAlertsAsset::register($this); | |||||
CommonAsset::register($this); | |||||
AppAsset::register($this); | |||||
AdminLteAsset::register($this); | |||||
VuejsAlertsAsset::register($this); | |||||
$directoryAsset = Yii::$app->assetManager->getPublishedUrl('@vendor/almasaeed2010/adminlte/dist'); | $directoryAsset = Yii::$app->assetManager->getPublishedUrl('@vendor/almasaeed2010/adminlte/dist'); | ||||
?> | ?> | ||||
<meta http-equiv="refresh" content="60"> | <meta http-equiv="refresh" content="60"> | ||||
<?php endif; ?> | <?php endif; ?> | ||||
<?= Html::csrfMetaTags() ?> | <?= Html::csrfMetaTags() ?> | ||||
<title><?= Html::encode($this->page_title) ?> | Opendistrib</title> | |||||
<link rel="icon" type="image/png" href="<?php echo Yii::$app->urlManagerBackend->getBaseUrl(); ?>/img/favicon-distrib.png" /> | |||||
<title><?= Html::encode($this->page_title) ?> | Souke</title> | |||||
<link rel="icon" type="image/png" href="<?php echo Yii::$app->urlManagerBackend->getBaseUrl(); ?>/img/favicon-souke-noir.png" /> | |||||
<?php $this->head() ?> | <?php $this->head() ?> | ||||
<?= $this->render('@common/views/matomo.php') ?> | <?= $this->render('@common/views/matomo.php') ?> | ||||
</head> | </head> |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
if (count($pointSale->orders) && strlen($pointSale->$fieldInfosPointSale)) { | if (count($pointSale->orders) && strlen($pointSale->$fieldInfosPointSale)) { | ||||
$html .= '<h3>'.$pointSale->name.'</h3>' ; | $html .= '<h3>'.$pointSale->name.'</h3>' ; | ||||
$colCredit = ($pointSale->credit) ? '<th>Crédit</th>' : '' ; | |||||
$colCredit = ($pointSale->payment_method_credit) ? '<th>Cagnotte</th>' : '' ; | |||||
$html .= '<table class="table table-bordered">' | $html .= '<table class="table table-bordered">' | ||||
. '<thead>' | . '<thead>' | ||||
$html .= '<td>'.substr($strProducts, 0, strlen($strProducts) - 2).'</td>'; | $html .= '<td>'.substr($strProducts, 0, strlen($strProducts) - 2).'</td>'; | ||||
$html .= '<td>'.$order->comment.'</td>'; | $html .= '<td>'.$order->comment.'</td>'; | ||||
if($pointSale->credit) { | |||||
if($pointSale->payment_method_credit) { | |||||
$credit = '' ; | $credit = '' ; | ||||
if(isset($order->user) && isset($order->user->userProducer)) { | if(isset($order->user) && isset($order->user->userProducer)) { | ||||
$credit = number_format($order->user->userProducer[0]->credit,2).' €' ; | $credit = number_format($order->user->userProducer[0]->credit,2).' €' ; | ||||
} | } | ||||
elseif($orderModule->getPaymentStatus($order) == Order::PAYMENT_SURPLUS) | elseif($orderModule->getPaymentStatus($order) == Order::PAYMENT_SURPLUS) | ||||
{ | { | ||||
$html .= '(surplus : '.$orderModule->getOrderAmount($order, Order::PAYMENT_SURPLUS, true).' à recréditer)' ; | |||||
$html .= '(surplus : '.$orderModule->getOrderAmount($order, Order::PAYMENT_SURPLUS, true).' à rembourser)' ; | |||||
} | } | ||||
$html .= '</strong></td>' ; | $html .= '</strong></td>' ; | ||||
$strProducts = substr($strProducts, 0, strlen($strProducts) - 2) ; | $strProducts = substr($strProducts, 0, strlen($strProducts) - 2) ; | ||||
$html .= '<td>'.$strProducts.'</td><td></td>' ; | $html .= '<td>'.$strProducts.'</td><td></td>' ; | ||||
if($pointSale->credit) { | |||||
if($pointSale->payment_method_credit) { | |||||
$html .= '<td></td>' ; | $html .= '<td></td>' ; | ||||
} | } | ||||
$html .= '<td><strong>'.number_format($pointSale->revenues, 2) . ' €</strong></td>'; | $html .= '<td><strong>'.number_format($pointSale->revenues, 2) . ' €</strong></td>'; |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
use domain\Distribution\Distribution\DistributionModule; | use domain\Distribution\Distribution\DistributionModule; | ||||
use domain\Distribution\Distribution\ExportManager; | use domain\Distribution\Distribution\ExportManager; | ||||
use domain\Feature\Feature\Feature; | |||||
use domain\Feature\Feature\FeatureModule; | |||||
use domain\Producer\Producer\Producer; | use domain\Producer\Producer\Producer; | ||||
use domain\Producer\Producer\ProducerModule; | use domain\Producer\Producer\ProducerModule; | ||||
use lo\widgets\Toggle; | use lo\widgets\Toggle; | ||||
$producerModule = ProducerModule::getInstance(); | $producerModule = ProducerModule::getInstance(); | ||||
$userModule = UserModule::getInstance(); | $userModule = UserModule::getInstance(); | ||||
$distributionModule = DistributionModule::getInstance(); | $distributionModule = DistributionModule::getInstance(); | ||||
$featureChecker = FeatureModule::getInstance()->getChecker(); | |||||
?> | ?> | ||||
<div class="panel panel-default"> | <div class="panel panel-default"> | ||||
<div class="panel-heading"> | <div class="panel-heading"> | ||||
<h3 class="panel-title"> | <h3 class="panel-title"> | ||||
<span class="glyphicon glyphicon-piggy-bank"></span> | |||||
Crédit | |||||
<span class="glyphicon glyphicon-credit-card"></span> | |||||
Modes de paiement | |||||
</h3> | </h3> | ||||
</div> | </div> | ||||
<div class="panel-body"> | <div class="panel-body"> | ||||
<div id="credit"> | <div id="credit"> | ||||
<?php | <?php | ||||
echo $form->field($model, 'payment_method_onsite')->widget(Toggle::class, | |||||
[ | |||||
'options' => [ | |||||
'data-id' => $model->id, | |||||
'data-on' => 'Oui', | |||||
'data-off' => 'Non', | |||||
], | |||||
] | |||||
); | |||||
$addHintCredit = ''; | $addHintCredit = ''; | ||||
if (!$producerModule->getConfig('credit')): | if (!$producerModule->getConfig('credit')): | ||||
$addHintCredit = '<br /><strong>Attention, le système de Crédit est désactivé au niveau des ' . Html::a('paramètres globaux', ['producer/update']) . '.</strong>'; | |||||
$addHintCredit = 'Attention, le système de cagnotte est désactivé au niveau des ' . Html::a('paramètres globaux', ['producer/update']); | |||||
endif; | endif; | ||||
echo $form->field($model, 'credit')->widget(Toggle::class, | |||||
echo '<div class="row">'; | |||||
echo '<div class="col-md-4">'; | |||||
echo $form->field($model, 'payment_method_credit')->widget(Toggle::class, | |||||
[ | [ | ||||
'options' => [ | 'options' => [ | ||||
'data-id' => $model->id, | 'data-id' => $model->id, | ||||
'data-off' => 'Non', | 'data-off' => 'Non', | ||||
], | ], | ||||
] | ] | ||||
)->hint('Activez cette option si vous souhaitez que vos clients puissent régler leurs commandes via leur compte <strong>Crédit</strong> pour ce point de vente.' | |||||
. $addHintCredit); ?> | |||||
<?= $form->field($model, 'credit_functioning') | |||||
)->hint($addHintCredit); | |||||
echo '</div>'; | |||||
echo '<div class="col-md-8">'; | |||||
echo $form->field($model, 'credit_functioning') | |||||
->label('Fonctionnement de la cagnotte <span class="glyphicon glyphicon-info-sign" data-toggle="tooltip" data-placement="bottom" title="'.Producer::HINT_CREDIT_FUNCTIONING.'" data-html="true"></span>') | |||||
->dropDownList([ | ->dropDownList([ | ||||
'' => 'Paramètres globaux (' . Producer::$creditFunctioningArray[$producerModule->getConfig('credit_functioning')] . ')', | |||||
Producer::CREDIT_FUNCTIONING_OPTIONAL => Producer::$creditFunctioningArray[Producer::CREDIT_FUNCTIONING_OPTIONAL], | Producer::CREDIT_FUNCTIONING_OPTIONAL => Producer::$creditFunctioningArray[Producer::CREDIT_FUNCTIONING_OPTIONAL], | ||||
Producer::CREDIT_FUNCTIONING_MANDATORY => Producer::$creditFunctioningArray[Producer::CREDIT_FUNCTIONING_MANDATORY], | Producer::CREDIT_FUNCTIONING_MANDATORY => Producer::$creditFunctioningArray[Producer::CREDIT_FUNCTIONING_MANDATORY], | ||||
Producer::CREDIT_FUNCTIONING_USER => Producer::$creditFunctioningArray[Producer::CREDIT_FUNCTIONING_USER], | Producer::CREDIT_FUNCTIONING_USER => Producer::$creditFunctioningArray[Producer::CREDIT_FUNCTIONING_USER], | ||||
], [])->hint(Producer::HINT_CREDIT_FUNCTIONING); ?> | |||||
]); | |||||
echo '</div>'; | |||||
echo '</div>'; | |||||
if($featureChecker->isEnabled(Feature::ALIAS_ONLINE_PAYMENT)) { | |||||
echo $form->field($model, 'payment_method_online')->widget(Toggle::class, | |||||
[ | |||||
'options' => [ | |||||
'data-id' => $model->id, | |||||
'data-on' => 'Oui', | |||||
'data-off' => 'Non', | |||||
], | |||||
] | |||||
); | |||||
} | |||||
?> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
} | } | ||||
], | ], | ||||
[ | [ | ||||
'attribute' => 'credit', | |||||
'label' => 'Crédit', | |||||
'label' => 'Modes de paiement', | |||||
'format' => 'raw', | 'format' => 'raw', | ||||
'headerOptions' => ['class' => 'column-hide-on-mobile'], | 'headerOptions' => ['class' => 'column-hide-on-mobile'], | ||||
'filterOptions' => ['class' => 'column-hide-on-mobile'], | 'filterOptions' => ['class' => 'column-hide-on-mobile'], | ||||
'contentOptions' => ['class' => 'column-hide-on-mobile'], | |||||
'contentOptions' => ['class' => 'column-hide-on-mobile column-payment-method'], | |||||
'value' => function ($model) { | 'value' => function ($model) { | ||||
if ($model->credit && isset(Producer::$creditFunctioningArray[$model->credit_functioning])) { | |||||
return '<span class="glyphicon glyphicon-euro"></span> ' . Producer::$creditFunctioningArray[$model->credit_functioning]; | |||||
$html = '<ul>'; | |||||
if($model->payment_method_onsite) { | |||||
$html .= '<li><i class="bi bi-wallet2"></i> Sur place</li>'; | |||||
} | } | ||||
return ''; | |||||
if ($model->payment_method_credit && isset(Producer::$creditFunctioningArray[$model->credit_functioning])) { | |||||
$html .= '<li><i class="bi bi-piggy-bank"></i> Cagnotte ('. strtolower(Producer::$creditFunctioningArray[$model->credit_functioning]).')</li>'; | |||||
} | |||||
if ($model->payment_method_online) { | |||||
$html .= '<li><i class="bi bi-credit-card"></i> Paiement en ligne</li>'; | |||||
} | |||||
$html .= '</ul>'; | |||||
return $html; | |||||
} | } | ||||
], | ], | ||||
[ | [ |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. | ||||
}, | }, | ||||
'dolibarr' => function ($url, $model) { | 'dolibarr' => function ($url, $model) { | ||||
return Html::a( | return Html::a( | ||||
'<span class="glyphicon glyphicon-paste"></span>', | |||||
'<i class="bi bi-clipboard-check"></i>', | |||||
$url, | $url, | ||||
[ | [ | ||||
'title' => 'Générer la facture sur Dolibarr', | 'title' => 'Générer la facture sur Dolibarr', |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
/** | /** | ||||
Copyright La boîte à pain (2018) | Copyright La boîte à pain (2018) | ||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
/** | /** | ||||
Copyright La boîte à pain (2018) | Copyright La boîte à pain (2018) | ||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
/** | /** | ||||
* Copyright La boîte à pain (2018) | * Copyright La boîte à pain (2018) | ||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. | ||||
use yii\helpers\Html; | use yii\helpers\Html; | ||||
use yii\widgets\ActiveForm; | use yii\widgets\ActiveForm; | ||||
\backend\assets\VuejsProducerUpdateAsset::register($this); | |||||
$userModule = UserModule::getInstance(); | $userModule = UserModule::getInstance(); | ||||
$userGroupModule = UserGroupModule::getInstance(); | $userGroupModule = UserGroupModule::getInstance(); | ||||
$distributionExportManager = DistributionModule::getInstance()->getExportManager(); | $distributionExportManager = DistributionModule::getInstance()->getExportManager(); | ||||
<?= $form->field($model, 'website') ?> | <?= $form->field($model, 'website') ?> | ||||
<h4>Apparence</h4> | <h4>Apparence</h4> | ||||
<?= $form->field($model, 'option_main_color') ?> | |||||
<?= $form->field($model, 'background_color_logo') ?> | <?= $form->field($model, 'background_color_logo') ?> | ||||
<?= $form->field($model, 'logoFile')->fileInput() ?> | <?= $form->field($model, 'logoFile')->fileInput() ?> | ||||
<?php | <?php | ||||
echo '<input type="checkbox" name="delete_logo" id="delete_logo" /> <label for="delete_logo">Supprimer le logo</label><br /><br />'; | echo '<input type="checkbox" name="delete_logo" id="delete_logo" /> <label for="delete_logo">Supprimer le logo</label><br /><br />'; | ||||
} | } | ||||
?> | ?> | ||||
<?= $form->field($model, 'photoFile')->fileInput()->hint('Format idéal : 900 x 150 px') ?> | |||||
<?= $form->field($model, 'photoFile')->fileInput(); ?> | |||||
<?php | <?php | ||||
if (strlen($model->photo)) { | if (strlen($model->photo)) { | ||||
echo '<img src="' . Yii::$app->urlManagerProducer->getHostInfo() . '/' . Yii::$app->urlManagerProducer->baseUrl . '/uploads/' . $model->photo . '" width="400px" /><br />'; | echo '<img src="' . Yii::$app->urlManagerProducer->getHostInfo() . '/' . Yii::$app->urlManagerProducer->baseUrl . '/uploads/' . $model->photo . '" width="400px" /><br />'; | ||||
<div v-show="currentSection == 'credit-payment'" class="panel panel-default"> | <div v-show="currentSection == 'credit-payment'" class="panel panel-default"> | ||||
<div class="panel-body"> | <div class="panel-body"> | ||||
<h4>Crédit</h4> | |||||
<h4>Cagnotte</h4> | |||||
<?= $form->field($model, 'credit') | <?= $form->field($model, 'credit') | ||||
->dropDownList(Dropdown::noYesChoices()) | ->dropDownList(Dropdown::noYesChoices()) | ||||
->label('Activer le système de Crédit') | |||||
->hint('Le système de Crédit permet à vos clients d\'avoir un compte prépayé sur le site <em>distrib</em>.<br />' | |||||
. 'Ils créditent leur compte en vous donnant la somme de leur choix et c\'est ensuite à vous de ' . Html::a('mettre à jour', ['user/index']) . ' leur Crédit en ligne.<br />' | |||||
. 'Ceci fait, les clients paient leur commande directement via leur Crédit.'); ?> | |||||
<?= $form->field($model, 'credit_functioning') | |||||
->dropDownList([ | |||||
Producer::CREDIT_FUNCTIONING_OPTIONAL => Producer::$creditFunctioningArray[Producer::CREDIT_FUNCTIONING_OPTIONAL], | |||||
Producer::CREDIT_FUNCTIONING_MANDATORY => Producer::$creditFunctioningArray[Producer::CREDIT_FUNCTIONING_MANDATORY], | |||||
Producer::CREDIT_FUNCTIONING_USER => Producer::$creditFunctioningArray[Producer::CREDIT_FUNCTIONING_USER], | |||||
], [])->hint(Producer::HINT_CREDIT_FUNCTIONING); ?> | |||||
->label('Activer le système de cagnotte') | |||||
->hint('Le système de cagnotte permet à vos clients d\'avoir un compte prépayé sur le site <em>Souke</em>.<br />' | |||||
. 'Ils créditent leur compte en vous donnant la somme de leur choix et c\'est ensuite à vous de ' . Html::a('mettre à jour', ['user/index']) . ' leur cagnotte en ligne.<br />' | |||||
. 'Ceci fait, les clients paient leur commande directement via leur cagnotte.'); ?> | |||||
<?= $form->field($model, 'use_credit_checked_default') | <?= $form->field($model, 'use_credit_checked_default') | ||||
->dropDownList(Dropdown::noYesChoices()) | ->dropDownList(Dropdown::noYesChoices()) | ||||
->hint('Utilisation optionnelle du Crédit.'); ?> | |||||
->hint('Utilisation optionnelle de la cagnotte.'); ?> | |||||
<?= $form->field($model, 'credit_limit_reminder', [ | <?= $form->field($model, 'credit_limit_reminder', [ | ||||
'template' => '{label}<div class="input-group">{input}<span class="input-group-addon"><span class="glyphicon glyphicon-euro"></span></span></div>{hint}', | 'template' => '{label}<div class="input-group">{input}<span class="input-group-addon"><span class="glyphicon glyphicon-euro"></span></span></div>{hint}', | ||||
<?= $form->field($model, 'credit_limit', [ | <?= $form->field($model, 'credit_limit', [ | ||||
'template' => '{label}<div class="input-group">{input}<span class="input-group-addon"><span class="glyphicon glyphicon-euro"></span></span></div>{hint}', | 'template' => '{label}<div class="input-group">{input}<span class="input-group-addon"><span class="glyphicon glyphicon-euro"></span></span></div>{hint}', | ||||
])->hint('Limite de crédit que l\'utilisateur ne pourra pas dépasser. Laisser vide pour permettre un crédit négatif et infini.'); ?> | |||||
])->hint('Limite de cagnotte que l\'utilisateur ne pourra pas dépasser. Laisser vide pour permettre un montant de cagnotte négatif et infini.'); ?> | |||||
<?= $form->field($model, 'option_check_by_default_prevent_user_credit') | <?= $form->field($model, 'option_check_by_default_prevent_user_credit') | ||||
->dropDownList(Dropdown::noYesChoices()); ?> | ->dropDownList(Dropdown::noYesChoices()); ?> | ||||
->dropDownList(Dropdown::noYesChoices()); ?> | ->dropDownList(Dropdown::noYesChoices()); ?> | ||||
<?= $form->field($model, 'option_stripe_mode_test')->dropDownList(Dropdown::noYesChoices()); ?> | <?= $form->field($model, 'option_stripe_mode_test')->dropDownList(Dropdown::noYesChoices()); ?> | ||||
<?= $form->field($model, 'option_online_payment_type') | |||||
<?php /*$form->field($model, 'option_online_payment_type') | |||||
->dropDownList([ | ->dropDownList([ | ||||
'credit' => 'Alimentation du crédit', | |||||
'credit' => 'Alimentation de la cagnotte', | |||||
'order' => 'Paiement à la commande', | 'order' => 'Paiement à la commande', | ||||
], []); ?> | |||||
], []);*/ ?> | |||||
<?= $form->field($model, 'option_stripe_public_key')->textInput(); ?> | <?= $form->field($model, 'option_stripe_public_key')->textInput(); ?> | ||||
<?= $form->field($model, 'option_stripe_private_key')->textInput(); ?> | <?= $form->field($model, 'option_stripe_private_key')->textInput(); ?> | ||||
<?= $form->field($model, 'option_stripe_endpoint_secret')->textInput(); ?> | <?= $form->field($model, 'option_stripe_endpoint_secret')->textInput(); ?> | ||||
<div v-show="currentSection == 'software'" class="panel panel-default"> | <div v-show="currentSection == 'software'" class="panel panel-default"> | ||||
<div class="panel-body"> | <div class="panel-body"> | ||||
<h4>Opendistrib</h4> | |||||
<h4>Souke</h4> | |||||
<?= $form->field($model, 'option_display_message_new_opendistrib_version') | <?= $form->field($model, 'option_display_message_new_opendistrib_version') | ||||
->dropDownList(Dropdown::noYesChoices()); ?> | ->dropDownList(Dropdown::noYesChoices()); ?> | ||||
<?= $form->field($model, 'agree_contact_about_software_development') | <?= $form->field($model, 'agree_contact_about_software_development') |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
* Copyright distrib (2018) | |||||
* Copyright Souke (2018) | |||||
* | * | ||||
* contact@opendistrib.net | |||||
* contact@souke.fr | |||||
* | * | ||||
* Ce logiciel est un programme informatique servant à aider les producteurs | * Ce logiciel est un programme informatique servant à aider les producteurs | ||||
* à distribuer leur production en circuits courts. | * à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |
<?php | <?php | ||||
/** | /** | ||||
Copyright distrib (2018) | |||||
Copyright Souke (2018) | |||||
contact@opendistrib.net | |||||
contact@souke.fr | |||||
Ce logiciel est un programme informatique servant à aider les producteurs | Ce logiciel est un programme informatique servant à aider les producteurs | ||||
à distribuer leur production en circuits courts. | à distribuer leur production en circuits courts. |