Add view switcher

This commit is contained in:
aignatov-bio 2020-06-15 15:52:50 +02:00
parent 8b10d49118
commit e9830ebfee
5 changed files with 51 additions and 17 deletions

View file

@ -467,7 +467,7 @@ var RepositoryDatatable = (function(global) {
if (!row.recordEditable) {
icon = `<i class="repository-row-lock-icon fas fa-lock" title="${I18n.t('repositories.table.locked_item')}"></i>`;
} else if (EDITABLE) {
icon = '<i class="repository-row-edit-icon fas fa-pencil-alt"></i>';
icon = '<i class="repository-row-edit-icon fas fa-pencil-alt" data-view-mode="active"></i>';
} else {
icon = '';
}

View file

@ -147,6 +147,16 @@
});
}
function initRepositoryViewSwitcher() {
var viewSwitch = $('.view-switch');
viewSwitch.on('click', '.view-switch-archived', function() {
$('.repository-show').toggleClass('archived active');
});
viewSwitch.on('click', '.view-switch-active', function() {
$('.repository-show').toggleClass('archived active');
});
}
$('#shareRepoBtn').on('ajax:success', function() {
initShareModal();
});
@ -154,4 +164,5 @@
$('.create-new-repository').initializeModal('#create-repo-modal');
initImportRecordsModal();
initTable();
initRepositoryViewSwitcher();
}(window));

View file

