مرجع پارسی MyBB

نسخه‌ی کامل: پلاگین تب های من
شما درحال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب‌بندی مناسب.
صفحه‌ها: 1 2
سلام دوستان خسته نباشید من دلم میخواد انجمنامو تب دار کنم
کسی میتونه کمکم کنه؟Blush
از همین پلاگین استفاده کنید.

یه کدیم بود تو انجمن منتخب فک نکنم دیگه باشه.
من پلاگینو نصب کردم با پلاگین بازی مشکل داره!
میشه همون کد بگید بذاریم؟
خیلی فوریه!
چی شد منتظرم دوستان!
دوست عزیز این کار با کد نمیشه انجامش داد حتما باید پلاگین باشه(البته طبق دانش فعلی من)
با سلام
من نصب کردم
ولی هنگامی که در صفحه انجمن ها برای تنظیمات روی تب های من می زنم نوشته زیر روی صفحه می آید
Parse error: syntax error, unexpected T_STRING in /home/u315236211/public_html/inc/languages/persian/admin/mytabs.lang.php on line 34
فایل زبان به ضمیمه می فرستم بنید مشکل چیه

کد php:
<?php

    
/*
     *    MyBBPlugins
     *    http://www.mybbplug.in/s/
     *
     *    MyTabs
     *    Created by Ethan at MyBBPlugins
     *    [Administrator & Developer]
     *
     *    - File: "{$mybb->settings['bburl']}/inc/plugins/mytabs.php"
     *
     *  This plugin and its contents are free for use.
     *
     */

    
$plugins->add_hook("index_start""mytabs_start");
    
$plugins->add_hook("index_end""mytabs_forums");
    
$plugins->add_hook("usercp_options_end""mytabs_useroptions");
    
$plugins->add_hook("usercp_do_options_end""mytabs_save_useroptions");
    
$plugins->add_hook("admin_forum_menu""mytabs_menu");
    
$plugins->add_hook("admin_forum_action_handler""mytabs_action_handler");
    
    function 
mytabs_info()
    {
        return array(
            
'name'            => 'زبانه های من',
            
'description'    => 'Lets you implement tabbed browsing in your forum.',
            
'website'        => 'http://www.mybbplug.in/s/',
            
'author'        => 'Ethan',
            
'authorsite'    => 'http://www.mybbplug.in/s/',
            
'version'        => '1.32',
            
'guid'            => '88a15ee0474822feb1a78044daae64bd'
        
);
    }

    function 
mytabs_activate()
    {
        global 
$mybb$db;
        
        
/* Create table for storing tabs. */
        
if ( !$db->table_exists'mytabs' ) )
        {
            
$mytabs_table 'CREATE TABLE `'.TABLE_PREFIX.'mytabs` (
                                            `id` INT( 10 ) NOT NULL AUTO_INCREMENT ,
                                            `name` TEXT NOT NULL ,
                                            `forums` TEXT NOT NULL ,
                                            `visible` TEXT NOT NULL ,
                                            `order` TEXT NOT NULL ,
                                            `tab_code` TEXT NOT NULL ,
                                            `selected_tab_code` TEXT NOT NULL ,
                                            PRIMARY KEY ( `id` )
                                            ) ENGINE = MYISAM ;
                                '
;
            
$db->query$mytabs_table );
        }
        
        
/* Create settings table. */
        
if ( !$db->table_exists'mytabs_settings' ) )
        {
            
$mytabs_table 'CREATE TABLE `'.TABLE_PREFIX.'mytabs_settings` (
                                            `id` INT( 10 ) NOT NULL AUTO_INCREMENT ,
                                            `name` TEXT NOT NULL ,
                                            `value` TEXT NOT NULL ,
                                            PRIMARY KEY ( `id` )
                                            ) ENGINE = MYISAM ;
                                '
;
            
$db->query$mytabs_table );
        }
        
        
