Go Back   vb.org Archive > vBulletin 4 Discussion > vB4 Programming Discussions
  #1  
Old 09-28-2011, 06:03 AM
Quispy Quispy is offline
 
Join Date: Feb 2010
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default ?-Custom BBCode - Grooveshark

I would like to add a custom bbcode so I can allow members to add a Grooveshark.com widget playlist or single song widget into their posts.

The Grooveshark website allows users to make playlists or just a single song to share with others.
It has an option for a widget and provides the code as such.

This code is for the "playlist" (playlist widget).
Code:
<object width="250" height="250"><param name="movie" value="http://grooveshark.com/widget.swf" /><param name="wmode" value="window" /><param name="allowScriptAccess" value="always" /><param name="flashvars" value="hostname=cowbell.grooveshark.com&playlistID=43104863&bbg=000000&bth=000000&pfg=000000&lfg=000000&bt=FFFFFF&pbg=FFFFFF&pfgh=FFFFFF&si=FFFFFF&lbg=FFFFFF&lfgh=FFFFFF&sb=FFFFFF&bfg=666666&pbgh=666666&lbgh=666666&sbh=666666&p=0" /><embed src="http://grooveshark.com/widget.swf" type="application/x-shockwave-flash" width="250" height="250" flashvars="hostname=cowbell.grooveshark.com&playlistID=43104863&bbg=000000&bth=000000&pfg=000000&lfg=000000&bt=FFFFFF&pbg=FFFFFF&pfgh=FFFFFF&si=FFFFFF&lbg=FFFFFF&lfgh=FFFFFF&sb=FFFFFF&bfg=666666&pbgh=666666&lbgh=666666&sbh=666666&p=0" allowScriptAccess="always" wmode="window" /></object>

On a different website (different CMS) I was able to do this with a custom bbcode, and it looked like this.
Code:
<object width="{NUMBER1}" height="{NUMBER2}"> <param name="movie" value="http://listen.grooveshark.com/widget.swf" /> <param name="wmode" value="window" /> <param name="allowScriptAccess" value="always" /> <param name="flashvars" value="hostname=cowbell.grooveshark.com&widgetID={IDENTIFIER}&style={SIMPLETEXT1}&bbg={SIMPLETEXT2}&bfg={SIMPLETEXT4}&bt={SIMPLETEXT3}&bth={SIMPLETEXT2}&pbg={SIMPLETEXT3}&pbgh={SIMPLETEXT4}&pfg={SIMPLETEXT2}&pfgh={SIMPLETEXT3}&si={SIMPLETEXT3}&lbg={SIMPLETEXT3}&lbgh={SIMPLETEXT4}&lfg={SIMPLETEXT2}&lfgh={SIMPLETEXT3}&sb={SIMPLETEXT3}&sbh={SIMPLETEXT4}&p=0" /> <embed src="http://listen.grooveshark.com/widget.swf" type="application/x-shockwave-flash" width="{NUMBER1}" height="{NUMBER2}" flashvars="hostname=cowbell.grooveshark.com&widgetID={IDENTIFIER}&style={SIMPLETEXT1}&bbg={SIMPLETEXT2}&bfg={SIMPLETEXT4}&bt={SIMPLETEXT3}&bth={SIMPLETEXT2}&pbg={SIMPLETEXT3}&pbgh={SIMPLETEXT4}&pfg={SIMPLETEXT2}&pfgh={SIMPLETEXT3}&si={SIMPLETEXT3}&lbg={SIMPLETEXT3}&lbgh={SIMPLETEXT4}&lfg={SIMPLETEXT2}&lfgh={SIMPLETEXT3}&sb={SIMPLETEXT3}&sbh={SIMPLETEXT4}&p=0" allowScriptAccess="always" wmode="window" /></object>

And this code is for the "single" (single song widget).
Code:
<object width="250" height="40"><param name="movie" value="http://grooveshark.com/songWidget.swf" /><param name="wmode" value="window" /><param name="allowScriptAccess" value="always" /><param name="flashvars" value="hostname=cowbell.grooveshark.com&songIDs=28185324&style=metal&p=0" /><embed src="http://grooveshark.com/songWidget.swf" type="application/x-shockwave-flash" width="250" height="40" flashvars="hostname=cowbell.grooveshark.com&songIDs=28185324&style=metal&p=0" allowScriptAccess="always" wmode="window" /></object>

and for the single song custom bbcode looked like this.
Code:
<object width="{NUMBER1}" height="{NUMBER2}"> <param name="movie" value="http://listen.grooveshark.com/songWidget.swf" /> <param name="wmode" value="window" /> <param name="allowScriptAccess" value="always" /> <param name="flashvars" value="hostname=cowbell.grooveshark.com&widgetID={IDENTIFIER}&style={SIMPLETEXT}&p=0" /> <embed src="http://listen.grooveshark.com/songWidget.swf" type="application/x-shockwave-flash" width="{NUMBER1}" height="{NUMBER2}" flashvars="hostname=cowbell.grooveshark.com&widgetID={IDENTIFIER}&style={SIMPLETEXT}&p=0" allowScriptAccess="always" wmode="window" /></object>

But with VB I only see 2 options "param" & "option".

