/**
 * $Id: ajax.js 978 2010-05-13 11:57:52Z xuwei $
 */

//var s_loading_content = '<img class="vam" src="' + skin_dir + 'images/ajax/ico_loading.gif" alt="" />&nbsp;&nbsp;&nbsp;' + __('000001');
//var s_loading_content = '<img class="vam" src="/images/ajax/ico_loading.gif" alt="" />&nbsp;&nbsp;&nbsp;' + __('000001');

/**
 * 设置全局Ajax动作
 *
 * @return null
 */
$.ajaxSetup(
{
	cache: false,
	timeout: 8000,
	beforeSend: function()
	{
		//set_page_loading('show', s_loading_content);
		$('#ajax_btn_post').attr('disabled', true);
	},
	success: function()
	{
		set_page_loading('hide');
	},
	complete: function()
	{
		set_page_loading('hide');
	},
	stop: function()
	{
		set_page_loading('hide');
	},
	error: function()
	{
		//alert(get_language('err_ajax_request'));
		set_page_loading('hide');
		//$('#ajax_btn_post').attr('disabled', false);
	}
});

/**
 * 页面遮罩效果
 *
 * @param string sAction 遮罩动作 show:显示 hide:不显示
 * @return null
 */
function set_page_overlay(sAction)
{
	var tag = $('#div_page_overlay');

	if (! tag.size())
	{
		$('body:first').append('<div id="div_page_overlay" class="alpha50_color"></div>');
		tag = $('#div_page_overlay');

		if ($.browser.msie)
		{
			if ($.browser.version == '6.0')
			{
				tag.removeClass('alpha50_png');
				tag.addClass('alpha50_color');
			}
		}
	}

	if (sAction == 'show')
	{
		tag.css({'height': $(document).height() + 'px'}).show();

		$('select').css('visibility', 'hidden');
		$('select.no_hide').css('visibility', 'visible');
		return;
	}
	$('#div_page_overlay').hide();
	$('select').css('visibility', 'visible');
}

/**
 * 页面 loading 效果
 *
 * @param string sAction 效果动作 show:显示 hide:不显示
 * @param string sContent 显示内容
 * @return null
 */
function set_page_loading(sAction, sContent)
{
	if (! $('#div_page_loading').is('div'))
	{
		$('body').append('<div id="div_page_loading"></div>');
		$('#div_page_loading').css(
		{
			position: 'absolute',
			top: '8px',
			right: '8px',
			display: 'none',
			zIndex: 6999
		});
	}

	$('#div_page_loading').html(sContent);

	$('#div_page_loading').css('top', parseInt($(document).scrollTop()) + 8 + 'px');

	sAction == 'show' ? $('#div_page_loading').show() : $('#div_page_loading').hide();
}

/**
 * 显示消息框
 *
 * 例子:

 set_msg_box(
 {
 	width: 100,
	height: 100,
	top: 100,
	left: 100,
	content: $('#sadsada').html()
 });

set_msg_box({action: 'hide'});

 * @param object oArguments 参数 目前有 width, height, top, left, content, action
 * @return null
 */
function set_msg_box(oArguments)
{
	if (! $('#div_msg_box').is('div'))
	{
		$('body').append('<div id="div_msg_box"></div>');
		$('#div_msg_box').css(
		{
			position: 'absolute',
			display: 'none',
			zIndex: 9999
		});
	}

	$('#div_msg_box').css('width',
		oArguments.width ?
		oArguments.width :
		'300px'
	);

	$('#div_msg_box').css('height',
		oArguments.height ?
		oArguments.height :
		'100px'
	);

	$('#div_msg_box').css('top',
		oArguments.top ?
		(parseInt($(document).scrollTop()) + parseInt(oArguments.top)) + 'px' :
		(parseInt($(document).scrollTop()) + 50) + 'px'
	);

	$('#div_msg_box').css('left',
		oArguments.left ?
		oArguments.left :
		Math.ceil(($(document).width() - parseInt($('#div_msg_box').css('width'))) / 2)
	);

	$('#div_msg_box').html(oArguments.content);

	if (oArguments.action == 'show')
	{
		set_page_overlay('show');
		$('#div_msg_box').show();
		function_exists(oArguments.callback) && oArguments.callback.call(oArguments.callback);
		return;
	}
	$('#div_msg_box').hide();
	set_page_overlay('hide');
	function_exists(oArguments.callback2) && oArguments.callback2.call(oArguments.callback2);
}

/**
 * 消息框滚动
 *
 * @return null
 */
$(window).scroll(function()
{
	$('#div_survey').css('top', (parseInt($(document).scrollTop())) + 'px');

	$('#div_more_content').css('top', (parseInt($(document).scrollTop()) - 200) + 'px');

	if (parseInt($('#div_more_content').css('top')) < 700)
	{
		$('#div_more_content').css('top', '700px');
	}

	if ($('#div_msg_box').css('display') != 'block')
	{
		return false;
	}
	$('#div_msg_box').css('top', (parseInt($(document).scrollTop()) + 50) + 'px');
});
