cakebook / branches / master / views / nodes / stats.ctp

history
<div class="nodes view">
<h2>Statistics</h2>
<div class="summary">
<p><?php echo __('Here\'s a shout out to those who have dedicated time, sweat and tears to write, translate and edit the cookbook contents.', true) ?></p>
</div>
<h3><?php echo sprintf(__('Top %1$s Contributors', true), 'EN') ?></h3>
<div class="options"><ul class="node-options">
	<li><?php echo sprintf(__('Last update: %1$s', true), $time->niceShort($data[$defaultLang]['last_update'])) ?></li>
</ul></div>
<div class="summary">
	<?php
	foreach ($data[$defaultLang]['top_contributors'] as $row) {
		if (isset($users[$row['Revision']['user_id']])) {
			$nick = $users[$row['Revision']['user_id']]['User']['username'];
			if ($users[$row['Revision']['user_id']]['Profile']['url']) {
				$url = $users[$row['Revision']['user_id']]['Profile']['url'];
			} else {
				$url = 'http://bakery.cakephp.org/profiles/view/' . $row['Revision']['user_id'] . '/' . $nick;
			}
		} else {
			$nick = 'user_' . $row['Revision']['user_id'];
			$url = 'http://bakery.cakephp.org/profiles/view/' . $row['Revision']['user_id'] . '/' . $nick;
		}
		$menu->add(array(
			'section' => $defaultLang,
			'title' => sprintf(__('%1$s (%2$s current)', true), $nick, $row[0]['count']),
			'url' => $url
		));
	}
	unset ($counts[$defaultLang]);
	echo '<br style="clear:left" />';
	echo '<div class="userstats">' . $menu->generate($defaultLang, array('class' => 'stats', 'splitCount' => 3)) . '</div>';
	echo '<br style="clear:left" />';
echo '</div>';
foreach ($counts as $lang => $count) {
	$row = $data[$lang];
	echo '<h3 id="' . $lang . '">' . $html->link(sprintf(__('Top %1$s Contributors', true), up($lang)), '#' . $lang) . '</h3><div class="options"><ul class="node-options">';
	echo '<li>' .  sprintf(__('Last update: %1$s', true), $time->niceShort($row['last_update'])) . '</li>';
	echo '<li>' .  sprintf(__('%1$s%% translated', true), (int)($count / $nodes * 100)) . '</li></ul></div><div class="summary">';
	if (!$row['last_update']) {
		echo '<p class="warning">' . __('The cookbook needs you! No submissions for this language!', true) . '</p>';
	} else {
		if (!$time->wasWithinLast('2 month', $row['last_update']))  {
			echo '<p class="warning">' . __('The cookbook needs you! This language will soon be removed if not updated.', true) . '</p>';
		} elseif (!$time->wasWithinLast('1 month', $row['last_update']))  {
			echo '<p class="note">' . __('The cookbook needs you! No updates for one month.', true) . '</p>';
		}
	}
	foreach ($row['top_contributors'] as $row) {
		if (isset($users[$row['Revision']['user_id']])) {
			$nick = $users[$row['Revision']['user_id']]['User']['username'];
			if ($users[$row['Revision']['user_id']]['Profile']['url']) {
				$url = $users[$row['Revision']['user_id']]['Profile']['url'];
			} else {
				$url = 'http://bakery.cakephp.org/profiles/view/' . $row['Revision']['user_id'] . '/' . $nick;
			}
		} else {
			$nick = 'user_' . $row['Revision']['user_id'];
			$url = 'http://bakery.cakephp.org/profiles/view/' . $row['Revision']['user_id'] . '/' . $nick;
		}
		$menu->add(array(
			'section' => $lang,
			'title' => sprintf(__('%1$s (%2$s current)', true), $nick, $row[0]['count']),
			'url' => $url
		));
	}
	echo '<div class="userstats">' . $menu->generate($lang, array('class' => 'stats', 'splitCount' => 3)) . '</div>';
	echo '</div>';
	echo '<br style="clear:left" />';
}
?>
</div>