Vergleich admin/modules/tools/statistics.php - 1.8.0 - 1.8.33

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 17Zeile 17
if($mybb->input['action'] == "do_graph")
{
$range = array(

if($mybb->input['action'] == "do_graph")
{
$range = array(

		'start' => (int)$mybb->input['start'],
'end' => (int)$mybb->input['end']

		'start' => $mybb->get_input('start', MyBB::INPUT_INT),
'end' => $mybb->get_input('end', MyBB::INPUT_INT)

	);
create_graph($mybb->input['type'], $range);
die;

	);
create_graph($mybb->input['type'], $range);
die;

Zeile 48Zeile 48
	$plugins->run_hooks("admin_tools_statistics_overall_begin");

// Do we have date range criteria?

	$plugins->run_hooks("admin_tools_statistics_overall_begin");

// Do we have date range criteria?

	if($mybb->input['from_year'])

	if($mybb->get_input('from_year'))

	{

	{

		$start_dateline = mktime(0, 0, 0, (int)$mybb->input['from_month'], (int)$mybb->input['from_day'], (int)$mybb->input['from_year']);
$end_dateline = mktime(23, 59, 59, (int)$mybb->input['to_month'], (int)$mybb->input['to_day'], (int)$mybb->input['to_year']);

		$start_dateline = mktime(0, 0, 0, $mybb->get_input('from_month', MyBB::INPUT_INT), $mybb->get_input('from_day', MyBB::INPUT_INT), $mybb->get_input('from_year', MyBB::INPUT_INT));
$end_dateline = mktime(23, 59, 59, $mybb->get_input('to_month', MyBB::INPUT_INT), $mybb->get_input('to_day', MyBB::INPUT_INT), $mybb->get_input('to_year', MyBB::INPUT_INT));

		$range = "&start={$start_dateline}&end={$end_dateline}";
}

// Otherwise default to the last 30 days

		$range = "&start={$start_dateline}&end={$end_dateline}";
}

// Otherwise default to the last 30 days

	if(!$mybb->input['from_year'] || $start_dateline > TIME_NOW || $end_dateline > mktime(23, 59, 59))

	if(!$mybb->get_input('from_year') || $start_dateline > TIME_NOW || $end_dateline > mktime(23, 59, 59))

	{
$start_dateline = TIME_NOW-(60*60*24*30);
$end_dateline = TIME_NOW;

	{
$start_dateline = TIME_NOW-(60*60*24*30);
$end_dateline = TIME_NOW;

Zeile 69Zeile 69

$last_dateline = 0;



$last_dateline = 0;


	if($mybb->input['page'] && $mybb->input['page'] > 1)


	$mybb->input['page'] = $mybb->get_input('page', MyBB::INPUT_INT);
if($mybb->input['page'] > 1)

	{

	{

		$mybb->input['page'] = $mybb->get_input('page', 1);

 
		$start = ($mybb->input['page']*$per_page)-$per_page;
}
else

		$start = ($mybb->input['page']*$per_page)-$per_page;
}
else

Zeile 90Zeile 90
			$stat['change_users'] = ($stat['numusers'] - $stats[$last_dateline]['numusers']);
$stat['change_threads'] = ($stat['numthreads'] - $stats[$last_dateline]['numthreads']);
$stat['change_posts'] = ($stat['numposts'] - $stats[$last_dateline]['numposts']);

			$stat['change_users'] = ($stat['numusers'] - $stats[$last_dateline]['numusers']);
$stat['change_threads'] = ($stat['numthreads'] - $stats[$last_dateline]['numthreads']);
$stat['change_posts'] = ($stat['numposts'] - $stats[$last_dateline]['numposts']);

 
		}
else
{
$stat['change_users'] = 0;
$stat['change_threads'] = 0;
$stat['change_posts'] = 0;

		}

$stats[$stat['dateline']] = $stat;

		}

$stats[$stat['dateline']] = $stat;





		$last_dateline = $stat['dateline'];
}

if(empty($stats))
{
flash_message($lang->error_no_results_found_for_criteria, 'error');

		$last_dateline = $stat['dateline'];
}

if(empty($stats))
{
flash_message($lang->error_no_results_found_for_criteria, 'error');

		admin_redirect("index.php?module=tools");

 
	}

krsort($stats, SORT_NUMERIC);

	}

