vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   Modification Graveyard (https://vborg.vbsupport.ru/forumdisplay.php?f=224)
-   -   User rights for Smilies (https://vborg.vbsupport.ru/showthread.php?t=97209)

leonsio 09-29-2005 10:00 PM

User rights for Smilies
 
what this hack do,
you can define rights for smilies, like posticons
for example you can give registerd users right zu access all smilies, unregistred or not loged user can use only default smilies


installation: easy

4 plugins ( 1 product )
4 file change


import the XML file, with product importer

in the misc.php

find ( on 2 positions !! )
Code:

        $smilies = $db->query_read("
                SELECT smilietext AS text, smiliepath AS path, smilie.title, smilieid,
                        imagecategory.title AS category
                FROM " . TABLE_PREFIX . "smilie AS smilie
                LEFT JOIN " . TABLE_PREFIX . "imagecategory AS imagecategory USING(imagecategoryid)
                ORDER BY imagecategory.displayorder, imagecategory.title, smilie.displayorder
        ");

replace

Code:

// Smilies for Usergroups Hack BEGIN

        $smilies = $db->query_read("
                SELECT smilietext AS text, smiliepath AS path, smilie.title, smilieid,
                        imagecategory.title AS category
                FROM " . TABLE_PREFIX . "smilie AS smilie
                LEFT JOIN " . TABLE_PREFIX . "imagecategory AS imagecategory USING(imagecategoryid)
                WHERE imagecategory.imagecategoryid NOT IN (0$badcategories)
                ORDER BY imagecategory.displayorder, imagecategory.title, smilie.displayorder
        ");

// Smilies for Usergroups Hack END


include/functions_editor.php

find

Code:

                        // query smilies
                        $smilies = $vbulletin->db->query_read("
                                SELECT smilieid, smilietext, smiliepath, smilie.title,
                                        imagecategory.title AS category
                                FROM " . TABLE_PREFIX . "smilie AS smilie
                                LEFT JOIN " . TABLE_PREFIX . "imagecategory AS imagecategory USING(imagecategoryid)
                                ORDER BY imagecategory.displayorder, imagecategory.title, smilie.displayorder
                        ")

replace

Code:

// Smilies for Usergroups Hack BEGIN

                        // query smilies
                        $smilies = $vbulletin->db->query_read("
                                SELECT smilieid, smilietext, smiliepath, smilie.title,
                                        imagecategory.title AS category
                                FROM " . TABLE_PREFIX . "smilie AS smilie
                                LEFT JOIN " . TABLE_PREFIX . "imagecategory AS imagecategory USING(imagecategoryid)
                                WHERE imagecategory.imagecategoryid NOT IN (0$badcategories)
                                ORDER BY imagecategory.displayorder, imagecategory.title, smilie.displayorder
                        ");

// Smilies for Usergroups Hack END


includes/class_bbcode.php

find

Code:

                        $smilies = $this->registry->db->query_read("
                                SELECT *, LENGTH(smilietext) AS smilielen
                                FROM " . TABLE_PREFIX . "smilie
                                ORDER BY smilielen DESC
                        ");


replace

Code:

// Smilies for Usergroups Hack BEGIN

                        $badcategories= construct_smilies();

                        $smilies = $this->registry->db->query_read("
                                SELECT *, LENGTH(smilie.smilietext) AS smilielen
                                FROM " . TABLE_PREFIX . "smilie AS smilie
                                LEFT JOIN " . TABLE_PREFIX . "imagecategory AS imagecategory USING(imagecategoryid)
                                WHERE imagecategory.imagecategoryid NOT IN (0$badcategories)
                                ORDER BY smilielen DESC
                        "); 

// Smilies for Usergroups Hack END



admincp/image.php

find ( on 2 positions )

Code:

print_stop_message('smilie_categories_dont_support_permissions');
replace

Code:

#print_stop_message('smilie_categories_dont_support_permissions');
find

Code:

                                iif($category['imagetype'] != 3,
                                        construct_link_code(
                                                $vbphrase["{$itemtype}_permissions"], "image.php?"
                                                . $vbulletin->session->vars['sessionurl']
                                                . "do=editpermissions"
                                                . "&table=" . $vbulletin->GPC['table']
                                                . "&imagecategoryid=" . $category['imagecategoryid']
                                        )
                                    , ''
                                );

replace

Code:

                                #iif($category['imagetype'] != 3,
                                        construct_link_code(
                                                $vbphrase["{$itemtype}_permissions"], "image.php?"
                                                . $vbulletin->session->vars['sessionurl']
                                                . "do=editpermissions"
                                                . "&table=" . $vbulletin->GPC['table']
                                                . "&imagecategoryid=" . $category['imagecategoryid']
                                        )
                                ;#      , ''
                                #);


done


dont forget, VB 3.5 has post cache, this modification works for new posts or posts which are not in the cache

theArchitect 09-30-2005 10:17 AM

Nice idea. I am all for adding little extras for special members.

Though, is it possible to accomplish these file edits via another plug-in or similar?

Cyricx 09-30-2005 10:56 AM

If they type the replace code for the smilies won't it still parse though?

leonsio 09-30-2005 12:07 PM

i dont found other places for changes which has hooks :/

but you can deaktivate this hack in admincp
and you will see all smilies ;)

Daniel 09-30-2005 10:10 PM

PM me when you have a plugin for it :)


All times are GMT. The time now is 07:02 AM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01032 seconds
  • Memory Usage 1,743KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (10)bbcode_code_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (5)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete