示例#1
0
文件: lines.php 项目: nagyist/Tattle
            fMessaging::create('affected', "/graphs.php", $line->getAlias());
            fMessaging::create('success', "/graphs.php", 'The Line ' . $line->getAlias() . ' was successfully created');
            fURL::redirect($graph_url);
        } catch (fExpectedException $e) {
            fMessaging::create('error', fURL::get(), $e->getMessage());
        }
    }
    include VIEW_PATH . '/add_edit_line.php';
} elseif ('clone' == $action) {
    $line_to_clone = new Line($line_id);
    $graph_id = $line_to_clone->getGraphId();
    $graph = new Graph($graph_id);
    if (fRequest::isPost()) {
        try {
            fRequest::validateCSRFToken(fRequest::get('token'));
            Line::cloneLine($line_id);
            $graph_url = Graph::makeUrl('edit', $graph);
            fMessaging::create('affected', $graph_url, $line_to_clone->getAlias());
            fMessaging::create('success', $graph_url, 'The Line ' . $line_to_clone->getAlias() . ' was successfully cloned');
            fURL::redirect($graph_url);
        } catch (fExpectedException $e) {
            fMessaging::create('error', fURL::get(), $e->getMessage());
        }
    }
    $dashboard = new Dashboard($graph->getDashboardId());
    $dashboard_id = $graph->getDashboardId();
    $lines = Line::findAll($graph_id);
    include VIEW_PATH . '/add_edit_graph.php';
} elseif ('reorder' == $action) {
    $drag_order = fRequest::get('drag_order');
    $error = false;
示例#2
0
文件: Graph.php 项目: nagyist/Tattle
 public static function cloneGraph($graph_id, $dashboard_id = NULL)
 {
     $graph_to_clone = new Graph($graph_id);
     if (empty($dashboard_id)) {
         $dashboard_id = $graph_to_clone->getDashboardId();
     }
     $graph = new Graph();
     $clone_name = 'Clone of ' . $graph_to_clone->getName();
     // If it's too long, we truncate
     if (strlen($clone_name) > 255) {
         $clone_name = substr($clone_name, 0, 255);
     }
     $graph->setName($clone_name);
     $graph->setArea($graph_to_clone->getArea());
     $graph->setVtitle($graph_to_clone->getVtitle());
     $graph->setDescription($graph_to_clone->getDescription());
     $graph->setDashboardId($dashboard_id);
     $graph->setWeight($graph_to_clone->getWeight());
     $graph->setTimeValue($graph_to_clone->getTimeValue());
     $graph->setUnit($graph_to_clone->getUnit());
     $graph->setCustomOpts($graph_to_clone->getCustomOpts());
     $graph->setStartsAtMidnight($graph_to_clone->getStartsAtMidnight());
     $graph->store();
     // Clone of the lines
     $lines = Line::findAll($graph_id);
     foreach ($lines as $line_to_clone) {
         Line::cloneLine($line_to_clone->getLineId(), TRUE, $graph->getGraphId());
     }
 }