krsort($stats, SORT_NUMERIC);

Zeile 119Zeile 124
	echo " ".$form->generate_submit_button($lang->view);
echo "</fieldset>\n";
$form->end();

	echo " ".$form->generate_submit_button($lang->view);
echo "</fieldset>\n";
$form->end();


echo "<fieldset><legend>{$lang->users}</legend>\n";
echo "<img src=\"index.php?module=tools-statistics&amp;action=do_graph&amp;type=users{$range}\" />\n";
echo "</fieldset>\n";

echo "<fieldset><legend>{$lang->threads}</legend>\n";
echo "<img src=\"index.php?module=tools-statistics&amp;action=do_graph&amp;type=threads{$range}\" />\n";
echo "</fieldset>\n";

echo "<fieldset><legend>{$lang->posts}</legend>\n";
echo "<img src=\"index.php?module=tools-statistics&amp;action=do_graph&amp;type=posts{$range}\" />\n";
echo "</fieldset>\n";

$total_rows = count($stats);

$table = new Table;
$table->construct_header($lang->date);
$table->construct_header($lang->users);
$table->construct_header($lang->threads);
$table->construct_header($lang->posts);
$query = $db->simple_select("stats", "*", "dateline >= '".(int)$start_dateline."' AND dateline <= '".(int)$end_dateline."'", array('order_by' => 'dateline', 'order_dir' => 'desc', 'limit_start' => $start, 'limit' => $per_page));
while($stat = $db->fetch_array($query))


if(!empty($stats))





















	{

	{

		$table->construct_cell("<strong>".date($mybb->settings['dateformat'], $stat['dateline'])."</strong>");
$table->construct_cell(my_number_format($stat['numusers'])." <small>".generate_growth_string($stats[$stat['dateline']]['change_users'])."</small>");
$table->construct_cell(my_number_format($stat['numthreads'])." <small>".generate_growth_string($stats[$stat['dateline']]['change_threads'])."</small>");
$table->construct_cell(my_number_format($stat['numposts'])." <small>".generate_growth_string($stats[$stat['dateline']]['change_posts'])."</small>");
$table->construct_row();




































		echo "<fieldset><legend>{$lang->users}</legend>\n";
echo "<img src=\"index.php?module=tools-statistics&amp;action=do_graph&amp;type=users{$range}\" />\n";
echo "</fieldset>\n";

echo "<fieldset><legend>{$lang->threads}</legend>\n";
echo "<img src=\"index.php?module=tools-statistics&amp;action=do_graph&amp;type=threads{$range}\" />\n";
echo "</fieldset>\n";

echo "<fieldset><legend>{$lang->posts}</legend>\n";
echo "<img src=\"index.php?module=tools-statistics&amp;action=do_graph&amp;type=posts{$range}\" />\n";
echo "</fieldset>\n";

$total_rows = count($stats);
$pages = ceil($total_rows / $per_page);
if($mybb->input['page'] > $pages)
{
$mybb->input['page'] = 1;
$start = 0;
}

$table = new Table;
$table->construct_header($lang->date);
$table->construct_header($lang->users);
$table->construct_header($lang->threads);
$table->construct_header($lang->posts);
$query = $db->simple_select("stats", "*", "dateline >= '".(int)$start_dateline."' AND dateline <= '".(int)$end_dateline."'", array('order_by' => 'dateline', 'order_dir' => 'desc', 'limit_start' => $start, 'limit' => $per_page));
while($stat = $db->fetch_array($query))
{
$table->construct_cell("<strong>".date($mybb->settings['dateformat'], $stat['dateline'])."</strong>");
$table->construct_cell(my_number_format($stat['numusers'])." <small>".generate_growth_string($stats[$stat['dateline']]['change_users'])."</small>");
$table->construct_cell(my_number_format($stat['numthreads'])." <small>".generate_growth_string($stats[$stat['dateline']]['change_threads'])."</small>");
$table->construct_cell(my_number_format($stat['numposts'])." <small>".generate_growth_string($stats[$stat['dateline']]['change_posts'])."</small>");
$table->construct_row();
}
$table->output($lang->overall_statistics);

$url_range = "&amp;from_month=".$mybb->get_input('from_month', MyBB::INPUT_INT)."&amp;from_day=".$mybb->get_input('from_day', MyBB::INPUT_INT)."&amp;from_year=".$mybb->get_input('from_year', MyBB::INPUT_INT);
$url_range .= "&amp;to_month=".$mybb->get_input('to_month', MyBB::INPUT_INT)."&amp;to_day=".$mybb->get_input('to_day', MyBB::INPUT_INT)."&amp;to_year=".$mybb->get_input('to_year', MyBB::INPUT_INT);

echo draw_admin_pagination($mybb->input['page'], $per_page, $total_rows, "index.php?module=tools-statistics{$url_range}&amp;page={page}");

	}

	}

	$table->output($lang->overall_statistics);

