Simple Portal

Customization => Blocks and Modifications => Topic started by: Kryzen on June 10, 2012, 05:30:26 AM

Title: Youtube Block - 1.0
Post by: Kryzen on June 10, 2012, 05:30:26 AM
Youtube Block
v1.0

This block allows you to show a Youtube video within a block. I couldn't find an existing block that does this, so I decided to create one myself. The current version is 1.0 and I hope to release v1.1 soon.

Installing is very simple. Just create a new PHP code block and use this code:
Code: [Select]
/**
 * Youtube Block
 *
 * Written for: Simple Portal
 * Written by: Dr. Deejay
 * Compatible with: Simple Portal 2.3
 * Version: 1.0
 *
 * When using this block, you agree that you will,
 * not redistribute this block, with or without any
 * changes. This code may not be used as a base for
 * another software and should not be used for illegal
 * purposes.
*/

$youtube = array();

/**
 * Settings
*/
// The id of the video
$youtube['id'] = 't5AqJww06bw';

// Text to show below the video. Leave empty to disable
$youtube['label'] = 'My video';

// The size of the Youtube block. 1 is the smallest, 3 is the biggest
$youtube['size'] = 1;

/**
 * The Youtube video display block
*/
if(!function_exists('sp_youtube')) {

/**
* The function doesn't exist yet. Create it.
*/
function sp_youtube($vid = '', $label = '', $size = '')
{
// Don't allow html stuff
$vid = htmlspecialchars($vid);

// Check if it is empty. If it is, it's invalid
if(empty($vid))
echo '
<div class="smalltext">Video not found.</div>';

// Let's see what we can do.
else {

// Echo the thing.
echo '
<div class="centertext">
<iframe ' . $size . ' src="http://www.youtube.com/embed/' . $vid . '" frameborder="0" allowfullscreen></iframe>';

// Show a label?
if(!empty($label))
echo '
<br /><div class="smalltext">' . $label . '</div>';

echo '
</div>';
}
}
}

// Generate the height and width
if($youtube['size'] == 1)
$vidsize = 'width="150" height="100"';
elseif($youtube['size'] == 2)
$vidsize = 'width="300" height="200"';
elseif($youtube['size'] == 3)
$vidsize = 'width="1280" height="720"';
else
$vidsize = 'width="150" height="100"';

// Call the function
sp_youtube($youtube['id'], $youtube['label'], $vidsize);

Enjoy!
Dr. Deejay
Title: Re: Youtube Block - 1.0
Post by: KnightRaider on June 10, 2012, 06:11:36 AM
Thanks you very much dr. deejay, I wish i had waited for this lol :P.
Title: Re: Youtube Block - 1.0
Post by: Kryzen on June 10, 2012, 06:27:02 AM
You're welcome, glad you like it :)
Title: Re: Youtube Block - 1.0
Post by: ricland on June 10, 2012, 08:15:05 AM
Brilliantly done.

Works so seamlessly.
Title: Re: Youtube Block - 1.0
Post by: Kryzen on June 10, 2012, 08:58:05 AM
Thanks :)
Title: Re: Youtube Block - 1.0
Post by: Old Fossil on June 10, 2012, 11:56:05 AM
Hey are you trying to make Underdog redundant?

 :0
Title: Re: Youtube Block - 1.0
Post by: andy on June 10, 2012, 12:31:56 PM
Nice idea for a block to make it simple for people.
Title: Re: Youtube Block - 1.0
Post by: Kryzen on June 10, 2012, 01:22:57 PM
Thanks :)

Quote
Hey are you trying to make Underdog redundant?
Lol :P
Title: Re: Youtube Block - 1.0
Post by: Xarwin on June 11, 2012, 05:37:05 PM
Looks really useful.
I might use it soon on my website :).
Title: Re: Youtube Block - 1.0
Post by: Kryzen on June 11, 2012, 05:39:04 PM
Thanks Xarwin :)
Title: Re: Youtube Block - 1.0
Post by: Old Fossil on June 16, 2012, 02:35:17 AM
Just had a thought ( scary I know).

Is there a way you can make this pop out in a similar way as the Aeva media mod?
Title: Re: Youtube Block - 1.0
Post by: Kryzen on June 16, 2012, 04:34:49 AM
Not sure what you mean, do you have a screenshot of what you mean? :)
Title: Re: Youtube Block - 1.0
Post by: Old Fossil on June 16, 2012, 04:37:00 AM
This time of morning I should be in bed lol

Basically when you click on an aeva image (hosted via the gallery) the block enlargens.

Title: Re: Youtube Block - 1.0
Post by: Kryzen on June 16, 2012, 04:49:34 AM
Ah, I understand. :) It would require Highslide4SMF installed, but I do think it would be possible. :P I'll do this within a few days, please remind me if I don't. :)
Title: Re: Youtube Block - 1.0
Post by: Old Fossil on June 16, 2012, 11:45:00 AM
I'll chase ya with me frying pan.

 ;D
