diff --git a/Gemfile b/Gemfile index 429864efe7196582dfead1b577427d8fdef79db4..970c5c3322fb0ec2ef9a8929ff5470355533ffb1 100644 --- a/Gemfile +++ b/Gemfile @@ -46,4 +46,7 @@ group :development, :test do end # authentication -gem 'devise' \ No newline at end of file +gem 'devise' + +#bootstrap +gem 'bootstrap-sass' diff --git a/Gemfile.lock b/Gemfile.lock index d2c29c1eb8d9489a4be83611c9ce37d5fe46c93a..8ee8420d610ce6e6eb6af41f88382f8a4b5aedcf 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -37,9 +37,15 @@ GEM thread_safe (~> 0.3, >= 0.3.4) tzinfo (~> 1.1) arel (6.0.2) + autoprefixer-rails (5.1.11) + execjs + json bcrypt (3.1.10) binding_of_caller (0.7.2) debug_inspector (>= 0.0.1) + bootstrap-sass (3.3.4.1) + autoprefixer-rails (>= 5.0.0.1) + sass (>= 3.2.19) builder (3.2.2) byebug (5.0.0) columnize (= 0.9.0) @@ -155,6 +161,7 @@ PLATFORMS ruby DEPENDENCIES + bootstrap-sass byebug coffee-rails (~> 4.1.0) devise @@ -169,6 +176,3 @@ DEPENDENCIES turbolinks uglifier (>= 1.3.0) web-console (~> 2.0) - -BUNDLED WITH - 1.10.6 diff --git a/app/assets/images/cc.png b/app/assets/images/cc.png new file mode 100644 index 0000000000000000000000000000000000000000..76b94c028f58b7ab0ed7f97afc95558519d563fc Binary files /dev/null and b/app/assets/images/cc.png differ diff --git a/app/assets/images/decrease_font.ico b/app/assets/images/decrease_font.ico new file mode 100644 index 0000000000000000000000000000000000000000..a01369e72d6ec36ae940c72aec7d67af928acbab Binary files /dev/null and b/app/assets/images/decrease_font.ico differ diff --git a/app/assets/images/increase_font.ico b/app/assets/images/increase_font.ico new file mode 100644 index 0000000000000000000000000000000000000000..9f3a095eb251ccb0758e95c4ea3f0684b8d56137 Binary files /dev/null and b/app/assets/images/increase_font.ico differ diff --git a/app/assets/images/iros.jpg b/app/assets/images/iros.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8d5571b1f0de7f30042b6517116570b92128220a Binary files /dev/null and b/app/assets/images/iros.jpg differ diff --git a/app/assets/images/logo.png b/app/assets/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..31c417df12a32253c11bc8ef25e09d7339d90b89 Binary files /dev/null and b/app/assets/images/logo.png differ diff --git a/app/assets/images/mecshow_logo.jpg b/app/assets/images/mecshow_logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b4af0a4138b46e7deec26d416e5f78903c2d2ebc Binary files /dev/null and b/app/assets/images/mecshow_logo.jpg differ diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index 6ad9c5a392f2fe1e39454cf7685d7b181cf1579b..01fc119965551f84aeadd7cd8de38e5d34c62e34 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -13,4 +13,25 @@ //= require jquery //= require jquery_ujs //= require turbolinks +//= require bootstrap-sprockets //= require_tree ./application + +function resizeText(increment) { + if (document.body.style.fontSize == "") { + document.body.style.fontSize = "15px"; + } + size = parseFloat(document.body.style.fontSize) + console.log(size) + if (increment > 0) { + if (size < 25) { + document.body.style.fontSize = parseFloat(document.body.style.fontSize) + increment + "px"; + $('h1').each(function(index,value){ + $(this).css('fontSize', $(this).css('fontSize') + increment + 'px'); + }); + } + } else { + if (size > 10) { + document.body.style.fontSize = parseFloat(document.body.style.fontSize) + increment + "px"; + } + } +} diff --git a/app/assets/stylesheets/application.css b/app/assets/stylesheets/application.css deleted file mode 100644 index 3df027e793ca7630134bf99b811177204681998b..0000000000000000000000000000000000000000 --- a/app/assets/stylesheets/application.css +++ /dev/null @@ -1,15 +0,0 @@ -/* - * This is a manifest file that'll be compiled into application.css, which will include all the files - * listed below. - * - * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets, - * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path. - * - * You're free to add application-wide styles to this file and they'll appear at the bottom of the - * compiled file so the styles you add here take precedence over styles defined in any styles - * defined in the other CSS/SCSS files in this directory. It is generally better to create a new - * file per style scope. - * - *= require_tree ./application - *= require_self - */ diff --git a/app/assets/stylesheets/application.css.scss b/app/assets/stylesheets/application.css.scss new file mode 100644 index 0000000000000000000000000000000000000000..b5832e77fab6e70d77020a83dba6d29fc1caa46a --- /dev/null +++ b/app/assets/stylesheets/application.css.scss @@ -0,0 +1,268 @@ +/* + * This is a manifest file that'll be compiled into application.css, which will include all the files + * listed below. + * + * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets, + * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path. + * + * You're free to add application-wide styles to this file and they'll appear at the bottom of the + * compiled file so the styles you add here take precedence over styles defined in any styles + * defined in the other CSS/SCSS files in this directory. It is generally better to create a new + * file per style scope. + * + *= require_tree ./application + *= require_self + */ +@import "bootstrap-sprockets"; +@import "bootstrap"; + +html, +body { + margin:0; + padding:0; + height:100%; +} +#container { + min-height:100%; + position:relative; +} +#body { + padding:10px; + padding-bottom:60px; /* Height of the footer */ +} +#footer { + position:absolute; + bottom:0; + width:100%; + height:60px; /* Height of the footer */ +} + + +$color_low: #000000; + +.navbar{ + margin-bottom: 0px; +} + + +header{ + .searchbar{ + color: #FFF; + background-image: linear-gradient(to bottom, #256e46, #457f3c); + padding: 8px; + padding-bottom: 32px; + margin: 0px; + a{ + margin: 0px; + color: #FFF; + } + h1{ + font-size: 24px; + margin-bottom: 24px; + } + h2{ + font-size: 20px; + text-align: right; + } + form{ + margin: 0px; + } + } + + border: 0; + border-bottom: 1px; + border-style: solid; + border-color: #cececd; + margin-bottom: 16px; +} + +footer{ + position:relative; + bottom:0; + width:100%; + margin-top: 16px; + border-width: 0px; + color: #FFF; + + .main{ + background-color: #313131; + height: 256px; + padding: 16px; + } + + .footerbar{ + padding: 16px; + background-color: #080808; + } +} + +aside{ +} + + +.main{ + +} + + + +.sectiontitle{ + font-size: 32px; + border: 0px; + border-top: 6px; + border-color: #3b7846; + border-style: solid; + background-color: $color_low; + + color: #3b7846; + margin-bottom: 16px; +} + +.itemhorz { + margin-top: 16px; + h1{ + font-size: 24px; + } +} + +.itemvert{ + padding: 0px; + margin: 0px; + h1{ + text-align: center; + font-size: 24px; + margin: 0px; + } + margin-bottom: 16px; +} + +.item-img{ + background-color: $color_low; +} + + +$carousel_size: 400px; + +.carousel { + height: $carousel_size; + margin-bottom: 60px; + h1{ + background-color: rgba(37, 68, 32, 0.75); + } + #carrousel-new-description{ + background-color: rgba(2, 8, 3, 0.75); + } +} + + +.carousel-caption { + z-index: 10; +} + +.carousel .item { + height: $carousel_size; + background-color: #777; +} +.carousel-inner > .item > img { + position: absolute; + top: 0; + left: 0; + min-width: 100%; + height: $carousel_size; +} + +a { + color: #529652; + text-decoration: none; +} +a:hover, +a:focus { + color: #3A6C3A; + text-decoration: underline; +} + +.btn-primary { + color: #fff; + background-color: #63A063; + border-color: #3A6C3A; +} +.btn-primary:hover, +.btn-primary:focus, +.btn-primary.focus, +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #fff; + background-color: #3A6C3A; + border-color: #003300; +} + +.navbar { + position: relative; + min-height: 15px; + margin-bottom: 0px; + border: 1px solid transparent; +} + +.navbar-brand { + float: left; + height: 15px; + padding: 15px 15px; + font-size: 18px; + line-height: 3px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 10px; +} +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + } +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + margin-left: -1px; + line-height: 1.42857143; + color: #529652; + text-decoration: none; + background-color: #fff; + border: 1px solid #ddd; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + color: #3A6C3A; + background-color: #eee; + border-color: #ddd; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #3A6C3A; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0.5); + border: 1px solid #555; + border-radius: 10px; +} diff --git a/app/assets/stylesheets/application/welcome.scss b/app/assets/stylesheets/application/welcome.scss index 77ce11a74077ed3f9dd427b3603461ec72d5f99d..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 --- a/app/assets/stylesheets/application/welcome.scss +++ b/app/assets/stylesheets/application/welcome.scss @@ -1,3 +0,0 @@ -// Place all the styles related to the welcome controller here. -// They will automatically be included in application.css. -// You can use Sass (SCSS) here: http://sass-lang.com/ diff --git a/app/controllers/welcome_controller.rb b/app/controllers/welcome_controller.rb index f9b859b9c99680a5e715b5d7bd802b09a75a1fc8..733bdc53fb22421b6b102f10888ffb2e0f8e7441 100644 --- a/app/controllers/welcome_controller.rb +++ b/app/controllers/welcome_controller.rb @@ -1,4 +1,10 @@ class WelcomeController < ApplicationController def index end + + def faq + end + + def contact + end end diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index bec48a69c182df6651d1e0384583cec651380022..fb22a796d8da7bb3c796042570b9419876de4ebd 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -6,9 +6,13 @@ <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %> <%= csrf_meta_tags %> </head> -<body> - -<%= yield %> - +<body > + <div id="container"> + <%= render 'shared/application/header' %> + <div id='body'> + <%= yield %> + </div> + <%= render 'shared/application/footer' %> + </div> </body> </html> diff --git a/app/views/shared/application/_footer.html.erb b/app/views/shared/application/_footer.html.erb new file mode 100644 index 0000000000000000000000000000000000000000..7ae0d3317b239e8f0bfaea7c82f2c3b8b25545d9 --- /dev/null +++ b/app/views/shared/application/_footer.html.erb @@ -0,0 +1,72 @@ +<footer id="footer"> + <div class="main"><div class="container"> + <div class="col-md-3"> + <%= image_tag 'logo.png', height: '120' %> + </div> + <div class="col-md-3"> + opa + </div> + <div class="col-md-3"> + opa + </div> + <div class="col-md-3"> + opa + </div> + </div></div> + <div class="footerbar"><div class="container"> + <%= image_tag 'cc.png' %> + Creative Commons Attribution 4.0 International Licence + </div></div> + </footer> + + + + + + + + <script src="js/jquery.min.js"></script> + <script src="js/bootstrap.min.js"></script> + <script src="js/typeahead.js"></script> + <!-- IE10 viewport hack for Surface/desktop Windows 8 bug + <script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>--> + + + + <script> + var substringMatcher = function(strs) { + return function findMatches(q, cb) { + var matches, substringRegex; + matches = []; + substrRegex = new RegExp(q, 'i'); + $.each(strs, function(i, str) { + if (substrRegex.test(str)) { + matches.push(str); + } + }); + cb(matches); + }; + }; + + var states = ['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', + 'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia', 'Hawaii', + 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', + 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', + 'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire', + 'New Jersey', 'New Mexico', 'New York', 'North Carolina', 'North Dakota', + 'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode Island', + 'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', + 'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming' + ]; + + $('#typeahead #input').typeahead({ + hint: true, + highlight: true, + minLength: 1 + },{ + name: 'states', + source: substringMatcher(states), + templates: { + } + }); + </script> diff --git a/app/views/shared/application/_header.html.erb b/app/views/shared/application/_header.html.erb new file mode 100644 index 0000000000000000000000000000000000000000..5fc76bd8899e70aca002eab6ee0906c732a87f0b --- /dev/null +++ b/app/views/shared/application/_header.html.erb @@ -0,0 +1,100 @@ +<header> + <nav class="navbar navbar-default"> + <div class="container"> + <!-- Brand and toggle get grouped for better mobile display --> + <div class="navbar-header"> + <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"> + <span class="sr-only">Toggle navigation</span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + </button> + <%= link_to 'Brasil', root_path, class: 'navbar-brand' %> + </div> + + <!-- Collect the nav links, forms, and other content for toggling --> + <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> + <ul class="nav navbar-nav navbar-right"> + <li><%= link_to 'FAQ', faq_path %></li> + <li><%= link_to 'Contato', contact_path %></li> + <li><%= link_to 'Denúncia', complaint_path %></li> + </ul> + </div><!-- /.navbar-collapse --> + </div><!-- /.container-fluid --> + </nav> + <div class="searchbar"> + <div class="container"> + <div class="row"> + <h1 class="col-xs-3"> + <%= link_to do%> + Conteúdo<br>Educacional + <% end %> + </h1> + <h2 class="col-xs-4 col-xs-offset-5"> + <%= image_tag 'increase_font.ico', onclick: 'resizeText(1)' %> + <%= image_tag 'decrease_font.ico', onclick: 'resizeText(-1)' %> + <%= link_to 'Login' %> | <%= link_to 'Cadastro' %> + </h2> + </div> + <div class="row"> + <div class="col-md-8 col-md-offset-2"> + + <form> + <div class="input-group"> + <input type="text" class="form-control"> + <div class="input-group-btn"> + <button class="btn btn-default" type="submit"><i class="glyphicon glyphicon-search"></i></button> + </div> + </div> + </form> + <%= link_to 'Busca avançada', '#', class: 'pull-right' %> + </div> + </div> + </div> +</div> + + + <div class="container"><div class="row"> + <ul class="nav navbar-nav"> + <li><%= link_to 'Principal' %></li> + <li><%= link_to 'Assunto' %></li> + <li class="dropdown mega-menu-fullwidth"> + <a class="dropdown-toggle" data-toggle="dropdown" href="javascript:void(0);">NÃveis</a> + <ul class="dropdown-menu"> + <li> + <div class="mega-menu-content disable-icons"> + <div class="container"> + <div class="row equal-height"> + <div class="col-md-3 equal-height-in"> + <ul class="list-unstyled equal-height-list"> + <li><h3>Ensino Básico</h3></li> + <li><a href="">1º Ano</a></li> + <li><a href="">2º Ano</a></li> + <li><a href="">3º Ano</a></li> + <li><a href="">4º Ano</a></li> + <li><a href="">5º Ano</a></li> + <li><a href="">6º Ano</a></li> + <li><a href="">7º Ano</a></li> + <li><a href="">8º Ano</a></li> + <li><a href="">9º Ano</a></li> + </ul> + </div> + <div class="col-md-3 equal-height-in"> + <ul class="list-unstyled equal-height-list"> + <li><h3>Ensino Médio</h3></li> + <li><a href="">1º Ano</a></li> + <li><a href="">2º Ano</a></li> + <li><a href="">3º Ano</a></li> + </ul> + </div> + </div> + </div> + </li> + </ul> + </li> + <li><%= link_to 'Formato' %></li> + <li><%= link_to 'Contatos' %></li> + </ul> + </div></div> + +</header> diff --git a/app/views/welcome/complaint.html.erb b/app/views/welcome/complaint.html.erb new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/app/views/welcome/contact.html.erb b/app/views/welcome/contact.html.erb new file mode 100644 index 0000000000000000000000000000000000000000..f86576e1a217446e4fedc6a31b49ca733d555d69 --- /dev/null +++ b/app/views/welcome/contact.html.erb @@ -0,0 +1,5 @@ +<div align='center'> + <h3>Contate-nos em:</h3> + <br> + <h5>xxx@c3sl.ufpr.br</h5> +</div> diff --git a/app/views/welcome/faq.html.erb b/app/views/welcome/faq.html.erb new file mode 100644 index 0000000000000000000000000000000000000000..278485b276ac35fb79296567e6e4b8bc902a62cd --- /dev/null +++ b/app/views/welcome/faq.html.erb @@ -0,0 +1,9 @@ +<div align='center'> + <h1>Perguntas Mais Frequentes - FAQ</h1> + <ul> + <li> + <b>Oque é o portal do MEC?</b><br> + Resposta + </li> + </ul> +</div> diff --git a/app/views/welcome/index.html.erb b/app/views/welcome/index.html.erb index 5b2b1224f004f763d94c5c7cfd675506986159bd..1ea9973a899233f14966863f40ce516e89cc97ea 100644 --- a/app/views/welcome/index.html.erb +++ b/app/views/welcome/index.html.erb @@ -1,2 +1,101 @@ -<h1>Welcome to MEC Portal</h1> -<p>Test text</p> +<div class="main container-fluid"> + <div class="row"> + <div class="col-md-8"> + <div class="row"><div class="col-md-12"> + <div id="myCarousel" class="carousel slide" data-ride="carousel"> + <!-- Indicators --> + <ol class="carousel-indicators"> + <li data-target="#myCarousel" data-slide-to="0" class="active"></li> + <li data-target="#myCarousel" data-slide-to="1"></li> + <li data-target="#myCarousel" data-slide-to="2"></li> + <li data-target="#myCarousel" data-slide-to="3"></li> + <li data-target="#myCarousel" data-slide-to="4"></li> + <li data-target="#myCarousel" data-slide-to="5"></li> + <li data-target="#myCarousel" data-slide-to="6"></li> + </ol> + <div class="carousel-inner" role="listbox"> + <div class="item active"> + <%= image_tag 'mecshow_logo.jpg' %> + <div class="container"> + <div class="carousel-caption"> + <h1>MEC SHOW 2015.</h1> + <p id="carrousel-new-description">De 28 a 31 de Julho na cidade de Serra - ES.</p> + <p><a class="btn btn-lg btn-primary" href="http://www.mecshow.com.br/site/2015/pt/home" role="button">Veja mais</a></p> + </div> + </div> + </div> + <div class="item"> + <%= image_tag 'iros.jpg' %> + <div class="container"> + <div class="carousel-caption"> + <h1>IROS 2015.</h1> + <p id="carrousel-new-description">Evento acontece em Hamburg de 28/09/15 a 02/10/15.</p> + <p><a class="btn btn-lg btn-primary" href="http://www.iros2015.org" role="button">Mais informações</a></p> + </div> + </div> + </div> + <div class="item"> + <%= image_tag 'mecshow_logo.jpg' %> + <div class="container"> + <div class="carousel-caption"> + <h1>MEC SHOW 2015.</h1> + <p id="carrousel-new-description">De 28 a 31 de Julho na cidade de Serra - ES.</p> + <p><a class="btn btn-lg btn-primary" href="http://www.mecshow.com.br/site/2015/pt/home" role="button">Veja mais</a></p> + </div> + </div> + </div> + <div class="item"> + <%= image_tag 'mecshow_logo.jpg' %> + <div class="container"> + <div class="carousel-caption"> + <h1>MEC SHOW 2015.</h1> + <p id="carrousel-new-description">De 28 a 31 de Julho na cidade de Serra - ES.</p> + <p><a class="btn btn-lg btn-primary" href="http://www.mecshow.com.br/site/2015/pt/home" role="button">Veja mais</a></p> + </div> + </div> + </div> + <div class="item"> + <%= image_tag 'mecshow_logo.jpg' %> + <div class="container"> + <div class="carousel-caption"> + <h1>MEC SHOW 2015.</h1> + <p id="carrousel-new-description">De 28 a 31 de Julho na cidade de Serra - ES.</p> + <p><a class="btn btn-lg btn-primary" href="http://www.mecshow.com.br/site/2015/pt/home" role="button">Veja mais</a></p> + </div> + </div> + </div> + <div class="item"> + <%= image_tag 'mecshow_logo.jpg' %> + <div class="container"> + <div class="carousel-caption"> + <h1>MEC SHOW 2015.</h1> + <p id="carrousel-new-description">De 28 a 31 de Julho na cidade de Serra - ES.</p> + <p><a class="btn btn-lg btn-primary" href="http://www.mecshow.com.br/site/2015/pt/home" role="button">Veja mais</a></p> + </div> + </div> + </div> + <div class="item"> + <%= image_tag 'mecshow_logo.jpg' %> + <div class="container"> + <div class="carousel-caption"> + <h1>MEC SHOW 2015.</h1> + <p id="carrousel-new-description">De 28 a 31 de Julho na cidade de Serra - ES.</p> + <p><a class="btn btn-lg btn-primary" href="http://www.mecshow.com.br/site/2015/pt/home" role="button">Veja mais</a></p> + </div> + </div> + </div> + </div> + <a class="left carousel-control" href="#myCarousel" role="button" data-slide="prev"> + <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span> + <span class="sr-only">Previous</span> + </a> + <a class="right carousel-control" href="#myCarousel" role="button" data-slide="next"> + <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span> + <span class="sr-only">Next</span> + </a> + </div> + </div> + </div> + </div> + </div> +</div> diff --git a/config/routes.rb b/config/routes.rb index b82c9b786d23c31772d4c7886c0efd706a29e87f..63b8b05672dbb97ba47250c8e7006850b5d83053 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -6,7 +6,9 @@ Rails.application.routes.draw do end root 'welcome#index' - + get '/faq' => 'welcome#faq' + get '/contato' => 'welcome#contact', as: 'contact' + get '/denuncia' => 'welcome#complaint', as: 'complaint' # The priority is based upon order of creation: first created -> highest priority. # See how all your routes lay out with "rake routes".