function drillGroup(group_id, hash, index)
{
	if ( $('#subrow-'+index).length ) {
		if ( $('#subrow-'+index).css("display") == "none" ) {
			$('.subrow-'+index).show();
			$('#zoom-link-'+index).addClass('icon-zoom-out');
		}
		else {
			$('.subrow-'+index).hide();
			$('#zoom-link-'+index).removeClass('icon-zoom-out');
		}
		return;
	}
	else {
		$('#zoom-link-'+index).addClass('icon-progress');
	}

	$.post(base_url+'account/links/drilldown/'+group_id+(hash ? 'x'+hash : '')+'/'+index, {},
		function(response) {
			response = JSON.parse(response);
			if ( response.status == 'ok' ) {
				$('#row-'+index).after(response.results);
			}
			$('#zoom-link-'+index).removeClass('icon-progress');
			$('#zoom-link-'+index).addClass('icon-zoom-out');
		}
	);
}

function editGroup(group_id)
{
	$('#group-submit-label').addClass('icon-progress');
	$.post(base_url+'account/links/edit_group/'+group_id,
		{'name':$('#group-name').val(),'alias':$('#group-alias').val(),'password':$('#group-password').val(),'brand_show':$('#group-brand-show').val(),'brand_link':$('#group-brand-link').val(),'brand_name':$('#group-brand-name').val(),'do-edit-group':1},
		function(response) {
			response = JSON.parse(response);
			if ( response.status == 'ok' ) {
				$('#group-details').html(response.results);

				if ( response.error != 'pending' ) {
					$('#group-name-label').html($('#group-name').val() != '' ? nicetrim($('#group-name').val(), 32, 1) : 'None');

					if ( $('#group-alias').val() != '' ) {
						$('#group-toolbar-label a').attr('href', base_url+'ga/'+$('#group-alias').val());
						$('#group-toolbar-label a').html(base_url+'ga/'+nicetrim($('#group-alias').val(), 32, 1));
						$('#group-list-label a').attr('href', base_url+'la/'+$('#group-alias').val());
						$('#group-list-label a').html(base_url+'la/'+nicetrim($('#group-alias').val(), 32, 1));
						$('#group-random-label a').attr('href', base_url+'ra/'+$('#group-alias').val());
						$('#group-random-label a').html(base_url+'ra/'+nicetrim($('#group-alias').val(), 32, 1));
					}
					else {
						$('#group-toolbar-label a').attr('href', base_url+'g/'+$('#group-token').val());
						$('#group-toolbar-label a').html(base_url+'g/'+nicetrim($('#group-token').val(), 32, 1));
						$('#group-list-label a').attr('href', base_url+'l/'+$('#group-token').val());
						$('#group-list-label a').html(base_url+'l/'+nicetrim($('#group-token').val(), 32, 1));
						$('#group-random-label a').attr('href', base_url+'r/'+$('#group-token').val());
						$('#group-random-label a').html(base_url+'r/'+nicetrim($('#group-token').val(), 32, 1));
					}

					if ( $('#group-brand-link').val() ) {
						$('#group-brand-label').html('<a href="'+htmlentities($('#group-brand-link').val())+'" target="_blank">'+nicetrim(($('#group-brand-name').val() ? $('#group-brand-name').val() : $('#group-brand-link').val()), 36, 1)+'</a>');
					}
					else {
						$('#group-brand-label').html(nicetrim(($('#group-brand-name').val() ? $('#group-brand-name').val() : 'None'), 36, 1));
					}

					$('#group-password-label').html($('#group-password').val() != '' ? htmlentities($('#group-password').val()) : 'None');

					toggleObject('group-details');
				}
			}
		}
	);
}

function editLink(group_id, link_id, index)
{
	$('#link-submit-'+index+'-label').addClass('icon-progress');
	$.post(base_url+'account/links/edit_link/'+group_id+'/'+link_id+'/'+index, {'link':$('#link-url-'+index).val(),'name':$('#link-name-'+index).val(),'alias':$('#link-alias-'+index).val(),'do-edit-link':1},
		function(response) {
			response = JSON.parse(response);
			if ( response.status == 'ok' ) {
				$('#subrow-'+index).html(response.results);
				if ( link_id ) {
					if ( response.error != 'pending' ) {
						if ( $('#link-alias-'+index).val() != '' ) {
							$('#link-'+index+'-label').attr('href', base_url+'sa/'+htmlentities($('#link-alias-'+index).val()));
						}
						else {
							$('#link-'+index+'-label').attr('href', base_url+'s/'+htmlentities($('#link-token-'+index).val()));
						}
						$('#link-'+index+'-label').html(htmlentities($('#link-name-'+index).val() != '' ? $('#link-name-'+index).val() : $('#link-'+index+'-label').attr('href')));
						$('#link-'+index+'-short-url').html('<a href="'+$('#link-'+index+'-label').attr('href')+'" target="_blank">'+$('#link-'+index+'-label').attr('href')+'</a>');
						toggleObject('subrow-'+index);
					}
				}
				else {
					if ( response.error != 'pending' ) {
						window.location = $('#form-edit-link-'+index).attr('action');
					}
				}
			}
		}
	);
}

