示例#1
0
/**
 * Change profile status
 *
 * @param $iProfileId integer
 * @param $sStatus text
 * @return text
 */
function ActionChangeStatus($iProfileId, $sStatus = '')
{
    $iProfileId = (int) $iProfileId;
    $sOutputCode = '';
    $oUserStatus = new BxDolUserStatusView();
    if ($oUserStatus->getRegisteredStatus($sStatus)) {
        //process status
        $sStatus = process_db_input($sStatus, BX_TAGS_STRIP, BX_SLASHES_AUTO);
        $sQuery = "UPDATE `Profiles` SET `UserStatus`='{$sStatus}', `DateLastNav` = NOW()\n            WHERE `ID` = '{$iProfileId}'";
        if (db_res($sQuery, 0)) {
            // send system event
            bx_import('BxDolAlerts');
            $oZ = new BxDolAlerts('profile', 'edit_status', $iProfileId, $iProfileId);
            $oZ->alert();
            bx_import('BxTemplMemberMenu');
            $oMemberMenu = new BxTemplMemberMenu();
            $oMemberMenu->deleteMemberMenuKeyFile($iProfileId);
            createUserDataFile($iProfileId);
            $sOutputCode = $oUserStatus->getStatusIcon($iProfileId);
        }
    }
    return $sOutputCode;
}