Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions

Reply
 
Thread Tools Display Modes
  #11  
Old 01-20-2009, 02:24 AM
Jaxel Jaxel is offline
 
Join Date: Sep 2005
Posts: 1,160
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hmm... Dismounted, thanks for the help... I didn't see your new post till now...

I got this working a few days ago, and this is the code I am using:

PHP Code:
if ($vbulletin->options['videodirectory_bbcode'])
{
    
// [VIDEO] [VIDEO=XXX]
    
$tag_list['no_option']['video'] = array(
        
'callback' => 'handle_external',
        
'strip_empty' => true,
        
'stop_parse' => true,
        
'disable_smilies' => true,
        
'disable_wordwrap' => true,
        
'strip_space_after' => 0,
        
'external_callback' => 'handle_bbcode_video'
    
);
    
$tag_list['option']['video'] = array(
        
'callback' => 'handle_external',
        
'strip_empty' => true,
        
'stop_parse' => true,
        
'disable_smilies' => true,
        
'disable_wordwrap' => true,
        
'strip_space_after' => 0,
        
'external_callback' => 'handle_bbcode_video'
    
);
}

function 
handle_bbcode_video(&$parser$videoid$videotitle)
{
    global 
$vbulletin$stylevar;

    if (!
$video $vbulletin->db->query_first("SELECT video.* 
        FROM " 
TABLE_PREFIX "video AS video WHERE videoid = '" $videoid "'"))
    {
        
$video['error'] = 'THIS VIDEO DOES NOT EXIST';
        eval(
'$HTMLembed = "' fetch_template('video_bbcode') . '";');
        return 
$HTMLembed;
    }

    require_once(
DIR '/includes/functions_videodirectory.php');
    require_once(
DIR '/includes/class_videosharingservice.php');
    require_once(
DIR '/includes/videoserviceapi/class_' strtolower($video['videoservice']) . '.php');

    
$classname "vB_VideoSharingService_$video[videoservice]";
    
$obj = new $classname($vbulletin);

    
$showful $vbulletin->options['videodirectory_showful'];
    
$showrel $vbulletin->options['videodirectory_showrel'];
    
$showsta $vbulletin->options['videodirectory_showsta'];

    
$video['embed'] = $obj->fetch_embedcode($video['videoidservice'], false$showful$showrel$showsta);
    
$video['url'] = construct_video_url($video);
    if (empty(
$videotitle)) { $videotitle $video['title']; }

    eval(
'$HTMLembed = "' fetch_template('video_bbcode') . '";');
    return 
$HTMLembed;

Do you mind looking it over so see if I am doing anything wrong? I'm doing this all in a SINGLE plugin; is that wrong?
Reply With Quote
  #12  
Old 01-20-2009, 03:22 AM
Dismounted's Avatar
Dismounted Dismounted is offline
 
Join Date: Jun 2005
Location: Melbourne, Australia
Posts: 15,047
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Jaxel View Post
Do you mind looking it over so see if I am doing anything wrong?
I guess it will work, but look out for phrases in templates you're evaluating (they won't currently work with the code you're using).
Quote:
Originally Posted by Jaxel View Post
I'm doing this all in a SINGLE plugin; is that wrong?
Ideally, you should have most/all your plugin code in files, but this is only for performance reasons.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 06:25 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03582 seconds
  • Memory Usage 2,188KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)bbcode_php
  • (2)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (1)pagenav_pagelink
  • (2)post_thanks_box
  • (2)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (2)post_thanks_postbit_info
  • (2)postbit
  • (2)postbit_onlinestatus
  • (2)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.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/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.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
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete