var toggled=false;

$(document).ready(function () {

// div sorting links
$('.jqSortBtnTitle').click(function() {
setSortDir('jqSortTitle');
//sortDivs('jqSortTitle');
});

$('.jqSortBtnAuthor').click(function() {
//sortDivs('jqSortAuthor');
setSortDir('jqSortAuthor');
});

$('.jqSortBtnDate').click(function() {
//sortDivs('jqSortDate');
setSortDir('jqSortDate');
});

// share popup
$('.jqShowShare').click(function() {
$('#shareContent').toggle();
});

// share hrefs
var fbTitle = $('#jqFacebook').attr('href')
var liTitle = $('#jqLinkedin').attr('href')
$('#jqFacebook').attr('href', 'http://www.facebook.com/share.php?u=' + document.location.href + '&t=' + fbTitle );
$('#jqTwitter').attr('href', 'http://twitter.com/home?status=Currently%20reading%20' + document.location.href);
$('#jqDel').attr('href', 'http://del.icio.us/post?v=4&amp;url=' + document.location.href + '&title=' + fbTitle );
$('#jqLinkedin').attr('href', 'http://www.linkedin.com/shareArticle?mini=true&url=' + document.location.href + '&title=' + liTitle );

// slide a div
$('.jqDrawerBtn').click(function() {
$(this).siblings('.jqDrawer').slideToggle('fast')
$('#shareSent').hide();
});

$("#shareTo").click(function() {
if($(this).val() == 'Please enter a valid email') {
$(this).val('')
$(this).removeClass('txtDRed')
}
});

$("#shareFrom").click(function() {
if($(this).val() == 'Please enter a valid email') {
$(this).val('')
$(this).removeClass('txtDRed')
}
});

$("#shareSubmit").click(function(){
var emailToVal = $("#shareTo").val();
var emailFromVal = $("#shareFrom").val();
var textVal = $("#shareMessage").val();
var subjectVal = $("#shareSubject").val();
var hrefVal = document.location.href
var dataString = 'subj=' + subjectVal + '&href=' + hrefVal + '&dest_addr='+ emailToVal+ '&sorc_addr=' + emailFromVal+ '&text=' + textVal;  

if(emailToVal == '' || emailToVal == 'Please enter a valid email') {
$("#shareTo").val('Please enter a valid email')
$("#shareTo").addClass('txtDRed')
return false;
}

if(emailFromVal == '' || emailFromVal == 'Please enter a valid email') {
$("#shareFrom").val('Please enter a valid email')
$("#shareFrom").addClass('txtDRed')
return false;
}

$.ajax({  
  type: "POST",  
  url: "/mt/mt.cgi?__mode=dimensionalmail",  
  data: dataString,  
  success: function() {  
$('.shareEmail').slideToggle('fast')
$('#shareSent').show();

}
});
return false;
});


// drop down goto url.  Any drop down with id="jqJumpList" will go to the url in the drop down value
  $('#jqJumpList').change(function() {	
if($(this).val()!=''&& $(this).val().substring(0,4) != 'http') {
	window.location = 'http://www.dfaus.com/' + $(this).val();
} else if($(this).val()!='') {
	window.location = $(this).val();
}
    });

// open window for adobe onDemands
  $('.jqOnDemand').click(function() {
       var od = $('#jqOnDemandUrl').val();      
       window.open(od,'','scrollbars=no,menubar=no,height=600,width=800,resizable=yes,toolbar=no,location=no,status=no');
   
  });

// hide/show tab content
  $('.jqTabs .jqTab').click(function() {
     $(this).removeClass('tabUnSel').addClass('tabSel')
     $(this).siblings().addClass('tabUnSel').removeClass('tabSel') 
      var whichDiv = $(this).attr('id') + 'Div'
     $('#' + whichDiv).show().siblings('.jqTabDiv').hide();

  });
 $('.jqTabs .jqTabAll').click(function() {
     $(this).parent().parent().siblings('.jqTabDiv').show();
     $(this).removeClass('tabUnSel').addClass('tabSel') 
     $(this).siblings().addClass('tabUnSel').removeClass('tabSel') 
  });

$('.jqTabs .jqTab').hover(function() {     
$(this).not('.tabSel').removeClass('tabUnSel')     
},function(){    
$(this).not('.tabSel').addClass('tabUnSel')
});

$('.jqTabs .jqTabAll').hover(function() {     
$(this).not('.tabSel').removeClass('tabUnSel')     
},function(){    
$(this).not('.tabSel').addClass('tabUnSel')
});


// hide all siblings of any element with class="jqHideSiblings"
  $('.jqHideSiblings').click(function(){ 
       if(toggled==false){$('.jqHideSiblings').html('Show'); toggled=true;} 
       else{$('.jqHideSiblings').html('Hide');toggled=false;} 
       $(this).parent().siblings().toggle();
       return false; 
   });

// accordian animation for onDemands with multiple chapters
	$('.accordian ul').addClass('none');
	// hide all items
	$('.accordian ul').hide();
	//show the first
	$('.accordian ul:first').show();
	$('.accordian ul:first').parent().addClass('bgLightGray');
	$('.accordian li a').click(
		function() {
			// show next sibling of the clicked row
			var clickedRow = $(this).next();	  
     		if((clickedRow.is('ul')) && (clickedRow.is(':visible'))) {	 
        		return false;
        	}
			if((clickedRow.is('ul')) && (!clickedRow.is(':visible'))) {	
				// hide current 
       			$('.accordian ul:visible').slideUp('normal');
        		clickedRow.slideDown('normal');
				// add an overiding gray css class to prevent orange hover
				$(this).parent().addClass('bgLightGray')
				// remove the override from other items
				$(this).parent().siblings().removeClass('bgLightGray')
        clickedRow.parent().removeClass('cornerOff');
        $(this).parent().siblings().addClass('cornerOff')
        		return false;
        	}
      	}
    );

		// orange hover	
		$(".hovOrange").hover(
		function(){
			$(this).addClass("bgOrange");
		 }, 
		function() {
			$(this).removeClass("bgOrange");
		 }
	);		
	
	// launch button hover
		$('.btnDiv').hover(function() {
			$(this).find('.thumbImg').addClass('borderOrange')
			$(this).find('.btnImg').attr("src","http://www.dfaus.com/images/buttons/launch_on.gif");
		}, function() {
			$(this).find('.thumbImg').removeClass('borderOrange')
			$(this).find('.btnImg').attr("src","http://www.dfaus.com/images/buttons/launch_off.gif");
	});	

// mouseover buttons
var btnSrc;
    $('.jqBtn').hover(function() { 
        btnSrc = $(this).find('img').attr('src');       
        var dot = btnSrc.lastIndexOf('.'); 
        var fName = btnSrc.substr(0,dot);
        var fType = btnSrc.substr(dot,btnSrc.length); 
        $(this).find('img').attr('src', fName+ '_over' + fType);  

    },function() {
       $(this).find('img').attr('src', btnSrc);
    });
    
    $('.jqBtn').each(function() {
        preSrc = $(this).find('img').attr('src');        
        var dot = btnSrc.lastIndexOf('.'); 
        var fName = btnSrc.substr(0,dot);
        var fType = btnSrc.substr(dot,btnSrc.length);         
        preload(fName+ '_over' + fType)  
    });

// search stuff
var isFocused = false;
// add default text
if($('#searchBoxInput').val() === '') {
         $('#searchBoxInput').val('Search');
      }

$('#searchBoxInput').focus(function() {
isFocused = true;   
$(this).addClass('searchBoxInputOver');   
// remove default text on focus
if($(this).val() === 'Search') {
         $(this).val('');
      }
   });

$('#searchBoxInput').blur(function() {
isFocused = false;
$('#searchBoxForm').stop().animate({height:20},300,"linear")
$(this).removeClass('searchBoxInputOver');
if($(this).val() === '') {
$('#searchBoxBtn').removeClass('searchFocus');
$('#searchBoxBtn').addClass('searchMute');
         $(this).val('Search');
      }
   });
// animate search box
$('#searchBoxInput').hover(function() {    
$('#searchBoxForm').stop().animate({height:38},300,"linear")
}, function(){
   if(isFocused == false) {
$('#searchBoxForm').stop().animate({height:20},300,"linear")
$(this).removeClass('searchBoxInputOver');
}
});

// un-mute go button
$('#searchBoxInput').keyup(function() {
$('#searchBoxBtn').addClass('searchFocus');
$('#searchBoxBtn').removeClass('searchMute');
});

// table striping Any table with the class 'striped' will be striped
	$('table.jqStriped').each(function() {
        //$(this).find('tbody tr').not('.noStripe').not([th]).filter(':even').addClass('bgLightGray');
        $(this).find('tbody tr:not([th]):odd').not('.noStripe').addClass('bgLightGray');
});

// table row hover
$('.jqRowHov td').hover(function() {
$(this).parent().find('td').addClass('bgMedGray')
},function() {
$(this).parent().find('td').removeClass('bgMedGray')
});

// hover for nav incase no css hover
$('.navTab li').hover(function() {
     $(this).addClass('navHov ');
     },function(){    
 $(this).removeClass('navHov ');
});

// keep top level nav item highlighted
$('.navTabSub').hover(function() {
     $(this).parent().addClass('bgMenuBlue');
     },function(){    
 $(this).parent().removeClass('bgMenuBlue');
});

// Glossary stuff
var currGloss = ''
var item;
// get each glossary text and text position from the main body text
  $('.jqGloss').mousemove(function(e) {
     currGloss = $(this).text().toLowerCase();  

     // find every glossary item hidden on the page
     $('.jqGlossMatch').each(function() {
         var currItem = $(this).text().toLowerCase();

         // if it matches the body text item position and show the div
              if(currItem  == currGloss || currItem+'s'  == currGloss ) {              
              item = $(this).parent().parent().parent();
              item.show();
                 if(e.pageX+item.width() < $(window).width()) {
                 item.css({top: e.pageY-item.height()-20}).css({left: e.pageX-20});
                 item.parent().find('.jqGlossPoint').css({left: 20});
                 } else {
                 item.css({top: e.pageY-item.height()-20}).css({left: e.pageX-item.width()+20})
                 item.parent().find('.jqGlossPoint').css({left: item.width()-20});
                 }
              }
     });
   });

 $('.jqGloss').mouseout(function() {
    item.hide();
});

// go button hover
$('#searchBtn').hover(function() {
     $(this).css({'background-image':"url('http://www.dfaus.com/images/buttons/btn_go_over.png')"})
     },function(){   
$(this).css({'background-image':"url('http://www.dfaus.com/images/buttons/btn_go.png')"})
   });
}); // end on document ready


