Skip to content
Snippets Groups Projects
Commit 4f03bf6f authored by Treadway, Ross T (UG - Computer Science)'s avatar Treadway, Ross T (UG - Computer Science)
Browse files

General scss tweaks, adding get_ids, changing create and update event forms,...

General scss tweaks, adding get_ids, changing create and update event forms, removing duplicated headers, added header partials
parent 0ce6f5b4
No related branches found
No related tags found
No related merge requests found
Showing with 110 additions and 222 deletions
...@@ -31,8 +31,10 @@ ...@@ -31,8 +31,10 @@
} }
.error_message { .error_message {
margin-top: 0.5rem;
font-size: 1rem; font-size: 1rem;
font-weight: 300; font-weight: 300;
background-color: #f8d7da !important;
} }
.content, .notice, .alert { .content, .notice, .alert {
background-color: rgb(54, 56, 54); background-color: rgb(54, 56, 54);
...@@ -43,6 +45,9 @@ ...@@ -43,6 +45,9 @@
.footer { .footer {
background-color: blue; background-color: blue;
} }
.nav-masthead {
margin-bottom: 0.5rem;
}
.nav-masthead .nav-link { .nav-masthead .nav-link {
padding: .25rem 0; padding: .25rem 0;
...@@ -58,14 +63,21 @@ ...@@ -58,14 +63,21 @@
} }
.nav-masthead .nav-link + .nav-link { .nav-masthead .nav-link + .nav-link {
margin-left: 1rem; margin-left: 0.5rem;
margin-right: 0.5rem;
} }
.nav-masthead .active { .nav-masthead .active {
color: #fff; color: #fff;
border-bottom-color: #fff; border-bottom-color: #fff;
margin-left: 0.5rem;
margin-right: 0.5rem;
} }
.white-text { .white-text {
color:#fff; color:#fff;
} }
.alert {
margin-bottom: 0.5rem;
}
class ApplicationController < ActionController::Base class ApplicationController < ActionController::Base
add_flash_types :success, :warning, :danger, :info
protected protected
def login_http(loginParams) def login_http(loginParams)
...@@ -92,6 +92,23 @@ class ApplicationController < ActionController::Base ...@@ -92,6 +92,23 @@ class ApplicationController < ActionController::Base
end end
return emails return emails
end end
def get_ids(emails)
ids = []
email_request = HTTParty.post('http://172.17.0.1:3001/auth/id', :headers => {
'Content-Type' => 'application/json', 'Authorization' => session[:jwt_token]
},
:body => {
:emails => emails
}.to_json)
if email_request.code == 404
ids = nil
else
ids = email_request["ids"]
end
return ids
end
def send_reset_email(email) def send_reset_email(email)
reset_token_request = HTTParty.post('http://172.17.0.1:3001/reset_password_token', :body => { reset_token_request = HTTParty.post('http://172.17.0.1:3001/reset_password_token', :body => {
...@@ -234,7 +251,8 @@ class ApplicationController < ActionController::Base ...@@ -234,7 +251,8 @@ class ApplicationController < ActionController::Base
if session[:logged_in] if session[:logged_in]
event = update_event_request(event_validation) event = update_event_request(event_validation)
if event.code == 404 if event.code == 404
puts event.code, event["error"] @update_event_error = "Event not found"
else else
creator = get_emails(event["creator"]) creator = get_emails(event["creator"])
email_addresses = get_emails(event["invitees"]) email_addresses = get_emails(event["invitees"])
......
...@@ -12,30 +12,44 @@ class EventsController < ApplicationController ...@@ -12,30 +12,44 @@ class EventsController < ApplicationController
def generate_event def generate_event
@new_event_validation = EventValidation.new(params["new_event_validation"].permit(:title, :description, :active, :scheduledAtTime, :scheduledAtDate, :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_string = params["new_event_validation"]["invitees"].split(", ")
invitees = [] invitees = get_ids(invitees_string)
invitees_string.each do |i| if invitees.nil?
invitees.push(i.to_i) @new_event_error = "One or more of the users were not found"
end @new_event_validation = EventValidation.new()
puts [invitees] render 'new', status: :unprocessable_entity
@new_event_validation.invitees = invitees else
@new_event_validation.scheduledAt = "#{@new_event_validation.scheduledAtDate} #{@new_event_validation.scheduledAtTime}".to_datetime
if @new_event_validation.valid? @new_event_validation.invitees = invitees
create_event(@new_event_validation) @new_event_validation.scheduledAt = "#{@new_event_validation.scheduledAtDate} #{@new_event_validation.scheduledAtTime}".to_datetime
redirect_to root_path if @new_event_validation.valid?
else create_event(@new_event_validation)
puts @new_event_validation.errors.full_messages redirect_to root_path
render 'new', status: :unprocessable_entity else
end puts @new_event_validation.errors.full_messages
render 'new', status: :unprocessable_entity
end
end
end end
def update_generated_event def update_generated_event
@update_event_validation = EventValidation.new(params["update_event_validation"].permit(:id, :title, :description, :active, :scheduledAt, :creator, :invitees)) @update_event_validation = EventValidation.new(params["update_event_validation"].permit(:id, :title, :description, :active, :scheduledAtTime, :scheduledAtDate, :creator, :invitees))
if @update_event_validation.valid? invitees_string = params["update_event_validation"]["invitees"].split(", ")
update_event(@update_event_validation) invitees = get_ids(invitees_string)
else if invitees.nil?
puts @update_event_validation.errors.full_messages @update_event_error = "One or more of the users were not found"
render 'new', status: :unprocessable_entity
redirect_to root_path, danger: @update_event_error
else
@update_event_validation.invitees = invitees
@update_event_validation.scheduledAt = "#{@update_event_validation.scheduledAtDate} #{@update_event_validation.scheduledAtTime}".to_datetime
if @update_event_validation.valid?
update_event(@update_event_validation)
redirect_to root_path
else
puts @update_event_validation.errors.full_messages
render 'edit', status: :unprocessable_entity
end
end end
end end
......
...@@ -8,79 +8,8 @@ class HomeController < ApplicationController ...@@ -8,79 +8,8 @@ class HomeController < ApplicationController
@created_events = get_my_created_events(session[:user_id]) @created_events = get_my_created_events(session[:user_id])
end end
def test def log_out_button
login_params = {"email" => "test@surrey.ac.uk", "password" => "123456"}
login(login_params)
end
def test_sign_up
sign_up_params = {"email" => "test3@surrey.ac.uk", "password" => "1234567"}
sign_up_test(sign_up_params)
end
def test_log_out
log_out log_out
end end
def test_auth
auth
redirect_to root_path
end
def reminder_email_test
email_request = [session[:user_id]]
email = get_emails(email_request)
if email == nil
else
reminder = {"title" => "this is a test", "description" => "this is a test description", "date_time" => Time.now + 4.hours}
reminder_email(email, reminder)
end
redirect_to root_path
end
def reset_email_test
email = "ross@alantreadway.net"
send_reset_email(email)
end
def event_test
create_event(generate_event)
redirect_to root_path
end
def created_event_test
id = "2"
get_my_created_events(id)
redirect_to root_path
end
def generate_event
event = EventValidation.new(:id => "2", :title => "this is a test title", :description => "this is a test description", :active => true, :scheduledAt => (Time.now + 1.hours), :creator => session[:user_id], :invitees => [session[:user_id], 3])
end
def events_test
id = "2"
get_my_events(id)
redirect_to root_path
end
def update_event_test
update_event(generate_event)
redirect_to root_path
end
def delete_event_setup
event = EventValidation.new(:id => params["id"], :title => params["title"], :description => params["description"], :active => params["active"], :scheduledAt => params["scheduledAt"], :creator => params["creator"], :invitees => params["invitees"])
delete_event(event)
redirect_to root_path
end
end end
\ No newline at end of file
<body> <body>
<header class="mb-auto">
<div>
<a href = "/"><%= image_tag("Logo.png", width: '50px')%></a>
<nav class="nav nav-masthead justify-content-center float-md-end">
<a class="nav-link active" aria-current="page" href="/">Home</a>
<a class="nav-link" href="/home/reminder_email_test">Reminder</a>
<a class="nav-link" href="/home/test_auth">Auth</a>
<a class="nav-link" href="/home/invite_test">Invite</a>
<a class="nav-link" href="/create_event">Create Event</a>
<a class="nav-link" href="/home/events_test">Get My Events</a>
<a style="padding-right:10px;" class="nav-link" href="/home/test_log_out">Log out</a>
</nav>
</div>
</header>
<div class="row pt-5"> <div class="row pt-5">
<div class="col-md-6 offset-md-3 text-box"> <div class="col-md-6 offset-md-3 text-box">
<h3 class="text-center", style="color: White;">Create Event</h3> <h3 class="text-center", style="color: White;">Edit Event</h3>
<%= form_for @update_event_validation, as: :update_event_validation, url: update_event_send_path do |f| %> <%= form_for @update_event_validation, as: :update_event_validation, url: update_event_send_path do |f| %>
<%= f.hidden_field :id, value: params["id"] %> <%= f.hidden_field :id, value: params["id"] %>
...@@ -31,25 +17,31 @@ ...@@ -31,25 +17,31 @@
<%= f.text_field :description, class:"col-sm-7", required: true %> <%= f.text_field :description, class:"col-sm-7", required: true %>
</div> </div>
<div class="field row", style="margin-top: 10px;"> <%= f.hidden_field :active, value: true %>
<%= f.label :active, "Active:", class: "form-label col-sm-4 text-sm-end" %>
<%= f.text_field :active, class:"col-sm-7", required: true %>
</div>
<div class="field row", style="margin-top: 10px;"> <div class="field row", style="margin-top: 10px;">
<%= f.label :scheduledAt, "Scheduled at:", class: "form-label col-sm-4 text-sm-end" %> <%= f.label :scheduledAtTime, "Time", class: "form-label col-sm-4 text-sm-end" %>
<%= f.text_field :scheduledAt, class:"col-sm-7", required: true %> <%= f.time_field :scheduledAtTime, class:"col-sm-7", required: true %>
</div> </div>
<div class="field row", style="margin-top: 10px;"> <div class="field row", style="margin-top: 10px;">
<%= f.label :creator, "Creator:", class: "form-label col-sm-4 text-sm-end" %> <%= f.label :scheduledAtDate, "Date", class: "form-label col-sm-4 text-sm-end" %>
<%= f.text_field :creator, class:"col-sm-7", required: true %> <%= f.date_field :scheduledAtDate, class:"col-sm-7", required: true %>
</div> </div>
<%= f.hidden_field :creator, value: session[:user_id] %>
<div class="field row", style="margin-top: 10px;"> <div class="field row", style="margin-top: 10px;">
<%= f.label :invitees, "Invites:", class: "form-label col-sm-4 text-sm-end" %> <%= f.label :invitees, "Invites:", class: "form-label col-sm-4 text-sm-end" %>
<%= f.text_field :invitees, class:"col-sm-7", required: true %> <%= f.text_field :invitees, class:"col-sm-7", required: true %>
</div> </div>
<% if @update_event_error != "" %>
<div class="row field">
<div class="alert alert-danger error_message offset-sm-4 col-sm-7" role="alert">
<%= @update_event_error %>
</div>
</div>
<% end %>
<div class="actions text-center"> <div class="actions text-center">
......
<body> <body>
<header class="mb-auto">
<div style="padding-left:20px;">
<a href = "/"><%= image_tag("Logo.png", width: '50px')%></a>
<nav class="nav nav-masthead justify-content-center float-md-end">
<a class="nav-link active" aria-current="page" href="/">Home</a>
<a class="nav-link" href="/home/reminder_email_test">Reminder</a>
<a class="nav-link" href="/home/test_auth">Auth</a>
<a class="nav-link" href="/home/invite_test">Invite</a>
<a class="nav-link" href="/create_event">Create Event</a>
<a class="nav-link" href="/home/events_test">Get My Events</a>
<a style="padding-right:10px;" class="nav-link" href="/home/test_log_out">Log out</a>
</nav>
</div>
</header>
<div class="row pt-5"> <div class="row pt-5">
<div class="col-md-6 offset-md-3 text-box"> <div class="col-md-6 offset-md-3 text-box">
<h3 class="text-center", style="color: White;">Create Event</h3> <h3 class="text-center", style="color: White;">Create Event</h3>
...@@ -46,7 +32,14 @@ ...@@ -46,7 +32,14 @@
<div class="field row", style="margin-top: 10px;"> <div class="field row", style="margin-top: 10px;">
<%= f.label :invitees, "Invites:", class: "form-label col-sm-4 text-sm-end" %> <%= f.label :invitees, "Invites:", class: "form-label col-sm-4 text-sm-end" %>
<%= f.text_field :invitees, class:"col-sm-7", required: true %> <%= f.text_field :invitees, class:"col-sm-7", required: true %>
</div> </div>
<% if @new_event_error != "" %>
<div class="row field">
<div class="alert alert-danger error_message offset-sm-4 col-sm-7" role="alert">
<%= @new_event_error %>
</div>
</div>
<% end %>
<div class="actions text-center"> <div class="actions text-center">
<%= submit_tag "Create Event", class: "btn btn-success text-center margin_top" %> <%= submit_tag "Create Event", class: "btn btn-success text-center margin_top" %>
......
...@@ -10,33 +10,14 @@ ...@@ -10,33 +10,14 @@
</head> </head>
<section class="content"> <section class="content">
<body> <body>
<%# <header class="mb-auto">
<div>
<h3 style = "color: White;" class="float-md-start mb-0">Calendar</h3>
<nav class="nav nav-masthead justify-content-center float-md-end">
<a class="nav-link active" aria-current="page" href="#">Home</a>
<a class="nav-link" href="#">Login</a>
<a class="nav-link" href="#">Sign up</a>
</nav>
</div>
</header> %>
<%= yield %> <%= yield %>
<% flash.each do |message_type, message| %>
<div class="alert col-sm-10 offset-sm-1 error_message alert-<%= message_type %>">
<%= message %>
</div>
<% end %>
<% if session[:logged_in] %> <% if session[:logged_in] %>
<header class="mb-auto">
<div style="padding-left:20px;">
<a href="/"><%= image_tag("Logo.png", width: '50px')%></a>
<nav class="nav nav-masthead justify-content-center float-md-end">
<a class="nav-link active" aria-current="page" href="/">Home</a>
<a class="nav-link" href="/home/reminder_email_test">Reminder</a>
<a class="nav-link" href="/home/test_auth">Auth</a>
<a class="nav-link" href="/home/invite_test">Invite</a>
<a class="nav-link" href="/create_event">Create Event</a>
<a class="nav-link" href="/home/events_test">Get My Events</a>
<a style="padding-right:10px;" class="nav-link" href="/home/test_log_out">Log out</a>
</nav>
</div>
</header>
<div class="row"> <div class="row">
<% if @invited_events != nil %> <% if @invited_events != nil %>
<div class="col-sm-10 offset-sm-1 text-box white-text"> <div class="col-sm-10 offset-sm-1 text-box white-text">
...@@ -120,17 +101,6 @@ ...@@ -120,17 +101,6 @@
<% end %> <% end %>
</div> </div>
<% else %>
<header class="mb-auto">
<div style="padding-left:20px;">
<a href = "/"><%= image_tag("Logo.png", width: '50px') %></a>
<nav class="nav nav-masthead justify-content-center float-md-end">
<a class="nav-link active" aria-current="page" href="/">Home</a>
<a class="nav-link" href="/login">Login</a>
<a style="padding-right:10px;" class="nav-link" href="/sign_up">Sign up</a>
</nav>
</div>
</header>
<% end %> <% end %>
</body> </body>
</section> </section>
......
<div class="nav nav-masthead justify-content-end">
<%= link_to "Home", root_path, class: 'nav-link active' %>
<% if session[:logged_in] %>
<%= link_to "Create Event", create_event_path, class: 'nav-link' %>
<%= link_to "Log out", log_out_path, class: 'nav-link' %>
<% else %>
<%= link_to "Login", login_path, class: 'nav-link' %>
<%= link_to "Sign up", sign_up_path, class: 'nav-link' %>
<% end %>
</div>
\ No newline at end of file
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
<section class="content"> <section class="content">
<body> <body>
<%= render "layouts/header" %>
<%= yield %> <%= yield %>
<p class="notice"><%= notice %></p> <p class="notice"><%= notice %></p>
<p class="alert"><%= alert %></pw w> <p class="alert"><%= alert %></pw w>
......
<header class="mb-auto">
<div style="padding-left:20px;">
<a href = "/"><%= image_tag("Logo.png", width: '50px') %></a>
<nav class="nav nav-masthead justify-content-center float-md-end">
<a class="nav-link active" aria-current="page" href="/">Home</a>
<a class="nav-link" href="/login">Login</a>
<a style="padding-right:10px;" class="nav-link" href="/sign_up">Sign up</a>
</nav>
</div>
</header>
<div class="row pt-5"> <div class="row pt-5">
<div class="col-md-6 offset-md-3 text-box white-text"> <div class="col-md-6 offset-md-3 text-box white-text">
......
<body> <body>
<header class="mb-auto">
<div>
<h3 style="color: White;" class="float-md-start mb-0" >Calendar</h3>
<nav class="nav nav-masthead justify-content-center float-md-end">
<a class="nav-link active" aria-current="page" href="/">Home</a>
<a class="nav-link" href="/login">Login</a>
<a style="padding-right:10px;" class="nav-link" href="/sign_up">Sign up</a>
</nav>
</div>
</header>
<%= link_to "Back", :back, class: "btn btn-success" %> <%= link_to "Back", :back, class: "btn btn-success" %>
<div class="row"> <div class="row">
<div class="col-md-4 offset-md-2 text-box"> <div class="col-md-4 offset-md-2 text-box">
......
<body> <body>
<header class="mb-auto">
<div style="padding-left:20px;">
<a href = "/"><%= image_tag("Logo.png", width: '50px')%></a>
<nav class="nav nav-masthead justify-content-center float-md-end">
<a class="nav-link active" aria-current="page" href="/">Home</a>
<a class="nav-link" href="/login">Login</a>
<a style="padding-right:10px;" class="nav-link" href="/sign_up">Sign up</a>
</nav>
</div>
</header>
<div class="row pt-5"> <div class="row pt-5">
<div class="col-md-6 offset-md-3 text-box"> <div class="col-md-6 offset-md-3 text-box">
<h3 class="text-center", style="color: White;">Sign up</h3> <h3 class="text-center", style="color: White;">Sign up</h3>
......
<body> <body>
<header class="mb-auto">
<div style="padding-left:20px;">
<a href = "/"><%= image_tag("Logo.png", width: '50px')%></a>
<nav class="nav nav-masthead justify-content-center float-md-end">
<a class="nav-link active" aria-current="page" href="/">Home</a>
<a class="nav-link" href="/login">Login</a>
<a style="padding-right:10px;" class="nav-link" href="/sign_up">Sign up</a>
</nav>
</div>
</header>
<div class="row pt-5 main-row"> <div class="row pt-5 main-row">
<div class="col-md-4 offset-md-4 text-box default_form"> <div class="col-md-4 offset-md-4 text-box default_form">
<h3 class="text-center white-text">Log in</h3> <h3 class="text-center white-text">Log in</h3>
...@@ -43,7 +33,6 @@ ...@@ -43,7 +33,6 @@
<div class="row", style="margin-top: 10px;"> <div class="row", style="margin-top: 10px;">
<div class="actions col-md-7 col-sm-6 offset-md-4 offset-sm-4" style="padding-left:0px;"> <div class="actions col-md-7 col-sm-6 offset-md-4 offset-sm-4" style="padding-left:0px;">
<%= link_to "Forgot Password?", reset_password_email_path, class: 'btn btn-danger' %> <%= link_to "Forgot Password?", reset_password_email_path, class: 'btn btn-danger' %>
<%= link_to "Create Account", sign_up_path, class: "btn btn-info" %>
<%= f.submit "Log in", class: "btn btn-success" %> <%= f.submit "Log in", class: "btn btn-success" %>
</div> </div>
</div> </div>
......
...@@ -9,23 +9,15 @@ Rails.application.routes.draw do ...@@ -9,23 +9,15 @@ Rails.application.routes.draw do
get 'user', to: 'user#show' get 'user', to: 'user#show'
get 'users/password/new', to: 'devise/passwords#new', as: 'password_reset' get 'users/password/new', to: 'devise/passwords#new', as: 'password_reset'
get 'home/test', to: 'home#test' get 'log_out', to: 'home#log_out_button'
get 'home/test_log_out', to: 'home#test_log_out'
get 'home/test_auth', to: 'home#test_auth'
get 'sign_up', to: 'registrations#new' get 'sign_up', to: 'registrations#new'
post 'sign_up/send', to: 'registrations#sign_up' post 'sign_up/send', to: 'registrations#sign_up'
get 'login', to: 'sessions#new' get 'login', to: 'sessions#new'
post 'login/send', to: 'sessions#login' post 'login/send', to: 'sessions#login'
get 'home/reminder_email_test', to: 'home#reminder_email_test'
get 'home/reset_email_test', to: 'home#reset_email_test'
get 'reset_password_email', to: 'passwords#new' get 'reset_password_email', to: 'passwords#new'
post 'reset_password_email_setup', to: 'passwords#reset_password_email_setup' post 'reset_password_email_setup', to: 'passwords#reset_password_email_setup'
get 'reset_password', to: 'passwords#edit' get 'reset_password', to: 'passwords#edit'
post 'reset_password_setup', to: 'passwords#reset_password_setup' post 'reset_password_setup', to: 'passwords#reset_password_setup'
get 'home/event_test', to: 'home#event_test'
get 'home/created_event_test', to: 'home#created_event_test'
get 'home/events_test', to: 'home#events_test'
get 'home/update_event_test', to: 'home#update_event_test'
get 'create_event', to: 'events#new' get 'create_event', to: 'events#new'
post 'create_event/send', to: 'events#generate_event' post 'create_event/send', to: 'events#generate_event'
get 'update_event', to: 'events#edit' get 'update_event', to: 'events#edit'
......
...@@ -64,7 +64,7 @@ services: ...@@ -64,7 +64,7 @@ services:
links: links:
- db_primary - db_primary
auth: auth:
image: driftydirt/group24auth:0.0.8 image: driftydirt/group24auth:0.0.9
ports: ports:
- "3001:3000" - "3001:3000"
depends_on: depends_on:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment