/** NEW REPORTING STUFF **/
var current_entity_id = false;
var ld_report_change = false;
var ld_plot_objects = new Array();
var ld_entity_ribbon_states = new Array();
var reporting_swish_rate = 150;
var option_return_data = "";
var disable_entity_selection = false;
var m_in = false;
var m_out = false;
ribbon_toggle_states['design_mode'] = false;

window.onbeforeunload = function () {
	if(ld_report_change)
		return "You have not saved this report yet. If you continue, any changes will not be saved.";
}

function rpt_exit() {
	
}

function rpt_url() {
	var the_url = "";
	the_url = "/"+$.url.attr("file");
	if($.url.param("l")=="ldview") {
		the_url+= "?l="+$.url.param("l");
		the_url+= "&r="+$.url.param("r");
		the_url+= "&p="+$.url.param("p");
		the_url+= "&rh="+$.url.param("rh");
	} else {
		the_url+= "?link="+$.url.param("link");
		the_url+= "&sublink="+$.url.param("sublink");
		the_url+= "&rid="+$.url.param("rid");
	}
	return the_url;
}

function rpt_set_option(entity_id, optkey, optvalue, fn) {
	$.get(rpt_url()+"&ajax=1&entity_id="+entity_id+"&ldaction=setopt&entity_keydata["+optkey+"]="+optvalue, function(data) {
		if(fn) fn();
	});
}

function rpt_get_option(entity_id, optkey, fn) {
	$.get(rpt_url()+"&ajax=1&entity_id="+entity_id+"&ldaction=getopt&entity_key="+optkey, function(data) {
		 option_return_data = data;
		 if(fn) fn();
	});
}

function rpt_set_template_option(optkey, optvalue, fn) {
	$.get(rpt_url()+"&ajax=1&ldaction=settopt&template_keydata["+optkey+"]="+optvalue, function(data) {
		if(fn) fn();
	});
}

function rpt_get_template_option(optkey, fn) {
	$.get(rpt_url()+"&ajax=1&ldaction=gettopt&template_key="+optkey, function(data) {
		 option_return_data = data;
		 if(fn) fn();
	});
}

function rpt_reload_report() {
	toggle_screen(true, true);
	$.get(rpt_url()+"&ajax=1", function(data) {
		 $("#ld_page_main").html(data);
		 toggle_screen(false);
		 if(current_entity_id!=false) {
			var c = current_entity_id;
			current_entity_id = false;
			rpt_toggle_entity(c);
		 }
	});
}

$(window).resize(function() {
	rpt_resize_graphs();
});

function rpt_resize_graphs() {
	for ( var entity_id in ld_plot_objects )
		rpt_resize_graph(entity_id);
		
}

function rpt_resize_graph(entity_id) {
	var phold = null;
	var popts = null;
	var pdata = null;
	
	var pnew_opts = null;
	var pnew_data = new Array();
	var graph_type = null;

	plotobject = ld_plot_objects[entity_id];
	if(ld_plot_objects[entity_id]) {
		top_height = $("#ld_entity_"+entity_id+" .ld_entity_display_text").height()+parseInt($("#ld_entity_"+entity_id+" .ld_entity_display_text").css("margin-top"))+parseInt($("#ld_entity_"+entity_id+" .ld_entity_display_text").css("margin-bottom"));
		if($("#ld_entity_"+entity_id+" .ld_graph_source_data").css("display")!="none") {
			bottom_height = $("#ld_entity_"+entity_id+" .ld_graph_source_data").height()+parseInt($("#ld_entity_"+entity_id+" .ld_graph_source_data").css("margin-top"))+parseInt($("#ld_entity_"+entity_id+" .ld_graph_source_data").css("margin-bottom"));
		} else {
			bottom_height = 0;
		}
		margin = parseInt($("#ld_entity_"+entity_id+" .ld_entity_data").css("margin-top"))+parseInt($("#ld_entity_"+entity_id+" .ld_entity_data").css("margin-bottom"))+parseInt($("#ld_entity_"+entity_id+" .ld_entity_data").css("padding-top"))+parseInt($("#ld_entity_"+entity_id+" .ld_entity_data").css("padding-bottom"));
		graph_size = $("#ld_entity_"+entity_id).height()-top_height-bottom_height-margin;
		$("#ld_entity_"+entity_id+" .ld_graph").height(graph_size);
		
		phold = plotobject.getPlaceholder();
		popts = plotobject.getOptions();
		pdata = plotobject.getData();

		if(ld_entity_ribbon_states[entity_id]['bar_graph']) {
			pnew_data = [{ data : pdata[0]['data'], bars : pdata[0]['bars'] }];
			pnew_opts = popts;
		} else if(ld_entity_ribbon_states[entity_id]['pie_chart']) {
			for (var series in pdata)
				pnew_data[series] = { label: pdata[series]['label'], data: pdata[series]['data'] };
			pnew_opts = { series : { pie: popts['series']['pie'] }, legend: popts['legend'] };
		} else if(ld_entity_ribbon_states[entity_id]['line_graph']) {
			for (var series in pdata)
				pnew_data[series] = { label: pdata[series]['label'], data: pdata[series]['data'] };
			pnew_opts = popts;
		}

		p = $.plot(phold, pnew_data, pnew_opts);
	}
}

function rpt_create_autobreak(entity_id) {
	dialog("Create Auto Break", "Please enter a name for the break", "prompt", "", function() {
		if(trigger=="ok")
			$.get(rpt_url()+"&ajax=1&entity_id="+entity_id+"&ldaction=createautobreak&break_name="+dialog_prompt_val, function(data) {
			$('#select_break_select').dropdownchecklist("addOption", dialog_prompt_val, data);
			dialog("Create Auto Break", "Break successfully created!");
		});
	});
}

function rpt_export_entity(entity_id) {
	window.open(rpt_url()+"&ldaction=regen&ajax=1&excel_export=1&entity_id="+entity_id);
}

function rpt_show_meanscores(entity_id) {
	toggle_screen(true, true);
	
		
	if(ribbon_toggle_states['mean_score']) {
		rpt_set_option(entity_id, "ms_show", 'true', function() {
			toggle_ribbon_control_enabled('mean_score_direction', true);
			ld_entity_ribbon_states[entity_id]['ms_show'] = true;
			rpt_reload_entity(entity_id);
			toggle_ribbon_control_enabled('standard_deviation', true);
			toggle_ribbon_control_enabled('standard_error', true);
			
		});
	} else {
		rpt_set_option(entity_id, "ms_show", 'false', function() {
			toggle_ribbon_control_enabled('mean_score_direction', false);
			ld_entity_ribbon_states[entity_id]['ms_show'] = false;
			rpt_reload_entity(entity_id);
			toggle_button('edit_scales', null, false);
			disable_entity_selection = false;
			toggle_ribbon_control_enabled('standard_deviation', false);
			toggle_ribbon_control_enabled('standard_error', false);
			
		});
	}
}

