diff --git a/client/app.js b/client/app.js
index d197137..e745a18 100644
--- a/client/app.js
+++ b/client/app.js
@@ -400,12 +400,17 @@ async function deleteModel(modelId) {
// Collections Functions
async function loadCollections() {
try {
- const response = await fetch(`${API_BASE}/collections`);
+ const headers = {};
+ if (authToken) {
+ headers['Authorization'] = `Bearer ${authToken}`;
+ }
+
+ const response = await fetch(`${API_BASE}/collections`, { headers });
const data = await response.json();
- allCollections = data.collections;
+ allCollections = data.collections || [];
const collectionsList = document.getElementById('collectionsList');
- if (data.collections.length > 0) {
+ if (data.collections && data.collections.length > 0) {
collectionsList.innerHTML = data.collections.map(collection => `
@@ -420,10 +425,14 @@ async function loadCollections() {
// Update upload modal collection select
const uploadCollectionSelect = document.getElementById('uploadCollection');
uploadCollectionSelect.innerHTML = '' +
- data.collections.map(c => ``).join('');
+ (data.collections ? data.collections.map(c => ``).join('') : '');
} catch (error) {
console.error('Error loading collections:', error);
+ const collectionsList = document.getElementById('collectionsList');
+ if (collectionsList) {
+ collectionsList.innerHTML = 'Error loading collections';
+ }
}
}
@@ -471,12 +480,17 @@ function showCollections() {
// Tags Functions
async function loadTags() {
try {
- const response = await fetch(`${API_BASE}/tags`);
+ const headers = {};
+ if (authToken) {
+ headers['Authorization'] = `Bearer ${authToken}`;
+ }
+
+ const response = await fetch(`${API_BASE}/tags`, { headers });
const data = await response.json();
- allTags = data.tags;
+ allTags = data.tags || [];
const tagsList = document.getElementById('tagsList');
- if (data.tags.length > 0) {
+ if (data.tags && data.tags.length > 0) {
const topTags = data.tags.sort((a, b) => b.model_count - a.model_count).slice(0, 10);
tagsList.innerHTML = topTags.map(tag => `
@@ -488,6 +502,10 @@ async function loadTags() {
}
} catch (error) {
console.error('Error loading tags:', error);
+ const tagsList = document.getElementById('tagsList');
+ if (tagsList) {
+ tagsList.innerHTML = 'Error loading tags';
+ }
}
}