| Conditions | 18 |
| Paths | 34 |
| Total Lines | 158 |
| Code Lines | 96 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 1 | ||
| Bugs | 0 | Features | 0 |
Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.
For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.
Commonly applied refactorings include:
If many parameters/temporary variables are present:
| 1 | <?php |
||
| 270 | function xtubeShowVideo($vidid, $source, $screenshot, $picurl) |
||
| 271 | { |
||
| 272 | global $xoopsModule, $xoopsModuleConfig; |
||
| 273 | $showvideo = ''; |
||
| 274 | $autoplay = $xoopsModuleConfig['autoplay']; |
||
| 275 | if ($xoopsModuleConfig['autoplay']) { |
||
| 276 | $autoplay2 = 'yes'; |
||
| 277 | $autoplay3 = 'true'; |
||
| 278 | $photobucket = '&ap=1'; |
||
| 279 | $google = 'FlashVars="autoPlay=true"'; |
||
| 280 | $viddler = 'flashvars="autoplay=t"'; |
||
| 281 | } else { |
||
| 282 | $autoplay2 = 'no'; |
||
| 283 | $autoplay3 = 'false'; |
||
| 284 | $photobucket = ''; |
||
| 285 | $google = ''; |
||
| 286 | $viddler = ''; |
||
| 287 | } |
||
| 288 | |||
| 289 | // $hquality = ''; |
||
| 290 | // if ($hq == 1) { |
||
| 291 | // $hquality = '&ap=%2526fmt%3D18&'; |
||
| 292 | // } |
||
| 293 | |||
| 294 | switch ($source) { |
||
| 295 | // YouTube |
||
| 296 | case 0: |
||
| 297 | // $showvideo = '<object width="480" height="295"><param name="movie" value="http://www.youtube.com/v/' . $vidid . '&ap=%2526fmt%3D18&&autoplay=' . $autoplay . '&rel=1&fs=1&color1=0x999999&color2=0x999999&border=0&loop=0"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/' . $vidid . '&ap=%2526fmt%3D18&&autoplay=' . $autoplay . '&rel=1&fs=1&color1=0x999999&color2=0x999999&border=0&loop=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" wmode="transparent" width="480" height="295"></embed></object>'; |
||
| 298 | $showvideo = '<embed src="http://www.youtube.com/v/' . $vidid . '&autoplay=' . $autoplay |
||
| 299 | . '&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"></embed>'; |
||
| 300 | break; |
||
| 301 | |||
| 302 | // MetaCafe |
||
| 303 | case 1: |
||
| 304 | $showvideo = '<embed flashVars="playerVars=showStats=no|autoPlay=' . $autoplay2 . '" src="http://www.metacafe.com/fplayer/' . $vidid |
||
| 305 | . '.swf" width="480" height="295" wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"></embed>'; |
||
| 306 | break; |
||
| 307 | |||
| 308 | // iFilm/Spike |
||
| 309 | case 2: |
||
| 310 | $showvideo |
||
| 311 | = |
||
| 312 | '<embed width="480" height="295" src="http://www.spike.com/efp" quality="high" bgcolor="000000" name="efp" align="middle" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="flvbaseclip=' |
||
| 313 | . $vidid . '" allowfullscreen="true"> </embed>'; |
||
| 314 | break; |
||
| 315 | |||
| 316 | // Photobucket |
||
| 317 | case 3: |
||
| 318 | $vidid = str_replace('th_', '', $vidid); |
||
| 319 | $showvideo |
||
| 320 | = |
||
| 321 | '<embed width="480" height="295" type="application/x-shockwave-flash" wmode="transparent" src="http://i51.photobucket.com/player.swf?file=http://vid51.photobucket.com/albums/' . $vidid |
||
| 322 | . '.flv' . $photobucket . '"></embed>'; |
||
| 323 | break; |
||
| 324 | |||
| 325 | // Viddler |
||
| 326 | case 4: |
||
| 327 | $showvideo = '<embed src="http://www.viddler.com/player/' . $vidid . '/" width="480" height="295" type="application/x-shockwave-flash" ' . $viddler |
||
| 328 | . ' allowScriptAccess="always" allowFullScreen="true" name="viddler_' . $vidid . '" ></embed>'; |
||
| 329 | break; |
||
| 330 | |||
| 331 | // Google Video |
||
| 332 | case 100: |
||
| 333 | $showvideo |
||
| 334 | = |
||
| 335 | '<embed style="width:480px; height:295px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=' . $vidid . '&hl=en" ' . $google |
||
| 336 | . '> </embed>'; |
||
| 337 | break; |
||
| 338 | |||
| 339 | // MySpace TV |
||
| 340 | case 101: |
||
| 341 | $showvideo |
||
| 342 | = '<embed src="http://mediaservices.myspace.com/services/media/embed.aspx/m=' . $vidid . ',t=1,mt=video,ap=' . $autoplay |
||
| 343 | . '" width="480" height="295" allowFullScreen="true" type="application/x-shockwave-flash"></embed>'; |
||
| 344 | break; |
||
| 345 | |||
| 346 | // DailyMotion |
||
| 347 | case 102: |
||
| 348 | $showvideo = '<embed src="http://www.dailymotion.com/swf/' . $vidid . '&autoPlay=' . $autoplay |
||
| 349 | . '" type="application/x-shockwave-flash" width="480" height="295" allowFullScreen="true" allowScriptAccess="always"></embed>'; |
||
| 350 | break; |
||
| 351 | |||
| 352 | // Blip.tv |
||
| 353 | case 103: |
||
| 354 | $showvideo |
||
| 355 | = |
||
| 356 | '<embed src="http://blip.tv/play/' . $vidid . '" type="application/x-shockwave-flash" width="480" height="295" allowscriptaccess="always" allowfullscreen="true" flashvars="autostart=' |
||
| 357 | . $autoplay3 . '"></embed>'; |
||
| 358 | break; |
||
| 359 | |||
| 360 | // ClipFish |
||
| 361 | case 104: |
||
| 362 | $showvideo = '<embed src="http://www.clipfish.de/videoplayer.swf?as=' . $autoplay . '&videoid=' . $vidid |
||
| 363 | . '==&r=1&c=0067B3" quality="high" bgcolor="#0067B3" width="464" height="380" name="player" align="middle" allowFullScreen="true" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>'; // Change c=0067B3 for different player color |
||
| 364 | break; |
||
| 365 | |||
| 366 | // LiveLeak |
||
| 367 | case 105: |
||
| 368 | $showvideo = '<embed src="http://www.liveleak.com/e/' . $vidid . '" type="application/x-shockwave-flash" flashvars="autostart=' . $autoplay3 |
||
| 369 | . '" wmode="transparent" width="450" height="370"></embed>'; |
||
| 370 | break; |
||
| 371 | |||
| 372 | // Maktoob |
||
| 373 | case 106: |
||
| 374 | $showvideo |
||
| 375 | = |
||
| 376 | '<embed width="448" height="320" align="middle" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" name="flvplayer" bgcolor="#ffffff" devicefont="true" wmode="transparent" quality="high" src="http://clipat.maktoob.com/flvplayerOurJS.swf?file=http://' |
||
| 377 | . $vidid . '.flv&enablejs=true&image=' . $picurl . '&lightcolor=0x557722&backcolor=0x000000&frontcolor=0xCCCCCC&showfsbutton=true&autostart=' . $autoplay3 |
||
| 378 | . '&logo=http://clipat.maktoob.com/language/ar_sa/images/clipat-icon.png&displaywidth=448" />'; |
||
| 379 | break; |
||
| 380 | |||
| 381 | // Veoh |
||
| 382 | case 107: |
||
| 383 | $showvideo = '<embed src="http://www.veoh.com/veohplayer.swf?permalinkId=' . $vidid . '&id=anonymous&player=videodetailsembedded&affiliateId=&videoAutoPlay=' . $autoplay |
||
| 384 | . '" allowFullScreen="true" width="480" height="295" bgcolor="#FFFFFF" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>'; |
||
| 385 | break; |
||
| 386 | |||
| 387 | // Vimeo |
||
| 388 | case 108: |
||
| 389 | $showvideo = '<embed src="http://vimeo.com/moogaloop.swf?clip_id=' . $vidid . '&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1&autoplay=' . $autoplay |
||
| 390 | . '" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" quality="best" width="400" height="321"></embed>'; |
||
| 391 | break; |
||
| 392 | |||
| 393 | // Megavideo |
||
| 394 | case 109: |
||
| 395 | $showvideo |
||
| 396 | = '<object width="640" height="363"><param name="movie" value="http://www.megavideo.com/v/' . $vidid |
||
| 397 | . '"></param><param name="allowFullScreen" value="true"></param><embed src="http://www.megavideo.com/v/' . $vidid |
||
| 398 | . '" type="application/x-shockwave-flash" allowfullscreen="true" width="640" height="363"></embed></object>'; |
||
| 399 | break; |
||
| 400 | |||
| 401 | // XoopsTube |
||
| 402 | case 200: |
||
| 403 | // $showvideo = '<embed src="' . XOOPS_URL . '/modules/' . $xoopsModule->getvar('dirname') |
||
| 404 | // . '/include/mediaplayer.swf" width="425" height="350" allowScriptAccess="always" allowFullScreen="true" flashvars="width=425&height=350&file=' |
||
| 405 | // . XOOPS_URL . '/' . $xoopsModuleConfig['videodir'] . '/' . $vidid . '&image=' . XOOPS_URL . '/' |
||
| 406 | // . $xoopsModuleConfig['videoimgdir'] . '/' . $screenshot . '&autostart=' . $autoplay3 . '"></embed>'; |
||
| 407 | |||
| 408 | $showvideo |
||
| 409 | = ' |
||
| 410 | <script type="text/javascript" src="' . XOOPS_URL . '/modules/' . $xoopsModule->getvar('dirname') . '/flvplayer/flowplayer/flowplayer.min.js"></script> |
||
| 411 | <a href="' . XOOPS_URL . '/' . $xoopsModule->getvar('dirname') . '/' . $vidid . '" style="display: block; width: 520px; height: 330px;" id="player"></a> |
||
| 412 | <script> |
||
| 413 | flowplayer("player", "' . XOOPS_URL . '/modules/' . $xoopsModule->getvar('dirname') . '/flvplayer/flowplayer/flowplayer.swf", { |
||
| 414 | clip: { |
||
| 415 | autoPlay: ' . $autoplay3 . ', |
||
| 416 | autoBuffering: true |
||
| 417 | } |
||
| 418 | } |
||
| 419 | ); |
||
| 420 | </script> |
||
| 421 | '; |
||
| 422 | |||
| 423 | break; |
||
| 424 | } |
||
| 425 | |||
| 426 | return $showvideo; |
||
| 427 | } |
||
| 428 |
Instead of relying on
globalstate, we recommend one of these alternatives:1. Pass all data via parameters
2. Create a class that maintains your state