CoolFace
Apppublic

kenken999/php

sourceHugging Faceupdated 2y agoView on Hugging Face
0likes
webreport6.php334 linesDownload Raw Back to public
1<?php2ini_set("display_errors","1");3ini_set("display_startup_errors","1");4include("include/dbcommon.php");5header("Expires: Thu, 01 Jan 1970 00:00:01 GMT");6 7include("include/reportfunctions.php");8 9	if( !Security::getUserName() )10	{11		$_SESSION["MyURL"] = GetTableLink("webreport");12		header("Location: ".GetTableLink("login", "", "message=expired"));13		return;14	}15 16if (is_wr_project()) 17	include("include/" . GetTableURL( $_SESSION['webreports']['tables'][0] ) . "_variables.php");18 19Reload_Report(postvalue("rname"));20include('include/xtempl.php');21$xt = new Xtempl();22 23if (@$_SESSION['webreports']['settings']['title'] != "") {24	$title=@$_SESSION['webreports']['settings']['title'];25	if(strlen($title)>25)26		$title=substr($title,25)."...";27	$xt->assign("report_title",", "."Title".": ".$title);28} else {29	$xt->assign("report_title","");30}31if (@$_SESSION['webreports']['tables'][0] != "") {32	$stable=@$_SESSION['webreports']['tables'][0];33	if(strlen($stable)>25)34		$stable=substr($stable,25)."...";35 36	$xt->assign("report_table",", "."Table".": ".$stable);37} else {38	$xt->assign("report_table","");39}40 41$xt->assign("b_is_report_save",($_SESSION['webreports']['tmp_active'] != "x"));	42$xt->assign("b_is_report_name",($_SESSION['webreports']['settings']['name'] != ""));43$xt->assign("report_name",$_SESSION['webreports']['settings']['name']);44 45$arr_tables = getReportTablesList();46$sort_fields=array();47foreach($arr_tables as $t)48{49	$tfields=WRGetNBFieldsList($t);50	foreach($tfields as $f)51	{52		if(is_wr_db())53			$sort_fields[]=$t.".".$f;54		else55			$sort_fields[]=$f;56	}57}58$aSelSortFields=array();59 60$arr = $_SESSION['webreports']['group_fields'];61if ( !empty( $arr ) ){62 63	for ( $i=0; $i < count($arr)-1; $i++ ) {64		$aSelSortFields[$i]["name"] = $arr[$i]["name"];65		$aSelSortFields[$i]["desc"] = "false";66	}67}68 69$arr = $_SESSION['webreports']['sort_fields'];70if ( !empty( $arr ) ){71 72	for ( $i=0; $i < count($arr); $i++ ) {73		$aCheckSortFields[$i]["name"] = $arr[$i]["name"];74		$aCheckSortFields[$i]["desc"] = $arr[$i]["desc"];75	}76}77 78$h_includes = "";79$b_includes = "";80 81$h_includes .= '82	<link rel="stylesheet" href="'.GetRootPathForResources("include/css/dstyle.css").'" type="text/css">83	<link rel="stylesheet" href="'.GetRootPathForResources("include/css/jquery-ui.css").'" type="text/css">84	<link rel="stylesheet" href="'.GetRootPathForResources("include/fancybox/jquery.fancybox.css").'" type="text/css" media="screen">85	86	<script type="text/javascript" src="'.GetRootPathForResources("include/js/jquery.min.js").'"></script>87	<script type="text/javascript" src="'.GetRootPathForResources("include/js/jquery.dimensions.pack.js").'"></script>88	<script type="text/javascript" src="'.GetRootPathForResources("include/js/jquery.easing.js").'"></script>89    <script type="text/javascript" src="'.GetRootPathForResources("include/js/jquery.fancybox.pack.js").'"></script>90    <script type="text/javascript" src="'.GetRootPathForResources("include/js/jquery-ui.js").'"></script>91	<script type="text/javascript" src="'.GetRootPathForResources("include/js/json.js").'"></script>92'."\r\n";93 94$xt->assign("h_includes", $h_includes);95 96$b_includes .= '97<script type="text/javascript">98var timeout	= 200;99var closetimer	= 0;100var relation_stack = [];101 102$(document).ready(function(){103	$("a#sql_query").fancybox({104		fitToView: false,105				autoSize: false,106				width : 800,107				height : 550,108				overlayShow: true109	});110		$("a#preview").fancybox({111			fitToView: false,112				autoSize: false,113				width : 820,114				height : 660,115				overlayShow: true116		});117	118	';119	$b_includes .= alertDialog();120	$b_includes .= '121	122	function collect_input_data() {123		var output = {};124		output.sort_fields = [];125		$("select[id^=field]").each(function(i){126			if ( $(this).val() != "" ) {127				output.sort_fields[i] = {128					name : $(this).val(),129					desc : $(this).parent("td").next("td").find("input").prop("checked").toString()130				};131			}132		});133		return JSON.stringify(output);		134	}135	136	$("#sqlbtn").click(function(){137		138		var output = collect_input_data();139		140		$.ajax({141			type: "POST",142			url: "'.GetTableLink("save-state").'",143			data: {144				name: "sort_fields",145				web: "webreports",146				str_xml: output,147				rnd: (new Date().getTime())148			},149			success: function(msg){150				if ( msg == "OK" ) {151					$("#sql_query").click();152				} else {153					$("#alert").html("<p>"+msg+"</p>").dialog("open");154				}155			}156		});157	});	158	159	$("#row6")160		.css("cursor", "default")161		.css("font-weight", "bold");162 163	$("td[id^=row]").mouseover(function(){164		for(var i=0; i<=11; i++) {165			if(i == this.id.replace("row", "")) {166				$("td[id=row" + i + "]").css("background-color","#92BEEB");167			}168			else {169				$("td[id=row" + i + "]").css("background-color","#F4F7FB");170			}171		}172	});173 174 175'."\r\n";176 177$b_includes .= JumpTo();178 179if (count(GetUserGroups()) < 2 || isset( $_SESSION['webreports']['settings']['status'] )180	&& $_SESSION['webreports']['settings']['status'] == "private" ) {181	$b_includes .= '$("td[id=row9]").hide();'."\r\n";182}183if (is_wr_project() || is_wr_custom()) {184	$b_includes .= '$("td[id=row1], td[id=row2]").hide();'."\r\n";185}186if($wr_is_standalone)187	$b_includes .= '$("td[id=row11]").hide();'."\n";188	189if ($_SESSION['webreports']['settings']['title'] == "") {190	$b_includes .= '191		for (var i=2; i<=9; i++){192			$("td[id=row" + i + "]").hide();193		};194	'."\r\n";195}196if($_SESSION['webreports']['group_fields'][count($_SESSION['webreports']['group_fields'])-1]["cross_table"]=="true")197	$b_includes .= '$("#row5,#row6").hide();'."\r\n";198    199$rLinks = "var rlinks = {};\r\n";200for($ri = 0; $ri < 10; $ri++)201	$rLinks.= "rlinks['".$ri."'] = '".GetTableLink("webreport".$ri)."';\r\n";202	203$b_includes .= '204	$("#nextbtn, #backbtn, td[id^=row],#savebtn,#saveasbtn,#previewbtn").click(function(){205		var URL="'.GetTableLink("webreport").'";206		'.$rLinks.'207		if( this.id == "nextbtn" )208			URL = "'.GetTableLink("dreport").'?edit=style&rname='.@$_SESSION['webreports']['settings']['name'].'";209		if( this.id == "backbtn" )210			URL = "'.GetTableLink("webreport5").'";211		if( this.id == "saveasbtn" )212			URL = "'.GetTableLink("webreport8", "", "saveas=1").'";213		if( this.id.substr(0,3)=="row" && this.id !="row6" )214			URL = rlinks[this.id.replace(\'row\',\'\')];215		if( this.id =="row10" )216			URL = "'.GetTableLink("webreport").'";217		if( this.id =="row11" )218			URL = "'.GetTableLink("menu").'";219		if ( this.id == "row7" )220			URL = "'.GetTableLink("dreport").'?edit=style&rname='.@$_SESSION['webreports']['settings']['name'].'";			221		222		var output = collect_input_data();223		var_save=0;224		if( this.id == "savebtn")225			var_save=1226		if( this.id == "savebtn" || this.id == "previewbtn") {227			id=this.id;228			$.ajax({229				type: "POST",230				url: "'.GetTableLink("save-state").'",231				data: {232					save: var_save,233					web: "webreports",234					name: "sort_fields",235					str_xml: output,236					rnd: (new Date().getTime())237				},238				success: function(msg){239					if ( msg == "OK" ) {240						if(id=="savebtn")241						{242							$("#alert")243								.html("<p>'."Report Saved".'</p>")244								.dialog("option", "close", function(){245									window.location = "'.GetTableLink("webreport").'";246								})247								.dialog("open");248						}249						else250							$("#preview").click();251					} else {252						$("#alert").html("<p>"+msg+"</p>").dialog("open");253					}254				},255				error: function() {256					$("#alert").html("<p>'."Some problems appear during saving".'</p>").dialog("open");257				}258			});259		}260 261		thisid=this.id;262		if(this.id != "row6" && this.id !="savebtn" && this.id !="previewbtn") {263			$.ajax({264				type: "POST",265				url: "'.GetTableLink("save-state").'",266				data: {267					name: "sort_fields",268					web: "webreports",269					str_xml: output,270					rnd: (new Date().getTime())271				},272				success: function(msg){273					if ( msg == "OK" ) {274						window.location = URL;275					} else {276						$("#alert").html("<p>"+msg+"</p>").dialog("open");277						if( thisid == "row10" || thisid == "row11" )278							window.location=URL;	279					}280				}281			});282		}283	});284});285</script>'."\r\n";286 287$sSortFields = "";288foreach ($sort_fields as $fld) {289   $sSortFields .= "<option value=\"" . runner_htmlspecialchars($fld) . "\">" . $fld . "</option>"."\r\n";290}291 292for ( $i=0; $i < 5; $i++ ) {293   $aSortFields[] = $sSortFields;294   $aChecked[] = "";295}296 297$arr = $aSelSortFields;298if ( !empty($aCheckSortFields) ) {299	$tmpOut = array_slice($aCheckSortFields, count($arr));300}301if ( !empty($tmpOut) ) {302	$arr = array_merge($arr, $tmpOut);303}304 305 306for ( $i=0; $i < count($arr); $i++ ) {307	$sSortFields = "";308	foreach ($sort_fields as $fld) {309		$selected = ( $fld == $arr[$i]["name"] ) ? "selected" : "";310		$sSortFields .= "<option " . $selected . " value=\"" . runner_htmlspecialchars($fld) . "\">" . $fld . "</option>"."\r\n";311	}312	$aSortFields[$i] = $sSortFields;313	$aChecked[$i] = ( $arr[$i]["desc"] == "true" ) ? "checked" : "";314}315 316for ( $i=0; $i < count($aSortFields); $i++ ) {317	$xt->assign("sortFields" . ($i+1), $aSortFields[$i]);318	$xt->assign("desc" . ($i+1), $aChecked[$i]);319}320 321for ( $i=0; $i < count($aSelSortFields); $i++ ) {322	$b_includes .= '<script type="text/javascript">323		$(document).ready(function(){'."\n";324	$b_includes .= '$("tbody > tr", "#tsf").eq(' . $i . ').find("td").eq(0).find("select").get(0).disabled = true;'."\n";325	$b_includes .= '$("tbody > tr", "#tsf").eq(' . $i . ').find("td").eq(1).find("input").get(0).disabled = true;'."\n";326	$b_includes .= '});327	</script>';328}329$xt->assign("report_name_preview",$_SESSION['webreports']['settings']['name']);330$xt->assign("b_includes", $b_includes);331$xt->assign("wr_pagestylepath", $wr_pagestylepath);332$templatefile = GetTemplateName("", "webreport6");333$xt->display($templatefile);334?>