$(document).ready(function() {
	$('div.rating-stars-selected').
		each(function (i, el) {
			var me = $(el);
			$(el).attr('origwidth', $(el).css('width'));
		}).
		mouseleave(function() {
			var me = $(this);
			me.width(me.attr('origwidth'));
		}).
		find('a').
			mouseenter(function() {
				var me = $(this);
				me.parent().parent().width((me.attr('rel') * 20) + '%');
			}).
			click(function() {
				var me = $(this);//.attr('rel'));
				
				me.parent().parent().parent().parent().parent().parent().startLoading();

		        $.ajax({
		            type: 'POST',
		            'form-submit': 'true',
		            url: '/form/CMSFormsLayoutsRating?param=' + me.parent().attr('layout_id'),
		            data: {
                    	layout_rate: me.attr('rel'),
                    	'form-submit': 'true'
                    },
		            dataType: 'json',
		            error: function(req, data) {
                    	me.parent().parent().parent().parent().parent().parent().stopLoading();
                    	me.parent().parent().parent().parent().parent().parent().find('p.msg').text('Server response error');
                    	
                    },
		            success: function(data, textstatus) {
                    	me.parent().parent().parent().parent().parent().parent().stopLoading();
                    	
                    	if (data && data.result) {

                    		if (data.result.rateperc) {
                    			me.parent().parent().attr('origwidth', data.result.rateperc).css('width', data.result.rateperc);
                    		}

                    		if (data.result.message) {
                    			me.parent().parent().parent().parent().parent().find('p.msg').text(data.result.message);
                    		}
                    	} else if (data && data.errors && data.errors.layout_rate) {
                    		me.parent().parent().parent().parent().parent().find('p.msg').text(data.errors.layout_rate);
                    	} else {
                    		me.parent().parent().parent().parent().parent().find('p.msg').text('Server response error');
                    	}
                    }
		        });
				
				return false;
			});
});
