47 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| $(function() {
 | |
|     /**
 | |
|      * Append 'ajax=1' parameter onto URL.
 | |
|      */
 | |
|     function ajaxize(url) {
 | |
|         if (url.indexOf('?') == '-1') {
 | |
|             return url + '?ajax=1';
 | |
|         } else {
 | |
|             return url + '&ajax=1';
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     var addMirror = $('#add-mirror');
 | |
|     var wizard = $('#add-mirror-wizard');
 | |
|     if (wizard.length > 0) {
 | |
|         var list = wizard.find('.provider-list');
 | |
|         var providers = list.find('.provider-heading');
 | |
|         providers.click(function(event) {
 | |
|             console.log(this);
 | |
|             var targetUrl = $(this).find('a').attr('href');
 | |
|             if (targetUrl) {
 | |
|                 // Make sure we don't accidentally follow the direct link
 | |
|                 event.preventDefault();
 | |
| 
 | |
|                 var node = this;
 | |
|                 function showNew() {
 | |
|                     var detail = $('<div class="provider-detail" style="display: none"></div>').insertAfter(node);
 | |
|                     detail.load(ajaxize(targetUrl), function(responseText, testStatus, xhr) {
 | |
|                         detail.slideDown('fast', function() {
 | |
|                             detail.find('input[type="text"]').focus();
 | |
|                         });
 | |
|                     });
 | |
|                 }
 | |
| 
 | |
|                 var old = addMirror.find('.provider-detail');
 | |
|                 if (old.length) {
 | |
|                     old.slideUp('fast', function() {
 | |
|                         old.remove();
 | |
|                         showNew();
 | |
|                     });
 | |
|                 } else {
 | |
|                     showNew();
 | |
|                 }
 | |
|             }
 | |
|         });
 | |
|     }
 | |
| }); |