// called by the video player to resize its parent div to be the same size
function getDims(wd,ht,id,morph){
	if (wd) {
	$('#'+id).width(wd);	
	}
if (ht) {
	// if sent height is more than current height then run animation
	if (ht > $('#'+id).height() && morph == true) {		
		 $('#'+id).animate( { height:ht}, 1000 )

	} else {
		$('#'+id).height(ht);
	}	
}
}

// preload images for hovers
function preload() {
    for(var i = 0; i<arguments.length; i++) {
        $("<img>").attr("src", arguments[i]);
    }
}

// used by video player to create html chapter links and descriptions
function drawChapters(div,chp) {
var vidPar = $('#'+div);
var chapParId = 'chaps' + div;
vidPar.after('<div class="mediaChapters" id="' + chapParId + '"><div class="mediaChapter mediaChapHide"><span class="txt txtB">Chapters</span> (<span class="txtBlue txtXSmall hideChaps">hide</span>)</div><div class="mediaChapCont"></div></div>')
var chapsShow = true;
$('.hideChaps').click(function() {
if(chapsShow == true) {
$('.mediaChapCont').hide();
$(this).text('show');
chapsShow = false;
} else {
$('.mediaChapCont').show();
$(this).text('hide')
chapsShow =true;
}    
});

for(i=chp.length-1; i>=0; i--) {
$('#' + chapParId).find('.mediaChapCont').append('<div class="mediaChapter dispBlock"><a href="javascript:sendCue(' + chp[i][2] + ')"><span class="txtBlue txtB dispBlock">' + chp[i][0] + '<span class="txt txtXSmall txtP"> (' + chp[i][3] + ')</span></span><span class="txt">' + chp[i][1] + '</span></a></div>')
}
}

