Fixes coflicts and Merge branch 'develop' of https://github.com/tainacan/tainacan into develop
This commit is contained in:
commit
11a28b188d
|
@ -18,6 +18,7 @@
|
|||
"vue": "^2.5.17",
|
||||
"vue-router": "^3.0.1",
|
||||
"vue-the-mask": "^0.11.1",
|
||||
"vue2-hammer": "^1.0.7",
|
||||
"vuedraggable": "^2.16.0",
|
||||
"vuex": "^3.0.1"
|
||||
},
|
||||
|
|
|
@ -642,4 +642,47 @@
|
|||
|
||||
}
|
||||
|
||||
.advanced-search-header-dropdown {
|
||||
height: 27px !important;
|
||||
|
||||
.dropdown-content {
|
||||
width: 800px !important;
|
||||
}
|
||||
|
||||
.dropdown-item:hover {
|
||||
background-color: unset !important;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1087px) {
|
||||
.dropdown-menu {
|
||||
top: 0 !important;
|
||||
}
|
||||
}
|
||||
|
||||
.dropdown-item {
|
||||
span.icon:not(.is-right) {
|
||||
position: relative !important;
|
||||
}
|
||||
}
|
||||
|
||||
.advanced-search-text {
|
||||
margin: 0 12px;
|
||||
font-size: 12px;
|
||||
color: $blue5;
|
||||
}
|
||||
|
||||
.advanced-search-text-di {
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
color: #01295c;
|
||||
margin-top: 4px;
|
||||
}
|
||||
|
||||
.advanced-search-hr {
|
||||
height: 1px;
|
||||
margin: 8px 0;
|
||||
background-color: #298596;
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
|
@ -908,6 +908,9 @@ export default {
|
|||
padding: 4px 6px;
|
||||
.icon { font-size: 20px; }
|
||||
&.disabled {
|
||||
pointer-events: none;
|
||||
cursor: not-allowed;
|
||||
|
||||
.icon { color: $gray2; }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -694,7 +694,7 @@ export default {
|
|||
font-weight: bold;
|
||||
margin-left: 0.4em;
|
||||
display: inline-block;
|
||||
max-width: 200px;
|
||||
max-width: 180px;
|
||||
}
|
||||
&:after,
|
||||
&:before {
|
||||
|
|
|
@ -1,32 +1,50 @@
|
|||
<template>
|
||||
<div>
|
||||
<div class="terms-list-header">
|
||||
<button
|
||||
class="button is-secondary"
|
||||
type="button"
|
||||
@click="addNewTerm()">
|
||||
{{ $i18n.get('label_new_term') }}
|
||||
</button>
|
||||
<b-field class="order-area">
|
||||
<button
|
||||
:disabled="orderedTermsList.length <= 0 || isLoadingTerms || isEditingTerm || order == 'asc'"
|
||||
class="button is-white is-small"
|
||||
@click="onChangeOrder('asc')">
|
||||
<b-icon
|
||||
class="gray-icon"
|
||||
icon="sort-ascending"/>
|
||||
</button>
|
||||
<button
|
||||
:disabled="orderedTermsList.length <= 0 || isLoadingTerms || isEditingTerm || order == 'desc'"
|
||||
class="button is-white is-small"
|
||||
@click="onChangeOrder('desc')">
|
||||
<b-icon
|
||||
class="gray-icon"
|
||||
icon="sort-descending"/>
|
||||
</button>
|
||||
</b-field>
|
||||
<div class="search-area is-hidden-mobile">
|
||||
<div class="control has-icons-right is-small is-clearfix">
|
||||
<input
|
||||
class="input is-small"
|
||||
:placeholder="$i18n.get('instruction_search')"
|
||||
type="search"
|
||||
autocomplete="on"
|
||||
v-model="searchQuery"
|
||||
@keyup.enter="loadTerms(0)"
|
||||
:disabled="isEditingTerm">
|
||||
<span
|
||||
@click="loadTerms(0)"
|
||||
class="icon is-right">
|
||||
<i class="mdi mdi-magnify" />
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="columns">
|
||||
<div class="column">
|
||||
<button
|
||||
class="button is-secondary"
|
||||
type="button"
|
||||
@click="addNewTerm()">
|
||||
{{ $i18n.get('label_new_term') }}
|
||||
</button>
|
||||
<b-field class="order-area">
|
||||
<button
|
||||
:disabled="orderedTermsList.length <= 0 || isLoadingTerms || isEditingTerm || order == 'asc'"
|
||||
class="button is-white is-small"
|
||||
@click="onChangeOrder('asc')">
|
||||
<b-icon
|
||||
class="gray-icon"
|
||||
icon="sort-ascending"/>
|
||||
</button>
|
||||
<button
|
||||
:disabled="orderedTermsList.length <= 0 || isLoadingTerms || isEditingTerm || order == 'desc'"
|
||||
class="button is-white is-small"
|
||||
@click="onChangeOrder('desc')">
|
||||
<b-icon
|
||||
class="gray-icon"
|
||||
icon="sort-descending"/>
|
||||
</button>
|
||||
</b-field>
|
||||
|
||||
<br>
|
||||
<br>
|
||||
<div
|
||||
class="term-item"
|
||||
|
@ -107,6 +125,7 @@
|
|||
:active.sync="isLoadingTerms"
|
||||
:can-cancel="false"/>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
@ -123,7 +142,8 @@ export default {
|
|||
formWithErrors: '',
|
||||
orderedTermsList: [],
|
||||
order: 'asc',
|
||||
termEditionFormTop: 0
|
||||
termEditionFormTop: 0,
|
||||
searchQuery: ''
|
||||
}
|
||||
},
|
||||
props: {
|
||||
|
@ -371,7 +391,8 @@ export default {
|
|||
loadTerms(parentId) {
|
||||
|
||||
this.isLoadingTerms = true;
|
||||
this.fetchChildTerms({ parentId: parentId, taxonomyId: this.taxonomyId, fetchOnly: '', search: '', all: '', order: this.order})
|
||||
let search = (this.searchQuery != undefined && this.searchQuery != '') ? { searchterm: this.searchQuery } : '';
|
||||
this.fetchChildTerms({ parentId: parentId, taxonomyId: this.taxonomyId, fetchOnly: '', search: search, all: '', order: this.order})
|
||||
.then(() => {
|
||||
// Fill this.form data with current data.
|
||||
this.isLoadingTerms = false;
|
||||
|
@ -395,19 +416,51 @@ export default {
|
|||
|
||||
@import "../../scss/_variables.scss";
|
||||
|
||||
.order-area {
|
||||
display: inline-flex !important;
|
||||
padding: 4px;
|
||||
margin-left: 30px;
|
||||
.terms-list-header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: flex-start;
|
||||
|
||||
.gray-icon, .gray-icon .icon {
|
||||
color: $gray4 !important;
|
||||
.order-area {
|
||||
display: inline-flex !important;
|
||||
padding: 4px;
|
||||
margin-left: auto;
|
||||
|
||||
.gray-icon, .gray-icon .icon {
|
||||
color: $gray4 !important;
|
||||
}
|
||||
.gray-icon .icon i::before, .gray-icon i::before {
|
||||
font-size: 21px !important;
|
||||
}
|
||||
}
|
||||
.gray-icon .icon i::before, .gray-icon i::before {
|
||||
font-size: 21px !important;
|
||||
|
||||
.search-area {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
|
||||
.input {
|
||||
border: 1px solid $gray2;
|
||||
}
|
||||
.control {
|
||||
width: 100%;
|
||||
.icon {
|
||||
pointer-events: all;
|
||||
cursor: pointer;
|
||||
color: $blue5;
|
||||
height: 27px;
|
||||
font-size: 18px !important;
|
||||
height: 2rem !important;
|
||||
}
|
||||
}
|
||||
a {
|
||||
margin-left: 12px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
.term-item {
|
||||
font-size: 14px;
|
||||
padding: 0.7em 0.9em;
|
||||
|
|
|
@ -148,7 +148,7 @@
|
|||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
<style lang="scss" scoped>
|
||||
|
||||
@import "../../scss/_variables.scss";
|
||||
|
||||
|
@ -219,49 +219,6 @@
|
|||
width: 30px !important;
|
||||
}
|
||||
}
|
||||
|
||||
.advanced-search-header-dropdown {
|
||||
height: 27px !important;
|
||||
|
||||
.dropdown-content {
|
||||
width: 800px !important;
|
||||
}
|
||||
|
||||
.dropdown-item:hover {
|
||||
background-color: unset;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1087px) {
|
||||
.dropdown-menu {
|
||||
top: 0 !important;
|
||||
}
|
||||
}
|
||||
|
||||
.dropdown-item {
|
||||
span.icon:not(.is-right) {
|
||||
position: relative !important;
|
||||
}
|
||||
}
|
||||
|
||||
.advanced-search-text {
|
||||
margin: 0 12px;
|
||||
font-size: 12px;
|
||||
color: $blue5;
|
||||
}
|
||||
|
||||
.advanced-search-text-di {
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
color: #01295c;
|
||||
margin-top: 4px;
|
||||
}
|
||||
|
||||
.advanced-search-hr {
|
||||
height: 1px;
|
||||
margin: 8px 0;
|
||||
background-color: #298596;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -5,7 +5,8 @@
|
|||
// Main imports
|
||||
import Vue from 'vue';
|
||||
import Buefy from 'buefy';
|
||||
import VTooltip from 'v-tooltip'
|
||||
import VTooltip from 'v-tooltip';
|
||||
import { VueHammer } from 'vue2-hammer';
|
||||
|
||||
// Custom elements
|
||||
import Text from '../../classes/metadata-types/text/Text.vue';
|
||||
|
@ -47,6 +48,7 @@ import VueTheMask from 'vue-the-mask';
|
|||
// Configure and Register Plugins
|
||||
Vue.use(Buefy);
|
||||
Vue.use(VTooltip);
|
||||
Vue.use(VueHammer);
|
||||
Vue.use(I18NPlugin);
|
||||
Vue.use(UserPrefsPlugin);
|
||||
Vue.use(RouterHelperPlugin);
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
// Main imports
|
||||
import Vue from 'vue';
|
||||
import Buefy from 'buefy';
|
||||
import VTooltip from 'v-tooltip'
|
||||
import VTooltip from 'v-tooltip';
|
||||
import { VueHammer } from 'vue2-hammer';
|
||||
|
||||
// Custom elements
|
||||
import Text from '../../classes/metadata-types/text/Text.vue';
|
||||
|
@ -43,7 +44,8 @@ import { I18NPlugin, UserPrefsPlugin, RouterHelperPlugin, ConsolePlugin } from '
|
|||
|
||||
// Configure and Register Plugins
|
||||
Vue.use(Buefy);
|
||||
Vue.use(VTooltip)
|
||||
Vue.use(VTooltip);
|
||||
Vue.use(VueHammer);
|
||||
Vue.use(I18NPlugin);
|
||||
Vue.use(UserPrefsPlugin);
|
||||
Vue.use(RouterHelperPlugin);
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<template>
|
||||
<div
|
||||
v-hammer:swipe.right="onSwipeFiltersMenuRight"
|
||||
:class="{'repository-level-page': isRepositoryLevel}">
|
||||
|
||||
<!-- SEARCH AND FILTERS --------------------- -->
|
||||
|
@ -575,11 +576,15 @@
|
|||
!openAdvancedSearch"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<b-modal
|
||||
id="filters-mobile-modal"
|
||||
ref="filters-mobile-modal"
|
||||
class="tainacan-form is-hidden-tablet"
|
||||
:active.sync="isFilterModalActive"
|
||||
:width="736">
|
||||
:width="736"
|
||||
animation="slide-menu"
|
||||
v-hammer:swipe.left="onSwipeFiltersMenuLeft">
|
||||
<div class="modal-inner-content">
|
||||
<h3 class="has-text-weight-semibold">{{ $i18n.get('filters') }}</h3>
|
||||
<a
|
||||
|
@ -750,6 +755,16 @@
|
|||
'getTotalItems',
|
||||
'getAdminViewMode'
|
||||
]),
|
||||
onSwipeFiltersMenuRight() {
|
||||
let screenWidth = 400;//window.screen.width;
|
||||
|
||||
if (!this.isFilterModalActive && screenWidth <= 768)
|
||||
this.isFilterModalActive = true;
|
||||
},
|
||||
onSwipeFiltersMenuLeft() {
|
||||
if (this.isFilterModalActive)
|
||||
this.isFilterModalActive = false;
|
||||
},
|
||||
onOpenImportersModal() {
|
||||
this.$modal.open({
|
||||
parent: this,
|
||||
|
@ -1250,9 +1265,11 @@
|
|||
|
||||
.search-control-item {
|
||||
display: inline-block;
|
||||
margin-bottom: 12px;
|
||||
|
||||
&:last-child {
|
||||
flex-grow: 1;
|
||||
flex-basis: 100%;
|
||||
}
|
||||
|
||||
.button {
|
||||
|
@ -1362,7 +1379,7 @@
|
|||
.table-container {
|
||||
padding-left: 4.166666667%;
|
||||
padding-right: 4.166666667%;
|
||||
min-height: 500px;
|
||||
min-height: 50vh;
|
||||
//height: calc(100% - 82px);
|
||||
}
|
||||
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
.taginput-container {
|
||||
padding: 0 !important;
|
||||
background-color: white !important;
|
||||
|
@ -42,7 +43,10 @@
|
|||
&:focus, &:active {
|
||||
border: none !important;
|
||||
}
|
||||
.input { margin-bottom: 0px !important; }
|
||||
.input {
|
||||
margin-bottom: 0px !important;
|
||||
height: 1.85rem !important;
|
||||
}
|
||||
.input.has-selected, .input:focus, .input:active {
|
||||
background-color: white;
|
||||
border: 1px solid $gray2 !important;
|
||||
|
|
|
@ -1,38 +1,4 @@
|
|||
#filters-mobile-modal {
|
||||
// top: 95px;
|
||||
@keyframes slide-menu {
|
||||
from {
|
||||
-ms-transform: translate(-100%, 0); /* IE 9 */
|
||||
-webkit-transform: translate(-100%, 0); /* Safari */
|
||||
transform: translate(-100%, 0);
|
||||
}
|
||||
to {
|
||||
-ms-transform: translate(0, 0); /* IE 9 */
|
||||
-webkit-transform: translate(0, 0); /* Safari */
|
||||
transform: translate(0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
animation-name: slide-menu;
|
||||
animation-duration: 0.3s;
|
||||
animation-timing-function: ease-out;
|
||||
|
||||
@keyframes appear {
|
||||
from {
|
||||
opacity: 0.0;
|
||||
visibility: hidden;
|
||||
}
|
||||
to {
|
||||
opacity: 1.0;
|
||||
visibility: visible;
|
||||
}
|
||||
}
|
||||
|
||||
.modal-background {
|
||||
animation-name: appear;
|
||||
animation-duration: 0.6s;
|
||||
animation-timing-function: ease-in;
|
||||
}
|
||||
#filters-mobile-modal {
|
||||
|
||||
.modal-close {
|
||||
right: calc(8.3333333% + 20px);
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
max-width: 100%;
|
||||
overflow: hidden;
|
||||
|
||||
&:hover{
|
||||
background-color: $gray2;
|
||||
&:hover, &:hover .tag {
|
||||
background-color: $gray1;
|
||||
}
|
||||
|
||||
.tag {
|
||||
|
@ -20,5 +20,14 @@
|
|||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
|
||||
&.is-delete {
|
||||
border-radius: 50px !important;
|
||||
border-radius: 50px !important;
|
||||
|
||||
&:hover {
|
||||
background-color: white !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -151,4 +151,77 @@ $table-cell-padding: 1.0em 0.75em;
|
|||
$family-sans-serif: 'Roboto', sans-serif;
|
||||
|
||||
// Bulma's modal (needs to be greather than taincan-admin-app)
|
||||
$modal-z: 9999999;
|
||||
$modal-z: 9999999;
|
||||
|
||||
// Animations for Slide Menu
|
||||
@keyframes slide-menu-in {
|
||||
from {
|
||||
-ms-transform: translate(-100%, 0); /* IE 9 */
|
||||
-webkit-transform: translate(-100%, 0); /* Safari */
|
||||
transform: translate(-100%, 0);
|
||||
}
|
||||
to {
|
||||
-ms-transform: translate(0, 0); /* IE 9 */
|
||||
-webkit-transform: translate(0, 0); /* Safari */
|
||||
transform: translate(0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes slide-menu-out {
|
||||
from {
|
||||
-ms-transform: translate(0, 0); /* IE 9 */
|
||||
-webkit-transform: translate(0, 0); /* Safari */
|
||||
transform: translate(0, 0);
|
||||
}
|
||||
to {
|
||||
-ms-transform: translate(-100%, 0); /* IE 9 */
|
||||
-webkit-transform: translate(-100%, 0); /* Safari */
|
||||
transform: translate(-100%, 0);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes appear {
|
||||
from {
|
||||
opacity: 0.0;
|
||||
visibility: hidden;
|
||||
}
|
||||
to {
|
||||
opacity: 1.0;
|
||||
visibility: visible;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes disappear {
|
||||
from {
|
||||
opacity: 0.3;
|
||||
visibility: visible;
|
||||
}
|
||||
to {
|
||||
opacity: 0.0;
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
.slide-menu-enter-active {
|
||||
animation-name: slide-menu-in;
|
||||
animation-duration: 0.3s;
|
||||
animation-timing-function: ease-out;
|
||||
|
||||
.modal-background {
|
||||
animation-name: appear;
|
||||
animation-duration: 0.6s;
|
||||
animation-timing-function: ease-out;
|
||||
}
|
||||
}
|
||||
.slide-menu-leave-active {
|
||||
animation-name: slide-menu-out;
|
||||
animation-duration: 0.3s;
|
||||
animation-timing-function: ease-in;
|
||||
|
||||
.modal-background {
|
||||
opacity: 0.0;
|
||||
animation-name: disappear;
|
||||
animation-duration: 0.2s;
|
||||
animation-timing-function: ease-in;
|
||||
}
|
||||
}
|
|
@ -1,5 +1,5 @@
|
|||
.tainacan-cards-container {
|
||||
min-height: 200px;
|
||||
min-height: 50vh;
|
||||
padding: 0;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.tainacan-grid-container {
|
||||
min-height: 200px;
|
||||
min-height: 50vh;
|
||||
padding: 0;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.tainacan-records-container {
|
||||
min-height: 200px;
|
||||
min-height: 50vh;
|
||||
padding: 0;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
|
|
@ -186,66 +186,5 @@ export default {
|
|||
}
|
||||
}
|
||||
|
||||
#filters-mobile-modal {
|
||||
// top: 95px;
|
||||
@keyframes slide-menu {
|
||||
from {
|
||||
-ms-transform: translate(-100%, 0); /* IE 9 */
|
||||
-webkit-transform: translate(-100%, 0); /* Safari */
|
||||
transform: translate(-100%, 0);
|
||||
}
|
||||
to {
|
||||
-ms-transform: translate(0, 0); /* IE 9 */
|
||||
-webkit-transform: translate(0, 0); /* Safari */
|
||||
transform: translate(0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
animation-name: slide-menu;
|
||||
animation-duration: 0.3s;
|
||||
animation-timing-function: ease-out;
|
||||
|
||||
@keyframes appear {
|
||||
from {
|
||||
opacity: 0.0;
|
||||
visibility: hidden;
|
||||
}
|
||||
to {
|
||||
opacity: 1.0;
|
||||
visibility: visible;
|
||||
}
|
||||
}
|
||||
|
||||
.modal-background {
|
||||
animation-name: appear;
|
||||
animation-duration: 0.6s;
|
||||
animation-timing-function: ease-in;
|
||||
}
|
||||
|
||||
.modal-close {
|
||||
right: calc(8.3333333% + 20px);
|
||||
background-color: $gray1;
|
||||
|
||||
&:hover {
|
||||
background-color: $gray1;
|
||||
}
|
||||
&::before, &::after {
|
||||
background-color: $secondary;
|
||||
}
|
||||
}
|
||||
.modal-content {
|
||||
margin: 0 8.3333333% 0 0;
|
||||
padding: 24px $page-side-padding;
|
||||
border-radius: 0;
|
||||
height: 100%;
|
||||
max-height: 100%;
|
||||
overflow-y: auto;
|
||||
|
||||
h3 {
|
||||
font-size: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -181,6 +181,8 @@ export const fetchTerms = ({ commit }, {taxonomyId, fetchOnly, search, all, orde
|
|||
query = `?order=${order}&${qs.stringify(fetchOnly)}&${qs.stringify(search)}`;
|
||||
} else if(fetchOnly && search && all ){
|
||||
query = `?hideempty=0&order=${order}&${qs.stringify(fetchOnly)}&${qs.stringify(search)}`;
|
||||
} else if(search && !all && !fetchOnly){
|
||||
query = `?hideempty=0&order=${order}&${qs.stringify(search)}`;
|
||||
} else {
|
||||
query =`?hideempty=0&order=${order}`;
|
||||
}
|
||||
|
@ -205,12 +207,15 @@ export const fetchChildTerms = ({ commit }, { parentId, taxonomyId, fetchOnly, s
|
|||
order = 'asc';
|
||||
}
|
||||
|
||||
if (fetchOnly && search && !all) {
|
||||
if(fetchOnly && search && !all ){
|
||||
query = `?order=${order}&${qs.stringify(fetchOnly)}&${qs.stringify(search)}`;
|
||||
} else if (fetchOnly && search && all) {
|
||||
} else if(fetchOnly && search && all ){
|
||||
query = `?hideempty=0&order=${order}&${qs.stringify(fetchOnly)}&${qs.stringify(search)}`;
|
||||
} else if(search && !all && !fetchOnly){
|
||||
console.log(search)
|
||||
query = `?hideempty=0&order=${order}&${qs.stringify(search)}`;
|
||||
} else {
|
||||
query = `?hideempty=0&order=${order}`;
|
||||
query =`?hideempty=0&order=${order}`;
|
||||
}
|
||||
query += '&parent=' + parentId;
|
||||
|
||||
|
|
Loading…
Reference in New Issue