Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.0 > vBulletin 3.0 Full Releases

Reply
 
Thread Tools
Playing Flash and Media Files Inline Details »»
Playing Flash and Media Files Inline
Version: 1.00, by Moya Moya is offline
Developer Last Online: Aug 2009 Show Printable Version Email this Page

Version: 3.0.9 Rating:
Released: 03-16-2005 Last Update: 03-16-2005 Installs: 21
 
No support by the author.

Is it possible? Is there any security issue? I am thinking of releasing this hack, but I am not sure about the demands and security issue on this.

History:

Originally, I have window media files played directly (inline) in phpbb. When I moved to vb, I tried to seek help from vb.com to modify their attachment system without success. I understand that Vb's attachment system for security purpose. Therefore, I have to find other means to achieve what I want. I come up with this hack when my board is at its infancy stage. It probably still is infancy because, it is used as a test and fun board when I am at work .


Requirement:

This hack might not work on all system due to different configuration, platform, and such. I will try to help you all as much as I can.

This hack will use your board attachment system to run mp3, wma, wmv, flash files. It is a bit server intensive. So be warned


Security Risk:

It has been known that flash files can be used to exploit and compromise certain securities on user computer. You might want to verify your flash attachment before enable flash playing inline on your forum.

Enut with the blah blah ??

Open your functions_showthread.php

Find

PHP Code:
function construct_postbit($post$maintemplatename 'postbit'$alternate '')

Add under

PHP Code:
// flash attachment
    
global $flashid,$flashfilename,$flashextension,$flashfilenameandlocation,$flashfilesize;

// wma attachment
    
global $wmaid,$wmafilename,$wmaextension,$wmafilenameandlocation,$wmafilesize;
    
// wmv attachment
    
global $wmvid,$wmvfilename,$wmvextension,$wmvfilenameandlocation,$wmvfilesize;    
    
// mp3 attachment
    
global $mp3id,$mp3filename,$mp3extension,$mp3filenameandlocation,$mp3filesize;
//default media tag
    
$media_controller"$vboptions[bburl]/attachment.php?attachmentid="

Find

PHP Code:
$attachment['filename'] = fetch_censored_text(htmlspecialchars_uni($attachment['filename']));
            
$attachment['attachmentextension'] = strtolower(file_extension($attachment['filename']));
            
$attachment['filesize'] = vb_number_format($attachment['filesize'], 1true); 

Add Under

PHP Code:
//flash attachment
            
$flashfilename=$attachment['filename'];                            
            
$flashextension=$attachment['attachmentextension'];                            
            
$flashfilesize=$attachment['filesize'];                            
            
$flashid=$post['userid'];                            
            
$flashfilenameandlocation=$media_controller $attachmentid  ;
            
//wma attachment
            
$wmaid=$post['userid'];
            
$wmafilename=$attachment['filename'];
            
$wmaextension=$attachment['attachmentextension'];                                        
            
$wmafilenameandlocation=$media_controller $attachmentid  ;            
            
$wmafilesize=$attachment['filesize'];            
            
//wmv attachment
            
$wmvid=$post['userid'];
            
$wmvfilename=$attachment['filename'];
            
$wmvextension=$attachment['attachmentextension'];                            
            
$wmvfilenameandlocation=$media_controller $attachmentid  ;            
            
$wmvfilesize=$attachment['filesize'];            
            
//wmv attachment
            
$mp3id=$post['userid'];
            
$mp3filename=$attachment['filename'];
            
$mp3extension=$attachment['attachmentextension'];
            
$mp3filenameandlocation=$media_controller $attachmentid  ;
            
$mp3filesize=$attachment['filesize']; 

Find

PHP Code:

eval('$post[\'imageattachmentlinks\'] .= "' fetch_template('postbit_attachment') . '";');
                            
$show['imageattachmentlink'] = true;
                        }
                        break; 

Add Under

PHP Code:

case 'swf':
                        eval(
'$post[\'flashattachments\'] .= "' fetch_template('postbit_attachmentflash') . '";');                        
                        
$show['flashattachment'] = true;                        
                    break;    
                    
                    case 
'wma':
                        eval(
'$post[\'wmaattachments\'] .= "' fetch_template('postbit_attachmentwma') . '";');                        
                        
$show['wmaattachment'] = true;                        
                    break;    
                    
                    case 
'wmv':
                        eval(
'$post[\'wmvattachments\'] .= "' fetch_template('postbit_attachmentwmv') . '";');                        
                        
$show['wmvattachment'] = true;                        
                    break;    
                    
                    case 
'mp3':
                        eval(
'$post[\'mp3attachments\'] .= "' fetch_template('postbit_attachmentmp3') . '";');                        
                        
