mirror of
https://github.com/overte-org/overte.git
synced 2025-08-09 13:09:52 +02:00
Fix the rest of the functions, folder checking needs rework.
This commit is contained in:
parent
8a216d88ad
commit
318faa3119
1 changed files with 65 additions and 30 deletions
|
@ -434,12 +434,13 @@ getIcon<!--
|
||||||
></v-text-field>
|
></v-text-field>
|
||||||
|
|
||||||
<v-select
|
<v-select
|
||||||
|
:items="folderList"
|
||||||
|
item-text="name"
|
||||||
|
item-value="uuid"
|
||||||
class="my-2"
|
class="my-2"
|
||||||
:items="folderListNames"
|
|
||||||
v-model="editDialog.data.folder"
|
v-model="editDialog.data.folder"
|
||||||
label="Folder"
|
label="Folder"
|
||||||
outlined
|
outlined
|
||||||
item-value="name"
|
|
||||||
></v-select>
|
></v-select>
|
||||||
|
|
||||||
<v-text-field
|
<v-text-field
|
||||||
|
@ -611,11 +612,12 @@ getIcon<!--
|
||||||
|
|
||||||
<v-select
|
<v-select
|
||||||
class="my-2"
|
class="my-2"
|
||||||
:items="folderListNames"
|
:items="folderList"
|
||||||
v-model="addDialog.data.folder"
|
v-model="addDialog.data.folder"
|
||||||
label="Folder"
|
label="Folder"
|
||||||
outlined
|
outlined
|
||||||
item-value="name"
|
item-text="name"
|
||||||
|
item-value="uuid"
|
||||||
></v-select>
|
></v-select>
|
||||||
|
|
||||||
<v-card-text>
|
<v-card-text>
|
||||||
|
@ -697,11 +699,12 @@ getIcon<!--
|
||||||
|
|
||||||
<v-select
|
<v-select
|
||||||
class="my-2"
|
class="my-2"
|
||||||
:items="folderListNames"
|
:items="folderList"
|
||||||
v-model="receiveDialog.data.folder"
|
v-model="receiveDialog.data.folder"
|
||||||
label="Folder"
|
label="Folder"
|
||||||
outlined
|
outlined
|
||||||
item-value="name"
|
item-text="name"
|
||||||
|
item-value="uuid"
|
||||||
></v-select>
|
></v-select>
|
||||||
|
|
||||||
<v-text-field
|
<v-text-field
|
||||||
|
@ -1046,8 +1049,7 @@ export default {
|
||||||
"recipient": null,
|
"recipient": null,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
folderListUUIDs: [],
|
folderList: [],
|
||||||
folderListNames: [],
|
|
||||||
nearbyUsers: [
|
nearbyUsers: [
|
||||||
{
|
{
|
||||||
name: "Who",
|
name: "Who",
|
||||||
|
@ -1097,8 +1099,14 @@ export default {
|
||||||
var uuid = s.join("");
|
var uuid = s.join("");
|
||||||
return uuid;
|
return uuid;
|
||||||
},
|
},
|
||||||
pushToItems: function(type, name, folder, url) {
|
pushToItems: function(type, name, folder, url, uuid) {
|
||||||
var generatedUUID = this.createUUID();
|
var uuidToUse;
|
||||||
|
|
||||||
|
if (uuid != null) {
|
||||||
|
uuidToUse = uuid;
|
||||||
|
} else {
|
||||||
|
uuidToUse = this.createUUID();
|
||||||
|
}
|
||||||
|
|
||||||
var itemToPush =
|
var itemToPush =
|
||||||
{
|
{
|
||||||
|
@ -1106,13 +1114,13 @@ export default {
|
||||||
"name": name,
|
"name": name,
|
||||||
"url": url,
|
"url": url,
|
||||||
"folder": folder,
|
"folder": folder,
|
||||||
"uuid": generatedUUID,
|
"uuid": uuidToUse,
|
||||||
};
|
};
|
||||||
|
|
||||||
this.items.push(itemToPush);
|
this.items.push(itemToPush);
|
||||||
|
|
||||||
if (folder !== "No Folder") {
|
if (folder !== null) {
|
||||||
this.moveItemToFolder(generatedUUID, folder);
|
this.moveItemToFolder(uuidToUse, folder);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
pushFolderToItems: function(name) {
|
pushFolderToItems: function(name) {
|
||||||
|
@ -1208,8 +1216,8 @@ export default {
|
||||||
} else {
|
} else {
|
||||||
itemType = this.checkFileType(detectedFileType[0]);
|
itemType = this.checkFileType(detectedFileType[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.pushToItems(itemType, folder, name, url);
|
this.pushToItems(itemType, name, folder, url, null);
|
||||||
|
|
||||||
this.addDialog.data.name = null;
|
this.addDialog.data.name = null;
|
||||||
this.addDialog.data.folder = null;
|
this.addDialog.data.folder = null;
|
||||||
|
@ -1230,9 +1238,18 @@ export default {
|
||||||
},
|
},
|
||||||
editItem: function(uuid) {
|
editItem: function(uuid) {
|
||||||
var findItem = this.searchForItem(uuid);
|
var findItem = this.searchForItem(uuid);
|
||||||
|
var folderName;
|
||||||
|
|
||||||
if (findItem.returnedItem.folder !== this.editDialog.data.folder && this.editDialog.data.folder !== null) {
|
for (var i = 0; i < this.folderList.length; i++) {
|
||||||
|
if (this.folderList[i].name === findItem.returnedItem.folder) {
|
||||||
|
folderName = this.folderList[i].name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (folderName !== this.editDialog.data.folder && this.editDialog.data.folder !== null) {
|
||||||
this.moveItemToFolder(uuid, this.editDialog.data.folder);
|
this.moveItemToFolder(uuid, this.editDialog.data.folder);
|
||||||
|
} else if (folderName == "No Folder") {
|
||||||
|
this.moveItemToTop(uuid);
|
||||||
}
|
}
|
||||||
|
|
||||||
findItem.returnedItem.type = this.checkItemType(this.editDialog.data.type);
|
findItem.returnedItem.type = this.checkItemType(this.editDialog.data.type);
|
||||||
|
@ -1272,6 +1289,7 @@ export default {
|
||||||
this.receiveDialog.data.name,
|
this.receiveDialog.data.name,
|
||||||
this.receiveDialog.data.folder,
|
this.receiveDialog.data.folder,
|
||||||
this.receiveDialog.data.url,
|
this.receiveDialog.data.url,
|
||||||
|
null
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
useItem: function(type, url) {
|
useItem: function(type, url) {
|
||||||
|
@ -1329,25 +1347,28 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getFolderList: function() {
|
getFolderList: function() {
|
||||||
this.folderListNames = ["No Folder"]; // We want to give the option to put it in the root directory.
|
this.folderList = [{
|
||||||
this.folderListUUIDs = ["No Folder"]; // Clear the list before pushing to it.
|
"name": "No Folder",
|
||||||
|
"uuid": null
|
||||||
|
}]; // We want to give the option to put it in the root directory.
|
||||||
|
|
||||||
for (var i = 0; i < this.items.length; i++) {
|
for (var i = 0; i < this.items.length; i++) {
|
||||||
if (Object.prototype.hasOwnProperty.call(this.items[i], "isFolder")) {
|
if (Object.prototype.hasOwnProperty.call(this.items[i], "isFolder")) {
|
||||||
if (this.items[i].isFolder === true) {
|
if (this.items[i].isFolder === true) {
|
||||||
this.folderListNames.push(this.items[i].name);
|
this.folderList.push({
|
||||||
this.folderListUUIDs.push(this.items[i].uuid);
|
"name": this.items[i].name,
|
||||||
|
"uuid": this.items[i].uuid,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
moveItemToFolder: function(uuid, folderName) {
|
moveItemToFolder: function(uuid, folderUUID) {
|
||||||
// This function is used to take an item one level deep, do not use it for any other purposes and check beforehand if you need to do this.
|
// This function is used to take an item one level deep, do not use it for any other purposes and check beforehand if you need to do this.
|
||||||
var folderUUID;
|
|
||||||
var itemToPush = {
|
var itemToPush = {
|
||||||
'type': null,
|
'type': null,
|
||||||
'name': null,
|
'name': null,
|
||||||
'folder': folderName,
|
'folder': null,
|
||||||
'url': null,
|
'url': null,
|
||||||
'uuid': uuid,
|
'uuid': uuid,
|
||||||
};
|
};
|
||||||
|
@ -1356,17 +1377,17 @@ export default {
|
||||||
itemToPush.type = findItem.returnedItem.type;
|
itemToPush.type = findItem.returnedItem.type;
|
||||||
itemToPush.name = findItem.returnedItem.name;
|
itemToPush.name = findItem.returnedItem.name;
|
||||||
itemToPush.url = findItem.returnedItem.url;
|
itemToPush.url = findItem.returnedItem.url;
|
||||||
|
|
||||||
// Get the folder UUID from the parallel folder UUID list.
|
// Get the folder UUID.
|
||||||
for (var i = 0; i < this.folderListNames.length; i++) {
|
for (var i = 0; i < this.folderList.length; i++) {
|
||||||
if (this.folderListNames[i] === folderName) {
|
if (this.folderList[i].uuid === folderUUID) {
|
||||||
folderUUID = this.folderListUUIDs[i];
|
itemToPush.folder = this.folderList[i].name;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Remove the old item before placing down the copy, we already got the attributes that we had wanted.
|
// Remove the old item before placing down the copy, we already got the attributes that we had wanted.
|
||||||
this.removeItem(uuid);
|
this.removeItem(uuid);
|
||||||
|
|
||||||
// Find that folder in our main items array.
|
// Find that folder in our main items array.
|
||||||
for (var folder = 0; folder < this.items.length; folder++) {
|
for (var folder = 0; folder < this.items.length; folder++) {
|
||||||
if (this.items[folder].uuid === folderUUID && this.items[folder].isFolder === true) {
|
if (this.items[folder].uuid === folderUUID && this.items[folder].isFolder === true) {
|
||||||
|
@ -1375,6 +1396,20 @@ export default {
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
|
moveItemToTop: function(uuid) {
|
||||||
|
var findItem = this.searchForItem(uuid);
|
||||||
|
|
||||||
|
// Remove the old item before placing down the copy, we already got the attributes that we had wanted.
|
||||||
|
this.removeItem(uuid);
|
||||||
|
|
||||||
|
this.pushToItems(
|
||||||
|
findItem.returnedItem.type,
|
||||||
|
findItem.returnedItem.name,
|
||||||
|
"No Folder",
|
||||||
|
findItem.returnedItem.url,
|
||||||
|
uuid
|
||||||
|
);
|
||||||
|
},
|
||||||
searchForItem: function(uuid) {
|
searchForItem: function(uuid) {
|
||||||
var itemToReturn = {
|
var itemToReturn = {
|
||||||
"returnedItem": null,
|
"returnedItem": null,
|
||||||
|
|
Loading…
Reference in a new issue