Loos
10 years ago
17 changed files with 237 additions and 21 deletions
@ -0,0 +1,65 @@ |
|||||
|
class ClientsController < ApplicationController |
||||
|
before_action :set_client, only: [:show, :edit, :update, :destroy] |
||||
|
before_action :authenticate_user! |
||||
|
|
||||
|
def index |
||||
|
@clients = Client.all |
||||
|
end |
||||
|
|
||||
|
def show |
||||
|
end |
||||
|
|
||||
|
def new |
||||
|
@client = Client.new |
||||
|
end |
||||
|
|
||||
|
def edit |
||||
|
end |
||||
|
|
||||
|
def create |
||||
|
@client = Client.new(client_params) |
||||
|
respond_to do |format| |
||||
|
if @client.save |
||||
|
format.html { redirect_to @client, notice: 'Client was successfully created.' } |
||||
|
else |
||||
|
format.html { render action: 'new' } |
||||
|
end |
||||
|
end |
||||
|
end |
||||
|
|
||||
|
def update |
||||
|
respond_to do |format| |
||||
|
if @client.update(client_params) |
||||
|
format.html { redirect_to @client, notice: 'Client was successfully updated.' } |
||||
|
else |
||||
|
format.html { render action: 'edit' } |
||||
|
end |
||||
|
end |
||||
|
end |
||||
|
|
||||
|
def destroy |
||||
|
@client.destroy |
||||
|
respond_to do |format| |
||||
|
format.html { redirect_to clients_url } |
||||
|
end |
||||
|
end |
||||
|
|
||||
|
private |
||||
|
def set_client |
||||
|
@client = Client.find(params[:id]) |
||||
|
end |
||||
|
|
||||
|
def client_params |
||||
|
params.require(:client).permit( |
||||
|
:first_name, |
||||
|
:last_name, |
||||
|
:application_date, |
||||
|
:gender, |
||||
|
:age, |
||||
|
:weight, |
||||
|
:helmet, |
||||
|
:lock, |
||||
|
:agency, |
||||
|
:completion_date) |
||||
|
end |
||||
|
end |
@ -0,0 +1,2 @@ |
|||||
|
class Client < ActiveRecord::Base |
||||
|
end |
@ -0,0 +1,49 @@ |
|||||
|
- disabled ||= false |
||||
|
.form-horizontal |
||||
|
.form-group |
||||
|
= f.label "First Name", class: "col-sm-2 control-label" |
||||
|
.col-sm-10 |
||||
|
= f.text_field :first_name, class: "form-control", disabled: disabled |
||||
|
|
||||
|
.form-group |
||||
|
= f.label "Last Name", class: "col-sm-2 control-label" |
||||
|
.col-sm-10 |
||||
|
= f.text_field :last_name, class: "form-control datepicker", disabled: disabled |
||||
|
|
||||
|
.form-group |
||||
|
= f.label "Gender", class: "col-sm-2 control-label" |
||||
|
.col-sm-10 |
||||
|
= f.text_field :gender, class: "form-control", disabled: disabled |
||||
|
|
||||
|
.form-group |
||||
|
= f.label "Age", class: "col-sm-2 control-label" |
||||
|
.col-sm-10 |
||||
|
= f.text_field :age, class: "form-control", disabled: disabled |
||||
|
|
||||
|
.form-group |
||||
|
= f.label "Weight", class: "col-sm-2 control-label" |
||||
|
.col-sm-10 |
||||
|
= f.text_field :weight, class: "form-control", disabled: disabled |
||||
|
|
||||
|
.form-group |
||||
|
= f.label "Application Date:", class: "col-sm-2 control-label" |
||||
|
.col-sm-10 |
||||
|
= f.text_field :application_date, class: "form-control", disabled: disabled |
||||
|
|
||||
|
.form-group |
||||
|
= f.label "Helmet", class: "col-sm-2 control-label" |
||||
|
.col-sm-10 |
||||
|
= f.check_box :helmet, class: "form-control", disabled: disabled |
||||
|
.form-group |
||||
|
= f.label "Lock", class: "col-sm-2 control-label" |
||||
|
.col-sm-10 |
||||
|
= f.check_box :lock, class: "form-control", disabled: disabled |
||||
|
|
||||
|
.form-group |
||||
|
= f.label "Agency", class: "col-sm-2 control-label" |
||||
|
.col-sm-10 |
||||
|
= f.text_field :agency, class: "form-control", disabled: disabled |
||||
|
.form-group |
||||
|
= f.label "Completion Date:", class: "col-sm-2 control-label" |
||||
|
.col-sm-10 |
||||
|
= f.text_field :completion_date, class: "form-control datepicker", disabled: disabled |
@ -0,0 +1,12 @@ |
|||||
|
.container |
||||
|
= form_for @client, html: {class: 'form-horizontal'} do |f| |
||||
|
- if @client.errors.any? |
||||
|
#error_explanation |
||||
|
%h2= pluralize(@client.errors.count, "error") + " prohibited this bike from being saved:" |
||||
|
%ul |
||||
|
- @client.errors.full_messages.each do |msg| |
||||
|
%li= msg |
||||
|
= render 'fields', f: f |
||||
|
.row |
||||
|
.actions.col-sm-offset-2 |
||||
|
= f.submit class: "btn btn-default" |
@ -0,0 +1,6 @@ |
|||||
|
.container |
||||
|
%h1 Editing client |
||||
|
= render 'form' |
||||
|
= link_to 'Show', @client |
||||
|
| |
||||
|
= link_to 'Back', clients_path |
@ -0,0 +1,24 @@ |
|||||
|
.container |
||||
|
%h1 Clients |
||||
|
|
||||
|
%table.table.table-striped.table-bordered.table-hover |
||||
|
%thead |
||||
|
%tr |
||||
|
%th First Name |
||||
|
%th Last Name |
||||
|
%th Agency |
||||
|
%th |
||||
|
%th |
||||
|
%th |
||||
|
%tbody |
||||
|
- @clients.each do |client| |
||||
|
%tr |
||||
|
%td= client.first_name |
||||
|
%td= client.last_name |
||||
|
%td= client.agency |
||||
|
%td= link_to 'Show', client |
||||
|
%td= link_to 'Edit', edit_client_path(client) |
||||
|
%td= link_to 'Destroy', client, method: :delete, data: { confirm: 'Are you sure?' } |
||||
|
|
||||
|
%br |
||||
|
= link_to ' + New Client', new_client_path, class: "btn btn-default" |
@ -0,0 +1,3 @@ |
|||||
|
%h1 New Client |
||||
|
= render 'form' |
||||
|
= link_to 'Back', clients_path |
@ -0,0 +1,7 @@ |
|||||
|
.container |
||||
|
%p#notice= notice |
||||
|
= form_for(@client) do |f| |
||||
|
= render 'fields', f: f, disabled: true |
||||
|
= link_to 'Edit', edit_client_path(@client) |
||||
|
| |
||||
|
= link_to 'Back', clients_path |
@ -1,12 +0,0 @@ |
|||||
# Be sure to restart your server when you modify this file. |
|
||||
|
|
||||
# Your secret key is used for verifying the integrity of signed cookies. |
|
||||
# If you change this key, all old signed cookies will become invalid! |
|
||||
|
|
||||
# Make sure the secret is at least 30 characters and all random, |
|
||||
# no regular words or you'll be exposed to dictionary attacks. |
|
||||
# You can use `rake secret` to generate a secure secret key. |
|
||||
|
|
||||
# Make sure your secret_key_base is kept private |
|
||||
# if you're sharing your code publicly. |
|
||||
Bikedb::Application.config.secret_key_base = '55bed17e71286b1810e75f047637fd1acd64351fcdd5591ab83af67bdc628cb65958d98992a653268015aec9274a2e573b66fb5895d2bf86acd8a5c0e9d35813' |
|
@ -0,0 +1,19 @@ |
|||||
|
class CreateClients < ActiveRecord::Migration |
||||
|
def change |
||||
|
create_table :clients do |t| |
||||
|
t.string :first_name |
||||
|
t.string :last_name |
||||
|
t.date :application_date |
||||
|
t.string :gender |
||||
|
t.integer :age |
||||
|
t.integer :weight |
||||
|
t.boolean :helmet |
||||
|
t.boolean :lock |
||||
|
t.string :agency |
||||
|
t.date :completion_date |
||||
|
|
||||
|
|
||||
|
t.timestamps |
||||
|
end |
||||
|
end |
||||
|
end |
@ -0,0 +1,6 @@ |
|||||
|
# Read about factories at https://github.com/thoughtbot/factory_girl |
||||
|
|
||||
|
FactoryGirl.define do |
||||
|
factory :client do |
||||
|
end |
||||
|
end |
@ -0,0 +1,5 @@ |
|||||
|
require 'spec_helper' |
||||
|
|
||||
|
describe Client do |
||||
|
pending "add some examples to (or delete) #{__FILE__}" |
||||
|
end |
Loading…
Reference in new issue