function rpt_edit_scales(entity_id, direction, force_state) {
	if(force_state!=null)
		toggle_button('edit_scales', null, force_state);
		
	if(ribbon_toggle_states['edit_scales']) {
		if(direction==0) {
			disable_entity_selection = true;
			var tbl_row = $('#ld_entity_'+entity_id+' .ld_entity_data table').tbl("insertRow",{
				row			: 0,
				cellTypes	: { 'all' : 'td', 0: 'th' },
				cellClasses	: { 'all' : 'ld_mean_scores', 0: 'ld_save_scales ld_save_scales_horiz' },
				rowClass	: 'ld_mean_scores_row ld_data_row'
			}), c=0, scales = new Array(), s_value, e=0;
			if(ld_entity_ribbon_states[entity_id]['ms_scale'])
				scales = ld_entity_ribbon_states[entity_id]['ms_scale'].split(",")
			var cols = $('#ld_entity_'+entity_id+' .ld_entity_data table tr').get(1);
			$("td,th", tbl_row).each(function() {
				if($($("th", cols).get(c)).hasClass("ld_header_col")) {
					s_value = scales[e]?scales[e]:e+1;
					$(this).html('<input type="text" class="ms_scale" id="ms_scale_'+e+'" name="ms_scale_'+e+'" size="4" maxlength="4" value="'+s_value+'" />')
					e++;
				}
				c++;
			});
			$("th", tbl_row).html(rpt_draw_inline_updateframe());
		} else {
			disable_entity_selection = true;			
			var tbl_col = $('#ld_entity_'+entity_id+' .ld_entity_data table').tbl("insertCol",{
				col			: 0,
				cellTypes	: { 'all' : 'td', 0: 'th' },
				cellClasses	: { 'all' : 'ld_mean_scores', 0: 'ld_save_scales ld_save_scales_vert' }
			}), c=0, scales = new Array(), s_value, e=0;

			var tbl = $('#ld_entity_'+entity_id+' .ld_entity_data table');
			
			if(ld_entity_ribbon_states[entity_id]['ms_scale'])
				scales = ld_entity_ribbon_states[entity_id]['ms_scale'].split(",")
			var cols = $('#ld_entity_'+entity_id+' .ld_entity_data table tr').get(1);
			$("td.ld_mean_scores", tbl).each(function() {
				if($(this).parent().hasClass("ld_data_row")) {
					s_value = scales[e]?scales[e]:e+1;
					$(this).html('<input type="text" class="ms_scale" id="ms_scale_'+e+'" name="ms_scale_'+e+'" size="4" maxlength="4" value="'+s_value+'" />')
					e++;
				}
			});
			$(".ld_save_scales", tbl).html(rpt_draw_inline_updateframe());
			
		}
		$('#ld_entity_'+entity_id+' .ld_entity_data .ld_save_scales input').click(function(e) {
			e.stopPropagation();
		})
		
		$("#edit_in_save").click(function(e) {
			var scale = new Array();
			$(".ms_scale").each(function() {
				scale[scale.length] = $(this).val();
			});
			scale = scale.join(",");
			rpt_set_option(entity_id, "ms_scale", scale, function() {
				ld_entity_ribbon_states[entity_id]['ms_scale'] = scale;
				rpt_edit_scales(entity_id, direction, false);
			})
			e.stopPropagation();
		});
		
		$("#edit_in_cancel").click(function(e) {
			rpt_edit_scales(entity_id, direction, false);
			e.stopPropagation();
		});
		
	} else {
		disable_entity_selection = false;
		if(direction==0) {
			$('#ld_entity_'+entity_id+' .ld_entity_data table').tbl("deleteRow");
		} else {
			$('#ld_entity_'+entity_id+' .ld_entity_data table').tbl("deleteCol", {col:0});
		}
		rpt_reload_entity(entity_id);
	}	
}

function rpt_duplicate(entity_id) {
	rpt_enable_gap_selection(function(gap_id) {
		$.get(rpt_url()+"&ldaction=duplicate&ajax=1&entity_id="+entity_id+"&before_entity_id="+gap_id, function() {
			toggle_button("duplicate", false, false);
			rpt_reload_report();
		});
	});
}

function rpt_delete_entity(entity_id) {
	dialog("Delete Entity", "Are you sure you wish to delete this\nentity? Note that you can also hide it rather than delete it!", "confirm", "", function() {
		if(trigger=="ok") {
			$.get(rpt_url()+"&ldaction=deleteentity&ajax=1&entity_id="+entity_id, function() {
				current_entity_id = false;
				rpt_reload_report();
			});
		}
	});
}

function rpt_enable_gap_selection(fn) {
	$(".ld_entity_gap").mouseover(function() { 
		$(this).addClass("ld_entity_gap_hover"); 
		$(this).stop().animate({backgroundColor: "#e0bfbf"}, ribbon_swish_rate);
	});
	
	$(".ld_entity_gap").mouseout(function() { 
		$(this).removeClass("ld_entity_gap_hover"); 
		$(this).stop().animate({backgroundColor: "#ffffff"}, ribbon_swish_rate);
	});
	
	$(".ld_entity_gap").click(function() {
		$(".ld_entity_gap").unbind("click")
		$(".ld_entity_gap").unbind("mouseover");
		$(".ld_entity_gap").unbind("mouseout");
		$(this).removeClass("ld_entity_gap_hover"); 
		$(this).stop().animate({backgroundColor: "#ffffff"}, ribbon_swish_rate);
		var gap_id = this.id.split("_");
		gap_id = gap_id[3];
		if(fn)
			fn(gap_id);
		
	});
}

function rpt_toggle_text(entity_id) {
	
	if($('#ld_text_toggle_'+entity_id).hasClass("ld_text_toggle_button_expanded")) {
		rpt_set_option(entity_id, "expand_text", "false");
		$('#ld_entity_'+entity_id+' .ld_text_list').slideUp(reporting_swish_rate);
		$('#ld_text_toggle_'+entity_id).removeClass("ld_text_toggle_button_expanded");
	} else {
		rpt_set_option(entity_id, "expand_text", "true", function() {
			if(!$("#ld_text_table_"+entity_id).get(0)) {
				rpt_reload_entity(entity_id);
			} else {
				$('#ld_entity_'+entity_id+' .ld_text_list').slideDown(reporting_swish_rate);
				$('#ld_text_toggle_'+entity_id).addClass("ld_text_toggle_button_expanded");
			}
		});
	}
}

function rpt_toggle_float_mode(entity_id, float_state) {
	prev_item_id = get_prev_entity(entity_id);
	next_item_id = get_next_entity(entity_id);
	
	if(float_state) {
		next_gap(entity_id, false);
		$("#ld_entity_"+current_entity_id).addClass("ld_entity_float");
		if(next_item_id) {
			$("#ld_entity_"+next_item_id).addClass("ld_entity_float");
			$("#ld_entity_"+next_item_id).addClass("ld_entity_float_next");
		}
	} else {
		if(!ld_entity_ribbon_states[prev_item_id] || !ld_entity_ribbon_states[prev_item_id]["allow_float"])
			$("#ld_entity_"+current_entity_id).removeClass("ld_entity_float");
		if(!ld_entity_ribbon_states[next_item_id] || !ld_entity_ribbon_states[next_item_id]["allow_float"]) {
			$("#ld_entity_"+next_item_id).removeClass("ld_entity_float");
			$("#ld_entity_"+next_item_id).removeClass("ld_entity_float_next");
		}

		next_gap(current_entity_id, true);
	}
	ld_entity_ribbon_states[current_entity_id]["allow_float"] = float_state;
	
}

function rpt_entity_resizable(entity_id, disabled) {
	if(disabled) {
		$("#ld_entity_"+entity_id).resizable("destroy");
		$("#percentage_width_text").val("");
		$("#entity_height_text").val("");
		toggle_ribbon_control_enabled("allow_entities_right", false);		
		
	} else {
		if(ld_entity_ribbon_states[entity_id]['height']>0) {
			$("#entity_height_text").val(ld_entity_ribbon_states[entity_id]['height'])
		} else {
			$("#entity_height_text").val($("#ld_entity_"+entity_id).height());
		}

		if(parseInt(ld_entity_ribbon_states[entity_id]['width'])>0) {
			$("#percentage_width_text").val(parseInt(ld_entity_ribbon_states[entity_id]['width']));
			toggle_ribbon_control_enabled("allow_entities_right", true);
			$("#allow_entities_right_check").attr("checked", ld_entity_ribbon_states[entity_id]['allow_float']);
		} else {
			$("#percentage_width_text").val("100");
			toggle_ribbon_control_enabled("allow_entities_right", false);
			$("#allow_entities_right_check").attr("checked", false);
		}
		
		
		$("#ld_entity_"+entity_id).resizable({
			autoHide: true,
			containment: 'parent',
			start: function(event, ui)  {
				if(ld_entity_ribbon_states[entity_id]["min_height"]==0) {
					min_height = $("#ld_entity_"+entity_id).height();
					rpt_set_option(entity_id, "min_height", min_height, function() {
						ld_entity_ribbon_states[entity_id]["min_height"] = min_height;
					});
				} else {
					min_height = ld_entity_ribbon_states[entity_id]["min_height"];
				}
				
				orignal_width = $("#ld_entity_"+entity_id).width();
				original_percentage = $("#percentage_width_text").val();
				actual_original_width = (100/original_percentage)*orignal_width;
				quarter_width = Math.round(actual_original_width/4);
				$("#ld_entity_"+entity_id).attr("fullwidth", actual_original_width);
				$("#ld_entity_"+entity_id).resizable("option", "maxWidth", actual_original_width);
				$("#ld_entity_"+entity_id).resizable("option", "minWidth", quarter_width);
				$("#ld_entity_"+entity_id).resizable("option", "minHeight", min_height);
				disable_entity_selection = true;
			},
			resize: function(event, ui) {
				actual_original_width = $("#ld_entity_"+entity_id).attr("fullwidth");
				current_width = ui.size.width;
				current_percentage = Math.round((100/actual_original_width)*current_width);
				$("#percentage_width_text").val(current_percentage);
				$("#entity_height_text").val(ui.size.height);

				rpt_resize_graph(entity_id);
			},
			stop: function(event, ui) {
				actual_original_width = $("#ld_entity_"+entity_id).attr("fullwidth");
				current_width = ui.size.width;
				current_percentage = Math.round((100/actual_original_width)*current_width);
				rpt_set_option(entity_id, "width", current_percentage, function() {
					ld_entity_ribbon_states[entity_id]["width"] = current_percentage;
					$("#ld_entity_"+entity_id).css("width", current_percentage+"%")
					rpt_set_option(entity_id, "height", ui.size.height, function() {
						ld_entity_ribbon_states[entity_id]["height"] = ui.size.height;
					});
				});
				setTimeout("disable_entity_selection = false", 10);
				
			}
		});
	}
}

