مهمان عزیز خوش آمدید. ورود ثبت نام



صفحه‌ها (2):
امتیاز موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
کلمات کلیدی
مهم ویرایش پلاگین user profile premission

█[مهم]█ ویرایش پلاگین user-profile-premission
با سلام و عرض ادب
خواهش میکنم ابتدا کامل بخونید
دوستان کسی می تونه این پلاگین رو برای ما ویرایش کنه ؟
مطمئنن برای استادان نه سخته نه وقت گیر ، مشکلش رو دقیق براتون شرح میدم
http://mods.mybb.com/view/user-profile-premission

بعد از فعال سازی پلاگین سه گزینه به ترتیب زیر در ویرایش پروفایل اضافه میشه

پروفایل به چه کسانی نمایش داده شود
1-هیچکس
2-فقط دوستان
3-همه


الان چون کسانی که در لیست ایگنور هستن هم پروفایل کاربر مد نظر براشون بسته میشه دقیقا همون چیزیه که میخوایم

ما انتخاب این گزینه ها رو از قالب برداشتیم! یعنی گزینه ایی نیست که کاربر انتخاب کنه و تغییر بده دسترسی رو

اما الان یک کاربری جدید عضو میشه ، وقتی تنظیمات پروفایلش رو به روز رسانی میکنه نمیدونم چرا پروفایلش برای همه جز مدیران بسته میشه؟ این تنها مشکلشه


البته پیشفرض بروی گزینه 3 قرار داره تنظیمات ، می تونه دلیلش این باشه کاربر بعد از بروزرسانی یهو گزینه بروی یک قرار بگیره ؟ یا علتش چیز دیگریست که پروفایل"بعضی از کاربران" به صورت خودجوش بسته میشه؟!

الان میشه کلا تنظیمات "بستن پروفایل برای همه" رو بست؟ یعنی نه اینکه گزینش نباشه کلا از پلاگین حذف شه تا خود جوش دیگه انتخاب نشه
گزینه پیشفرض و اولی هم باز بودن پروفایل برای همه باشه و گزینه دوم فقط برای دوستان!


یکی بزرگواری کنه برای ویرایش این پروفایل سپاسگزار میشم ، والا نه وقت گیره نه محتویات چندان پیچیده ایی داره ! البته برای ما نامفهمون و سخت هستش!


این فایل پلاگین ک فقط همین یک فایل رو داره
کد پی‌اچ‌پی:
<?php

