deleting unused code
This commit is contained in:
parent
1c291410f6
commit
20e4fa5e2e
@ -1559,310 +1559,4 @@ class Code extends CI_Controller
|
||||
if ($path == '/') $path = '';
|
||||
return $path;
|
||||
}
|
||||
|
||||
function graph ($type = '', $projectid = '', $path = '', $rev = SVN_REVISION_HEAD)
|
||||
{
|
||||
$this->load->model ('ProjectModel', 'projects');
|
||||
|
||||
$login = $this->login->getUser ();
|
||||
if (CODEPOT_SIGNIN_COMPULSORY && $login['id'] == '')
|
||||
{
|
||||
header($_SERVER['SERVER_PROTOCOL'].' 404 Not Found');
|
||||
return;
|
||||
}
|
||||
|
||||
$project = $this->projects->get ($projectid);
|
||||
//if ($project === FALSE || ($project->public !== 'Y' && $login['id'] == ''))
|
||||
if ($project === FALSE || !$this->_can_read ($this->projects, $projectid, $login))
|
||||
{
|
||||
header($_SERVER['SERVER_PROTOCOL'].' 404 Not Found');
|
||||
return;
|
||||
}
|
||||
|
||||
$this->load->model ('SubversionModel', 'subversion');
|
||||
|
||||
$path = $this->converter->HexToAscii ($path);
|
||||
if ($path == '.') $path = ''; /* treat a period specially */
|
||||
$path = $this->_normalize_path ($path);
|
||||
|
||||
if ($type == 'cloc-file')
|
||||
{
|
||||
// number of lines in a single file
|
||||
|
||||
$file = $this->subversion->getFile ($projectid, $path, $rev);
|
||||
if ($file === FALSE)
|
||||
{
|
||||
header($_SERVER['SERVER_PROTOCOL'].' 500 Internal Server Error');
|
||||
return;
|
||||
}
|
||||
|
||||
if ($file['type'] != 'file')
|
||||
{
|
||||
header($_SERVER['SERVER_PROTOCOL'].' 500 Internal Server Error');
|
||||
return;
|
||||
}
|
||||
|
||||
// pass __FILE__ as the first argument so that tempnam creates a name
|
||||
// in the system directory. __FILE__ can never be a valid directory.
|
||||
$tfname = @tempnam(__FILE__, 'codepot-cloc-');
|
||||
if ($tfname === FALSE)
|
||||
{
|
||||
header($_SERVER['SERVER_PROTOCOL'].' 500 Internal Server Error');
|
||||
return;
|
||||
}
|
||||
|
||||
$actual_tfname = $tfname . '.' . pathinfo ($file['name'], PATHINFO_EXTENSION);
|
||||
@file_put_contents ($actual_tfname, $file['content']);
|
||||
|
||||
$cloc_cmd = sprintf ('%s --quiet --csv --csv-delimiter=":" %s', CODEPOT_CLOC_COMMAND_PATH, $actual_tfname);
|
||||
$cloc = @popen ($cloc_cmd, 'r');
|
||||
if ($cloc === FALSE)
|
||||
{
|
||||
@unlink ($tfname);
|
||||
@unlink ($actual_tfname);
|
||||
header($_SERVER['SERVER_PROTOCOL'].' 500 Internal Server Error');
|
||||
return;
|
||||
}
|
||||
|
||||
$line_count = 0;
|
||||
$counter = FALSE;
|
||||
while (!feof($cloc))
|
||||
{
|
||||
$line = @fgets ($cloc);
|
||||
if ($line === FALSE) break;
|
||||
|
||||
if ($line_count == 2)
|
||||
{
|
||||
$counter = explode (':', $line);
|
||||
}
|
||||
$line_count++;
|
||||
}
|
||||
|
||||
@pclose ($cloc);
|
||||
@unlink ($tfname);
|
||||
@unlink ($actual_tfname);
|
||||
|
||||
if ($counter === FALSE)
|
||||
{
|
||||
$stats = array (
|
||||
'no-data' => 0
|
||||
);
|
||||
$title = $file['name'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$stats = array (
|
||||
'blank' => (integer)$counter[2],
|
||||
'comment' => (integer)$counter[3],
|
||||
'code' => (integer)$counter[4],
|
||||
'total' => (integer)$counter[2] + (integer)$counter[3] + (integer)$counter[4]
|
||||
);
|
||||
|
||||
$title = $file['name'] . ' (' . $counter[1] . ')';
|
||||
}
|
||||
|
||||
$this->load->library ('PHPGraphLib', array ('width' => 280, 'height' => 200), 'graph');
|
||||
$this->graph->addData($stats);
|
||||
$this->graph->setTitle($title);
|
||||
$this->graph->setDataPoints(TRUE);
|
||||
$this->graph->setDataValues(TRUE);
|
||||
$this->graph->setBars(TRUE);
|
||||
$this->graph->setXValuesHorizontal(TRUE);
|
||||
$this->graph->setYValues (FALSE);
|
||||
$this->graph->createGraph();
|
||||
}
|
||||
else if ($type == 'commits-per-month')
|
||||
{
|
||||
$total_commits = 0;
|
||||
$average_commits = 0;
|
||||
$total_months = 0;
|
||||
|
||||
$file = $this->subversion->getHistory ($projectid, $path, $rev);
|
||||
if ($file === FALSE)
|
||||
{
|
||||
//header($_SERVER['SERVER_PROTOCOL'].' 500 Internal Server Error');
|
||||
//return;
|
||||
$stats = array ('no-data' => 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
$history = $file['history'];
|
||||
$history_count = count($history);
|
||||
|
||||
$stats = array();
|
||||
for ($i = 0; $i < $history_count; $i++)
|
||||
{
|
||||
$h = $history[$i];
|
||||
if (array_key_exists ('date', $h))
|
||||
{
|
||||
$date = substr($h['date'], 0, 7);
|
||||
if (array_key_exists ($date, $stats))
|
||||
$stats[$date]++;
|
||||
else
|
||||
$stats[$date] = 1;
|
||||
}
|
||||
}
|
||||
|
||||
ksort ($stats);
|
||||
$stats_count = count($stats);
|
||||
$idx = 1;
|
||||
foreach ($stats as $k => $v)
|
||||
{
|
||||
if ($idx == 1)
|
||||
{
|
||||
$min_year = substr($k, 0, 4);
|
||||
$min_month = substr($k, 5, 2);
|
||||
}
|
||||
|
||||
if ($idx == $stats_count)
|
||||
{
|
||||
$max_year = substr($k, 0, 4);
|
||||
$max_month = substr($k, 5, 2);
|
||||
}
|
||||
|
||||
$idx++;
|
||||
$total_commits += $v;
|
||||
}
|
||||
|
||||
$total_months = 0;
|
||||
for ($year = $min_year; $year <= $max_year; $year++)
|
||||
{
|
||||
$month = ($year == $min_year)? $min_month: 1;
|
||||
$month_end = ($year == $max_year)? $max_month: 12;
|
||||
|
||||
while ($month <= $month_end)
|
||||
{
|
||||
$date = sprintf ("%04d-%02d", $year, $month);
|
||||
|
||||
if (!array_key_exists ($date, $stats))
|
||||
{
|
||||
// fill the holes
|
||||
$stats[$date] = 0;
|
||||
}
|
||||
|
||||
$month++;
|
||||
$total_months++;
|
||||
}
|
||||
}
|
||||
|
||||
if ($total_months > 0) $average_commits = $total_commits / $total_months;
|
||||
}
|
||||
|
||||
ksort ($stats);
|
||||
$stats_count = count($stats);
|
||||
|
||||
$graph_width = $stats_count * 8;
|
||||
if ($graph_width < 400) $graph_width = 400;
|
||||
$this->load->library ('PHPGraphLib', array ('width' => $graph_width, 'height' => 180), 'graph');
|
||||
$this->graph->addData($stats);
|
||||
$this->graph->setTitle("Commits per month ({$total_commits}/{$total_months})");
|
||||
$this->graph->setDataPoints(FALSE);
|
||||
$this->graph->setDataValues(FALSE);
|
||||
$this->graph->setLine(FALSE);
|
||||
$this->graph->setLineColor("red");
|
||||
$this->graph->setBars(TRUE);
|
||||
$this->graph->setBarOutline (TRUE);
|
||||
$this->graph->setBarColor ("#EEEEEE");
|
||||
$this->graph->setBarOutlineColor ("#AAAAAA");
|
||||
|
||||
$this->graph->setXValues(TRUE);
|
||||
$this->graph->setXValuesHorizontal(TRUE);
|
||||
if ($stats_count <= 1)
|
||||
{
|
||||
$this->graph->setBarSpace(TRUE);
|
||||
//$this->graph->setDataPoints(TRUE);
|
||||
//$this->graph->setDataPointColor("red");
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->graph->setBarSpace(FALSE);
|
||||
|
||||
if ($stats_count <= 8)
|
||||
{
|
||||
$this->graph->setXValuesInterval(1);
|
||||
}
|
||||
else if ($stats_count <= 16)
|
||||
{
|
||||
$this->graph->setXValuesInterval(2);
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->graph->setXValuesInterval(11);
|
||||
}
|
||||
}
|
||||
//$this->graph->setGrid(FALSE);
|
||||
$this->graph->setGridVertical(FALSE);
|
||||
$this->graph->setGridHorizontal(TRUE);
|
||||
if ($total_months > 0) $this->graph->setGoalLine ($average_commits, "red", "solid");
|
||||
$this->graph->createGraph();
|
||||
}
|
||||
else if ($type == 'commit-share-by-users')
|
||||
{
|
||||
// revision is ignored
|
||||
$file = $this->subversion->getHistory ($projectid, $path, $rev);
|
||||
if ($file === FALSE)
|
||||
{
|
||||
header($_SERVER['SERVER_PROTOCOL'].' 500 Internal Server Error');
|
||||
return;
|
||||
}
|
||||
|
||||
$history = $file['history'];
|
||||
$history_count = count($history);
|
||||
|
||||
$stats = array();
|
||||
for ($i = 0; $i < $history_count; $i++)
|
||||
{
|
||||
$h = $history[$i];
|
||||
$author = (array_key_exists ('author', $h))? $h['author']: '?';
|
||||
|
||||
if (array_key_exists ($author, $stats))
|
||||
$stats[$author]++;
|
||||
else
|
||||
$stats[$author] = 1;
|
||||
}
|
||||
|
||||
$this->load->library ('PHPGraphLibPie', array ('width' => 400, 'height' => 300), 'graph');
|
||||
$this->graph->addData($stats);
|
||||
$this->graph->setTitle('Commit share by users');
|
||||
$this->graph->setLabelTextColor('50,50,50');
|
||||
$this->graph->setLegendTextColor('50,50,50');
|
||||
$this->graph->createGraph();
|
||||
}
|
||||
else /* if ($type == 'commits-by-users') */
|
||||
{
|
||||
// revision is ignored
|
||||
$file = $this->subversion->getHistory ($projectid, $path, $rev);
|
||||
if ($file === FALSE)
|
||||
{
|
||||
header($_SERVER['SERVER_PROTOCOL'].' 500 Internal Server Error');
|
||||
return;
|
||||
}
|
||||
|
||||
$history = $file['history'];
|
||||
$history_count = count($history);
|
||||
|
||||
$stats = array();
|
||||
for ($i = 0; $i < $history_count; $i++)
|
||||
{
|
||||
$h = $history[$i];
|
||||
$author = (array_key_exists ('author', $h))? $h['author']: '?';
|
||||
|
||||
if (array_key_exists ($author, $stats))
|
||||
$stats[$author]++;
|
||||
else
|
||||
$stats[$author] = 1;
|
||||
}
|
||||
|
||||
$this->load->library ('PHPGraphLib', array ('width' => 400, 'height' => 300), 'graph');
|
||||
$this->graph->addData($stats);
|
||||
$this->graph->setTitle('Commits by users');
|
||||
$this->graph->setDataPoints(TRUE);
|
||||
$this->graph->setDataValues(TRUE);
|
||||
//$this->graph->setLine(TRUE);
|
||||
$this->graph->setBars(TRUE);
|
||||
//$this->graph->setXValuesHorizontal(TRUE);
|
||||
$this->graph->createGraph();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user