var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			   string: navigator.userAgent,
			   subString: "iPhone",
			   identity: "iPhone/iPod"
	    },
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};


                var vidIndex = -1;  
                var vidIndices = [];  
                var vidURLs = [];
                
                //parses blog entries for video tags and replaces them with video holder div elements
                function insertVideos(){
                                allEntries = $('.ms-PostBody');
                                //for each blog entry, parse entry and create video holders
                                for (var i=0; i<allEntries.length;i++){
                                                entryContent=allEntries[i].firstChild.innerHTML;
                                                entryContent=entryContent.replace(/&lt;BLOGVIDEO:\s*(.*)&gt;/gi,function(m){return getHolderCode(m)});     
                                                allEntries[i].innerHTML=entryContent;  
                                }
                                
                                //for each video on the page, inject the media player into the appropriate holder
                                for(k=0;k<vidURLs.length;k++){
                                                insertVideo(document.getElementById('videoHolder'+vidIndices[k]),vidURLs[k]);                                                       
                                }                              
                }
                
                                
                //provides an incremented ID for a videoHolder div element and associates this videoHolder ID with the video URL
                function getHolderCode(matched){
                                if (matched.match(/&lt;BLOGVIDEO:\s*(.*)&gt;/i)) vidURL=RegExp.lastParen;
                                if (matched.match(/<A href="(.*)"/i)) vidURL=RegExp.lastParen;
                                vidIndex++;
                                vidURLs.push(vidURL);  
                                vidIndices.push(vidIndex);          
                                return "<div id='videoHolder" + vidIndex + "'></div>";   
                }

                
                //inserts a media web part with given video into a given video holder div
                function insertVideo(videoHolder,videoURL){
                                mediaPlayer.createMediaPlayer(
                                videoHolder,
                                                                videoHolder.id,
                '360px', 
                '239px',
                {
                                displayMode:'Inline',
                                mediaTitle:'',
                                mediaSource:videoURL,
                                previewImageSource:'',
                                autoPlay:false,
                                loop:false,
                                mediaFileExtensions:'wmv;wma;avi;mpg;mp3;',
                                silverlightMediaExtensions:'wmv;wma;mp3;'
                }
            );

                }
                
                
                //inserts links to upload video and manage videos into the Blog Tools web part
                function createUploadVideoLink(){
                
			BrowserDetect.init();
			//alert(BrowserDetect.browser);
			var vCopyNodeIndex = 0;  
			var vNewNodeIndex = 0;  
			if (BrowserDetect.browser == "Explorer")
			{
				vCopyNodeIndex = 0;
				vNewNodeIndex = 0;
			}
			else if (BrowserDetect.browser == "Firefox")
			{
				vCopyNodeIndex = 3;
				vNewNodeIndex = 1;
			}
			else if (BrowserDetect.browser == "Chrome")
			{
				vCopyNodeIndex = 3;
				vNewNodeIndex = 1;
			}

                        blogTools = $('.ms-blogAdminLinks')[0];
			if (blogTools == null)
				return;

                        newItem =  blogTools.childNodes[vCopyNodeIndex].cloneNode(true);
                        newItem2 = blogTools.childNodes[vCopyNodeIndex].cloneNode(true);

			var site = new String(document.location);
			site = site.toLowerCase();


			if (site.indexOf("/inside-aoa/news-and-publications/blogs/daily-report-blog/") >= 0)		
				newItem.childNodes[vNewNodeIndex].childNodes[0].onclick = function(){ShowPopupDialog('/inside-aoa/news-and-publications/blogs/daily-report-blog/Videos/Forms/Upload.aspx?Source=/inside-aoa/news-and-publications/blogs/daily-report-blog/Videos/Forms/Thumbnails.aspx/')};
			else if (site.indexOf("/inside-aoa/news-and-publications/blogs/presidents-blog/") >= 0)		
                               	newItem.childNodes[vNewNodeIndex].childNodes[0].onclick = function(){ShowPopupDialog('/inside-aoa/news-and-publications/blogs/presidents-blog/Videos/Forms/Upload.aspx?Source=/inside-aoa/news-and-publications/blogs/presidents-blog/Videos/Forms/Thumbnails.aspx/')};


			if (site.indexOf("/inside-aoa/news-and-publications/blogs/daily-report-blog/") >= 0)		
                               	newItem.childNodes[vNewNodeIndex+1].href="javascript: ShowPopupDialog('/inside-aoa/news-and-publications/blogs/daily-report-blog/Videos/Forms/Upload.aspx?Source=/inside-aoa/news-and-publications/blogs/daily-report-blog/Videos/Forms/Thumbnails.aspx/')";
			else if (site.indexOf("/inside-aoa/news-and-publications/blogs/presidents-blog/") >= 0)		
                               	newItem.childNodes[vNewNodeIndex+1].href="javascript: ShowPopupDialog('/inside-aoa/news-and-publications/blogs/presidents-blog/Videos/Forms/Upload.aspx?Source=/inside-aoa/news-and-publications/blogs/presidents-blog/Videos/Forms/Thumbnails.aspx/')";

                        newItem.childNodes[vNewNodeIndex+1].innerHTML="&nbsp;Upload a Video";
	                blogTools.insertBefore(newItem,blogTools.childNodes[vNewNodeIndex+1]);


			if (site.indexOf("/inside-aoa/news-and-publications/blogs/daily-report-blog/") >= 0)		
                               	newItem2.childNodes[vNewNodeIndex].childNodes[0].href="/inside-aoa/news-and-publications/blogs/daily-report-blog/Videos/Forms/Thumbnails.aspx?Source=/inside-aoa/news-and-publications/blogs/daily-report-blog/Videos/Forms/Thumbnails.aspx";
			else if (site.indexOf("/inside-aoa/news-and-publications/blogs/presidents-blog/") >= 0)		
                               	newItem2.childNodes[vNewNodeIndex].childNodes[0].href="/inside-aoa/news-and-publications/blogs/presidents-blog/Videos/Forms/Thumbnails.aspx?Source=/inside-aoa/news-and-publications/blogs/presidents-blog/Videos/Forms/Thumbnails.aspx";

			if (site.indexOf("/inside-aoa/news-and-publications/blogs/daily-report-blog/") >= 0)		
                               	newItem2.childNodes[vNewNodeIndex+1].href="/inside-aoa/news-and-publications/blogs/daily-report-blog/Videos/Forms/Thumbnails.aspx?Source=/inside-aoa/news-and-publications/blogs/daily-report-blog/Videos/Forms/Thumbnails.aspx";
			else if (site.indexOf("/inside-aoa/news-and-publications/blogs/presidents-blog/") >= 0)		
                        	newItem2.childNodes[vNewNodeIndex+1].href="/inside-aoa/news-and-publications/blogs/presidents-blog/Videos/Forms/Thumbnails.aspx?Source=/inside-aoa/news-and-publications/blogs/presidents-blog/Videos/Forms/Thumbnails.aspx";



                       newItem2.childNodes[vNewNodeIndex+1].innerHTML="&nbsp;Manage Videos";
                       blogTools.insertBefore(newItem2,blogTools.childNodes[vNewNodeIndex+2]);

             
		}                   



