Skip to content

Commit

Permalink
Updated SoundCloud
Browse files Browse the repository at this point in the history
  • Loading branch information
JoshyPHP committed Jul 2, 2015
1 parent bfa6a15 commit a0e693f
Show file tree
Hide file tree
Showing 5 changed files with 11 additions and 33 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -279,7 +279,7 @@ Media BB Codes for XenForo, imported from [s9e\TextFormatter](https://github.com
<tr>
<td><code>mailru</code></td>
<td>Mail.Ru</td>
<td>http://my.mail.ru/corp/auto/video/testdrive/34.html<br/>http://my.mail.ru/mail/classolo/video/28/29.html<br/>http://my.mail.ru/inbox/madasafish1969/video/_myvideo/1986.html<br/>http://my.mail.ru/mail/you4videos/video/_myvideo/1121.html</td>
<td>http://my.mail.ru/corp/auto/video/testdrive/34.html<br/>http://my.mail.ru/mail/classolo/video/28/29.html<br/>http://my.mail.ru/mail/you4videos/video/_myvideo/1121.html</td>
</tr>
<tr>
<td><code>medium</code></td>
Expand Down
4 changes: 2 additions & 2 deletions build/addon-s9e.xml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<addon addon_id="s9e" title="s9e Media Pack" url="https://xenforo.com/community/resources/s9e-media-bbcodes-pack.2476/" version_id="201506110" version_string="20150611" install_callback_class="s9e_MediaBBCodes" install_callback_method="install" uninstall_callback_class="s9e_MediaBBCodes" uninstall_callback_method="uninstall">
<addon addon_id="s9e" title="s9e Media Pack" url="https://xenforo.com/community/resources/s9e-media-bbcodes-pack.2476/" version_id="201507020" version_string="20150702" install_callback_class="s9e_MediaBBCodes" install_callback_method="install" uninstall_callback_class="s9e_MediaBBCodes" uninstall_callback_method="uninstall">
<bb_code_media_sites/>
<phrases>
<phrase title="option_group_s9e" version_id="1" version_string="1">s9e Media Pack</phrase>
Expand Down Expand Up @@ -56,7 +56,7 @@
</modification>
<modification action="str_replace" description="Adds a link back to s9e Media Pack" enabled="1" execution_order="10" modification_key="s9e_footer" template="footer">
<find>{xen:phrase extra_copyright}</find>
<replace> | &lt;a class="concealed" href="https://xenforo.com/community/resources/s9e-media-bbcodes-pack.2476/" title="Media BBCodes provided by s9e Media Pack 20150611"&gt;Media embeds by s9e&lt;/a&gt;$0</replace>
<replace> | &lt;a class="concealed" href="https://xenforo.com/community/resources/s9e-media-bbcodes-pack.2476/" title="Media BBCodes provided by s9e Media Pack 20150702"&gt;Media embeds by s9e&lt;/a&gt;$0</replace>
</modification>
<modification action="preg_replace" description="Defers the loading of embedded content" enabled="0" execution_order="10" modification_key="s9e_lazy_loading" template="ad_thread_view_below_messages">
<find>(^)</find>
Expand Down
8 changes: 4 additions & 4 deletions build/upload/library/s9e/MediaBBCodes.php
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ class s9e_MediaBBCodes
'libsyn'=>array('Libsyn','http://www.libsyn.com/',array('podcasts'=>1),'@(?\'id\')(?=.*?[./]libsyn\\.com[:/]).*?(?!\\.mp3)....$@',array(),true,array(array('extract'=>array('!embed/episode/id/(?\'id\'\\d+)!'),'match'=>array('@(?!\\.mp3)....$@'))),'<iframe width="100%" height="45" style="max-width:900px" src="//html5-player.libsyn.com/embed/episode/id/{$id}/height/45/width/900/theme/standard/direction/no/autoplay/no/autonext/no/thumbnail/no/preload/no/no_addthis/no/" allowfullscreen="" frameborder="0" scrolling="no" data-s9e=""></iframe>'),
'liveleak'=>array('LiveLeak','http://www.liveleak.com/',array('videos'=>1),'!liveleak\\.com/view\\?i=(?\'id\'[a-f_0-9]+)!',array('!liveleak\\.com/view\\?i=(?\'id\'[a-f_0-9]+)!'),7=>'<iframe width="640" height="360" src="http://www.liveleak.com/ll_embed?i={$id}" allowfullscreen="" frameborder="0" scrolling="no" data-s9e=""></iframe>'),
'livestream'=>array('Livestream','http://new.livestream.com/',array('videos'=>1),'((?\'id\')(?=.*?[./]livestream\\.com[:/]).*?)',array('!livestream\\.com/accounts/(?\'account_id\'\\d+)/events/(?\'event_id\'\\d+)!','!/videos/(?\'video_id\'\\d+)!'),true,array(array('extract'=>array('!accounts/(?\'account_id\'\\d+)/events/(?\'event_id\'\\d+)!'),'match'=>array('//')))),
'mailru'=>array('Mail.Ru','http://my.mail.ru/',array('.ru'=>1),'!(?\'id\')my\\.mail\\.ru/\\w+/\\w+/video/\\w+/\\d!',array(),true,array(array('extract'=>array('!mail\\.ru/videos/embed/(?\'id\'[\\w/]+)\\.html!'),'match'=>array('!my\\.mail\\.ru/\\w+/\\w+/video/\\w+/\\d!')))),
'mailru'=>array('Mail.Ru','http://my.mail.ru/',array('.ru'=>1),'!(?\'id\')my\\.mail\\.ru/\\w+/\\w+/video/\\w+/\\d!',array(),true,array(array('extract'=>array('!mail\\.ru/video/(?\'id\'[\\w/]+)\\.html!'),'match'=>array('!my\\.mail\\.ru/\\w+/\\w+/video/\\w+/\\d!')))),
'medium'=>array('Medium','https://medium.com/',array('blogging'=>1),'!medium\\.com/[^/]*/(?:[-\\w]+-)?(?\'id\'[\\da-f]+)!',array('!medium\\.com/[^/]*/(?:[-\\w]+-)?(?\'id\'[\\da-f]+)!'),7=>'<iframe width="400" height="454" src="https://api.medium.com/embed?type=story&amp;path=//{$id}" style="border:solid 1px;border-color:#eee #ddd #bbb;border-radius:5px;box-shadow:rgba(0,0,0,0.15) 0px 1px 3px" allowfullscreen="" frameborder="0" scrolling="no" data-s9e=""></iframe>'),
'metacafe'=>array('Metacafe','http://www.metacafe.com/',array('videos'=>1),'!metacafe\\.com/watch/(?\'id\'\\d+)!',array('!metacafe\\.com/watch/(?\'id\'\\d+)!'),7=>'<iframe width="560" height="315" src="//www.metacafe.com/embed/{$id}/" allowfullscreen="" frameborder="0" scrolling="no" data-s9e=""></iframe>'),
'mixcloud'=>array('Mixcloud','http://www.mixcloud.com/',array('music'=>1),"@mixcloud\\.com/(?!categories|tag)(?'id'[-\\w]+/[^/&]+)/@\n@(?'id')//i\\.mixcloud\\.com/\\w+$@",array('@mixcloud\\.com/(?!categories|tag)(?\'id\'[-\\w]+/[^/&]+)/@'),true,array(array('extract'=>array('@link rel="canonical" href="https?://[^/]+/(?\'id\'[-\\w]+/[^/&]+)/@'),'match'=>array('@//i\\.mixcloud\\.com/\\w+$@'))),'<iframe width="400" height="400" src="//www.mixcloud.com/widget/iframe/?feed=http%3A%2F%2Fwww.mixcloud.com%2F{$id}%2F&amp;embed_type=widget_standard" allowfullscreen="" frameborder="0" scrolling="no" data-s9e=""></iframe>'),
Expand All @@ -157,7 +157,7 @@ class s9e_MediaBBCodes
'rutube'=>array('Rutube','http://rutube.ru/',array('.ru'=>1),"!rutube\\.ru/tracks/(?'id'\\d+)!\n!(?'id')rutube\\.ru/video/[0-9a-f]{32}!",array('!rutube\\.ru/tracks/(?\'id\'\\d+)!'),true,array(array('extract'=>array('!rutube\\.ru/play/embed/(?\'id\'\\d+)!'),'match'=>array('!rutube\\.ru/video/[0-9a-f]{32}!'))),'<iframe width="720" height="405" src="//rutube.ru/play/embed/{$id}" allowfullscreen="" frameborder="0" scrolling="no" data-s9e=""></iframe>'),
'scribd'=>array('Scribd','http://www.scribd.com/',array('documents'=>1,'presentations'=>1),'!scribd\\.com/doc/(?\'id\'\\d+)!',array('!scribd\\.com/doc/(?\'id\'\\d+)!'),7=>'<iframe width="100%" height="500" style="resize:both" src="//www.scribd.com/embeds/{$id}/content?view_mode=scroll&amp;show_recommendations=false" allowfullscreen="" frameborder="0" scrolling="no" data-s9e=""></iframe>',8=>true),
'slideshare'=>array('SlideShare','http://www.slideshare.net/',array('presentations'=>1),"!slideshare\\.net/[^/]+/[-\\w]+-(?'id'\\d{6,})$!\n!(?'id')slideshare\\.net/[^/]+/\\w!",array('!slideshare\\.net/[^/]+/[-\\w]+-(?\'id\'\\d{6,})$!'),true,array(array('extract'=>array('!"presentationId":(?\'id\'\\d+)!'),'match'=>array('!slideshare\\.net/[^/]+/\\w!'))),'<iframe width="427" height="356" src="//www.slideshare.net/slideshow/embed_code/{$id}" allowfullscreen="" frameborder="0" scrolling="no" data-s9e=""></iframe>'),
'soundcloud'=>array('SoundCloud','https://soundcloud.com/',array('music'=>1),"@(?'id'https?://(?:(?:api\\.soundcloud\\.com/(?:playlist|track)s/\\d+)|soundcloud\\.com/[^/]+/(?:sets/)?[^/]+)(?:(?:\\?secret_token=|/(?=s-))(?'secret_token'[-\\w]+))?|^[^/]+/[^/]+$)@\n@(?'id')soundcloud\\.com/(?!playlists/|tracks/)[^/]+/(?:sets/)?[^/]+/s-@",array('@(?\'id\'https?://(?:(?:api\\.soundcloud\\.com/(?:playlist|track)s/\\d+)|soundcloud\\.com/[^/]+/(?:sets/)?[^/]+)(?:(?:\\?secret_token=|/(?=s-))(?\'secret_token\'[-\\w]+))?|^[^/]+/[^/]+$)@'),true,array(array('extract'=>array('@playlists/(?\'playlist_id\'\\d+)@','@tracks/(?\'track_id\'\\d+)@'),'match'=>array('@soundcloud\\.com/(?!playlists/|tracks/)[^/]+/(?:sets/)?[^/]+/s-@'),'url'=>'https://api.soundcloud.com/resolve?url={@id}&_status_code_map%5B302%5D=200&_status_format=json&client_id=b45b1aa10f1ac2941910a7f0d10f8e28&app_version=7a35847b')),null,true),
'soundcloud'=>array('SoundCloud','https://soundcloud.com/',array('music'=>1),"@(?'id'https?://(?:api\\.)?soundcloud\\.com/(?!pages/)\\w+/[-\\w/]+|^[^/]+/[^/]+$)@\n@(?'id')(?=.*?[./]soundcloud\\.com[:/]).*?api.soundcloud.com/playlists/(?'playlist_id'\\d+)@\n@(?'id')(?=.*?[./]soundcloud\\.com[:/]).*?api.soundcloud.com/tracks/(?'track_id'\\d+)@\n@(?'id')(?=.*?[./]soundcloud\\.com[:/]).*?/sets/@",array('@(?\'id\'https?://(?:api\\.)?soundcloud\\.com/(?!pages/)\\w+/[-\\w/]+|^[^/]+/[^/]+$)@','@(?=.*?[./]soundcloud\\.com[:/]).*?api.soundcloud.com/playlists/(?\'playlist_id\'\\d+)@','@(?=.*?[./]soundcloud\\.com[:/]).*?api.soundcloud.com/tracks/(?\'track_id\'\\d+)@'),true,array(array('extract'=>array('@api.soundcloud.com/playlists/(?\'playlist_id\'\\d+)@'),'match'=>array('@/sets/@'),'url'=>'https://api.soundcloud.com/resolve?url={@id}&_status_code_map%5B302%5D=200&_status_format=json&client_id=b45b1aa10f1ac2941910a7f0d10f8e28&app_version=7a35847b')),null,true),
'sportsnet'=>array('Sportsnet','http://www.sportsnet.ca/',array('.ca'=>1,'sports'=>1),'((?\'id\')sportsnet\\.ca/)',array(),true,array(array('extract'=>array('/vid(?:eoId)?=(?\'id\'\\d+)/','/param name="@videoPlayer" value="(?\'id\'\\d+)"/'),'match'=>array('//'))),'<iframe width="560" height="315" src="https://images.rogersdigitalmedia.com/video_service.php?videoId={$id}&amp;playerKey=AQ~~,AAAAAGWRwLc~,cRCmKE8Utf7OFWP38XQcokFZ80fR-u_y&amp;autoStart=false&amp;width=100%25&amp;height=100%25" allowfullscreen="" frameborder="0" scrolling="no" data-s9e=""></iframe>'),
'spotify'=>array('Spotify','https://www.spotify.com/',array('music'=>1),"!(?'id')(?'uri'spotify:(?:album|artist|user|track(?:set)?):[,:\\w]+)!\n!(?'id')(?:open|play)\\.spotify\\.com/(?'path'(?:album|artist|track|user)/[/\\w]+)!",array('!(?\'uri\'spotify:(?:album|artist|user|track(?:set)?):[,:\\w]+)!','!(?:open|play)\\.spotify\\.com/(?\'path\'(?:album|artist|track|user)/[/\\w]+)!'),true),
'stitcher'=>array('Stitcher','http://www.stitcher.com/',array('podcasts'=>1),'!(?\'id\')(?=.*?[./]stitcher\\.com[:/]).*?/podcast/!',array(),true,array(array('extract'=>array('!data-eid="(?\'eid\'\\d+)!','!data-fid="(?\'fid\'\\d+)!'),'match'=>array('!/podcast/!')))),
Expand Down Expand Up @@ -1261,9 +1261,9 @@ public static function renderReddit($vars)

public static function renderSoundcloud($vars)
{
$vars += array('id' => null, 'playlist_id' => null, 'secret_token' => null, 'track_id' => null);
$vars += array('id' => null, 'playlist_id' => null, 'track_id' => null);

$html='<iframe width="100%" height="166" style="max-width:900px" allowfullscreen="" frameborder="0" scrolling="no" data-s9e="" src="https://w.soundcloud.com/player/?url=';if(isset($vars['secret_token'])&&isset($vars['playlist_id']))$html.='https://api.soundcloud.com/playlists/'.htmlspecialchars($vars['playlist_id'],2).'&amp;secret_token='.htmlspecialchars($vars['secret_token'],2);elseif(isset($vars['secret_token'])&&isset($vars['track_id']))$html.='https://api.soundcloud.com/tracks/'.htmlspecialchars($vars['track_id'],2).'&amp;secret_token='.htmlspecialchars($vars['secret_token'],2);else{if((strpos($vars['id'],'://')===false))$html.='https://soundcloud.com/';$html.=htmlspecialchars($vars['id'],2);if(isset($vars['secret_token']))$html.='&amp;secret_token='.htmlspecialchars($vars['secret_token'],2);}$html.='"></iframe>';
$html='<iframe width="100%" style="max-width:900px" allowfullscreen="" frameborder="0" scrolling="no" data-s9e="" height="';if(isset($vars['playlist_id']))$html.='450';else$html.='166';$html.='" src="https://w.soundcloud.com/player/?url=';if(isset($vars['playlist_id']))$html.='https%3A//api.soundcloud.com/playlists/'.htmlspecialchars($vars['playlist_id'],2);elseif(isset($vars['track_id']))$html.='https%3A//api.soundcloud.com/tracks/'.htmlspecialchars($vars['track_id'],2);else{if((strpos($vars['id'],'://')===false))$html.='https%3A//soundcloud.com/';$html.=htmlspecialchars($vars['id'],2);}$html.='"></iframe>';

return $html;
}
Expand Down
28 changes: 3 additions & 25 deletions tests/Test.php
Original file line number Diff line number Diff line change
Expand Up @@ -780,23 +780,13 @@ public function getMatchCallbackTests()
array(
'soundcloud',
'http://api.soundcloud.com/tracks/98282116',
'http://api.soundcloud.com/tracks/98282116'
'id=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F98282116;track_id=98282116'
),
array(
'soundcloud',
'https://soundcloud.com/andrewbird/three-white-horses',
'https://soundcloud.com/andrewbird/three-white-horses'
),
array(
'soundcloud',
'[soundcloud url="https://api.soundcloud.com/tracks/12345?secret_token=s-foobar" width="100%" height="166" iframe="true" /]',
'id=https%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F12345%3Fsecret_token%3Ds-foobar;secret_token=s-foobar'
),
array(
'soundcloud',
'https://soundcloud.com/matt0753/iroh-ii-deep-voice/s-UpqTm',
'id=https%3A%2F%2Fsoundcloud.com%2Fmatt0753%2Firoh-ii-deep-voice%2Fs-UpqTm;secret_token=s-UpqTm;track_id=51465673'
),
array(
'sportsnet',
'http://www.sportsnet.ca/videos/shows/tim-and-sid-video/',
Expand Down Expand Up @@ -1242,25 +1232,13 @@ function ()
'soundcloud',
'http://api.soundcloud.com/tracks/98282116',
'',
'<iframe width="100%" height="166" style="max-width:900px" allowfullscreen="" frameborder="0" scrolling="no" src="https://w.soundcloud.com/player/?url=http://api.soundcloud.com/tracks/98282116"></iframe>'
),
array(
'soundcloud',
'id=https%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F12345%3Fsecret_token%3Ds-foobar;secret_token=s-foobar',
'',
'<iframe width="100%" height="166" style="max-width:900px" allowfullscreen="" frameborder="0" scrolling="no" src="https://w.soundcloud.com/player/?url=https://api.soundcloud.com/tracks/12345?secret_token=s-foobar&amp;secret_token=s-foobar"></iframe>'
),
array(
'soundcloud',
'id=https%3A%2F%2Fsoundcloud.com%2Fmatt0753%2Firoh-ii-deep-voice%2Fs-UpqTm;secret_token=s-UpqTm;track_id=51465673',
'',
'<iframe width="100%" height="166" style="max-width:900px" allowfullscreen="" frameborder="0" scrolling="no" src="https://w.soundcloud.com/player/?url=https://api.soundcloud.com/tracks/51465673&amp;secret_token=s-UpqTm"></iframe>'
'<iframe width="100%" style="max-width:900px" allowfullscreen="" frameborder="0" scrolling="no" height="166" src="https://w.soundcloud.com/player/?url=http://api.soundcloud.com/tracks/98282116"></iframe>'
),
array(
'soundcloud',
'nruau/nruau-mix2',
'',
'<iframe width="100%" height="166" style="max-width:900px" allowfullscreen="" frameborder="0" scrolling="no" src="https://w.soundcloud.com/player/?url=https://soundcloud.com/nruau/nruau-mix2"></iframe>'
'<iframe width="100%" style="max-width:900px" allowfullscreen="" frameborder="0" scrolling="no" height="166" src="https://w.soundcloud.com/player/?url=https%3A//soundcloud.com/nruau/nruau-mix2"></iframe>'
),
array(
'spotify',
Expand Down
2 changes: 1 addition & 1 deletion vendor/s9e/TextFormatter
Submodule TextFormatter updated 149 files

0 comments on commit a0e693f

Please sign in to comment.