function theme_l10n_update_project_status in Localization update 6
Same name and namespace in other branches
- 7 l10n_update.admin.inc \theme_l10n_update_project_status()
Format project update status.
@params array $projects Projects listed. @params array $languages Languages listed. @params array $history Project translation history. @params array $available Available translation releases. @params array $updates Applicable translation updates.
Return value
string HTML output.
1 theme call to theme_l10n_update_project_status()
- l10n_update_admin_overview in ./
l10n_update.admin.inc - Page callback: Admin overview page.
File
- ./
l10n_update.admin.inc, line 255 - Admin settings and update page.
Code
function theme_l10n_update_project_status($projects, $languages, $history, $available, $updates) {
// We use the core update module CSS
drupal_add_css(drupal_get_path('module', 'update') . '/update.css');
$output = '';
//$header = array(t('Project'), t('Current version'), t('Available update'), '');
$header = $rows = array();
foreach ($projects as $name => $project) {
$row = '<div class="version-status">';
if (empty($available[$name])) {
// Remote information not checked
$status = 'unknown';
$class = 'unknown';
}
elseif (empty($updates[$name])) {
// No updates available
$status = 'ok';
$class = 'ok';
}
else {
// Update available
$status = 'update';
$class = 'warning';
}
$row = theme('l10n_update_version_status', $status);
$row .= "<div class=\"project {$class}\">";
$title = isset($project->title) ? $project->title : $project->name;
$row .= check_plain($title);
$row .= ' ' . check_plain(isset($project->info['version']) ? $project->info['version'] : $project->version);
if ($server = l10n_update_server($project->l10n_server)) {
$row .= ' ' . l($server['name'], $server['link']);
}
$row .= "</div>\n";
$row .= "<div class=\"versions\">\n";
$versions = array();
foreach ($languages as $lang => $language) {
$current = isset($history[$name][$lang]) ? $history[$name][$lang] : NULL;
//$installed = isset($history[$name][$lang]) ? $history[$name][$lang] : NULL;
$update = isset($updates[$name][$lang]) ? $updates[$name][$lang] : NULL;
if ($update) {
$status = 'update';
$class = 'warning';
}
elseif ($current) {
$status = $class = 'ok';
}
else {
$status = $class = 'unknown';
}
$version = array(
array(
'data' => $language,
'class' => 'version-title',
),
$current ? theme('l10n_update_release', $current) : '',
$update ? theme('l10n_update_release', $update) : '',
theme('l10n_update_version_status', $status, $update ? $update->type : NULL),
);
$versions[] = array(
'data' => $version,
'class' => $class,
);
}
$row .= theme('table', array(), $versions);
$row .= "</div>\n";
$rows[] = array(
$row,
);
}
$output .= theme('table', $header, $rows, array(
'class' => 'update',
));
return $output;
}