============================================================================================================================
Modification Title: RPG Elements Selection

Version: 1.0

Author: John Briggs

Description:
This modification will provide an option to select a RPG Element image in your member control panel.
This modification will display your RPG Element image in your profile, control panel and threads.

Copyright:  2010 John Briggs. All Rights Reserved.

Compatability: XMB 1.9.5 SP1

Install Note: Before adding this modification to your forum, you should back up all files related to this modification.

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

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 Panel --> Insert Raw SQL
====================================

Upload provided file named "SQL.txt" & click "Submit Changes" button.

============================================================================================================================
=======
Step 2:
=======
=================
Edit File: member.php
=================
==========
Find Code:
==========

loadtemplates(

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

loadtemplates(
'member_profile_elements',

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

            $langfileselect = createLangFileSelect($SETTINGS['langfile']);

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

            // RPG Elements Selection Mod Begin
            $efs = array();
            $efs[] = '<option value="">'.$lang['elementsnone'].'</option>';
            $dp = opendir(ROOT.'images/elements');
            while ($file = readdir($dp)) {
                if ($file != '.' AND $file != '..' AND $file != 'index.html') {
                    $elementsname = $file;
                    $elementsname = str_replace('.gif', '', $elementsname);
                    $elementsname = str_replace('_', ' ', $elementsname);
                    $efs[] = '<option value="'.$file.'">'.$elementsname.'</option>';
                }
            }
            closedir($dp);
            natcasesort($efs);
            $elementselect = '<select name="elements">'.implode("\n", $efs).'</select>';
            // RPG Elements Selection Mod End

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

        $sig           = isset($newsig) ? checkInput($newsig, '', $SETTINGS['sightml'], '', false) : '';

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

        // RPG Elements Selection Mod Begin
        $elements = isset($elements) ? checkInput($elements, '', '', 'javascript', false) : '';
        // RPG Elements Selection Mod End

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

        $sig           = addslashes($sig);

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

        // RPG Elements Selection Mod Begin
        $elements = addslashes($elements);
        // RPG Elements Selection Mod End

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

        $db->query("INSERT INTO $table_members (uid,

=============================
Find Code In-Line In Above statement:
=============================

) VALUES ('', '$username',

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

, elements) VALUES ('', '$username',

==================================
Find Code At End Of Above Query statement:
==================================

)");

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

, '$elements')");

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

            if ($memberinfo['customstatus'] != '') {
                $showtitle = $rank['title'];
                $customstatus = '<br />'.$memberinfo['customstatus'];
            } else {
                $showtitle = $rank['title'];
                $customstatus = '';
            }

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

            // RPG Elements Selection Mod Begin
            $elementsblock = '';
            if ($memberinfo['elements'] != '') {
                $elementsname = $memberinfo['elements'];
                $elementsname = str_replace('.gif', '', $elementsname);
                $elementsname = str_replace('_', ' ', $elementsname);
                if (file_exists(ROOT.'images/elements/'.$memberinfo['elements'])) {
                    $elementsimg = '<img src="./images/elements/'.$memberinfo['elements'].'" alt="'.$elementsname.'" title="'.$elementsname.'" border="0" />';
                    $memberinfo['elements'] = $elementsimg;
                    eval('$elementsblock = "'.template('member_profile_elements').'";');
                }
            }
            // RPG Elements Selection Mod End

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

        $langfileselect = createLangFileSelect($member['langfile']);

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

        // RPG Elements Selection Mod Begin
        $efs = array();
        $efs[] = '<option value="">'.$lang['elementsnone'].'</option>';
        $dp = opendir(ROOT.'images/elements');
        while ($file = readdir($dp)) {
            if ($file != '.' AND $file != '..' AND $file != 'index.html') {
                $elementsname = $file;
                $elementsname = str_replace('.gif', '', $elementsname);
                $elementsname = str_replace('_', ' ', $elementsname);
                if ($member['elements'] == $file) {
                    $efs[] = '<option value="'.$file.'" selected="selected">'.$elementsname.'</option>';
                } else {
                    $efs[] = '<option value="'.$file.'">'.$elementsname.'</option>';
                }
            }
        }
        closedir($dp);
        natcasesort($efs);
        $elementselect = '<select name="elements">'.implode("\n", $efs).'</select>';
        // RPG Elements Selection Mod End

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

        $sig            = isset($newsig) ? checkInput($newsig, '', $SETTINGS['sightml'], '', false) : '';

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

        // RPG Elements Selection Mod Begin
        $elements = isset($elements) ? checkInput($elements, '', '', 'javascript', false) : '';
        // RPG Elements Selection Mod End

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

        $sig            = addslashes($sig);

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

        // RPG Elements Selection Mod Begin
        $elements = addslashes($elements);
        // RPG Elements Selection Mod End

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

$db->query("UPDATE $table_members SET $pwtxt email='$email',

=======================================
Find Code In-Line At End Of Above Query statement:
=======================================

 WHERE username='$xmbuser'");

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

, elements='$elements' WHERE username='$xmbuser'");

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

    if ($member['mood'] != '') {
        $member['mood'] = censor($member['mood']);
        $member['mood'] = postify($member['mood'], 'no', 'no', 'yes', 'no', 'yes', 'no', true, 'yes');
    } else {
        $member['mood'] = '';
    }

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

    // RPG Elements Selection Mod Begin
    if ($member['elements'] != '') {
        $elementsname = $member['elements'];
        $elementsname = str_replace('.gif', '', $elementsname);
        $elementsname = str_replace('_', ' ', $elementsname);
        if (file_exists(ROOT.'images/elements/'.$member['elements'])) {
            $elementsimg = '<img src="./images/elements/'.$member['elements'].'" alt="'.$elementsname.'" title="'.$elementsname.'" border="0" />';
            $member['elements'] = $elementsimg;
        }
    }
    // RPG Elements Selection Mod End

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

    $langfileselect = createLangFileSelect($member['langfile']);

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

    // RPG Elements Selection Mod Begin
    $efs = array();
    $efs[] = '<option value="">'.$lang['elementsnone'].'</option>';
    $dp = opendir(ROOT.'images/elements');
    while ($file = readdir($dp)) {
        if ($file != '.' AND $file != '..' AND $file != 'index.html') {
            $elementsname = $file;
            $elementsname = str_replace('.gif', '', $elementsname);
            $elementsname = str_replace('_', ' ', $elementsname);
            if ($member['elements'] == $file) {
                $efs[] = '<option value="'.$file.'" selected="selected">'.$elementsname.'</option>';
            } else {
                $efs[] = '<option value="'.$file.'">'.$elementsname.'</option>';
            }
        }
    }
    closedir($dp);
    natcasesort($efs);
    $elementselect = '<select name="elements">'.implode("\n", $efs).'</select>';
    // RPG Elements Selection Mod End

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

    $sig            = isset($newsig) ? checkInput($newsig, '', $SETTINGS['sightml'], '', false) : '';

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

    // RPG Elements Selection Mod Begin
    $elements = isset($elements) ? checkInput($elements, '', '', 'javascript', false) : '';
    // RPG Elements Selection Mod End

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

    $sig            = addslashes($sig);

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

    // RPG Elements Selection Mod Begin
    $elements = addslashes($elements);
    // RPG Elements Selection Mod End

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

$db->query("UPDATE $table_members SET email='$email',

=======================================
Find Code In-Line At End Of Above Query statement:
=======================================

 WHERE username='$user'");

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

, elements='$elements' WHERE username='$user'");

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

            if ($post['location'] != '') {
                $post['location'] = censor($post['location']);
                $location = '<br />'.$lang['textlocation'].' '.$post['location'];
            } else {
                $location = '';
            }

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

            // RPG Elements Selection Mod Begin
            if ($post['elements'] != '') {
                $elementsname = $post['elements'];
                $elementsname = str_replace('.gif', '', $elementsname);
                $elementsname = str_replace('_', ' ', $elementsname);
                if (file_exists(ROOT.'images/elements/'.$post['elements'].'')) {
                    $elementsimg = '<img src="./images/elements/'.$post['elements'].'" alt="'.$elementsname.'" title="'.$elementsname.'" border="0" />';
                    $post['elements'] = '<br />'.$lang['elements'].' '.$elementsimg;
                }
            }
            // RPG Elements Selection Mod End

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

            $location = '';
            $mood = '';

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

            $post['elements'] = '';

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

// RPG Elements Selection Mod Begin
$lang['elements'] = "RPG Element:";
$lang['elementsnone'] = "--Select RPG Element--";
// RPG Elements Selection Mod End

============================================================================================================================
=======
Step 7:
=======
===============================
Go To Administration Panel --> Templates
===============================
===========================
Edit Template: admintool_editprofile
===========================
==========
Find Code:
==========

<tr class="tablerow">
<td bgcolor="$altbg1" width="22%" valign="top">$lang[moodicon]</td>
<td bgcolor="$altbg2">$moodicons</td>
</tr>

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

<tr class="tablerow">
<td bgcolor="$altbg1" width="22%">$lang[elements]</td>
<td bgcolor="$altbg2">$elementselect</td>
</tr>

============================================================================================================================
=======
Step 8:
=======
===============================
Go To Administration Panel --> Templates
===============================
=====================
Edit Template: member_reg
=====================
==========
Find Code:
==========

<tr>
<td bgcolor="$altbg1" class="tablerow" width="22%">$lang[memcpmood]</td>
<td bgcolor="$altbg2" class="tablerow"><input type="text" name="mood" size="25" value="" value="" /></td>
</tr>

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

<tr class="tablerow">
<td bgcolor="$altbg1" width="22%">$lang[elements]</td>
<td bgcolor="$altbg2">$elementselect</td>
</tr>

============================================================================================================================
=======
Step 9:
=======
===============================
Go To Administration Panel --> Templates
===============================
=======================
Edit Template: memcp_profile
=======================
==========
Find Code:
==========

<tr>
<td bgcolor="$altbg1" class="tablerow" width="22%">$lang[memcpmood]</td>
<td bgcolor="$altbg2" class="tablerow"><input type="text" name="newmood" size="25" value="$member[mood]" /></td>
</tr>

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

<tr class="tablerow">
<td bgcolor="$altbg1" width="22%">$lang[elements]</td>
<td bgcolor="$altbg2">$elementselect</td>
</tr>

============================================================================================================================
========
Step 10:
========
===============================
Go To Administration Panel --> Templates
===============================
========================
Edit Template: viewthread_post
========================
==========
Find Code:
==========

$location

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

$post[elements]

============================================================================================================================
========
Step 11:
========
===============================
Go To Administration Panel --> Templates
===============================
=======================
Edit Template: member_profile
=======================
==========
Find Code:
==========

<tr>
<td bgcolor="$altbg1" valign="top" class="tablerow">$lang[userprofilemood]</td>
<td bgcolor="$altbg2" class="tablerow">$memberinfo[mood]</td>
</tr>

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

$elementsblock

============================================================================================================================
========
Step 12:
========
===============================
Go To Administration Panel --> Templates
===============================
====================================
Create New Template: member_profile_elements
====================================
========================
Add Code and Submit Changes:
========================

<tr class="tablerow">
<td bgcolor="$altbg1" width="22%" valign="top">$lang[elements]</td>
<td bgcolor="$altbg2">$memberinfo[elements]</td>
</tr>

============================================================================================================================
========
Step 13:
========
===============================
Go To Administration Panel --> Templates
===============================
======================
Edit Template: memcp_home
======================
==========
Find Code:
==========

<td bgcolor="$altbg1" valign="top">&nbsp;</td>
<td bgcolor="$altbg2" valign="top">&nbsp;</td>

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

<td bgcolor="$altbg1" valign="top">$lang[elements]</td>
<td bgcolor="$altbg2" valign="top" align="center">$member[elements]</td>

============================================================================================================================
========
Step 14:
========

Now upload provided folder named "elements" to your forum "images" directory.

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