public function actionIndex() | public function actionIndex() | ||||
{ | { | ||||
return $this->render('index', [ | return $this->render('index', [ | ||||
'producer' => $this->getProducerCurrent(), | |||||
'invoicesArray' => $this->getProducerModule() | 'invoicesArray' => $this->getProducerModule() | ||||
->getDolibarrUtils() | ->getDolibarrUtils() | ||||
->getDolibarrProducerInvoices($this->getProducerCurrent()) | ->getDolibarrProducerInvoices($this->getProducerCurrent()) |
<?php $form = ActiveForm::begin(); ?> | <?php $form = ActiveForm::begin(); ?> | ||||
<h3>Général</h3> | |||||
<?= $form->field($model, 'slug') ?> | |||||
<?= $form->field($model, 'name') ?> | |||||
<?= $form->field($model, 'type')->textInput(['placeholder' => 'Boulangerie, brasserie, ferme ...']); ?> | |||||
<?= $form->field($model, 'postcode') ?> | |||||
<?= $form->field($model, 'city') ?> | |||||
<?= $form->field($model, 'contact_email') ?> | |||||
<?= $form->field($model, 'latitude') ?> | |||||
<?= $form->field($model, 'longitude') ?> | |||||
<?= $form->field($model, 'code')->label('Code d\'accès') ?> | |||||
<?= $form->field($model, 'admin_comment')->textarea(['rows' => 7]) ?> | |||||
<?= $form->field($model, 'is_new')->checkbox() ?> | |||||
<div class="row"> | |||||
<div class="col-md-6"> | |||||
<div class="panel panel-default"> | |||||
<div class="panel-heading"> | |||||
<h3 class="panel-title"> | |||||
<i class="fa fa-th-list"></i> | |||||
Général | |||||
</h3> | |||||
</div> | |||||
<div class="panel-body"> | |||||
<?= $form->field($model, 'slug') ?> | |||||
<?= $form->field($model, 'name') ?> | |||||
<?= $form->field($model, 'type')->textInput(['placeholder' => 'Boulangerie, brasserie, ferme ...']); ?> | |||||
<?= $form->field($model, 'postcode') ?> | |||||
<?= $form->field($model, 'city') ?> | |||||
<?= $form->field($model, 'contact_email') ?> | |||||
<?= $form->field($model, 'latitude') ?> | |||||
<?= $form->field($model, 'longitude') ?> | |||||
<?= $form->field($model, 'code')->label('Code d\'accès') ?> | |||||
<?= $form->field($model, 'admin_comment')->textarea(['rows' => 7]) ?> | |||||
<?= $form->field($model, 'is_new')->checkbox() ?> | |||||
</div> | |||||
</div> | |||||
</div> | |||||
<div class="col-md-6"> | |||||
<div class="panel panel-default"> | |||||
<div class="panel-heading"> | |||||
<h3 class="panel-title"> | |||||
<i class="fa fa-euro"></i> | |||||
Facturation | |||||
</h3> | |||||
</div> | |||||
<div class="panel-body"> | |||||
<?= $form->field($model, 'option_billing_type') | |||||
->dropDownList(Producer::getBillingTypePopulateDropdown()); ?> | |||||
<?= $form->field($model, 'option_billing_frequency') | |||||
->dropDownList(Producer::getBillingFrequencyPopulateDropdown()); ?> | |||||
<?= $form->field($model, 'option_billing_reduction') | |||||
->dropDownList([ | |||||
0 => 'Non', | |||||
1 => 'Oui' | |||||
]); ?> | |||||
<?= $form->field($model, 'option_billing_reduction_percentage') ?> | |||||
<?= $form->field($model, 'option_billing_permanent_transfer') | |||||
->dropDownList([ | |||||
0 => 'Non', | |||||
1 => 'Oui' | |||||
]); ?> | |||||
<?= $form->field($model, 'option_billing_permanent_transfer_amount') ?> | |||||
<?= $form->field($model, 'dolibarr_socid') ?> | |||||
<?= $form->field($model, 'dolibarr_product_id') ?> | |||||
</div> | |||||
</div> | |||||
<h3>Facturation</h3> | |||||
<?= $form->field($model, 'option_billing_type') | |||||
->dropDownList(Producer::getBillingTypePopulateDropdown()); ?> | |||||
<?= $form->field($model, 'option_billing_frequency') | |||||
->dropDownList(Producer::getBillingFrequencyPopulateDropdown()); ?> | |||||
<?= $form->field($model, 'option_billing_reduction') | |||||
->dropDownList([ | |||||
0 => 'Non', | |||||
1 => 'Oui' | |||||
]); ?> | |||||
<?= $form->field($model, 'option_billing_reduction_percentage') ?> | |||||
<?= $form->field($model, 'option_billing_permanent_transfer') | |||||
->dropDownList([ | |||||
0 => 'Non', | |||||
1 => 'Oui' | |||||
]); ?> | |||||
<?= $form->field($model, 'option_billing_permanent_transfer_amount') ?> | |||||
<?= $form->field($model, 'dolibarr_socid') ?> | |||||
<?= $form->field($model, 'dolibarr_product_id') ?> | |||||
<div class="panel panel-default"> | |||||
<div class="panel-heading"> | |||||
<h3 class="panel-title"> | |||||
<i class="fa fa-users"></i> | |||||
Parrainage | |||||
</h3> | |||||
</div> | |||||
<div class="panel-body"> | |||||
<?= $form->field($model, 'sponsorship_sponsor_reward')->checkbox() ?> | |||||
</div> | |||||
</div> | |||||
</div> | |||||
</div> | |||||
<div class="form-group"> | |||||
<?= Html::submitButton($model->isNewRecord ? 'Ajouter' : 'Modifier', ['class' => 'btn btn-success']) ?> | |||||
<div class="form-group form-actions"> | |||||
<?= Html::submitButton($model->isNewRecord ? 'Ajouter' : 'Modifier', ['class' => 'btn btn-primary']) ?> | |||||
</div> | </div> | ||||
<?php ActiveForm::end(); ?> | <?php ActiveForm::end(); ?> |
$summaryQuaterly = $producerModule->getSummaryAmountsToBeBilled($producer, '3 derniers mois', 3); | $summaryQuaterly = $producerModule->getSummaryAmountsToBeBilled($producer, '3 derniers mois', 3); | ||||
$isBillingFrequencyBiannual = $producerModule->isBillingFrequencyBiannual($producer); | $isBillingFrequencyBiannual = $producerModule->isBillingFrequencyBiannual($producer); | ||||
$summaryBiannual = $producerModule->getSummaryAmountsToBeBilled($producer, '6 derniers mois', 6); | $summaryBiannual = $producerModule->getSummaryAmountsToBeBilled($producer, '6 derniers mois', 6); | ||||
$isBilled = false; | |||||
if(($isBillingFrequencyMonthly && $summaryMonthly) | if(($isBillingFrequencyMonthly && $summaryMonthly) | ||||
|| ($isBillingFrequencyQuaterly && $summaryQuaterly) | || ($isBillingFrequencyQuaterly && $summaryQuaterly) | ||||
|| ($isBillingFrequencyBiannual && $summaryBiannual)) { | || ($isBillingFrequencyBiannual && $summaryBiannual)) { | ||||
$isBilled = true; | |||||
$str .= '<li>'; | $str .= '<li>'; | ||||
if ($isBillingFrequencyMonthly && $summaryMonthly) { | if ($isBillingFrequencyMonthly && $summaryMonthly) { | ||||
$str .= $summaryMonthly; | $str .= $summaryMonthly; | ||||
$str .= '</ul>'; | $str .= '</ul>'; | ||||
if($isBilled && $producerModule->getSolver()->isFreeBillingPeriodSponsorship($producer)) { | |||||
$str .= "<br /><p><span class=\"glyphicon glyphicon-warning-sign\"></span> <strong>Pas de facturation, offre de parrainage jusqu'au ".$producerModule->getSolver()->getDateEndFreeBillingPeriodSponsorship($producer)->format('d/m/Y')."</strong></p>"; | |||||
if(!$producer->getSponsorshipSponsorReward()) { | |||||
$str .= '<p><i class="fa fa-gift"></i> Créer un avoir de 30€ pour le parrain <strong>'.Html::encode($producer->getSponsoredBy()->getName()).'</strong> sur Dolibarr et valider la récompense parrain.</p>'; | |||||
} | |||||
} | |||||
return $str; | return $str; | ||||
} | } | ||||
], | ], |
$this->setTitle('Mes factures') ; | $this->setTitle('Mes factures') ; | ||||
$this->addBreadcrumb($this->getTitle()) ; | $this->addBreadcrumb($this->getTitle()) ; | ||||
$producerModule = $this->getProducerModule(); | |||||
?> | ?> | ||||
<?php if($invoicesArray && count($invoicesArray)): ?> | <?php if($invoicesArray && count($invoicesArray)): ?> | ||||
<div class="callout callout-info"> | <div class="callout callout-info"> | ||||
<span class="glyphicon glyphicon-info-sign"></span> Vous n'avez encore aucune facture. | <span class="glyphicon glyphicon-info-sign"></span> Vous n'avez encore aucune facture. | ||||
</div> | </div> | ||||
<?php if($producerModule->getSolver()->isFreeBillingPeriodSponsorship($producer)): ?> | |||||
<div class="callout callout-info"> | |||||
<i class="fa fa-gift"></i> | |||||
Et comme vous avez été parrainé au moment de votre inscription, vous n'aurez pas de facture <em>Souke</em> | |||||
avant le <?= $producerModule->getSolver()->getDateEndFreeBillingPeriodSponsorship($producer)->format('d/m/Y'); ?>. | |||||
</div> | |||||
<?php endif; ?> | |||||
<?php endif; ?> | <?php endif; ?> |
$this->setTitle('Parrainage') ; | $this->setTitle('Parrainage') ; | ||||
$this->addBreadcrumb($this->getTitle()) ; | $this->addBreadcrumb($this->getTitle()) ; | ||||
$sponsorshipLink = $this->getProducerModule()->getSolver()->getSponsorshipLink($producer); | |||||
$producerModule = $this->getProducerModule(); | |||||
$sponsorshipLink = $producerModule->getSolver()->getSponsorshipLink($producer); | |||||
?> | ?> | ||||
<div class="alert alert-dark"> | |||||
<p> | |||||
<i class="bi bi-link"></i> | |||||
Votre lien de parrainage : <br /> | |||||
<strong> | |||||
<?= $sponsorshipLink ?> | |||||
<a class="btn btn-xs btn-default" id="sponsorship-link-copy" href="<?= $sponsorshipLink ?>" title="Copier le lien dans le presse-papier"> | |||||
<span class="glyphicon glyphicon-link"></span> | |||||
</a> | |||||
</strong> | |||||
</p> | |||||
<?php if($producer->getSponsoredBy()): ?> | |||||
<div class="callout callout-info"> | |||||
<i class="fa fa-users"></i> | |||||
Vous avez été parrainé par le producteur <strong><?= Html::encode($producer->getSponsoredBy()->getName()) ?></strong>. | |||||
<?php if($producerModule->getSolver()->isFreeBillingPeriodSponsorship($producer)): ?> | |||||
<br /><i class="fa fa-gift"></i> | |||||
Vous bénéficiez donc de 3 mois offerts et n'aurez pas de facture <em>Souke</em> avant le <?= $producerModule->getSolver()->getDateEndFreeBillingPeriodSponsorship($producer)->format('d/m/Y'); ?>. | |||||
<?php endif; ?> | |||||
</div> | |||||
<?php endif; ?> | |||||
<div class="panel panel-default"> | |||||
<div class="panel-heading"> | |||||
<h3 class="panel-title"> | |||||
<span class="glyphicon glyphicon-link"></span> | |||||
Votre lien de partage | |||||
</h3> | |||||
</div> | |||||
<div class="panel-body"> | |||||
<strong><?= $sponsorshipLink ?></strong> | |||||
<a class="btn btn-xs btn-default" id="sponsorship-link-copy" href="<?= $sponsorshipLink ?>" title="Copier le lien dans le presse-papier"> | |||||
<span class="glyphicon glyphicon-copy"></span> | |||||
</a> | |||||
</div> | |||||
</div> | </div> | ||||
<div class="panel panel-default"> | <div class="panel panel-default"> | ||||
producteurs s'inscrit en suivant ce lien, il devient votre filleul et obtenez tous les deux une récompense : | producteurs s'inscrit en suivant ce lien, il devient votre filleul et obtenez tous les deux une récompense : | ||||
</p> | </p> | ||||
<ul> | <ul> | ||||
<li>Votre filleul démarre avec <strong>3 mois offerts</strong> d'utilisation du logiciel</li> | |||||
<li>Vous obtenez <strong>30€ d'avoir</strong> sur vos prochaines factures</li> | |||||
<li> | |||||
Votre filleul démarre sur le logiciel avec <strong>3 mois offerts</strong>. | |||||
</li> | |||||
<li> | |||||
Vous obtenez <strong>30€ de réduction</strong> sur vos prochaines factures dès lors que votre filleul | |||||
utilise le logiciel en production. | |||||
</li> | |||||
</ul> | </ul> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
</tbody> | </tbody> | ||||
</table> | </table> | ||||
<?php else: ?> | <?php else: ?> | ||||
<p>Vous n'avez encore aucun producteur parrainé.</p> | |||||
<p>Vous n'avez encore parrainé aucun producteur.</p> | |||||
<?php endif; ?> | <?php endif; ?> | ||||
</div> | </div> | ||||
</div> | </div> |
'option_leave_period_message_title' => 'Titre du message des congés', | 'option_leave_period_message_title' => 'Titre du message des congés', | ||||
'option_leave_period_message' => 'Message des congés', | 'option_leave_period_message' => 'Message des congés', | ||||
'option_credit_description' => "Description Cagnotte", | 'option_credit_description' => "Description Cagnotte", | ||||
'sponsorship_sponsor_reward' => 'Récompense parrain', | |||||
]; | ]; | ||||
} | } | ||||
return $this; | return $this; | ||||
} | } | ||||
public function getSponsoredBy(): ?User | |||||
public function getSponsoredBy(): ?Producer | |||||
{ | { | ||||
return $this->sponsoredByRelation; | return $this->sponsoredByRelation; | ||||
} | } | ||||
public function setSponsoredBy(User $user): self | |||||
public function setSponsoredBy(Producer $producer): self | |||||
{ | { | ||||
$this->populateFieldObject('sponsored_by', 'sponsoredByRelation', $user); | |||||
$this->populateFieldObject('sponsored_by', 'sponsoredByRelation', $producer); | |||||
return $this; | return $this; | ||||
} | } | ||||
$this->populateFieldObject('id_user_group_default', 'userGroupDefault', $userGroup); | $this->populateFieldObject('id_user_group_default', 'userGroupDefault', $userGroup); | ||||
} | } | ||||
public function getSponsoredByRelation() | |||||
{ | |||||
return $this->hasOne(Producer::class, ['id' => 'sponsored_by']); | |||||
} | |||||
// --- | // --- | ||||
public static function getBillingTypePopulateDropdown() | public static function getBillingTypePopulateDropdown() |
{ | { | ||||
return \Yii::$app->urlManagerFrontend->createAbsoluteUrl(['site/signup', 'from' => $producer->getSponsorshipCode()]); | return \Yii::$app->urlManagerFrontend->createAbsoluteUrl(['site/signup', 'from' => $producer->getSponsorshipCode()]); | ||||
} | } | ||||
public function getDateEndFreeBillingPeriodSponsorship(Producer $producer): ?\DateTime | |||||
{ | |||||
if($producer->getSponsoredBy()) { | |||||
$dateStart = new \DateTime($producer->date_creation); | |||||
return $dateStart | |||||
->modify('+4 months') | |||||
->modify('first day of this month'); | |||||
} | |||||
return null; | |||||
} | |||||
public function isFreeBillingPeriodSponsorship(Producer $producer): bool | |||||
{ | |||||
if($producer->getSponsoredBy()) { | |||||
$dateNow = new \DateTime(); | |||||
$dateEndFreeBillingPeriodSponsorship = $this->getDateEndFreeBillingPeriodSponsorship($producer); | |||||
if($dateNow < $dateEndFreeBillingPeriodSponsorship) { | |||||
return true; | |||||
} | |||||
} | |||||
return false; | |||||
} | |||||
} | } |
*/ | */ | ||||
public function actionSignup(string $type = 'user') | public function actionSignup(string $type = 'user') | ||||
{ | { | ||||
$sponsorshipFromCode = Yii::$app->request->get('from'); | |||||
$sponsorshipProducerFrom = $this->findProducerSponsorshipByCode($sponsorshipFromCode); | |||||
$model = new SignupForm(); | $model = new SignupForm(); | ||||
$model->option_user_producer = $type; | $model->option_user_producer = $type; | ||||
$model->sponsored_by = $sponsorshipProducerFrom ? $sponsorshipProducerFrom->id : false; | |||||
$producerModule = $this->getProducerModule(); | $producerModule = $this->getProducerModule(); | ||||
if ($model->load(Yii::$app->request->post())) { | if ($model->load(Yii::$app->request->post())) { | ||||
$dataProducers = $producersArray['data']; | $dataProducers = $producersArray['data']; | ||||
$optionsProducers = $producersArray['options']; | $optionsProducers = $producersArray['options']; | ||||
$paidFeaturesArray = $this->getFeatureModule()->getRepository()->findPaidFeatures(); | $paidFeaturesArray = $this->getFeatureModule()->getRepository()->findPaidFeatures(); | ||||
return $this->render('signup', [ | return $this->render('signup', [ | ||||
'model' => $model, | 'model' => $model, | ||||
'sponsorshipProducerFrom' => $sponsorshipProducerFrom, | |||||
'dataProducers' => $dataProducers, | 'dataProducers' => $dataProducers, | ||||
'dataProviderPrices' => $this->getDataProviderPrices(), | 'dataProviderPrices' => $this->getDataProviderPrices(), | ||||
'paidFeaturesArray' => $paidFeaturesArray, | 'paidFeaturesArray' => $paidFeaturesArray, | ||||
public function actionSignupProducer() | public function actionSignupProducer() | ||||
{ | { | ||||
$userCurrent = $this->getUserCurrent(); | $userCurrent = $this->getUserCurrent(); | ||||
$sponsorshipFromCode = Yii::$app->request->get('from'); | |||||
$sponsorshipProducerFrom = $this->findProducerSponsorshipByCode($sponsorshipFromCode); | |||||
if(!$userCurrent) { | if(!$userCurrent) { | ||||
// Lien parrainage | // Lien parrainage | ||||
if(Yii::$app->request->get('from')) { | |||||
$this->redirect(['site/signup', 'from' => Yii::$app->request->get('from')]); | |||||
if($sponsorshipFromCode && strlen($sponsorshipFromCode)) { | |||||
$this->redirect(['site/signup', 'from' => $sponsorshipFromCode]); | |||||
} | } | ||||
else { | else { | ||||
$this->redirect(['site/signup']); | $this->redirect(['site/signup']); | ||||
$model = new SignupForm(); | $model = new SignupForm(); | ||||
$model->signup_producer_only = 'producer'; | $model->signup_producer_only = 'producer'; | ||||
$model->option_user_producer = 'producer'; | $model->option_user_producer = 'producer'; | ||||
$model->sponsored_by = $sponsorshipProducerFrom ? $sponsorshipProducerFrom->id : false; | |||||
if ($model->load(Yii::$app->request->post())) { | if ($model->load(Yii::$app->request->post())) { | ||||
$user = $model->signup($userCurrent); | $user = $model->signup($userCurrent); | ||||
return $this->render('signup_producer', [ | return $this->render('signup_producer', [ | ||||
'model' => $model, | 'model' => $model, | ||||
'sponsorshipProducerFrom' => $sponsorshipProducerFrom, | |||||
'dataProviderPrices' => $this->getDataProviderPrices(), | 'dataProviderPrices' => $this->getDataProviderPrices(), | ||||
'paidFeaturesArray' => $this->getFeatureModule()->getRepository()->findPaidFeatures() | 'paidFeaturesArray' => $this->getFeatureModule()->getRepository()->findPaidFeatures() | ||||
]); | ]); | ||||
} | } | ||||
public function findProducerSponsorshipByCode($sponsorshipFromCode) | |||||
{ | |||||
$sponsorshipProducerFrom = null; | |||||
if($sponsorshipFromCode && strlen($sponsorshipFromCode)) { | |||||
$sponsorshipProducerFrom = $this->getProducerModule()->getRepository()->findOneProducerBySponsorshipCode($sponsorshipFromCode); | |||||
} | |||||
return $sponsorshipProducerFrom; | |||||
} | |||||
public function actionSignupConfirm($idProducerRedirect = null) | public function actionSignupConfirm($idProducerRedirect = null) | ||||
{ | { | ||||
$producerModule = $this->getProducerModule(); | $producerModule = $this->getProducerModule(); |
public $is_test; | public $is_test; | ||||
public $newsletter = false; | public $newsletter = false; | ||||
public $newsletter_souke = false; | public $newsletter_souke = false; | ||||
public $sponsored_by = false; | |||||
/** | /** | ||||
* @inheritdoc | * @inheritdoc | ||||
['id_producer', 'required', 'message' => 'Champs obligatoire', 'when' => function ($model) { | ['id_producer', 'required', 'message' => 'Champs obligatoire', 'when' => function ($model) { | ||||
return $this->option_user_producer == 'user'; | return $this->option_user_producer == 'user'; | ||||
}], | }], | ||||
['sponsored_by', 'safe'], | |||||
['code', 'required', 'message' => 'Champs obligatoire', 'when' => function ($model) { | ['code', 'required', 'message' => 'Champs obligatoire', 'when' => function ($model) { | ||||
$producer = Producer::findOne($this->id_producer); | $producer = Producer::findOne($this->id_producer); | ||||
if ($producer) { | if ($producer) { | ||||
$producerModule->initProducer($producer); | $producerModule->initProducer($producer); | ||||
$producer->save(); | $producer->save(); | ||||
// Parrainage | |||||
if($this->sponsored_by) { | |||||
$sponsorshipProducerSponsor = $producerModule->getRepository()->findOneProducerById($this->sponsored_by); | |||||
if($sponsorshipProducerSponsor) { | |||||
$producer->sponsored_by = $this->sponsored_by; | |||||
$producer->save(); | |||||
} | |||||
} | |||||
/* | /* | ||||
* Envoi d'un email à l'administrateur pour le prévenir | * Envoi d'un email à l'administrateur pour le prévenir | ||||
* qu'un nouveau producteur s'est inscrit | * qu'un nouveau producteur s'est inscrit |
<?php | |||||
use yii\helpers\Html; | |||||
?> | |||||
<?php if($sponsorshipProducerFrom): ?> | |||||
<div class="alert alert-dark"> | |||||
<i class="bi bi-people-fill"></i> | |||||
Le producteur <strong><?= Html::encode($sponsorshipProducerFrom->getName()) ?></strong> vous propose de vous parrainer. | |||||
En vous inscrivant, profitez de <strong>3 mois offerts</strong> d'utilisation du logiciel ! | |||||
</div> | |||||
<?php endif; ?> |
les identifiants indiqués sur la page de <?= Html::a('connexion', \Yii::$app->urlManager->createUrl(['site/login'])); ?> pour vous identifier. | les identifiants indiqués sur la page de <?= Html::a('connexion', \Yii::$app->urlManager->createUrl(['site/login'])); ?> pour vous identifier. | ||||
</div> | </div> | ||||
<?php else: ?> | <?php else: ?> | ||||
<?= $this->render('_signup_sponsorship_message.php', [ | |||||
'sponsorshipProducerFrom' => $sponsorshipProducerFrom | |||||
]); ?> | |||||
<?php $form = ActiveForm::begin(['id' => 'form-signup', 'enableClientValidation'=> false]); ?> | <?php $form = ActiveForm::begin(['id' => 'form-signup', 'enableClientValidation'=> false]); ?> | ||||
<?= $form->field($model, 'email') ?> | <?= $form->field($model, 'email') ?> | ||||
<?= $form->field($model, 'password')->passwordInput() ?> | <?= $form->field($model, 'password')->passwordInput() ?> |
<div class="row"> | <div class="row"> | ||||
<div class="col-lg-5"> | <div class="col-lg-5"> | ||||
<?= $this->render('_signup_sponsorship_message.php', [ | |||||
'sponsorshipProducerFrom' => $sponsorshipProducerFrom | |||||
]); ?> | |||||
<?php $form = ActiveForm::begin(['id' => 'form-signup','enableClientValidation'=> false]); ?> | <?php $form = ActiveForm::begin(['id' => 'form-signup','enableClientValidation'=> false]); ?> | ||||
<?= $form->field($model, 'name_producer') ?> | <?= $form->field($model, 'name_producer') ?> | ||||
<?= $form->field($model, 'type')->textInput(['placeholder' => 'Boulangerie, brasserie, ferme ...']); ?> | <?= $form->field($model, 'type')->textInput(['placeholder' => 'Boulangerie, brasserie, ferme ...']); ?> | ||||
'prompt' => '--', | 'prompt' => '--', | ||||
]) | ]) | ||||
->label('TVA à appliquer par défaut'); ?> | ->label('TVA à appliquer par défaut'); ?> | ||||
<?= $form->field($model, 'cgv')->checkbox()->label('J\'accepte les <button type="button" class="btn btn-xs btn-default btn-modal-cgv" data-toggle="modal" data-target="#modal-cgv">conditions générales de service</button> et les <button type="button" class="btn btn-xs btn-default btn-modal-prices" data-toggle="modal" data-target="#modal-prices">conditions tarifaires</button>.') ?> | |||||
<?= $form->field($model, 'cgv')->checkbox()->label('J\'accepte les <button type="button" class="btn btn-sm btn-secondary btn-modal-cgv" data-bs-toggle="modal" data-bs-target="#modal-cgv">conditions générales de service</button> et les <button type="button" class="btn btn-sm btn-secondary btn-modal-prices" data-bs-toggle="modal" data-bs-target="#modal-prices">conditions tarifaires</button>.') ?> | |||||
<?= $form->field($model, 'verifyCode')->widget(\yii\captcha\Captcha::className(), [ | <?= $form->field($model, 'verifyCode')->widget(\yii\captcha\Captcha::className(), [ | ||||
'template' => '<div class="row"><div class="col-lg-3">{image}</div><div class="col-lg-6">{input}</div></div>', | 'template' => '<div class="row"><div class="col-lg-3">{image}</div><div class="col-lg-6">{input}</div></div>', | ||||
<div class="modal-dialog modal-lg" role="document"> | <div class="modal-dialog modal-lg" role="document"> | ||||
<div class="modal-content"> | <div class="modal-content"> | ||||
<div class="modal-header"> | <div class="modal-header"> | ||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> | |||||
<h4 class="modal-title" id="myModalLabel">Conditions générales de service</h4> | <h4 class="modal-title" id="myModalLabel">Conditions générales de service</h4> | ||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> | |||||
</div> | </div> | ||||
<div class="modal-body"> | <div class="modal-body"> | ||||
<?= $this->render('_cgv_content.php'); ?> | <?= $this->render('_cgv_content.php'); ?> | ||||
</div> | </div> | ||||
<div class="modal-footer"> | <div class="modal-footer"> | ||||
<button type="button" class="btn btn-default" data-dismiss="modal">Fermer</button> | |||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Fermer</button> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="modal-dialog modal-lg" role="document"> | <div class="modal-dialog modal-lg" role="document"> | ||||
<div class="modal-content"> | <div class="modal-content"> | ||||
<div class="modal-header"> | <div class="modal-header"> | ||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> | |||||
<h4 class="modal-title" id="myModalLabel">Tarifs</h4> | <h4 class="modal-title" id="myModalLabel">Tarifs</h4> | ||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> | |||||
</div> | </div> | ||||
<div class="modal-body"> | <div class="modal-body"> | ||||
<?= $this->render('../site/_prices_producer', ['dataProviderPrices' => $dataProviderPrices, 'paidFeaturesArray' => $paidFeaturesArray]); ?> | <?= $this->render('../site/_prices_producer', ['dataProviderPrices' => $dataProviderPrices, 'paidFeaturesArray' => $paidFeaturesArray]); ?> | ||||
</div> | </div> | ||||
<div class="modal-footer"> | <div class="modal-footer"> | ||||
<button type="button" class="btn btn-default" data-dismiss="modal">Fermer</button> | |||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Fermer</button> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> |