Exemplo n.º 1
0
 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;
 }