Cut off folder type suffix from shared annotation values (#1105); small code cleanup to reduce redundancy
This commit is contained in:
parent
fad8e68fe7
commit
d356302759
2 changed files with 10 additions and 18 deletions
|
@ -337,14 +337,7 @@ class kolab_folders extends rcube_plugin
|
|||
*/
|
||||
function get_folder_type($folder)
|
||||
{
|
||||
$storage = $this->rc->get_storage();
|
||||
$folderdata = $storage->get_metadata($folder, array(kolab_storage::CTYPE_KEY_PRIVATE, kolab_storage::CTYPE_KEY));
|
||||
|
||||
if (!($ctype = $folderdata[$folder][kolab_storage::CTYPE_KEY_PRIVATE])) {
|
||||
$ctype = $folderdata[$folder][kolab_storage::CTYPE_KEY];
|
||||
}
|
||||
|
||||
return explode('.', $ctype);
|
||||
return explode('.', (string)kolab_storage::folder_type($folder));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -380,7 +373,7 @@ class kolab_folders extends rcube_plugin
|
|||
$namespace = $storage->get_namespace();
|
||||
|
||||
// get all folders of specified type
|
||||
$folderdata = array_map(array($this, 'folder_select_metadata'), $folderdata);
|
||||
$folderdata = array_map(array('kolab_storage', 'folder_select_metadata'), $folderdata);
|
||||
$folderdata = array_intersect($folderdata, array($type));
|
||||
|
||||
foreach ($folderdata as $folder => $data) {
|
||||
|
@ -402,14 +395,6 @@ class kolab_folders extends rcube_plugin
|
|||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Callback for array_map to select the correct annotation value
|
||||
*/
|
||||
private function folder_select_metadata($types)
|
||||
{
|
||||
return $types[kolab_storage::CTYPE_KEY_PRIVATE] ?: $types[kolab_storage::CTYPE_KEY];
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns CSS class name for specified folder type
|
||||
*
|
||||
|
|
|
@ -595,7 +595,14 @@ class kolab_storage
|
|||
*/
|
||||
static function folder_select_metadata($types)
|
||||
{
|
||||
return $types[self::CTYPE_KEY_PRIVATE] ?: $types[self::CTYPE_KEY];
|
||||
if (!empty($types[self::CTYPE_KEY_PRIVATE])) {
|
||||
return $types[self::CTYPE_KEY_PRIVATE];
|
||||
}
|
||||
else if (!empty($types[self::CTYPE_KEY])) {
|
||||
list($ctype, $suffix) = explode('.', $types[self::CTYPE_KEY]);
|
||||
return $ctype;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue