مرجع پارسی MyBB

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

در نگارش های مای بی بی به مطلبی که در سایت مادر بود برخوردم و جالب بود که در نگارش 1.8 هم این باگ هست و درست نشده (بجز اون هفتاد باگی که هنوز نتوانستند درست کنند Big Grin ). به هرحال این باگ توسط Yaldaram پیدا شده و برای آن راه کاری ارایه کرده که برای دوستان قرار میدهم.
نخست برای روشن شدن مطلب تصویر زیر را ببینید و در انجمن خودتان هم ببینید .
==============
[attachment=8749]
==============
تصویر بالا گزینه هایی است که از دید مدیران و ناظم ها برای نظام دادن به کاربران بکار میرود . (هدف , گزینه ی محروم سازی است)
اگر محروم سازی کلیک شود (چه مدیر و چه ناظم) به صفحه ی محروم سازی هدایت خواهید شد و عملیات محروم سازی ولی در بازگشت به همان صفحه با کمال نا باوری خواهید دید که همان گزینه ها پا برجا هستند !!!!!!!!!
حالا تصویر زیر را ببینید , با توجه با راه کاری که در زیر توضیح می دهم  و با کلیک روی گزینه ی درست شده ی "رفع محروم سازی این کاربر در کنترل پنل مدیرکل" به کنترل پنل هدایت خواهید شد و باقی ماجرا مانند تصویر های زیر
===============
[attachment=8750][attachment=8751]
===============
ودر صورت کلیک بروی رفع محروم کردن این کاربر در کنترل پنل ناظم به تصویر زیر خواهید رسید
================
[attachment=8752]
=================
خوب تا اینجا توضیحات بود اگر خواستید مراحل زیر را باید اجرا کنید . (دوستانی که زیاد وارد نیستید با احتیاط و با  گرفتن بک آپ از بخش های مورد هدف این کار را بکنید)
گام نخست : فایل member.php را در روت سایت پیدا کنید و توسط ویرایشگر مناسب باز کنید و کد زیر را (حدود خط 1752) پیدا کنید


کد php:
        else
        {
            $memprofile['usernotes'] = $lang->no_usernotes;
        


و کدهای زیر را پس از کدهای بالا اضافه کنید (برای حالت ناظم)


کد php:
        if ($memprofile['usergroup'] != 7)
        {
            $ban_unban  =   "<li><a  href=\"{$mybb->settings['bburl']}/modcp.php?action=banuser&amp;uid={$uid}\">{$lang->ban_in_mcp}</a></li>";
        }
        else
        {
            $ban_unban  =   "<li><a  href=\"{$mybb->settings['bburl']}/modcp.php?action=liftban&amp;uid={$uid}&amp;my_post_key={$mybb->post_code}\">{$lang->unban_in_mcp}</a></li>";
        }
        if ($memprofile['uid'] == $mybb->user['uid'])
        {
            $ban_unban "";
        


گام دوم : در همان فایل بالا کدهای زیر را پیدا کنید (حدود خط 1734)(برای حالت مدیرکل)



کد php:
eval("\$adminoptions = \"".$templates->get("member_profile_adminoptions")."\";"); 


و کدهای زیر را بالای کدهایی که در بالا پیدا کردید اضافه کنید


کد php:
        if ($memprofile['usergroup'] != 7)
        {
            $ban_unban  "<li><a  href=\"{$mybb->settings['bburl']}/{$config['admin_dir']}/index.php?module=user/banning&amp;uid={$uid}\">{$lang->admin_ban_in_acp}</a></li>";
        }
        else
        {
            $ban_unban  "<li><a  href=\"{$mybb->settings['bburl']}/{$config['admin_dir']}/index.php?module=user-banning&action=lift&uid={$uid}&amp;my_post_key={$mybb->post_code}\">{$lang->admin_unban_in_acp}</a></li>";
        }
        if ($memprofile['uid'] == $mybb->user['uid'])
        {
            $ban_unban "";
        


فایل را ببندید .
گام سوم : به مسیر زیر بروید
کنترل پنل مدیریت > قالب ها و پوسته > قالب ها > قالب مورد نظر > Member Templates > بخش member_profile_modoptions
کدهای زیر را پیدا کنید (برای حالت ناظم)


کد php:
<li><a  href="{$mybb->settings['bburl']}/modcp.php?action=banuser&amp;uid={$uid}">{$lang->ban_in_mcp}</a></li  


و متغیر زیر را جایگزین کدهای بالا کنید


کد php:
{$ban_unban


گام چهارم : به مسیر زیر بروید
کنترل پنل مدیریت > قالب ها و پوسته > قالب ها > قالب مورد نظر > Member Templates > بخش member_profile_adminoptions

توجه:
این بخش ممکن است در موقع ویرایش از ذخیره سازی خودداری کند که باید از پوسته خود خروجی بگیرید (پس از خروجی پوسته باید حذف شود) و این تغییر را در پوسته انجام و دوباره پوسته را به انجمن ساز وارد کنید , و یا بهتر اینکه در دیتابیس دست به این تغییرات بزنید .

کدهای زیر را پیدا کنید (برای حالت مدیرکل)


کد php:
<li><a  href="{$mybb->settings['bburl']}/{$config['admin_dir']}/index.php?module=user/banning&amp;uid={$uid}">{$lang->admin_ban_in_acp}</a></li  


و متغیر زیر را جایگزین کدهای بالا بکنید


کد php:
{$ban_unban


گام پنجم : به مسیر زیر بروید
inc/languages/persian/member.lang.php
فایل زبان "member.lang.php" را در مسیر بالا پیدا و توسط ویرایشگر مناسب باز کنید و کد زیر را پیدا کنید (برای حالت ناظم)


کد php:
$l['ban_in_mcp'] = "محروم سازی این کاربر در کنترل پنل ناظم"


وکدهای زیر را زیر کدهای بالا اضافه کنید


کد php:
$l['unban_in_mcp'] = "رفع محروم سازی این کاربر در کنترل پنل ناظم"


سپس در همین فایل کدهای زیر را پیدا کنید (برای حالت مدیرکل)


کد php:
$l['admin_ban_in_acp'] = "محروم کردن این کاربر در کنترل پنل مدیر کل"


و کدهای زیر را زیر کدهای بالا اضافه کنید


کد php:
$l['admin_unban_in_acp'] = "رفع محروم سازی این کاربر در کنترل مدیرکل"


کار تمام است . نمونه در تالار میدوری است و کار صددرصد عملی می باشد فقط با احتیاط عمل کنید . از پشتیبان گیری هم غفلت نکنید .

[تصویر:  house_link.png] لینک اصلی: http://community.mybb.com/thread-88948.html
[تصویر:  house_link.png] منبع: تالار میدوری
بسیار عالی ، میدوری عزیز اگر ممکن هست این آموزش رو در سایت مادر هم قرار بدید که در نسخه ی بعد رفع بشه .

تشکر Heart
با درود
ابتدای مطلب ذکر کردم که در سایت مادر هست ولی گوش شنوا نداشته . Big Grin  در ضمن درپایان لینک اصلی هم داده ام . Heart
(۱۳۹۳/۸/۱۳، ۰۱:۰۳:۴۴ صبح)میدوری نوشته است: [ -> ]با درود
ابتدای مطلب ذکر کردم که در سایت مادر هست ولی گوش شنوا نداشته . Big Grin  در ضمن درپایان لینک اصلی هم داده ام . Heart

حرف شما متین هست ، بدلیل کمبود وقت فرصت نکردم کل تاپیک رو مشاهده کنید.
ممنونم. Heart