// send cuepoint back to video player for chapter jumps
function sendCue(txx,chap) {
	var flash = getMovie('player');
    flash.cp(txx,chap);
}

// get video player for external interface calls
function getMovie(movieName) {
    if (navigator.appName.indexOf("Microsoft") != -1) {
        return window[movieName];
    } else {
        return document[movieName];
    }
} 

// read a cookie - used by video player to decide if the video bumper should be shown
function readCookie(nam) {
            var tC = document.cookie.split('; ');
            for (var i = tC.length - 1; i >= 0; i--) {
            var x = tC[i].split('=');
            if (nam == x[0]) {
            return unescape(x[1]);
}
}
             return null;
}            

// write a cookie
function writeCookie(nam,val) {
            document.cookie = nam + '=' + escape(val) + '; path=/';
}
   
function adobe_load(od) {
window.open(od,'','scrollbars=no,menubar=no,height=600,width=800,resizable=yes,toolbar=no,location=no,status=no');
}

// div sorting
var titleSort = 'des';
var dateSort = 'des';
var authorSort = 'des';
var sortDir = 'des';

function setSortDir(type) {
// sort title fields
 if(type == 'jqSortTitle') {
  if(titleSort == 'asc') {
     titleSort = 'des'; 
     sortDir = 'des';
  } else {
    sortDir = 'asc';
    titleSort = 'asc'
   }
  sortDivs('jqSortTitle');
 }
// sort by date fields
 if(type == 'jqSortDate') {
  if(dateSort == 'asc') {
     dateSort = 'des'; 
     sortDir = 'des';
  } else {
    sortDir = 'asc';
    dateSort = 'asc'
   }
  sortDivs('jqSortDate');
 }

// sort by Author fields
if(type == 'jqSortAuthor') {
  if(authorSort == 'asc') {
     authorSort = 'des'; 
     sortDir = 'des';
  } else {
    sortDir = 'asc';
    authorSort = 'asc'
   }
  sortDivs('jqSortAuthor');
 }
}


