Browse Source

Merge branch 'develop'

master
Guillaume Bourgeois 7 months ago
parent
commit
7e77a9ddb5
100 changed files with 496 additions and 630 deletions
  1. +3
    -1
      .bowerrc
  2. +9
    -13
      backend/assets/AdminLteAsset.php
  3. +17
    -4
      backend/assets/AppAsset.php
  4. +19
    -10
      backend/assets/CommonAsset.php
  5. +3
    -3
      backend/assets/VuejsAlertsAsset.php
  6. +0
    -64
      backend/assets/VuejsDocumentFormAsset.php
  7. +0
    -62
      backend/assets/VuejsProducerUpdateAsset.php
  8. +0
    -58
      backend/assets/VuejsSettingFormAsset.php
  9. +0
    -62
      backend/assets/VuejsSubscriptionFormAsset.php
  10. +0
    -63
      backend/assets/VuejsUserFormAsset.php
  11. +2
    -2
      backend/config/main.php
  12. +3
    -5
      backend/config/params.php
  13. +2
    -2
      backend/controllers/AccessController.php
  14. +2
    -2
      backend/controllers/BackendController.php
  15. +2
    -2
      backend/controllers/CommunicateAdminController.php
  16. +2
    -2
      backend/controllers/CommunicateController.php
  17. +2
    -2
      backend/controllers/CreditController.php
  18. +5
    -5
      backend/controllers/CronController.php
  19. +2
    -2
      backend/controllers/DashboardAdminController.php
  20. +2
    -2
      backend/controllers/DashboardController.php
  21. +2
    -2
      backend/controllers/DeliveryNoteController.php
  22. +2
    -2
      backend/controllers/DevelopmentController.php
  23. +2
    -2
      backend/controllers/DistributionController.php
  24. +2
    -2
      backend/controllers/DocumentController.php
  25. +2
    -2
      backend/controllers/FeatureAdminController.php
  26. +2
    -2
      backend/controllers/InvoiceController.php
  27. +2
    -2
      backend/controllers/OnlineAdminController.php
  28. +7
    -7
      backend/controllers/OrderController.php
  29. +11
    -2
      backend/controllers/PointSaleController.php
  30. +2
    -2
      backend/controllers/ProducerAdminController.php
  31. +2
    -2
      backend/controllers/ProducerController.php
  32. +2
    -2
      backend/controllers/ProducerPriceRangeAdminController.php
  33. +2
    -2
      backend/controllers/ProductCategoryController.php
  34. +2
    -2
      backend/controllers/ProductController.php
  35. +2
    -2
      backend/controllers/QuotationController.php
  36. +86
    -3
      backend/controllers/ReportController.php
  37. +2
    -2
      backend/controllers/SettingAdminController.php
  38. +2
    -2
      backend/controllers/SiteController.php
  39. +2
    -2
      backend/controllers/StatsAdminController.php
  40. +2
    -2
      backend/controllers/StatsController.php
  41. +2
    -2
      backend/controllers/SubscriptionController.php
  42. +2
    -2
      backend/controllers/SupportAdminController.php
  43. +2
    -2
      backend/controllers/SupportController.php
  44. +2
    -2
      backend/controllers/TaxRateAdminController.php
  45. +2
    -2
      backend/controllers/TillerController.php
  46. +5
    -5
      backend/controllers/UserController.php
  47. +2
    -2
      backend/controllers/UserGroupController.php
  48. +2
    -2
      backend/controllers/UserImportController.php
  49. +2
    -2
      backend/models/AccessUserProducerForm.php
  50. +2
    -2
      backend/models/CreditForm.php
  51. +6
    -6
      backend/models/MailForm.php
  52. +2
    -2
      backend/views/access/index.php
  53. +2
    -2
      backend/views/communicate-admin/index.php
  54. +2
    -2
      backend/views/communicate/email.php
  55. +3
    -3
      backend/views/communicate/instructions.php
  56. +2
    -2
      backend/views/communicate/instructions_multi.php
  57. +2
    -2
      backend/views/communicate/paper.php
  58. +6
    -6
      backend/views/credit/index.php
  59. +2
    -2
      backend/views/dashboard/index.php
  60. +2
    -2
      backend/views/delivery-note/index.php
  61. +2
    -2
      backend/views/development/_form.php
  62. +2
    -2
      backend/views/development/create.php
  63. +2
    -2
      backend/views/development/development.php
  64. +2
    -2
      backend/views/development/index.php
  65. +2
    -2
      backend/views/development/update.php
  66. +10
    -12
      backend/views/distribution/index.php
  67. +4
    -4
      backend/views/distribution/report-bourlingue.php
  68. +10
    -6
      backend/views/document/_form.php
  69. +2
    -2
      backend/views/document/create.php
  70. +2
    -2
      backend/views/document/update.php
  71. +2
    -2
      backend/views/feature-admin/index.php
  72. +2
    -2
      backend/views/feature-admin/update.php
  73. +2
    -2
      backend/views/invoice/index.php
  74. +20
    -6
      backend/views/layouts/content.php
  75. +34
    -20
      backend/views/layouts/header.php
  76. +4
    -4
      backend/views/layouts/left.php
  77. +2
    -2
      backend/views/layouts/main-login.php
  78. +13
    -8
      backend/views/layouts/main.php
  79. +2
    -2
      backend/views/online-admin/index.php
  80. +6
    -6
      backend/views/order/report.php
  81. +44
    -12
      backend/views/point-sale/_form.php
  82. +2
    -2
      backend/views/point-sale/create.php
  83. +15
    -9
      backend/views/point-sale/index.php
  84. +2
    -2
      backend/views/point-sale/update.php
  85. +2
    -2
      backend/views/producer-admin/_form.php
  86. +2
    -2
      backend/views/producer-admin/billing.php
  87. +2
    -2
      backend/views/producer-admin/create.php
  88. +3
    -3
      backend/views/producer-admin/index.php
  89. +2
    -2
      backend/views/producer-admin/update.php
  90. +1
    -1
      backend/views/producer-invoice/index.php
  91. +2
    -2
      backend/views/producer-price-range-admin/create.php
  92. +2
    -2
      backend/views/producer-price-range-admin/index.php
  93. +2
    -2
      backend/views/producer-price-range-admin/update.php
  94. +1
    -1
      backend/views/producer/billing.php
  95. +14
    -22
      backend/views/producer/update.php
  96. +2
    -2
      backend/views/product-category/_form.php
  97. +2
    -2
      backend/views/product-category/create.php
  98. +2
    -2
      backend/views/product-category/index.php
  99. +2
    -2
      backend/views/product-category/update.php
  100. +2
    -2
      backend/views/product/create.php

