diff options
| author | Andreas Fischer <bantu@phpbb.com> | 2015-06-16 14:34:44 +0200 | 
|---|---|---|
| committer | Andreas Fischer <bantu@phpbb.com> | 2015-06-16 14:34:44 +0200 | 
| commit | beb830df712e74107d3f50f094ac143a1d812efc (patch) | |
| tree | 39036b84b25ca95cfe7a38d98ce649d2b63911c4 | |
| parent | 65fef50869a8b16635f24e324ce7820509ef4aa5 (diff) | |
| parent | 78eeb210e78429d867347ecb7c0eedf707005632 (diff) | |
| download | forums-beb830df712e74107d3f50f094ac143a1d812efc.tar forums-beb830df712e74107d3f50f094ac143a1d812efc.tar.gz forums-beb830df712e74107d3f50f094ac143a1d812efc.tar.bz2 forums-beb830df712e74107d3f50f094ac143a1d812efc.tar.xz forums-beb830df712e74107d3f50f094ac143a1d812efc.zip | |
Merge pull request #3675 from s9e/ticket/13906
[ticket/13906] Fixed old signatures in post preview
* s9e/ticket/13906:
  [ticket/13906] Renamed test
  [ticket/13906] Added test
  [ticket/13906] Fixed old signatures in post preview
| -rw-r--r-- | phpBB/posting.php | 13 | ||||
| -rw-r--r-- | tests/functional/posting_test.php | 22 | 
2 files changed, 27 insertions, 8 deletions
| diff --git a/phpBB/posting.php b/phpBB/posting.php index 4a8da8e7ce..ed6a9713e7 100644 --- a/phpBB/posting.php +++ b/phpBB/posting.php @@ -1490,14 +1490,11 @@ if (!sizeof($error) && $preview)  	// Signature  	if ($post_data['enable_sig'] && $config['allow_sig'] && $preview_signature && $auth->acl_get('f_sigs', $forum_id))  	{ -		$parse_sig = new parse_message($preview_signature); -		$parse_sig->bbcode_uid = $preview_signature_uid; -		$parse_sig->bbcode_bitfield = $preview_signature_bitfield; - -		// Not sure about parameters for bbcode/smilies/urls... in signatures -		$parse_sig->format_display($config['allow_sig_bbcode'], $config['allow_sig_links'], $config['allow_sig_smilies']); -		$preview_signature = $parse_sig->message; -		unset($parse_sig); +		$flags = ($config['allow_sig_bbcode']) ? OPTION_FLAG_BBCODE : 0; +		$flags |= ($config['allow_sig_links']) ? OPTION_FLAG_LINKS : 0; +		$flags |= ($config['allow_sig_smilies']) ? OPTION_FLAG_SMILIES : 0; + +		$preview_signature = generate_text_for_display($preview_signature, $preview_signature_uid, $preview_signature_bitfield, $flags, false);  	}  	else  	{ diff --git a/tests/functional/posting_test.php b/tests/functional/posting_test.php index 49f0c1d749..ccfeb10deb 100644 --- a/tests/functional/posting_test.php +++ b/tests/functional/posting_test.php @@ -180,4 +180,26 @@ class phpbb_functional_posting_test extends phpbb_functional_test_case  		$crawler = self::submit($form);  		$this->assertEquals($text, $crawler->filter('#message')->text());  	} + +	public function test_old_signature_in_preview() +	{ +		$sql = 'UPDATE ' . USERS_TABLE . " +			SET user_sig = '[b:2u8sdcwb]My signature[/b:2u8sdcwb]', +				user_sig_bbcode_uid = '2u8sdcwb', +				user_sig_bbcode_bitfield = 'QA==' +			WHERE user_id = 2"; +		$this->get_db()->sql_query($sql); + +		$this->login(); +		$crawler = self::request('GET', 'posting.php?mode=post&f=2'); +		$form = $crawler->selectButton('Preview')->form(array( +			'subject' => 'Test subject', +			'message' => 'My post', +		)); +		$crawler = self::submit($form); +		$this->assertContains( +			'<span style="font-weight: bold">My signature</span>', +			$crawler->filter('#preview .signature')->html() +		); +	}  } | 
