Version 0.1.0
This commit is contained in:
@@ -0,0 +1,81 @@
|
||||
/**
|
||||
* Folder Metadata functionality for Gallery
|
||||
*
|
||||
* Handles folder metadata dropdown display and interaction
|
||||
*/
|
||||
|
||||
// Define function immediately (not waiting for DOM)
|
||||
window.toggleFolderMetadata = function() {
|
||||
console.log('toggleFolderMetadata called');
|
||||
|
||||
const container = document.querySelector('.folder-metadata-container');
|
||||
const content = document.getElementById('folderMetadataContent');
|
||||
|
||||
if (!container) {
|
||||
console.log('No metadata container found');
|
||||
return;
|
||||
}
|
||||
|
||||
if (!content) {
|
||||
console.log('No metadata content found');
|
||||
return;
|
||||
}
|
||||
|
||||
const isExpanded = container.classList.contains('expanded');
|
||||
console.log('Current state - expanded:', isExpanded);
|
||||
|
||||
if (isExpanded) {
|
||||
// Collapse
|
||||
container.classList.remove('expanded');
|
||||
content.style.display = 'none';
|
||||
console.log('Collapsed dropdown');
|
||||
} else {
|
||||
// Expand
|
||||
container.classList.add('expanded');
|
||||
content.style.display = 'block';
|
||||
console.log('Expanded dropdown');
|
||||
}
|
||||
|
||||
// Save state
|
||||
localStorage.setItem('folderMetadataExpanded', (!isExpanded).toString());
|
||||
};
|
||||
|
||||
// Also define as regular function for alternative access
|
||||
function toggleFolderMetadata() {
|
||||
window.toggleFolderMetadata();
|
||||
}
|
||||
|
||||
// Toggle long text display
|
||||
window.toggleMetadataText = function(button) {
|
||||
const longText = button.previousElementSibling;
|
||||
const fullText = button.nextElementSibling;
|
||||
|
||||
if (fullText.style.display === 'none') {
|
||||
longText.style.display = 'none';
|
||||
fullText.style.display = 'inline';
|
||||
button.textContent = 'Show less';
|
||||
} else {
|
||||
longText.style.display = 'inline';
|
||||
fullText.style.display = 'none';
|
||||
button.textContent = 'Show more';
|
||||
}
|
||||
};
|
||||
|
||||
// Initialize folder metadata on page load
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
console.log('Folder metadata script loaded');
|
||||
|
||||
// Make sure all containers start collapsed
|
||||
const containers = document.querySelectorAll('.folder-metadata-container');
|
||||
console.log('Found', containers.length, 'metadata containers');
|
||||
|
||||
containers.forEach(container => {
|
||||
const content = container.querySelector('.folder-metadata-content');
|
||||
if (content) {
|
||||
// Force initial hidden state
|
||||
container.classList.remove('expanded');
|
||||
content.style.display = 'none';
|
||||
console.log('Initialized container as collapsed');
|
||||
}
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user