public $js = [ | public $js = [ | ||||
'../../frontend/web/js/jquery-ui-1.11.4.custom/jquery-ui.min.js', | '../../frontend/web/js/jquery-ui-1.11.4.custom/jquery-ui.min.js', | ||||
'js/lechatdesnoisettes.js?v=2', | 'js/lechatdesnoisettes.js?v=2', | ||||
]; | ]; | ||||
public $depends = [ | public $depends = [ | ||||
'yii\bootstrap\BootstrapAsset', | 'yii\bootstrap\BootstrapAsset', |
<meta charset="<?= Yii::$app->charset ?>"> | <meta charset="<?= Yii::$app->charset ?>"> | ||||
<meta name="viewport" content="width=device-width, initial-scale=1"> | <meta name="viewport" content="width=device-width, initial-scale=1"> | ||||
<?= Html::csrfMetaTags() ?> | <?= Html::csrfMetaTags() ?> | ||||
<title><?= Html::encode($this->title) ?> - Le Chat des Noisettes</title> | |||||
<title><?= Html::encode($this->title) ?> - Réservation de pain</title> | |||||
<?php $this->head() ?> | <?php $this->head() ?> | ||||
</head> | </head> | ||||
<body> | <body> |
'js/jquery-ui-1.11.4.custom/jquery-ui.min.js', | 'js/jquery-ui-1.11.4.custom/jquery-ui.min.js', | ||||
'js/lightbox/js/lightbox.min.js', | 'js/lightbox/js/lightbox.min.js', | ||||
'js/lechatdesnoisettes.js?v=3', | 'js/lechatdesnoisettes.js?v=3', | ||||
'js/boulange.js', | |||||
]; | ]; | ||||
public $depends = [ | public $depends = [ | ||||
'yii\web\YiiAsset', | 'yii\web\YiiAsset', |
public $nom; | public $nom; | ||||
public $prenom; | public $prenom; | ||||
public $telephone; | public $telephone; | ||||
public $is_boulanger; | |||||
public $siret; | |||||
public $nom_magasin; | |||||
/** | /** | ||||
* @inheritdoc | * @inheritdoc | ||||
['password', 'required','message'=>'Champs obligatoire'], | ['password', 'required','message'=>'Champs obligatoire'], | ||||
['password', 'string', 'min' => 6, 'tooShort' => 'Votre mot de passe doit contenir au moins 6 caractères'], | ['password', 'string', 'min' => 6, 'tooShort' => 'Votre mot de passe doit contenir au moins 6 caractères'], | ||||
['is_boulanger', 'boolean'], | |||||
['nom_magasin', 'string'], | |||||
['nom_magasin', 'required','message'=>'Champs obligatoire', 'when' => function($model) { | |||||
return $model->is_boulanger ; | |||||
},'whenClient' => "function (attribute, value) { | |||||
return $('#signupform-is_boulanger').prop('checked') ; | |||||
}"], | |||||
['siret', 'string'], | |||||
['siret', 'required','message'=>'Champs obligatoire', 'when' => function($model) { | |||||
return $model->is_boulanger ; | |||||
},'whenClient' => "function (attribute, value) { | |||||
return $('#signupform-is_boulanger').prop('checked') ; | |||||
}"], | |||||
['siret', function($attribute, $params) { | |||||
$siret = $this->$attribute ; | |||||
$siret = str_replace(' ', '', $siret) ; | |||||
if (strlen($siret) != 14) | |||||
{ | |||||
$this->addError($attribute, 'Le numéro SIRET doit contenir 14 caractères'); | |||||
return; | |||||
} | |||||
if (!is_numeric($siret)) | |||||
{ | |||||
$this->addError($attribute, 'Le numéro SIRET ne doit contenir que des chiffres'); | |||||
return; | |||||
} | |||||
// on prend chaque chiffre un par un | |||||
// si son index (position dans la chaîne en commence à 0 au premier caractère) est pair | |||||
// on double sa valeur et si cette dernière est supérieure à 9, on lui retranche 9 | |||||
// on ajoute cette valeur à la somme totale | |||||
$sum = 0 ; | |||||
for ($index = 0; $index < 14; $index ++) | |||||
{ | |||||
$number = (int) $siret[$index]; | |||||
if (($index % 2) == 0) { if (($number *= 2) > 9) $number -= 9; } | |||||
$sum += $number; | |||||
} | |||||
// le numéro est valide si la somme des chiffres est multiple de 10 | |||||
if (($sum % 10) != 0) | |||||
$this->addError($attribute, 'Numéro SIRET invalide'); | |||||
}], | |||||
]; | ]; | ||||
} | } | ||||
$user->prenom = $this->prenom ; | $user->prenom = $this->prenom ; | ||||
$user->telephone = $this->telephone ; | $user->telephone = $this->telephone ; | ||||
$user->confiance = 1 ; | $user->confiance = 1 ; | ||||
if($this->is_boulanger) | |||||
{ | |||||
$user->is_boulanger = 1 ; | |||||
$user->nom_magasin = $this->nom_magasin ; | |||||
$user->siret = $this->siret ; | |||||
} | |||||
$user->setPassword($this->password); | $user->setPassword($this->password); | ||||
$user->generateAuthKey(); | $user->generateAuthKey(); | ||||
if ($user->save()) { | if ($user->save()) { | ||||
'username' => 'Identifiant', | 'username' => 'Identifiant', | ||||
'password' => 'Mot de passe', | 'password' => 'Mot de passe', | ||||
'rememberMe' => 'Se souvenir de moi', | 'rememberMe' => 'Se souvenir de moi', | ||||
'prenom' => 'Prénom', | |||||
'telephone' => 'Téléphone', | |||||
'is_boulanger' => "Je suis professionnel et souhaite mettre en place un système de réservation de pain dans ma boulangerie", | |||||
'nom_magasin' => 'Nom de la boulangerie', | |||||
'siret' => 'Numéro SIRET' | |||||
]; | ]; | ||||
} | } | ||||
} | } |
<div class="row"> | <div class="row"> | ||||
<div class="col-lg-5"> | <div class="col-lg-5"> | ||||
<?php $form = ActiveForm::begin(['id' => 'form-signup']); ?> | |||||
<?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() ?> | ||||
<?= $form->field($model, 'nom') ?> | <?= $form->field($model, 'nom') ?> | ||||
<?= $form->field($model, 'prenom') ?> | <?= $form->field($model, 'prenom') ?> | ||||
<?= $form->field($model, 'telephone') ?> | <?= $form->field($model, 'telephone') ?> | ||||
<?= $form->field($model, 'is_boulanger')->checkbox() ?> | |||||
<div id="champs-boulanger"> | |||||
<?= $form->field($model, 'nom_magasin') ?> | |||||
<?= $form->field($model, 'siret') ?> | |||||
</div> | |||||
<div class="form-group"> | <div class="form-group"> | ||||
<?= Html::submitButton("S'inscrire", ['class' => 'btn btn-primary', 'name' => 'signup-button']) ?> | <?= Html::submitButton("S'inscrire", ['class' => 'btn btn-primary', 'name' => 'signup-button']) ?> | ||||
</div> | </div> |
font-weight: bold; | font-weight: bold; | ||||
} | } | ||||
/* signup */ | |||||
/* line 349, ../sass/screen.scss */ | |||||
#form-signup #champs-boulanger { | |||||
display: none; | |||||
} | |||||
/* line 2, ../sass/_systeme_commandes.scss */ | /* line 2, ../sass/_systeme_commandes.scss */ | ||||
h1.title-systeme-commande { | h1.title-systeme-commande { | ||||
color: black; | color: black; |
/* | |||||
* To change this license header, choose License Headers in Project Properties. | |||||
* To change this template file, choose Tools | Templates | |||||
* and open the template in the editor. | |||||
*/ | |||||
$(document).ready(function() | |||||
{ | |||||
boulange_signup() ; | |||||
}); | |||||
function boulange_signup() | |||||
{ | |||||
if($('#form-signup').size()) | |||||
{ | |||||
boulange_signup_champs_boulanger() ; | |||||
$('#signupform-is_boulanger').change(function() { | |||||
boulange_signup_champs_boulanger() ; | |||||
}) ; | |||||
} | |||||
} | |||||
function boulange_signup_champs_boulanger() | |||||
{ | |||||
if($('#signupform-is_boulanger').prop('checked')) | |||||
{ | |||||
$('#champs-boulanger').fadeIn() ; | |||||
} | |||||
else { | |||||
$('#champs-boulanger').hide() ; | |||||
} | |||||
} | |||||
}); | }); | ||||
} | } | ||||
} | } | ||||
/* signup */ | |||||
#form-signup { | |||||
#champs-boulanger { | |||||
display: none ; | |||||
} | |||||
} | |||||
@import "_systeme_commandes.scss" ; | @import "_systeme_commandes.scss" ; | ||||
@import "_responsive.scss" ; | @import "_responsive.scss" ; | ||||