<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://es.wikieducator.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
		<id>https://es.wikieducator.org/index.php?action=history&amp;feed=atom&amp;title=Widget%3AYouTube</id>
		<title>Widget:YouTube - Historial de revisiones</title>
		<link rel="self" type="application/atom+xml" href="https://es.wikieducator.org/index.php?action=history&amp;feed=atom&amp;title=Widget%3AYouTube"/>
		<link rel="alternate" type="text/html" href="https://es.wikieducator.org/index.php?title=Widget:YouTube&amp;action=history"/>
		<updated>2026-06-19T04:14:17Z</updated>
		<subtitle>Historial de revisiones para esta página en el wiki</subtitle>
		<generator>MediaWiki 1.23.14</generator>

	<entry>
		<id>https://es.wikieducator.org/index.php?title=Widget:YouTube&amp;diff=18002&amp;oldid=prev</id>
		<title>Lmorillas: Copia de http://wikieducator.org/Widget:YouTube</title>
		<link rel="alternate" type="text/html" href="https://es.wikieducator.org/index.php?title=Widget:YouTube&amp;diff=18002&amp;oldid=prev"/>
				<updated>2016-01-26T10:28:33Z</updated>
		
		<summary type="html">&lt;p&gt;Copia de http://wikieducator.org/Widget:YouTube&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;noinclude&amp;gt;crea un link a un vídeo de YouTube&lt;br /&gt;