function rpt_toggle_designmode() {
	ld_report_change = true;
	toggle_button("new_node", false, false);
	ribbon_toggle_states['design_mode'] = !ribbon_toggle_states['design_mode'];
	if(ribbon_toggle_states['design_mode']) {
		$(".ld_entity_hidden").slideDown(reporting_swish_rate, function() {
			$(".ld_entity_hidden").next(".ld_entity_gap").slideDown(reporting_swish_rate, function() {
				toggle_ribbon_control_enabled("new_node", true);
			});	
		});	
	} else {
		$(".ld_entity_hidden").slideUp(reporting_swish_rate, function() {
			$(".ld_entity_hidden").next(".ld_entity_gap").slideUp(reporting_swish_rate, function() {
				toggle_ribbon_control_enabled("new_node", false);
			});
		});
	}
	toggle_tab_visibility("ribbon_tab_graph_options", false);
	rpt_toggle_entity();
}

function rpt_ribbon_toggle_editing(state) {
	toggle_ribbon_control_enabled("show_row_totals", state);
	toggle_ribbon_control_enabled("show_col_totals", state);
	toggle_ribbon_control_enabled("show_percentages", state);
	toggle_ribbon_control_enabled("percentages_direction", state);
}

function rpt_toggle_entity(entity_id) {
	if(disable_entity_selection)
		return false;
		
	$(".ld_current_entity").removeClass("ld_current_entity");
	
	if(current_entity_id) {
		rpt_entity_resizable(current_entity_id, true);
	}
	if(entity_id!=current_entity_id && entity_id) {
		$("#ld_entity_"+entity_id).addClass("ld_current_entity");
		current_entity_id = entity_id;
		toggle_ribbon_hover(false);
		ribbon_force_active = true;
		toggle_slipbar_active(false);
		$("#show_row_totals_check").attr("checked", ld_entity_ribbon_states[entity_id]['show_row_totals']);
		$("#show_col_totals_check").attr("checked", ld_entity_ribbon_states[entity_id]['show_col_totals']);
		$("#show_question_total_check").attr("checked", ld_entity_ribbon_states[entity_id]['show_question_total']);
		$("#use_horizontal_bars_check").attr("checked", ld_entity_ribbon_states[entity_id]['use_horizontal_bars']);
		$("#use_stacked_bars_check").attr("checked", ld_entity_ribbon_states[entity_id]['use_stacked_bars']);
		$("#totals_are_base_sizes_check").attr("checked", ld_entity_ribbon_states[entity_id]['totals_are_bases']);

		$("#show_percentages_select").val(parseInt(ld_entity_ribbon_states[entity_id]['entity_show_percentages']));

		$("#percentages_direction_select").val(parseInt(ld_entity_ribbon_states[entity_id]['entity_percentage_direction'])); 
		if(parseInt(ld_entity_ribbon_states[entity_id]['entity_show_percentages'])>0) {
			toggle_ribbon_control_enabled("percentage_sig_test", true);
			toggle_button('percentage_sig_test', null, ld_entity_ribbon_states[entity_id]['sig_percentage']==true);
		} else {
			toggle_button('percentage_sig_test', null, false);
			toggle_ribbon_control_enabled("percentage_sig_test", false);
		}

		if(ld_entity_ribbon_states[entity_id]['is_grid']==1 && parseInt(ld_entity_ribbon_states[entity_id]['entity_show_percentages'])>0) {
			toggle_ribbon_control_enabled("percentages_direction", true);
		} else {
			toggle_ribbon_control_enabled("percentages_direction", false);
		}
		
		toggle_button('mean_score', null, ld_entity_ribbon_states[entity_id]['ms_show']==true);
		toggle_ribbon_control_enabled('mean_score_direction', ld_entity_ribbon_states[entity_id]['ms_show']==true);
		if(ld_entity_ribbon_states[entity_id]['ms_show']==true) {
			toggle_ribbon_control_enabled('standard_deviation', true);
			toggle_ribbon_control_enabled('standard_error', ld_entity_ribbon_states[entity_id]['ms_sdeviation']==true);
			$("#standard_deviation_check").attr("checked", ld_entity_ribbon_states[entity_id]['ms_sdeviation']);
			$("#standard_error_check").attr("checked", ld_entity_ribbon_states[entity_id]['ms_serror']);
			toggle_ribbon_control_enabled("mean_sig_test", ld_entity_ribbon_states[entity_id]['ms_sdeviation']);			
			toggle_button('mean_sig_test', null, ld_entity_ribbon_states[entity_id]['sig_mean']==true);
		} else {
			toggle_ribbon_control_enabled('standard_deviation', false);
			toggle_ribbon_control_enabled('standard_error', false);
			$("#standard_deviation_check").attr("checked", false);
			$("#standard_error_check").attr("checked", false);
			toggle_ribbon_control_enabled("mean_sig_test", false);			
			toggle_button('mean_sig_test', null, false);
			
		}
		$("#mean_score_direction_select").val(parseInt(ld_entity_ribbon_states[entity_id]['ms_direction']));
		
		toggle_button('show_data', null, ld_entity_ribbon_states[entity_id]['show_data']==true);
		toggle_ribbon_control_enabled("select_break", true);
		$("#select_break_select").dropdownchecklist("enable");
		if(ld_entity_ribbon_states[entity_id]['current_break']!="") {
			$("#select_break_select").val(ld_entity_ribbon_states[entity_id]['current_break']); 
			$("#select_break_select").dropdownchecklist("sync");
		} else {
			$("#select_break_select").val(0); 
			$("#select_break_select").dropdownchecklist("sync");
		}
		
		toggle_ribbon_control_enabled("external_break", true);
		$("#external_break_select").dropdownchecklist("enable");
		if(ld_entity_ribbon_states[entity_id]['current_external_break']!="") {
			$("#external_break_select").val(ld_entity_ribbon_states[entity_id]['current_external_break']); 
			$("#external_break_select").dropdownchecklist("sync");
		} else {
			$("#external_break_select").val(0); 
			$("#external_break_select").dropdownchecklist("sync");

		}
		toggle_ribbon_control_enabled("break_view", (ld_entity_ribbon_states[entity_id]['current_external_break']!="" || ld_entity_ribbon_states[entity_id]['current_break']!=""));
		$("#break_view_select").get(0).selectedIndex = ld_entity_ribbon_states[entity_id]['break_view'];
		
		$("#allow_resize_check").attr("checked", ld_entity_ribbon_states[entity_id]['allow_resize']);
		toggle_ribbon_control_enabled("percentage_width", ld_entity_ribbon_states[entity_id]['allow_resize']);
		toggle_ribbon_control_enabled("entity_height", ld_entity_ribbon_states[entity_id]['allow_resize']);
		if(ld_entity_ribbon_states[entity_id]['allow_resize']!=null)
			rpt_entity_resizable(entity_id, !ld_entity_ribbon_states[entity_id]['allow_resize']);
		

		if(ld_entity_ribbon_states[entity_id]) {
			graph_state = ld_entity_ribbon_states[entity_id]['graph'];
			
			toggle_button('graph', false, graph_state);
			
			if(graph_state) {
				$("#legend_select").val(ld_entity_ribbon_states[entity_id]['graph_legend']);
		
				if(ld_entity_ribbon_states[entity_id]['bar_graph'])
					toggle_button('bar_graph', "gtype", true);
			
				if(ld_entity_ribbon_states[entity_id]['pie_chart'])
					toggle_button('pie_chart', "gtype", true);
			
				if(ld_entity_ribbon_states[entity_id]['line_graph'])
					toggle_button('line_graph', "gtype", true);
					
				toggle_tab_visibility("ribbon_tab_graph_options", true);
				toggle_ribbon_control_enabled("show_row_totals", false);
				toggle_ribbon_control_enabled("show_col_totals", false);
			} else {
				toggle_ribbon_control_enabled("show_row_totals", true);
				toggle_ribbon_control_enabled("show_col_totals", true);
				toggle_tab_visibility("ribbon_tab_graph_options", false);
			}
		} else {
			toggle_button('graph', false, false);
			toggle_tab_visibility("ribbon_tab_graph_options", false);
		}
		
		$(window).scrollTop(findPosY($("#ld_entity_"+entity_id).get(0))-$("#admin_ribbon").height()-20);
	} else {
		toggle_ribbon_control_enabled("select_break", false);		
		$("#select_break_select").dropdownchecklist("disable");
		current_entity_id = false;
		ribbon_force_active = false;
		if($(window).scrollTop()>0)
			toggle_ribbon_hover(true);
		toggle_slipbar_active(true);
	}
}

