Merged branch master into master

This commit is contained in:
Okechi Onyeje 2017-05-16 07:42:43 -04:00
commit 224e224886
9 changed files with 82 additions and 12 deletions

View File

@ -16,4 +16,5 @@
//= require bootstrap/bootstrap-rails-tooltip //= require bootstrap/bootstrap-rails-tooltip
//= require bootstrap/bootstrap-rails-popover //= require bootstrap/bootstrap-rails-popover
//= require Chart //= require Chart
//= require grades
//= require jquery-ui //= require jquery-ui

View File

@ -1,3 +0,0 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://coffeescript.org/

View File

@ -0,0 +1,64 @@
$().ready(function(){
console.log("Ready")
document.getElementById('grade-form').onsubmit = function(){
var form_elements = getGradeFormElements()
if(elementsAreEmpty(form_elements)){
alert("There is an empty field")
return false
}
if(!shortNameIsValid(form_elements.Short_name)){
alert("Short name must only contain alphanumeric characters and be <= 5 characters")
return false
}
if(!measurementsAreNumbers(form_elements)){
alert("An entered width,height,or length is not valid.(must be of form 1,1.1,0.1)")
return false
}
return true
}
})
function getGradeFormElements(){
var form = document.getElementById('grade-form')
return {
Full_name: form["grade[Full_name]"].value,
Short_name: form["grade[Short_name]"].value,
Width_max: form["grade[Width_max]"].value,
Width_min: form["grade[Width_min]"].value,
Height_max: form["grade[Height_max]"].value,
Height_min: form["grade[Height_min]"].value,
Length_max: form["grade[Length_max]"].value,
Length_min: form["grade[Length_min]"].value
}
}
function elementsAreEmpty(elements){
for(key in elements){
if(elements[key] == ""){
return true
}
}
return false
}
function shortNameIsValid(shortName){
var shortNameRegexp = new RegExp(/[a-zA-Z0-9]{1,5}/)
if(shortName.match(shortNameRegexp) == null || shortName.length > 5){
return false
}
return true
}
function measurementsAreNumbers(elements){
var regexp = new RegExp(/[0-9]+(\.[0-9]+){0,1}/)
if(elements.Height_max.match(regexp) == null || elements.Height_min.match(regexp) == null){
return false
}
if(elements.Width_max.match(regexp) == null || elements.Width_min.match(regexp) == null){
return false
}
if(elements.Length_max.match(regexp) == null || elements.Length_min.match(regexp) == null){
return false
}
return true
}

View File

@ -14,7 +14,8 @@ class GradesController < ApplicationController
end end
def create def create
Grade.create(grades_params) grade = Grade.new(grades_params)
grade.save
redirect_to '/grades' redirect_to '/grades'
end end

View File

@ -1,3 +1,10 @@
class Grade < ApplicationRecord class Grade < ApplicationRecord
self.primary_key = 'Short_name' self.primary_key = 'Short_name'
def initialize(params)
super
self.Volume_max = (self.Height_max.to_f + self.Width_max.to_f + self.Length_max.to_f).to_s
self.Volume_min = (self.Height_min.to_f + self.Width_min.to_f + self.Length_min.to_f).to_s
end
end end

View File

@ -10,7 +10,7 @@
<span class="icon-bar"></span> <span class="icon-bar"></span>
<span class="icon-bar"></span> <span class="icon-bar"></span>
</button> </button>
<a class="navbar-brand" href="/">Pearlception</a> <a class="navbar-brand" href="/pearlception">Pearlception</a>
</div> </div>
<div id="navbar" class="navbar-collapse collapse"> <div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav navbar-right"> <ul class="nav navbar-nav navbar-right">
@ -35,7 +35,7 @@
<div class="row"> <div class="row">
<div class="col-sm-3 col-md-2 sidebar"> <div class="col-sm-3 col-md-2 sidebar">
<ul class="nav nav-sidebar"> <ul class="nav nav-sidebar">
<li class="active"><a href="/">Overview <span class="sr-only">(current)</span></a></li> <li class="active"><a href="/pearlception">Overview <span class="sr-only">(current)</span></a></li>
<!-- This will be removed and placed with correct logic in corresponding controller --> <!-- This will be removed and placed with correct logic in corresponding controller -->
<% if current_user.admin? %> <% if current_user.admin? %>
<li><a href="companies#index">Companies</a></li> <li><a href="companies#index">Companies</a></li>

View File

@ -10,7 +10,7 @@
<span class="icon-bar"></span> <span class="icon-bar"></span>
<span class="icon-bar"></span> <span class="icon-bar"></span>
</button> </button>
<a class="navbar-brand" href="/">Pearlception</a> <a class="navbar-brand" href="/pearlception">Pearlception</a>
</div> </div>
<div id="navbar" class="navbar-collapse collapse"> <div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav navbar-right"> <ul class="nav navbar-nav navbar-right">
@ -35,7 +35,7 @@
<div class="row"> <div class="row">
<div class="col-sm-3 col-md-2 sidebar"> <div class="col-sm-3 col-md-2 sidebar">
<ul class="nav nav-sidebar"> <ul class="nav nav-sidebar">
<li><a href="/">Overview</a></li> <li><a href="/pearlception">Overview</a></li>
<!-- This will be removed and placed with correct logic in corresponding controller --> <!-- This will be removed and placed with correct logic in corresponding controller -->
<% if current_user.admin? %> <% if current_user.admin? %>
<li><a href="companies#index">Companies</a></li> <li><a href="companies#index">Companies</a></li>

View File

@ -62,14 +62,14 @@
<!--Form for new grade here--> <!--Form for new grade here-->
<div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main"> <div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main">
<form action="/grades" method="POST"> <form action="/grades" id="grade-form" method="POST">
<%=csrf_meta_tag%> <%=csrf_meta_tag%>
<div class="form-group"> <div class="form-group">
<label>Full Name</label> <label>Full Name</label>
<input type="text" class="form-control" placeholder="Full name of grade" name="grade[Full_name]"> <input type="text" class="form-control" placeholder="Full name of grade" name="grade[Full_name]">
</div> </div>
<div class="form-group"> <div class="form-group">
<label>Short Name(10 characters max)</label> <label>Short Name(5 characters max)</label>
<input type="text" class="form-control" placeholder="Short name of grade" name="grade[Short_name]"> <input type="text" class="form-control" placeholder="Short name of grade" name="grade[Short_name]">
</div> </div>
<div class="row"> <div class="row">

View File

@ -10,7 +10,7 @@
<span class="icon-bar"></span> <span class="icon-bar"></span>
<span class="icon-bar"></span> <span class="icon-bar"></span>
</button> </button>
<a class="navbar-brand" href="/">Pearlception</a> <a class="navbar-brand" href="/pearlception">Pearlception</a>
</div> </div>
<div id="navbar" class="navbar-collapse collapse"> <div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav navbar-right"> <ul class="nav navbar-nav navbar-right">
@ -35,7 +35,7 @@
<div class="row"> <div class="row">
<div class="col-sm-3 col-md-2 sidebar"> <div class="col-sm-3 col-md-2 sidebar">
<ul class="nav nav-sidebar"> <ul class="nav nav-sidebar">
<li><a href="/">Overview</a></li> <li><a href="/pearlception">Overview</a></li>
<!-- This will be removed and placed with correct logic in corresponding controller --> <!-- This will be removed and placed with correct logic in corresponding controller -->
<% if current_user.admin? %> <% if current_user.admin? %>
<li><a href="companies#index">Companies</a></li> <li><a href="companies#index">Companies</a></li>