CoolFace
Apppublic

kenken999/php

sourceHugging Faceupdated 2y agoView on Hugging Face
0likes
dchart.php251 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 7$strTableName="";8 9include("include/reportfunctions.php");10 11$cname = postvalue("cname");12if( !$cname ) {13	return;14}15 16$chrt_array = wrGetEntityArray( $cname, WR_CHART );17if( !$chrt_array )18	header("location: ".GetTableLink("webreport"));19else20	Reload_Chart( $cname );21 22if(is_wr_project())23	include("include/" . $chrt_array['settings']['short_table_name'] . "_variables.php");24 25$sessPrefix = "webchart".$cname;26 27	if( !Security::getUserName() )28	{29		$_SESSION["MyURL"]=$_SERVER["SCRIPT_NAME"]."?".$_SERVER["QUERY_STRING"];30		header("Location: ".GetTableLink("login", "", "message=expired"));31		return;32	} elseif ( $chrt_array['settings']['status'] == "private" && $chrt_array['settings']['owner'] != Security::getUserName() ) {33		echo "<p>"."You don't have permissions to view this chart"."</p>";34		exit();35	}36 37	if (count(GetUserGroups()) > 1)38	{39	    $arr_reports = array();40	    $arr_reports = wrGetEntityList( WR_CHART );41	    foreach ( $arr_reports as $rpt ) {42		    if (( $rpt["owner"] != Security::getUserName() || $rpt["owner"] == "") && $rpt["view"]==0 && $chrt_array['settings']['name']==$rpt["name"])43		      {44		       echo "<p>"."You don't have permissions to view this chart"."</p>";45		       exit();46		    }47	    }48	}49 50//	process request data, fill session variables51if ( !count( $_POST ) && ( count( $_GET ) <= 1 ) )52{53	$sess_unset = array();54	foreach($_SESSION as $key=>$value)55		if(substr($key,0,strlen($sessPrefix)+1)==$sessPrefix."_" &&56			strpos(substr($key,strlen($sessPrefix)+1),"_")===false)57			$sess_unset[] = $key;58	foreach($sess_unset as $key)59		unset($_SESSION[$key]);60}61 62if(@$_REQUEST["a"]=="advsearch" || @$_REQUEST["a"]=="integrated")63{64	$_SESSION[$sessPrefix."_asearchnot"]=array();65	$_SESSION[$sessPrefix."_asearchopt"]=array();66	$_SESSION[$sessPrefix."_asearchfor"]=array();67	$_SESSION[$sessPrefix."_asearchfor2"]=array();68	$_SESSION[$sessPrefix."_asearchtable"]=array();69	$_SESSION[$sessPrefix."_asearchfortype"]=array();70	unset($_SESSION[$sessPrefix."_asearchtype"]);71	$tosearch=0;72}73 74if(@$_REQUEST["a"]=="advsearch")75{76	$asearchfield = postvalue("asearchfield");77	$asearchtable = postvalue("asearchtable");78	$_SESSION[$sessPrefix."_asearchtype"] = postvalue("type");79	if(!$_SESSION[$sessPrefix."_asearchtype"])80		$_SESSION[$sessPrefix."_asearchtype"]="and";81	foreach($asearchfield as $ind => $field)82	{83		if (!is_wr_project()) {84			$_SESSION[$sessPrefix."_asearchtable"][$field]=$asearchtable[$ind];85		}86		$gfield=GoodFieldName($field)."_1";87		$asopt=postvalue("asearchopt_".$gfield);88		$value1=postvalue("value_".$gfield);89		$type=postvalue("type_".$gfield);90		$value2=postvalue("value1_".$gfield);91		$not=postvalue("not_".$gfield);92		if(strlen($value1) || $asopt=='Empty')93		{94			$tosearch=1;95			$_SESSION[$sessPrefix."_asearchopt"][$field]=$asopt;96			if(!is_array($value1))97				$_SESSION[$sessPrefix."_asearchfor"][$field]=$value1;98			else99				$_SESSION[$sessPrefix."_asearchfor"][$field]=combinevalues($value1);100			$_SESSION[$sessPrefix."_asearchfortype"][$field]=$type;101			if($value2)102				$_SESSION[$sessPrefix."_asearchfor2"][$field]=$value2;103			$_SESSION[$sessPrefix."_asearchnot"][$field]=($not=="on");104		}105	}106}107elseif(@$_REQUEST["a"]=="integrated")108{109	$_SESSION[$sessPrefix."_asearchtype"] = postvalue("criteria");110	if(!$_SESSION[$sessPrefix."_asearchtype"])111		$_SESSION[$sessPrefix."_asearchtype"]="and";112	// prepare vars		113	$j=1;114 115	// scan all srch fields		116	while ($field = postvalue('field'.$j)) 117	{	118		$tosearch=1;119		$_SESSION[$sessPrefix."_asearchfortype"][$field] = trim(postvalue('type'.$j));120		$_SESSION[$sessPrefix."_asearchfor"][$field] = trim(postvalue('value'.$j.'1'));121		$_SESSION[$sessPrefix."_asearchopt"][$field] = (postvalue('option'.$j) ? postvalue('option'.$j) : 'Contains');122		$_SESSION[$sessPrefix."_asearchfor2"][$field] = trim(postvalue('value'.$j.'2'));	123		$_SESSION[$sessPrefix."_asearchnot"][$field] = postvalue('not'.$j) == 'on';124		$j++;125	}	126}127if(@$_REQUEST["a"]=="advsearch" || @$_REQUEST["a"]=="integrated")128{129	if($tosearch)130		$_SESSION[$sessPrefix."_search"]=2;131	else132		$_SESSION[$sessPrefix."_search"]=0;133	$_SESSION[$sessPrefix."_pagenumber"]=1;134}135 136 137include('include/xtempl.php');138$xt = new Xtempl();139 140 141	$xt->assign("userid",runner_htmlspecialchars( Security::getUserName() ) );142	$xt->assign("guest", Security::isGuest() );143 144if( Security::dynamicPermissions() ) {145	$xt->assign("admin",@$_SESSION["IsAdmin"]);146}147 148 149//$chartPreview = "&chartPreview=true";150$chartPreview = "";151 152$width = 800;153$height = 640;154 155$refresh=0;156if($chrt_array["appearance"]["autoupdate"]=="true")157	$refresh = $chrt_array["appearance"]["update_interval"]*60;158 159$chartParams = array();160$chartParams['width'] = $width;161$chartParams['height'] = $height;162$chartParams['chartName'] = postvalue('cname');163$chartParams['containerId'] = "showchart";164$chartParams['chartType'] = $chrt_array['chart_type']['type'];165$chartParams['refreshTime'] = $refresh;166$chartParams['xmlFile'] = GetTableLink("dchartdata") . '?cname=' . postvalue('cname') . $chartPreview .167	'&ctype=' . $chrt_array['chart_type']['type'];168 169$chartParams['settings'] = array();170$chartParams['settings']['seriesColor'] = array();171 172foreach( $chrt_array["parameters"] as $i => $s ) 173{174	if( $s["series_color"] != "" )175		$chartParams['settings']['seriesColor'][] = $s["series_color"];176}177	178	179$show_dchart = '<div id="' . $chartParams['containerId'] . '" style="width:' . $width . 'px;height:' . $height . 'px"></div>';180	$show_dchart .= '<script type="text/javascript" language="javascript" src="' . GetRootPathForResources( 'libs/js/anychart.min.js' ) . '"></script>';181//	$show_dchart .= '<script type="text/javascript" language="javascript" src="' . GetRootPathForResources( 'libs/js/migrationTool.js' ) . '"></script>';182	$show_dchart .= '<script type="text/javascript" language="javascript">183	(function(){184		var params = ' . my_json_encode( $chartParams ) . ';185		createChart( params );186	})();187	</script>';188$load_flash_player = '189<script type="text/javascript">190	$(document).ready(function(){191		var svgSupported = window.SVGAngle != undefined;192		var str="";193		if (!svgSupported)194		{195			str = "<center>";196			str += "'."".'<br /><br />";197			str += "<a href=\"http://www.adobe.com/go/getflashplayer\"><img border=\"0\" src=\"http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif\" /></a><br />";198			str += "</center>";		199		}200		if (typeof(ActiveXObject) != "undefined") {201			try { a = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");d = a.GetVariable("$version"); }202			catch (e) { d = false; }203			if (!d) {204				$("div.center_div").html( str );	205				$("#ExpPDF").hide();206			}			207		} else if ((navigator.product == "Gecko" && window.find && !navigator.savePreferences)208			|| (navigator.userAgent.indexOf("WebKit") != -1 || navigator.userAgent.indexOf("Konqueror") != -1))209		{210			div = $("div[id*=\'__chart_generated_container__\']");211			if ( div[0] == undefined ) {212				$("div.center_div").html( str );			213				$("#ExpPDF").hide();214			} else {215				if($("div.center_div").find("object").length==0)216					$("#ExpPDF").hide();217				$(div).appendTo("div.center_div");218			}219		}	220	});221</script>';222 223if($_SESSION["back_to_menu"])224	$xt->assign("back_to_menu", true);225else226	$xt->assign("back_to_menu", false);227$xt->assign("wr_pagestylepath", $wr_pagestylepath);	228$xt->assign("chart_block", true);229 230$xt->assign("chart_constructor", $show_dchart);231$xt->assign("load_flash_player", $load_flash_player);232if(!IsStoredProcedure($chrt_array['sql']))233	$xt->assign("testAdvSearch", testAdvSearch($chrt_array['tables'][0] ) );234else	235	$xt->assign("testAdvSearch", false);236 237$chart_name_js = jsreplace( postvalue( 'cname' ) );238$xt->assign("chart_name_js",  $chart_name_js);239 240$xt->assign("chart_title", runner_htmlspecialchars( $chrt_array['title'] ) );241$xt->assign("short_table_name", runner_htmlspecialchars( $chrt_array['settings']['short_table_name'] ) );242$xt->assign("short_table_name_js", jsreplace( $chrt_array['settings']['short_table_name'] ) );243$xt->assign("ext", "php" );244 245$searchType = (!is_wr_project()) ? GetTableLink("dsearch") : GetTableLink(runner_htmlspecialchars($chrt_array['settings']['short_table_name']), "search");246$xt->assign("searchHref", "href='".$searchType."?cname=".$chart_name_js."'");247 248$templatefile = GetTemplateName("", "dchart");249$xt->display($templatefile);250 251?>