var net_row_go = false;
var net_row_go = false;

function rpt_add_net(entity_id, type) {
	if(type=="row") {
		if(!tblselect_mode) {
			net_row_go = false;
			dialog("Add Net Row", "Enter a name for the row", "prompt", "", function() {
				if(trigger=="ok") {
					$("#ld_entity_"+entity_id+" .ld_entity_data table").tbl("insertRow", {
						row: 'last',
						rowClass: 'ld_data_row ld_data_net'
					});
					$("#ld_entity_"+entity_id+" .ld_entity_data table tr:last th").html(dialog_prompt_val);
					var net_row_string = dialog_prompt_val;
					rpt_tblselect_on(entity_id, {
						type: 'rows',
						fn: function(rows) {
							net_row_go = true;
						},
						multi_fn: function(rows) {
							net_row_string+=":"+rows;
							var n = 0;
							if(ld_entity_ribbon_states[entity_id]['net_row']!="") {
								net_rows = ld_entity_ribbon_states[entity_id]['net_row'].split("|");
								n = net_rows.length;
							}
							net_row_string = n+","+net_row_string;
							ld_entity_ribbon_states[entity_id]['net_row']+=(ld_entity_ribbon_states[entity_id]['net_row']!=""?"|":"")+net_row_string;
							rpt_set_option(entity_id, "net_row", ld_entity_ribbon_states[entity_id]['net_row'], function() {
								rpt_reload_entity(entity_id);
							});
							
						}
					});
				} else {
					toggle_button("add_net_row", false, false);
				}
			});
		} else {
			rpt_tblselect_off(entity_id, !net_row_go);
			if(!net_row_go) {
				$("#ld_entity_"+entity_id+" .ld_entity_data table").tbl("deleteRow", {
					row: 'last'
				});
			}
		}
	} else {
		if(!tblselect_mode) {
			net_col_go = false;
			dialog("Add Net Col", "Enter a name for the col", "prompt", "", function() {
				if(trigger=="ok") {
					$("#ld_entity_"+entity_id+" .ld_entity_data table").tbl("insertCol", {
						col: 'last',
						cellClasses: { all: 'ld_data_cell_net' }
					});
					$("#ld_entity_"+entity_id+" .ld_entity_data table tr:first th:last").html(dialog_prompt_val);
					var net_col_string = dialog_prompt_val;
					rpt_tblselect_on(entity_id, {
						type: 'cols',
						fn: function(cols) {
							net_col_go = true;
						},
						multi_fn: function(rows, cols) {
							net_col_string+=":"+cols;
							var n = 0;
							if(ld_entity_ribbon_states[entity_id]['net_col']!="") {
								net_cos = ld_entity_ribbon_states[entity_id]['net_col'].split("|");
								n = net_cos.length;
							}
							net_col_string = n+","+net_col_string;
							ld_entity_ribbon_states[entity_id]['net_col']+=(ld_entity_ribbon_states[entity_id]['net_col']!=""?"|":"")+net_col_string;
							rpt_set_option(entity_id, "net_col", ld_entity_ribbon_states[entity_id]['net_col'], function() {
								rpt_reload_entity(entity_id);
							});
							
						}
					});
				} else {
					toggle_button("add_net_col", false, false);
				}
			});
		} else {
			rpt_tblselect_off(entity_id, !net_col_go);
			if(!net_col_go) {
				$("#ld_entity_"+entity_id+" .ld_entity_data table").tbl("deleteCol", {
					col: 'last'
				});
			}
		}
	}
}

function rpt_remove_net(entity_id) {
	if(ribbon_toggle_states["remove_net"]) {
		rpt_tblselect_on(entity_id, {
			type: 'both',
			fn: function(selected, type) {
				if(type=="col") {
					if($($("#ld_entity_"+entity_id+" .ld_entity_data table .ld_col_"+selected).get(0)).hasClass("ld_data_cell_net")) {
						var classname = $($("#ld_entity_"+entity_id+" .ld_entity_data table .ld_col_"+selected).get(0)).attr("class");
						classname = classname.split("ld_net_col_");
						var col_to_remove = classname[1];
						var net_cos = ld_entity_ribbon_states[entity_id]['net_col'].split("|");
						var new_net_cols = new Array();
						var new_index = 0;
						for(var i=0;i<net_cos.length;i++) {
							if(i!=col_to_remove) {
								current_net_col = net_cos[i].split(":");
								current_net_header = current_net_col[0].split(",");
								new_net_cols[new_net_cols.length] = new_index+","+current_net_header[1]+":"+current_net_col[1];
								new_index++;
							}
						}
						ld_entity_ribbon_states[entity_id]['net_col'] = new_net_cols.join("|");
						rpt_set_option(entity_id, "net_col", ld_entity_ribbon_states[entity_id]['net_col'], function() {
							$("#ld_entity_"+entity_id+" .ld_entity_data table .ld_col_"+selected).remove();
							rpt_reload_entity(entity_id);
						});
						
					}
				} else	if(type=="row") {
					if($($("#ld_entity_"+entity_id+" .ld_entity_data table .ld_row_"+selected).get(0)).hasClass("ld_data_net")) {
						var classname = $($("#ld_entity_"+entity_id+" .ld_entity_data table .ld_row_"+selected).get(0)).attr("class");
						classname = classname.split("ld_net_row_");
						var col_to_remove = classname[1];
						var net_cos = ld_entity_ribbon_states[entity_id]['net_row'].split("|");
						var new_net_cols = new Array();
						var new_index = 0;
						for(var i=0;i<net_cos.length;i++) {
							if(i!=col_to_remove) {
								current_net_col = net_cos[i].split(":");
								current_net_header = current_net_col[0].split(",");
								new_net_cols[new_net_cols.length] = new_index+","+current_net_header[1]+":"+current_net_col[1];
								new_index++;
							}
						}
						ld_entity_ribbon_states[entity_id]['net_row'] = new_net_cols.join("|");
						rpt_set_option(entity_id, "net_row", ld_entity_ribbon_states[entity_id]['net_row'], function() {
							$("#ld_entity_"+entity_id+" .ld_entity_data table .ld_row_"+selected).remove();
							rpt_reload_entity(entity_id);
						});
						
					}
				}
				toggle_button("remove_net", false, false);
			}
		});
		
	} else {
		rpt_tblselect_off(entity_id, true);
		toggle_button("remove_net", false, false);

	}
	
}

function next_gap(entity_id, visibility) {
	if(visibility)
		$("#ld_entity_"+entity_id).next(".ld_entity_gap").show();
	else
		$("#ld_entity_"+entity_id).next(".ld_entity_gap").hide();	
}

function get_next_entity(entity_id) {
	var next_entity = $("#ld_entity_"+entity_id).nextAll(".ld_entity").not(".ld_entity_hidden").get(0);
	if(next_entity) {
		var id = next_entity.id;
		id = id.split("_");
		return id[2];
	} else {
		return false;
	}
}

function get_prev_entity(entity_id) {
	var prev_entity = $("#ld_entity_"+entity_id).prevAll(".ld_entity").not(".ld_entity_hidden").get(0);
	if(prev_entity) {
		var id = prev_entity.id;
		id = id.split("_");
		return id[2];
	} else {
		return false;
	}
}

