function deleteItem(url,type,id,parentElement,confirmMsg){if(confirmMsg!==undefined&&confirm(confirmMsg)==false){return false}$.post(url,{id:id,type:type,action:'delete'},function(xml){if($('status',xml).text()=='success'){if(typeof parentElement=='string'&&parentElement.charAt(0)=='/'){location.href=parentElement}else{var browser=browserDetect();if(browser.browser!='Explorer'){$(parentElement).slideUp("normal",function(){$(this).remove()})}else{$(parentElement).remove()}}return true}else{alert($('message',xml).text());return false}})}function approveItem(url,type,id,parentElement,displayType){if(typeof displayType==='undefined'){displayType=false}$.post(url,{id:id,type:type,action:'approve',displayType:displayType},function(xml){if($('status',xml).text()=='success'){if($('displayType',xml).text()=='comment'){$(parentElement).removeClass('unapproved');$(parentElement).find('.approve_comment_link').remove();$(parentElement).find('br').remove()}else{$(parentElement).slideUp("normal",function(){$(this).remove()})}return true}else{alert($('message',xml).text());return false}})}function removeSong(type,id,el){$.get('/_controller/playlist.php',{id:id,type:type,action:'removeSong'},function(xml){if($('status',xml).text()=='success'){var browser=browserDetect();if(browser.browser!='Explorer'){$(el).slideUp("normal",function(){$(this).remove()})}else{$(el).remove()}return true}else{alert($('message',xml).text());return false}})}function defaultText(type,el,default_text){if(type=='focus'){if($(el).val()==default_text){$(el).val('')}}else{if($(el).val()==''){$(el).val(default_text)}}}function like(type,id,alias,element,displayType){var url='/_frontend/_include/_controller/like.php';var likedHtml='';var unlikedHtml='';if(displayType=='heart'){likedHtml='<span class="nodisp">Unlike</span>';unlikedHtml='<span class="nodisp">Like this '+alias+'</span>'}else if(displayType=='text'){likedHtml='Unlike';unlikedHtml='Like this '+alias}else{var htmlSpan='<span class="button_cap"></span>';likedHtml='Unlike'+htmlSpan;unlikedHtml='Like this '+alias+htmlSpan}$.post(url,{id:id,type:type,displayType:displayType,action:'update'},function(xml){if($('status',xml).text()=='success'){if($('displayType',xml).text()=='remove'){$(element).remove()}else if($('action',xml).text()=='liked'){$(element).html(likedHtml).addClass('selected');$(element).attr('title','Unlike')}else{$(element).html(unlikedHtml).removeClass('selected');$(element).attr('title','Like this '+alias)}return true}else{alert($('message',xml).text());return false}})}function addToPlaylist(type,id,alias,element){var url='/_frontend/_include/_controller/like.php';var likedHtml='Added';var unlikedHtml='Add to Playlist';$(element).html(likedHtml).addClass('selected');$.post(url,{id:id,type:type,action:'addToPlaylist'},function(xml){if($('status',xml).text()=='success'){if($('action',xml).text()=='added'){$(element).attr('title','Added')}return true}else{alert($('message',xml).text());return false}})}function fan(id,element){var url='/_frontend/_include/_controller/like.php';$.post(url,{id:id,type:'Artist',action:'update'},function(xml){var htmlSpan='<span class="button_cap"></span>';if($('status',xml).text()=='success'){if($('action',xml).text()=='liked'){$(element).html("You're a Fan"+htmlSpan).addClass('selected')}else{$(element).html('Become a Fan'+htmlSpan).removeClass('selected')}return true}else{alert($('message',xml).text());return false}})}function friend(id,type,element){var url='/_frontend/_include/_controller/friend.php';$.post(url,{id:id,type:type,action:'update'},function(xml){var htmlSpan='<span class="button_cap"></span>';if($('status',xml).text()=='success'){if($('action',xml).text()=='friended'){$(element).html("Your Friend"+htmlSpan).addClass('selected')}else if($('action',xml).text()=='pending'){$(element).html("Friendship Pending"+htmlSpan).addClass('selected')}else{$(element).html('Add to Friends'+htmlSpan).removeClass('selected')}return true}else{alert($('message',xml).text());return false}})}function showLiked(type,elements,displayType){var url='/_frontend/_include/_controller/like.php';var likedHtml='';var unlikedHtml='';if(displayType=='heart'){likedHtml='<span class="nodisp">Unlike</span>'}else if(displayType=='text'){likedHtml='Unlike'}else{var htmlSpan='<span class="button_cap"></span>';likedHtml='Unlike'+htmlSpan}$.post(url,{elements:elements,type:type,displayType:displayType,action:'showLiked'},function(xml){if($('status',xml).text()=='success'){var json=$('liked',xml).text();$.each($.secureEvalJSON(json),function(i,val){$('[id^=song_'+val+']').find('.track_like').html(likedHtml).addClass('selected');$('[id^=song_'+val+']').find('.track_like').attr('title','Unlike')});return true}else{return false}})}function ulTabSwitch(containerId,contentId,el){$(el).parents('ul').find('li').removeClass('selected');$(el).parents('li').addClass('selected');$('#'+containerId+' > div').hide();$('#'+containerId+' #'+contentId).show()}function ulSort(url,elUl){$(elUl).sortable({handle:'.handle',update:function(){var order=$(elUl).sortable('serialize');$.post(url,{id:id,type:'Artist',action:'update'},function(xml){var htmlSpan='<span class="button_cap"></span>';if($('status',xml).text()=='success'){if($('action',xml).text()=='liked'){$(element).html("You're a Fan"+htmlSpan).addClass('selected')}else{$(element).html('Become a Fan'+htmlSpan).removeClass('selected')}return true}else{alert($('message',xml).text());return false}})}})}function loadPage(page){$(document.body).append('<iframe id="test_iframe" style="height: 1px; width: 1px;"></iframe>');$('#test_iframe').attr('src','http://www.purevolumedevel.com'+page);$('#container').html('');$('#test_iframe').load(function(){$(this).contents().find('script').html('');$(this).contents().find('script').remove();var contentHtml=$(this).contents().find('#container').html();var leaderboardAd=$(this).contents().find('#leaderboard_container').html();$('#container').html(contentHtml);$('#leaderboard_container').html(leaderboardAd);$('#test_iframe').remove()})}function show_zip_or_postal(element){if(element==null){var elementId='country'}else{var elementId=element.id}if(document.getElementById(elementId)){var country_id=document.getElementById(elementId).options[document.getElementById(elementId).selectedIndex].value;if(country_id=='235'||country_id=='43'||country_id=='United States'||country_id=='Canada'||country_id=='USA'){$('#zip_display').show();$('#city_display').hide();$('#city_display').find('input').val('')}else if(country_id!=''){$('#zip_display').hide();$('#zip_display').find('input').val('');$('#city_display').show()}else{$('#zip_display').hide();$('#zip_display').find('input').val('');$('#city_display').hide();$('#city_display').find('input').val('')}}};function show_state(){if(document.getElementById('country')){var country_id=document.getElementById('country').options[document.getElementById('country').selectedIndex].value;if(country_id=='235'||country_id=='United States'||country_id=='USA'||country_id=='43'||country_id=='Canada'){document.getElementById('state_display').style.display='block'}else{document.getElementById('state_display').style.display='none'}}};function charLimit(el,limit,infoId){var text=$(el).val();var textLength=text.length;if(textLength>limit){$('#'+infoId).html('You have reached '+limit+' characters!');$(el).val(text.substr(0,limit));return false}else{$('#'+infoId).html((limit-textLength));return true}}function userLoginMeta(loggedInObj){if(typeof loggedInObj!='undefined'){userLoginMeta.obj=loggedInObj}if(typeof userLoginMeta.obj!='undefined'){return userLoginMeta.obj}else{return{"name":"","link":"","type":"","id":""}}}function displayShareOverlay(name,type,id,meta){var user=userLoginMeta();var html='';html+='<div id="share_overlay" name="share_overlay" class="general_overlay">';html+='    <div class="overlay_top"><span class="nodisp">&nbsp;</span></div>';html+='    <div class="overlay_bg">';html+='        <form id="send_share_form" name="send_share_form" onsubmit="return false;">';html+='    		<div class="top_row">';html+='    			<h4>Share with friends';html+='					<a href="http://twitter.com/home?status=Check+out+'+meta.artist_name+'+on+@purevolume.com+ '+$.URLEncode('http://www.purevolume.com'+meta.artist_link+'/#artist_player')+'" class="share_icon" id="twitter_icon" title="share to twitter" target="_blank"><span class="nodisp">Share to Twitter</span></a>';html+='					<a href="http://www.facebook.com/share.php?u=http://www.purevolume.com'+meta.artist_link+'#audio_player" class="share_icon" id="facebook_icon" title="share to facebook" onclick="NewWindow(this.href,\'fbshare\',760, 510, false); return false;"><span class="nodisp">Share to Facebook</span></a>';html+='    				<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='				</h4>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>';html+='    		<div class="field_row share_content">';html+='    		    <div class="label_container">';html+='    		      	<img style="width: 100px; height: 100px;" src="'+meta.album_image+'" />';html+='    		    </div>';html+='    		    <div class="short_row">';html+='                   <div class="share_meta">';html+='						<h3>The song <a href="'+meta.album_link+'" class="song_name">'+meta.song_name+'</a></h3>';html+='						<p class="dark">By <a href="'+meta.artist_link+'" class="artist_name">'+meta.artist_name+'</a></p>';html+='						<p class="dark album_name">From the album <a href="'+meta.album_link+'" class="album_name">'+meta.album_name+'</a></p>';html+='    		    	</div>';html+='    		    </div>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>';if(user.type!='Listener'){html+='    		<div class="field_row">';html+='    		    <div class="label_container">';html+='    		      	<label>Your Name</label>';html+='    		    </div>';html+='    		    <div class="short_row">';html+='        			<input type="text" id="sender_name" name="sender_name" class="large">';html+='    		    </div>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>';html+='    		<div class="field_row">';html+='    		    <div class="label_container">';html+='    		      	<label>Your Email</label>';html+='    		    </div>';html+='    		    <div class="short_row">';html+='        			<input type="text" id="sender_email" name="sender_email" class="large">';html+='    		    </div>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>';html+='    		<div class="field_row">';html+='    		    <div class="label_container">';html+='    		      	<label>To</label>';html+='    		    </div>';html+='    		    <div class="short_row">';html+='					<textarea id="receivers" name="receivers" class="large" onclick=""></textarea>';html+='					<div class="help_text">Type your friends\' email addresses separated by commas. (<span id="recipients_count">0</span>/10) </div>';html+='    		    </div>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>'}else{html+='    		<div class="field_row">';html+='    		    <div class="label_container">';html+='    		      	<label>To</label>';html+='    		    </div>';html+='    		    <div class="short_row">';html+='					<div id="text"></div>';html+='        			<select id="select1" name="select1"></select>';html+='					<div class="help_text">Type your friends\' email addresses or PureVolume usernames separated by commas.</div>';html+='    		    </div>';html+='               <span id="recipient_count" class="small_text light">0/10</span>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>'}html+='    		<div class="field_row">';html+='    		    <div class="label_container">';html+='    		      	<label>Message</label>';html+='    		    </div>';html+='    		    <div class="short_row">';html+='       			<textarea id="message_text" name="message_text" maxlength="250"></textarea>';html+='    		    </div>';html+='               <span id="message_limit" class="small_text light">250</span>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>';html+='    		<input type="hidden" id="receiver_type" name="receiverType" value="'+type+'" />';html+='        	<input type="hidden" id="receiver_id" name="receiverId" value="'+id+'" />';html+='    		<div class="final_row">';html+='    			<input type="image" src="/_images/_buttons/share_overlay.gif" name="send_message" value="Send Message" />';html+='    			<a href="javascript:;" onclick="$(\'#share_overlay\').remove();">cancel</a>';html+='    		</div>';html+='        </form>';html+='        <div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    </div>';html+='    <div class="overlay_bottom"><span class="nodisp">&nbsp;</span></div>';html+='    <!--[if IE 6]><iframe id="ie_pos"></iframe><![endif]-->';html+='</div>';$('#overlay_container').html(html).show();window.scrollTo(0,0);$("#select1").fcbkcomplete({json_url:"/_webcode/friends_pulldown.php",cache:true,filter_case:false,filter_hide:true,maxitems_update_selector:'#recipient_count',newel:false});var onEditCallback=function(){var length=$(this).val().length;var maxlength=parseInt($(this).attr('maxlength'));$(this).parents('div.field_row').find('span#message_limit').text(length+'/'+maxlength)};$('#message_text').limitMaxlength({onEdit:onEditCallback});if($('#receivers').is('textarea')){$('#receivers').keydown(function(){var tmp=$('#receivers').val().split(',');var email_length=tmp.length;if(email_length>10){email_length=10}$('#email_count').html(email_length);if(tmp.length>10){var receiver_val=tmp;receiver_val.pop();receiver_val=receiver_val.join(',');alert('You may share with up to 10 emails.');$('#receivers').val(receiver_val)}})}$("form#send_share_form").submit(function(){if(user.type=='Listener'){var receivers=[];$('ul.holder li').each(function(){if($(this).attr('rel')!=null){receivers.push($(this).attr('rel'))}});var sender_name=false;var sender_email=false}else{var receivers=$('#receivers').val().split(',');var sender_name=$('#sender_name').val();var sender_email=$('#sender_email').val()}if(receivers.length==0){alert('Please add at least one friend.');return false}$.post("/_controller/share_overlay.php",{post:$("#message_text").val(),receivers:$.toJSON(receivers),sender_name:sender_name,sender_email:sender_email,type:type,id:id,action:"share"},function(xml){if($("status",xml).text()=='success'){$('#share_overlay').remove();displayShareSent()}else{alert($("message",xml).text())}});return false})}function displayAddToPlaylistOverlay(id,name){var html='';html+='<div id="add_to_playlist_overlay" name="add_to_playlist_overlay" class="general_overlay">';html+='    <div class="overlay_top"><span class="nodisp">&nbsp;</span></div>';html+='    <div class="overlay_bg">';html+='        <form id="add_to_playlist_form" name="add_to_playlist_form" onsubmit="return false;">';html+='    		<div class="top_row">';html+='    			<h4>Add Song to Playlist</h4>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>';html+='    		<div class="field_row">';html+='    		    <div class="label_container">';html+='    		      	<label>Select Playlist</label>';html+='    		    </div>';html+='    		    <div id="listener_playlists_list" class="short_row">';html+='    		    </div>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>';html+='    		<div class="field_row" id="new_playlist_row" style="display:none;">';html+='    		    <div class="label_container">';html+='    		      	<label>New Playlist Name</label>';html+='    		    </div>';html+='    		    <div class="short_row">';html+='       			<input id="new_playlist_name" name="new_playlist_name" />';html+='    		    </div>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>';html+='        	<input type="hidden" id="song_id" name="song_id" value="'+id+'" />';html+='    		<div class="final_row">';html+='    			<input type="submit" name="add_to_playlist" value="Add to Playlist" class="submit_button" />';html+='    			<a href="javascript:;" onclick="$(\'#add_to_playlist_overlay\').remove();">cancel</a>';html+='    		</div>';html+='        </form>';html+='        <div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    </div>';html+='    <div class="overlay_bottom"><span class="nodisp">&nbsp;</span></div>';html+='    <!--[if IE 6]><iframe id="ie_pos"></iframe><![endif]-->';html+='</div>';$('#overlay_container').html(html).show();$.get('/_controller/add_to_playlist_overlay.php',{action:'get_playlists'},function(xml){$('#listener_playlists_list').html($('html',xml).text());$('#selected_playlist').change(function(){if($(this).find('option:selected').val()=='new'){$('#new_playlist_row').show()}else{$('#new_playlist_row').hide();$('#new_playlist_name').val('')}})});window.scrollTo(0,0);$("form#add_to_playlist_form").submit(function(){$.post("/_controller/add_to_playlist_overlay.php",{song_id:$("#song_id").val(),playlist_id:$("#selected_playlist").val(),new_playlist_name:$("#new_playlist_name").val(),action:"add"},function(xml){if($("status",xml).text()=='success'){$('#add_to_playlist_overlay').remove()}else if($("status",xml).text()=='not_logged_in'){displayLoginOverlay('displayAddToPlaylistOverlay(\''+id+'\',\''+name+'\');')}else{alert($("message",xml).text())}});return false})}function displayMessageOverlay(name,type,id){var html='';html+='<div id="message_overlay" name="message_overlay" class="general_overlay">';html+='    <div class="overlay_top"><span class="nodisp">&nbsp;</span></div>';html+='    <div class="overlay_bg">';html+='        <form id="send_message_form" name="send_message_form" onsubmit="return false;">';html+='    		<div class="top_row">';html+='    			<h4>Send a message to <span class="blue">'+name+'</span></h4>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>';html+='    		<div class="field_row">';html+='    		    <div class="label_container">';html+='    		      	<label>Subject</label>';html+='    		    </div>';html+='    		    <div class="short_row">';html+='        			<input type="text" id="subject" name="subject" class="large">';html+='    		    </div>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>';html+='    		<div class="field_row">';html+='    		    <div class="label_container">';html+='    		      	<label>Message</label>';html+='    		    </div>';html+='    		    <div class="short_row">';html+='       			<textarea id="message_text" name="message_text"></textarea>';html+='    		    </div>';html+='    			<div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    		</div>';html+='    		<input type="hidden" id="receiver_type" name="receiverType" value="'+type+'" />';html+='        	<input type="hidden" id="receiver_id" name="receiverId" value="'+id+'" />';html+='    		<div class="final_row">';html+='    			<input type="image" src="/_images/_buttons/send_message_overlay.gif" name="send_message" value="Send Message" />';html+='    			<a href="javascript:;" onclick="$(\'#message_overlay\').remove();">cancel</a>';html+='    		</div>';html+='        </form>';html+='        <div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='    </div>';html+='    <div class="overlay_bottom"><span class="nodisp">&nbsp;</span></div>';html+='    <!--[if IE 6]><iframe id="ie_pos"></iframe><![endif]-->';html+='</div>';$('#overlay_container').html(html).show();window.scrollTo(0,0);$("form#send_message_form").submit(function(){$.post("/_controller/message_overlay.php",{subject:$("#subject").val(),post:$("#message_text").val(),receiverId:$("#receiver_id").val(),receiverType:$('#receiver_type').val(),action:"add"},function(xml){if($("status",xml).text()=='success'){$('#message_overlay').remove();displayMessageSent()}else if($("status",xml).text()=='not_logged_in'){displayLoginOverlay('displayMessageOverlay(\''+name+'\',\''+type+'\',\''+id+'\');')}else{alert($("message",xml).text())}});return false})}function displayLoginOverlay(jsFunc){var html='';html+='<div id="login_overlay" class="general_overlay">';html+='   <div class="overlay_top"><span class="nodisp">&nbsp;</span></div>';html+='   <div class="overlay_bg">';html+='       <form id="login_overlay_form" name="login_overlay_form" onsubmit="return false;">';html+='           <h4>Please Login</h4>';html+='           <div class="field_row top_row">';html+='               <div class="label_container">';html+='                   <label>Login Name</label>';html+='               </div>';html+='               <div class="short_row">';html+='                   <input id="username" name="username" type="text" />';html+='               </div>';html+='               <div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='           </div>';html+='';html+='           <div class="field_row">';html+='               <div class="label_container">';html+='                   <label>Password</label>';html+='               </div>';html+='               <div class="short_row">';html+='                   <input id="password" name="password" type="password" />';html+='               </div>';html+='               <div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='           </div>';html+='';html+='           <div class="final_row">';html+='               <input type="image" src="/_images/_buttons/login.gif" id="user_login_button" name="login" value="login" onclick="" />';html+='               <a href="javascript:;" onclick="$(\'#login_overlay\').remove();">cancel</a>';html+='               <div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='           </div>';html+='';html+='           <p style="margin: 15px 0 5px 0px;">Having trouble logging in? <a href="/login/forgot_password/">Retrieve your password.</a></p>';html+='       </form>';html+='';html+='    <div id="please_signup">';html+='        <h4>or <strong><a href="/signup">Signup for free.</a></strong></h4>';html+='        <a href="/signup/listener" id="signup_listener"><span class="nodisp">Listener Account</span></a>';html+='        <a href="/signup/artist" id="signup_artist"><span class="nodisp">Artist Account</span></a>';html+='    </div>';html+='    <div class="clear"><span class="nodisp">&nbsp;</span></div>';html+='</div>';html+='<div class="overlay_bottom"><span class="nodisp">&nbsp;</span></div>';html+='<!--[if IE 6]><iframe id="ie_pos"></iframe><![endif]-->';html+='</div>';$('#overlay_container').html(html).show();window.scrollTo(0,0);$("form#login_overlay_form").submit(function(){$.post("/_controller/login_overlay.php",{username:$("#username").val(),password:$("#password").val(),action:"login"},function(xml){if($("status",xml).text()=='success'){$('#login_overlay').remove();eval(jsFunc)}else{alert($("message",xml).text())}});return false})}function displayMessageSent(){var html='';html+='<div id="message_overlay" name="message_overlay" class="general_overlay">';html+='<div id="message_success" class="overlay_top"><span class="nodisp">&nbsp;</span></div>';html+='<div class="overlay_bg">';html+='   <div class="message_sent">';html+='       <p>Your message has been sent.</p>';html+='       <p><a href="javascript:;" onclick="$(\'#overlay_container\').html(\'\');" class="close_overlay">close</a></p>';html+='   </div>';html+='</div>';html+='<div class="overlay_bottom">';html+='   <span class="nodisp">&nbsp;</span>';html+='</div>';html+='<!--[if IE 6]><iframe id="ie_pos"></iframe><![endif]-->';html+='</div>';$('#overlay_container').html(html)}function displayShareSent(){var html='';html+='<div id="share_overlay" name="share_overlay" class="general_overlay">';html+='<div id="share_success" class="overlay_top"><span class="nodisp">&nbsp;</span></div>';html+='<div class="overlay_bg">';html+='   <div class="share_sent">';html+='       <p>Your recommendation has been sent.</p>';html+='       <p><a href="javascript:;" onclick="$(\'#overlay_container\').html(\'\');" class="close_overlay">close</a></p>';html+='   </div>';html+='</div>';html+='<div class="overlay_bottom">';html+='   <span class="nodisp">&nbsp;</span>';html+='</div>';html+='<!--[if IE 6]><iframe id="ie_pos"></iframe><![endif]-->';html+='</div>';$('#overlay_container').html(html)}function selectRadioButton(el,containerId){$('#'+containerId+' a').removeClass('checked');$(el).addClass('checked');$(el).parent('div').find('input[type=radio]').click()};function centerImage(el){var margin_left=Math.floor((parseInt($(el).width())/2)+2)*-1;$(el).css('margin-left',margin_left)}function addslashes(str){str=str.replace(/\'/g,'\\\'');str=str.replace(/\"/g,'\\"');str=str.replace(/\\/g,'\\\\');str=str.replace(/\0/g,'\\0');return str}function stripslashes(str){str=str.replace(/\\'/g,'\'');str=str.replace(/\\"/g,'"');str=str.replace(/\\\\/g,'\\');str=str.replace(/\\0/g,'\0');return str}function browserDetect(){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"},{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"},{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"}]};BrowserDetect.init();return BrowserDetect};