+ 3
- 1
.bowerrc View File

{ {
"directory" : "vendor/bower"
"directory" : "vendor/bower",
"strict-ssl": false,
"https-proxy": ""
} }

backend/assets/VuejsReportIndexAsset.php → backend/assets/AdminLteAsset.php View File

<?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');
} }
} }

+ 17
- 4
backend/assets/AppAsset.php View File

<?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') ;
} }
} }

backend/assets/VuejsDistributionIndexAsset.php → backend/assets/CommonAsset.php View File

<?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') ;
} }
} }

+ 3
- 3
backend/assets/VuejsAlertsAsset.php View File

<?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()

+ 0
- 64
backend/assets/VuejsDocumentFormAsset.php View File

<?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');
}
}

+ 0
- 62
backend/assets/VuejsProducerUpdateAsset.php View File

<?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') ;
}
}

+ 0
- 58
backend/assets/VuejsSettingFormAsset.php View File

<?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') ;
}
}

+ 0
- 62
backend/assets/VuejsSubscriptionFormAsset.php View File

<?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') ;
}
}

+ 0
- 63
backend/assets/VuejsUserFormAsset.php View File

<?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') ;
}
}

+ 2
- 2
backend/config/main.php View File

<?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.

+ 3
- 5
backend/config/params.php View File

<?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 [];

+ 2
- 2
backend/controllers/AccessController.php View File

<?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.

+ 2
- 2
backend/controllers/BackendController.php View File

<?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.

+ 2
- 2
backend/controllers/CommunicateAdminController.php View File

<?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.

+ 2
- 2
backend/controllers/CommunicateController.php View File

<?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.

+ 2
- 2
backend/controllers/CreditController.php View File

<?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.

+ 5
- 5
backend/controllers/CronController.php View File

<?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);

+ 2
- 2
backend/controllers/DashboardAdminController.php View File

<?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.

+ 2
- 2
backend/controllers/DashboardController.php View File

<?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.

+ 2
- 2
backend/controllers/DeliveryNoteController.php View File

<?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.

+ 2
- 2
backend/controllers/DevelopmentController.php View File

<?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.

+ 2
- 2
backend/controllers/DistributionController.php View File

<?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.

+ 2
- 2
backend/controllers/DocumentController.php View File

<?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.

+ 2
- 2
backend/controllers/FeatureAdminController.php View File

<?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.

+ 2
- 2
backend/controllers/InvoiceController.php View File

<?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.

+ 2
- 2
backend/controllers/OnlineAdminController.php View File

<?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.

+ 7
- 7
backend/controllers/OrderController.php View File

<?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>';



+ 11
- 2
backend/controllers/PointSaleController.php View File

<?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.
*/ */

+ 2
- 2
backend/controllers/ProducerAdminController.php View File

<?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.

+ 2
- 2
backend/controllers/ProducerController.php View File

<?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.

+ 2
- 2
backend/controllers/ProducerPriceRangeAdminController.php View File

<?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.

+ 2
- 2
backend/controllers/ProductCategoryController.php View File

<?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.

+ 2
- 2
backend/controllers/ProductController.php View File

<?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.

+ 2
- 2
backend/controllers/QuotationController.php View File

<?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.

+ 86
- 3
backend/controllers/ReportController.php View File

<?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);
}

} }

+ 2
- 2
backend/controllers/SettingAdminController.php View File

<?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.

+ 2
- 2
backend/controllers/SiteController.php View File

<?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.

+ 2
- 2
backend/controllers/StatsAdminController.php View File

