]> git.immae.eu Git - github/wallabag/wallabag.git/blobdiff - themes/default/js/popupForm.js
Improving JavaScript for popup forms
[github/wallabag/wallabag.git] / themes / default / js / popupForm.js
index eb6d1ae203657e17d94c6519a22c8c324ef8463c..d233e600f3d837d0bac1bf7c2bae5aa1c7bbcd3c 100644 (file)
@@ -1,29 +1,72 @@
 $(document).ready(function() {
 
     $("#search-form").hide();
+    $("#bagit-form").hide();
 
-    function closeSearch() {
+    //---------------------------------------------------------------------------
+    // Toggle the "Search" popup in the sidebar
+    //---------------------------------------------------------------------------
+    function toggleSearch() {
         $("#search-form").toggle();
         $("#search").toggleClass("current");
+        $("#search").toggleClass("active-current");
         $("#search-arrow").toggleClass("arrow-down");
+        if ($("#search").hasClass("current")) {
+            $("#content").addClass("opacity03");
+        } else {
+            $("#content").removeClass("opacity03");
+        }
     }
 
-    $("#search").click(function(){
-        closeSearch();
-        // if other popup is already shown
-        if ($("#bagit-form").length != 0) {
-            $("#bagit").removeClass("active-current");
-            $('#content').removeClass("opacity03");
-            $("#bagit").removeClass("current");
-            $("#bagit-arrow").removeClass("arrow-down");
-            $("#bagit-form").hide();
+    //---------------------------------------------------------------------------
+    // Toggle the "Save a Link" popup in the sidebar
+    //---------------------------------------------------------------------------
+    function toggleBagit() {
+        $("#bagit-form").toggle();
+        $("#bagit").toggleClass("current");
+        $("#bagit").toggleClass("active-current");
+        $("#bagit-arrow").toggleClass("arrow-down");
+        if ($("#bagit").hasClass("current")) {
+            $("#content").addClass("opacity03");
+        } else {
+            $("#content").removeClass("opacity03");
         }
-        $('#searchfield').focus();
+    }
+
+    //---------------------------------------------------------------------------
+    // Close all #links popups in the sidebar
+    //---------------------------------------------------------------------------
+    function closePopups() {
+        $("#links .messages").hide();
+        $("#links > li > a").removeClass("active-current");
+        $("#links > li > a").removeClass("current");
+        $("[id$=-arrow]").removeClass("arrow-down");
+        $("#content").removeClass("opacity03");
+    }
+
+    $("#search").click(function(){
+        closePopups();
+        toggleSearch();
+        $("#searchfield").focus();
+    });
+
+    $("#bagit").click(function(){
+        closePopups();
+        toggleBagit();
+        $("#plainurl").focus();
     });
 
     $("#search-form-close").click(function(){
-        closeSearch();
+        toggleSearch();
     });
 
+    $("#bagit-form-close").click(function(){
+        toggleBagit();
+    });
+
+    // $("#").click(function(){
+    //     toggleSearch();
+    // });
+
 
-});
\ No newline at end of file
+});