c097f0680ecdba9efc984b878c435077cc2631f0
[yaffs-website] / web / modules / contrib / simple_sitemap / js / simple_sitemap.sitemapEntities.js
1 /**
2  * @file
3  * Attaches simple_sitemap behaviors to the sitemap entities form.
4  */
5 (function($) {
6
7   "use strict";
8
9   Drupal.behaviors.simple_sitemapSitemapEntities = {
10     attach: function(context, settings) {
11       var allEntities = settings.simple_sitemap.all_entities;
12       var atomicEntities = settings.simple_sitemap.atomic_entities;
13
14       // Hide the 'Regenerate sitemap' field to only display it if settings have changed.
15       $('.form-item-simple-sitemap-regenerate-now').hide();
16
17       $.each(allEntities, function(index, value) {
18
19         // On load: hide all warning messages.
20         $('#warning-' + value).hide();
21
22         // On change: Show or hide warning message dependent on 'enabled' checkbox.
23         var enabledId = '#edit-' + value + '-enabled';
24         $(enabledId).change(function() {
25           if ($(enabledId).is(':checked')) {
26             $('#warning-' + value).hide();
27           }
28           else {
29             $('#warning-' + value).show();
30           }
31
32           // Show 'Regenerate sitemap' field if 'enabled' setting has changed.
33           $('.form-item-simple-sitemap-regenerate-now').show();
34         });
35       });
36
37       // Show priority settings if atomic entity enabled on form load.
38       $.each(atomicEntities, function(index, value) {
39         var enabledId = '#edit-' + value + '-enabled';
40         var priorityId = '.form-item-' + value + '-simple-sitemap-priority';
41
42         // On load: Show or hide priority setting dependent on 'enabled' checkbox.
43         if ($(enabledId).is(':checked')) {
44           $(priorityId).show();
45         }
46         else {
47           $(priorityId).hide();
48         }
49
50         // On change: Show or hide priority setting dependent on 'enabled' checkbox.
51         $(enabledId).change(function() {
52           if ($(enabledId).is(':checked')) {
53             $(priorityId).show();
54           }
55           else {
56             $(priorityId).hide();
57           }
58         });
59
60         // Show 'Regenerate sitemap' field if 'priority' setting has changed.
61         $(priorityId).change(function() {
62           $('.form-item-simple-sitemap-regenerate-now').show();
63         });
64       });
65     }
66   };
67 })(jQuery);