/*

jQuery Browser Plugin
	* Version 2.3
	* 2008-09-17 19:27:05
	* URL: http://jquery.thewikies.com/browser
	* Description: jQuery Browser Plugin extends browser detection capabilities and can assign browser selectors to CSS classes.
	* Author: Nate Cavanaugh, Minhchau Dang, & Jonathan Neal
	* Copyright: Copyright (c) 2008 Jonathan Neal under dual MIT/GPL license.
	* JSLint: This javascript file passes JSLint verification.
*//*jslint
		bitwise: true,
		browser: true,
		eqeqeq: true,
		forin: true,
		nomen: true,
		plusplus: true,
		undef: true,
		white: true
*//*global
		jQuery
*/

(function ($) {
	$.browserTest = function (a, z) {
		var u = 'unknown', x = 'X', m = function (r, h) {
			for (var i = 0; i < h.length; i = i + 1) {
				r = r.replace(h[i][0], h[i][1]);
			}

			return r;
		}, c = function (i, a, b, c) {
			var r = {
				name: m((a.exec(i) || [u, u])[1], b)
			};

			r[r.name] = true;

			r.version = (c.exec(i) || [x, x, x, x])[3];

			if (r.name.match(/safari/) && r.version > 400) {
				r.version = '2.0';
			}

			if (r.name === 'presto') {
				r.version = ($.browser.version > 9.27) ? 'futhark' : 'linear_b';
			}
			r.versionNumber = parseFloat(r.version, 10) || 0;
			r.versionX = (r.version !== x) ? (r.version + '').substr(0, 1) : x;
			r.className = r.name + r.versionX;

			return r;
		};

		a = (a.match(/Opera|Navigator|Minefield|KHTML|Chrome/) ? m(a, [
			[/(Firefox|MSIE|KHTML,\slike\sGecko|Konqueror)/, ''],
			['Chrome Safari', 'Chrome'],
			['KHTML', 'Konqueror'],
			['Minefield', 'Firefox'],
			['Navigator', 'Netscape']
		]) : a).toLowerCase();

		$.browser = $.extend((!z) ? $.browser : {}, c(a, /(camino|chrome|firefox|netscape|konqueror|lynx|msie|opera|safari)/, [], /(camino|chrome|firefox|netscape|netscape6|opera|version|konqueror|lynx|msie|safari)(\/|\s)([a-z0-9\.\+]*?)(\;|dev|rel|\s|$)/));

		$.layout = c(a, /(gecko|konqueror|msie|opera|webkit)/, [
			['konqueror', 'khtml'],
			['msie', 'trident'],
			['opera', 'presto']
		], /(applewebkit|rv|konqueror|msie)(\:|\/|\s)([a-z0-9\.]*?)(\;|\)|\s)/);

		$.os = {
			name: (/(win|mac|linux|sunos|solaris|iphone)/.exec(navigator.platform.toLowerCase()) || [u])[0].replace('sunos', 'solaris')
		};

		if (!z) {
			$('html').addClass([$.os.name, $.browser.name, $.browser.className, $.layout.name, $.layout.className].join(' '));
		}
	};

	$.browserTest(navigator.userAgent);
})(jQuery);


/*
*jQuery browser plugin detection 1.0.2
* http://plugins.jquery.com/project/jqplugin
* Checks for plugins / mimetypes supported in the browser extending the jQuery.browser object
* Copyright (c) 2008 Leonardo Rossetti motw.leo@gmail.com
* MIT License: http://www.opensource.org/licenses/mit-license.php
  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  THE SOFTWARE.
*/
(function ($) {
	//checks if browser object exists
	if (typeof $.browser === "undefined" || !$.browser) {
		var browser = {};
		$.extend(browser);
	}
	var pluginList = {
		flash: {
			activex: "ShockwaveFlash.ShockwaveFlash",
			plugin: /flash/gim
		},
		qtime: {
			activex: "QuickTime.QuickTime",
			plugin: /quicktime/gim
		},
		wmp: {
			activex: "WMPlayer.OCX",
			plugin: /(windows\smedia)|(Microsoft)/gim
		}
	};
	var isSupported = function (p) {
		if (window.ActiveXObject) {
			try {
				new ActiveXObject(pluginList[p].activex);
				$.browser[p] = true;
			} catch (e) {
				$.browser[p] = false;
			}
		} else {
			$.each(navigator.plugins, function () {
				if (this.name.match(pluginList[p].plugin)) {
					$.browser[p] = true;
					return false;
				} else {
					$.browser[p] = false;
				}
			});
		}
	};
	
	$.each(pluginList, function (i, n) {
		isSupported(i);		
	});
})(jQuery);