@ -17,6 +17,18 @@
transition: .4s $timing-function-sharp;
width: calc(100vw - var(--repository-sidebar-margin));
&.active {
[data-view-mode="archived"] {
display: none !important;
}
}
&.archived {
[data-view-mode="active"] {
display: none !important;
}
}
#repository-toolbar {
align-items: center;
@ -47,10 +59,10 @@
}
.repository-title-name {
@include font-h2;
display: flex;
flex-direction: column;
flex-grow: 1;
font-size: 18px;
line-height: 32px;
margin-right: 20px;
overflow: hidden;
@ -79,6 +91,14 @@
}
}
.repository-archived-title-name {
@include font-h2;
flex-grow: 1;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.repository-subtitle {
color: $color-silver-chalice;
font-size: 12px;

View file

@ -7,7 +7,7 @@
<% end %>
<% if can_create_repository_rows?(@repository) %>
<button type="button" class="btn btn-primary editAdd" id="addRepositoryRecord" onclick="onClickAddRecord()">
<button type="button" class="btn btn-primary editAdd" id="addRepositoryRecord" onclick="onClickAddRecord()" data-view-mode="active">
<span class="fas fa-plus"></span>
<span class="hidden-xs"><%= t("repositories.add_new_record") %></span>
</button>
@ -16,7 +16,7 @@
<% if can_manage_repository_rows?(@repository) %>
<span id="editDeleteCopy" data-toggle="buttons" style="display:none">
<%if can_update_repository_rows?(@repository) %>
<button type="button" class="btn btn-light editAdd" id="editRepositoryRecord" onclick="onClickEdit()" disabled>
<button type="button" class="btn btn-light editAdd" id="editRepositoryRecord" onclick="onClickEdit()" disabled data-view-mode="active">
<span class="fas fa-pencil-alt"></span>
<span class="hidden-xs-custom"><%= t("repositories.edit_record") %></span>
</button>
@ -24,7 +24,7 @@
<% if can_create_repository_rows?(@repository) %>
<button type="button" class="btn btn-light copyRow" id="copyRepositoryRecords" onclick="onClickCopyRepositoryRecords()" disabled>
<button type="button" class="btn btn-light copyRow" id="copyRepositoryRecords" onclick="onClickCopyRepositoryRecords()" disabled data-view-mode="active">
<span class="fas fa-copy"></span>
<span class="hidden-xs-custom"><%= t("repositories.copy_record") %></span>
</button>
@ -32,7 +32,7 @@
<% if can_delete_repository_rows?(@repository) %>
<button type="button" class="btn btn-light"
id="archiveRepositoryRecordsButton" onclick="onClickArchiveRepositoryRecords()" disabled>
id="archiveRepositoryRecordsButton" onclick="onClickArchiveRepositoryRecords()" disabled data-view-mode="active">
<span class="fas fa-archive"></span>
<span class="hidden-xs-custom"><%= t'repositories.archive_record' %></span>
<%= submit_tag I18n.t('repositories.delete_record'), :class => "hidden delete_repository_records_submit" %>
@ -42,11 +42,11 @@
</span>
<span id="saveCancel" data-toggle="buttons" style="display:none">
<button type="button" class="btn btn-success" id="saveRecord">
<button type="button" class="btn btn-success" id="saveRecord" data-view-mode="active">
<span class="fas fa-save"></span>
<%= t("repositories.save_record") %>
</button>
<button type="button" class="btn btn-light" id="cancelSave">
<button type="button" class="btn btn-light" id="cancelSave" data-view-mode="active">
<span class="fas fa-times-circle"></span>
<%= t("repositories.cancel_save") %>
</button>

View file

@ -9,9 +9,9 @@
<%= render partial: "sidebar", locals: { repositories: @repositories } %>
<div id="alert-container"></div>
<div class="content-pane repository-show" data-table-url="<%= load_table_repository_path(@repository) %>">
<div class="content-pane repository-show active" data-table-url="<%= load_table_repository_path(@repository) %>">
<div id="repository-toolbar" class="content-header">
<div class="repository-title-name">
<div class="repository-title-name" data-view-mode="active">
<h2 class="name-container">
<% if @inline_editable_title_config.present? %>
<%= render partial: "shared/inline_editing",
@ -33,8 +33,11 @@
<div class="repository-subtitle"><%= t('repositories.subtitle', team_name: team_name) %></div>
<% end %>
</div>
<div class="repository-archived-title-name" data-view-mode="archived">
Archived <%= @repository.name %>
</div>
<div class="repo-datatables-buttons">
<div class="share-repository-button">
<div class="share-repository-button" data-view-mode="active">
<% if can_share_repository?(@repository) && current_user.teams.count > 1 %>
<%= link_to team_repository_share_modal_path(current_team, repository_id: @repository),
class: 'btn btn-secondary share-repo-option', remote: true, id: 'shareRepoBtn' do %>
@ -66,21 +69,21 @@
<% if can_perform_repository_actions(@repository) %>
<ul class="dropdown-menu pull-right">
<% if can_create_repository_rows?(@repository) %>
<li>
<li data-view-mode="active">
<a href="#" id="importRecordsButton" data-turbolinks="false">
<%= t('repositories.index.options_dropdown.import_items') %>
</a>
<li>
</li>
<% end %>
<% if can_read_repository?(@repository) %>
<li>
<li >
<a href="#" id="exportRepositoriesButton" data-turbolinks="false">
<%= t("repositories.index.options_dropdown.export_items") %>
</a>
</li>
<% end %>
<% if can_create_repositories?(current_team) && !@repository.shared_with?(current_team) %>
<li>
<li data-view-mode="active">
<%= link_to t('repositories.index.options_dropdown.copy'),
team_repository_copy_modal_path(current_team, repository_id: @repository),
class: "copy-repo-option",
@ -88,8 +91,8 @@
</li>
<% end %>
<% if can_manage_repository?(@repository) %>
<li data-hook="destroy-repository-option" role="separator" class="divider"></li>
<li data-hook="destroy-repository-option">
<li data-view-mode="active" data-hook="destroy-repository-option" role="separator" class="divider"></li>
<li data-view-mode="active" data-hook="destroy-repository-option">
<%= link_to t('repositories.index.options_dropdown.delete'),
team_repository_destroy_modal_path(current_team, repository_id: @repository),
class: "delete-repo-option",