diff options
Diffstat (limited to 'phpBB/includes/acp/acp_icons.php')
| -rw-r--r-- | phpBB/includes/acp/acp_icons.php | 81 | 
1 files changed, 43 insertions, 38 deletions
diff --git a/phpBB/includes/acp/acp_icons.php b/phpBB/includes/acp/acp_icons.php index 24f6cbbcbf..9265415dd1 100644 --- a/phpBB/includes/acp/acp_icons.php +++ b/phpBB/includes/acp/acp_icons.php @@ -1,10 +1,13 @@  <?php  /**  * -* @package acp -* @version $Id$ -* @copyright (c) 2005 phpBB Group -* @license http://opensource.org/licenses/gpl-license.php GNU Public License +* This file is part of the phpBB Forum Software package. +* +* @copyright (c) phpBB Limited <https://www.phpbb.com> +* @license GNU General Public License, version 2 (GPL-2.0) +* +* For full copyright and license information, please see +* the docs/CREDITS.txt file.  *  */ @@ -18,7 +21,6 @@ if (!defined('IN_PHPBB'))  /**  * @todo [smilies] check regular expressions for special char replacements (stored specialchared in db) -* @package acp  */  class acp_icons  { @@ -28,6 +30,7 @@ class acp_icons  	{  		global $db, $user, $auth, $template, $cache;  		global $config, $phpbb_root_path, $phpbb_admin_path, $phpEx; +		global $request, $phpbb_container;  		$user->add_lang('acp/posting'); @@ -203,7 +206,6 @@ class acp_icons  						unset($_images[$row[$fields . '_url']]);  					} -  					if ($row[$fields . '_id'] == $icon_id)  					{  						$after = true; @@ -307,7 +309,6 @@ class acp_icons  						'IMG_SRC'			=> $phpbb_root_path . $img_path . '/' . $default_row['smiley_url'],  						'IMG_PATH'			=> $img_path, -						'PHPBB_ROOT_PATH'	=> $phpbb_root_path,  						'CODE'				=> $default_row['code'],  						'EMOTION'			=> $default_row['emotion'], @@ -338,7 +339,7 @@ class acp_icons  				$image_display_on_posting = (isset($_POST['display_on_posting'])) ? request_var('display_on_posting', array('' => 0)) : array();  				// Ok, add the relevant bits if we are adding new codes to existing emoticons... -				if (!empty($_POST['add_additional_code'])) +				if ($request->variable('add_additional_code', false, false, \phpbb\request\request_interface::POST))  				{  					$add_image			= request_var('add_image', '');  					$add_code			= utf8_normalize_nfc(request_var('add_code', '', true)); @@ -354,7 +355,7 @@ class acp_icons  						$image_width[$add_image] = request_var('add_width', 0);  						$image_height[$add_image] = request_var('add_height', 0); -						if (!empty($_POST['add_display_on_posting'])) +						if ($request->variable('add_display_on_posting', false, false, \phpbb\request\request_interface::POST))  						{  							$image_display_on_posting[$add_image] = 1;  						} @@ -378,7 +379,7 @@ class acp_icons  					if ($smiley_count + $addable_smileys_count > SMILEY_LIMIT)  					{ -						trigger_error(sprintf($user->lang['TOO_MANY_SMILIES'], SMILEY_LIMIT) . adm_back_link($this->u_action), E_USER_WARNING); +						trigger_error($user->lang('TOO_MANY_SMILIES', SMILEY_LIMIT) . adm_back_link($this->u_action), E_USER_WARNING);  					}  				} @@ -480,27 +481,13 @@ class acp_icons  							$icons_updated++;  						} - 					} +					}  				}  				$cache->destroy('_icons');  				$cache->destroy('sql', $table); -				$level = E_USER_NOTICE; -				switch ($icons_updated) -				{ -					case 0: -						$suc_lang = "{$lang}_NONE"; -						$level = E_USER_WARNING; -						break; - -					case 1: -						$suc_lang = "{$lang}_ONE"; -						break; - -					default: -						$suc_lang = $lang; -				} +				$level = ($icons_updated) ? E_USER_NOTICE : E_USER_WARNING;  				$errormsgs = '';  				foreach ($errors as $img => $error)  				{ @@ -508,11 +495,11 @@ class acp_icons  				}  				if ($action == 'modify')  				{ -					trigger_error($user->lang[$suc_lang . '_EDITED'] . $errormsgs . adm_back_link($this->u_action), $level); +					trigger_error($user->lang($lang . '_EDITED', $icons_updated) . $errormsgs . adm_back_link($this->u_action), $level);  				}  				else  				{ -					trigger_error($user->lang[$suc_lang . '_ADDED'] . $errormsgs . adm_back_link($this->u_action), $level); +					trigger_error($user->lang($lang . '_ADDED', $icons_updated) . $errormsgs . adm_back_link($this->u_action), $level);  				}  			break; @@ -551,10 +538,10 @@ class acp_icons  					// The user has already selected a smilies_pak file  					if ($current == 'delete')  					{ -						switch ($db->sql_layer) +						switch ($db->get_sql_layer())  						{  							case 'sqlite': -							case 'firebird': +							case 'sqlite3':  								$db->sql_query('DELETE FROM ' . $table);  							break; @@ -598,7 +585,7 @@ class acp_icons  						$smiley_count = $this->item_count($table);  						if ($smiley_count + sizeof($pak_ary) > SMILEY_LIMIT)  						{ -							trigger_error(sprintf($user->lang['TOO_MANY_SMILIES'], SMILEY_LIMIT) . adm_back_link($this->u_action), E_USER_WARNING); +							trigger_error($user->lang('TOO_MANY_SMILIES', SMILEY_LIMIT) . adm_back_link($this->u_action), E_USER_WARNING);  						}  					} @@ -750,7 +737,7 @@ class acp_icons  				{  					garbage_collection(); -					header('Pragma: public'); +					header('Cache-Control: public');  					// Send out the Headers  					header('Content-Type: text/x-delimtext; name="' . $mode . '.pak"'); @@ -796,6 +783,18 @@ class acp_icons  					$cache->destroy('_icons');  					$cache->destroy('sql', $table); + +					if ($request->is_ajax()) +					{ +						$json_response = new \phpbb\json_response; +						$json_response->send(array( +							'MESSAGE_TITLE'	=> $user->lang['INFORMATION'], +							'MESSAGE_TEXT'	=> $notice, +							'REFRESH_DATA'	=> array( +								'time'	=> 3 +							) +						)); +					}  				}  				else  				{ @@ -835,9 +834,10 @@ class acp_icons  					WHERE {$fields}_order = $switch_order_id  						AND {$fields}_id <> $icon_id";  				$db->sql_query($sql); +				$move_executed = (bool) $db->sql_affectedrows();  				// Only update the other entry too if the previous entry got updated -				if ($db->sql_affectedrows()) +				if ($move_executed)  				{  					$sql = "UPDATE $table  						SET {$fields}_order = $switch_order_id @@ -849,6 +849,14 @@ class acp_icons  				$cache->destroy('_icons');  				$cache->destroy('sql', $table); +				if ($request->is_ajax()) +				{ +					$json_response = new \phpbb\json_response; +					$json_response->send(array( +						'success'	=> $move_executed, +					)); +				} +  			break;  		} @@ -896,6 +904,7 @@ class acp_icons  		);  		$spacer = false; +		$pagination = $phpbb_container->get('pagination');  		$pagination_start = request_var('start', 0);  		$item_count = $this->item_count($table); @@ -930,9 +939,7 @@ class acp_icons  		}  		$db->sql_freeresult($result); -		$template->assign_var('PAGINATION', -			generate_pagination($this->u_action, $item_count, $config['smilies_per_page'], $pagination_start, true) -		); +		$pagination->generate_template_pagination($this->u_action, 'pagination', 'start', $item_count, $config['smilies_per_page'], $pagination_start);  	}  	/** @@ -954,5 +961,3 @@ class acp_icons  		return $item_count;  	}  } - -?>
\ No newline at end of file  | 