<?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.

+ 2
- 2
backend/controllers/StatsController.php View File

<?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.

+ 2
- 2
backend/controllers/SubscriptionController.php View File

<?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.

+ 2
- 2
backend/controllers/SupportAdminController.php View File

<?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.

+ 2
- 2
backend/controllers/SupportController.php View File

<?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.

+ 2
- 2
backend/controllers/TaxRateAdminController.php View File

<?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.

+ 2
- 2
backend/controllers/TillerController.php View File

<?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.

+ 5
- 5
backend/controllers/UserController.php View File

<?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();
} }

+ 2
- 2
backend/controllers/UserGroupController.php View File

<?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.

+ 2
- 2
backend/controllers/UserImportController.php View File

<?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.

+ 2
- 2
backend/models/AccessUserProducerForm.php View File

<?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.

+ 2
- 2
backend/models/CreditForm.php View File

<?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.

+ 6
- 6
backend/models/MailForm.php View File

<?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

+ 2
- 2
backend/views/access/index.php View File

<?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.

+ 2
- 2
backend/views/communicate-admin/index.php View File

<?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.

+ 2
- 2
backend/views/communicate/email.php View File

<?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.

+ 3
- 3
backend/views/communicate/instructions.php View File

<?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>

+ 2
- 2
backend/views/communicate/instructions_multi.php View File

<?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.

+ 2
- 2
backend/views/communicate/paper.php View File

<?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.

+ 6
- 6
backend/views/credit/index.php View File



$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']);

+ 2
- 2
backend/views/dashboard/index.php View File

<?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.

+ 2
- 2
backend/views/delivery-note/index.php View File

<?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.

+ 2
- 2
backend/views/development/_form.php View File

<?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.

+ 2
- 2
backend/views/development/create.php View File

<?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.

+ 2
- 2
backend/views/development/development.php View File

<?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.

+ 2
- 2
backend/views/development/index.php View File

<?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.

+ 2
- 2
backend/views/development/update.php View File

<?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.

+ 10
- 12
backend/views/distribution/index.php View File

<?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,")+'&nbsp;€' }} {{ order.user.credit.toFixed(2).replace(/(\d)(?=(\d{3})+(?:\.\d+)?$)/g, "$1,")+'&nbsp;€' }}
<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">

+ 4
- 4
backend/views/distribution/report-bourlingue.php View File

<?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>';

+ 10
- 6
backend/views/document/_form.php View File

<?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();



+ 2
- 2
backend/views/document/create.php View File

<?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.

+ 2
- 2
backend/views/document/update.php View File

<?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.

+ 2
- 2
backend/views/feature-admin/index.php View File

<?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.

+ 2
- 2
backend/views/feature-admin/update.php View File

<?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.

+ 2
- 2
backend/views/invoice/index.php View File

<?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.

+ 20
- 6
backend/views/layouts/content.php View File

<?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">&times;</span></a> <a href="<?= Yii::$app->urlManager->createUrl(['producer/update-opendistrib-version']) ?>" class="close"><span aria-hidden="true">&times;</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">

+ 34
- 20
backend/views/layouts/header.php View File

<?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">

+ 4
- 4
backend/views/layouts/left.php View File

<?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>',

+ 2
- 2
backend/views/layouts/main-login.php View File

<?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.

+ 13
- 8
backend/views/layouts/main.php View File

<?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>

+ 2
- 2
backend/views/online-admin/index.php View File

<?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.

+ 6
- 6
backend/views/order/report.php View File

<?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>';

+ 44
- 12
backend/views/point-sale/_form.php View File

<?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>

+ 2
- 2
backend/views/point-sale/create.php View File

<?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.

+ 15
- 9
backend/views/point-sale/index.php View File

<?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;
} }
], ],
[ [

+ 2
- 2
backend/views/point-sale/update.php View File

<?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.

+ 2
- 2
backend/views/producer-admin/_form.php View File

<?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.

+ 2
- 2
backend/views/producer-admin/billing.php View File

<?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.

+ 2
- 2
backend/views/producer-admin/create.php View File

<?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.

+ 3
- 3
backend/views/producer-admin/index.php View File

<?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',

+ 2
- 2
backend/views/producer-admin/update.php View File

<?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.

+ 1
- 1
backend/views/producer-invoice/index.php View File

/** /**
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.

+ 2
- 2
backend/views/producer-price-range-admin/create.php View File

<?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.

+ 2
- 2
backend/views/producer-price-range-admin/index.php View File

<?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.

+ 2
- 2
backend/views/producer-price-range-admin/update.php View File

<?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.

+ 1
- 1
backend/views/producer/billing.php View File

/** /**
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.

+ 14
- 22
backend/views/producer/update.php View File

/** /**
* 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')

+ 2
- 2
backend/views/product-category/_form.php View File

<?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.

+ 2
- 2
backend/views/product-category/create.php View File

<?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.

+ 2
- 2
backend/views/product-category/index.php View File

<?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.

+ 2
- 2
backend/views/product-category/update.php View File

<?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.

+ 2
- 2
backend/views/product/create.php View File

<?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.

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save