$url_range = "&amp;from_month=".(int)$mybb->input['from_month']."&amp;from_day=".(int)$mybb->input['from_day']."&amp;from_year=".(int)$mybb->input['from_year'];
$url_range .= "&amp;to_month=".(int)$mybb->input['to_month']."&amp;to_day=".(int)$mybb->input['to_day']."&amp;to_year=".(int)$mybb->input['to_year'];

echo draw_admin_pagination($mybb->input['page'], $per_page, $total_rows, "index.php?module=tools-statistics{$url_range}&amp;page={page}");

 

$page->output_footer();
}



$page->output_footer();
}


 
/**
* @param int $number
*
* @return string
*/

function generate_growth_string($number)
{
global $lang, $cp_style;

function generate_growth_string($number)
{
global $lang, $cp_style;





	if($number === null)

	if($number === null)

	{

	{

		return "";
}

		return "";
}





	$number = (int)$number;
$friendly_number = my_number_format(abs($number));

if($number > 0)
{
$growth_string = "(<img src=\"./styles/{$cp_style}/images/icons/increase.png\" alt=\"{$lang->increase}\" title=\"{$lang->increase}\" style=\"vertical-align: middle; margin-top: -2px;\" /> {$friendly_number})";

	$number = (int)$number;
$friendly_number = my_number_format(abs($number));

if($number > 0)
{
$growth_string = "(<img src=\"./styles/{$cp_style}/images/icons/increase.png\" alt=\"{$lang->increase}\" title=\"{$lang->increase}\" style=\"vertical-align: middle; margin-top: -2px;\" /> {$friendly_number})";

	}

	}

	elseif($number == 0)

	elseif($number == 0)

	{

	{

		$growth_string = "(<img src=\"./styles/{$cp_style}/images/icons/no_change.png\" alt=\"{$lang->no_change}\" title=\"{$lang->no_change}\" style=\"vertical-align: middle; margin-top: -2px;\" /> {$friendly_number})";
}
else

		$growth_string = "(<img src=\"./styles/{$cp_style}/images/icons/no_change.png\" alt=\"{$lang->no_change}\" title=\"{$lang->no_change}\" style=\"vertical-align: middle; margin-top: -2px;\" /> {$friendly_number})";
}
else

Zeile 185Zeile 204

return $growth_string;
}


return $growth_string;
}








/**
* @param string $type users, threads, posts
* @param array $range
*/

function create_graph($type, $range=null)
{
global $db;

function create_graph($type, $range=null)
{
global $db;

Zeile 210Zeile 233
	}

require_once MYBB_ROOT.'inc/class_graph.php';

	}

require_once MYBB_ROOT.'inc/class_graph.php';

 

if(!Graph::can_use())
{
die;
}


$points = $stats = $datelines = array();
if($start == 0)


$points = $stats = $datelines = array();
if($start == 0)