Browse Source

switch to using fetch instead of jquery

master
wes 8 years ago
parent
commit
0cd122660d
  1. 72
      src/scripts/search.tag
  2. 5
      src/templates/search.html

72
src/scripts/search.tag

@ -1,18 +1,9 @@
<search> <search>
<form class="form-horizontal search-form" onsubmit={ submit } type="submit"method="get"> <form class="form-horizontal search-form" onsubmit={ submit } type="submit" method="get">
<div class="form-group"> <div class="form-group">
<div class="container"> <div class="container">
<div class="columns">
<div if={ false }
class="help-toast toast toast-primary">
<button onclick={ clearhelp }
class="btn btn-clear float-right">
</button>
Type keywords of your course's name or the course code (e.g. PSYCH 2B03)
</div>
</div>
<div class="columns"> <div class="columns">
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12"> <div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<input onfocus={ showhelp } <input onfocus={ showhelp }
class="form-input search" class="form-input search"
@ -21,26 +12,29 @@
name="title"> name="title">
</input> </input>
</div> </div>
</div> </div>
<div class="columns"> <div class="columns">
<div class="col-sm-6 col-md-6 col-lg-6"> <div class="col-sm-6 col-md-6 col-lg-6">
<select class="semester form-select float-right" aria-labelledby="dLabel" name="sem"> <select class="semester form-select float-right" aria-labelledby="dLabel" name="sem">
<option value="Fall" selected>Fall</option> <option value="Fall" selected>Fall</option>
<option value="Winter">Winter</option> <option value="Winter">Winter</option>
<option value="Spring/Summer">Spring/Summer</option> <option value="Spring/Summer">Spring/Summer</option>
</select> </select>
</div> </div>
<div class="col-sm-6 col-md-6 col-lg-6"> <div class="col-sm-6 col-md-6 col-lg-6">
<button
class="search-btn btn btn-primary float-left tooltip tooltip-bottom" <button
data-tooltip="Search by keywords" class="search-btn btn btn-primary float-left tooltip tooltip-bottom"
type="submit"> data-tooltip="Search by keywords"
type="submit">
Search Search
</button> </button>
</div>
</div> </div>
</div> </div>
</div>
</div> </div>
</form> </form>
@ -48,6 +42,7 @@
</div> </div>
<script> <script>
var self = this;
this.showedHelp = false; this.showedHelp = false;
this.waiting = false; this.waiting = false;
@ -85,15 +80,20 @@ submit(ev) {
this.opts.booksLoading = true; this.opts.booksLoading = true;
this.update(); this.update();
results_passer.trigger("loading"); results_passer.trigger("loading");
var params = $(ev.currentTarget).serialize(); console.log(ev);
$.getJSON("/search/fc?"+params, fetch("/search/fc?title="+this.title.value+"&sem="+this.sem.value).then(
(function(courses) { function(response) {
var fcourses = filterCourses(courses); if (response.ok) {
var cgroups = groupsof(3, fcourses); response.json().then(
results_passer.trigger("new_results", cgroups); function(courses) {
this.opts.booksLoading = false; var fcourses = filterCourses(courses);
this.update(); var cgroups = groupsof(3, fcourses);
}).bind(this)); results_passer.trigger("new_results", cgroups);
self.opts.booksLoading = false;
self.update();
});
}
});
} }
</script> </script>

5
src/templates/search.html

@ -33,12 +33,9 @@
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/riot/2.6.7/riot+compiler.min.js"></script> <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/riot/2.6.7/riot+compiler.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/ramda/0.22.1/ramda.min.js"></script> <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/ramda/0.22.1/ramda.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/fetch/2.0.2/fetch.min.js"></script>
<script type="text/javascript" src="/scripts/tags.min.js"></script> <script type="text/javascript" src="/scripts/tags.min.js"></script>
<script type="text/javascript" src="/scripts/search.min.js"></script> <script type="text/javascript" src="/scripts/search.min.js"></script>
<script src="https://code.jquery.com/jquery-2.2.4.min.js"
integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44="
crossorigin="anonymous">
</script>
</body> </body>
</html> </html>

Loading…
Cancel
Save