diff options
Diffstat (limited to 'phpBB')
| -rw-r--r-- | phpBB/includes/acp/acp_styles.php | 18 | 
1 files changed, 16 insertions, 2 deletions
diff --git a/phpBB/includes/acp/acp_styles.php b/phpBB/includes/acp/acp_styles.php index 3bc8c86500..5300265686 100644 --- a/phpBB/includes/acp/acp_styles.php +++ b/phpBB/includes/acp/acp_styles.php @@ -1634,6 +1634,13 @@ parse_css_file = {PARSE_CSS_FILE}  			trigger_error($user->lang['NO_' . $l_prefix] . adm_back_link($this->u_action), E_USER_WARNING);  		} +		$s_only_component = $this->display_component_options($mode, $style_row[$mode . '_id'], $style_row); + +		if ($s_only_component) +		{ +			trigger_error($user->lang['ONLY_' . $l_prefix] . adm_back_link($this->u_action), E_USER_WARNING); +		} +  		if ($update)  		{  			if ($mode == 'style') @@ -1678,8 +1685,6 @@ parse_css_file = {PARSE_CSS_FILE}  			trigger_error($user->lang[$message] . adm_back_link($this->u_action));  		} -		$this->display_component_options($mode, $style_row[$mode . '_id'], $style_row); -  		$this->page_title = 'DELETE_' . $l_prefix;  		$template->assign_vars(array( @@ -1765,11 +1770,14 @@ parse_css_file = {PARSE_CSS_FILE}  	/**  	* Display the options which can be used to replace a style/template/theme/imageset +	* +	* @return boolean Returns true if the component is the only component and can not be deleted.  	*/  	function display_component_options($component, $component_id, $style_row = false, $style_id = false)  	{  		global $db, $template, $user; +		$is_only_component = true;  		$component_in_use = array();  		if ($component != 'style')  		{ @@ -1801,6 +1809,9 @@ parse_css_file = {PARSE_CSS_FILE}  		$s_options = '';  		if (($component != 'style') && empty($component_in_use))  		{ +			// If it is not in use, there must be another component +			$is_only_component = false; +  			$sql = "SELECT {$component}_id, {$component}_name  				FROM $sql_from  				WHERE {$component}_id = {$component_id}"; @@ -1824,6 +1835,7 @@ parse_css_file = {PARSE_CSS_FILE}  			{  				if ($row[$component . '_id'] != $component_id)  				{ +					$is_only_component = false;  					$s_options .= '<option value="' . $row[$component . '_id'] . '">' . sprintf($user->lang['REPLACE_WITH_OPTION'], $row[$component . '_name']) . '</option>';  				}  				else if ($component != 'style') @@ -1851,6 +1863,8 @@ parse_css_file = {PARSE_CSS_FILE}  				}  			}  		} + +		return $is_only_component;  	}  	/**  | 
