end
def create
- organisation = Organisation.create( nom: params[:user][:organisation],
+ # On crée l'organisation
+ organisation = Organisation.create( nom: params[:organisation],
email: user_params[:email],
zone: 'A')
organisation.structures.create(nom: params[:structure])
+
+ # et quelques données de base pour aider la prise en main
organisation.structures.first.classrooms.create(nom: 'UNE CLASSE')
organisation.structures.first.comptes.create(nom: 'TEST')
organisation.facture_chronos.create(index: 1)
organisation.tarif_types.create(nom: 'Général')
organisation.prestation_types.create(nom: 'Repas')
-
organisation.tarif_types
.first
.tarifs
.create(prestation_type: organisation.prestation_types.first,
prix: 1.00)
-
- @user = User.new(user_params)
- @user.organisation = organisation
+ # Le premier utilisateur de l'organisation
+ @user = organisation.users.new(user_params)
@user.admin = true
respond_to do |format|
if @user.save
- current_user = @user
+ # on se connecte avec l'utilisateur créé
+ sign_in @user
- format.html { redirect_to root_url, notice: 'Utilisateur créé avec succès.' }
+ format.html { redirect_to root_url, notice: 'Bienvenue ! Nous avons créé quelques exemples pour aider votre prise en main' }
format.json { render :show, status: :created, location: @user }
else
format.html { render :new }
super
end
- private
- # Use callbacks to share common setup or constraints between actions.
- def set_user
- @user = User.find(params[:id])
- end
+private
# Never trust parameters from the scary internet, only allow the white list through.
def user_params
<h2>Inscription</h2>
+<br />
-<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
+<%= bootstrap_form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
<%= render "devise/shared/error_messages", resource: resource %>
- <div class="form-group">
- <%= f.label :email %><br />
- <%= f.email_field :email, autofocus: true, required: true, autocomplete: "email", class: "form-control" %>
- </div>
+ <%= f.email_field :email, autofocus: true, required: true, autocomplete: "email", class: "form-control" %>
<div class="form-group">
<%= f.label :password %>
<% if @minimum_password_length %>
<em>(<%= @minimum_password_length %> caractères minimum)</em>
<% end %><br />
- <%= f.password_field :password, required: true, autocomplete: "new-password", class: "form-control" %>
- </div>
-
- <div class="field">
- <%= f.label :password_confirmation %><br />
- <%= f.password_field :password_confirmation, required: true, autocomplete: "new-password", class: "form-control" %>
+ <%= f.password_field :password, required: true, hide_label: true, autocomplete: "new-password", class: "form-control" %>
</div>
- <div class="field">
- <%= f.label :organisation %><br />
- <%= f.text_field :organisation, required: true, placeholder: "Le nom de votre ASSOCIATION/MARIE", class: "form-control" %>
- </div>
-
- <div class="field">
- <%= f.label :structure %><br />
- <%= text_field_tag :structure, "", required: true, placeholder: "Le nom de la structure (CANTINE/ECOLE/...)", class: "form-control" %>
- </div>
+ <%= f.password_field :password_confirmation, required: true, autocomplete: "new-password", class: "form-control" %>
+
+ <%= f.label :organisation %>
+ <%= text_field_tag :organisation, "", required: true, placeholder: "Le nom de votre ASSOCIATION / MARIE", class: "form-control" %>
+
+ <%= f.label :structure %>
+ <%= text_field_tag :structure, "", required: true, placeholder: "Le nom de la structure (CANTINE / ECOLE / ...)", class: "form-control" %>
+ <br />
<div class="actions">
<%= f.submit "S'incrire", class: "btn btn-primary btn-lg" %>