Subversion Repositories LCARS

Compare Revisions

Last modification

Ignore whitespace Rev 28 → Rev 172

/trunk/media/video/series/index.php
1,91 → 1,10
<?php
 
require_once 'data.inc';
require_once 'Application.php';
 
$min_percentage = 100;
$min_series = null;
require_once 'application/models/databases/seriometer/SeriOMeterDb.php';
 
$data = array(
'urns' => array(
'wiki' => 'http://de.wikipedia.org/wiki/'
),
'list' => &$serien
);
 
foreach ($serien as $key => &$serie)
{
$count = 0;
$serie['coverage'] = array();
 
if (isset($serie['seen']))
{
$count = count($serie['seen']);
foreach ($serie['seen'] as $episode)
{
if (is_array($episode))
{
$count += $episode[1] - $episode[0];
$serie['coverage'][] = $episode[0] . '&ndash;' . $episode[1];
}
else
{
$serie['coverage'][] = $episode;
}
}
}
$serie['count'] = $count;
$serie['total'] = 0;
if (isset($serie['seasons']) && is_array($serie['seasons']))
{
$serie['total'] = array_sum($serie['seasons']);
$episode_count = 1;
$serie['season_ranges'] = array();
foreach ($serie['seasons'] as $season_key => $season_length)
{
if (is_int($season_key))
{
$serie['season_ranges'][$season_key + 1] = array($episode_count, $episode_count + $season_length - 1);
}
$episode_count += $season_length;
}
}
else
{
$serie['total'] = max(array_keys($serie['episodes']));
}
$serie['percentage'] = 0;
if ($serie['total'] > 0)
{
$serie['percentage'] = $count / $serie['total'] * 100;
if ((!isset($serie['ignore']) || !$serie['ignore'])
&& $serie['percentage'] < $min_percentage)
{
$min_percentage = $serie['percentage'];
$min_series = $key;
}
}
 
if (isset($serie['episode_list']))
{
$episode_list =& $serie['episode_list'];
foreach ($data['urns'] as $prefix => $urn)
{
if (preg_match("/^{$prefix}:/", $episode_list))
{
$episode_list = preg_replace("/^{$prefix}:/", $urn,
str_replace(' ', '_', $episode_list));
}
}
}
}
 
// var_dump($serien['<span class="alf">ALF</span>']);
 
require_once 'series.tpl';
$application = Application::getInstance();
$application->setDefaultDatabase(
$application->registerDatabase('seriometer', new SeriOMeterDb()));
$application->run();