Webboard

Pełna wersja: Dodanie additionalgroup w opisie posta
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
wersja skryptu MyBB: 18.6
adres forum: Blantever.xaa.pl 
na czym polega problem (screen, opis, komunikaty, nazwa i wersja wtyczki):

Witam, używam pluginu aditionlasgroup, i chciałbym dodać rangi w opisie posta, ponieważ pokazuje tylko jedną rangę, czy tak się da?

Tak mam: https://scr.hu/84g5/6xcci , tak chcę: https://scr.hu/84g5/oq0or , proszę o pomoc :)
Link lub dokładna nazwa pluginu używanego przez ciebie? Jest ich więcej niż 1.
(29.05.2016, 11:47)Divir napisał(a): [ -> ]Link lub dokładna nazwa pluginu używanego przez ciebie? Jest ich więcej niż 1.

additionalgroups, od : https://webboard.pl/thread-54704.html .

Kod:
<?php
/* Copyright © 2012 by Christian Fillion.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>. */

// Disallow direct access to this file for security reasons
if(!defined("IN_MYBB"))
{
    die("Direct initialization of this file is not allowed.<br /><br /><a href=\"../../index.php\">Go back.</a>");
}

function additionalgroups_info()
{
    return array(
        "name"            => "Additional Usergroups on profiles",
        "description"    => "This plugin shows user groups on additional profiles.",
        "website"        => "http://www.premiermouvement.ca",
        "author"        => "cfillion",
        "authorsite"    => "http://www.premiermouvement.ca",
        "version"        => "1.2",
        "guid"             => "ea82e9dc8a7bcdbea8378d6ff7574893",
        "compatibility" => "18*"
    );
}

function additionalgroups_activate()
{
    global $db, $mybb;

    $result = $db->simple_select('settinggroups', 'MAX(disporder) AS max_disporder');
    $max_disporder = $db->fetch_field($result, 'max_disporder');

    $additionalgroups = array(
        "name" => "additionalgroups",
        "title" => "Additional Usergroups on profiles",
        "description" => "Manage Additional Usergroups on profiles plugin (by cfillion)",
        "disporder" => intval($max_disporder) + 1,
        "isdefault" => "0",
    );
    $group['gid'] = $db->insert_query('settinggroups', $additionalgroups);
    $gid = $db->insert_id();

    $new_setting1 = array(
        'name'            => 'additionalgroups_enable',
        'title'            => 'Enable plugin',
        'description'    => '',
        'optionscode'    => 'yesno',
        'value'            => '1',
        'disporder'        => '1',
        'gid'            => intval($gid)
    );
    $db->insert_query('settings', $new_setting1);

    $new_setting2 = array(
        'name'            => 'additionalgroups_displayMode',
        'title'            => 'Display mode',
        'description'    => '',
        'optionscode'    => "select
auto=Auto
image=Image Only
text=Text Only",
        'value'            => 'auto',
        'disporder'        => '2',
        'gid'            => intval($gid)
    );
    $db->insert_query('settings', $new_setting2);

    $new_setting3 = array(
        'name'            => 'additionalgroups_noBullet',
        'title'            => 'Hide bullets',
        'description'    => 'Customize list style',
        'optionscode'    => 'yesno',
        'value'            => '0',
        'disporder'        => '3',
        'gid'            => intval($gid)
    );
    $db->insert_query('settings', $new_setting3);

    $new_setting4 = array(
        'name'            => 'additionalgroups_headerText',
        'title'            => 'Table header text',
        'description'    => 'Plain text only',
        'optionscode'    => 'text',
        'value'            => 'Additional Usergroups',
        'disporder'        => '4',
        'gid'            => intval($gid)
    );
    $db->insert_query('settings', $new_setting4);

    $new_setting5 = array(
        'name'            => 'additionalgroups_exlude',
        'title'            => 'Usergroups that should not be displayed',
        'description'    => '(Comma-separated list)',
        'optionscode'    => 'text',
        'value'            => '',
        'disporder'        => '5',
        'gid'            => intval($gid)
    );
    $db->insert_query('settings', $new_setting5);

    rebuild_settings();

    require MYBB_ROOT.'inc/adminfunctions_templates.php';
    find_replace_templatesets('member_profile', '#'.preg_quote('{$profilefields}').'#', "{\$profilefields}\n{\$additionalgroups}");
}

function additionalgroups_deactivate()
{
    global $db, $mybb;

    $db->delete_query("settinggroups", "name IN('additionalgroups')");
    $db->delete_query("settings", "name LIKE '%additionalgroups_%'");
    rebuild_settings();

    require MYBB_ROOT.'inc/adminfunctions_templates.php';
    find_replace_templatesets('member_profile', '#\n'.preg_quote('{$additionalgroups}').'#', '', 0);
}

$plugins->add_hook('member_profile_start', 'additionalgroups');
function additionalgroups()
{
    global $mybb, $cache, $additionalgroups, $theme, $headerinclude;
    $uid = intval($mybb->input['uid']);
    
        
    
    
    if(!$mybb->settings['additionalgroups_enable'])
        return;

    if(!empty($mybb->user['language']))
    {
        $language = $mybb->user['language'];
    }
    else
    {
        $language = $mybb->settings['bblanguage'];
    }

    if($uid == $mybb->user['uid'])
        $user = $mybb->user;
    else
        $user = get_user($uid);

    $groups = $cache->read("usergroups");
    $displayMode = $mybb->settings['additionalgroups_displayMode'];
    $headerText = htmlspecialchars_uni($mybb->settings['additionalgroups_headerText']);
    $exluded = explode(',', $mybb->settings['additionalgroups_exlude']);

    if($user['displaygroup'] != 0 && $user['usergroup'] != $user['displaygroup'])
        $user['additionalgroups'] = $user['usergroup'].','.$user['additionalgroups'];

    $groupsHtml = '';
    foreach(explode(',', $user['additionalgroups']) as $gid)
    {
        if(empty($gid) || in_array($gid, $exluded) || $user['displaygroup'] == $gid)
            continue;

        $group = $groups[$gid];

        $group['image'] = str_replace("{lang}", $language, $group['image']);
        $group['image'] = str_replace("{theme}", $theme['imgdir'], $group['image']);
         $format = $group['namestyle'];
                    $userin = substr_count($format, "{username}");
                    if($userin == 0) {
                        $format = "{username}";
                    }
                    $format = stripslashes($format);
                    $groupname = str_replace("{username}", $group['title'], $format);
        $item = '';
        if($displayMode == 'auto')
        {
            if(!empty($group['image']))
            {
                $item = $groupname;
            }
            else
            {                
                $item = $groupname;    
                            
            }
        }
        else if($displayMode == 'image' && !empty($group['image']))
        {
            $item = $group['title'];
        }
        else if($displayMode == 'text')
        {
            $item = htmlspecialchars_uni($group['title']);
        }

        if(!empty($item))
            $groupsHtml .= '<li>'.$item."</li>\n";
    }

    if(empty($groupsHtml))
        return;

    if(empty($headerText))
        $headerText = 'Additional Usergroups';

    $additionalgroups = $groupsHtml;

    $headerinclude .= '<style type="text/css">
    #additionalgroups ul
    {
        margin: 0px;';
    if($mybb->settings['additionalgroups_noBullet'])
        $headerinclude .= "\n\t\tlist-style: none;\n\t\tpadding: 0px;";

    $headerinclude .= '
    }';

    if($displayMode == 'auto' || $displayMode == 'image')
        $headerinclude .= '
    #additionalgroups li img
    {
        vertical-align: middle;
    }';
    $headerinclude .= "\n</style>";
}
?>
Dzięki wielkie, pomogło, łap + :)