/**
 * @author ask
 */
var GroupSearch = {
	init : function()
	{
		GroupSearch.GroupCategories.cb = jQuery('#categoryId');
		GroupSearch.GroupCategories.scb = jQuery('#subcategoryId');
		GroupSearch.GroupCategories.pri = jQuery('#processIndicator');
		GroupSearch.GroupCategories.subcat = jQuery('#gr-subcategory');
		GroupSearch.GroupCategories.cb.bind('change', GroupSearch.GroupCategories.loadSubcategories);
		if(parseInt(jQuery('#subcategoryId2').val()) > 0)
		{
			GroupSearch.GroupCategories.bSubCatMustBeInitializedOnLoad = true;
		}
		GroupSearch.GroupCategories.loadSubcategories();
	},

	GroupCategories : {
		cb : null,
		scb : null,
		pri : null,
		bSubCatMustBeInitializedOnLoad : false,

		loadSubcategories : function(){
			var cid = parseInt(GroupSearch.GroupCategories.cb.val());
			GroupSearch.GroupCategories.subcat.hide();
			GroupSearch.GroupCategories.scb.empty();
			GroupSearch.GroupCategories.scb.append('<OPTION value="0">' + document.getElementById('hidden-lex').value + '</OPTION>');
			if(cid < 1)
			{
				return;
			}
			GroupSearch.GroupCategories.pri.show();
			var options = {
				data: {
					handler: 'AJAX_JSON_Groups',
					__callHandler: 'getSubcategories',
					'cid' : cid
				},
				callback: GroupSearch.GroupCategories.loadSubcategoriesCallBack
			};
			jQuery.mrAjax(options);
		},

		loadSubcategoriesCallBack : function(status, data)
		{
			var a = data.Response;
			var l = a.length;
			if(l > 0)
			{
				for(var i=0; i<l; i++)
				{
					GroupSearch.GroupCategories.scb.append('<OPTION value="' + a[i].id + '">' + a[i].name + '</OPTION>');
				}
				if(GroupSearch.GroupCategories.bSubCatMustBeInitializedOnLoad)
				{
					GroupSearch.GroupCategories.scb.val(jQuery('#subcategoryId2').val());
					GroupSearch.GroupCategories.bSubCatMustBeInitializedOnLoad = false;
				}
				else
				{
					GroupSearch.GroupCategories.scb.val(0);
				}
			}
			GroupSearch.GroupCategories.pri.hide();
			GroupSearch.GroupCategories.subcat.fadeIn(200);
		}
	}
};
jQuery(function(){
	GroupSearch.init();
});