== Parameters ==&lt;br /&gt;
;id:YouTube video id ''or'' a complete URL specifying an external video&lt;br /&gt;
;t:start time in seconds (default: 0, only applies to YouTube)&lt;br /&gt;
;width:width of player in px (default: 425)&lt;br /&gt;
;height:height of player in px (default: 355)&lt;br /&gt;
;title:string for title bar (default YouTube title)&lt;br /&gt;
;thumbnail:filename of static image (e.g. &amp;lt;code&amp;gt;File:Makorori hedgehog.jpg&amp;lt;/code&amp;gt;, default: YouTube thumbnail for CC-BY videos, black screen for other licenses or external videos)&lt;br /&gt;
;list:id of list of related videos (''optional'', only for YouTube)&lt;br /&gt;
;index:index in the list of related videos (''optional, only relevant if '''list''' parameter is set'')&lt;br /&gt;
;target:if non-blank, open in a new window&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&amp;lt;includeonly&amp;gt;&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;/*&amp;lt;![CDATA[*/&lt;br /&gt;
$(function() {&lt;br /&gt;
  function getFileThumbnail(filename, h, w, $this) {&lt;br /&gt;
    // canonicalize filename&lt;br /&gt;
    filename = 'File:' + filename.replace(/^((file)|(image)|(media)):/i, '');&lt;br /&gt;
    $.ajax({&lt;br /&gt;
      url: window.wgServer + '/api.php',&lt;br /&gt;
      type: 'POST',&lt;br /&gt;
      data: {&lt;br /&gt;
        action: 'query',&lt;br /&gt;
        format: 'json',&lt;br /&gt;
        titles: filename,&lt;br /&gt;
        prop: 'imageinfo',&lt;br /&gt;
        iiprop: 'url|size',&lt;br /&gt;
        iiurlheight: h,&lt;br /&gt;
        iiurlwidth: w&lt;br /&gt;
      },&lt;br /&gt;
      success: function(d) {&lt;br /&gt;
        var page, ii;&lt;br /&gt;
        if (d.query &amp;amp;&amp;amp; d.query.pages) {&lt;br /&gt;
          for (page in d.query.pages) {&lt;br /&gt;
            if (d.query.pages[page].imageinfo &amp;amp;&amp;amp; d.query.pages[page].imageinfo.length &amp;gt;= 1) {&lt;br /&gt;
              ii = d.query.pages[page].imageinfo[0];&lt;br /&gt;
              $this.find('img:first')&lt;br /&gt;
                .attr('src', ii.thumburl)&lt;br /&gt;
                .attr('width', ii.thumbwidth)&lt;br /&gt;
                .attr('height', ii.thumbheight)&lt;br /&gt;
                .css('left', (w-ii.thumbwidth)/2 + 'px')&lt;br /&gt;
                .css('top', (h-ii.thumbheight)/2 + 'px');&lt;br /&gt;
            }&lt;br /&gt;
          }&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    })&lt;br /&gt;
  }&lt;br /&gt;
  function getYouTubeInfo(id, filename, h, w, $this) {&lt;br /&gt;
    $.ajax({&lt;br /&gt;
      url: 'https://www.googleapis.com/youtube/v3/videos?id=' + id + '&amp;amp;key=AIzaSyAQtYcfsqifV0XF_tLADxUeyUdlgqY65Tg&amp;amp;part=snippet,status,contentDetails,player,statistics'&lt;br /&gt;
    }).done(function(d) {&lt;br /&gt;
      var $did, iw, ih, img, thumbnails = [];&lt;br /&gt;
      if (d &amp;amp;&amp;amp; d.items &amp;amp;&amp;amp; d.items.length === 1 &amp;amp;&amp;amp; d.items[0].status) {&lt;br /&gt;
        if (d.items[0].status.license === 'creativeCommon') {&lt;br /&gt;
          // find appropriate thumbnail&lt;br /&gt;
          if (d.items[0].snippet &amp;amp;&amp;amp; d.items[0].snippet.thumbnails) {&lt;br /&gt;
            $.each(d.items[0].snippet.thumbnails, function(i, v) {&lt;br /&gt;
              thumbnails.push([v.width, v.height, v.url]);&lt;br /&gt;
            });&lt;br /&gt;
            thumbnails.sort(function(a, b) {&lt;br /&gt;
              return b[0] - a[0];  // reverse sort&lt;br /&gt;
            });&lt;br /&gt;
            // find the smallest thumbnail that would completely cover us&lt;br /&gt;
            iw = thumbnails[0][0]; ih = thumbnails[0][1]; img = thumbnails[0][2];&lt;br /&gt;
            // see if we can use something smaller&lt;br /&gt;
            for (i = 0; i &amp;lt; thumbnails.length; i++) {&lt;br /&gt;
              if ((thumbnails[i][0] &amp;gt;= w) &amp;amp;&amp;amp; (thumbnails[i][1] &amp;gt;= h)) {&lt;br /&gt;
                iw = thumbnails[i][0]; ih = thumbnails[i][1]; img = thumbnails[i][2];&lt;br /&gt;
              } else {&lt;br /&gt;
                break;&lt;br /&gt;
              }&lt;br /&gt;
            }&lt;br /&gt;
            $did = $('div[data-ytid=&amp;quot;' + d.items[0].id + '&amp;quot;]');&lt;br /&gt;
            if (!filename) {&lt;br /&gt;
              $did.find('img:first').attr('src', img);&lt;br /&gt;
            }&lt;br /&gt;
            if (($did.find('.weYouTubeTitle').text().replace(/\s*/g, '') === '') &amp;amp;&amp;amp; d.items[0].snippet.title) {&lt;br /&gt;
              $did.find('.weYouTubeTitle').text(d.items[0].snippet.title);&lt;br /&gt;
            }&lt;br /&gt;
          }&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    });&lt;br /&gt;
  }&lt;br /&gt;
  $('.weYouTube').each(function() {&lt;br /&gt;
    var h, w, t, l,&lt;br /&gt;
        id = $.trim($(this).data('ytid')),&lt;br /&gt;
        isURL = /^https?:/i.test(id),&lt;br /&gt;
        img = $(this).data('img'),&lt;br /&gt;
        title = $(this).find('.weYouTubeTitle').text(),&lt;br /&gt;
        filename = $(this).data('thumbnail'),&lt;br /&gt;
        target = $(this).data('target');&lt;br /&gt;
    h = $(this).css('height').replace('px', '');&lt;br /&gt;
    w = $(this).css('width').replace('px', '');&lt;br /&gt;
    if (!isURL &amp;amp;&amp;amp; !img) {&lt;br /&gt;
      $(this).data('img', '#');  // mark as in flight&lt;br /&gt;
      // if we need title or YouTube thumbnail, hit GoogleAPI&lt;br /&gt;
      if (!filename || !title) {&lt;br /&gt;
        getYouTubeInfo(id, filename, h, w, $(this));&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    if (filename) {&lt;br /&gt;
      getFileThumbnail(filename, h, w, $(this));&lt;br /&gt;
    }&lt;br /&gt;
    // optionally cause clicking to open in a new window&lt;br /&gt;
    if (target !== '') {&lt;br /&gt;
      $(this).parent().attr('target', '_blank');&lt;br /&gt;
    }&lt;br /&gt;
    if (isURL) {&lt;br /&gt;
      $(this).parent().attr('href', id);&lt;br /&gt;
      $(this).find('.weYouTubePlay img').attr('src', '/extensions/WE/images/start_play.png');&lt;br /&gt;
   	  l = Math.round(w/2) - 20;&lt;br /&gt;
    } else {&lt;br /&gt;
	  l = Math.round(w/2) - 70;&lt;br /&gt;
    }&lt;br /&gt;
    // adjust position of start icon&lt;br /&gt;
    t = Math.round(h/2) - 30;&lt;br /&gt;
    $(this).find('.weYouTubePlay').css('top', t + 'px').css('left', l + 'px');&lt;br /&gt;
&lt;br /&gt;
  });&lt;br /&gt;
});&lt;br /&gt;
/*]]&amp;gt;*/&amp;lt;/script&amp;gt;&amp;lt;a href=&amp;quot;https://www.youtube.com/watch?v=&amp;lt;!--{$id|escape:'urlpathinfo'}--&amp;gt;&amp;amp;t=&amp;lt;!--{$t|escape:'urlpathinfo'|default:'0'}--&amp;gt;&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;weYouTube&amp;quot; data-ytid=&amp;quot;&amp;lt;!--{$id|escape:'quotes'|default:''}--&amp;gt;&amp;quot; data-thumbnail=&amp;quot;&amp;lt;!--{$thumbnail|escape:'quotes'|default:''}--&amp;gt;&amp;quot; data-list=&amp;quot;&amp;lt;!--{$list|escape:'quotes'|default:''}--&amp;gt;&amp;quot; data-index=&amp;quot;&amp;lt;!--{$index|escape:'quotes'|default:''}--&amp;gt;&amp;quot; data-target=&amp;quot;&amp;lt;!--{$target|escape:'quotes'|default:''}--&amp;gt;&amp;quot; style=&amp;quot;width:&amp;lt;!--{$width|escape:'html'|default:'425'}--&amp;gt;px; height:&amp;lt;!--{$height|escape:'html'|default:'355'}--&amp;gt;px; background: black; position: relative;&amp;quot;&amp;gt;&amp;lt;img src=&amp;quot;/extensions/WE/images/clear1x1.gif&amp;quot; height=&amp;quot;&amp;lt;!--{$height|escape:'quotes'|default:'355'}--&amp;gt;&amp;quot; width=&amp;quot;&amp;lt;!--{$width|escape:'quotes'|default:'425'}--&amp;gt;&amp;quot; style=&amp;quot;position: absolute; top: 0px; left: 0px;&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;weYouTubeTitleContainer&amp;quot; style=&amp;quot;color: white; background: rgba(69,69,69,75); position: absolute; top: 0px; width: 100%; height: 18px; font: 14px sans-serif; padding-top: 4px;&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;weYouTubeTitle&amp;quot; style=&amp;quot;padding-left: 0.5em;&amp;quot;&amp;gt;&amp;lt;!--{$title|escape:'html'|default:''}--&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;div class=&amp;quot;weYouTubePlay&amp;quot; style=&amp;quot;position:absolute; top: 148px; left: 143px;&amp;quot;&amp;gt;&amp;lt;img src=&amp;quot;/extensions/WE/images/start_play_YouTube.png&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/includeonly&amp;gt;&lt;/div&gt;</summary>
		<author><name>Lmorillas</name></author>	</entry>

	</feed>