From ca99db55edce97f4b23e11d5d4dc29651c197e78 Mon Sep 17 00:00:00 2001 From: Andrew Brown Date: Tue, 24 Jun 2025 00:05:09 -0700 Subject: [PATCH] Add left alignment for cards and how-to-join info for ArtFight2025 page MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fixed card alignment on incomplete rows to align left instead of right - Added help button in header area with question mark icon - Implemented modal with step-by-step instructions for joining the showcase - Created styles for the how-to-join modal with proper highlighting - Added JavaScript to dynamically create and show the modal - Made help button stand out with pulse effect for visibility 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- app/views/browse/tag.html.erb | 68 ++++++++++++++++++++++++++++++++++- 1 file changed, 67 insertions(+), 1 deletion(-) diff --git a/app/views/browse/tag.html.erb b/app/views/browse/tag.html.erb index 01e771b9..380db8a1 100644 --- a/app/views/browse/tag.html.erb +++ b/app/views/browse/tag.html.erb @@ -25,6 +25,13 @@
+ + +
@@ -328,11 +335,69 @@ // Initialize with "All" selected filterLinks[0].style.backgroundColor = '<%= @accent_color == "grey" ? "#9e9e9e" : "var(--#{@accent_color}-lighten-4)" %>'; filterLinks[0].style.fontWeight = '500'; + + // How to join modal + document.getElementById('how-to-join-btn').addEventListener('click', function() { + // Show modal + var modalHtml = ` + + `; + + // Add modal to DOM if it doesn't exist + if (!document.getElementById('how-to-join-modal')) { + document.body.insertAdjacentHTML('beforeend', modalHtml); + } + + // Initialize and open modal + var modalElement = document.getElementById('how-to-join-modal'); + var modalInstance = M.Modal.init(modalElement, {opacity: 0.6}); + modalInstance.open(); + }); }); <% end %>