function rpt_toggle_source_data(entity_id) {
	toggle_screen(true, true);
	if(get_button_toggle("show_data")) {
		rpt_set_option(entity_id, "show_data", "true", function() {
			$("#ld_entity_"+entity_id+" .ld_graph_source_data").load(rpt_url()+"&ldaction=graph&forcetable=1&ajax=1&entity_id="+entity_id, function() {
				$("#ld_entity_"+entity_id+" .ld_graph_source_data").slideDown(ribbon_swish_rate, function() {
					ld_entity_ribbon_states[entity_id]['show_data'] = true;
					rpt_resize_graph(entity_id);
					toggle_screen(false);
				});	
			});
		});
	} else {
		rpt_set_option(entity_id, "show_data", "", function() {
			$("#ld_entity_"+entity_id+" .ld_graph_source_data").slideUp(ribbon_swish_rate, function() {
			$("#ld_entity_"+entity_id+" .ld_graph_source_data").html("");
			ld_entity_ribbon_states[entity_id]['show_data'] = false;
			rpt_resize_graph(entity_id);
			toggle_screen(false);
		});	
		});
		
	}	
	
}
	 
function rpt_reload_entity(entity_id, revert) {
	toggle_screen(true, true);
	if(revert) {
		rpt_set_option(entity_id, "entity_type", 1, function() {
			$("#ld_entity_"+entity_id+" .ld_entity_data").load(rpt_url()+"&ldaction=regen&ajax=1&entity_id="+entity_id, function() {
				$("#show_row_totals_check").attr("checked", ld_entity_ribbon_states[entity_id]['show_row_totals']);
				$("#show_col_totals_check").attr("checked", ld_entity_ribbon_states[entity_id]['show_col_totals']);
				toggle_screen(false);
			});
					
		});
	} else {
		$("#ld_entity_"+entity_id+" .ld_entity_data").load(rpt_url()+"&ldaction=regen&ajax=1&entity_id="+entity_id, function() {
			$("#show_row_totals_check").attr("checked", ld_entity_ribbon_states[entity_id]['show_row_totals']);
			$("#show_col_totals_check").attr("checked", ld_entity_ribbon_states[entity_id]['show_col_totals']);
			toggle_screen(false);
		});
	}
	
}

function rpt_graph_entity(entity_id) {
	if(get_button_toggle("graph")) {
		rpt_graph(entity_id);
		toggle_tab_visibility("ribbon_tab_graph_options", true);
		toggle_ribbon_tab('graph_options');
		toggle_ribbon_control_enabled("show_row_totals", false);
		toggle_ribbon_control_enabled("show_col_totals", false);
	} else {
		rpt_reload_entity(entity_id, true);
		toggle_tab_visibility("ribbon_tab_graph_options", false);
		toggle_ribbon_control_enabled("show_row_totals", true);
		toggle_ribbon_control_enabled("show_col_totals", true);
		
	}
}

function rpt_graph(entity_id, type) {
	toggle_screen(true, true);
	rpt_set_option(entity_id, "entity_type", 3, function() {
		switch(type) {
			case "LINE":
				$("#ld_entity_"+entity_id+" .ld_entity_data").load(rpt_url()+"&entity_options=graph_line&ajax=1&ldaction=graph&entity_id="+entity_id, function() {
					toggle_screen(false);
				});
				break;
			
			case "PIE":
				$("#ld_entity_"+entity_id+" .ld_entity_data").load(rpt_url()+"&entity_options=graph_pie&ajax=1&ldaction=graph&entity_id="+entity_id, function() {
					toggle_screen(false);
				});
				break;
			
			case "BAR":
				$("#ld_entity_"+entity_id+" .ld_entity_data").load(rpt_url()+"&entity_options=graph_bar&ajax=1&ldaction=graph&entity_id="+entity_id, function() {
					toggle_screen(false);
				});
				break;
				
			default:
				$("#ld_entity_"+entity_id+" .ld_entity_data").load(rpt_url()+"&entity_options=graph&ajax=1&ldaction=graph&entity_id="+entity_id, function() {
					toggle_screen(false);
				});
				break;
			
		}
		
	});
}

var tblselect_function = false;
var tblselect_mode = false;

function rpt_tblselect_off(entity_id, cancel) {
	$("#ld_entity_"+entity_id+" table .ld_first_col").unbind("mouseover");
	$("#ld_entity_"+entity_id+" table .ld_first_col").unbind("mouseout");
	$("#ld_entity_"+entity_id+" table .ld_first_col").unbind("click");
	$("#ld_entity_"+entity_id+" table .ld_data_first_row th, #ld_entity_"+entity_id+" table .ld_data_break_code_titles th").unbind("mouseover");
	$("#ld_entity_"+entity_id+" table .ld_data_first_row th, #ld_entity_"+entity_id+" table .ld_data_break_code_titles th").unbind("mouseout");
	$("#ld_entity_"+entity_id+" table .ld_data_first_row th, #ld_entity_"+entity_id+" table .ld_data_break_code_titles th").unbind("click");
	$("#ld_down_arrow").remove();
	$("#ld_right_arrow").remove();
	disable_entity_selection = false;
	
	if(tblselect_function!=false) {
		var selected_cols = new Array();
		var selected_rows = new Array();
		$("#ld_entity_"+entity_id+" table .ld_data_col_active").each(function() {
			if($(this).parent().hasClass("ld_data_break_code_titles") || $(this).parent().hasClass("ld_data_first_row")) {
				var classes = $(this).attr("class");
				var class_match = /ld_col_[0-9]+/;
				var result=class_match.exec(classes);
				var col_class = result[0];
				var col = col_class.split("_");
				selected_cols[selected_cols.length] = col[2];
			}
		});
		$(".ld_data_row_active").each(function() {
			var classes = $(this).attr("class");
			var class_match = /ld_row_[0-9]+/;
			var result=class_match.exec(classes);
			var row_class = result[0];
			var row = row_class.split("_");
			selected_rows[selected_rows.length] = row[2];
		});
		
		$(".ld_data_col_active").removeClass("ld_data_col_active");
		$(".ld_data_row_active").removeClass("ld_data_row_active");
		if(!cancel)
			tblselect_function(selected_rows, selected_cols);
		tblselect_function = false;
		tblselect_mode = false;
		
	}
}

function rpt_tblselect_on(entity_id, options) {
	var size = 16;
	var type = options['type']?options['type']:"both";
	tblselect_function = options['multi_fn']?options['multi_fn']:false;
	var multi = tblselect_function!=false;
	var fn = options['fn']?options['fn']:false;
	var preselected = options['preselected']?options['preselected']:{rows:false, cols:false};

	if(type=="both" || type=="cols" ) {
		disable_entity_selection = true;
		if(multi) tblselect_mode = true;
		if(preselected['cols']) {
			var preselected_cols = preselected['cols'].split(",");
			for(c=0;c<preselected_cols.length;c++) {
				$("#ld_entity_"+entity_id+" table .ld_col_"+preselected_cols[c]).addClass("ld_data_col_active");
			}
		}

		$("#ld_entity_"+entity_id+" table .ld_data_first_row th, #ld_entity_"+entity_id+" table .ld_data_break_code_titles th").mouseover(function() {
			if(!$(this).hasClass("ld_first_col")) {
				p = $(this).offset();
				$("body").append('<img src="/images/png/down.png" width="'+size+'" height="'+size+'" style="left:'+Math.round(p.left+($(this).width()/2))+'px;top:'+(p.top-size)+'px;" id="ld_down_arrow" />');
				var classes = $(this).attr("class");
				var class_match = /ld_col_[0-9]+/;
				var result=class_match.exec(classes);
				if(result!=null) {
					var col_class = result[0];
					$("#ld_entity_"+entity_id+" ."+col_class).addClass("ld_data_col_select");
				}
			}
		});
		
		$("#ld_entity_"+entity_id+" table .ld_data_first_row th, #ld_entity_"+entity_id+" table .ld_data_break_code_titles th").mouseout(function() {
			if(!$(this).hasClass("ld_first_col")) {
				$("#ld_down_arrow").remove();
				var classes = $(this).attr("class");
				var class_match = /ld_col_[0-9]+/;
				var result=class_match.exec(classes);
				if(result!=null) {
					var col_class = result[0];
					$("."+col_class).removeClass("ld_data_col_select");
				}
			}
		});

		$("#ld_entity_"+entity_id+" table .ld_data_first_row th, #ld_entity_"+entity_id+" table .ld_data_break_code_titles th").click(function(e) {
			if(!$(this).hasClass("ld_first_col")) {
				var classes = $(this).attr("class");
				var class_match = /ld_col_[0-9]+/;
				var result=class_match.exec(classes);
				if(result!=null) {
					var col_class = result[0];
					$("#ld_entity_"+entity_id+" ."+col_class).removeClass("ld_data_col_select");
					var col = col_class.split("_");
					col = col[2];
					if(multi) {
						if($("#ld_entity_"+entity_id+" ."+col_class).hasClass("ld_data_col_active"))
							$("#ld_entity_"+entity_id+" ."+col_class).removeClass("ld_data_col_active");
						else
							$("#ld_entity_"+entity_id+" ."+col_class).addClass("ld_data_col_active");
					} else {
						rpt_tblselect_off(entity_id);
					}
					if(fn) fn(col, "col");
					e.stopPropagation();
				}
			}
		});
	}
	
	
	if(type=="both" || type=="rows" ) {
		disable_entity_selection = true;
		if(multi) tblselect_mode = true;

		if(preselected['rows']) {
			var preselected_rows = preselected['rows'].split(",");
			for(r=0;r<preselected_rows.length;r++) {
				$("#ld_entity_"+entity_id+" table .ld_row_"+preselected_rows[r]).addClass("ld_data_row_active");
			}
		}
		
		$("#ld_entity_"+entity_id+" table .ld_first_col").mouseover(function() {
			if(!$(this).parent().hasClass("ld_data_first_row"))
				$(this).parent().addClass("ld_data_row_select");
			p = $(this).parent().offset();
				
			$("body").append('<img src="/images/png/right.png" width="'+size+'" height="'+size+'" style="left:'+Math.round(p.left-size)+'px;top:'+(p.top+($(this).height()/2)-(size/2))+'px;" id="ld_right_arrow" />');
				
		});
		
		$("#ld_entity_"+entity_id+" table .ld_first_col").mouseout(function() {
			$("#ld_right_arrow").remove();
			
			if(!$(this).parent().hasClass("ld_data_first_row"))
				$(this).parent().removeClass("ld_data_row_select");
		});

		$("#ld_entity_"+entity_id+" table .ld_first_col").click(function(e) {
			if(!$(this).parent().hasClass("ld_data_first_row")) {
				var classes = $(this).parent().attr("class");
				var class_match = /ld_row_[0-9]+/;
				var result=class_match.exec(classes);
				if(result!=null) {
					var row_class = result[0];
					$(this).parent().removeClass("ld_data_row_select");
					var row = row_class.split("_");
					row = row[2];
					if(multi) {
						if($(this).parent().hasClass("ld_data_row_active"))
							$(this).parent().removeClass("ld_data_row_active");
						else
							$(this).parent().addClass("ld_data_row_active");
					} else {
						rpt_tblselect_off(entity_id);
					}
					if(fn) fn(row, "row");
					e.stopPropagation();
				}
			}
		});
	}
}

