| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 | 
							- (function($) {
 
-   Drupal.behaviors.backupMigrate = {
 
-     attach: function(context) {
 
-       if (Drupal.settings.backup_migrate !== undefined) { 
 
-         if (Drupal.settings.backup_migrate.dependents !== undefined) {
 
-           for (key in Drupal.settings.backup_migrate.dependents) {
 
-             info = Drupal.settings.backup_migrate.dependents[key];
 
-             dependent = $('#edit-' + info['dependent']);
 
-             for (key in info['dependencies']) {
 
-               $('[name="' + key + '"]').each(function() {
 
-                 var dependentval = info['dependencies'][key];
 
-                 var dependency = $(this);
 
-                 (function(dependent, dependency) {
 
-                   var checkval = function(inval) {
 
-                     if (dependency.attr('type') == 'radio') {
 
-                       var val = $('[name="' + dependency.attr('name') + '"]:checked').val();
 
-                       return val == inval;
 
-                     }
 
-                     else if (dependency.attr('type') == 'checkbox') {
 
-                       return dependency.attr('checked') && inval == dependency.val();
 
-                     }
 
-                     else {
 
-                       return dependency.val() == inval;
 
-                     }
 
-                     return false;
 
-                   };
 
-                   if (!checkval(dependentval)) {
 
-                     // Hide doesn't work inside collapsed fieldsets.
 
-                     dependent.css('display', 'none');
 
-                   }
 
-                   dependency.bind('load change click keypress focus', function() {
 
-                     if (checkval(dependentval)) {
 
-                       dependent.slideDown();
 
-                     }
 
-                     else {
 
-                       dependent.slideUp();
 
-                     }
 
-                   }).load();
 
-                 })(dependent, dependency);
 
-               });
 
-             }
 
-           }
 
-           for (key in Drupal.settings.backup_migrate.destination_selectors) {
 
-             var info = Drupal.settings.backup_migrate.destination_selectors[key];
 
-             (function(info) {
 
-               var selector = $('#' + info['destination_selector']);
 
-               var copy = $('#' + info['copy'])
 
-               var copy_selector = $('#' + info['copy_destination_selector']);
 
-               var copy_selector_options = {};
 
-               // Store a copy of the secondary selector options.
 
-               copy_selector.find('optgroup').each(function() {
 
-                 var label = $(this).attr('label');
 
-                 copy_selector_options[label] = [];
 
-                 $(this).find('option').each(function() {
 
-                   copy_selector_options[label].push(this); 
 
-                 });
 
-                 $(this).remove();
 
-               })
 
-               // Assign an action to the main selector to modify the secondary selector
 
-               selector.each(function() {
 
-                 $(this).bind('load change click keypress focus', function() {
 
-                   var group = $(this).find('option[value=' + $(this).val() + ']').parents('optgroup').attr('label');
 
-                   if (group) {
 
-                     copy.parent().find('.backup-migrate-destination-copy-label').text(info['labels'][group]);
 
-                     copy_selector.empty();
 
-                     for (var key in copy_selector_options) {
 
-                       if (key != group) {
 
-                         copy_selector.append(copy_selector_options[key]);
 
-                       }
 
-                     }
 
-                   }
 
-                 }).load();
 
-               });
 
-             })(info);
 
-           }
 
-           // Add the convert to checkboxes functionality to all multiselects.
 
-           $('#backup-migrate-ui-manual-backup-form select[multiple], #backup-migrate-crud-edit-form select[multiple]').each(function() {
 
-             var self = this;
 
-             $(self).after(
 
-               $('<div class="description backup-migrate-checkbox-link"></div>').append(
 
-                 $('<a>'+ Drupal.settings.backup_migrate.checkboxLinkText +'</a>').click(function() {
 
-                   var $select = $(self);
 
-                   var $checkboxes = $('<div></div>').addClass('backup-migrate-tables-checkboxes');
 
-                   $('option', $select).each(function(i) {
 
-                     $checkboxes.append(
 
-                       $('<div class="form-item"></div>').append(
 
-                         $('<label class="option backup-migrate-table-select">' + this.value + '</label>').prepend(
 
-                           $('<input type="checkbox" class="backup-migrate-tables-checkbox" name="'+ $select.attr('name') +'"'+ (this.selected ? 'checked="checked"' : '') +' value="'+ this.value +'"/>')
 
-                             .bind('click change load', function() {
 
-                                 if (this.checked) {
 
-                                   $(this).parent().addClass('checked');
 
-                                 }
 
-                                 else {
 
-                                   $(this).parent().removeClass('checked');
 
-                                 }
 
-                               }).load()
 
-                         )
 
-                       )
 
-                     );
 
-                   });
 
-                   $select.parent().find('.backup-migrate-checkbox-link').remove();
 
-                   $select.before($checkboxes);
 
-                   $select.hide();
 
-                 })
 
-               )
 
-             );
 
-           });
 
-         }
 
-       }
 
-     }
 
-   }
 
- })(jQuery);
 
 
  |