Anyone have an idea how to accomplish or if it is even possible in VB? Thanks.
Reply With Quote
  #2  
Old 09-28-2011, 09:06 AM
Mooff Mooff is offline
 
Join Date: Mar 2010
Posts: 301
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

yes, it is possible - not sure if you can use the bb-code manager for it though.

I'm currently writing a bbcode with multiple options via the plugin system right now.
(it's a gallery code )

hook: bbcode_create
Code:
if (!function_exists('handle_bbcode_gallery'))
{
    function handle_bbcode_gallery(&$parser, $code, $option='')
    { 
.... do stuff....
option could be something like [gallery="a=...;b=....;c=....;"]some bla[/gallery]
so $option would be a string "a=...;b=...;c=...;" which you can manipulate via php to split it up in the 3 options a,b,c and in the $code variable you have the string "some bla"
.... end do php stuff...
return $output_string;

    }
}

$this->tag_list['option']['gallery'] = array(
	'callback' => 'handle_external',
	'strip_empty' => true,
	'stop_parse' => false,
	'disable_smilies' => true,
	'disable_wordwrap' => true,
	'strip_space_after' => 1,
	'external_callback' => 'handle_bbcode_gallery'
);
Reply With Quote
  #3  
Old 09-28-2011, 09:57 PM
Quispy Quispy is offline
 
Join Date: Feb 2010
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for the idea, I was hoping there would be an better/easier solution, kinda like how I was able to do it with the different CMS.

This video was useless.
Reply With Quote
  #4  
Old 09-28-2011, 11:40 PM
Gemma's Avatar
Gemma Gemma is offline
 
Join Date: Apr 2004
Location: Scotland
Posts: 1,229
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Making the widgets into bbcodes is easy enough but I don't think you can add parameters for changing the colour/dimensions etc - your best bet would be to ask BBCode Guru - BirdOPrey5

Using the widget maker from Grooveshark you can set the dimensions and colour to suit yourself and then just add the {param} after playlistID=

You can make a Playlist BBcode

Title - Grooveshark Playlist
BB Code Tag Name - groove
Replacement -
Code:
<object width="250" height="400"><param name="movie" value="http://grooveshark.com/widget.swf" /><param name="wmode" value="window" /><param name="allowScriptAccess" value="always" /><param name="flashvars" value="hostname=cowbell.grooveshark.com&playlistID={param}&bbg=FFFFFF&bth=FFFFFF&pfg=FFFFFF&lfg=FFFFFF&bt=7A7A7A&pbg=7A7A7A&pfgh=7A7A7A&si=7A7A7A&lbg=7A7A7A&lfgh=7A7A7A&sb=7A7A7A&bfg=D6D6D6&pbgh=D6D6D6&lbgh=D6D6D6&sbh=D6D6D6&p=0" /><embed src="http://grooveshark.com/widget.swf" type="application/x-shockwave-flash" width="250" height="400" flashvars="hostname=cowbell.grooveshark.com&playlistID={param}&bbg=FFFFFF&bth=FFFFFF&pfg=FFFFFF&lfg=FFFFFF&bt=7A7A7A&pbg=7A7A7A&pfgh=7A7A7A&si=7A7A7A&lbg=7A7A7A&lfgh=7A7A7A&sb=7A7A7A&bfg=D6D6D6&pbgh=D6D6D6&lbgh=D6D6D6&sbh=D6D6D6&p=0" allowScriptAccess="always" wmode="window" /></object>
Example - [Groove]The Numbers From The Playlist Url[/Groove]

To make an individual song bbcode

Title - Grooveshark Single Song
BB Code Tag Name - groovesong
Replacement -
Code:
<object width="250" height="40"><param name="movie" value="http://grooveshark.com/songWidget.swf" /><param name="wmode" value="window" /><param name="allowScriptAccess" value="always" /><param name="flashvars" value="hostname=cowbell.grooveshark.com&songIDs={param}&style=metal&p=0" /><embed src="http://grooveshark.com/songWidget.swf" type="application/x-shockwave-flash" width="250" height="40" flashvars="hostname=cowbell.grooveshark.com&songIDs={param}&style=metal&p=0" allowScriptAccess="always" wmode="window" /></object>
Example - [groovesong]29760236[/groovesong]

Example of how it looks (themed to my site colours) - http://www.forumbanter.com/test-area....html#post3073

You might already know all this though
Reply With Quote
  #5  
Old 09-29-2011, 12:33 AM
Quispy Quispy is offline
 
Join Date: Feb 2010
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks Gemma, my only fear was that users are stupid and won't understand even with directions, but it will work for now. Thanks again.
Reply With Quote
  #6  
Old 10-16-2012, 07:30 PM
Narabedla Narabedla is offline
 
Join Date: Oct 2012
Posts: 12
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I can not run the bbcode php come from, where I used normally, and
[groove] [/ groove]
that
[groovepl] [/ groovepl]

Can you help me get it to work even on vbulletin?
thanks
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 01:19 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.04694 seconds
  • Memory Usage 2,214KB
  • 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
  • (7)bbcode_code
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (6)post_thanks_box
  • (6)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (6)post_thanks_postbit_info
  • (6)postbit
  • (6)postbit_onlinestatus
  • (6)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
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete