Code Duplication    Length = 28-30 lines in 2 locations

Sources/Post.php 2 locations

@@ 1514-1543 (lines=30) @@
1511
				isAllowedTo('post_reply_own');
1512
		}
1513
1514
		if (isset($_POST['lock']))
1515
		{
1516
			// Nothing is changed to the lock.
1517
			if ((empty($topic_info['locked']) && empty($_POST['lock'])) || (!empty($_POST['lock']) && !empty($topic_info['locked'])))
1518
				unset($_POST['lock']);
1519
1520
			// You're have no permission to lock this topic.
1521
			elseif (!allowedTo(array('lock_any', 'lock_own')) || (!allowedTo('lock_any') && $user_info['id'] != $topic_info['id_member_started']))
1522
				unset($_POST['lock']);
1523
1524
			// You are allowed to (un)lock your own topic only.
1525
			elseif (!allowedTo('lock_any'))
1526
			{
1527
				// You cannot override a moderator lock.
1528
				if ($topic_info['locked'] == 1)
1529
					unset($_POST['lock']);
1530
1531
				else
1532
					$_POST['lock'] = empty($_POST['lock']) ? 0 : 2;
1533
			}
1534
			// Hail mighty moderator, (un)lock this topic immediately.
1535
			else
1536
			{
1537
				$_POST['lock'] = empty($_POST['lock']) ? 0 : 1;
1538
1539
				// Did someone (un)lock this while you were posting?
1540
				if (isset($_POST['already_locked']) && $_POST['already_locked'] != $topic_info['locked'])
1541
					$post_errors[] = 'topic_' . (empty($topic_info['locked']) ? 'un' : '') . 'locked';
1542
			}
1543
		}
1544
1545
		// So you wanna (un)sticky this...let's see.
1546
		if (isset($_POST['sticky']) && ($_POST['sticky'] == $topic_info['is_sticky'] || !allowedTo('make_sticky')))
@@ 1631-1658 (lines=28) @@
1628
		if (!empty($topic_info['locked']) && !allowedTo('moderate_board'))
1629
			fatal_lang_error('topic_locked', false);
1630
1631
		if (isset($_POST['lock']))
1632
		{
1633
			// Nothing changes to the lock status.
1634
			if ((empty($_POST['lock']) && empty($topic_info['locked'])) || (!empty($_POST['lock']) && !empty($topic_info['locked'])))
1635
				unset($_POST['lock']);
1636
			// You're simply not allowed to (un)lock this.
1637
			elseif (!allowedTo(array('lock_any', 'lock_own')) || (!allowedTo('lock_any') && $user_info['id'] != $topic_info['id_member_started']))
1638
				unset($_POST['lock']);
1639
			// You're only allowed to lock your own topics.
1640
			elseif (!allowedTo('lock_any'))
1641
			{
1642
				// You're not allowed to break a moderator's lock.
1643
				if ($topic_info['locked'] == 1)
1644
					unset($_POST['lock']);
1645
				// Lock it with a soft lock or unlock it.
1646
				else
1647
					$_POST['lock'] = empty($_POST['lock']) ? 0 : 2;
1648
			}
1649
			// You must be the moderator.
1650
			else
1651
			{
1652
				$_POST['lock'] = empty($_POST['lock']) ? 0 : 1;
1653
1654
				// Did someone (un)lock this while you were posting?
1655
				if (isset($_POST['already_locked']) && $_POST['already_locked'] != $topic_info['locked'])
1656
					$post_errors[] = 'topic_' . (empty($topic_info['locked']) ? 'un' : '') . 'locked';
1657
			}
1658
		}
1659
1660
		// Change the sticky status of this topic?
1661
		if (isset($_POST['sticky']) && (!allowedTo('make_sticky') || $_POST['sticky'] == $topic_info['is_sticky']))