$(document).ready(function(e) {
  // Attach click to tabs in the s2w section of srsite
  var s2w_tabs = $('.s2w-tab-option');
  if(s2w_tabs.length > 0) {
    s2w_tabs.each(function(key, s2wtab){
      $(s2wtab).bind('click', s2wtab, s2wTabSwap);
    });
  }
  
  //Xml feed option of publisher platform
  var xml_check = $('#pub-xml-option');
  if(xml_check.length > 0) {
    xml_check.bind('click', toggleXmlOption);
  }
  
  //Publisher Admin interface for the more information boxes
  var question_boxes = $('.pub-img-info');
  if(question_boxes.length > 0) {
    question_boxes.each(function(key, quest_box){
      $(quest_box).bind('click', quest_box.id, toggleQuestionInformation);
    });
  }
  
  //Publiser Admin interface binding the BG color boxes
  var color_boxes = $('.pp-cb-box');
  if(color_boxes.length > 0) {
    color_boxes.each(function(key, color_box){
      var inputbox = $(color_box).children('input');
      var colorbox = $(color_box).children('div');
      inputbox.ColorPicker({
          onChange: function (hsb, hex, rgb) {
            inputbox.val('#' + hex);
            colorbox.css('background-color', '#' + hex);
          }
      });
    });
  }
  //Game platform Left image scroll options
  var option_box =$('input[name=leftimg_scroll_on]');
  if(option_box.length > 0) {
   option_box.bind('click',option_box, toggleXYOptions) 
   if(option_box.attr('checked')) {
     $('#leftimg-options').slideDown();
   }
  }
  //Game platform Right image scroll options
  var option_box =$('input[name=rightimg_scroll_on]');
  if(option_box.length > 0) {
   option_box.bind('click',option_box, toggleXYOptions) 
   if(option_box.attr('checked')) {
      $('#rightimg-options').slideDown();
    }
  }
  // Incentivied options
  var incent_check = $("#incent_inv_enable");
  if(incent_check.length > 0) {
    incent_check.bind('click',incent_check, handleInviteCheckbox)
  }
  
  // Details For Portals
  var detail_links = $('.details-link');
  detail_links.each(function(){
    if($(this)[0].href){
      set_detailsModal($(this));
    }
  });
  
  /*
    Sets the tab selection of the portal portion of social 2 web. Used for deep links
  */
  if  (get_url_parameter("tab") == "portal") { 
    var tab4 = $('#s2w-tab4-control');
    tab4.click();
  }
  
  var contact_us = $('#contactus_menu');
  if(contact_us.length > 0) {
    set_contactModal(contact_us);
  }
});


function get_url_parameter(name) {
    name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
    var regexS = "[\\?&]" + name + "=([^&#]*)";
    var regex = new RegExp(regexS);
    var results = regex.exec(window.location.href);
    if (results == null){
      return "";
    } else {
      return results[1];
    }
}

/* Function for controlling the tabs in the Srpoints S2W customize section
 * @param Event event the even that contains the current tab the user is selecting.
 * @author Joshua Totemwongse
 */
function s2wTabSwap(event) {
  var tab = event.data;
  
  var s2w_tabs = $('.s2w-tabs');
  s2w_tabs.hide();
  // Turn off selected tabs
  var s2w_tab_controls = $('.s2w-tab-option');
  s2w_tab_controls.each(function(){
    var id = $(this).attr('id');
    var end_string = id.substring(id.length - 9, id.length);
    if(end_string == '-selected') {
      $(this).attr('id', id.substring(0, id.length - 9));
    }
  });
  if(tab.id == 's2w-tab1-control') {
    tab.id = tab.id + '-selected';
    $('#s2w-tab1').show();
  } else if(tab.id =='s2w-tab2-control') {
    tab.id = tab.id + '-selected';
    $('#s2w-tab2').show();
  } else if(tab.id =='s2w-tab3-control') {
    tab.id = tab.id + '-selected';
    $('#s2w-tab3').show();
  } else {
    tab.id = tab.id + '-selected';
    $('#s2w-tab4').show();
  }
}

/* Function for the gameplatform used to toggle the incentivized invite options
 *@param Event event the javascript even that contains the object that was clicked in the data field
 * @author Joshua Totemwongse
 */
function handleInviteCheckbox(event) {
  var incent_state = event.data;
  if(incent_state.attr('checked')) {
    $("#incent_container").show();
    if ($("#vc_points_for_referral").val() == "0") {
      $("#vc_points_for_referral").val("");
      $("#incentivized_vc_amount").focus();
    }
  } else {
    $("#vc_points_for_referral").val("0");
    $("#incent_container").hide();
  }
}

/* Function for the game platform that toggles the left and right image boxes for x and y repeating
 * @param Event event the event that contains the object we want to pass through
 * @author Joshua Totemwongse
 */
