mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Merge pull request #6883 from guerler/style_fixes
Align toolshed makos used in the admin panel, fix slider height
This commit is contained in:
@@ -135,7 +135,7 @@ var View = Backbone.View.extend({
|
||||
_template: function() {
|
||||
return `<div class="ui-form-slider container-fluid">
|
||||
<div class="row">
|
||||
<input class="ui-form-slider-text form-control" type="text"/>
|
||||
<input class="ui-input ui-form-slider-text" type="text"/>
|
||||
<div class="ui-form-slider-element col mt-1"/>
|
||||
</div>
|
||||
</div>`;
|
||||
|
||||
@@ -223,11 +223,9 @@ body {
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.panel-header-buttons {
|
||||
order: 9999;
|
||||
}
|
||||
|
||||
.panel-header-button {
|
||||
text-decoration: none;
|
||||
display: inline-block;
|
||||
@@ -238,7 +236,6 @@ body {
|
||||
&:not(:last-child) {
|
||||
margin-right: 2px;
|
||||
}
|
||||
|
||||
// Fade to maroon on hover
|
||||
&:hover {
|
||||
color: maroon;
|
||||
@@ -269,12 +266,10 @@ body {
|
||||
z-index: 1000; // Above #dd-helper
|
||||
border-top: $layout-border;
|
||||
background: $navbar-default-bg;
|
||||
|
||||
color: #555;
|
||||
a {
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.drag {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
@@ -346,18 +341,13 @@ div.unified-panel-body {
|
||||
height: 100%;
|
||||
padding: 0px;
|
||||
flex: 1;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
div.unified-panel-body-background {
|
||||
background: none repeat scroll 0 0 $panel-bg-color;
|
||||
}
|
||||
|
||||
#left > div.unified-panel-body,
|
||||
#right > div.unified-panel-body {
|
||||
padding-bottom: $panel_footer_height;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
// Used for dragging panels, popup menus, to deal with capturing clicks in iframes
|
||||
#dd-helper {
|
||||
background: white;
|
||||
|
||||
@@ -29,46 +29,24 @@
|
||||
.vertically-spaced {
|
||||
margin-top: 4px;
|
||||
}
|
||||
|
||||
> .controls {
|
||||
margin: 8px 8px 1px;
|
||||
padding: 0px;
|
||||
// padding: 8px;
|
||||
|
||||
@extend .mx-3;
|
||||
.navigation {
|
||||
margin-top: 4px;
|
||||
.back {
|
||||
span {
|
||||
@extend .fa-lg;
|
||||
margin-right: 4px;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
}
|
||||
.title {
|
||||
margin-top: 12px;
|
||||
.name {
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
> .list-items {
|
||||
@extend .flex-column;
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
|
||||
&:not(:empty) {
|
||||
border-top: 1px solid $border-default-color;
|
||||
}
|
||||
.list-item {
|
||||
border-width: 1px 0px 0px 0px;
|
||||
&:first-child {
|
||||
border-top-width: 0px;
|
||||
}
|
||||
&:last-child {
|
||||
border-bottom-width: 1px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -145,7 +145,7 @@ $vertical-gap: 8px;
|
||||
|
||||
.controls {
|
||||
& > *:not(:empty) {
|
||||
margin-bottom: 8px;
|
||||
@extend .mb-2;
|
||||
}
|
||||
.name {
|
||||
word-wrap: break-word;
|
||||
|
||||
+14
-33
@@ -5628,7 +5628,7 @@ button.bg-dark:focus {
|
||||
.mx-2 {
|
||||
margin-right: 0.5rem !important; }
|
||||
|
||||
.mb-2, .ui-portlet-section, #tool-search,
|
||||
.mb-2, .ui-portlet-section, #tool-search, .list-panel .controls > *:not(:empty),
|
||||
.my-2 {
|
||||
margin-bottom: 0.5rem !important; }
|
||||
|
||||
@@ -5646,7 +5646,8 @@ button.bg-dark:focus {
|
||||
.mr-3,
|
||||
.mx-3,
|
||||
.unified-panel-header,
|
||||
.list-item .primary-actions {
|
||||
.list-item .primary-actions,
|
||||
.dataset-collection-panel > .controls {
|
||||
margin-right: 1rem !important; }
|
||||
|
||||
.mb-3,
|
||||
@@ -5656,7 +5657,8 @@ button.bg-dark:focus {
|
||||
.ml-3,
|
||||
.mx-3,
|
||||
.unified-panel-header,
|
||||
.list-item .primary-actions {
|
||||
.list-item .primary-actions,
|
||||
.dataset-collection-panel > .controls {
|
||||
margin-left: 1rem !important; }
|
||||
|
||||
.m-4 {
|
||||
@@ -6890,7 +6892,7 @@ pre.code {
|
||||
-moz-osx-font-smoothing: grayscale; }
|
||||
|
||||
/* makes the font 33% larger relative to the icon container */
|
||||
.fa-lg, .dataset-collection-panel > .controls .navigation .back span {
|
||||
.fa-lg {
|
||||
font-size: 1.33333em;
|
||||
line-height: 0.75em;
|
||||
vertical-align: -15%; }
|
||||
@@ -6924,7 +6926,7 @@ pre.code {
|
||||
width: 2.14286em;
|
||||
top: 0.14286em;
|
||||
text-align: center; }
|
||||
.fa-li.fa-lg, .dataset-collection-panel > .controls .navigation .back span.fa-li {
|
||||
.fa-li.fa-lg {
|
||||
left: -1.85714em; }
|
||||
|
||||
.fa-border {
|
||||
@@ -12285,16 +12287,12 @@ div.unified-panel-body {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
padding: 0px;
|
||||
flex: 1; }
|
||||
flex: 1;
|
||||
overflow: auto; }
|
||||
|
||||
div.unified-panel-body-background {
|
||||
background: none repeat scroll 0 0 #f8f9fa; }
|
||||
|
||||
#left > div.unified-panel-body,
|
||||
#right > div.unified-panel-body {
|
||||
padding-bottom: 25px;
|
||||
overflow: auto; }
|
||||
|
||||
#dd-helper {
|
||||
background: white;
|
||||
opacity: 0;
|
||||
@@ -13337,8 +13335,6 @@ div.permissionContainer {
|
||||
|
||||
.list-panel {
|
||||
overflow: hidden; }
|
||||
.list-panel .controls > *:not(:empty) {
|
||||
margin-bottom: 8px; }
|
||||
.list-panel .controls .name {
|
||||
word-wrap: break-word;
|
||||
font-weight: bold; }
|
||||
@@ -14141,30 +14137,15 @@ pre.peek {
|
||||
.dataset-collection-panel .vertically-spaced {
|
||||
margin-top: 4px; }
|
||||
|
||||
.dataset-collection-panel > .controls {
|
||||
margin: 8px 8px 1px;
|
||||
padding: 0px; }
|
||||
.dataset-collection-panel > .controls .navigation {
|
||||
margin-top: 4px; }
|
||||
.dataset-collection-panel > .controls .navigation .back span {
|
||||
margin-right: 4px;
|
||||
font-weight: bold; }
|
||||
.dataset-collection-panel > .controls .title {
|
||||
margin-top: 12px; }
|
||||
.dataset-collection-panel > .controls .title .name {
|
||||
font-weight: bold; }
|
||||
.dataset-collection-panel > .controls .navigation .back span {
|
||||
font-weight: bold; }
|
||||
|
||||
.dataset-collection-panel > .controls .title .name {
|
||||
font-weight: bold; }
|
||||
|
||||
.dataset-collection-panel > .list-items {
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto; }
|
||||
.dataset-collection-panel > .list-items:not(:empty) {
|
||||
border-top: 1px solid #bfbfbf; }
|
||||
.dataset-collection-panel > .list-items .list-item {
|
||||
border-width: 1px 0px 0px 0px; }
|
||||
.dataset-collection-panel > .list-items .list-item:first-child {
|
||||
border-top-width: 0px; }
|
||||
.dataset-collection-panel > .list-items .list-item:last-child {
|
||||
border-bottom-width: 1px; }
|
||||
|
||||
.job.list-item {
|
||||
border: 1px solid #bfbfbf; }
|
||||
|
||||
@@ -47,7 +47,6 @@
|
||||
|
||||
<style type="text/css">
|
||||
.page-body {
|
||||
padding: 10px;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
}
|
||||
@@ -80,7 +79,7 @@
|
||||
</%def>
|
||||
|
||||
<%def name="render_item_header( item )">
|
||||
<h3>Galaxy ${get_class_display_name( item.__class__ )} '${get_item_name( item )| h}'</h3>
|
||||
<h3>${get_item_name( item )| h}</h3>
|
||||
%if hasattr( item, "annotation") and item.annotation is not None:
|
||||
<div class="annotation">Annotation: ${item.annotation}</div>
|
||||
%endif
|
||||
@@ -116,7 +115,7 @@
|
||||
href_to_user_items = h.url_for( controller='/' + modern_route, action='list_published', xxx=item.user.username)
|
||||
href_to_user_items = href_to_user_items.replace( 'xxx', 'f-username')
|
||||
%>
|
||||
<div class="page-body">
|
||||
<div class="page-body p-3">
|
||||
<div>
|
||||
${self.render_item_header( item )}
|
||||
</div>
|
||||
@@ -125,7 +124,6 @@
|
||||
</%def>
|
||||
|
||||
<%def name="right_panel()">
|
||||
|
||||
<%
|
||||
## FIXME: duplicated from above for now
|
||||
modern_route = modern_route_for_controller(get_controller_name(item))
|
||||
@@ -134,32 +132,25 @@
|
||||
href_to_user_items = h.url_for( controller='/' + modern_route, action='list_published', xxx=item.user.username)
|
||||
href_to_user_items = href_to_user_items.replace( 'xxx', 'f-username')
|
||||
%>
|
||||
|
||||
<div class="unified-panel-header" unselectable="on">
|
||||
<div class="unified-panel-header-inner">
|
||||
About this ${get_class_display_name( item.__class__ )}
|
||||
${self.render_item_links( item )}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="unified-panel-body">
|
||||
<div style="overflow: auto; height: 100%;">
|
||||
<div style="padding: 10px;">
|
||||
<div class="p-3">
|
||||
<div style="float: right;"><img src="https://secure.gravatar.com/avatar/${h.md5(item.user.email)}?d=identicon"></div>
|
||||
|
||||
<h4>Author</h4>
|
||||
|
||||
<p>${item.user.username | h}</p>
|
||||
|
||||
## Related items.
|
||||
<h4>Related ${item_plural}</h4>
|
||||
<p>
|
||||
<a href="${href_to_all_items}">All published ${item_plural.lower()}</a><br>
|
||||
<a href="${href_to_user_items}">Published ${item_plural.lower()} by ${item.user.username | h}</a>
|
||||
|
||||
## Rating.
|
||||
<h4>Rating</h4>
|
||||
|
||||
<%
|
||||
label = "ratings"
|
||||
if num_ratings == 1:
|
||||
@@ -177,7 +168,6 @@
|
||||
%if ave_item_rating > 0 and ave_item_rating <= 1.5:
|
||||
checked="checked"
|
||||
%endif
|
||||
|
||||
/>
|
||||
<input name="star1" type="radio" class="community_rating_star star" disabled="disabled" value="2"
|
||||
%if ave_item_rating > 1.5 and ave_item_rating <= 2.5:
|
||||
@@ -234,7 +224,6 @@
|
||||
</div>
|
||||
%endif
|
||||
<div style="clear: both;"></div>
|
||||
|
||||
## Tags.
|
||||
<h4>Tags</h4>
|
||||
<p>
|
||||
@@ -257,5 +246,4 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</%def>
|
||||
|
||||
@@ -84,9 +84,9 @@
|
||||
item_name = get_item_name(item)
|
||||
%>
|
||||
|
||||
<div class="toolForm">
|
||||
<div class="toolFormTitle">Share ${item_class_name} '${item_name | h}' with Another User</div>
|
||||
<div class="toolFormBody">
|
||||
<div class="card">
|
||||
<div class="card-header">Share ${item_class_name} '${item_name | h}' with Another User</div>
|
||||
<div class="card-body">
|
||||
<form action="${h.url_for(controller=item_controller, action='share', id=trans.security.encode_id( item.id ) )}" method="POST">
|
||||
<div class="form-row">
|
||||
<label>
|
||||
|
||||
@@ -42,16 +42,11 @@
|
||||
##
|
||||
|
||||
<%def name="center_panel()">
|
||||
${render_large_message( message, status )}
|
||||
${render_msg( message, status )}
|
||||
</%def>
|
||||
|
||||
<%def name="body()">
|
||||
${render_large_message( message, status )}
|
||||
</%def>
|
||||
|
||||
## Render large message.
|
||||
<%def name="render_large_message( message, status )">
|
||||
<div class="${status}messagelarge" style="margin: 1em">${_(message)}</div>
|
||||
${render_msg( message, status )}
|
||||
</%def>
|
||||
|
||||
## Render a message
|
||||
@@ -60,4 +55,3 @@
|
||||
<% status = "danger" if status == "error" else status %>
|
||||
<div class="mt-2 alert alert-${status}">${_(msg)}</div>
|
||||
</%def>
|
||||
|
||||
|
||||
@@ -23,9 +23,9 @@
|
||||
switch_url = h.url_for( controller='history', action='switch_to_history', hist_id=encoded_history_id )
|
||||
%>
|
||||
%if not user_is_owner:
|
||||
<a href="javascript:void(0)" class="history-copy-link btn btn-secondary fa fa-plus" title="Import history"></a>
|
||||
<a href="javascript:void(0)" class="history-copy-link btn btn-secondary fa fa-plus float-right" title="Import history"></a>
|
||||
%else:
|
||||
<a href="${switch_url}" class="btn btn-secondary fa fa-plus" title="${_('Switch to this history')}"></a>
|
||||
<a href="${switch_url}" class="btn btn-secondary fa fa-plus float-right" title="${_('Switch to this history')}"></a>
|
||||
%endif
|
||||
</%def>
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
<%def name="render_item_links( visualization )">
|
||||
<a
|
||||
href="${h.url_for( controller='/visualization', action='imp', id=trans.security.encode_id( visualization.id ) )}"
|
||||
class="btn btn-secondary fa fa-plus"
|
||||
class="btn btn-secondary fa fa-plus float-right"
|
||||
title="Import visualization"></a>
|
||||
</%def>
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
|
||||
<%def name="render_item_links( visualization )">
|
||||
<a href="${h.url_for( controller='/visualization', action='imp', id=trans.security.encode_id( visualization.id ) )}"
|
||||
class="btn btn-secondary fa fa-plus"
|
||||
class="btn btn-secondary fa fa-plus float-right"
|
||||
title="Import visualization"></a>
|
||||
</%def>
|
||||
|
||||
|
||||
@@ -14,13 +14,13 @@
|
||||
<%def name="do_inputs( inputs, values, prefix, step, other_values=None )">
|
||||
%for input_index, input in enumerate( inputs.values() ):
|
||||
%if input.type == "repeat":
|
||||
<div class="repeat-group">
|
||||
<div class="form-title-row"><b>${input.title_plural}</b></div>
|
||||
<div>
|
||||
<div class="form-row"><b>${input.title_plural}</b></div>
|
||||
<% repeat_values = values[input.name] %>
|
||||
%for i in range( len( repeat_values ) ):
|
||||
<div class="repeat-group-item">
|
||||
<div class="ui-portlet-section ml-2">
|
||||
<% index = repeat_values[i]['__index__'] %>
|
||||
<div class="form-title-row"><b>${input.title} ${i + 1}</b></div>
|
||||
<div class="form-row"><b>${input.title} ${i + 1}</b></div>
|
||||
${do_inputs( input.inputs, repeat_values[ i ], prefix + input.name + "_" + str(index) + "|", step, other_values )}
|
||||
</div>
|
||||
%endfor
|
||||
@@ -34,9 +34,9 @@
|
||||
%elif input.type == "section":
|
||||
<% new_prefix = prefix + input.name + "|" %>
|
||||
<% group_values = values[input.name] %>
|
||||
<div class="form-title-row"><b>${input.title}:</b></div>
|
||||
<div class="repeat-group">
|
||||
<div class="repeat-group-item">
|
||||
<div class="form-row"><b>${input.title}:</b></div>
|
||||
<div>
|
||||
<div class="ui-portlet-section ml-2">
|
||||
${do_inputs( input.inputs, group_values, new_prefix, step, other_values )}
|
||||
</div>
|
||||
</div>
|
||||
@@ -77,11 +77,11 @@
|
||||
%if workflow.importable:
|
||||
<a
|
||||
href="${h.url_for( controller='/workflow', action='imp', id=trans.security.encode_id(workflow.id) )}"
|
||||
class="btn btn-secondary fa fa-plus"
|
||||
class="btn btn-secondary fa fa-plus float-right"
|
||||
title="Import workflow"></a>
|
||||
<a
|
||||
href="${h.url_for( controller='/workflow', action='export_to_file', id=trans.security.encode_id(workflow.id) )}"
|
||||
class="btn btn-secondary fa fa-download"
|
||||
class="btn btn-secondary fa fa-download float-right mr-2"
|
||||
title="Save workflow"></a>
|
||||
%endif
|
||||
</%def>
|
||||
@@ -100,22 +100,22 @@
|
||||
<%
|
||||
tool = trans.app.toolbox.get_tool( step.tool_id )
|
||||
%>
|
||||
<div class="toolForm">
|
||||
<div class="card mt-3 mr-3">
|
||||
%if tool:
|
||||
<div class="toolFormTitle">Step ${int(step.order_index)+1}: ${tool.name | h}</div>
|
||||
<div class="toolFormBody">
|
||||
<div class="card-header">Step ${int(step.order_index)+1}: ${tool.name | h}</div>
|
||||
<div class="card-body">
|
||||
${do_inputs( tool.inputs, step.state.inputs, "", step )}
|
||||
</div>
|
||||
%else:
|
||||
<div class="toolFormTitle">Step ${int(step.order_index)+1}: Unknown Tool with id '${step.tool_id | h}'</div>
|
||||
<div class="card-header">Step ${int(step.order_index)+1}: Unknown Tool with id '${step.tool_id | h}'</div>
|
||||
%endif
|
||||
</div>
|
||||
%else:
|
||||
## TODO: always input dataset?
|
||||
<% module = step.module %>
|
||||
<div class="toolForm">
|
||||
<div class="toolFormTitle">Step ${int(step.order_index)+1}: ${module.name | h}</div>
|
||||
<div class="toolFormBody">
|
||||
<div class="card mt-3 mr-3">
|
||||
<div class="card-header">Step ${int(step.order_index)+1}: ${module.name | h}</div>
|
||||
<div class="card-body">
|
||||
${do_inputs( module.get_runtime_inputs(), step.state.inputs, "", step )}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -307,7 +307,7 @@
|
||||
|
||||
<%def name="body()">
|
||||
<div style="overflow: auto; height: 100%;">
|
||||
<div class="page-container" style="padding: 10px;">
|
||||
<div class="page-container p-2">
|
||||
${self.render_header()}
|
||||
<h2>${get_class_display_name( item.__class__ )} '${get_item_name( item ) | h}'</h2>
|
||||
<hr/>
|
||||
|
||||
@@ -1088,9 +1088,9 @@
|
||||
|
||||
<%def name="render_resolver_dependencies( requirements_status )">
|
||||
%if requirements_status:
|
||||
<div class="toolForm">
|
||||
<div class="toolFormTitle">Dependency Resolver Details</div>
|
||||
<div class="toolFormBody">
|
||||
<div class="card">
|
||||
<div class="card-header">Dependency Resolver Details</div>
|
||||
<div class="card-body">
|
||||
<table cellspacing="2" cellpadding="2" border="0" width="100%" class="tables container-table" id="module_resolvers">
|
||||
${render_tool_dependency_resolver( requirements_status )}
|
||||
</table>
|
||||
@@ -1143,9 +1143,9 @@
|
||||
%if readme_files_root_folder:
|
||||
${render_table_wrap_style( "readme_files" )}
|
||||
<p/>
|
||||
<div class="toolForm">
|
||||
<div class="toolFormTitle">Repository README files - may contain important installation or license information</div>
|
||||
<div class="toolFormBody">
|
||||
<div class="card">
|
||||
<div class="card-header">Repository README files - may contain important installation or license information</div>
|
||||
<div class="card-body">
|
||||
<p/>
|
||||
<% row_counter = RowCounter() %>
|
||||
<table cellspacing="2" cellpadding="2" border="0" width="100%" class="tables container-table" id="readme_files">
|
||||
@@ -1155,9 +1155,9 @@
|
||||
</div>
|
||||
%endif
|
||||
%if has_dependencies:
|
||||
<div class="toolForm">
|
||||
<div class="toolFormTitle">Dependencies of this repository</div>
|
||||
<div class="toolFormBody">
|
||||
<div class="card">
|
||||
<div class="card-header">Dependencies of this repository</div>
|
||||
<div class="card-body">
|
||||
%if invalid_repository_dependencies_root_folder:
|
||||
<p/>
|
||||
<% row_counter = RowCounter() %>
|
||||
@@ -1205,9 +1205,9 @@
|
||||
%endif
|
||||
%if has_contents:
|
||||
<p/>
|
||||
<div class="toolForm">
|
||||
<div class="toolFormTitle">Contents of this repository</div>
|
||||
<div class="toolFormBody">
|
||||
<div class="card">
|
||||
<div class="card-header">Contents of this repository</div>
|
||||
<div class="card-body">
|
||||
%if valid_tools_root_folder:
|
||||
<p/>
|
||||
<% row_counter = RowCounter() %>
|
||||
@@ -1256,9 +1256,9 @@
|
||||
%if tool_test_results_root_folder and trans.app.config.display_legacy_test_results:
|
||||
${render_table_wrap_style( "test_environment" )}
|
||||
<p/>
|
||||
<div class="toolForm">
|
||||
<div class="toolFormTitle">Automated tool test results</div>
|
||||
<div class="toolFormBody">
|
||||
<div class="card">
|
||||
<div class="card-header">Automated tool test results</div>
|
||||
<div class="card-body">
|
||||
<p/>
|
||||
<% row_counter = RowCounter() %>
|
||||
<table cellspacing="2" cellpadding="2" border="0" width="100%" class="tables container-table" id="test_environment">
|
||||
|
||||
Reference in New Issue
Block a user