mirror of
https://github.com/phpbb/phpbb.git
synced 2025-07-31 14:00:31 +02:00
[feature/remove-imagesets] Adjustments to php files
Removing imagesets. Adjustments to php files PHPBB3-10336
This commit is contained in:
@@ -1655,12 +1655,11 @@ class user extends session
|
||||
$style = ($style) ? $style : ((!$config['override_user_style']) ? $this->data['user_style'] : $config['default_style']);
|
||||
}
|
||||
|
||||
$sql = 'SELECT s.style_id, t.template_storedb, t.template_path, t.template_id, t.bbcode_bitfield, t.template_inherits_id, t.template_inherit_path, c.theme_path, c.theme_name, c.theme_storedb, c.theme_id, i.imageset_path, i.imageset_id, i.imageset_name
|
||||
FROM ' . STYLES_TABLE . ' s, ' . STYLES_TEMPLATE_TABLE . ' t, ' . STYLES_THEME_TABLE . ' c, ' . STYLES_IMAGESET_TABLE . " i
|
||||
$sql = 'SELECT s.style_id, t.template_storedb, t.template_path, t.template_id, t.bbcode_bitfield, t.template_inherits_id, t.template_inherit_path, c.theme_path, c.theme_name, c.theme_storedb, c.theme_id
|
||||
FROM ' . STYLES_TABLE . ' s, ' . STYLES_TEMPLATE_TABLE . ' t, ' . STYLES_THEME_TABLE . " c
|
||||
WHERE s.style_id = $style
|
||||
AND t.template_id = s.template_id
|
||||
AND c.theme_id = s.theme_id
|
||||
AND i.imageset_id = s.imageset_id";
|
||||
AND c.theme_id = s.theme_id";
|
||||
$result = $db->sql_query($sql, 3600);
|
||||
$this->theme = $db->sql_fetchrow($result);
|
||||
$db->sql_freeresult($result);
|
||||
@@ -1675,12 +1674,11 @@ class user extends session
|
||||
WHERE user_id = {$this->data['user_id']}";
|
||||
$db->sql_query($sql);
|
||||
|
||||
$sql = 'SELECT s.style_id, t.template_storedb, t.template_path, t.template_id, t.bbcode_bitfield, c.theme_path, c.theme_name, c.theme_storedb, c.theme_id, i.imageset_path, i.imageset_id, i.imageset_name
|
||||
FROM ' . STYLES_TABLE . ' s, ' . STYLES_TEMPLATE_TABLE . ' t, ' . STYLES_THEME_TABLE . ' c, ' . STYLES_IMAGESET_TABLE . " i
|
||||
$sql = 'SELECT s.style_id, t.template_storedb, t.template_path, t.template_id, t.bbcode_bitfield, c.theme_path, c.theme_name, c.theme_storedb, c.theme_id
|
||||
FROM ' . STYLES_TABLE . ' s, ' . STYLES_TEMPLATE_TABLE . ' t, ' . STYLES_THEME_TABLE . " c
|
||||
WHERE s.style_id = $style
|
||||
AND t.template_id = s.template_id
|
||||
AND c.theme_id = s.theme_id
|
||||
AND i.imageset_id = s.imageset_id";
|
||||
AND c.theme_id = s.theme_id";
|
||||
$result = $db->sql_query($sql, 3600);
|
||||
$this->theme = $db->sql_fetchrow($result);
|
||||
$db->sql_freeresult($result);
|
||||
@@ -1761,95 +1759,7 @@ class user extends session
|
||||
|
||||
$template->set_template();
|
||||
|
||||
$this->img_lang = (file_exists($phpbb_root_path . 'styles/' . $this->theme['imageset_path'] . '/imageset/' . $this->lang_name)) ? $this->lang_name : $config['default_lang'];
|
||||
|
||||
// Same query in style.php
|
||||
$sql = 'SELECT *
|
||||
FROM ' . STYLES_IMAGESET_DATA_TABLE . '
|
||||
WHERE imageset_id = ' . $this->theme['imageset_id'] . "
|
||||
AND image_filename <> ''
|
||||
AND image_lang IN ('" . $db->sql_escape($this->img_lang) . "', '')";
|
||||
$result = $db->sql_query($sql, 3600);
|
||||
|
||||
$localised_images = false;
|
||||
while ($row = $db->sql_fetchrow($result))
|
||||
{
|
||||
if ($row['image_lang'])
|
||||
{
|
||||
$localised_images = true;
|
||||
}
|
||||
|
||||
$row['image_filename'] = rawurlencode($row['image_filename']);
|
||||
$this->img_array[$row['image_name']] = $row;
|
||||
}
|
||||
$db->sql_freeresult($result);
|
||||
|
||||
// there were no localised images, try to refresh the localised imageset for the user's language
|
||||
if (!$localised_images)
|
||||
{
|
||||
// Attention: this code ignores the image definition list from acp_styles and just takes everything
|
||||
// that the config file contains
|
||||
$sql_ary = array();
|
||||
|
||||
$db->sql_transaction('begin');
|
||||
|
||||
$sql = 'DELETE FROM ' . STYLES_IMAGESET_DATA_TABLE . '
|
||||
WHERE imageset_id = ' . $this->theme['imageset_id'] . '
|
||||
AND image_lang = \'' . $db->sql_escape($this->img_lang) . '\'';
|
||||
$result = $db->sql_query($sql);
|
||||
|
||||
if (@file_exists("{$phpbb_root_path}styles/{$this->theme['imageset_path']}/imageset/{$this->img_lang}/imageset.cfg"))
|
||||
{
|
||||
$cfg_data_imageset_data = parse_cfg_file("{$phpbb_root_path}styles/{$this->theme['imageset_path']}/imageset/{$this->img_lang}/imageset.cfg");
|
||||
foreach ($cfg_data_imageset_data as $image_name => $value)
|
||||
{
|
||||
if (strpos($value, '*') !== false)
|
||||
{
|
||||
if (substr($value, -1, 1) === '*')
|
||||
{
|
||||
list($image_filename, $image_height) = explode('*', $value);
|
||||
$image_width = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
list($image_filename, $image_height, $image_width) = explode('*', $value);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$image_filename = $value;
|
||||
$image_height = $image_width = 0;
|
||||
}
|
||||
|
||||
if (strpos($image_name, 'img_') === 0 && $image_filename)
|
||||
{
|
||||
$image_name = substr($image_name, 4);
|
||||
$sql_ary[] = array(
|
||||
'image_name' => (string) $image_name,
|
||||
'image_filename' => (string) $image_filename,
|
||||
'image_height' => (int) $image_height,
|
||||
'image_width' => (int) $image_width,
|
||||
'imageset_id' => (int) $this->theme['imageset_id'],
|
||||
'image_lang' => (string) $this->img_lang,
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (sizeof($sql_ary))
|
||||
{
|
||||
$db->sql_multi_insert(STYLES_IMAGESET_DATA_TABLE, $sql_ary);
|
||||
$db->sql_transaction('commit');
|
||||
$cache->destroy('sql', STYLES_IMAGESET_DATA_TABLE);
|
||||
|
||||
add_log('admin', 'LOG_IMAGESET_LANG_REFRESHED', $this->theme['imageset_name'], $this->img_lang);
|
||||
}
|
||||
else
|
||||
{
|
||||
$db->sql_transaction('commit');
|
||||
add_log('admin', 'LOG_IMAGESET_LANG_MISSING', $this->theme['imageset_name'], $this->img_lang);
|
||||
}
|
||||
}
|
||||
$this->img_lang = $this->lang_name;
|
||||
|
||||
// Call phpbb_user_session_handler() in case external application want to "bend" some variables or replace classes...
|
||||
// After calling it we continue script execution...
|
||||
@@ -2284,89 +2194,11 @@ class user extends session
|
||||
|
||||
/**
|
||||
* Specify/Get image
|
||||
* $suffix is no longer used - we know it. ;) It is there for backward compatibility.
|
||||
*/
|
||||
function img($img, $alt = '', $width = false, $suffix = '', $type = 'full_tag')
|
||||
function img($img, $alt = '')
|
||||
{
|
||||
static $imgs;
|
||||
global $phpbb_root_path;
|
||||
|
||||
$img_data = &$imgs[$img];
|
||||
|
||||
if (empty($img_data))
|
||||
{
|
||||
if (!isset($this->img_array[$img]))
|
||||
{
|
||||
// Do not fill the image to let designers decide what to do if the image is empty
|
||||
$img_data = '';
|
||||
return $img_data;
|
||||
}
|
||||
|
||||
// Use URL if told so
|
||||
$root_path = (defined('PHPBB_USE_BOARD_URL_PATH') && PHPBB_USE_BOARD_URL_PATH) ? generate_board_url() . '/' : $phpbb_root_path;
|
||||
|
||||
$path = 'styles/' . rawurlencode($this->theme['imageset_path']) . '/imageset/' . ($this->img_array[$img]['image_lang'] ? $this->img_array[$img]['image_lang'] .'/' : '') . $this->img_array[$img]['image_filename'];
|
||||
|
||||
$img_data['src'] = $root_path . $path;
|
||||
$img_data['width'] = $this->img_array[$img]['image_width'];
|
||||
$img_data['height'] = $this->img_array[$img]['image_height'];
|
||||
|
||||
// We overwrite the width and height to the phpbb logo's width
|
||||
// and height here if the contents of the site_logo file are
|
||||
// really equal to the phpbb_logo
|
||||
// This allows us to change the dimensions of the phpbb_logo without
|
||||
// modifying the imageset.cfg and causing a conflict for everyone
|
||||
// who modified it for their custom logo on updating
|
||||
if ($img == 'site_logo' && file_exists($phpbb_root_path . $path))
|
||||
{
|
||||
global $cache;
|
||||
|
||||
$img_file_hashes = $cache->get('imageset_site_logo_md5');
|
||||
|
||||
if ($img_file_hashes === false)
|
||||
{
|
||||
$img_file_hashes = array();
|
||||
}
|
||||
|
||||
$key = $this->theme['imageset_path'] . '::' . $this->img_array[$img]['image_lang'];
|
||||
if (!isset($img_file_hashes[$key]))
|
||||
{
|
||||
$img_file_hashes[$key] = md5(file_get_contents($phpbb_root_path . $path));
|
||||
$cache->put('imageset_site_logo_md5', $img_file_hashes);
|
||||
}
|
||||
|
||||
$phpbb_logo_hash = '0c461a32cd3621643105f0d02a772c10';
|
||||
|
||||
if ($phpbb_logo_hash == $img_file_hashes[$key])
|
||||
{
|
||||
$img_data['width'] = '149';
|
||||
$img_data['height'] = '52';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$alt = (!empty($this->lang[$alt])) ? $this->lang[$alt] : $alt;
|
||||
|
||||
switch ($type)
|
||||
{
|
||||
case 'src':
|
||||
return $img_data['src'];
|
||||
break;
|
||||
|
||||
case 'width':
|
||||
return ($width === false) ? $img_data['width'] : $width;
|
||||
break;
|
||||
|
||||
case 'height':
|
||||
return $img_data['height'];
|
||||
break;
|
||||
|
||||
default:
|
||||
$use_width = ($width === false) ? $img_data['width'] : $width;
|
||||
|
||||
return '<img src="' . $img_data['src'] . '"' . (($use_width) ? ' width="' . $use_width . '"' : '') . (($img_data['height']) ? ' height="' . $img_data['height'] . '"' : '') . ' alt="' . $alt . '" title="' . $alt . '" />';
|
||||
break;
|
||||
}
|
||||
return '<span class="imageset ' . $img . '">' . $alt . '</span>';
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user