function rpt_toggle_edit() {
	if(get_button_toggle("edit_text")==false) {
		rpt_after_edit();
	} else {
		var entity = $("#ld_entity_"+current_entity_id+" .ld_entity_display_text");
		if($.browser.msie) {
			var t = $(entity).html();
			t = t.replace(/<BR>/gi, "\n");
		} else {
			var t = $(entity).text();
		}
		t = t.replace(/  /g, " ");
		
		var w = $(entity).width(); 
		var h = $(entity).height(); 
		
		var eip_content = rpt_draw_inline_updateframe('<textarea rows="1" cols="1" id="edit_in_revert">'+t+'</textarea><textarea rows="1" cols="1" id="edit_in_value">'+t+'</textarea>')
		disable_entity_selection = true;
		
		$(entity).after(eip_content).remove();
		
		$("#edit_in_value").width(w);
		$("#edit_in_value").height(h);
		
		$('#edit_in_value').autoResize({
			extraSpace: 0
		});		
		
		$('#edit_in_value').keydown();
		
		$("#edit_in_save").click(function(e) {
			var t = $("#edit_in_value").val();
			rpt_after_edit(t);
			toggle_button("edit_text");
			rpt_set_option(current_entity_id, "override_text", nl2br(t));
			e.stopPropagation();
		});
		
		$("#edit_in_cancel").click(function(e) {
			rpt_after_edit();
			toggle_button("edit_text");
			e.stopPropagation();
		});
	}
}

function rpt_after_edit(t) {
	if(!t)
		t = $("#edit_in_revert").val();	
	t = nl2br(t);
	$("#ld_edit_in_place").after('<div class="ld_entity_display_text">'+t+'</div>').remove();
	
	disable_entity_selection = false;
}

function rpt_draw_inline_updateframe(extra_content) {
	var c = "";
	c+='<div id="ld_edit_in_place">';
	if(extra_content)
		c+=extra_content;
	c+='<ul id="ld_edit_in_place_buttons">';
	c+= '<li><input type="button" value="save" id="edit_in_save" /></li>';
	c+= '<li><input type="button" value="cancel" id="edit_in_cancel" /></li>';
	c+= '</ul></div>';
	return c;
}

function rpt_entity_visibility_toggle(entity_id) {
	if($("#ld_entity_"+entity_id).hasClass("ld_entity_hidden")) {
		rpt_set_option(entity_id, "hidden", 0);
		$("#ld_entity_"+entity_id).removeClass("ld_entity_hidden");
	} else {
		rpt_set_option(entity_id, "hidden", 1);
		$("#ld_entity_"+entity_id).addClass("ld_entity_hidden");
	}
}

function rpt_run_now(report_id) {
	dialog("Run Report", "Are you sure you wish to run this report now? This may take some time...", "confirm", "", function() {
		if(trigger=="ok")
			document.location="main.php?link=reporting&sublink=ld&s=post&form_action=edittemplate&queryform_action=run&report_id="+report_id;
	});
	
}

function rpt_saveas() {
	report_name = $("#report_name_text").val()+" Copy";
	dialog('Save As...', 'Please enter a name for the report copy', 'prompt', report_name, function() {
		if(trigger=="ok") {
			toggle_screen(true, true);
			ld_report_change = false;
			$.get(rpt_url()+"&ajax=1&ldaction=saveas&report_name="+dialog_prompt_val, function(data) {
				dialog("Operation Complete", "Copy of report has been saved!", "alert", "", function() {
					document.location='?link=reporting&sublink=ldshow&rid='+data;
				});	
			});	
		}
	});
}

function rpt_save(exit) {
	if(exit==null)
		exit = false;
		
	toggle_screen(true, true);
	report_name = $("#report_name_text").val();
	ld_report_change = false;
	$.get(rpt_url()+"&ajax=1&ldaction=save&report_name="+report_name, function(data) {
		dialog("Operation Complete", "Report has been saved!", "alert", "", function() {
			document.location = exit?'?link=reporting&sublink=ld':rpt_url();
		});		
	});	
}

function rpt_revert() {
	if(ld_report_change) {
		dialog("Revert Report", "You have made changes. Are you sure you wish to revert to the last saved version of the report?", "confirm", "", function() {
			if(trigger=="ok")
				rpt_do_revert();
		});
		
	} else {
		rpt_do_revert();
	}
}

function rpt_do_revert() {
	toggle_screen(true, true);
	$.get(rpt_url()+"&ajax=1&ldaction=wipeopts", function(data) {
		toggle_button("design_mode", false, false);
		rpt_toggle_designmode();
		
		rpt_reload_report();
	});
	
}

function rpt_exit() {
	if(ld_report_change) {
		dialog("Changes Made", "You have made changes. Do you wish to save before you exit?", "yesnocancel", "", function() {
			if(trigger=="yes") {
				rpt_save(true);
			} else if(trigger=="no") {
				ld_report_change = false;
				toggle_screen(true, true);
				$.get(rpt_url()+"&ajax=1&ldaction=wipeopts", function(data) {
					document.location = '?link=reporting&sublink=ld';
				});
			}
		});
	} else {
		document.location = '?link=reporting&sublink=ld';
	}	
	
}

/**/

function rpt_create_new_data_map(questionnaire_id, default_name, report_name) {
	if(default_name==null)
		default_name = "";

	if(report_name==null)
		report_name = "";

	dialog("Create New Data Map", "Please enter a name for the data map", "prompt", default_name, function() {
		if(trigger=="ok") {
			v = dialog_prompt_val;
			if(report_name=="") {
				document.location="main.php?link=reporting&sublink=ld&s=post&queryform_action=newdatamap&questionnaire_id="+questionnaire_id+"&data_map_name="+v;
			} else {
				dialog("Create New Data Map", "Do you wish to create a Report Template for this Data Map?", "confirm", "", function() {
					if(trigger=="ok") {
						document.location="main.php?link=reporting&sublink=ld&s=post&queryform_action=newdatamap&forcetemplate=1&questionnaire_id="+questionnaire_id+"&data_map_name="+v+"&report_name="+report_name;
					} else {
						document.location="main.php?link=reporting&sublink=ld&s=post&queryform_action=newdatamap&questionnaire_id="+questionnaire_id+"&data_map_name="+v;
					}
				});
			}
		}
	});
}