/* Create default settings. */
        
        
$default_settings[] = array(
            
'id' => 1,
            
'name' => 'enabled',
            
'value' => '1'
        
);
        
        
$default_settings[] = array(
            
'id' => 2,
            
'name' => 'default_tab_code',
            
'value' => '<td class="thead" style="border: 1px solid black; margin-right: 5px; padding: 2px 5px 2px 5px;">\r\n    <div>\r\n        <a href="{$link}">{$name}</a>\r\n    </div>\r\n</td>\r\n'
        
);
        
        
$default_settings[] = array(
            
'id' => 3,
            
'name' => 'default_selected_tab_code',
            
'value' => '<td class="thead" style="border: 1px solid black; margin-right: 5px; padding: 2px 5px 2px 5px;">\r\n    <div>\r\n        <strong><a href="{$link}">{$name}</a></strong>\r\n    </div>\r\n</td>'
        
);
        
        
$default_settings[] = array(
            
'id' => 4,
            
'name' => 'tab_list_code',
            
'value' => '<table border="0" cellspacing="1" cellpadding="1" class="tdborder">\r\n        <tr>\r\n            {$tablist}\r\n        </tr>\r\n</table>'
        
);
        
        
$default_settings[] = array(
            
'id' => 5,
            
'name' => 'default_tab',
            
'value' => '1'
        
);
        
        
$default_settings[] = array(
            
'id' => 6,
            
'name' => 'ajax',
            
'value' => '1'
        
);
        
        
$db->insert_query_multiple('mytabs_settings'$default_settings);
        
        
/* Create user default tab option column. */
        
        
if ( !$db->field_exists'default_tab''users' ) )
        {
            
$db->add_column('users''default_tab''TEXT NOT NULL');
        }
    }
    
    function 
mytabs_deactivate()
    {
        global 
$mybb$db;
        
        
/* Drop the tabs table. */
        
if ( $db->table_exists'mytabs' ) )
        {
            
$db->drop_table'mytabs' );
        }
        
        
/* Drop the tabs settings table. */
        
if ( $db->table_exists'mytabs_settings' ) )
        {
            
$db->drop_table'mytabs_settings' );
        }
        
        
/* Drop the user default tab option column. */
        
if ( $db->field_exists'default_tab''users' ) )
        {
            
$db->drop_column('users''default_tab');
        }
    }
    
    function 
mytabs_start()
    {
        global 
$db$header$headerinclude$mybb;
        
        
$query $db->simple_select('mytabs_settings');
        while(
$result $db->fetch_array($query))
        {
            
$setting[$result['name']] = $result['value'];
        }
        
        if(
$setting['enabled'])
        {
            
$headerinclude .= "<script type=\"text/javascript\" src=\"{$mybb->settings['bburl']}/jscripts/mytabs.js\"></script>";
        }
    }
    
    function 
mytabs_forums()
    {
        global 
$db$forumpermissions$forums$mybb;
        
        
$query $db->simple_select('mytabs_settings');
        while(
$result $db->fetch_array($query))
        {
            
$setting[$result['name']] = $result['value'];
        }
        
        
$selected_tab intval($mybb->input['tab']);
        
        
$query $db->simple_select('users''default_tab'"`uid`='{$mybb->user['uid']}'");
        if(
$db->num_rows($query) > 0)
        {
            if(
$user_tab_info $db->fetch_array($query))
            {
                
$temp rtrim($user_tab_info['default_tab']);
                if(!empty(
$temp))
                {
                    if(empty(
$selected_tab))
                    {
                        
$selected_tab $db->escape_string($user_tab_info['default_tab']);
                    }
                }
            }
        }
        
        if(
intval($selected_tab) > 0)
        {
            
$query $db->simple_select('mytabs''*'"id='{$selected_tab}'");
            if(
$temp_tab $db->fetch_array($query))
            {
                if(!
$temp_tab['visible'])
                {    
                    if(
$setting['default_tab'] == 0)
                    {
                        
$selected_tab 1;
                    }
                    else
                    {
                        
$selected_tab $setting['default_tab'];
                    }
                }
            }
            else
            {
                if(
$setting['default_tab'] == 0)
                {
                    
$selected_tab 1;
                }
                else
                {
                    
$selected_tab $setting['default_tab'];
                }
            }
        }
        else
        {
            if(
$setting['default_tab'] == 0)
            {
                
$selected_tab 1;
            }
            else
            {
                
$selected_tab $setting['default_tab'];
            }
        }
        
        
$forums .= "\n<!-- mytabs (disabled): \$forum start -->\n<!-- mytabs_full_start --><div id=\"mytabs_full\">";
        if (
$setting['enabled'])
        {
            if (
$setting['ajax'])
            {
                
$tab_query $db->simple_select('mytabs'"*"'', array('order_by' => '`order`''order_dir' => 'asc'));
                
                if(
$db->num_rows($tab_query) > 0)
                {
                    
/* Start tab menu code. */
                    
while($tab $db->fetch_array($tab_query))
                    {
                        
/* If tab is selected, generate body content and propar nav button. */
                        
if($tab['id'] == $selected_tab)
                        {
                            
$name $tab['name'];
                            
$link "?tab={$tab['id']}\" onclick=\"return switchTab('{$tab['id']}', 'true');";
                            
$temp rtrim($tab['selected_tab_code']);
                            if(!empty(
$temp)) {
                                eval(
"\$tablist .= \"".$db->escape_string($tab["selected_tab_code"])."\";");
                            } else {
                                eval(
"\$tablist .= \"".$db->escape_string($setting["default_selected_tab_code"])."\";");
                            }
                            
                            
/* Check already unviewable forums, and save to array. */
                            
$noshow = array();
                            foreach(
$forumpermissions as $fid => $perms)
                            {
                                if(!
$forumpermissions[$fid]['canview'])
                                {
                                    
$noshow[] .= $fid;
                                }
                            }
                            
                            
/* Set all the forums to invisible. */
                            
foreach($forumpermissions as $fid => $perms)
                            {
                                
$forumpermissions[$fid]['canview'] = 0;
                            }
                            
                            
/* Make sure the tab has forums to exclude, otherwise show all. */
                            
$temp rtrim($tab['forums']);
                            if(!empty(
$temp))
                            {
                                foreach(
explode(','$tab['forums']) as $fid)
                                {
                                    
/* Re-Check if forum is already unviewable. */
                                    
if($fid != null && is_array($noshow))
                                    {
                                        if(!
in_array($fid$noshow))
                                        {
                                            
/* Set this forum viewable. */
                                            
$forumpermissions[$fid]['canview'] = 1;
                                            
                                            
/* Check parent forums and set to viewable. */
                                            
$parents get_parent_list($fid);
                                            
$temp rtrim($parents);
                                            if(!empty(
$temp))
                                            {
                                                foreach(
explode(','$parents) as $pid)
                                                {
                                                    if(
$pid != null && !in_array($pid$noshow))
                                                    {
                                                        
$forumpermissions[$pid]['canview'] = 1;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                
$forum_list build_forumbits();
                                
$body_content $forum_list['forum_list'];
                            }
                        }
                        else
                        {
                            if(!
$tab['visible'])
                                continue;
                            
$name $tab['name'];
                            
$link "?tab={$tab['id']}\" onclick=\"return switchTab('{$tab['id']}', 'true');";
                            
$temp rtrim($tab['tab_code']);
                            if(!empty(
$temp)) {
                                eval(
"\$tablist .= \"".$db->escape_string($tab["tab_code"])."\";");
                            } else {
                                eval(
"\$tablist .= \"".$db->escape_string($setting["default_tab_code"])."\";");
                            }
                        }
                    }
                    if(!empty(
$tablist))
                    {
                        eval(
"\$navbar .= \"".$db->escape_string(
                            
"<div id=\"tab_nav_{$selected_tab}\" style=\"\">".$setting['tab_list_code'])."</div>\";"
                        
);
                    }
                    else
                    {
                        
$forums .= "<!-- mytabs: \$tablist = \"{$tablist}\" -->";
                    }
                    if(!empty(
$navbar) && !empty($body_content))
                    {
                        
$forums "<!-- mytabs: start (ajax) -->\n<!-- mytabs_full_start --><div id=\"mytabs_full\">\n";
                        
$forums .= "<div id=\"tab_navbar\">\n\r{$navbar}\n</div>\n<div id=\"tab_content\">\n\r{$body_content}\n</div>";
                        
$forums .= "\n<!-- mytabs_full_end --></div>\n<!-- mytabs: end -->";
                    }
                    else
                    {
                        
$forums .= "<!-- mytabs: \$navbar = \"{$navbar}\" -->";
                    }
                }
                else
                {
                    
$forums .= "<!-- mytabs: no tabs currently set (query turning 0 table result) -->";
                }
                
$forums .= "<!-- mytabs: ajax version end -->";
                if(isset(
$mybb->input['output-mytab-code']))
                {
                    
$temp str_replace('<!-- mytabs_full_start --><div id="mytabs_full">'''$forums);
                    
$temp2 str_replace('<!-- mytabs_full_end --></div>'''$temp);
                    die(
$temp2);
                }
            }
            else
            {
                
$tab_query $db->simple_select('mytabs'"*"'', array('order_by' => '`order`''order_dir' => 'asc'));
                
                if(
$db->num_rows($tab_query) > 0)
                {
                    
$forums "";
            
                    
/* Start tab menu code. */
                    
                    
$forums .= "\n<!-- mytabs: start -->\n<!-- mytabs_full_start --><div id=\"mytabs_full\">";
                    
                    
$forums .= "\n<div id=\"tab_nav\">";
                    
                    
$query $db->simple_select('mytabs''*''', array('order_by' => '`order`''order_dir' => 'asc'));
                    while(
$tab $db->fetch_array($query))
                    {
                        if(!
$tab['visible'])
                            continue;
                        
$tablist "";
                        
$query2 $db->simple_select('mytabs''*''', array('order_by' => '`order`''order_dir' => 'asc'));
                        while(
$tab2 $db->fetch_array($query2))
                        {
                            if(!
$tab2['visible'])
                                continue;
                            
$name $tab2['name'];
                            
$link "?tab={$tab2['id']}\" onclick=\"return switchTab('{$tab2['id']}', false);";
                            if(
$tab['id'] == $tab2['id'])
                            {
                                
$temp rtrim($tab['selected_tab_code']);
                                if(!empty(
$temp)) {
                                    eval(
"\$tablist .= \"".$db->escape_string($tab["selected_tab_code"])."\";");
                                } else {
                                    eval(
"\$tablist .= \"".$db->escape_string($setting["default_selected_tab_code"])."\";");
                                }
                            }
                            else
                            {
                                
$temp rtrim($tab['tab_code']);
                                if(!empty(
$temp)) {
                                    eval(
"\$tablist .= \"".$db->escape_string($tab["tab_code"])."\";");
                                } else {
                                    eval(
"\$tablist .= \"".$db->escape_string($setting["default_tab_code"])."\";");
                                }
                            }
                        }
                        if(
$selected_tab == $tab['id'])
                        {
                            eval(
"\$forums .= \"".$db->escape_string(
                                
"<div id=\"tab_nav_{$tab['id']}\" style=\"\">".$setting['tab_list_code'])."</div>\";"
                            
);
                        }
                        else
                        {
                            eval(
"\$forums .= \"".$db->escape_string(
                                
"<div id=\"tab_nav_{$tab['id']}\" style=\"display: none;\">".$setting['tab_list_code'])."</div>\";"
                            
);
                        }
                    }
                    
$forums .= "\n</div>\n<div id=\"tab_content\" style=\"\">";
                    
                    
/* End tab menu code. */
                    
                    
$noshow = array();
                    foreach(
$forumpermissions as $fid => $perms)
                    {
                        
/* Check if forum is already unviewable. */
                        
if(!$forumpermissions[$fid]['canview'])
                        {
                            
$noshow[] .= $fid;
                        }
                    }
                    
                    while(
$tab $db->fetch_array($tab_query))
                    {
                        if(!
$tab['visible'])
                            continue;
                        
$forums .= "\n<!-- Starting with tab[{$tab['id']}] -->";
                        if(
$tab['id'] == $selected_tab) {
                            
$forums .= "\n\n<!-- \$tab[{$tab['id']}] selected -->\n";
                            
$forums .= "\n<div id=\"tab_{$tab['id']}\" style=\"\">";
                        } else {
                            
$forums .= "\n\n<!-- \$tab[{$tab['id']}] not selected -->\n";
                            
$forums .= "\n<div id=\"tab_{$tab['id']}\" style=\"display: none;\">";
                        }
                        
/* Set all the forums to invisible. */
                        
foreach($forumpermissions as $fid => $perms)
                        {
                            
$forumpermissions[$fid]['canview'] = 0;
                        }
                        
$temp rtrim($tab['forums']);
                        
/* Make sure the tab has forums to exclude, otherwise show all. */
                        
if(!empty($temp))
                        {
                            foreach(
explode(','$tab['forums']) as $fid)
                            {
                                
/* Re-Check if forum is already unviewable. */
                                
if($fid != null && is_array($noshow))
                                {
                                    if(!
in_array($fid$noshow))
                                    {
                                        
/* Set this forum viewable. */
                                        
$forumpermissions[$fid]['canview'] = 1;
                                        
$forums .= "<!-- Setting forum[{$fid}] visible -->";
                                        
                                        
/* Check parent forums and set to viewable. */
                                        
$parents get_parent_list($fid);
                                        if(!empty(
$parents))
                                        {
                                            foreach(
explode(','$parents) as $pid)
                                            {
                                                if(
$pid != null && !in_array($pid$noshow))
                                                {
                                                    
$forumpermissions[$pid]['canview'] = 1;
                                                    
$forums .= "<!-- Setting parent[{$pid}] visible -->";
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            
$forum_list build_forumbits();
                            
$forums .= "\n\n<!-- Start building tab[{$tab['id']}] contents -->\n\n";
                            
$forums .= $forum_list['forum_list'];
                            
$forums .= "\n\n<!-- End building tab[{$tab['id']}] contents -->\n\n";
                        }
                        else
                        {
                            
$forums .= "\n<!-- mytabs: no forums set with this tab -->";
                        }
                        
$forums .= "</div>";
                        
$forums .= "\n<!-- Finished with tab[{$tab['id']}] -->\n";
                    }
                    
$forums .= "\n\n</div>\n<!-- mytabs_full_end --></div>";
                    
$forums .= "\n<!-- mytabs: end -->";
                }
                
$forums .= "\n<!-- mytabs: javascript version end -->";
            }
        }
        else
        {
            
/* Disabled */
            
$forums .= "\n<!-- mytabs_full_end --></div>\n<!-- mytabs: setting disabled -->";
        }
    }
    
    function 
mytabs_useroptions()
    {
        global 
$db$lang$mybb$templates$tppselect;
        
        
$query $db->simple_select('mytabs_settings');
        while(
$result $db->fetch_array($query))
        {
            
$setting[$result['name']] = $result['value'];
        }
        
        if(
$setting['enabled'])
        {
            
$lang->load('mytabs');
            
            
$query $db->simple_select('users''default_tab'"uid='{$mybb->user['uid']}'");
            if(
$db->num_rows($query) > 0)
            {
                if(
$user_tab_info $db->fetch_array($query))
                {
                    
$temp rtrim($user_tab_info['default_tab']);
                    if(!empty(
$temp))
                    {
                        
$selected_tab $db->escape_string($user_tab_info['default_tab']);
                    }
                }
            }
            
            
$query $db->simple_select("mytabs");
            if(
$db->num_rows($query) > 0)
            {
                while(
$tab $db->fetch_array($query))
                {
                    if(
$tab['visible'])
                    {
                        
$selected "";
                        if(
$selected_tab == $tab['id'])
                        {
                            
$selected "selected=\"selected\"";
                        }
                        
$tppoptions .= "<option value=\"{$tab['id']}\" $selected>{$tab['name']}</option>\n";
                    }
                }
                eval(
"\$tabselect .= \"".$templates->get("usercp_options_tppselect")."\";");
                
$tppselect .= str_replace('name="tpp"''name="defaulttab"'$tabselect);
            }
        }
    }
    
    function 
mytabs_save_useroptions()
    {
        global 
$db$mybb;
        
        
$query $db->simple_select('mytabs_settings');
        while(
$result $db->fetch_array($query))
        {
            
$setting[$result['name']] = $result['value'];
        }
        
        if(
$setting['enabled'])
        {
            
$db->update_query("users", array('default_tab' => intval($mybb->input['defaulttab'])), "uid='".$mybb->user['uid']."'");
        }
    }
    
    function 
mytabs_menu(&$sub_menu)
    {
        global 
$mybb$lang;

        
end($sub_menu);
        
$key = (key($sub_menu))+10;

        if(!
$key)
        {
            
$key '50';
        }
        
$sub_menu[$key] = array('id' => 'mytabs''title' => 'MyTabs''link' => "index.php?module=forum-mytabs");
    }
    
    function 
mytabs_action_handler(&$action)
    {
        
$action['mytabs'] = array('active' => 'mytabs''file' => 'mytabs.php');
    }

?>
صفحه‌ها: 1 2