function toggleXYOptions(event) {
  var input = event.data;
  if(input.selector.indexOf('left') >= 0) {
    var left_options = $('#leftimg-options');
    if(input.attr('checked')) {
      left_options.slideDown();
    } else {
      left_options.slideUp();
    }
  } else if (input.selector.indexOf('right') >= 0) {
    var right_options = $('#rightimg-options');
    if(input.attr('checked')) {
      right_options.slideDown();
    } else {
      right_options.slideUp();
    }
  }
}

/*
 * On the Social 2 WEb config page this will show the user where their banner, top bar, etc will go by hightlighting the areas on a mini version.
 * @author Joshua Totemwongse
 */
function toggleQuestionInformation(event) {
  var which_box = event.data;
  if(which_box == 'fanpage-411') {
    $('#fanpage-info').slideToggle();
  } else if(which_box == 'splash-411') {
    var splashpage = $('#splashpage-info');
    var splashbox =  $('#splash-box');
    if(splashpage.css("display") == "none") {
      splashbox.css('background-color','#970792');
      splashbox.css('color','#FFF');
      splashpage.slideDown();
    } else {
      splashbox.css('background-color','white');
      splashbox.css('color','#666');
      splashpage.slideUp();
    }
  } else if(which_box == 'validation-411'){
    var validationpage = $('#validation-info');
    if(validationpage.css("display") == "none") {
      validationpage.slideDown();
    }else {
      validationpage.slideUp();
    }
  } else if(which_box == 'bgcolor-411'){
    var bgcolorpage = $('#bgcolor-info');
    if(bgcolorpage.css("display") == "none") {
      bgcolorpage.slideDown();
    }else {
      bgcolorpage.slideUp();
    }
  } else if(which_box == 'tabcolor-411'){
    var tabcolorpage = $('#tabcolor-info');
    if(tabcolorpage.css("display") == "none") {
      tabcolorpage.slideDown();
    }else {
      tabcolorpage.slideUp();
    }
  } else if(which_box == 'banner-411') {
    var bannerpage = $('#bannerpage-info');
    if(bannerpage.css("display") == "none") {
      $('#pp-banner').css('background-color','red');
      $('#pp-banner').css('color','#FFF');
      bannerpage.slideDown();
    } else {
      $('#pp-banner').css('background-color','white');
      $('#pp-banner').css('color','#666');
      bannerpage.slideUp();
    }
  } else if(which_box == 'top-411') {
    var topbarpage = $('#topbarpage-info');
    if(topbarpage.css("display") == "none") {
      topbarpage.slideDown();
      $('#header-box').css('background-color','orange');
      $('#header-box').css('color','#FFF');
    } else {
      topbarpage.slideUp();
      $('#header-box').css('background-color','white');
      $('#header-box').css('color','#666');
    }
  } else if(which_box == 'left-411') {
    var leftbarpage = $('#leftbarpage-info');
    if(leftbarpage.css("display") == "none") {
      leftbarpage.slideDown();
      $('#left-box').css('background-color','green');
      $('#left-box').css('color','#FFF');
    } else {
      leftbarpage.slideUp();
      $('#left-box').css('background-color','#FFF');
      $('#left-box').css('color','#666');
    }
  } else if(which_box == 'emailmsg-411') {
    var emailpage = $('#emailmsg-info');
    if(emailpage.css("display") == "none") {
      emailpage.slideDown();
    } else {
      emailpage.slideUp();
    }
  } else if(which_box == 'iframe-411') {
    var iframepage = $('#iframe-info');
    if(iframepage.css("display") == "none") {
      iframepage.slideDown();
      $('#iframe-box').css('background-color','#FDD300');
    } else {
      iframepage.slideUp();
      $('#iframe-box').css('background-color','#FFF');
    }
  } else if(which_box == 'iframesize-411') {
    var iframepage = $('#iframe-heightwidth');
    if(iframepage.css("display") == "none") {
      iframepage.slideDown();
    } else {
      iframepage.slideUp();
    }
  } else if(which_box == 'iframedomain-411') {
    var iframepage = $('#iframe-domain');
    if(iframepage.css("display") == "none") {
      iframepage.slideDown();
    } else {
      iframepage.slideUp();
    }
  } else if(which_box == 'app-fbid') {
    var iframepage = $('#fbapp-id');
    if(iframepage.css("display") == "none") {
      iframepage.slideDown();
    } else {
      iframepage.slideUp();
    }
  } else if(which_box == 'like-411') {
    var likeinfo = $('#like-info');
    if(likeinfo.css("display") == "none") {
      likeinfo.slideDown();
    } else {
      likeinfo.slideUp();
    }
  } else if (which_box == 'invite-411') {
    jQuery('#hidden-invite-411').slideToggle();
  } else if (which_box == 'achieve-411') {
     jQuery('#hidden-achievement-411').slideToggle();
  } else if(which_box == 'favicon-411') {
    var favinfo = $('#favicon-info');
    if(favinfo.css("display") == "none") {
      favinfo.slideDown();
    } else {
      favinfo.slideUp();
    }
  } else if (which_box == 'premier-411') {
    jQuery('#hidden-premier-411').slideToggle();
  } else {
    var rightbarpage = $('#rightbarpage-info');
    if(rightbarpage.css("display") == "none") {
      rightbarpage.slideDown();
      $('#right-box').css('background-color','blue');
      $('#right-box').css('color','#FFF');
    } else {
      rightbarpage.slideUp();
      $('#right-box').css('background-color','white');
      $('#right-box').css('color','#666');
    }
  }
  return false;
}