function rpt_create_new_report_template(report_id, default_name) {
	if(default_name==null)
		default_name = "";
	if(default_name=="") {
		dialog("Create New Report Template", "Please enter a name for the Report Template", "prompt", default_name, function() {
			if(trigger=="ok") {
				document.location="main.php?link=reporting&sublink=ld&s=post&queryform_action=newreport&report_id="+report_id+"&report_name="+dialog_prompt_val;
			}
		});
	} else {
		document.location="main.php?link=reporting&sublink=ld&s=post&queryform_action=newreport&report_id="+report_id+"&report_name="+default_name;
	}
}



/** END NEW REPORTING STUFF **/

var win_resize_state;
var win_resize_height;
var win_resize_width;
var ifr_resize_height;
var print_mode = false;

function rpt_win_resize_mode(mode) {
	var win_obj = get_object("float_win");
	var ifr_obj = get_object("float_page");
	if(win_resize_state!="on" && mode=="on") {	
		win_resize_width = win_obj.offsetWidth - 0;
		win_resize_height = win_obj.offsetHeight - 0;
		get_mouse_pos(event);
		win_x_first = posx;
		win_y_first = posy;
	}
	win_resize_state=mode;	
}

function rpt_win_resize(top, right, bottom, left) {
	if(win_resize_state=="on") {		
		document.selection.clear();
		var ifr_obj = get_object("float_page");
		var tit_obj = get_object("float_title");
		var win_obj = get_object("float_win");
		var float_bottom = get_object("float_bottom");			
		
		if(bottom==1) {
			win_obj.style.height = win_resize_height - (win_y_first-posy)+"px";
			ifr_obj.style.height = (win_resize_height-20) - (win_y_first-posy)+"px";
			window.status=(win_y_first-posy);
		}
	}
}

function rpt_win_move_toggle(obj_id) {
	var obj = get_object(obj_id);
	if(obj) {
		var ifr_obj = get_object("float_page");
		var tit_obj = get_object("float_title");
		win_state[obj_id] = (win_state[obj_id]!="on") ? "on" : "off";	
		if(win_state[obj_id]=="on") {
			win_x_pos = findPosX(obj);
			win_y_pos = findPosY(obj);
			get_mouse_pos(event);
			win_x_first = posx;
			win_y_first = posy;
			if (browser_dom=="ns4") document.captureEvents(Event.MOUSEMOVE);
			document.onmousemove = get_mouse_pos;
			if(ifr_obj) ifr_obj.style.display="none";
			win_timer[obj_id] = setInterval("win_move('"+obj_id+"')", 1);
			tit_obj.style.cursor="move";
		} else if(win_state[obj_id]!="on") {
			document.onmousemove="";
			if(ifr_obj) ifr_obj.style.display="block";
			clearInterval(win_timer[obj_id]);
			tit_obj.style.cursor='pointer';
		}
	}
}

function rpt_show_toplineoverlay(module_question_id) {
	var overlay = get_object('overlay_'+module_question_id);
	var question_anchor = get_object('rpt_module_question_'+module_question_id);
	if(overlay && question_anchor && !print_mode) {
		overlay.style.display="block";
		overlay.style.top=(findPosY(question_anchor)-194)+"px";
		overlay.style.left=((findPosX(question_anchor)+question_anchor.offsetWidth-overlay.offsetWidth-2)+"px");
	}
}

function rpt_hide_toplineoverlay(module_question_id) {
	var overlay = get_object('overlay_'+module_question_id);
	var question_anchor = get_object('rpt_module_question_'+module_question_id);
	if(overlay && !print_mode) {
		overlay.style.display="none";
	}
	
}

var the_module_question_id = "";
function do_make_break(val) {
	if(val!='')
		submit_topline("/main.php?link=report_topline&queryform_action=makebreak&s=post&module_question_id="+the_module_question_id+"&adm_descript="+val+"&dss_globals=", "opts_breakdowns");	
}

function make_break(module_question_id) {
	the_module_question_id = module_question_id;
	var v="";
	v = IEprompt("Please enter a name for this break:", "", "do_make_break(val)");
	//do_make_break(v);
}

function submit_topline(loc, view_section) {
	loc = loc + "[rptfilt_text/"+get_object('rptfilt_text').value+"]";
	loc = loc + "[rptfilt_usertype/"+get_object('rptfilt_usertype').value+"]";
	loc = loc + "[rptfilt_figures/"+get_object('rptfilt_figures').value+"]";	
	loc = loc + "[rptfilt_module/"+get_object('rptfilt_module').value+"]";	
	loc = loc + "[rptfilt_from/"+get_object('rptfilt_from').value+"]";	
	loc = loc + "[rptfilt_to/"+get_object('rptfilt_to').value+"]";	

	loc = loc + "[rptfilt_hide_labels/"+get_object('rptfilt_hide_labels').checked+"]";
	loc = loc + "[rptfilt_incompletes/"+get_object('rptfilt_incompletes').checked+"]";	
	loc = loc + "[rptfilt_hidetotals/"+get_object('rptfilt_hidetotals').checked+"]";
	loc = loc + "[rptfilt_mean/"+get_object('rptfilt_mean').checked+"]";
	loc = loc + "[rptfilt_optoutonly/"+get_object('rptfilt_optoutonly').checked+"]";
	loc = loc + "[rptfilt_hide_modules/"+get_object('rptfilt_hide_modules').checked+"]";
	loc = loc + "[rptfilt_show_html/"+get_object('rptfilt_show_html').checked+"]";
	loc = loc + "[rptfilt_overlays/"+get_object('rptfilt_overlays').checked+"]";
	loc = loc + "[rptfilt_rejected/"+get_object('rptfilt_rejected').checked+"]";
    loc = loc + "[rptfilt_routeout/"+get_object('rptfilt_routeout').checked+"]";
    loc = loc + "[rptfilt_bounced/"+get_object('rptfilt_bounced').checked+"]";
    loc = loc + "[rptfilt_test/"+get_object('rptfilt_test').checked+"]";
	loc = loc + "[rptfilt_showallres/"+get_object('rptfilt_showallres').checked+"]";
	loc = loc + "[rptfilt_exploops/"+get_object('rptfilt_exploops').checked+"]";
	
/*	if(get_object('rptfilt_hidetotals').checked==true) {
		loc = loc + "[rptfilt_showallres/"+get_object('rptfilt_showallres').checked+"]";
	} else {
		loc = loc + "[rptfilt_showallres/]";
	}
*/	loc = loc + "[rptfilt_qonly/"+get_object('rptfilt_qonly').checked+"]";
	loc = loc + "[rptfilt_routing/"+get_object('rptfilt_routing').checked+"]";
	
	if(get_object('rptfilt_breakdown').value!=0) {
		(get_object('rptfilt_breakdown_list').value=="") ? sep = "" : sep = ",";
		loc = loc + "[rptfilt_breakdown_list/"+get_object('rptfilt_breakdown_list').value+sep+get_object('rptfilt_breakdown').value+"]";	
	}

	if(get_object('rptfilt_qnnrs').value!=0) {
		(get_object('rptfilt_qnnrs_list').value=="") ? sep = "" : sep = ",";
		loc = loc + "[rptfilt_qnnrs_list/"+get_object('rptfilt_qnnrs_list').value+sep+get_object('rptfilt_qnnrs').value+"]";	
	}

	if(view_section) {
		loc = loc + "[view_section/"+view_section+"]";
	} else {
		if(get_object('opts_user_filter').display=="none") loc = loc + "[view_section/opts_user_filter]";
		if(get_object('opts_view_filter').display=="none") loc = loc + "[view_section/opts_view_filter]";
		if(get_object('opts_misc_opts').display=="none") loc = loc + "[view_section/opts_misc_opts]";
		if(get_object('opts_breakdowns').display=="none") loc = loc + "[view_section/opts_breakdowns]";
		if(get_object('opts_restrict_by').display=="none") loc = loc + "[view_section/opts_restrict_by]";
	}
	document.location=(loc);
}

