$(document).ready ->


  #Message Frequency Toggle
  #Swap between weekly and monthly view of the messages

  $(".msgFreq li.week p").click ->
    if not $(this).hasClass "selected"
      $("li.month p").removeClass "selected"
      $(this).addClass "selected"
      $("span#week.freq").show()
      $("span#month.freq").hide()

  $(".msgFreq li.month p").click ->
    if not $(this).hasClass "selected"
      $("li.week p").removeClass "selected"
      $(this).addClass "selected"
      $("span#month.freq").show()
      $("span#week.freq").hide()

  $(".editNav a").click ->
    id = $(this).parent("li").attr("id")
    $(".editNav li").removeClass("active")
    $(this).parent("li").addClass("active")
    $(".setupContent").hide()
    $("#"+id+".setupContent").show()

  $(".fbOptions").sortable({
    stop: (event, ui) ->
      $(".fbOptions li").each (idx) ->
        $(this).find(".position span").text(idx+1)
	})
  $(".fbOptions").disableSelection()

  $(".reasons").sortable({
  })
  $(".reasons").disableSelection()

  #Show Expanded Seal
  $("#sves-expandedSeal").show()


  $(".header a.show").click ->
    $(this).parents(".header").next(".optionBody").toggle()
    $(this).find("i").toggle()

  $("#addRatingSub").click ->
    $("#addRating").toggleClass("active")
    $("#alphaOverlay").toggleClass("active")

  $("#addReviewSub").click ->
    $("#addReview").toggleClass("active")
    $("#alphaOverlay").toggleClass("active")

  $(".closeForm").click ->
    $(".addForm").removeClass("active")
    $("#alphaOverlay").removeClass("active")

  $('input:radio[name="miniprofile"]').change ->
    $(".fbDisplayOptions").toggleClass("active")
    if $(".fbDisplayOptions").hasClass("active")
      $('input:radio[name="fbDisplay"]').prop('disabled', false)
    else
      $('input:radio[name="fbDisplay"]').prop('disabled', true)

  $("a.miniProfileNav").click ->
    active = $("#miniProfile .content.active")
    activeCirc = $("#miniProfile .tabPosition i.active")
    active.hide().removeClass("active")
    activeCirc.removeClass("active")
    if $(this).attr("id") == "right"
      if active.attr("id") == "points"
        $("#miniProfile #about.content").addClass("active").show()
        $("#miniProfile .tabPosition #about").addClass("active")
      else
        active.next(".content").addClass("active").show()
        activeCirc.parent("li").next().find("i").addClass("active")
    else
      if active.attr("id") == "about"
        $("#miniProfile #points.content").addClass("active").show()
        $("#miniProfile .tabPosition #points").addClass("active")
      else
        active.prev(".content").addClass("active").show()
        activeCirc.parent("li").prev().find("i").addClass("active")

  myTimer = false
  disableHover = false

  $("a.seal").mouseenter ->
    if not disableHover
      $("#miniProfile").show()
      clearTimeout(myTimer)

  $("#miniProfile").mouseenter ->
    $("#miniProfile").show()
    clearTimeout(myTimer)

  $("a.seal").mouseleave ->
    if not disableHover
      myTimer = setTimeout( ->
        $("#miniProfile").hide();
      , 1000)

  $("#miniProfile").mouseleave ->
    myTimer = setTimeout( ->
      $("#miniProfile").hide();
    , 1000)

  $("input[value='unchanged']").click ->
    $("a.seal").removeClass("validate").removeClass("clickToValidate")

  $("input[value='validate']").click ->
    $("a.seal").removeClass("clickToValidate").addClass("validate")

  $("input[value='clickToValidate']").click ->
    $("a.seal").removeClass("validate").addClass("clickToValidate")

  $("input[value='displayOn']").change ->
    disableHover = false

  $("input[value='displayOff']").change ->
    disableHover = true

  $("input[value='displayHide']").change ->
    $(this).attr("checked","checked")

  $("input").change ->
    if $("input[value='unchanged']").is(":checked") and $("input[value='displayOff']").is(":checked")
      $("#displayHide.rb").removeClass("inactive")
      $("input[value='displayHide']").removeAttr("disabled")
    else
      $("#displayHide.rb").addClass("inactive")
      $("input[value='displayHide']").attr("disabled", "disabled")
      if $("input[value='displayHide']").is(":checked")
        $("input[value='displayHide']").removeAttr("checked")
        $("input[value='validationTab']").attr("checked", "checked")

  $("li.option button").click ->
    if not $(this).hasClass("active")
      active = $("li.option button").filter ".active"
      active.removeClass "active"
      active.next(".optionBody").slideToggle 800
    $(this).next(".optionBody").slideToggle 800
    $(this).toggleClass "active"

  #KeyPoints/MessageBkDown nav buttons
  $('ul.msgBreakdown li').hide();
  $('ul.msgBreakdown li:lt(4)').show();

  $("#keyButtons a").click ->
    activeCirc = $("#keyButtons i.active")
    id = activeCirc.attr("id")
    activeCirc.removeClass("active")
    $('ul.keyPoints li').hide();
    if $(this).attr("id") == "right"
      if id == "pg1"
        $('ul.keyPoints li').slice(4,8).show()
        $("#keyButtons #pg2").addClass("active")
      else
        $('ul.keyPoints li').slice(0,4).show()
        $("#keyButtons #pg1").addClass("active")
    else
      if id == "pg1"
        $('ul.keyPoints li').slice(4,8).show()
        $("#keyButtons #pg2").addClass("active")
      else
        $('ul.keyPoints li').slice(0,4).show()
        $("#keyButtons #pg1").addClass("active")

  $("#msgButtons a").click ->
    activeCirc = $("#msgButtons i.active")
    id = activeCirc.attr("id")
    activeCirc.removeClass("active")
    $('ul.msgBreakdown li').hide();
    if $(this).attr("id") == "right"
      if id == "pg1"
        $('ul.msgBreakdown li').slice(4,8).show()
        $("#msgButtons #pg2").addClass("active")
      else
        $('ul.msgBreakdown li').slice(0,4).show()
        $("#msgButtons #pg1").addClass("active")
    else
      if id == "pg1"
        $('ul.msgBreakdown li').slice(4,8).show()
        $("#msgButtons #pg2").addClass("active")
      else
        $('ul.msgBreakdown li').slice(0,4).show()
        $("#msgButtons #pg1").addClass("active")

  #Review Face Select
  $("ul.reviewFaces li a").click ->
    if not $(this).hasClass("active")
      active = $("ul.reviewFaces li a").filter ".active"
      active.removeClass "active"
      $(this).toggleClass "active"
    else
      $(this).removeClass "active"

  #Satisfaction Rating
  $(".selectScore li").click ->
    $(".selectScore li").removeClass("selected")
    $(this).addClass("selected")

  #Ratings
  values = ['Poor', 'Below Average', 'Average', 'Above Average', 'Excellent']
  
  $(".rateit").bind 'over', (event, value) ->
    $(this).next(".value").text(values[value-1])

  $(".rateit").mouseleave ->
    if $(this).next(".value").hasClass("notRated")
      $(this).next(".value").text("")
    else
      curr = $(this).next(".value").attr('id')
      $(this).next(".value").text(values[curr])

  $(".rateit").on 'reset', (event, value) ->
    $(this).next(".value").addClass("notRated")
    $(this).next(".value").text("")
    $(this).find(".rateit-reset").css('left', '-21px')

  $(".rateit").bind 'rated', (event, value) ->
    $(this).next(".value").text(values[value-1])
    $(this).next(".value").attr('id', value-1)
    $(this).next(".value").removeClass("notRated")
    reset = $(this).find(".rateit-reset")
    left = -21
    for i in [0...value]
      left = left + 21
    reset.css('left', "#{left}px")

  $("a.seal1.small").click ->
    $(".widget2.small").toggleClass("active")

  $(".widget2 .seal.big").click ->
    $(this).parents(".widget2").toggleClass("active")

  $("a.seal2").click ->
    left = (screen.width/2)-300
    top = (screen.height/2)-255
    newWindow = window.open("/accounts/company/43/validationPopUp/","Validation Page", 'toolbar=no, location=no, directories=no, status=no, menubar=no, resizable=no, copyhistory=no, scrollbars=yes, width=600, height=510, top='+top+', left='+left)
    if window.focus
      newWindow.focus()

  $("button.closeWidget").click ->
    $(".widget").hide()

  $("a.learn").click ->
    $(".widget ul.keyPoints").hide()
