-
Notifications
You must be signed in to change notification settings - Fork 109
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Guo Yunhe
committed
Jul 1, 2017
1 parent
af43b60
commit 2923528
Showing
1 changed file
with
109 additions
and
257 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,269 +1,121 @@ | ||
<% content_for :content_for_head do %> | ||
<%= javascript_include_tag "/javascripts/slimbox2.js" %> | ||
<%= stylesheet_link_tag "/stylesheets/slimbox2/slimbox2.css" %> | ||
<% end %> | ||
|
||
<script type="text/javascript"> | ||
function toggle_dist(distname){ | ||
if( $('#dist_' + distname).is(':visible') ) { | ||
$('#dist_' + distname).hide(); | ||
$('#dist_home_' + distname).hide(); | ||
$('#distro-toggle-' + distname).removeClass("active"); | ||
} else { | ||
$('#dist_' + distname).show(); | ||
$('#unsupported_link_' + distname).show(); | ||
$('#distro-toggle-' + distname).addClass("active"); | ||
} | ||
} | ||
|
||
var current_warning_dist = ""; | ||
function toggle_unsupported(distname) { | ||
if( $('#dist_home_' + distname).is(':visible') ) { | ||
$('#dist_home_' + distname).hide(); | ||
} else { | ||
if ( $.cookie("skip_unsupported_warning") == 'true' ) { | ||
$('#dist_home_' + distname).show(); | ||
$('#unsupported_link_' + distname).hide(); | ||
} else { | ||
current_warning_dist = distname; | ||
$("#unsupported-warning").dialog( "open" ); | ||
} | ||
} | ||
} | ||
|
||
function expand_all() { | ||
$("#pkg-options").show(); | ||
$(".pkg-options-details").show(); | ||
$("#other-versions-link").hide(); | ||
$( ".pkg-options-unsupported" ).removeClass("hidden"); | ||
$('#unsupported-title').removeClass("hidden"); | ||
$('.extra-dists').removeClass("hidden"); | ||
$('.pkg-options-unsupported').removeClass("hidden"); | ||
$('.show-unstable-packages').addClass("hidden"); | ||
$('#show-extra-dists').addClass("hidden"); | ||
$('#show-extra-dists').css("display","none"); | ||
$('#expand-all').addClass("hidden"); | ||
$('#expand-all').css("display","none"); | ||
$('#other-versions-link').addClass("hidden"); | ||
} | ||
|
||
|
||
$(function() { | ||
|
||
<% unless @default_package.blank? %> | ||
$( "#pkg-options" ).addClass("hidden"); | ||
<% end -%> | ||
|
||
// this makes all visible for non-javascript browsers | ||
$( ".pkg-options-unsupported" ).addClass("hidden"); | ||
$('#unsupported-title').addClass("hidden"); | ||
$('.extra-dists').addClass("hidden"); | ||
$('.pkg-options-unsupported').addClass("hidden"); | ||
$('.show-unstable-packages').removeClass("hidden"); | ||
$('#show-extra-dists').removeClass("hidden"); | ||
$('#show-extra-dists').css("display","block"); | ||
$('#expand-all').removeClass("hidden"); | ||
//$('#expand-all').css("display","block"); | ||
$('#other-versions-link').removeClass("hidden"); | ||
|
||
|
||
<% @distributions.each do |distro| -%> | ||
<% unless (distro[:project] == @baseproject ) %> | ||
$('#dist_<%= distro[:dist_id] %>').addClass("hidden"); | ||
<% end -%> | ||
<% end -%> | ||
|
||
|
||
$( "#unsupported-warning" ).dialog({ | ||
autoOpen: false, | ||
minWidth: 500, | ||
modal: true, | ||
closeText: 'hide', | ||
closeOnEscape: true, | ||
draggable: false, | ||
resizable: false, | ||
title: 'Warning', | ||
buttons: { "Continue": function() { | ||
$(this).dialog("close"); | ||
$('#dist_home_' + current_warning_dist).show(); | ||
$('#unsupported_link_' + current_warning_dist).hide(); | ||
} | ||
} | ||
}); | ||
|
||
$(".ui-icon-closethick").hide(); | ||
$(".ui-icon-closethick").click(function() { | ||
$('#dist_home_' + current_warning_dist).show(); | ||
}); | ||
|
||
$("#toggle_unsupported_warning").click(function() { | ||
$.cookie("skip_unsupported_warning", "true", { path: '/', expires: 365 }); | ||
}); | ||
|
||
$("#other-versions-link").click(function() { | ||
$("#pkg-options").slideToggle(); | ||
$("#other-versions-link").hide(); | ||
return false; | ||
}); | ||
|
||
$('#show-extra-dists').click(function() { | ||
$('#show-extra-dists').hide(); | ||
$('#unsupported-title').show(); | ||
$('.extra-dists').slideToggle(); | ||
return false; | ||
}); | ||
|
||
$('#expand-all').click(function() { | ||
expand_all(); | ||
return false; | ||
}); | ||
|
||
$(document).keypress(function(e){ | ||
if(e.charCode == 101){ | ||
expand_all(); | ||
} | ||
}) | ||
|
||
|
||
}); | ||
|
||
</script> | ||
|
||
<div class="grid_12 alpha omega"> | ||
|
||
<div id="unsupported-warning" class="hidden"> | ||
<p> | ||
<%= _("Please be aware that the following packages are from unofficial repositories. | ||
That means they are not reviewed by openSUSE and may contain unstable or experimental software.") %> | ||
</p> | ||
<p><input type="checkbox" id="toggle_unsupported_warning"/> | ||
<label for="toggle_unsupported_warning"><%= _("Don't show this warning the next time") %></label> | ||
</p> | ||
<% if @packages.blank? %> | ||
<div class="py-5"> | ||
<div class="container"> | ||
<h1><%= _("Package %s not found...") % [@pkgname] %></h1> | ||
<p><a href="/search"><%= _("Back to home page") %></a></p> | ||
</div> | ||
</div> | ||
|
||
<div class="box box-shadow"> | ||
<div> | ||
|
||
<% if @packages.blank? %> | ||
<p><%= _("Package %s not found...") % [@pkgname] %></p> | ||
<% else %> | ||
|
||
<!-- Main Content --> | ||
|
||
<!-- Main Column --> | ||
<div id="pkg-content" class="grid_10 prefix_1 suffix_1"> | ||
|
||
<div class="app-screenshot"> | ||
<a title="Screenshot of <%= @pkgname %>" rel="lightbox" href="<%= @screenshot %>"> | ||
<img src="<%= @thumbnail %>" alt="<%= @pkgname %>" /> | ||
<% else %> | ||
|
||
<header class="my-5"> | ||
<div class="container"> | ||
<div class="row"> | ||
<div class="col-md-6"> | ||
<a title="Screenshot of <%= @pkgname %>" rel="lightbox" href="<%= @screenshot %>"> | ||
<img class="img-fluid" src="<%= @thumbnail %>" alt="<%= @pkgname %>" /> | ||
</a> | ||
</div> | ||
<div class="col-md-6"> | ||
<h1><%= @name || @pkgname %></h1> | ||
<% desc_package = search_for_description( @pkgname, @packages ) %> | ||
<% unless desc_package.blank? %> | ||
<% unless @appcategories.blank? %> | ||
<p class="pkg-categorie-note"> | ||
<strong><%= @appcategories.size > 1 ? _("Categories") : _("Category") %>:</strong> | ||
<% @appcategories.each do |cat| -%> | ||
<%= link_to cat, {:controller => :package, :action => :category, :category => cat}, :class => 'badge badge-info' %> | ||
<% end -%> | ||
</p> | ||
<% end -%> | ||
<p><strong><%= desc_package.summary %></strong></p> | ||
<p id="pkg-desc"><%= prepare_desc desc_package.description -%></p> | ||
<!-- <i>(from <%= desc_package.project %>)</i> --> | ||
<%else %> | ||
<p class="text-muted"><%= _("No description.") %></p> | ||
<% end -%> | ||
<% unless @default_package.blank? %> | ||
<% | ||
url = url_for :controller => 'download', :action => 'ymp_without_arch_and_version', :query => @pkgname, | ||
:project => @default_package.project, :repository => @default_package.repository, :package => @pkgname, :base => @default_package.baseproject | ||
%> | ||
<ul class="list-inline"> | ||
<li class="list-inline-item"><%= _("Version") %> <%= shorten @default_package.version, 13 %></li> | ||
<li class="list-inline-item"><%= _("Size") %> <%= number_to_human_size desc_package.size if desc_package %></li> | ||
<li class="list-inline-item"><%= @default_project_name %></li> | ||
</ul> | ||
<a id="one-click-button" class="btn btn-lg btn-primary" href="<%= url %>"> | ||
<span class="typcn typcn-flash-outline"></span> | ||
<%= _("Direct Install") %> | ||
</a> | ||
</div> | ||
|
||
<div id="pkg-description"> | ||
<h1><%= @name || @pkgname %></h1> | ||
<% desc_package = search_for_description( @pkgname, @packages ) %> | ||
<% unless desc_package.blank? %> | ||
<% unless @appcategories.blank? %> | ||
<p class="pkg-categorie-note"> | ||
<strong><%= @appcategories.size > 1 ? _("Categories") : _("Category") %>:</strong> | ||
<% @appcategories.each do |cat| -%> | ||
<%= link_to cat, :controller => :package, :action => :category, :category => cat %> | ||
<% end -%> | ||
</div><!-- /#package-description --> | ||
</div><!-- /.row --> | ||
</div><!-- /.container --> | ||
</header> | ||
|
||
<div id="pkg-options"> | ||
<ul> | ||
<% @distributions.each do |distro| -%> | ||
<% if (pkgs = @packages.select{|s| s.baseproject == distro[:project]}).size > 0 | ||
%> | ||
|
||
<li> | ||
<a href="#" onclick=" toggle_dist('<%= distro[:dist_id] %>'); return false;" | ||
class="distro-toggle" id="distro-toggle-<%= distro[:dist_id] %>"><b><%= distro[:name] %></b></a> | ||
<ul class="pkg-options-details " id="dist_<%= distro[:dist_id] %>" > | ||
|
||
<% | ||
official, pkgs = pkgs.partition{|s| s.project == distro[:project] || s.project == "#{distro[:project]}:NonFree" } | ||
update, pkgs = pkgs.partition{|s| s.project == "#{distro[:project]}:Update"} | ||
stable, pkgs = pkgs.partition{|s| s.quality == "Stable"} %> | ||
<%= render( :partial => 'package/download_rows', :locals => {:packages => official, :distro => distro, :oneclick => true} ) if update.blank? %> | ||
<%= render :partial => 'package/download_rows', :locals => {:packages => update, :distro => distro, :oneclick => true} %> | ||
<%= render :partial => 'package/download_rows', :locals => {:packages => stable, :distro => distro, :oneclick => true} %> | ||
<% | ||
home, pkgs = pkgs.partition{|s| s.project.match( /^home\:/ )} | ||
devel = pkgs.reject{|s| @official_projects.include?( s.project ) || s.project.match( /^home\:/ ) || s.project.match( /#{distro[:project]}\:Update/ ) || | ||
s.project.match( /#{distro[:project]}\:NonFree/ ) || s.project.match( /openSUSE\:Maintenance\:/ ) } %> | ||
<% unless home.blank? && devel.blank? %> | ||
<li id="unsupported_link_<%= distro[:dist_id] %>" class="show-unstable-packages hidden"> | ||
<a class="trigger-show-more" href="#" onclick="toggle_unsupported('<%= distro[:dist_id] %>'); return false;"><%= _("Show unstable packages") %></a></li> | ||
<% end -%> | ||
</ul> | ||
<ul class="pkg-options-details pkg-options-unsupported" id="dist_home_<%= distro[:dist_id] %>" > | ||
<%= render :partial => 'package/download_rows', :locals => {:packages => devel, :distro => distro, :oneclick => true} %> | ||
<%= render :partial => 'package/download_rows', :locals => {:packages => home, :distro => distro, :oneclick => true} %> | ||
</ul> | ||
|
||
</li> | ||
<% end -%> | ||
</p> | ||
<% end -%> | ||
<h3><%= desc_package.summary %></h3> | ||
<p id="pkg-desc"><%= prepare_desc desc_package.description -%></p> | ||
<!-- <i>(from <%= desc_package.project %>)</i> --> | ||
<%else %> | ||
<p><%= _("No description found...") %></p> | ||
<% end -%> | ||
<% unless @default_package.blank? %> | ||
<% url = url_for :controller => 'download', :action => 'ymp_without_arch_and_version', :query => @pkgname, | ||
:project => @default_package.project, :repository => @default_package.repository, :package => @pkgname, :base => @default_package.baseproject %> | ||
<div id="one-click-button-box"> | ||
<a id="one-click-button" href="<%= url %>"> | ||
<%= image_tag "download-arrow.png", :width => "36", :height => "36", :alt => "Download Arrow" %> | ||
<strong><%= _("Direct Install") %></strong><br/> | ||
<em><%= @default_project_name %>, | ||
<%= _("Version") %> <%= shorten @default_package.version, 13 %><%= ", #{number_to_human_size desc_package.size}" if desc_package %></em> | ||
</a> | ||
<div id="other-versions-link" class="hidden"><a href="#pkg-options"><%= _("Show other versions") %></a></div> | ||
</div> | ||
<% end -%> | ||
</div> | ||
|
||
|
||
<div id="pkg-options"> | ||
<ul> | ||
<% @distributions.each do |distro| -%> | ||
<% if (pkgs = @packages.select{|s| s.baseproject == distro[:project]}).size > 0 | ||
%> | ||
|
||
<li> | ||
<a href="#" onclick=" toggle_dist('<%= distro[:dist_id] %>'); return false;" | ||
class="distro-toggle" id="distro-toggle-<%= distro[:dist_id] %>"><b><%= distro[:name] %></b></a> | ||
<ul class="pkg-options-details " id="dist_<%= distro[:dist_id] %>" > | ||
|
||
<% | ||
official, pkgs = pkgs.partition{|s| s.project == distro[:project] || s.project == "#{distro[:project]}:NonFree" } | ||
update, pkgs = pkgs.partition{|s| s.project == "#{distro[:project]}:Update"} | ||
stable, pkgs = pkgs.partition{|s| s.quality == "Stable"} %> | ||
<%= render( :partial => 'package/download_rows', :locals => {:packages => official, :distro => distro, :oneclick => true} ) if update.blank? %> | ||
<%= render :partial => 'package/download_rows', :locals => {:packages => update, :distro => distro, :oneclick => true} %> | ||
<%= render :partial => 'package/download_rows', :locals => {:packages => stable, :distro => distro, :oneclick => true} %> | ||
<% | ||
home, pkgs = pkgs.partition{|s| s.project.match( /^home\:/ )} | ||
devel = pkgs.reject{|s| @official_projects.include?( s.project ) || s.project.match( /^home\:/ ) || s.project.match( /#{distro[:project]}\:Update/ ) || | ||
s.project.match( /#{distro[:project]}\:NonFree/ ) || s.project.match( /openSUSE\:Maintenance\:/ ) } %> | ||
<% unless home.blank? && devel.blank? %> | ||
<li id="unsupported_link_<%= distro[:dist_id] %>" class="show-unstable-packages hidden"> | ||
<a class="trigger-show-more" href="#" onclick="toggle_unsupported('<%= distro[:dist_id] %>'); return false;"><%= _("Show unstable packages") %></a></li> | ||
<% end -%> | ||
</ul> | ||
<ul class="pkg-options-details pkg-options-unsupported" id="dist_home_<%= distro[:dist_id] %>" > | ||
<%= render :partial => 'package/download_rows', :locals => {:packages => devel, :distro => distro, :oneclick => true} %> | ||
<%= render :partial => 'package/download_rows', :locals => {:packages => home, :distro => distro, :oneclick => true} %> | ||
</ul> | ||
|
||
</li> | ||
<% end -%> | ||
<% end -%> | ||
<% unless @extra_dists.blank? %> | ||
|
||
<div id="unsupported-title"><h3><%= _("Unsupported distributions:") %></h3></div> | ||
<% @extra_dists.each do |distro| -%> | ||
<li class="extra-dists"> | ||
<a href="#" onclick=" toggle_dist('<%= escape_for_id distro[:project] %>'); return false;" | ||
class="distro-toggle" id="distro-toggle-<%= escape_for_id distro[:project] %>"><b><%= distro[:project].gsub(":", " ").sub("DISCONTINUED", "") %></b></a> | ||
<% pks = @extra_packages.select{|p| p.baseproject == distro[:project] } %> | ||
<ul class="pkg-options-details pkg-options-unsupported" id="dist_<%= escape_for_id distro[:project] %>" > | ||
<%= render :partial => 'download_rows', :locals => {:packages => pks, :distro => distro, :oneclick => false} %> | ||
</ul> | ||
</li> | ||
<% unless @extra_dists.blank? %> | ||
|
||
<div id="unsupported-title"><h3><%= _("Unsupported distributions:") %></h3></div> | ||
<% @extra_dists.each do |distro| -%> | ||
<li class="extra-dists"> | ||
<a href="#" onclick=" toggle_dist('<%= escape_for_id distro[:project] %>'); return false;" | ||
class="distro-toggle" id="distro-toggle-<%= escape_for_id distro[:project] %>"><b><%= distro[:project].gsub(":", " ").sub("DISCONTINUED", "") %></b></a> | ||
<% pks = @extra_packages.select{|p| p.baseproject == distro[:project] } %> | ||
<ul class="pkg-options-details pkg-options-unsupported" id="dist_<%= escape_for_id distro[:project] %>" > | ||
<%= render :partial => 'download_rows', :locals => {:packages => pks, :distro => distro, :oneclick => false} %> | ||
</ul> | ||
</li> | ||
<% end %> | ||
<% end %> | ||
<% end %> | ||
<%= image_tag "expand_all.png", :style => "float: right; ", :class => "hidden", :title => _("Expand all sections ('e')"), :id => "expand-all" %> | ||
<a id="show-extra-dists" class="hidden" href="#"><%= _("Show more packages for unsupported distributions") %></a> | ||
|
||
</ul> | ||
</div> | ||
|
||
</div> | ||
<!-- End of Main Column --> | ||
<%= image_tag "expand_all.png", :style => "float: right; ", :class => "hidden", :title => _("Expand all sections ('e')"), :id => "expand-all" %> | ||
<a id="show-extra-dists" class="hidden" href="#"><%= _("Show more packages for unsupported distributions") %></a> | ||
|
||
<div class="clearfix"></div> | ||
</ul> | ||
</div> | ||
|
||
</div> | ||
<!-- End of Main Content --> | ||
|
||
<% end -%> | ||
<% end -%> | ||
</div> | ||
</div> | ||
</div> |