public static function openCanvas($id) { require_once '../config.php'; require_once 'ChartFactory.php'; global $db; global $current_user; $_authorization; $sql = "Select * from colfusion_canvases where vid =" . $id; $rst = $db->get_results($sql); $rows = array(); foreach ($rst as $r) { $rows[] = $r; } $_canvas = $rows[0]; $sql = "select * from colfusion_shares where vid = " . $id . " and user_id = " . $current_user->user_id; $rst = $db->get_row($sql); if ($_canvas->privilege == '1') { if (is_null($rst)) { $_authorization = 3; } else { $_authorization = $rst->privilege; } } else { if (is_null($rst)) { return null; } else { $_authorization = $rst->privilege; } } //Authorize the current user, if current user has the accesibility then get the canvas, else return null; //select the canvas //select chart in the canvas $sql = "select * from colfusion_charts where vid = " . $id; $rst = $db->get_results($sql); $chartArr = array(); if (is_null($rst)) { $rst = array(); } foreach ($rst as $obj) { $datainfo = str_replace('\\"', '"', $obj->datainfo); $da = json_decode($datainfo); $chartArr[$obj->cid] = ChartFactory::openChart($obj->cid, $obj->name, $obj->vid, $obj->type, $obj->left, $obj->top, $obj->depth, $obj->height, $obj->width, $da, $obj->note); } $can = new Canvas($id, $_canvas->name, $_canvas->user_id, $_canvas->note, $_canvas->mdate, $_canvas->cdate, $_canvas->privilege, $_authorization, $chartArr); $can->setIsSave(true); return $can; }