Update sorting for folders.

This commit is contained in:
Kasen IO 2020-05-20 18:39:52 -04:00
parent 42b82884b3
commit bb1f26d581

View file

@ -149,11 +149,38 @@
> >
<v-icon>mdi-minus</v-icon> <v-icon>mdi-minus</v-icon>
</v-btn> </v-btn>
<v-btn medium tile color="blue" class="mx-1 folder-button"
@click="sortFolder(item.uuid);" <v-menu bottom left>
> <template v-slot:activator="{ on }">
<v-icon>mdi-ab-testing</v-icon> <v-btn
</v-btn> medium tile
color="blue"
class="mx-1 folder-button"
v-on="on"
>
<v-icon>mdi-sort</v-icon>
</v-btn>
</template>
<v-list color="grey darken-3">
<v-list-item
@click="sortFolder(item.uuid, 'az');"
>
<v-list-item-title>A-Z</v-list-item-title>
<v-list-item-action>
<v-icon large>mdi-sort-alphabetical-ascending</v-icon>
</v-list-item-action>
</v-list-item>
<v-list-item
@click="sortFolder(item.uuid, 'za');"
>
<v-list-item-title>Z-A</v-list-item-title>
<v-list-item-action>
<v-icon large>mdi-sort-alphabetical-descending</v-icon>
</v-list-item-action>
</v-list-item>
</v-list>
</v-menu>
</div> </div>
<v-container fluid> <v-container fluid>
@ -304,23 +331,40 @@ export default {
return returnedItemIconColor; return returnedItemIconColor;
}, },
sortFolder: function(uuid) { sortFolder: function(uuid, sort) {
var findFolder = this.searchForItem(uuid); var findFolder = this.searchForItem(uuid);
if (findFolder) { if (findFolder) {
findFolder.returnedItem.items.sort(function(a, b) { if (sort === "az") {
var nameA = a.name.toUpperCase(); // ignore upper and lowercase findFolder.returnedItem.items.sort(function(a, b) {
var nameB = b.name.toUpperCase(); // ignore upper and lowercase var nameA = a.name.toUpperCase(); // ignore upper and lowercase
if (nameA < nameB) { var nameB = b.name.toUpperCase(); // ignore upper and lowercase
return -1; if (nameA < nameB) {
} return -1;
if (nameA > nameB) { }
return 1; if (nameA > nameB) {
} return 1;
}
// names must be equal
return 0; // names must be equal
}); return 0;
});
}
if (sort === "za") {
findFolder.returnedItem.items.sort(function(a, b) {
var nameA = a.name.toUpperCase(); // ignore upper and lowercase
var nameB = b.name.toUpperCase(); // ignore upper and lowercase
if (nameA > nameB) {
return -1;
}
if (nameA < nameB) {
return 1;
}
// names must be equal
return 0;
});
}
} }
}, },
searchForItem: function(uuid) { searchForItem: function(uuid) {