Version 1
[yaffs-website] / web / modules / contrib / simple_sitemap / js / simple_sitemap.sitemapEntities.js
diff --git a/web/modules/contrib/simple_sitemap/js/simple_sitemap.sitemapEntities.js b/web/modules/contrib/simple_sitemap/js/simple_sitemap.sitemapEntities.js
new file mode 100644 (file)
index 0000000..c097f06
--- /dev/null
@@ -0,0 +1,67 @@
+/**
+ * @file
+ * Attaches simple_sitemap behaviors to the sitemap entities form.
+ */
+(function($) {
+
+  "use strict";
+
+  Drupal.behaviors.simple_sitemapSitemapEntities = {
+    attach: function(context, settings) {
+      var allEntities = settings.simple_sitemap.all_entities;
+      var atomicEntities = settings.simple_sitemap.atomic_entities;
+
+      // Hide the 'Regenerate sitemap' field to only display it if settings have changed.
+      $('.form-item-simple-sitemap-regenerate-now').hide();
+
+      $.each(allEntities, function(index, value) {
+
+        // On load: hide all warning messages.
+        $('#warning-' + value).hide();
+
+        // On change: Show or hide warning message dependent on 'enabled' checkbox.
+        var enabledId = '#edit-' + value + '-enabled';
+        $(enabledId).change(function() {
+          if ($(enabledId).is(':checked')) {
+            $('#warning-' + value).hide();
+          }
+          else {
+            $('#warning-' + value).show();
+          }
+
+          // Show 'Regenerate sitemap' field if 'enabled' setting has changed.
+          $('.form-item-simple-sitemap-regenerate-now').show();
+        });
+      });
+
+      // Show priority settings if atomic entity enabled on form load.
+      $.each(atomicEntities, function(index, value) {
+        var enabledId = '#edit-' + value + '-enabled';
+        var priorityId = '.form-item-' + value + '-simple-sitemap-priority';
+
+        // On load: Show or hide priority setting dependent on 'enabled' checkbox.
+        if ($(enabledId).is(':checked')) {
+          $(priorityId).show();
+        }
+        else {
+          $(priorityId).hide();
+        }
+
+        // On change: Show or hide priority setting dependent on 'enabled' checkbox.
+        $(enabledId).change(function() {
+          if ($(enabledId).is(':checked')) {
+            $(priorityId).show();
+          }
+          else {
+            $(priorityId).hide();
+          }
+        });
+
+        // Show 'Regenerate sitemap' field if 'priority' setting has changed.
+        $(priorityId).change(function() {
+          $('.form-item-simple-sitemap-regenerate-now').show();
+        });
+      });
+    }
+  };
+})(jQuery);