2015-05-01 00:18:08 +00:00
|
|
|
.row
|
2015-09-12 06:30:10 +00:00
|
|
|
.col-xs-12.col-sm-9
|
|
|
|
.input-group
|
|
|
|
input#searchArea.big-text-field.field-responsive.form-control(type='text', placeholder='Search our links')
|
|
|
|
span.input-group-btn
|
|
|
|
button#searchbutton.btn.btn-big.btn-primary.btn-responsive(type='button') Search
|
|
|
|
.spacer
|
2015-05-01 00:18:08 +00:00
|
|
|
.col-xs-12.col-sm-3
|
|
|
|
span
|
|
|
|
a.btn.btn-primary.btn-big.btn-block.btn-responsive(href='/stories/submit' class="#{ page === 'hot' ? '' : 'hidden' }") Submit
|
|
|
|
span
|
|
|
|
a.btn.btn-success.btn-big.btn-block.btn-responsive(href='/news/' class="#{ (page !== 'hot') ? '' : 'hidden' }") All
|
2015-05-23 23:48:55 +00:00
|
|
|
.visible-xs
|
|
|
|
.button-spacer
|
|
|
|
|
2015-04-29 05:29:59 +00:00
|
|
|
#search-results
|
2015-05-02 06:05:37 +00:00
|
|
|
|
2015-04-29 05:29:59 +00:00
|
|
|
.spacer
|
|
|
|
#story-list
|
|
|
|
ul#stories
|
|
|
|
script.
|
|
|
|
$('#searchArea').keypress(function (event) {
|
|
|
|
if (event.keyCode === 13 || event.which === 13) {
|
|
|
|
executeSearch();
|
|
|
|
$('#searchArea').focus();
|
|
|
|
event.preventDefault();
|
|
|
|
}
|
|
|
|
});
|
|
|
|
$('#searchbutton').on('click', function () {
|
|
|
|
executeSearch();
|
|
|
|
});
|
|
|
|
function executeSearch() {
|
|
|
|
$('#stories').empty();
|
2015-11-01 12:58:28 +00:00
|
|
|
var searchTerm = $('#searchArea').val(),
|
|
|
|
url = '/stories/search';
|
|
|
|
if (searchTerm.match(/^\@\w+$/)) {
|
|
|
|
url = '/news/userstories';
|
|
|
|
searchTerm = searchTerm.match(/^\@\w+$/)[0].split('@')[1];
|
|
|
|
}
|
2015-04-29 05:29:59 +00:00
|
|
|
var getLinkedName = function getLinkedName(name) {
|
|
|
|
return name.toLowerCase().replace(/\s/g, '-');
|
|
|
|
}
|
2015-11-01 12:58:28 +00:00
|
|
|
$.post(url, { search: searchTerm })
|
2015-11-04 08:14:41 +00:00
|
|
|
.fail(function(xhr, textStatus, errorThrown) {
|
2015-05-02 06:05:37 +00:00
|
|
|
$('#search-results').empty();
|
|
|
|
var div = document.createElement("div");
|
2015-09-15 18:32:51 +00:00
|
|
|
$(div).html("<h3 class='text-center text-warning dotted-underline'><em>No Results Found</em></h3>");
|
2015-05-02 06:05:37 +00:00
|
|
|
$(div).appendTo($('#search-results'));
|
2015-04-29 05:29:59 +00:00
|
|
|
})
|
2015-11-04 08:14:41 +00:00
|
|
|
.done(function(data, textStatus, xhr) {
|
2015-05-02 06:05:37 +00:00
|
|
|
$('#search-results').empty();
|
2015-09-29 03:48:56 +00:00
|
|
|
var spacer = document.createElement('div');
|
|
|
|
$(spacer).html("<div class='spacer'></div>");
|
|
|
|
$(spacer).appendTo($('#search-results'));
|
2015-04-29 05:29:59 +00:00
|
|
|
for (var i = 0; i < data.length; i++) {
|
|
|
|
var div = document.createElement('div');
|
|
|
|
var linkedName = getLinkedName(data[i].storyLink);
|
|
|
|
var rank = data[i].rank;
|
|
|
|
$(div).html(
|
2015-05-02 06:05:37 +00:00
|
|
|
"<div class='visible-xs row'>" +
|
|
|
|
"<div class='visible-xs col-sm-1 col-md-1'>" +
|
|
|
|
"<a href='" + data[i].link + "'>" +
|
|
|
|
"<img class='mobile-story-image img-responsive' src='" + (!!data[i].image ? data[i].image : data[i].author.picture) + "'/>" +
|
|
|
|
"</a>" +
|
|
|
|
"</div>" +
|
2015-05-03 00:08:07 +00:00
|
|
|
"<div class='col-xs-12 mobile-story-headline text-center'>" +
|
|
|
|
"<a href='" + data[i].link + "' target='_blank'>" +
|
|
|
|
data[i].headline +
|
|
|
|
"</a>" +
|
|
|
|
"</div>" +
|
2015-05-02 06:05:37 +00:00
|
|
|
"<div class='visible-xs'>" +
|
|
|
|
"<div class='col-xs-12 text-center'>" +
|
|
|
|
rank + (rank > 1 ? " points" : " point") + " · posted " +
|
|
|
|
moment(data[i].timePosted).fromNow() +
|
|
|
|
" by " +
|
|
|
|
"<a href='/" + data[i].author.username + "'>@" + data[i].author.username +
|
|
|
|
"</a> " +
|
|
|
|
"</div>" +
|
|
|
|
"<div class='col-xs-12'>" +
|
|
|
|
"<br>" +
|
2015-09-09 20:38:18 +00:00
|
|
|
"<a class='btn btn-no-shadow btn-primary btn-block btn-primary-ghost' href='/news/" + linkedName + "'>more info</a>" +
|
2015-05-02 06:05:37 +00:00
|
|
|
"</div>" +
|
2015-04-29 05:29:59 +00:00
|
|
|
"</div>" +
|
2015-05-02 06:05:37 +00:00
|
|
|
"</div>" +
|
|
|
|
"<div class='hidden-xs row media-stories'>" +
|
|
|
|
"<div class='media'>" +
|
|
|
|
"<div class='media-left'>" +
|
2015-07-10 23:12:17 +00:00
|
|
|
"<a href='/" + data[i].author.username + "'>" +
|
2015-05-02 06:05:37 +00:00
|
|
|
"<img class='img-news' src='" + data[i].author.picture + "'/>" +
|
|
|
|
"</a>" +
|
2015-04-29 05:29:59 +00:00
|
|
|
"</div>" +
|
2015-05-02 06:05:37 +00:00
|
|
|
"<h2 class='media-body'>" +
|
|
|
|
"<div class='media-body-wrapper'>" +
|
|
|
|
"<div class='story-headline'>" +
|
|
|
|
"<a href='" + data[i].link + "' target='_blank'>" +
|
|
|
|
data[i].headline +
|
|
|
|
"</a>" +
|
|
|
|
"</div>" +
|
|
|
|
"<div class='story-byline col-xs-12 wrappable'>" +
|
2015-09-09 20:38:18 +00:00
|
|
|
"<a class='btn btn-no-shadow btn-primary btn-xs btn-primary-ghost' href='/news/" + linkedName + "'>more info</a> · " +
|
2015-05-02 06:05:37 +00:00
|
|
|
rank + (rank > 1 ? " points" : " point") + " · posted " +
|
|
|
|
moment(data[i].timePosted).fromNow() +
|
|
|
|
" by <a href='/" + data[i].author.username + "'>@" + data[i].author.username +
|
|
|
|
"</a> " +
|
|
|
|
"</div>" +
|
|
|
|
"</div>" +
|
|
|
|
"</h2>" +
|
2015-04-29 05:29:59 +00:00
|
|
|
"</div>" +
|
|
|
|
"</div>")
|
2015-05-02 06:05:37 +00:00
|
|
|
$(div).addClass('story-list news-box-search')
|
2015-04-29 05:29:59 +00:00
|
|
|
$(div).appendTo($('#search-results'));
|
|
|
|
}
|
2015-05-02 06:05:37 +00:00
|
|
|
var hr = document.createElement("div");
|
2015-09-29 03:48:56 +00:00
|
|
|
$(hr).html("<h3 class='text-center text-success dotted-underline'><em>End search results</em></h3>")
|
2015-05-02 06:05:37 +00:00
|
|
|
$(hr).appendTo($('#search-results'));
|
2015-04-29 05:29:59 +00:00
|
|
|
});
|
|
|
|
}
|