function editSingleLink(link_id, index)
{
	$('#link-submit-'+index+'-label').addClass('icon-progress');
	$.post(base_url+'account/links/edit_link/0/'+link_id+'/'+index, {'link':$('#link-url-'+index).val(),'name':$('#link-name-'+index).val(),'alias':$('#link-alias-'+index).val(),'password':$('#link-password-'+index).val(),'do-edit-link':1},
		function(response) {
			response = JSON.parse(response);
			if ( response.status == 'ok' ) {
				$('#link-details').html(response.results);
				if ( response.error != 'pending' ) {
					$('#link-name-label').html($('#link-name-'+index).val() != '' ? nicetrim($('#link-name-'+index).val(), 32, 1) : 'None');

					if ( $('#link-alias-'+index).val() != '' ) {
						$('#link-list-label a').attr('href', base_url+'sa/'+$('#link-alias-'+index).val());
						$('#link-list-label a').html(base_url+'sa/'+nicetrim($('#link-alias-'+index).val(), 32, 1));
					}
					else {
						$('#link-list-label a').attr('href', base_url+'s/'+$('#link-token-'+index).val());
						$('#link-list-label a').html(base_url+'s/'+nicetrim($('#link-token-'+index).val(), 32, 1));
					}

					$('#link-password-label').html($('#link-password-'+index).val() != '' ? htmlentities($('#link-password-'+index).val()) : 'None');
					toggleObject('link-details');
				}
			}
		}
	);
}

function removeLink(question, url, container, process)
{
	if ( confirm(question) == true ) {
		$('#'+process).addClass('icon-progress');
		$.post(url, {},
			function(response) {
				$('#'+process).removeClass('icon-progress');
				$('#'+container).remove();
				$('#sub'+container).remove();
			}
		);
		return true;
	}
}

function switchLinkback(val)
{
	if ( val == 2 ) {
		$('#group-brand-name-wrap').show();
		$('#group-brand-link-wrap').show();
	}
	else {
		$('#group-brand-name-wrap').hide();
		$('#group-brand-link-wrap').hide();
	}
}

function switchLinkType(type)
{
	if ( type == 'multi' ) {
		$('#links-single').val(0);
		$('#links-grid-single').hide();
		$('#links-grid-multi').show();
		$('#link-switch-mode').show();
		$('#group-name-box').show();
		$('#group-alias-box label').html('Group alias');
	}
	else {
		$('#links-single').val(1);
		$('#links-grid-multi').hide();
		$('#link-switch-mode').hide();
		$('#group-name-box').hide();
		$('#links-grid-single').show();
		$('#group-alias-box label').html('Link alias');
	}
}

function switchLinkMode()
{
	switchObjects('links-grid-simple', 'links-grid-batch');
	if ( $('#links-batch').val() == 0 ) {
		$('#links-batch').val(1);
		$('#link-switch-mode').html('Switch to regular mode')
	}
	else {
		$('#links-batch').val(0);
		$('#link-switch-mode').html('Switch to batch mode')
	}
}

function addLinkFields(max)
{
	var cnt = $('#links-grid-simple li').length - 1;
	var link = '<li>' +
		'<label for="url-item-{idx}" class="url">URL {num}</label><span><input type="text" name="link_{idx}" value="http://" id="url-item-{idx}" maxlength="255" class="text small"  /></span>' +
		'<label for="url-name-{idx}" class="anchor">Name {num}</label><span><input type="text" name="name_{idx}" value="" id="url-name-{idx}" maxlength="255" class="text small"  /></span>' +
		'<br />' +
		'</li>';

	if ( cnt >= max ) {
		alert('You may not add more than '+max+' links per group.');
		return;
	}

	var links = '';
	for ( var i = cnt; i < (cnt + 5); i++ ) {
		var temp_link = link;
		temp_link = temp_link.replace(/{idx}/ig, i);
		links = links + temp_link.replace(/{num}/ig, (i+1));
	}
	$('#add-links').before(links);
}
