diff options
author | Marc Alexander <admin@m-a-styles.de> | 2013-11-27 14:55:05 +0100 |
---|---|---|
committer | Marc Alexander <admin@m-a-styles.de> | 2013-11-27 14:55:24 +0100 |
commit | 33f4d267ef9a3b65a1fbda82afa13ecc486b5c80 (patch) | |
tree | 2e19c6d0b72144d50197c01dcc2ad000913553ef /phpBB/includes/functions_install.php | |
parent | 0d4bf3ff45a76dcb763c76502944aa7bf78b690b (diff) | |
parent | 125e76f9aa83141534387a965e8373c9b9cd5c4d (diff) | |
download | forums-33f4d267ef9a3b65a1fbda82afa13ecc486b5c80.tar forums-33f4d267ef9a3b65a1fbda82afa13ecc486b5c80.tar.gz forums-33f4d267ef9a3b65a1fbda82afa13ecc486b5c80.tar.bz2 forums-33f4d267ef9a3b65a1fbda82afa13ecc486b5c80.tar.xz forums-33f4d267ef9a3b65a1fbda82afa13ecc486b5c80.zip |
Merge branch 'develop' of https://github.com/phpbb/phpbb3 into ticket/11842
Conflicts:
phpBB/includes/acp/acp_groups.php
Diffstat (limited to 'phpBB/includes/functions_install.php')
-rw-r--r-- | phpBB/includes/functions_install.php | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/phpBB/includes/functions_install.php b/phpBB/includes/functions_install.php index 1be6e49471..deb304b838 100644 --- a/phpBB/includes/functions_install.php +++ b/phpBB/includes/functions_install.php @@ -533,3 +533,51 @@ function phpbb_create_config_file_data($data, $dbms, $debug = false, $debug_test return $config_data; } + +/** +* Check whether a file should be ignored on update +* +* We ignore new files in some circumstances: +* 1. The file is a language file, but the language is not installed +* 2. The file is a style file, but the style is not installed +* 3. The file is a style language file, but the language is not installed +* +* @param string $phpbb_root_path phpBB root path +* @param string $file File including path from phpbb root +* @return bool Should we ignore the new file or add it to the board? +*/ +function phpbb_ignore_new_file_on_update($phpbb_root_path, $file) +{ + $ignore_new_file = false; + + // We ignore new files in some circumstances: + // 1. The file is a language file, but the language is not installed + if (!$ignore_new_file && strpos($file, 'language/') === 0) + { + list($language_dir, $language_iso) = explode('/', $file); + $ignore_new_file = !file_exists($phpbb_root_path . $language_dir . '/' . $language_iso); + } + + // 2. The file is a style file, but the style is not installed + if (!$ignore_new_file && strpos($file, 'styles/') === 0) + { + list($styles_dir, $style_name) = explode('/', $file); + $ignore_new_file = !file_exists($phpbb_root_path . $styles_dir . '/' . $style_name); + } + + // 3. The file is a style language file, but the language is not installed + if (!$ignore_new_file && strpos($file, 'styles/') === 0) + { + $dirs = explode('/', $file); + if (sizeof($dirs) >= 5) + { + list($styles_dir, $style_name, $template_component, $language_iso) = explode('/', $file); + if ($template_component == 'theme' && $language_iso !== 'images') + { + $ignore_new_file = !file_exists($phpbb_root_path . 'language/' . $language_iso); + } + } + } + + return $ignore_new_file; +} |