diff options
| author | Meik Sievertsen <acydburn@phpbb.com> | 2008-10-09 15:41:19 +0000 | 
|---|---|---|
| committer | Meik Sievertsen <acydburn@phpbb.com> | 2008-10-09 15:41:19 +0000 | 
| commit | c8cf5693b8efaa87911d82fcd1485f9a184f5a03 (patch) | |
| tree | a21735db7b173a63fbd3f3c92b5438702032f9ba /phpBB | |
| parent | 94f0047a9b686b87658e2c76125cc756317bf2cb (diff) | |
| download | forums-c8cf5693b8efaa87911d82fcd1485f9a184f5a03.tar forums-c8cf5693b8efaa87911d82fcd1485f9a184f5a03.tar.gz forums-c8cf5693b8efaa87911d82fcd1485f9a184f5a03.tar.bz2 forums-c8cf5693b8efaa87911d82fcd1485f9a184f5a03.tar.xz forums-c8cf5693b8efaa87911d82fcd1485f9a184f5a03.zip  | |
Make sure users still get notifications if they set to only be notified by Jabber, but Jabber service disabled. (Bug #29715 - Patch by Paul)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@8990 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB')
| -rw-r--r-- | phpBB/docs/CHANGELOG.html | 1 | ||||
| -rw-r--r-- | phpBB/includes/acp/acp_jabber.php | 13 | ||||
| -rw-r--r-- | phpBB/includes/ucp/ucp_prefs.php | 6 | ||||
| -rw-r--r-- | phpBB/includes/ucp/ucp_profile.php | 18 | 
4 files changed, 34 insertions, 4 deletions
diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html index 55fdac3d17..a8a9913cb9 100644 --- a/phpBB/docs/CHANGELOG.html +++ b/phpBB/docs/CHANGELOG.html @@ -133,6 +133,7 @@  		<li>[Fix] Implemented strict check for cached user permissions and existing ACL options. This fix makes sure cached permissions are valid, even if they got already cached.</li>  		<li>[Fix] Do not show link to user/group profiles if user has no permission to view the linked page and gets a denied message anyway. (Bug #15088)</li>  		<li>[Fix] Do not display last post link and sort display options for search engines. (Bug #15088)</li> +		<li>[Fix] Make sure users still get notifications if they set to only be notified by Jabber, but Jabber service disabled. (Bug #29715 - Patch by Paul)</li>  		<li>[Change] No longer allow the direct use of MULTI_INSERT in sql_build_array. sql_multi_insert() must be used.</li>  		<li>[Change] Display warning in ACP if config.php file is left writable.</li> diff --git a/phpBB/includes/acp/acp_jabber.php b/phpBB/includes/acp/acp_jabber.php index 3862ee1ee8..499543cc6c 100644 --- a/phpBB/includes/acp/acp_jabber.php +++ b/phpBB/includes/acp/acp_jabber.php @@ -85,6 +85,19 @@ class acp_jabber  				$jabber->disconnect();  			} +			else +			{ +				// This feature is disabled. +				// We update the user table to be sure all users that have IM as notify type are set to both  as notify type +				$sql_ary = array( +					'user_notify_type'		=> NOTIFY_BOTH, +				); + +				$sql = 'UPDATE ' . USERS_TABLE . ' +					SET ' . $db->sql_build_array('UPDATE', $sql_ary) . ' +					WHERE user_notify_type = ' . NOTIFY_IM; +				$db->sql_query($sql); +			}  			set_config('jab_enable', $jab_enable);  			set_config('jab_host', $jab_host); diff --git a/phpBB/includes/ucp/ucp_prefs.php b/phpBB/includes/ucp/ucp_prefs.php index c6bb4206d0..9b705fba6c 100644 --- a/phpBB/includes/ucp/ucp_prefs.php +++ b/phpBB/includes/ucp/ucp_prefs.php @@ -53,6 +53,12 @@ class ucp_prefs  					'allowpm'		=> request_var('allowpm', (bool) $user->data['user_allow_pm']),  				); +				if ($data['notifymethod'] == NOTIFY_IM && (!$config['jab_enable'] || !$user->data['user_jabber'] || !@extension_loaded('xml'))) +				{ +					// Jabber isnt enabled, or no jabber field filled in. Update the users table to be sure its correct. +					$data['notifymethod'] = NOTIFY_BOTH; +				} +  				if ($submit)  				{  					$data['style'] = ($config['override_user_style']) ? $config['default_style'] : $data['style']; diff --git a/phpBB/includes/ucp/ucp_profile.php b/phpBB/includes/ucp/ucp_profile.php index 710c48e073..328d374e9a 100644 --- a/phpBB/includes/ucp/ucp_profile.php +++ b/phpBB/includes/ucp/ucp_profile.php @@ -347,6 +347,15 @@ class ucp_profile  					if (!sizeof($error))  					{ +						$data['notify'] = $user->data['user_notify_type']; + +						if (!$config['jab_enable'] || !$data['jabber'] || !@extension_loaded('xml')) +						{ +							// User has not filled in a jabber address (Or one of the modules is disabled or jabber is disabled) +							// Disable notify by Jabber now for this user. +							$data['notify'] = NOTIFY_BOTH; +						} +  						$sql_ary = array(  							'user_icq'		=> $data['icq'],  							'user_aim'		=> $data['aim'], @@ -357,6 +366,7 @@ class ucp_profile  							'user_from'		=> $data['location'],  							'user_occ'		=> $data['occupation'],  							'user_interests'=> $data['interests'], +							'user_notify_type'	=> $data['notify'],  						);  						if ($config['allow_birthdays']) @@ -460,7 +470,7 @@ class ucp_profile  				{  					trigger_error('NO_AUTH_SIGNATURE');  				} -				 +  				include($phpbb_root_path . 'includes/functions_posting.' . $phpEx);  				include($phpbb_root_path . 'includes/functions_display.' . $phpEx); @@ -589,9 +599,9 @@ class ucp_profile  					'ERROR'			=> (sizeof($error)) ? implode('<br />', $error) : '',  					'AVATAR'		=> get_user_avatar($user->data['user_avatar'], $user->data['user_avatar_type'], $user->data['user_avatar_width'], $user->data['user_avatar_height']),  					'AVATAR_SIZE'	=> $config['avatar_filesize'], -					 +  					'U_GALLERY'		=> append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=profile&mode=avatar&display_gallery=1'), -					 +  					'S_FORM_ENCTYPE'	=> ($can_upload) ? ' enctype="multipart/form-data"' : '',  					'L_AVATAR_EXPLAIN'	=> sprintf($user->lang['AVATAR_EXPLAIN'], $config['avatar_max_width'], $config['avatar_max_height'], $config['avatar_filesize'] / 1024), @@ -604,7 +614,7 @@ class ucp_profile  				else  				{  					$avatars_enabled = ($can_upload || ($auth->acl_get('u_chgavatar') && ($config['allow_avatar_local'] || $config['allow_avatar_remote']))) ? true : false; -					 +  					$template->assign_vars(array(  						'AVATAR_WIDTH'	=> request_var('width', $user->data['user_avatar_width']),  						'AVATAR_HEIGHT'	=> request_var('height', $user->data['user_avatar_height']),  | 
