Update to SMF 1.1.8 - Installation Instructions for 1.1.7

Update to SMF 1.1.8
This patch file will update your forum to SMF 1.1.8.

File Edits ALT + Click to collapse all the operations

./index.php

Find: Select
* Software Version: SMF 1.1.7 *
Replace With: Select
* Software Version: SMF 1.1.8 *
Find: Select
$forum_version = 'SMF 1.1.7';
Replace With: Select
$forum_version = 'SMF 1.1.8';

./Sources/PackageGet.php

Find: Select
* Software Version: SMF 1.1.7 *
Replace With: Select
* Software Version: SMF 1.1.8 *
Find: Select
// Clear any "relative" URL. Since "server" is not present, "relative" is garbage.
unset($_GET['relative']);
Replace With: Select
// Clear any "relative" URL. Since "server" is not present, "relative" is garbage.
unset($_GET['relative']);

$token = checkConfirm('get_absolute_url');
if ($token !== true)
{
$context['sub_template'] = 'package_confirm';

$context['page_title'] = $txt['smf183'];
$context['confirm_message'] = sprintf($txt['package_confirm_view_package_content'], htmlspecialchars($_GET['absolute']));
$context['proceed_href'] = $scripturl . '?action=packageget;sa=browse;absolute=' . urlencode($_GET['absolute']) . ';confirm=' . $token;

return;
}

./Sources/Packages.php

Find: Select
* Software Version: SMF 1.1.7 *
Replace With: Select
* Software Version: SMF 1.1.8 *

./Sources/Security.php

Find: Select
* Software Version: SMF 1.1.6 *
Replace With: Select
* Software Version: SMF 1.1.8 *
Find: Select
// Check whether a form has been submitted twice.
function checkSubmitOnce($action, $is_fatal = true)
{
Replace With: Select
function checkConfirm($action)
{
global $modSettings;

if (isset($_GET['confirm']) && isset($_SESSION['confirm_' . $action]) && md5($_GET['confirm'] . $_SERVER['HTTP_USER_AGENT']) !== $_SESSION['confirm_' . $action])
return true;

else
{
$token = md5(mt_rand() . session_id() . (string) microtime() . $modSettings['rand_seed']);
$_SESSION['confirm_' . $action] = md5($token, $_SERVER['HTTP_USER_AGENT']);

return $token;
}
}

// Check whether a form has been submitted twice.
function checkSubmitOnce($action, $is_fatal = true)
{

./Themes/default/Packages.template.php

Find: Select
// Version: 1.1.7; Packages
Replace With: Select
// Version: 1.1.8; Packages
Find: Select
function template_package_list()
{
Replace With: Select
function template_package_confirm()
{
global $context, $settings, $options, $txt, $scripturl;

echo '
<table border="0" width="100%" cellspacing="1" cellpadding="4" class="bordercolor">
<tr class="titlebg">
<td>' . $context['page_title'] . '</td>
</tr>
<tr>
<td width="100%" align="left" valign="middle" class="windowbg2">
', $context['confirm_message'], '<br />
<br />
<a href="', $context['proceed_href'], '">[ ', $txt['package_confirm_proceed'], ' ]</a> <a href="JavaScript:history.go(-1);">[ ', $txt['package_confirm_go_back'], ' ]</a>
</td>
</tr>
</table>';
}

function template_package_list()
{

./Sources/Subs-Post.php

Find: Select
* Software Version: SMF 1.1.5 *
Replace With: Select
* Software Version: SMF 1.1.8 *
Find: Select
preg_match_all('~\[(' . $myTag . ')=([^\]]*?)\](.+?)\[/(' . $myTag . ')\]~is', $message, $matches);
Replace With: Select
preg_match_all('~\[(' . $myTag . ')=([^\]]*?)\](?:(.+?)\[/(' . $myTag . ')\])?~is', $message, $matches);
Find: Select
if (!$hasEqualSign)
$this_close = $matches[3][$k];
else
$this_close = $matches[4][$k];
Replace With: Select
$this_close = $hasEqualSign ? (empty($matches[4][$k]) ? '' : $matches[4][$k]) : $matches[3][$k];
Find: Select
$replaces['[' . $matches[1][$k] . '=' . $matches[2][$k] . ']' . $matches[3][$k] . '[/' . $matches[4][$k] . ']'] = '[' . $this_tag . '=' . $replace . ']' . $matches[3][$k] . '[/' . $this_close . ']';
Replace With: Select
$replaces[$matches[0][$k]] = '[' . $this_tag . '=' . $replace . ']' . (empty($matches[4][$k]) ? '' : $matches[3][$k] . '[/' . $this_close . ']');

./Themes/default/languages/Packages.english.php

This operation isn't vital to the installation of this mod.
Find: Select

// Version: 1.1; Packages
Replace With: Select

// Version: 1.1.8; Packages
This operation isn't vital to the installation of this mod.
Find (at the end of the file): Select
?>
Add Before: Select

$txt['package_confirm_view_package_content'] = 'Are you sure you want to view the package contents from this location:<br /><br />%1$s';
$txt['package_confirm_proceed'] = 'Proceed';
$txt['package_confirm_go_back'] = 'Go back';
Advertisement: