مرجع پارسی MyBB

نسخه‌ی کامل: تغییر تکه کدی از پلاگین
شما درحال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب‌بندی مناسب.
سلام

این کد:


+
کد php:
<?php

// Disallow direct access to this file for security reasons
if(!defined("IN_MYBB"))
{
    die(
"Direct initialization of this file is not allowed.<br /><br />Please make sure IN_MYBB is defined.");
}

$plugins->add_hook("modcp_start""modchangeuser_modcpstart");

function 
modchangeuser_info()
{
    return array(
        
"name"            => "Moderators can change username",
        
"description"    => "Allows moderators to change usernames from ModCP",
        
"website"        => "http://www.galacticcode.com",
        
"author"        => "TimB.",
        
"authorsite"    => "http://www.galacticcode.com",
        
"version"        => "1.0",
        
"guid"             => "8f7a3cf97660cd446aa9013e132a6522",
        
"compatibility" => "18*"
    
);
}




function 
modchangeuser_modcpstart()
{
    global 
$templates$mybb$lang;
    
    
    if((
$mybb->input['action'] == "editprofile") or ($mybb->input['action'] == "do_editprofile")){
        
            
$user get_user($mybb->input['uid']);
            if(!
$user['uid'])
            {
                
error($lang->invalid_user);
            }
        
            if(!
$templates->cache['modcp_editprofile']) $templates->cache('modcp_editprofile');
                
$templates->cache['modcp_editprofile'] = str_replace('<strong>{$profile_link}</strong>'"
                <input type=\"text\" name=\"username\" value=\""
.$user['username']."\"/>"$templates->cache['modcp_editprofile']);
            }

    if(
$mybb->input['action'] == "do_editprofile"){
        require_once 
"inc/datahandlers/user.php";
        
$mcu_userhandler = new UserDataHandler("update");

        
$mcu_user = array(
            
"uid" => $mybb->input['uid'],
            
"username" => $mybb->input['username']
        );

        
$mcu_userhandler->set_data($mcu_user);
        
$errors '';
        
        if(!
$mcu_userhandler->validate_user())
        {
            
$errors $mcu_userhandler->get_friendly_errors();
            
error($errors[0]);
        }
        if(
$mybb->usergroup['canmodcp'] == 1){
            
$mcu_userhandler->update_user();
        }
    }
    
}
?>


مربوط به یه پلاگین هست که اجازه میده هرکی پنل ناظم داره بتونه نام کاربری هارو تغییر بده ..
میخواستم اینو جوری تغییر بدید که خودمون تعریف کنیم چه گروهی بتونه عمله تغییر نام کاربری رو انجام بده ..
کد های php رو هرجور تغییر دادم نتونستم این تغییر دلخواهم رو انجام بدم.
upppp
سلام،

این کد فقط در کنترل پنل ناظم تعریف شده است و خارج از آن عمل نمی‌کند. بنابراین اگر تغییرات مدنظر را هم اعمال کنید، این بار خود MyBB اجازه‌ی دسترسی به کنترل پنل ناظم را به کاربری که جز گروه‌های مجاز برای دسترسی به پنل ناظم نیست، نمی‌دهد.
(۱۳۹۹/۱۱/۲۵، ۰۰:۲۰:۲۰ صبح)Mohammad-Za نوشته است: [ -> ]سلام،

این کد فقط در کنترل پنل ناظم تعریف شده است و خارج از آن عمل نمی‌کند. بنابراین اگر تغییرات مدنظر را هم اعمال کنید، این بار خود MyBB اجازه‌ی دسترسی به کنترل پنل ناظم را به کاربری که جز گروه‌های مجاز برای دسترسی به پنل ناظم نیست، نمی‌دهد.
نوشتن چنین پلاگینی سخته؟

یا همین رو نمیشه تغییر داد؟
(۱۳۹۹/۱۱/۲۶، ۰۳:۳۰:۴۲ صبح)MISTER نوشته است: [ -> ]
(۱۳۹۹/۱۱/۲۵، ۰۰:۲۰:۲۰ صبح)Mohammad-Za نوشته است: [ -> ]سلام،

این کد فقط در کنترل پنل ناظم تعریف شده است و خارج از آن عمل نمی‌کند. بنابراین اگر تغییرات مدنظر را هم اعمال کنید، این بار خود MyBB اجازه‌ی دسترسی به کنترل پنل ناظم را به کاربری که جز گروه‌های مجاز برای دسترسی به پنل ناظم نیست، نمی‌دهد.
نوشتن چنین پلاگینی سخته؟

یا همین رو نمیشه تغییر داد؟

خب به اون گروه های کاربری در ویرایش گروه مورد نظر، باید (از تب عمومی) دسترسی کنترل پنل ناظم رو بدید و از تب کنترل پنل ناظم دسترسی های لازم رو کم یا زیاد کنید که کارای دیگه ای نکنن مثل محروم کردن کاربران...
(۱۳۹۹/۱۱/۲۶، ۱۳:۵۸:۳۸ عصر)firstboy000 نوشته است: [ -> ]
(۱۳۹۹/۱۱/۲۶، ۰۳:۳۰:۴۲ صبح)MISTER نوشته است: [ -> ]
(۱۳۹۹/۱۱/۲۵، ۰۰:۲۰:۲۰ صبح)Mohammad-Za نوشته است: [ -> ]سلام،

این کد فقط در کنترل پنل ناظم تعریف شده است و خارج از آن عمل نمی‌کند. بنابراین اگر تغییرات مدنظر را هم اعمال کنید، این بار خود MyBB اجازه‌ی دسترسی به کنترل پنل ناظم را به کاربری که جز گروه‌های مجاز برای دسترسی به پنل ناظم نیست، نمی‌دهد.
نوشتن چنین پلاگینی سخته؟

یا همین رو نمیشه تغییر داد؟

خب به اون گروه های کاربری در ویرایش گروه مورد نظر، باید (از تب عمومی) دسترسی کنترل پنل ناظم رو بدید و از تب کنترل پنل ناظم دسترسی های لازم رو کم یا زیاد کنید که کارای دیگه ای نکنن مثل محروم کردن کاربران...
مشکل‌محروم‌نیست ...


این پلاگین تغییر نام کاربری از کنترل پنل ناظم هست ، و میخوام دسترسی این بخش از پنل ناظم رو فقط به یه گروه کاربری بدم
(۱۳۹۹/۱۱/۲۶، ۰۳:۳۰:۴۲ صبح)MISTER نوشته است: [ -> ]
(۱۳۹۹/۱۱/۲۵، ۰۰:۲۰:۲۰ صبح)Mohammad-Za نوشته است: [ -> ]سلام،

این کد فقط در کنترل پنل ناظم تعریف شده است و خارج از آن عمل نمی‌کند. بنابراین اگر تغییرات مدنظر را هم اعمال کنید، این بار خود MyBB اجازه‌ی دسترسی به کنترل پنل ناظم را به کاربری که جز گروه‌های مجاز برای دسترسی به پنل ناظم نیست، نمی‌دهد.
نوشتن چنین پلاگینی سخته؟

یا همین رو نمیشه تغییر داد؟
سلام.


سخت نیست اما زمان‌بر هست و به‌دلیل این‌که کاربرد چندانی ندارد به‌نظر من ارزش کدنویسی را ندارد.
(۱۳۹۹/۱۱/۳۰، ۱۸:۵۲:۴۴ عصر)Mohammad-Za نوشته است: [ -> ]
(۱۳۹۹/۱۱/۲۶، ۰۳:۳۰:۴۲ صبح)MISTER نوشته است: [ -> ]
(۱۳۹۹/۱۱/۲۵، ۰۰:۲۰:۲۰ صبح)Mohammad-Za نوشته است: [ -> ]سلام،

این کد فقط در کنترل پنل ناظم تعریف شده است و خارج از آن عمل نمی‌کند. بنابراین اگر تغییرات مدنظر را هم اعمال کنید، این بار خود MyBB اجازه‌ی دسترسی به کنترل پنل ناظم را به کاربری که جز گروه‌های مجاز برای دسترسی به پنل ناظم نیست، نمی‌دهد.
نوشتن چنین پلاگینی سخته؟

یا همین رو نمیشه تغییر داد؟
سلام.


سخت نیست اما زمان‌بر هست و به‌دلیل این‌که کاربرد چندانی ندارد به‌نظر من ارزش کدنویسی را ندارد.
چ بخش هاییش رو باید تغییر داد؟


خیلی خوبه اگه برای 1.8 طراحی بشه و بشه از طریق acp مشخص کرد چه گروه هایی بتونن نام های کاربری رو تغییر بدن اینجوری ادمین نیاز نیست به مدیرانش دسترسی به پنل مدیریت بده