diff options
Diffstat (limited to 'includes/common.inc')
-rw-r--r-- | includes/common.inc | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/includes/common.inc b/includes/common.inc index 725b20b68..9be957332 100644 --- a/includes/common.inc +++ b/includes/common.inc @@ -6778,6 +6778,27 @@ function archiver_get_info() { } /** + * Returns a string of supported archive extensions. + * + * @return + * A space-separated string of extensions suitable for use by the file + * validation system. + */ +function archiver_get_extensions() { + $valid_extensions = array(); + foreach (archiver_get_info() as $archive) { + foreach ($archive['extensions'] as $extension) { + foreach (explode('.', $extension) as $part) { + if (!in_array($part, $valid_extensions)) { + $valid_extensions[] = $part; + } + } + } + } + return implode(' ', $valid_extensions); +} + +/** * Create the appropriate archiver for the specified file. * * @param $file |