Add:
static/js/index.js
-Move `div#title` to the corner of the page when the search bar is
`.partly-visible` (ie, results are displayed).
templates/index.html, static/(sass/index.sass, img/*.png)
-Replace the advanced-search button with a magnifying glass icon.
tags/v1.0^2
| @@ -7,13 +7,17 @@ var advancedSearchDiv = $("div#advanced-search"); | |||
| var advancedSearchButton = $("button#advanced-search"); | |||
| advancedSearchDiv.hide(); | |||
| advancedSearchButton.click(function(){ | |||
| var searchField = $("div#search-field"); | |||
| if(!advancedSearchDiv.hasClass("visible")){ | |||
| advancedSearchDiv.fadeIn(500); | |||
| advancedSearchDiv.addClass("visible"); | |||
| searchField.addClass("partly-visible"); | |||
| advancedSearchDiv.fadeIn(500).addClass("visible"); | |||
| advancedSearchButton.addClass("clicked"); | |||
| } | |||
| else { | |||
| advancedSearchDiv.fadeOut(300); | |||
| advancedSearchDiv.removeClass("visible"); | |||
| advancedSearchDiv.fadeOut(300).removeClass("visible"); | |||
| advancedSearchButton.removeClass("clicked"); | |||
| if($("div#results .result").length == 0) | |||
| searchField.removeClass("partly-visible"); | |||
| } | |||
| }); | |||
| @@ -38,7 +42,7 @@ $("#languages.typeahead").typeahead({ | |||
| }, | |||
| { | |||
| name: "languages", | |||
| displayKey: 'value', | |||
| displayKey: "value", | |||
| source: languages.ttAdapter() | |||
| }); | |||
| @@ -94,13 +98,14 @@ function finishedTyping(){ | |||
| clearResults(); | |||
| if(searchBar.value){ | |||
| if(!searchField.hasClass("partly-visible")) | |||
| searchField.addClass("partly-visible"); | |||
| searchField.addClass("partly-visible"); | |||
| populateResults(); | |||
| } | |||
| else | |||
| else { | |||
| searchField.removeClass("partly-visible"); | |||
| $("div#advanced-search").fadeOut(50); | |||
| advancedSearchButton.removeClass("clicked"); | |||
| } | |||
| } | |||
| /* | |||
| @@ -145,7 +150,7 @@ function queryServer(){ | |||
| newDiv.style.textAlign = "center"; | |||
| newDiv.style.color = "#" + Math.floor(Math.random() * | |||
| 16777215).toString(16); | |||
| resultDivs.push(newDiv) | |||
| resultDivs.push(newDiv); | |||
| } | |||
| return resultDivs; | |||
| @@ -164,6 +169,7 @@ function loadMoreResults(){ | |||
| return function(){ | |||
| divReference.classList.add("cascade"); | |||
| }; | |||
| }(newDiv)), result * 20); | |||
| }(newDiv)), | |||
| result * 20); | |||
| } | |||
| } | |||
| @@ -46,14 +46,14 @@ div#search-field | |||
| margin: auto | |||
| margin-top: 15% | |||
| max-height: 100px | |||
| position: absolute | |||
| right: 0 | |||
| position: absolute | |||
| top: 0 | |||
| width: 34% | |||
| width: 40% | |||
| #title | |||
| font-size: 400% | |||
| padding-bottom: 0.5em | |||
| padding-bottom: 0.2em | |||
| text-align: center | |||
| #title-bit | |||
| @@ -67,7 +67,6 @@ div#search-field | |||
| font-style: italic | |||
| form#search-bar | |||
| input[type="text"], button | |||
| @extend .t3 | |||
| @include vendor(box-sizing, border-box) | |||
| @@ -76,24 +75,36 @@ div#search-field | |||
| font-size: 110% | |||
| margin-bottom: 0px | |||
| padding: 6px | |||
| width: 80% | |||
| input[type="text"] | |||
| width: 85% | |||
| &:hover | |||
| border-color: $baseColor1 | |||
| button | |||
| background-color: $lightBlue | |||
| border: 1px solid $baseColor2 | |||
| color: white | |||
| display: inline | |||
| white-space: nowrap | |||
| overflow: hidden | |||
| width: 20% | |||
| background-color: white | |||
| border: 1px solid white | |||
| width: 15% | |||
| height: 10% | |||
| padding: 0px | |||
| float: right | |||
| &.clicked, &:hover | |||
| @extend .t3 | |||
| img | |||
| @extend .t3 | |||
| background-color: black | |||
| cursor: pointer | |||
| &:focus | |||
| outline: 0 | |||
| background-color: $blue | |||
| img | |||
| background-color: $baseColor2 | |||
| margin-top: 5px | |||
| width: 26px | |||
| height: 26px | |||
| div#advanced-search | |||
| background-color: white | |||
| @@ -121,24 +132,27 @@ div#search-field | |||
| li | |||
| margin-bottom: 0.5em | |||
| &:hover, &:focus | |||
| input[type="text"] | |||
| border-color: $baseColor1 | |||
| label | |||
| @extend .t3 | |||
| color: black | |||
| label | |||
| display: block | |||
| font-size: 110% | |||
| color: #747575 | |||
| input[type="text"] | |||
| @extend .t2 | |||
| @extend .t3 | |||
| border-color: $baseColor3 | |||
| font-size: 100% | |||
| padding: 4px | |||
| width: 100% | |||
| &:hover | |||
| border-color: $baseColor2 | |||
| &:focus | |||
| border-color: $baseColor1 | |||
| #upper-half | |||
| >div | |||
| float: left | |||
| @@ -148,15 +162,31 @@ div#search-field | |||
| input[type="text"] | |||
| width: 50% | |||
| #lower-half | |||
| padding-bottom: 20px | |||
| &.partly-visible | |||
| height: 1% | |||
| margin-top: 3% | |||
| width: 60% | |||
| margin-top: 0% | |||
| padding-bottom: 3% | |||
| position: absolute | |||
| width: 100% | |||
| #title | |||
| display: none | |||
| position: absolute | |||
| top: -1% | |||
| left: 1% | |||
| span | |||
| font-size: 50% | |||
| form#search-bar | |||
| padding-top: 3% | |||
| margin-left: auto | |||
| margin-right: auto | |||
| width: 60% | |||
| div#results | |||
| margin: 3% auto 0 auto | |||
| margin-left: auto | |||
| margin-right: auto | |||
| width: 80% | |||
| @@ -27,7 +27,9 @@ | |||
| <form id="search-bar"> | |||
| <input type="text" name="query" | |||
| ><button id="advanced-search">Advanced search</button> | |||
| ><button id="advanced-search" title="advanced search"> | |||
| <img src="static/img/search_bar_magnifying_glass.png"> | |||
| </button> | |||
| <div id="advanced-search"> | |||
| <!-- Tags are closed on the following line to remove whitespace between divs. --> | |||