function _views_maintenance_view_status in Views Maintenance 6
Same name and namespace in other branches
- 7 views_maintenance.admin.inc \_views_maintenance_view_status()
Returns view status based on its displays statuses.
Parameters
array $displays_statuses: Flat array containing statuses from most important use case of each view display.
Return value
string Status of view. Value is one of:
- "broken"
- "ok"
- "has-maybe"
- "has-unused"
- "unused".
1 call to _views_maintenance_view_status()
- views_maintenance_page in ./
views_maintenance.admin.inc - Page callback for views maintenance page.
File
- ./
views_maintenance.admin.inc, line 34 - Provides administrative UI for Views Maintenance.
Code
function _views_maintenance_view_status($displays_statuses = array()) {
// Check "broken" status existence.
if (array_search('broken', $displays_statuses) !== FALSE) {
return 'broken';
}
// Move 'default' display status from array
$default_status = $displays_statuses['default'];
unset($displays_statuses['default']);
if (empty($displays_statuses)) {
// Default display is the only display in view, use its status for view
// status.
switch ($default_status) {
case 'ok':
return 'ok';
case 'maybe':
return 'has-maybe';
default:
// unused
return 'unused';
}
}
$counts = array_count_values($displays_statuses);
if (!empty($counts['unused'])) {
// View has unused displays.
if (empty($counts['ok']) && empty($counts['maybe']) && $default_status == 'unused') {
// View contains only unused displays.
return 'unused';
}
else {
// View has unused displays among others.
return 'has-unused';
}
}
elseif (!empty($counts['maybe'])) {
// View doesn't have unused displays, but has "maybe" non-default displays.
// Default display status is ignored here.
return 'has-maybe';
}
else {
// All non-default displays have "ok" status, ignore default display status.
return 'ok';
}
}