function submit_applybreak(loc, view_section) {
	//document.write(loc);
    loc = loc + "[rptfilt_text/"+get_object('rptfilt_text').value+"]";
	loc = loc + "[rptfilt_usertype/"+get_object('rptfilt_usertype').value+"]";
	loc = loc + "[rptfilt_figures/"+get_object('rptfilt_figures').value+"]";	
	loc = loc + "[rptfilt_module/"+get_object('rptfilt_module').value+"]";	
	loc = loc + "[rptfilt_from/"+get_object('rptfilt_from').value+"]";	
	loc = loc + "[rptfilt_to/"+get_object('rptfilt_to').value+"]";	

	loc = loc + "[rptfilt_hide_labels/"+get_object('rptfilt_hide_labels').checked+"]";
	loc = loc + "[rptfilt_incompletes/"+get_object('rptfilt_incompletes').checked+"]";	
	loc = loc + "[rptfilt_hidetotals/"+get_object('rptfilt_hidetotals').checked+"]";
	loc = loc + "[rptfilt_mean/"+get_object('rptfilt_mean').checked+"]";
	loc = loc + "[rptfilt_optoutonly/"+get_object('rptfilt_optoutonly').checked+"]";
	loc = loc + "[rptfilt_hide_modules/"+get_object('rptfilt_hide_modules').checked+"]";
	loc = loc + "[rptfilt_show_html/"+get_object('rptfilt_show_html').checked+"]";
	loc = loc + "[rptfilt_overlays/"+get_object('rptfilt_overlays').checked+"]";
	loc = loc + "[rptfilt_rejected/"+get_object('rptfilt_rejected').checked+"]";
	loc = loc + "[rptfilt_bounced/"+get_object('rptfilt_bounced').checked+"]";
    loc = loc + "[rptfilt_routeout/"+get_object('rptfilt_routeout').checked+"]";
    loc = loc + "[rptfilt_test/"+get_object('rptfilt_test').checked+"]";
	loc = loc + "[rptfilt_showallres/"+get_object('rptfilt_showallres').checked+"]";
	loc = loc + "[rptfilt_exploops/"+get_object('rptfilt_exploops').checked+"]";
	
/*	if(get_object('rptfilt_hidetotals').checked==true) {
		loc = loc + "[rptfilt_showallres/"+get_object('rptfilt_showallres').checked+"]";
	} else {
		loc = loc + "[rptfilt_showallres/]";
	}
*/	loc = loc + "[rptfilt_qonly/"+get_object('rptfilt_qonly').checked+"]";
	loc = loc + "[rptfilt_routing/"+get_object('rptfilt_routing').checked+"]";
	
	if(get_object('rptfilt_breakdown').value!=0) {
		(get_object('rptfilt_breakdown_list').value=="") ? sep = "" : sep = ",";
		loc = loc + "[rptfilt_breakdown_list/"+get_object('rptfilt_breakdown_list').value+sep+get_object('rptfilt_breakdown').value+"]";	
	}

	if(get_object('rptfilt_qnnrs').value!=0) {
		(get_object('rptfilt_qnnrs_list').value=="") ? sep = "" : sep = ",";
		loc = loc + "[rptfilt_qnnrs_list/"+get_object('rptfilt_qnnrs_list').value+sep+get_object('rptfilt_qnnrs').value+"]";	
	}

	if(get_object('rptfilt_ab_questions').value!=0) {
		(get_object('rptfilt_ab_list').value=="") ? sep = "" : sep = ",";
		loc = loc + "[rptfilt_ab_list/"+get_object('rptfilt_ab_list').value+sep+get_object('rptfilt_ab_questions').value+"]";
	}
    
    loc = loc + "[rptfilt_ab_nested/"+get_object('rptfilt_ab_nested').checked+"]";    

	if(view_section) {
		loc = loc + "[view_section/"+view_section+"]";
	} else {
		if(get_object('opts_user_filter').display=="none") loc = loc + "[view_section/opts_user_filter]";
		if(get_object('opts_view_filter').display=="none") loc = loc + "[view_section/opts_view_filter]";
		if(get_object('opts_misc_opts').display=="none") loc = loc + "[view_section/opts_misc_opts]";
		if(get_object('opts_breakdowns').display=="none") loc = loc + "[view_section/opts_breakdowns]";
		if(get_object('opts_restrict_by').display=="none") loc = loc + "[view_section/opts_restrict_by]";
		if(get_object('opts_apply_break').display=="none") loc = loc + "[view_section/opts_apply_break]";
	}
	document.location=(loc);
}


function topline_toggle_opts(menu_name) {
	get_object('opts_user_filter').style.display="none";	
	get_object('rpt_toolbar_option_user_filter').className="rpt_toolbar_option";	

	get_object('opts_view_filter').style.display="none";	
	get_object('rpt_toolbar_option_view_filter').className="rpt_toolbar_option";	

	get_object('opts_misc_opts').style.display="none";	
	get_object('rpt_toolbar_option_misc_opts').className="rpt_toolbar_option";	

	get_object('opts_breakdowns').style.display="none";	
	get_object('rpt_toolbar_option_breakdowns').className="rpt_toolbar_option";	

	get_object('opts_restrict_by').style.display="none";	
	get_object('rpt_toolbar_option_restrict_by').className="rpt_toolbar_option";

	get_object('opts_'+menu_name).style.display="";
	get_object('rpt_toolbar_option_'+menu_name).className="rpt_toolbar_option_sel";
}

// CC 010708 - Toggle options for apply_breaks
function apply_break_toggle_opts(menu_name) {
	get_object('opts_user_filter').style.display="none";	
	get_object('rpt_toolbar_option_user_filter').className="rpt_toolbar_option";	

	get_object('opts_view_filter').style.display="none";	
	get_object('rpt_toolbar_option_view_filter').className="rpt_toolbar_option";	

	get_object('opts_misc_opts').style.display="none";	
	get_object('rpt_toolbar_option_misc_opts').className="rpt_toolbar_option";	

	get_object('opts_breakdowns').style.display="none";	
	get_object('rpt_toolbar_option_breakdowns').className="rpt_toolbar_option";	

	get_object('opts_restrict_by').style.display="none";	
	get_object('rpt_toolbar_option_restrict_by').className="rpt_toolbar_option";

	get_object('opts_apply_break').style.display="none";	
	get_object('rpt_toolbar_option_apply_break').className="rpt_toolbar_option";

get_object('opts_'+menu_name).style.display="";
	get_object('rpt_toolbar_option_'+menu_name).className="rpt_toolbar_option_sel";
}


function clear_topline(loc) {
	loc = loc + "[rptfilt_text/]";
	loc = loc + "[rptfilt_usertype/]";
	loc = loc + "[rptfilt_figures/]";	
	
	loc = loc + "[rptfilt_breakdown_list/]";	
	loc = loc + "[rptfilt_qnnrs_list/]";		
	
	loc = loc + "[rptfilt_hidetotals/]";	
	loc = loc + "[rptfilt_qonly/]";	
	loc = loc + "[rptfilt_routing/]";
	loc = loc + "[rptfilt_routeout/]";
	loc = loc + "[rptfilt_rejected/]";
	loc = loc + "[rptfilt_bounced/]";
	loc = loc + "[rptfilt_incompletes/]";	
	loc = loc + "[rptfilt_showallres/]";	
	loc = loc + "[rptfilt_mean/]";	
	loc = loc + "[rptfilt_optoutonly/]";		
	loc = loc + "[rptfilt_hide_labels/]";
	loc = loc + "[rptfilt_hide_modules/]";
	loc = loc + "[rptfilt_show_html/]";
	loc = loc + "[rptfilt_overlays/]";
	loc = loc + "[rptfilt_exploops/]";
	
	loc = loc + "[rptfilt_module/]";
	loc = loc + "[rptfilt_from/]";
	loc = loc + "[rptfilt_to/]";

	
	document.location=(loc);
}

function toggle_topline_export(module_question_id, force) {
	q = get_object('tick_'+module_question_id);
	(q.style.backgroundImage=='url(images/bg_selected.gif)' || force==true) ? q.style.backgroundImage='' : q.style.backgroundImage='url(images/bg_selected.gif)';
}

function toggle_topline_export_mod(module_id, force) {
	q = get_object('tick_module_'+module_id);
	(q.style.backgroundImage=='url(images/bg_selected_dark.gif)' || force==true) ? q.style.backgroundImage='' : q.style.backgroundImage='url(images/bg_selected_dark.gif)';
}


function ajax_get_questions(panel_id, questionnaire_id, location, ab_list, curr_id) {
	rand = Math.floor(Math.random()*10000);
	$.ajax({
		type: "GET",
		url: "ajax/ajax_get_questions.php",
		data: "p="+panel_id+"&q="+questionnaire_id+"&loc="+URLEncode(location)+"&ab_list="+ab_list+"&curr_id="+curr_id+"&rand="+rand,
		success: function(data){
			$("#ab_questions").html(data);
		}
	});	
}
