diff --git a/app/controllers/events_controller.rb b/app/controllers/events_controller.rb index 6e3c9a8d1c6509f1e0d0cfe1bb76e41086a2395c..68ac8df0e2c0aef16e007ca83a1b3261eab5c8af 100644 --- a/app/controllers/events_controller.rb +++ b/app/controllers/events_controller.rb @@ -11,9 +11,18 @@ class EventsController < ApplicationController def generate_event - @new_event_validation = EventValidation.new(params["new_event_validation"].permit(:title, :description, :active, :scheduledAt, :creator, :invitees)) + @new_event_validation = EventValidation.new(params["new_event_validation"].permit(:title, :description, :active, :scheduledAtTime, :scheduledAtDate, :creator, :invitees)) + invitees_string = params["new_event_validation"]["invitees"].split(",") + invitees = [] + invitees_string.each do |i| + invitees.push(i.to_i) + end + puts [invitees] + @new_event_validation.invitees = invitees + @new_event_validation.scheduledAt = "#{@new_event_validation.scheduledAtDate} #{@new_event_validation.scheduledAtTime}".to_datetime if @new_event_validation.valid? create_event(@new_event_validation) + redirect_to root_path else puts @new_event_validation.errors.full_messages render 'new', status: :unprocessable_entity diff --git a/app/models/event_validation.rb b/app/models/event_validation.rb index fa9a7fe0f9ae26108269f346490d75e1de6fd966..bfcc9ef040d30e44d83ee481cb6c06411904fd95 100644 --- a/app/models/event_validation.rb +++ b/app/models/event_validation.rb @@ -4,8 +4,8 @@ class EventValidation include ActiveModel::Model include ActiveModel::Validations - attr_accessor :id, :title, :description, :active, :scheduledAt, :creator, :invitees + attr_accessor :id, :title, :description, :active, :scheduledAtTime, :scheduledAtDate, :scheduledAt, :creator, :invitees - validates :title, :description, :active, :scheduledAt, :creator, :invitees, presence: true + validates :title, :description, :active, :scheduledAt, :creator, :invitees, :scheduledAtTime, :scheduledAtDate, presence: true end diff --git a/app/views/events/new.html.erb b/app/views/events/new.html.erb index 6429c8e884384629c1d689d7d988b7f0c4080875..f1e4e549501c8ebd682efca7030fc4a07d58b3a4 100644 --- a/app/views/events/new.html.erb +++ b/app/views/events/new.html.erb @@ -29,21 +29,20 @@ <%= f.text_field :description, class:"col-sm-7", required: true %> </div> - <div class="field row", style="margin-top: 10px;"> - <%= f.label :active, "Active:", class: "form-label col-sm-4 text-sm-end" %> - <%= f.text_field :active, class:"col-sm-7", required: true %> - </div> + <%= f.hidden_field :active, value: true %> <div class="field row", style="margin-top: 10px;"> - <%= f.label :scheduledAt, "Scheduled at:", class: "form-label col-sm-4 text-sm-end" %> - <%= f.text_field :scheduledAt, class:"col-sm-7", required: true %> + <%= f.label :scheduledAtTime, "Time", class: "form-label col-sm-4 text-sm-end" %> + <%= f.time_field :scheduledAtTime, class:"col-sm-7", required: true %> </div> <div class="field row", style="margin-top: 10px;"> - <%= f.label :creator, "Creator:", class: "form-label col-sm-4 text-sm-end" %> - <%= f.text_field :creator, class:"col-sm-7", required: true %> + <%= f.label :scheduledAtDate, "Date", class: "form-label col-sm-4 text-sm-end" %> + <%= f.date_field :scheduledAtDate, class:"col-sm-7", required: true %> </div> + <%= f.hidden_field :creator, value: session[:user_id] %> + <div class="field row", style="margin-top: 10px;"> <%= f.label :invitees, "Invites:", class: "form-label col-sm-4 text-sm-end" %> <%= f.text_field :invitees, class:"col-sm-7", required: true %> diff --git a/app/views/home/home.html.erb b/app/views/home/home.html.erb index 709804ea0b69206cd7ad955557c9b4e020f5cf53..e84595b615aa424ea9d6e60d4fdffd9ba57b431e 100644 --- a/app/views/home/home.html.erb +++ b/app/views/home/home.html.erb @@ -61,10 +61,18 @@ </table> </div> <% else %> + <% if @created_events != nil %> + <div class="col-sm-10 offset-sm-1 text-box white-text"> + <h3 class="text-center"> Invited Events </h3> + <p class="text-center">Events that you have been invited to will appear here</p> + </div> + + <% else %> <div class="col-sm-4 offset-sm-2 text-box white-text"> <h3 class="text-center"> Invited Events </h3> <p class="text-center">Events that you have been invited to will appear here</p> - </div> + </div> + <% end %> <% end %> <% if @created_events != nil %> <div class="col-sm-10 offset-sm-1 text-box white-text"> @@ -87,18 +95,29 @@ <td><%= event["scheduledAt"] %></td> <td><% event["invitees"].each do |user| %><%= user%> <% end %></td> <td><%= link_to "Edit Event", update_event_path(id: event["id"]), class:"btn btn-info"%></td> - <td><%= link_to "Delete Event", delete_event_path(event), method: 'post', class:"btn btn-info"%></td> + <td><%= link_to "Delete Event", delete_event_path(event), method: 'post', class:"btn btn-danger"%></td> </tr> <% end %> </table> </div> <% else %> - <div class="col-sm-4 text-box white-text text-center"> - <h3> Create An Event </h3> - <p>Schedule your first event and invite some people</p> - <%= link_to "Create Event", root_path, class: "btn btn-info"%> - </div> + <% if @invited_events != nil %> + <div class="col-sm-10 offset-sm-1 text-box white-text text-center"> + <h3> Create An Event </h3> + <p>Schedule your first event and invite some people</p> + <%= link_to "Create Event", create_event_path, class: "btn btn-info"%> + </div> + + <% else %> + <div class="col-sm-4 text-box white-text text-center"> + <h3> Create An Event </h3> + <p>Schedule your first event and invite some people</p> + <%= link_to "Create Event", create_event_path, class: "btn btn-info"%> + </div> + <% end %> + + <% end %> </div> <% else %>