Title: Re: Youtube Block - 1.0
Post by: Lolafish on June 25, 2012, 05:33:28 PM
Okay forgive me because I haven't gone over the code with a fine tooth comb yet....I love it by the way and am going to try it!  Is there a way to input a YOUTUBE channel somehow and have it bring up a random vid from the channel whenever someone visits the page?  I hope that makes sense.
Title: Re: Youtube Block - 1.0
Post by: wazza on July 20, 2012, 11:01:41 PM
works great! love it  :thumbsup:
Title: Re: Youtube Block - 1.0
Post by: boo2 on September 03, 2012, 06:20:52 PM
I did this but got this error displayed in the box:

Parse error: syntax error, unexpected T_VARIABLE in Sources/PortalBlocks.php(3538) : eval()'d code on line 17

smf 2.0.2 and simpleportal current version
Title: Re: Youtube Block - 1.0
Post by: Kryzen on October 01, 2012, 09:31:25 AM
@Old Fossil: I'm sorry for the late reply, but I couldn't get it to work. :(

@Lolafish: I don't know if Youtube has an api for that, but I could try. Thanks for the suggestion. :)

@Wazza: Thank you, I'm glad you like it. :)

@Boo2: Could you please post the exact code you're using?
Title: Re: Youtube Block - 1.0
Post by: Old Fossil on October 01, 2012, 04:18:18 PM
@Old Fossil: I'm sorry for the late reply, but I couldn't get it to work. :(


No problem kiddo.

 ;)
Title: Re: Youtube Block - 1.0
Post by: weerforum on December 27, 2012, 06:26:25 PM
Probleem met IE ?
Ik zie dat het met Firefox prima werkt, maar met IE niet.

Staat onder weerfilmpjes http://weerforum.eu/index.php

Title: Re: Youtube Block - 1.0
Post by: Kryzen on December 28, 2012, 04:42:11 AM
Welke IE gebruik je? Ik krijg hier namelijk zelf in IE7 een melding dat er ondersteuning voor HTML5 mist. =/
Title: Re: Youtube Block - 1.0
Post by: weerforum on December 28, 2012, 05:00:19 AM
IE 9 gebruik ik om te kunnen zien of alles ook werkt onder een brakke browser  :D
Title: Re: Youtube Block - 1.0
Post by: MESSIAH on June 23, 2013, 01:46:46 PM
How to get thumbnails from youtube? Here is example
Code: [Select]
<media:thumbnail url='http://img.youtube.com/vi/ZTUVgYoeN_b/1.jpg'
        height='90' width='120' time='00:00:01.750'/>
Title: Re: Youtube Block - 1.0
Post by: kingkingston on October 21, 2013, 06:50:06 PM
would be awesome, if you could somehow set it to show the latest youtube clip that has been posted on your forum
Title: Re: Youtube Block - 1.0
Post by: USFA on April 03, 2014, 12:08:36 AM
I feel silly the block works great, how do I change it to the Youtube video I want ?

Title: Re: Youtube Block - 1.0
Post by: USFA on April 11, 2014, 11:50:19 PM
Never mind found the solution
Title: Re: Youtube Block - 1.0
Post by: cy8erpunk on April 23, 2014, 08:24:00 PM
i know this is an old thread, but i can't seem to locate an answer, can you somehow help me out i was looking at your coding and i was wondering if there was a way to make the code automatically pull the newest uploaded video on a youtube channel?
Title: Re: Youtube Block - 1.0
Post by: USFA on April 24, 2014, 02:20:58 AM
I think there is something Facebook uses.
Have not heard of a code. It would have to be an RSS or XML of some kind.

All I could find was this:
To access your YouTube RSS feed you need to replace YOURCHANNELNAME is the following URL:

http://www.youtube.com/rss/user/YOURCHANNELNAME/videos.rss

And to show you how it is formatted you can look at the VDO.me YouTube channel (work in progress!):

YouTube Channel RSS

As you can see it includes your titles, descriptions, ratings, upload date, views count & video time length. It doesn’t however include your Video keywords, so this is another reason why it is important to put keywords within the video description.

Now that you know your YouTube RSS feed URL you can submit it to RSS Feed Aggregators either manually or via your chosen software.

This might work using a RSS block for the video .

I'm going to test it and update this posts.
Title: Re: Youtube Block - 1.0
Post by: USFA on April 24, 2014, 02:38:51 AM
Ok I am kinda getting this to work I used RSS Feed Poster by SMFhack is a mod at SMF it allowed me to set up RSS video feed in the forum.
I tried the RSS block and it gave and error for some reason the block wont process it correctly.
I find the RSS block very buggy and does not accept all RSS's

However you can setup a block and show the board you are updating the videos and that would be a work around for you.
In other words the block would show the youtube update board and posts.

Remember : go where the youtube channel is, not the video or it wont work.

Good luck.