/*
 * Toggles the xml feed input box for publishers to specify their special offer items
 * @author Joshua Totemwongse
 */
function toggleXmlOption() {
  $('#pub-xml-url').toggle();
}

function show_hide_gst_or_usc(){
  var ci = $("input[name=country]").val();
  var ci_lower = ci.toLowerCase();
  if(ci_lower == 'canada' || ci_lower == 'ca'){
    $(".usc_num").hide(300);
    $(".gst_num").show(300);
  }else{
    if(ci_lower == 'uk' ||
       ci_lower == 'united kingdom' ||
       ci_lower == 'england' ||
       ci_lower == 'scotland' ||
       ci_lower == 'wales' ||
       ci_lower == 'ireland'){
       $(".usc_num").show(300);
    }else {
      $(".usc_num").hide(300);
    }
    $(".gst_num").hide(300);
  }
}
function toggle_div(div_id){
  $("#" + div_id).toggle(300);
}

function slide_toggle_div(div_id){
  $("#" + div_id).slideToggle(300);
}

function swap_divs(div_id1,div_id2){
  $("#" + div_id2).toggle(0,function(){
      $("#" + div_id1).toggle();
        });
}

function createapp_change_site() {
	var dropdown = document.getElementById("sitedropdown");
	var sitename = document.getElementById("sitename");
	var facebook_app_id = document.getElementById("facebook_app_id");
    var app_url_label = document.getElementById("application_url_label");
    if (!dropdown || !sitename || !facebook_app_id) return;

    if (dropdown.options[dropdown.selectedIndex].value == -1) {
        sitename.style.display = 'inline';
    } else {
        sitename.style.display = 'none';
    }

    if (dropdown.options[dropdown.selectedIndex].value == 1) {
        facebook_app_id.style.display = 'inline';
    } else {
        facebook_app_id.style.display = 'none';
    }

    if (app_url_label && (dropdown.options[dropdown.selectedIndex].value == 182 || dropdown.options[dropdown.selectedIndex].value == 2511)) {
        app_url_label.innerHTML = 'App&nbsp;Store&nbsp;URL:';
    } else {
        app_url_label.innerHTML = 'Application&nbsp;URL:';
    }
}

/**
 * Sets the modal up for the contact us.
 * @param Jquery Object contact_link the current link details for a agreement object
 * @author Joshua Totemwongse
 */
function set_contactModal(contact_link){
  $(contact_link).fancybox({
      'width': 760,
      'height': 800,
      'Overlayopacity': '0',
      'autoDimensions': true,
      'autoScale': true,
      'transitionIn': 'fade',
      'transitionOut': 'fade',
      'titleShow': false,
      'padding': '0',
      'type': 'iframe',
      'scrolling' : 'yes'
  });
}

/**
 * Sets the modal up for the details. Iframe is used so we can have a different form and not activate the main form
 * @param Jquery Object detail_link the current link details for a agreement object
 * @author Joshua Totemwongse
 */
function set_detailsModal(detail_link){
  $(detail_link).fancybox({
      'width': 598,
      'height': 296,
      'Overlayopacity': '0',
      'autoDimensions': true,
      'autoScale': true,
      'transitionIn': 'elastic',
      'transitionOut': 'elastic',
      'titleShow': false,
      'padding': '0',
      'type': 'iframe',
      'scrolling' : 'no'
  });
}

/* Support for auto settings on apppubplatform page. */
function pubplat_autosettings_init() {
  jQuery('div.settings_toggle_container input.radiobutton').change(toggle_advanced);
}
function toggle_advanced(ev) {
  var $ = jQuery;
  var target = $(ev.target);
  var outer = target.parents('div.settings_toggle_container').first();
  outer.find('div.advanced').toggle();
  outer.toggleClass('advanced-mode');
  if (ev.target.id.indexOf("custom") != -1) {
    outer.parent().nextAll('.hidden-pub-411').first().slideDown();
  } else {
    outer.parent().nextAll('.hidden-pub-411').first().slideUp();
  }
}

/* Trigger for s2w portal shortcut */
function s2w_p_trigger_init() {
  jQuery('body').keydown(function(ev) {
    if (ev.which == 80) {
      jQuery('.app_s2w_link').hide();
      jQuery('.app_s2w_link_portal').show();
    }
  });
  jQuery('body').keyup(function(ev) {
    if (ev.which == 80) {
      jQuery('.app_s2w_link').show();
      jQuery('.app_s2w_link_portal').hide();
    }
  });
}