function sortDivs(type) {
var rows = []; 
// put html of divs to be sorted in array
  $(".libModule").each(function(){ 
  var sortContent = $(this).find(".libModuleInfo div." +type).text().toLowerCase();
 rows[rows.length] = [sortContent,this]; 
  }); 

// sort array
if(sortDir == 'asc') {
  rows.sort( 
   function(a,b){ 
    if (a[0] < b[0]) { 
     return -1 
    } else if (a[0] > b[0]) { 
     return 1 
    } else { 
     return 0; 
    } 
   } 
  ); 
} 

else {
rows.sort( 
   function(a,b){ 
    if (a[0] > b[0]) { 
     return -1 
    } else if (a[0] < b[0]) { 
     return 1 
    } else { 
     return 0; 
    } 
   } 
  ); 
}
// rewrite divs in order of sorted array
  $.each(rows, function() { 
    this[1].parentNode.appendChild(this[1]); 
   } 
  );
}

// cufon text replacement

Cufon.replace('.txtSection',{hover: true, fontFamily: 'Avenir LT'})
('.txtTitle')
('.txtCufTabs',{hover: true, fontFamily: 'avenit bold'})
('.leftModuleTitle',{fontFamily: 'Avenir LT'})
('.txtMediaTitle',{hover: true, fontFamily: 'Avenit bold'})
('.leftModuleTitleB',{fontFamily: 'avenit bold'})
('.txtSubTitle',{fontFamily: 'Avenit bold'})
('.txtChartTitle',{fontFamily: 'Avenit bold'})
('.nextStepsTitle',{fontFamily: 'avenit bold'})
('.imageMe',{fontFamily: 'Avenir LT'})
('.imageMeB',{fontFamily: 'avenit bold'})
('.imageMeHov',{hover: true, fontFamily: 'Avenir LT'})
('.imageMeBHov',{hover: true, fontFamily: 'avenit bold'});