/**
 * Author: Hamid Nozari
 * Comaptible with: MyBB 1.4.*
 * Website: http://www.shceg.com
 * License: GNU/GPL
 * User Profile Premission v1.0.1 - 2010/02/13
 * Use at your own risk

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 />Please make sure IN_MYBB is defined.");
}

$plugins->add_hook("datahandler_user_update""upp_update");
$plugins->add_hook("member_profile_start","upp_member_profile");
$plugins->add_hook('usercp_profile_start''upp_template_update');

function 
upp_info()
{
    return array(
        
"name"            => "User Profile Premission",
        
"description"    => "This plugin allows each user to specify what users have access to his profile and see it",
        
"website"        => "http://www.shceg.com",
        
"author"        => "Hamid Nozari",
        
"authorsite"    => "http://www.shceg.com",
        
"version"        => "1.0.1",
        
"guid"             => "ccd76b688c5556826b1c97d396fee518",
        
"compatibility" => "14*"
    
);
}

function 
upp_install()
{
    global 
$db;

    
//Delete old template if exist
    
$db->delete_query("templates""title='upp_usercp'");
    
    
//Insert template
    
$upp_usercp = array(
        
"title"    =>  "upp_usercp",
        
"template" =>  "<br />

<fieldset class=\"trow2\">
<legend><strong>{\$lang->uppusercp_title}</strong></legend>
<table cellspacing=\"0\" cellpadding=\"{\$theme[tablespace]}\" width=\"100%\">
    <tr>
        <td>
            <select name=\"upp\">
                <option value=\"0\" {\$selected1}>{\$lang->upp_nobody}</option>
                <option value=\"1\" {\$selected2}>{\$lang->upp_friends}</option>
                <option value=\"2\" {\$selected3}>{\$lang->upp_everyone}</option>
            </select>
        </td>
    </tr>
</table>
</fieldset>
                        "
,
        
"sid"      =>  '-1',
        
"version"  =>  '',
        
"dateline" => TIME_NOW
        
);
    
$db->insert_query("templates"$upp_usercp);
    
    
//Insert upp field to users table
    
if(!$db->field_exists('upp''users'))
    {
        
$db->query("ALTER TABLE ".TABLE_PREFIX."users ADD `upp` tinyint(1) NOT NULL default '2'");
    }
}

function 
upp_is_installed()
{
    global 
$db;
    
    if(
$db->field_exists('upp''users'))
    {
        return 
true;
    }
    
    return 
false;
}

function 
upp_activate()
{
    global 
$db;
 
    include 
MYBB_ROOT.'/inc/adminfunctions_templates.php';
    
find_replace_templatesets("usercp_profile""#".preg_quote('{$customfields}')."#i"'{$upp}{$customfields}');
}

function 
upp_deactivate()
{
    global 
$db;

    include 
MYBB_ROOT."/inc/adminfunctions_templates.php";
    
find_replace_templatesets("usercp_profile""#".preg_quote('{$upp}')."#i"''0);
}

function 
upp_uninstall()
{
    global 
$db;
    
    
//Delete template
    
$db->delete_query("templates""title='upp_usercp'");
    
    
//Drop upp field from users tabel
    
if($db->field_exists('upp''users'))
    {
        
$db->query("ALTER TABLE ".TABLE_PREFIX."users DROP `upp`");
    }
}

function 
upp_update()
{
    global 
$mybb$db;
    
$upp intval($mybb->input['upp']);
    
    if (
$upp 2)
        
$upp 0;
    
    
//Update upp field in users table
    
$db->query("UPDATE ".TABLE_PREFIX."users SET upp = " $upp " WHERE uid = " $mybb->user['uid']);
}

function 
upp_member_profile()
{
    global 
$db$mybb$uid$lang$theme$memprofile;
    
    
upp_lang();
    
    
// Set $uid var
    
if($mybb->input['uid'])
    {
        
$uid intval($mybb->input['uid']);
    }
    else
    {
        
$uid $mybb->user['uid'];
    }
    
    
// Set logged user uid
    
$this_user $mybb->user['uid'];
    
    
//Check user premission to see desired profile
    
if ($uid != $this_user)
        if (!
CanViewUserProfile($uid$this_user))
        {
            
$ret=$db->simple_select('users','username, usergroup, displaygroup, upp','uid = '.$uid);
            
$upp $db->fetch_array($ret);
            
$username format_name($upp['username'], $upp['usergroup'], $upp['displaygroup']);
            if (
$upp['upp'] == 1)
                
error($lang->sprintf($lang->upp_error_friend$username));
            else
                
error($lang->sprintf($lang->upp_error$username));
        }
}

function 
upp_template_update()
{
    global 
$mybb$templates$theme$upp$lang$selected1$selected2$selected3;
    
upp_lang();
    
    
//Set user upp state
    
$selected1 $selected2 $selected3 "";
    
    if (
$mybb->user['upp']==0)
        
$selected1 "selected";
    else
    if (
$mybb->user['upp']==1)
        
$selected2 "selected";
    else 
    if (
$mybb->user['upp']==2)
        
$selected3 "selected";
        
    eval(
"\$upp= \"".$templates->get("upp_usercp")."\";");
}

//Functions//
function upp_lang()
{
    global 
$lang;
    
    
$lang->load('upp',false,true);
    
$l['uppusercp_title']='Who can view my profile:';
    
$l['upp_nobody']='Nobody';
    
$l['upp_friends']='My friend\'s only';
    
$l['upp_everyone']='Everyone';
    
$l['upp_error'] = 'You don\'t have premission to see {1} profile';
    
$l['upp_error_friend'] = 'Only {1} friend\'s can see his profile';
    
    foreach(
$l as $key=>$val)
    {
        if(!
$lang->$key)
        {
            
$lang->$key=$val;
        }
    }
}

function 
CanViewUserProfile($uid$this_user)
{
    global 
$db$mybb;

    
$gid $mybb->user['usergroup'];
    
    if (
$gid == || $gid == || $gid == 6)
        return 
true;
    
    
$ret $db->simple_select('users','upp, buddylist, ignorelist','uid = '.$uid);
    
$upp $db->fetch_array($ret);
    
$buddylist $upp['buddylist'];
    
$ignorelist $upp['ignorelist'];
    
$upp $upp['upp'];

    if (
$upp == 0)
    {
        return 
false;
    }
    else
    if (
$upp == 1)
    {
        
$buddyuidarray explode(",",$buddylist);
        if (
in_array($this_user$buddyuidarraytrue))
            return 
true;
        else 
            return 
false;
    }
    else
    {
        
$buddyuidarray explode(",",$ignorelist);
        if (
in_array($this_user$buddyuidarraytrue))
            return 
false;
    }
    return 
true;
}
?>
 


Huh
KalKalForum میگه:
بزرگواران اگر راه حلی برای ما نیست ، بگید منتظر نباشیم خواهشا و کلا حذفش کنیم خلاص!


Huh
Tofighi میگه:
مشکلات پلاگین ربطی به اینکه برای نسخه‌ی ۱.۴ بوده نداره.
اگه کامنت اول کدهای نویسنده‌اش رو بخونید متوجه میشید که نوشته 
نقل قول:Use at your own risk


دعای خیر برای اعضای گروه مای بی‌بی فارسی را فراموش نکنید!تصویر: http://www.cdn.my-bb.ir/images/smilies-v6/lightbulb.gif

HeartHeart خیلی التماس دعا دارم... دعام کنید لطفا HeartHeart

اگر از گروه مای بی‌بی فارسی راضی هستید، پس لطفا آنرا حمایت کنید: حمایت می‌کنم
KalKalForum میگه:
بنده کاری به این قسمت هاش ندارم
این پلاگین کدهای زیادی نداره ، مطمئنن اگرم مشکلی امنیتی یا مشکلات دیگر داشته باشه یکی از بزرگواران ک وارده تو پلاگین نویسی فقط ده دقیقه وقت بذاره کدهاشو بازبینی کنه و با کمی ویرایش ی نسخه ازش ارائه بده عالی میشه

واقعا سایت ما نیاز داره وگرنه انقدر پافشاری نمیکردیم ، حاضریم هزینه کنیم سر ویرایش این پلاگین ولی کسی متاسفانه ...


Huh
صفحه‌ها (2):


موضوعات مشابه ...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  مشکل با پلاگین موضوع مشابه باراد 5 1,094 ۰۷ آذر ۱۳۹۳، ۰۵:۲۶ ب.ظ
آخرین ارسال: Tofighi
  مشکل پلاگین کلمات کلیدی IrIsT 4 754 ۰۶ مهر ۱۳۹۳، ۰۸:۴۳ ب.ظ
آخرین ارسال: Tofighi
  مشکل با پلاگین Sitemap Generator mersadnouri 0 720 ۲۹ شهریور ۱۳۹۳، ۰۷:۰۴ ق.ظ
آخرین ارسال: mersadnouri
  اضافه کردن پلاگین به ckeditor mghaffari 3 1,585 ۱۸ شهریور ۱۳۹۳، ۰۳:۰۱ ب.ظ
آخرین ارسال: Tofighi
  مشکل با پلاگین Ckeditor mghaffari 5 1,054 ۱۰ شهریور ۱۳۹۳، ۰۷:۴۸ ب.ظ
آخرین ارسال: mghaffari
  مشکل با پلاگین محدود کردن مدیران ارشد در مای بی بی 16.13 vahid800 9 1,618 ۰۸ شهریور ۱۳۹۳، ۰۶:۴۲ ب.ظ
آخرین ارسال: Amir-Me
  درخواست لینک دانلود پلاگین ویرایشگر خود my-bb.ir mohammadhero 7 1,186 ۰۴ شهریور ۱۳۹۳، ۱۰:۰۵ ب.ظ
آخرین ارسال: Tofighi
  مشکل با پلاگین موبایل bivafadl 1 612 ۲۷ مرداد ۱۳۹۳، ۰۴:۵۶ ب.ظ
آخرین ارسال: Tofighi
  مشکل پلاگین ckeditor life 3 621 ۲۷ تير ۱۳۹۳، ۰۴:۳۹ ب.ظ
آخرین ارسال: KalKalForum
  آموزش نصب پلاگین New Points _Arman 10 2,758 ۲۰ تير ۱۳۹۳، ۰۷:۰۳ ب.ظ
آخرین ارسال: Tofighi

پرش به انجمن:


کاربران در حال بازدید این موضوع:

1 مهمان


درباره‌ی ما

گروه پشتیبانی فارسی مای بی بی My-BB.Ir در واپسین روزهای پاییز 1391 کار خود را در زمینه مای بی بی آغاز کرد. این گروه با توکل بر خدای منان و دانش فنی خود در تلاش است فعالیتی هرچند ناچیز در زمینه ارتقا و پشتیبانی مای بی بی انجام دهد.
تمامی حقوق برای وب‌سایت پشتیبانی فارسی مای بی‌بی (My-BB.Ir) محفوظ می‌باشد و هرگونه کپی‌برداری از آن شرعا حرام و قانونا غیرمجاز می‌باشد.
قدرت گرفته از مای بی‌بی - فارسی‌ساز: My-BB.Ir و IORA.Ir