kenken999/php
0
1<?php2 @ini_set("display_errors","1");3 @ini_set("display_startup_errors","1");4 require_once("include/dbcommon.php");5 header("Expires: Thu, 01 Jan 1970 00:00:01 GMT"); 6 require_once("classes/charts.php");7 require_once(getabspath("include/xml.php"));8 require_once(getabspath("classes/searchclause.php"));9 include_once("include/reportfunctions.php");10 11 12if( Security::hasLogin() ) {13 if(!isLogged())14 {15 Security::saveRedirectURL();16 HeaderRedirect("login", "", "message=expired");17 return;18 }19}20 $xml = new xml();21 22 $chrt_strXML = "";23 if( checkTableName(postvalue("chartname") ) )24 {25 include_once("include/".postvalue("chartname")."_variables.php");26 $chrt_strXML = GetChartXML(postvalue("chartname"));27 $chrt_array = $xml->xml_to_array( $chrt_strXML );28 29 if( !$_SESSION["webobject"] ) {30 $_SESSION["webobject"] = array();31 }32 33 $_SESSION["webobject"]["table_type"] = "project";34 $_SESSION["object_sql"] = "";35 }36 37 $webchart = false;38 if( !$chrt_strXML )39 {40 $sessPrefix = "webchart".postvalue('cname');41 $chrt_strXML = wrLoadSelectedEntity( postvalue('cname'), WR_CHART );42 $webchart = true;43 $chrt_array = $xml->xml_to_array( $chrt_strXML );44 if( is_wr_project() )45 include_once("include/" . $chrt_array['settings']['short_table_name'] . "_variables.php");46 }47 48 $param = array();49 $param["webchart"] = $webchart;50 $param["showDetails"] = postvalue('showDetails');51 $param["chartPreview"] = postvalue('chartPreview');52 $param["dashChart"] = postvalue('dashChart');53 $param["pageId"] = postvalue('pageId');54 55 $param["masterTable"] = postvalue('mastertable');56 if( $param["masterTable"] )57 $param["masterKeysReq"] = RunnerPage::readMasterKeysFromRequest();58 59 if( $param["dashChart"] )60 {61 $param["dashTName"] = postvalue('dashTName');62 $param["dashElementName"] = postvalue('dashElName');63 $params["dashPage"] = postvalue("dashPage");64 }65 66 if( $webchart )67 {68 $param["cname"] = postvalue("cname");69 switch( $chrt_array["chart_type"]["type"] )70 {71 case "3d_column":72 $chrt_array["chart_type"]["type"] = "2d_column";73 $chrt_array["appearance"]["is3d"] = "true";74 $chrt_array["appearance"]["isstacked"] = "false";75 break;76 case "3d_bar":77 $chrt_array["chart_type"]["type"] = "2d_bar";78 $chrt_array["appearance"]["is3d"] = "true";79 $chrt_array["appearance"]["isstacked"] = "false";80 break;81 case "3d_column_stacked":82 $chrt_array["chart_type"]["type"] = "2d_column";83 $chrt_array["appearance"]["is3d"] = "true";84 $chrt_array["appearance"]["isstacked"] = "true";85 break;86 case "3d_bar_stacked":87 $chrt_array["chart_type"]["type"] = "2d_bar";88 $chrt_array["appearance"]["is3d"] = "true";89 $chrt_array["appearance"]["isstacked"] = "true";90 break;91 case "2d_column_stacked":92 $chrt_array["chart_type"]["type"] = "2d_column";93 $chrt_array["appearance"]["isstacked"] = "true";94 $chrt_array["appearance"]["is3d"] = "false";95 break;96 case "2d_bar_stacked":97 $chrt_array["chart_type"]["type"] = "2d_bar";98 $chrt_array["appearance"]["isstacked"] = "true";99 $chrt_array["appearance"]["is3d"] = "false";100 break;101 case "line":102 $chrt_array["chart_type"]["type"] = "line";103 if( !isset( $chrt_array["appearance"]["linestyle"] ) )104 $chrt_array["appearance"]["linestyle"] = 0;105 break;106 case "spline":107 $chrt_array["chart_type"]["type"] = "line";108 $chrt_array["appearance"]["linestyle"] = 1;109 break;110 case "step_line":111 $chrt_array["chart_type"]["type"] = "line";112 $chrt_array["appearance"]["linestyle"] = 2;113 break;114 case "area_stacked":115 $chrt_array["chart_type"]["type"] = "area";116 $chrt_array["appearance"]["isstacked"] = "true";117 break;118 }119 }120 else121 {122 $param["cname"] = postvalue("chartname");123 }124 125 126 if( $chrt_array["chart_type"]["type"] == "candle" )127 $chrt_array["chart_type"]["type"] = "candlestick";128 129 switch( $chrt_array["chart_type"]["type"] )130 {131 case "2d_column": 132 $param["2d"] = true;133 $param["bar"] = false;134 $param["stacked"] = false;135 136 if( $chrt_array["appearance"]["is3d"] == "true" || $chrt_array["appearance"]["is3d"] == 1 )137 $param["2d"] = false;138 139 if( $chrt_array["appearance"]["isstacked"] == "true" || $chrt_array["appearance"]["isstacked"] == 1 )140 $param["stacked"] = true;141 142 $chartObj = new Chart_Bar($chrt_array, $param);143 break;144 case "2d_bar": 145 $param["2d"] = true;146 $param["bar"] = true;147 $param["stacked"] = false;148 149 if( $chrt_array["appearance"]["is3d"] == "true" || $chrt_array["appearance"]["is3d"] == 1 )150 $param["2d"] = false;151 152 if( $chrt_array["appearance"]["isstacked"] == "true" || $chrt_array["appearance"]["isstacked"] == 1 )153 $param["stacked"] = true;154 155 $chartObj = new Chart_Bar($chrt_array, $param);156 break;157 case "line":158 if( $chrt_array["appearance"]["linestyle"] == 0 )159 $param["type_line"] = "line";160 elseif( $chrt_array["appearance"]["linestyle"] == 2 )161 $param["type_line"] = "step_line";162 else163 $param["type_line"] = "spline";164 165 $chartObj = new Chart_Line($chrt_array, $param);166 break;167 case "area":168 $param["stacked"] = false;169 if( $chrt_array["appearance"]["isstacked"] == "true" || $chrt_array["appearance"]["isstacked"] == 1 )170 $param["stacked"] = true;171 172 $chartObj = new Chart_Area($chrt_array, $param);173 break;174 case "2d_pie":175 $param["2d"] = true;176 if( $chrt_array["appearance"]["is3d"] == "true" || $chrt_array["appearance"]["is3d"] == 1 )177 $param["2d"] = false;178 179 $param["pie"] = true;180 $chartObj = new Chart_Pie( $chrt_array, $param );181 break;182 case "2d_doughnut":183 $param["pie"] = false;184 $param["2d"] = true;185 if( $chrt_array["appearance"]["is3d"] == "true" || $chrt_array["appearance"]["is3d"] == 1 )186 $param["2d"] = false;187 188 $chartObj = new Chart_Pie($chrt_array, $param);189 break;190 case "combined":191 $chartObj = new Chart_Combined($chrt_array, $param);192 break;193 case "funnel":194 $param["funnel_type"] = $chrt_array["appearance"]["accumulstyle"]; 195 $param["funnel_inv"] = false;196 if( $chrt_array["appearance"]["accumulinvert"] == "true" || $chrt_array["appearance"]["accumulinvert"] == 1 )197 $param["funnel_inv"] = true;198 199 $chartObj = new Chart_Funnel($chrt_array, $param);200 break;201 case "bubble":202 $param["2d"] = true;203 if( $chrt_array["appearance"]["is3d"] == "true" || $chrt_array["appearance"]["is3d"] == 1 )204 $param["2d"] = false;205 206 $param["oppos"] = 1;207 if( $chrt_array["appearance"]["bubbletransp"] == "true" || $chrt_array["appearance"]["bubbletransp"] == 1 )208 $param["oppos"] = 0.3;209 210 $chartObj = new Chart_Bubble($chrt_array, $param);211 break;212 case "gauge":213 if( $chrt_array["appearance"]["gaugestyle"] == 0 )214 $param["gaugeType"] = "circular-gauge";215 else216 $param["gaugeType"] = "linear-gauge";217 218 if( $chrt_array["appearance"]["gaugestyle"] == 1 )219 $param["layout"] = "horizontal";220 else221 $param["layout"] = ""; 222 223 $chartObj = new Chart_Gauge($chrt_array, $param);224 break;225 case "ohlc":226 $param["ohcl_type"] = "ohcl";227 $chartObj = new Chart_Ohlc($chrt_array, $param);228 break;229 case "candlestick":230 $param["ohcl_type"] = "candlestick";231 $chartObj = new Chart_Ohlc($chrt_array, $param);232 break;233 }234 235 if( postvalue("action") == "refresh" )236 {237 echo my_json_encode( $chartObj->get_data() );238 exit();239 }240 241 header("Content-Type: application/json");242 $chartObj->write();243?>244 