============================================================================================================================
Modification Name: Smiley Order

Version: 1.0

Last Updated: 04/16/2010

Description: This modification will enable you to select the order of smilies and post icons.

Compatibility: XMB 1.9.5 SP1

Code Developed By: Adam Clarke (http://www.xmbservices.com)

MOD History: V1.0 (19/03/2006 @ 17:40) - Initial Release.

License Note: This modification is released under the GPL License v3. A copy is provided with this software package.

Note: Backup all affected files, templates & databases.

Affected Files (6): lang/English.lang.php, cp2.php, faq.php, functions.php, post.php, viewthread.php

Affected Templates (0): NONE

Author Note:
You downloaded this modification from XMBGarage.com, the #1 source for XMB related downloads.
Please visit http://www.xmbgarage.com/ for support.
============================================================================================================================
=======
Step 1:
=======
===================================
Go To Administration Pane --> Insert Raw SQL
===================================

Upload provided file named "SQL.txt" and Submit Changes.

============================================================================================================================
=======
Step 2:
=======
=======================
Edit File: lang/English.lang.php
============================
Add Code To End Of File Above  ?>
============================

// Smiley Order Mod Begin
$lang['textsmilieorder'] = "Order";
// Smiley Order Mod End

============================================================================================================================
=======
Step 3:
=======
===============
Edit File: cp2.php
===============
==========
Find Code:
==========

<td class="category" colspan="4" align="left"><font color="<?php echo $cattext?>"><strong><?php echo $lang['smilies']?></strong></font></td>

================
Replace Code With:
================

<td class="category" colspan="5" align="left"><font color="<?php echo $cattext?>"><strong><?php echo $lang['smilies']?></strong></font></td>

=======================
Find Code (On 2 Occassions):
=======================

        <td align="center"><?php echo $lang['textdeleteques']?></td>

============================
Add Code Below (On 2 Occassions):
============================

        <td><?php echo $lang['textsmilieorder']?></td>

==========
Find Code:
==========

$query = $db->query("SELECT code, id, url FROM $table_smilies WHERE type='smiley'");

================
Replace Code With:
================

$query = $db->query("SELECT code, id, url, displayorder FROM $table_smilies WHERE type='smiley' ORDER BY displayorder");

==========
Find Code:
==========

            <td bgcolor="<?php echo $altbg2?>" align="center" class="tablerow"><input type="checkbox" name="smdelete[<?php echo $smilie['id']?>]" value="1" /></td>

===============
Add Code Below:
===============

            <!-- Smiley Order Mod Begin -->
            <td bgcolor="<?php echo $altbg2?>" class="tablerow"><input type="text" name="smorder[<?php echo $smilie['id']?>]" value="<?php echo $smilie['displayorder']?>" size="2" /></td>
            <!-- Smiley Order Mod End -->

==========
Find Code:
==========

        <tr>
        <td bgcolor="<?php echo $altbg2?>" colspan="4"><img src="./images/pixel.gif" alt="" /></td>
        </tr>
        <tr bgcolor="<?php echo $altbg1?>" class="tablerow">
        <td><?php echo $lang['textnewsmilie']?></td>
        <td><input type="text" name="newcode" /></td>
        <td colspan="2"><input type="text" name="newurl1" /></td>
        </tr>

================
Replace Code With:
================

        <tr>
        <td bgcolor="<?php echo $altbg2?>" colspan="5"><img src="./images/pixel.gif" alt="" /></td>
        </tr>
        <tr bgcolor="<?php echo $altbg1?>" class="tablerow">
        <td><?php echo $lang['textnewsmilie']?></td>
        <td><input type="text" name="neworder1" size="2" /></td>
        <td><input type="text" name="newcode" /></td>
        <td colspan="2"><input type="text" name="newurl1" /></td>
        </tr>

==========
Find Code:
==========

<td bgcolor="<?php echo $altbg2?>" colspan="4" align="left"><img src="./images/pixel.gif" alt="" /></td>

================
Replace Code With:
================

<td bgcolor="<?php echo $altbg2?>" colspan="5" align="left"><img src="./images/pixel.gif" alt="" /></td>

==========
Find Code:
==========

<td colspan="4" class="header"><?php echo $lang['picons']?></td>

================
Replace Code With:
================

<td colspan="5" class="header"><?php echo $lang['picons']?></td>

==========
Find Code:
==========

$query = $db->query("SELECT * FROM $table_smilies WHERE type='picon' ORDER BY id");

================
Replace Code With:
================

$query = $db->query("SELECT * FROM $table_smilies WHERE type='picon' ORDER BY displayorder");

==========
Find Code:
==========

            <td bgcolor="<?php echo $altbg2?>" align="center" class="tablerow"><input type="checkbox" name="pidelete[<?php echo $smilie['id']?>]" value="1" /></td>

===============
Add Code Below:
===============

            <!-- Smiley Order Mod Begin -->
            <td bgcolor="<?php echo $altbg2?>" class="tablerow"><input type="text" name="piorder[<?php echo $smilie['id']?>]" value="<?php echo $smilie['displayorder']?>" size="2" /></td>
            <!-- Smiley Order Mod End -->

==========
Find Code:
==========

        <tr>
        <td bgcolor="<?php echo $altbg2?>" colspan="4"><img src="./images/pixel.gif" alt="" /></td>
        </tr>
        <tr bgcolor="<?php echo $altbg1?>" class="tablerow">
        <td colspan="4" align="left"><?php echo $lang['textnewpicon']?>&nbsp;&nbsp;<input type="text" name="newurl2" /></td>
        </tr>

================
Replace Code With:
================

        <tr>
        <td bgcolor="<?php echo $altbg2?>" colspan="5"><img src="./images/pixel.gif" alt="" /></td>
        </tr>
        <tr bgcolor="<?php echo $altbg1?>" class="tablerow">
        <td><?php echo $lang['textnewpicon']?></td>
        <td><input type="text" name="neworder2" size="2" /></td>
        <td colspan="5"><input type="text" name="newurl2" /></td>
        </tr>

==========
Find Code:
==========

<td class="ctrtablerow" bgcolor="<?php echo $altbg2?>" colspan="4"><input type="submit" class="submit" name="smiliesubmit" value="<?php echo $lang['textsubmitchanges']?>" /></td>

================
Replace Code With:
================

<td class="ctrtablerow" bgcolor="<?php echo $altbg2?>" colspan="5"><input type="submit" class="submit" name="smiliesubmit" value="<?php echo $lang['textsubmitchanges']?>" /></td>

==========
Find Code:
==========

$query = $db->query("UPDATE $table_smilies SET code='$smcode[$id]', url='$smurl[$id]' WHERE id='$smilie[id]' AND type='smiley'");

================
Replace Code With:
================

$query = $db->query("UPDATE $table_smilies SET code='$smcode[$id]', url='$smurl[$id]', displayorder='$smorder[$id]' WHERE id='$smilie[id]' AND type='smiley'");

==========
Find Code:
==========

$query = $db->query("UPDATE $table_smilies SET url='$piurl[$id]' WHERE id='$picon[id]' AND type='picon'");

================
Replace Code With:
================

$query = $db->query("UPDATE $table_smilies SET url='$piurl[$id]', displayorder='$piorder[$id]' WHERE id='$picon[id]' AND type='picon'");

==========
Find Code:
==========

$query = $db->query("INSERT INTO $table_smilies ( type, code, url, id ) VALUES ('smiley', '$newcode', '$newurl1', '')");

================
Replace Code With:
================

$query = $db->query("INSERT INTO $table_smilies ( type, code, url, id, displayorder ) VALUES ('smiley', '$newcode', '$newurl1', '', '$neworder1')");

==========
Find Code:
==========

$query = $db->query("INSERT INTO $table_smilies ( type, code, url, id ) VALUES ('picon', '', '$newurl2', '')");

================
Replace Code With:
================

$query = $db->query("INSERT INTO $table_smilies ( type, code, url, id, displayorder ) VALUES ('picon', '', '$newurl2', '', '$neworder2')");

============================================================================================================================
=======
Step 4:
=======
==============
Edit File: faq.php
==============
==========
Find Code:
==========

$querysmilie = $db->query("SELECT * FROM $table_smilies WHERE type = 'smiley'");

================
Replace Code With:
================

$querysmilie = $db->query("SELECT * FROM $table_smilies WHERE type = 'smiley' ORDER BY displayorder");

============================================================================================================================
=======
Step 5:
=======
==================
Edit File: functions.php
==================
==========
Find Code:
==========

$querysmilie = $db->query("SELECT * FROM $table_smilies WHERE type='smiley' ORDER BY code DESC");

================
Replace Code With:
================

$querysmilie = $db->query("SELECT * FROM $table_smilies WHERE type='smiley' ORDER BY displayorder");

==========
Find Code:
==========

$querysmilie = $db->query("SELECT * FROM $table_smilies WHERE type='smiley' ORDER BY code DESC LIMIT 0, $smtotal");

================
Replace Code With:
================

$querysmilie = $db->query("SELECT * FROM $table_smilies WHERE type='smiley' ORDER BY displayorder LIMIT 0, $smtotal");

==========
Find Code:
==========

$query = $db->query("SELECT code, url FROM $table_smilies WHERE type='smiley'");

================
Replace Code With:
================

$query = $db->query("SELECT code, url FROM $table_smilies WHERE type='smiley' ORDER BY displayorder");

============================================================================================================================
=======
Step 6:
=======
===============
Edit File: post.php
===============
==========
Find Code:
==========

$querysmilie = $db->query("SELECT url, code FROM $table_smilies WHERE type='picon' AND (url NOT LIKE '%rsvd%')");

================
Replace Code With:
================

$querysmilie = $db->query("SELECT url, code FROM $table_smilies WHERE type='picon' AND (url NOT LIKE '%rsvd%') ORDER BY displayorder");

==========
Find Code:
==========

$querysmilie = $db->query("SELECT url, code FROM $table_smilies WHERE type='picon'");

================
Replace Code With:
================

$querysmilie = $db->query("SELECT url, code FROM $table_smilies WHERE type='picon' ORDER BY displayorder");

==========
Find Code:
==========

$querysmilie = $db->query("SELECT * FROM $table_smilies WHERE type='picon' AND (url NOT LIKE '%rsvd%')");

================
Replace Code With:
================

$querysmilie = $db->query("SELECT * FROM $table_smilies WHERE type='picon' AND (url NOT LIKE '%rsvd%') ORDER BY displayorder");

==========
Find Code:
==========

$querysmilie = $db->query("SELECT * FROM $table_smilies WHERE type='picon'");

================
Replace Code With:
================

$querysmilie = $db->query("SELECT * FROM $table_smilies WHERE type='picon' ORDER BY displayorder");

============================================================================================================================
=======
Step 7:
=======
===================
Edit File: viewthread.php
===================
==========
Find Code:
==========

if ($smileyinsert == 'on' && $smiliesnum > 0) {
    $max = ($smiliesnum > 16) ? 16 : $smiliesnum;

    srand((double)microtime() * 1000000);
    if ($max == 1) {
        $keys = array_keys($smiliecache, $max);
    } else {
        $keys = array_rand($smiliecache, $max);
    }

    $smilies = array();
    $smilies[] = '<table border="0"><tr>';
    $i = 0;
    $total = 0;
    $pre = 'opener.';
    foreach ($keys as $key) {
        if ($total == 16) {
            break;
        }
        $smilie['code'] = $key;
        $smilie['url'] = $smiliecache[$key];

        if ($i >= 4) {
            $smilies[] = '</tr><tr>';
            $i = 0;
        }
        eval('$smilies[] = "'.template('functions_smilieinsert_smilie').'";');
        $i++;
        $total++;
    }
    $smilies[] = '</tr></table>';
    $smilies = implode("\n", $smilies);
}

================
Replace Code With:
================

if ($smileyinsert == 'on' && $smiliesnum > 0) {
    $max = ($smiliesnum > 16) ? 16 : $smiliesnum;

    $smilies = array();
    $smilies[] = '<table border="0"><tr>';
    $i = 0;
    $total = 0;
    $pre = 'opener.';
    foreach ($smiliecache as $code=>$url) {
        if ($total == 16 || $total >= $max) {
            break;
        }
        $smilie['code'] = $code;
        $smilie['url'] = $url;

        if ($i >= 4) {
            $smilies[] = '</tr><tr>';
            $i = 0;
        }
        eval("\$smilies[] = \"".template('functions_smilieinsert_smilie')."\";");
        $i++;
        $total++;
    }
    $smilies[] = '</tr></table>';
    $smilies = implode("\n", $smilies);
}

============================================================================================================================
Enjoy!