web/wp-includes/default-embeds.php
author hurons@caf4f556-3d62-0410-8435-a86758001935
Tue, 02 Feb 2010 15:44:16 +0000
branchwordpress
changeset 132 4d4862461b8d
permissions -rw-r--r--
Update Wordpress 2.9.1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
132
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     1
<?php
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     2
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     3
/**
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     4
 * Default Embed Handlers
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     5
 *
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     6
 * @package WordPress
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     7
 * @subpackage Embeds
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     8
 */
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
     9
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    10
/**
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    11
 * The Google Video embed handler callback. Google Video does not support oEmbed.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    12
 *
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    13
 * @see WP_Embed::register_handler()
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    14
 * @see WP_Embed::shortcode()
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    15
 *
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    16
 * @param array $matches The regex matches from the provided regex when calling {@link wp_embed_register_handler()}.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    17
 * @param array $attr Embed attributes.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    18
 * @param string $url The original URL that was matched by the regex.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    19
 * @param array $rawattr The original unmodified attributes.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    20
 * @return string The embed HTML.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    21
 */
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    22
function wp_embed_handler_googlevideo( $matches, $attr, $url, $rawattr ) {
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    23
	// If the user supplied a fixed width AND height, use it
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    24
	if ( !empty($rawattr['width']) && !empty($rawattr['height']) ) {
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    25
		$width  = (int) $rawattr['width'];
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    26
		$height = (int) $rawattr['height'];
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    27
	} else {
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    28
		list( $width, $height ) = wp_expand_dimensions( 425, 344, $attr['width'], $attr['height'] );
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    29
	}
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    30
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    31
	return apply_filters( 'embed_googlevideo', '<embed type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docid=' . esc_attr($matches[2]) . '&amp;hl=en&amp;fs=true" style="width:' . esc_attr($width) . 'px;height:' . esc_attr($height) . 'px" allowFullScreen="true" allowScriptAccess="always"></embed>', $matches, $attr, $url, $rawattr );
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    32
}
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    33
wp_embed_register_handler( 'googlevideo', '#http://video\.google\.([A-Za-z.]{2,5})/videoplay\?docid=([\d-]+)(.*?)#i', 'wp_embed_handler_googlevideo' );
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    34
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    35
/**
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    36
 * The PollDaddy.com embed handler callback. PollDaddy does not support oEmbed, at least not yet.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    37
 *
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    38
 * @see WP_Embed::register_handler()
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    39
 * @see WP_Embed::shortcode()
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    40
 *
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    41
 * @param array $matches The regex matches from the provided regex when calling {@link wp_embed_register_handler()}.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    42
 * @param array $attr Embed attributes.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    43
 * @param string $url The original URL that was matched by the regex.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    44
 * @param array $rawattr The original unmodified attributes.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    45
 * @return string The embed HTML.
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    46
 */
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    47
function wp_embed_handler_polldaddy( $matches, $attr, $url, $rawattr ) {
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    48
	return apply_filters( 'embed_polldaddy', '<script type="text/javascript" charset="utf8" src="http://s3.polldaddy.com/p/' . esc_attr($matches[1]) . '"></script>', $matches, $attr, $url, $rawattr );
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    49
}
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    50
wp_embed_register_handler( 'polldaddy', '#http://answers.polldaddy.com/poll/(\d+)(.*?)#i', 'wp_embed_handler_polldaddy' );
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    51
4d4862461b8d Update Wordpress 2.9.1
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff changeset
    52
?>