$show['mp3attachment'] = true;                        
                    break; 
GLOBAL Phrases:

Var: attach_wmv
Text: Window Media Video

Var: attach_mp3
Text: MPEG-1 layer 3 Audio Encoding :

Var: attached_flash
Text: Attached Flash File:

Var :attach_wma
Text : Window Media Audio :

Templates:

Go to your Postbit template

Find

Code:
					$post[imageattachments]
					</div>
				</fieldset>
			</if>

Add Under

Code:
<if condition="$show[flashattachment]">
<fieldset class="fieldset">
<legend>$vbphrase[attached_flash] $flashfilename </legend>

<div style="padding:$stylevar[formspacer]px">
$post[flashattachments]
</div>
</fieldset>

</if>



<if condition="$show[wmaattachment]">
<fieldset class="fieldset">
<legend>$vbphrase[attach_wma] $wmafilename</legend>

<div style="padding:$stylevar[formspacer]px">
$post[wmaattachments]
</div>
</fieldset>

</if>

<if condition="$show[wmvattachment]">
<fieldset class="fieldset">
<legend>$vbphrase[attach_wmv] $wmvfilename</legend>

<div style="padding:$stylevar[formspacer]px">
$post[wmvattachments]



</div>
</fieldset>

</if>
	
<if condition="$show[mp3attachment]">
<fieldset class="fieldset">
<legend>

$vbphrase[attach_mp3] $mp3filename</legend>

<div style="padding:$stylevar[formspacer]px">
$post[mp3attachments]

</div>
</fieldset>

</if>


Go to your board admin and add the templates under postbits.


The included templates file uses the existing templates on my board. Feel free to modified.


If you need help drop a line here or at www.aotrangmongmo.com

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #82  
Old 03-08-2006, 06:14 PM
Ski-Whiz's Avatar
Ski-Whiz Ski-Whiz is offline
 
Join Date: May 2003
Posts: 214
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nevermind.. Not sure how the search missed it, but I see it for 3.5...
Reply With Quote
  #83  
Old 03-12-2006, 10:05 AM
Floris Floris is offline
 
Join Date: Jan 2002
Posts: 1,898
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Ski-Whiz
Nevermind.. Not sure how the search missed it, but I see it for 3.5...
I don't link me up scotty
Reply With Quote
  #84  
Old 05-17-2006, 05:40 PM
Lionel Lionel is offline
 
Join Date: Dec 2001
Location: Delray Beach, Florida
Posts: 3,277
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

for security concerns, in 3.07 in includes/functions_file.php i created a front end error page
nopermissionswf
you don't have permissions to upload flash files and after

PHP Code:
 if (!$attachtypes["$extension"] OR !$attachtypes["$extension"]['enabled'])
 {
  
// invalid extension
  
eval('$error = "' fetch_phrase('attachbadtype'PHRASETYPEID_ERROR) . '";');
  
$errors[] = array(
   
'filename' => $attachment_name,
   
'error' => $error
  
);
  return 
false
I placed (replace 4,1 with your userid allowed)

PHP Code:
if ($extension=='swf'){
if (!
in_array($bbuserinfo[userid], array(4,1))){
  
// invalid extension
  
eval('$error = "' fetch_phrase('nopermissionswf'PHRASETYPEID_ERROR) . '";');
  
$errors[] = array(
   
'filename' => $attachment_name,
   
'error' => $error
  
);
  return 
false;
}

That allows only certain users to upload flash files.

Thanks for a great hack. Example of usage
Reply With Quote
  #85  
Old 06-14-2006, 07:31 PM
Andromeda2875 Andromeda2875 is offline
 
Join Date: Jun 2006
Posts: 62
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Any reason why we can not just do the same thing with html allowed using dynasrc?
Reply With Quote
  #86  
Old 07-12-2006, 05:32 PM
konstance's Avatar
konstance konstance is offline
 
Join Date: Dec 2002
Location: oklahoma
Posts: 40
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I am only getting the thumbnail image of flash files. I am not getting any other file displayed.
Can I upload 3 video files in a single post?
Reply With Quote
  #87  
Old 09-16-2006, 12:03 PM
darkie79 darkie79 is offline
 
Join Date: Sep 2006
Posts: 36
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Has anyone confirmed this to work with 3.61?
Reply With Quote
Reply

Thread Tools

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 10:31 AM.


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.09712 seconds
  • Memory Usage 2,322KB
  • Queries Executed 21 (?)
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
  • (2)bbcode_code
  • (8)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (7)post_thanks_box
  • (7)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (7)post_thanks_postbit_info
  • (6)postbit
  • (7)postbit_onlinestatus
  • (7)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