Merge branch 'ticket/nickvergessen/9519' into develop-olympus

* ticket/nickvergessen/9519:
  [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
  [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
  [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
  [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
This commit is contained in:
Andreas Fischer 2010-08-28 23:25:05 +02:00
commit dfd3c4a5df
14 changed files with 43 additions and 25 deletions

View file

@ -533,7 +533,7 @@ function validate_config_vars($config_vars, &$cfg_array, &$error)
// Check if the path is writable // Check if the path is writable
if ($config_definition['validate'] == 'wpath' || $config_definition['validate'] == 'rwpath') if ($config_definition['validate'] == 'wpath' || $config_definition['validate'] == 'rwpath')
{ {
if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !@is_writable($phpbb_root_path . $cfg_array[$config_name])) if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !phpbb_is_writable($phpbb_root_path . $cfg_array[$config_name]))
{ {
$error[] = sprintf($user->lang['DIRECTORY_NOT_WRITABLE'], $cfg_array[$config_name]); $error[] = sprintf($user->lang['DIRECTORY_NOT_WRITABLE'], $cfg_array[$config_name]);
} }

View file

@ -78,8 +78,14 @@ class acm
if (!$this->_write('data_global')) if (!$this->_write('data_global'))
{ {
if (!function_exists('phpbb_is_writable'))
{
global $phpbb_root_path;
include($phpbb_root_path . 'includes/functions.' . $phpEx);
}
// Now, this occurred how often? ... phew, just tell the user then... // Now, this occurred how often? ... phew, just tell the user then...
if (!@is_writable($this->cache_dir)) if (!phpbb_is_writable($this->cache_dir))
{ {
// We need to use die() here, because else we may encounter an infinite loop (the message handler calls $cache->unload()) // We need to use die() here, because else we may encounter an infinite loop (the message handler calls $cache->unload())
die($this->cache_dir . ' is NOT writable.'); die($this->cache_dir . ' is NOT writable.');
@ -707,7 +713,13 @@ class acm
*/ */
function remove_file($filename, $check = false) function remove_file($filename, $check = false)
{ {
if ($check && !@is_writable($this->cache_dir)) if (!function_exists('phpbb_is_writable'))
{
global $phpbb_root_path, $phpEx;
include($phpbb_root_path . 'includes/functions.' . $phpEx);
}
if ($check && !phpbb_is_writable($this->cache_dir))
{ {
// E_USER_ERROR - not using language entry - intended. // E_USER_ERROR - not using language entry - intended.
trigger_error('Unable to remove files within ' . $this->cache_dir . '. Please check directory permissions.', E_USER_ERROR); trigger_error('Unable to remove files within ' . $this->cache_dir . '. Please check directory permissions.', E_USER_ERROR);

View file

@ -407,7 +407,13 @@ class acm_memory
*/ */
function remove_file($filename, $check = false) function remove_file($filename, $check = false)
{ {
if ($check && !@is_writable($this->cache_dir)) if (!function_exists('phpbb_is_writable'))
{
global $phpbb_root_path, $phpEx;
include($phpbb_root_path . 'includes/functions.' . $phpEx);
}
if ($check && !phpbb_is_writable($this->cache_dir))
{ {
// E_USER_ERROR - not using language entry - intended. // E_USER_ERROR - not using language entry - intended.
trigger_error('Unable to remove files within ' . $this->cache_dir . '. Please check directory permissions.', E_USER_ERROR); trigger_error('Unable to remove files within ' . $this->cache_dir . '. Please check directory permissions.', E_USER_ERROR);

View file

@ -1222,7 +1222,7 @@ class acp_attachments
return; return;
} }
if (!is_writable($phpbb_root_path . $upload_dir)) if (!phpbb_is_writable($phpbb_root_path . $upload_dir))
{ {
$error[] = sprintf($user->lang['NO_WRITE_UPLOAD'], $upload_dir); $error[] = sprintf($user->lang['NO_WRITE_UPLOAD'], $upload_dir);
return; return;

View file

@ -49,7 +49,7 @@ class acp_groups
// Clear some vars // Clear some vars
$can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && @is_writable($phpbb_root_path . $config['avatar_path']) && $file_uploads) ? true : false; $can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && phpbb_is_writable($phpbb_root_path . $config['avatar_path']) && $file_uploads) ? true : false;
$group_row = array(); $group_row = array();
// Grab basic data for group, if group_id is set and exists // Grab basic data for group, if group_id is set and exists

View file

@ -748,7 +748,7 @@ parse_css_file = {PARSE_CSS_FILE}
$additional = ''; $additional = '';
// If the template is stored on the filesystem try to write the file else store it in the database // If the template is stored on the filesystem try to write the file else store it in the database
if (!$safe_mode && !$template_info['template_storedb'] && file_exists($file) && @is_writable($file)) if (!$safe_mode && !$template_info['template_storedb'] && file_exists($file) && phpbb_is_writable($file))
{ {
if (!($fp = @fopen($file, 'wb'))) if (!($fp = @fopen($file, 'wb')))
{ {
@ -1155,7 +1155,7 @@ parse_css_file = {PARSE_CSS_FILE}
$message = $user->lang['THEME_UPDATED']; $message = $user->lang['THEME_UPDATED'];
// If the theme is stored on the filesystem try to write the file else store it in the database // If the theme is stored on the filesystem try to write the file else store it in the database
if (!$safe_mode && !$theme_info['theme_storedb'] && file_exists($file) && @is_writable($file)) if (!$safe_mode && !$theme_info['theme_storedb'] && file_exists($file) && phpbb_is_writable($file))
{ {
if (!($fp = @fopen($file, 'wb'))) if (!($fp = @fopen($file, 'wb')))
{ {
@ -2246,7 +2246,7 @@ parse_css_file = {PARSE_CSS_FILE}
{ {
// a rather elaborate check we have to do here once to avoid trouble later // a rather elaborate check we have to do here once to avoid trouble later
$check = "{$phpbb_root_path}styles/" . $style_row["{$mode}_path"] . (($mode === 'theme') ? '/theme/stylesheet.css' : '/template'); $check = "{$phpbb_root_path}styles/" . $style_row["{$mode}_path"] . (($mode === 'theme') ? '/theme/stylesheet.css' : '/template');
if (($style_row["{$mode}_storedb"] != $store_db) && !$store_db && ($safe_mode || !@is_writable($check))) if (($style_row["{$mode}_storedb"] != $store_db) && !$store_db && ($safe_mode || !phpbb_is_writable($check)))
{ {
$error[] = $user->lang['EDIT_' . strtoupper($mode) . '_STORED_DB']; $error[] = $user->lang['EDIT_' . strtoupper($mode) . '_STORED_DB'];
$store_db = 1; $store_db = 1;
@ -2326,7 +2326,7 @@ parse_css_file = {PARSE_CSS_FILE}
{ {
$theme_data = $this->db_theme_data($style_row); $theme_data = $this->db_theme_data($style_row);
} }
else if (!$store_db && !$safe_mode && @is_writable("{$phpbb_root_path}styles/{$style_row['theme_path']}/theme/stylesheet.css")) else if (!$store_db && !$safe_mode && phpbb_is_writable("{$phpbb_root_path}styles/{$style_row['theme_path']}/theme/stylesheet.css"))
{ {
$store_db = 1; $store_db = 1;
$theme_data = $style_row['theme_data']; $theme_data = $style_row['theme_data'];
@ -2357,7 +2357,7 @@ parse_css_file = {PARSE_CSS_FILE}
} }
else else
{ {
if (!$store_db && !$safe_mode && @is_writable("{$phpbb_root_path}styles/{$style_row['template_path']}/template")) if (!$store_db && !$safe_mode && phpbb_is_writable("{$phpbb_root_path}styles/{$style_row['template_path']}/template"))
{ {
$err = $this->store_in_fs('template', $style_row['template_id']); $err = $this->store_in_fs('template', $style_row['template_id']);
if ($err) if ($err)
@ -3736,7 +3736,7 @@ parse_css_file = {PARSE_CSS_FILE}
$store_db = 0; $store_db = 0;
$error = array(); $error = array();
if (!$safe_mode && @is_writable("{$phpbb_root_path}styles/{$path}/template")) if (!$safe_mode && phpbb_is_writable("{$phpbb_root_path}styles/{$path}/template"))
{ {
$sql = 'SELECT * $sql = 'SELECT *
FROM ' . STYLES_TEMPLATE_DATA_TABLE . " FROM ' . STYLES_TEMPLATE_DATA_TABLE . "

View file

@ -1698,7 +1698,7 @@ class acp_users
include($phpbb_root_path . 'includes/functions_display.' . $phpEx); include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
include($phpbb_root_path . 'includes/functions_user.' . $phpEx); include($phpbb_root_path . 'includes/functions_user.' . $phpEx);
$can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && @is_writable($phpbb_root_path . $config['avatar_path']) && $file_uploads) ? true : false; $can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && phpbb_is_writable($phpbb_root_path . $config['avatar_path']) && $file_uploads) ? true : false;
if ($submit) if ($submit)
{ {

View file

@ -718,7 +718,7 @@ function phpbb_chmod($filename, $perms = CHMOD_READ)
clearstatcache(); clearstatcache();
if (is_readable($filename) && is_writable($filename)) if (is_readable($filename) && phpbb_is_writable($filename))
{ {
break; break;
} }
@ -728,7 +728,7 @@ function phpbb_chmod($filename, $perms = CHMOD_READ)
clearstatcache(); clearstatcache();
if ((!($perms & CHMOD_READ) || is_readable($filename)) && (!($perms & CHMOD_WRITE) || is_writable($filename))) if ((!($perms & CHMOD_READ) || is_readable($filename)) && (!($perms & CHMOD_WRITE) || phpbb_is_writable($filename)))
{ {
break; break;
} }
@ -738,7 +738,7 @@ function phpbb_chmod($filename, $perms = CHMOD_READ)
clearstatcache(); clearstatcache();
if ((!($perms & CHMOD_READ) || is_readable($filename)) && (!($perms & CHMOD_WRITE) || is_writable($filename))) if ((!($perms & CHMOD_READ) || is_readable($filename)) && (!($perms & CHMOD_WRITE) || phpbb_is_writable($filename)))
{ {
break; break;
} }

View file

@ -2306,7 +2306,7 @@ function copy_file($src, $trg, $overwrite = false, $die_on_failure = true, $sour
} }
} }
if (!is_writable($path)) if (!phpbb_is_writable($path))
{ {
@chmod($path, 0777); @chmod($path, 0777);
} }
@ -2341,7 +2341,7 @@ function copy_dir($src, $trg, $copy_subdirs = true, $overwrite = false, $die_on_
@chmod($trg_path, 0777); @chmod($trg_path, 0777);
} }
if (!@is_writable($trg_path)) if (!phpbb_is_writable($trg_path))
{ {
$bad_dirs[] = path($config['script_path']) . $trg; $bad_dirs[] = path($config['script_path']) . $trg;
} }
@ -2408,7 +2408,7 @@ function copy_dir($src, $trg, $copy_subdirs = true, $overwrite = false, $die_on_
@chmod($trg_path . $dir, 0777); @chmod($trg_path . $dir, 0777);
} }
if (!@is_writable($trg_path . $dir)) if (!phpbb_is_writable($trg_path . $dir))
{ {
$bad_dirs[] = $trg . $dir; $bad_dirs[] = $trg . $dir;
$bad_dirs[] = $trg_path . $dir; $bad_dirs[] = $trg_path . $dir;

View file

@ -2344,7 +2344,7 @@ function avatar_process_user(&$error, $custom_userdata = false, $can_upload = nu
// Can we upload? // Can we upload?
if (is_null($can_upload)) if (is_null($can_upload))
{ {
$can_upload = ($config['allow_avatar_upload'] && file_exists($phpbb_root_path . $config['avatar_path']) && @is_writable($phpbb_root_path . $config['avatar_path']) && $change_avatar && (@ini_get('file_uploads') || strtolower(@ini_get('file_uploads')) == 'on')) ? true : false; $can_upload = ($config['allow_avatar_upload'] && file_exists($phpbb_root_path . $config['avatar_path']) && phpbb_is_writable($phpbb_root_path . $config['avatar_path']) && $change_avatar && (@ini_get('file_uploads') || strtolower(@ini_get('file_uploads')) == 'on')) ? true : false;
} }
if ((!empty($_FILES['uploadfile']['name']) || $data['uploadurl']) && $can_upload) if ((!empty($_FILES['uploadfile']['name']) || $data['uploadurl']) && $can_upload)

View file

@ -490,7 +490,7 @@ class ucp_groups
$avatar_select = basename(request_var('avatar_select', '')); $avatar_select = basename(request_var('avatar_select', ''));
$category = basename(request_var('category', '')); $category = basename(request_var('category', ''));
$can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && @is_writable($phpbb_root_path . $config['avatar_path']) && $file_uploads) ? true : false; $can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && phpbb_is_writable($phpbb_root_path . $config['avatar_path']) && $file_uploads) ? true : false;
// Did we submit? // Did we submit?
if ($update) if ($update)

View file

@ -561,7 +561,7 @@ class ucp_profile
$avatar_select = basename(request_var('avatar_select', '')); $avatar_select = basename(request_var('avatar_select', ''));
$category = basename(request_var('category', '')); $category = basename(request_var('category', ''));
$can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && @is_writable($phpbb_root_path . $config['avatar_path']) && $auth->acl_get('u_chgavatar') && (@ini_get('file_uploads') || strtolower(@ini_get('file_uploads')) == 'on')) ? true : false; $can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && phpbb_is_writable($phpbb_root_path . $config['avatar_path']) && $auth->acl_get('u_chgavatar') && (@ini_get('file_uploads') || strtolower(@ini_get('file_uploads')) == 'on')) ? true : false;
add_form_key('ucp_avatar'); add_form_key('ucp_avatar');

View file

@ -835,7 +835,7 @@ class install_convert extends module
$this->p_master->error($user->lang['DEV_NO_TEST_FILE'], __LINE__, __FILE__); $this->p_master->error($user->lang['DEV_NO_TEST_FILE'], __LINE__, __FILE__);
} }
if (!$local_path || !@is_writable($phpbb_root_path . $local_path)) if (!$local_path || !phpbb_is_writable($phpbb_root_path . $local_path))
{ {
if (!$local_path) if (!$local_path)
{ {

View file

@ -486,7 +486,7 @@ class install_install extends module
$write = $exists = true; $write = $exists = true;
if (file_exists($phpbb_root_path . $dir)) if (file_exists($phpbb_root_path . $dir))
{ {
if (!@is_writable($phpbb_root_path . $dir)) if (!phpbb_is_writable($phpbb_root_path . $dir))
{ {
$write = false; $write = false;
} }
@ -906,7 +906,7 @@ class install_install extends module
$config_data .= '?' . '>'; // Done this to prevent highlighting editors getting confused! $config_data .= '?' . '>'; // Done this to prevent highlighting editors getting confused!
// Attempt to write out the config file directly. If it works, this is the easiest way to do it ... // Attempt to write out the config file directly. If it works, this is the easiest way to do it ...
if ((file_exists($phpbb_root_path . 'config.' . $phpEx) && is_writable($phpbb_root_path . 'config.' . $phpEx)) || is_writable($phpbb_root_path)) if ((file_exists($phpbb_root_path . 'config.' . $phpEx) && phpbb_is_writable($phpbb_root_path . 'config.' . $phpEx)) || phpbb_is_writable($phpbb_root_path))
{ {
// Assume it will work ... if nothing goes wrong below // Assume it will work ... if nothing goes wrong below
$written = true; $written = true;