forked from GNUsocial/gnu-social
		
	
		
			
				
	
	
		
			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();
 | 
						|
                }
 | 
						|
            }
 | 
						|
        });
 | 
						|
    }
 | 
						|
}); |