neocities/views/browse.erb

127 lines
No EOL
4.9 KiB
Text

<script type="text/javascript">
function getPage(currentPage) {
document.location.href = '/browse?current_page='+currentPage+'&'+$('#search_criteria').serialize();
}
</script>
<div class="header-Outro with-columns browse-page">
<div class="row content">
<div class="col col-100">
<% if params[:tag] %>
<h1>Sites tagged <%= params[:tag] %></h1>
<% else %>
<h1>Sites on Neocities</h1>
<% end %>
</div>
<div class="col col-50 filter">
<form id="search_criteria" action="/browse" method="GET">
<fieldset class="grouping">
<% if params[:tag] %>
<input name="tag" type="hidden" value="<%= params[:tag] %>">
<% end %>
<label class="text-Label" for="sort_by">Sort By:</label>
<div class="select-Container">
<select name="sort_by" id="sort_by" class="input-Select">
<option value="last_updated" <%= params[:sort_by] == 'last_updated' ? 'selected' : '' %>>Last Updated</option>
<option value="views" <%= params[:sort_by] == 'views' ? 'selected' : '' %>>Most Views</option>
<option value="hits" <%= params[:sort_by] == 'hits' ? 'selected' : '' %>>Most Hits</option>
<option value="newest" <%= params[:sort_by] == 'newest' ? 'selected' : '' %>>Newest</option>
<option value="oldest" <%= params[:sort_by] == 'oldest' ? 'selected' : '' %>>Oldest</option>
<option value="random" <%= params[:sort_by] == 'random' ? 'selected' : '' %>>Random</option>
</select>
</div>
<!--
<div>
<input name="is_nsfw" type="checkbox" value="true" <%= params[:is_nsfw].to_s == 'true' ? 'checked' : '' %>> Show 18+ content
</div>
-->
<input class="btn-Action" type="submit" value="Update">
</fieldset>
</form>
</div>
<div class="col col-50 filter">
<form method="GET" action="browse">
<fieldset class="grouping">
<label class="text-Label" for="tag">Search by tag:</label>
<input class="input-Area typeahead" name="tag" type="text" placeholder="pokemon" value="" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" dir="auto">
<input style="vertical-align: -5px;margin-left: 4px;" type="submit" class="btn-Action" value="Search">
</fieldset>
</form>
</div>
</div>
</div>
<div class="browse-page">
<% if @sites.length == 0 %>
<div class="row website-Gallery content int-Gall" style="padding-left: 30px;">
<h3>No active sites found.</h3>
<p>Try another search, or <a href="/browse">browse all sites</a>!</p>
</div>
<% else %>
<ul class="row website-Gallery content int-Gall">
<% @sites.each do |site| %>
<li>
<a href="//<%= site.host %>" class="neo-Screen-Shot" target="_blank" title="<%= site.title %>">
<span class="img-Holder" style="background:url(<%= site.screenshot_url('index.html', '540x405') %>) no-repeat;">
<img src="/img/placeholder.png" alt="<%= site.title %>" />
</span>
</a>
<div class="title">
<a href="//<%= site.host %>" title="<%= site.title %>"><%= site.title.shorten(30) %></a>
</div>
<div class="site-info">
<div style="float: left">
<a href="/site/<%= site.username %>" title="Profile">
<i class="fa fa-user"></i>
<%= site.username %>
</a>
</div>
<div style="float: right">
<a href="/site/<%= site.username %>">
<% if params[:sort_by] == 'hits' %>
<%= site.hits %> hit<%= site.hits == 1 ? '' : 's' %>
<% else %>
<%= site.views %> view<%= site.views == 1 ? '' : 's' %>
<% end %>
</a>
</div>
</div>
</li>
<% end %>
</ul>
<% end %>
<% if params[:sort_by] != 'random' %>
<% if @page_count > 1 %>
<div class="txt-Center content eps pagination">
<% if @current_page != 1 %>
<a href="#" onclick="getPage(<%= @current_page - 1 %>); return false"><i class="fa fa-arrow-left arrow"></i></a>&nbsp;
<% end %>
<% 1.upto(@page_count) do |num| %>
<% if num == @current_page %>
<%= num %>&nbsp;
<% else %>
<a href="#" onclick="getPage(<%= num %>); return false"><%= num %></a>&nbsp;
<% end %>
<% end %>
<% if @current_page != @page_count %>
<a href="#" onclick="getPage(<%= @current_page + 1 %>); return false"><i class="fa fa-arrow-right arrow"></i></a>
<% end %>
</div>
<% end %>
<% end %>
<div class="row website-Gallery content int-Gall tags">
<h3>Popular Tags</h3>
<p>
<% Tag.popular_names(100).each do |tag| %>
<a href="/browse?tag=<%= Rack::Utils.escape tag[:name] %>"><%= tag[:name] %></a>&nbsp;&nbsp;
<% end %>
</p>
</div>
</div>