示例#1
0
function showPanel($chart_id, $panel_id, $help_msg, $analysis_msg)
{
    $panel_db = new PanelDB();
    $p = $panel_db->selectPanel($panel_id);
    if ($p["ishide"] == 1) {
        return;
    }
    $panel = new Panel();
    $panel->data = $p;
    $panel->data["left"] = $p["x"] . "px";
    $panel->data["top"] = $p["y"] . "px";
    //截图不需要显示这些
    if (!isset($_GET["snap"])) {
        $permission = new Permission();
        $isEditable = $permission->checkBoardEditPermission(DASHBOARD_ID, $_SESSION["email"]);
        $panel->addOptionHelp();
        if ($isEditable) {
            $panel->addOptionEdit();
            $panel->addOptionDataLock();
            if ($panel->data["analysis_show"] == "1") {
                $panel->addOptionAnalysis(1);
            } else {
                $panel->addOptionAnalysis();
            }
            //$panel->addOptionChangeSize();
            //$panel->data["dragable"]='dragable';
        }
    }
    //data["analysis_show"]=="1" 表示显示分析数据 ,如果显示分析数据:chart宽度60%,图标为打开;否则:width默认,图标为折叠样式
    if ($panel->data["analysis_show"] == "1") {
        $panel->data["content"] = "<div class='ichart' style='width:70%' id='chart{$chart_id}'></div>";
        $panel->data["content"] .= "<div class='ichart_analysis_msg showing'>{$analysis_msg}</div>";
        $panel->data["content"] .= "<div class='ichart_help_msg' style='width:70%'>{$help_msg}</div>";
    } else {
        $panel->data["content"] = "<div class='ichart' id='chart{$chart_id}'></div>";
        $panel->data["content"] .= "<div class='ichart_analysis_msg' style='display:none;'>{$analysis_msg}</div>";
        $panel->data["content"] .= "<div class='ichart_help_msg'>{$help_msg}</div>";
    }
    $panel->show();
}
示例#2
0
 if ($_GET["action"] == "update_options") {
     $data = $_GET;
     $id = $_GET["chart_id"];
     #从数据库取表数据
     $db = new ChartDB();
     $chart_from_db = $db->selectChart($id);
     #拿到数据源类和图表类
     $data_machine = $chart_from_db["data_machine"];
     $chart_type = $chart_from_db["type"];
     #利用工厂实例化图表对象
     $chart = ChartFactory::getChart($chart_type);
     #json字符转化为图Array型数据
     $chart->setChartArray($chart_from_db["data"]);
     $chart->optionsEditAction($data);
     $db->updateChart($id, $chart->getChartJson());
     $panel_db = new PanelDB();
     $panel_db->updatePaneltDataLock($id, 1);
     echo $chart->getChartJson();
 } else {
     if ($_GET["action"] == "update_help_msg") {
         $id = $_GET["chart_id"];
         $help_msg = $_GET["help_msg"];
         $db = new ChartDB();
         if ($db->updateChartHelpMsg($id, $help_msg)) {
             echo "Y";
         } else {
             echo "N";
         }
     } else {
         if ($_GET["action"] == "update_analysis_msg") {
             $id = $_GET["chart_id"];
示例#3
0
     //跟新图表panel的位置
     $id = $_GET["panel_id"];
     $islock = $_GET["lock"];
     $db = new PanelDB();
     if ($db->updatePaneltDataLock($id, $islock)) {
         echo "Y";
     } else {
         echo "N";
     }
 } else {
     if ($_GET["action"] == "update_praise") {
         //点赞
         $panel_id = $_GET["panel_id"];
         $praise = $_GET["praise"];
         $username = $_SESSION["email"];
         $db = new PanelDB();
         if ($praise == 1) {
             if ($db->insertPraise($username, $panel_id, $praise)) {
                 echo "Y";
             } else {
                 echo "N";
             }
         } else {
             if ($praise == 0) {
                 if ($db->updatePraise($username, $panel_id, $praise)) {
                     echo "Y";
                 } else {
                     echo "N";
                 }
             } else {
                 echo "N";
示例#4
0
<?php

session_start();
require_once "class.db.Chart.php";
require_once "class.db.Panel.php";
require_once "class.ui.Charts.php";
require_once "class.bean.Datafresh.php";
require_once "class.bean.Reflect.php";
#ajax.Dashboard 是dashboard的动态部分实现
if (isset($_GET["action"])) {
    if ($_GET["action"] == "fresh_chart") {
        $id = $_GET["chart_id"];
        $username = $_SESSION["email"];
        $p_db = new PanelDB();
        $datalock = $p_db->selectPanel($id, $username);
        $datalock = $datalock["data_lock"];
        if (isset($_GET["stroe"])) {
            $datalock = 0;
        }
        #从数据库取表数据
        $db = new ChartDB();
        $chart_from_db = $db->selectChart($id);
        #拿到数据源类和图表类
        $data_machine = $chart_from_db["data_machine"];
        $chart_type = $chart_from_db["type"];
        #利用工厂实例化图表对象
        $chart = ChartFactory::getChart($chart_type);
        #json字符转化为图Array型数据
        $chart->setChartArray($chart_from_db["data"]);
        #利用工厂实例化图表对象
        $machine = DataMachineFactory::getDataMachine($data_machine);