//v1.7
// Flash Player Version Detection
// Detect Client Browser type
// Copyright 2005-2008 Adobe Systems Incorporated.  All rights reserved.
var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
function ControlVersion()
{
   var version;
   var axo;
   var e;
   // NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry
   try {
      // version will be set for 7.X or greater players
      axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
      version = axo.GetVariable("$version");
   } catch (e) {
   }
   if (!version)
   {
      try {
         // version will be set for 6.X players only
         axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
         
         // installed player is some revision of 6.0
         // GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
         // so we have to be careful. 
         
         // default to the first public version
         version = "WIN 6,0,21,0";
         // throws if AllowScripAccess does not exist (introduced in 6.0r47)      
         axo.AllowScriptAccess = "always";
         // safe to call for 6.0r47 or greater
         version = axo.GetVariable("$version");
      } catch (e) {
      }
   }
   if (!version)
   {
      try {
         // version will be set for 4.X or 5.X player
         axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
         version = axo.GetVariable("$version");
      } catch (e) {
      }
   }
   if (!version)
   {
      try {
         // version will be set for 3.X player
         axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
         version = "WIN 3,0,18,0";
      } catch (e) {
      }
   }
   if (!version)
   {
      try {
         // version will be set for 2.X player
         axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
         version = "WIN 2,0,0,11";
      } catch (e) {
         version = -1;
      }
   }
   
   return version;
}
// JavaScript helper required to detect Flash Player PlugIn version information
function GetSwfVer(){
   // NS/Opera version >= 3 check for Flash plugin in plugin array
   var flashVer = -1;
   
   if (navigator.plugins != null && navigator.plugins.length > 0) {
      if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
         var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
         var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
         var descArray = flashDescription.split(" ");
         var tempArrayMajor = descArray[2].split(".");         
         var versionMajor = tempArrayMajor[0];
         var versionMinor = tempArrayMajor[1];
         var versionRevision = descArray[3];
         if (versionRevision == "") {
            versionRevision = descArray[4];
         }
         if (versionRevision[0] == "d") {
            versionRevision = versionRevision.substring(1);
         } else if (versionRevision[0] == "r") {
            versionRevision = versionRevision.substring(1);
            if (versionRevision.indexOf("d") > 0) {
               versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
            }
         }
         var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
      }
   }
   // MSN/WebTV 2.6 supports Flash 4
   else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
   // WebTV 2.5 supports Flash 3
   else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
   // older WebTV supports Flash 2
   else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
   else if ( isIE && isWin && !isOpera ) {
      flashVer = ControlVersion();
   }   
   return flashVer;
}
// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
{
   versionStr = GetSwfVer();
   if (versionStr == -1 ) {
      return false;
   } else if (versionStr != 0) {
      if(isIE && isWin && !isOpera) {
         // Given "WIN 2,0,0,11"
         tempArray         = versionStr.split(" ");    // ["WIN", "2,0,0,11"]
         tempString        = tempArray[1];         // "2,0,0,11"
         versionArray      = tempString.split(",");   // ['2', '0', '0', '11']
      } else {
         versionArray      = versionStr.split(".");
      }
      var versionMajor      = versionArray[0];
      var versionMinor      = versionArray[1];
      var versionRevision   = versionArray[2];
           // is the major.revision >= requested major.revision AND the minor version >= requested minor
      if (versionMajor > parseFloat(reqMajorVer)) {
         return true;
      } else if (versionMajor == parseFloat(reqMajorVer)) {
         if (versionMinor > parseFloat(reqMinorVer))
            return true;
         else if (versionMinor == parseFloat(reqMinorVer)) {
            if (versionRevision >= parseFloat(reqRevision))
               return true;
         }
      }
      return false;
   }
}
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}
function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '';
  if (isIE && isWin && !isOpera)
  {
    str += '<object ';
    for (var i in objAttrs)
    {
      str += i + '="' + objAttrs[i] + '" ';
    }
    str += '>';
    for (var i in params)
    {
      str += '<param name="' + i + '" value="' + params[i] + '" /> ';
    }
    str += '</object>';
  }
  else
  {
    str += '<embed ';
    for (var i in embedAttrs)
    {
      str += i + '="' + embedAttrs[i] + '" ';
    }
    str += '> </embed>';
  }
  document.write(str);
}
function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}
function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}
function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    
    switch (currArg){   
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":   
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblclick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
      case "id":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}

function zobrazitVideo(el,opt)
{
	//opt['c'] = 'http://www.cssd.cz'+opt['c'];
	if($.browser.qtime && bQT)
		$('#'+el).html('<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" width="'+opt['w']+'" height="'+opt['h']+'"><param name="sr" value="'+opt['c']+'" /><param name="controller" value="true" /><param name="autoplay" value="true" /><param name="scale" value="aspect" /><!--[if !IE]>--><object type="video/quicktime" data="'+opt['c']+'" width="'+opt['w']+'" height="'+opt['h']+'"><param name="scale" value="aspect" /><param name="controller" value="true" /></object><!--<![endif]--></object></div>');
	else
		$('#'+el).html('<object classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"   width="'+opt['w']+'" height="'+opt['h']+'">  <param name="url" value="'+opt['c']+'" />  <param name="src" value="'+opt['c']+'" />  <param name="showcontrols" value="1" />  <param name="AutoStart" value="1" />  <param name="AutoSize" value="0" />  <!--[if !IE]>-->  <object type="video/x-ms-wmv"    data="'+opt['c']+'"    width="'+opt['w']+'" height="'+opt['h']+'">    <param name="src" value="'+opt['c']+'" />    <param name="AutoStart" value="1" />    <param name="controller" value="1" />    <param name="AutoSize" value="0" /> </object>  <!--<![endif]--></object>');
}
