var xhr = null;

$(document).ready(function()
{
  // Initialize members scrolls
  //$("#hsm-members-scroll").scrollable({easing: 'linear', speed: 300, circular: false});

  // Initialize watermarks on textboxes
  initializeWatermarks();

  // Set file upload popup
  $('#hsm-avatar-change-popup').dialog(
  {
    autoOpen: false,
    modal: true
  });
});

var scrollable_auto_prev_holder = [];
var scrollable_auto_next_holder = [];

function autoScrollStart(direction)
{
  var x = 0;
  var t = 0;

  var var_to_use;

  if (direction == 'prev')
  {
    var_to_use = scrollable_auto_prev_holder;
  }
  else
  {
    var_to_use = scrollable_auto_next_holder;
  }

  for (var y = 0; y < 1500; y++)
  {
    t = y * 1000;

    if (direction == 'prev')
    {
      var_to_use[x] = setTimeout("$('.prev').click()", t);
    }
    else
    {
      var_to_use[x] = setTimeout("$('.next').click()", t);
    }

    x++;
  }
}

function autoScrollStop(direction)
{
  var var_to_use;

  if (direction == 'prev')
  {
    var_to_use = scrollable_auto_prev_holder;
  }
  else
  {
    var_to_use = scrollable_auto_next_holder;
  }

  for (var x = 0; x < var_to_use.length; x++)
  {
    if (direction == 'prev')
    {
      clearTimeout(var_to_use[x]);
    }
    else
    {
      clearTimeout(var_to_use[x]);
    }
  }

  scrollable_auto_prev_holder = [];
  scrollable_auto_next_holder = [];
}

function initializeWatermarks()
{
  $(".watermark").each(function()
  {
     $tb = $(this);
     if ($tb.val() != this.title && $tb.val() != "")
     {
        $tb.removeClass("watermark");
     }
     else
     {
        $tb.val(this.title);
        $tb.addClass("watermark");
     }
  });

  $(".watermark").focus(function()
  {
     $tb = $(this);
     if ($tb.val() == this.title)
     {
        $tb.val("");
        $tb.removeClass("watermark");
     }
  });


//  $(".watermark").blur(function()
//  {
//     $tb = $(this);
//     if ($.trim($tb.val()) == "")
//     {
//        $tb.val(this.title);
//        $tb.addClass("watermark");
//     }
//  });
}

function toggleShowMemberName(div_name)
{
  var name = $('#' + div_name);

  if (name.css('display') == 'none')
  {
    name.css('display', 'block');
  }
  else
  {
    name.css('display', 'none');
  }
}

function toggleSubMenu()
{
  var menu = $('#sub-menu');

  if (menu.css('display') == 'none')
  {
    menu.css('display', 'block');
  }
  else
  {
    menu.css('display', 'none');
  }
}

function fbs_click(url)
{
  //var u = location.href;
  var t = document.title;
  window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(url)+'&t='+encodeURIComponent(t),'sharer','toolbar=0,status=0,width=626,height=436');
  return false;
}


function hsmSelectCheckbox(name)
{
  var selected_span = $('#' + name + '-span');
  var selected_field = $('#' + name);

  if (selected_field.attr("checked"))
  {
    selected_field.removeAttr("checked");
    selected_span.css('background-position', '0 0');
  }
  else
  {
    selected_field.attr("checked", "checked");
    selected_span.css('background-position', '0 -16px');
  }
}

function hsm_messages_mark_as_read()
{
  var form = $('#member-messages-form');
  var action = 'ajax_message_markread';
  var form_data = 'action=' + action + '&' + form.serialize();

  $("#member-messages-form input[type='checkbox']:checked").each(function(i) {
    $('#message-row-' + this.value).css('display', 'none');
  });

  $.post(
    ADMINURLAJAX,
    form_data
  )

  return false;
}

function hsm_messages_delete()
{
  if (!confirm('Are you sure?'))
  {
    return false;
  }

  var form = $('#member-messages-form');
  var action = "ajax_messages_delete";
  var form_data = 'action=' + action + '&' + form.serialize();

  $("#member-messages-form input[type='checkbox']:checked").each(function() {
    $('#message-row-' + this.value).css('display', 'none');
  });

  $.post(
    ADMINURLAJAX,
    form_data
  )

  return false;
}

function checkbox_select_all(checkbox_group)
{
  var span_input = $('.' + checkbox_group + '-span');

  if ($('.' + checkbox_group).attr('checked'))
  {
    $('.' + checkbox_group).removeAttr('checked')
    span_input.css('background-position', '');
  }
  else
  {
    $('.' + checkbox_group).attr('checked', 'checked');
    span_input.css('background-position', '0 -16px');
  }
}

/*
 * Member Post section
 */
function hsm_post(method)
{
  var form = $('#hsm-post-form');
  //var form_data = 'action=' + 'hsm_post' + '&method=' + method + '&' + form.serialize();
  var id = form.get(0).id.value;
  var post_author = form.get(0).post_author.value;
  var post_title = form.get(0).post_title.value;
  //var post_content = tinyMCE.getInstanceById('post_content').getBody().innerHTML;
  var post_content = tinyMCE.get('post_content').getContent();
  var error = false;

  // Reset error messages
  $('.hsm-field-error').css('display', 'none');

  // Validations
  if (post_title == '')
  {
    error = true;
    $('#error-post_title').text('Title is required.');
    $('#error-post_title').css('display', 'block');
  }

  if (post_content == '')
  {
    error = true;
    $('#error-post_content').text('Message content is required.');
    $('#error-post_content').css('display', 'block');
  }

  if (!error)
  {
    $.post(
      ADMINURLAJAX,
      {
        'action' : 'hsm_post',
        'id' : id,
        'post_author' : post_author,
        'post_title' : post_title,
        'post_content' : post_content,
        'method' : method
      },
      function(result)
      {
        // Redirect to profile page
        window.location = MEMBERURL + 'posts/';
      }
    );
  }
}

function hsm_posts_delete()
{
  if (!confirm('Are you sure?'))
  {
    return false;
  }

  var form = $('#hsm-posts-form');
  var action = "ajax_posts_delete";
  var form_data = 'action=' + action + '&' + form.serialize();

  $("#hsm-posts-form input[type='checkbox']:checked").each(function(i) {
    $('#post-row-' + this.value).css('display', 'none');
  });

  $.post(
    ADMINURLAJAX,
    form_data
  )

  return false;
}

function hsm_profile_edit(section)
{
  var form = $('#hsm-profile-edit-' + section + '-form');
  var action = "ajax_profile_edit_" + section;
  var form_data = 'action=' + action + '&' + form.serialize();

  // Reset error messages
  $('.hsm-field-error').css('display', 'none');

  $.post(
    ADMINURLAJAX,
    form_data,
    function(result)
    {
      if (result == 'success')
      {
        // Redirect to profile page
        //window.location = MEMBERURL + 'profile/';

        switch (section)
        {
          case 'account':
            $('#user_email').attr('disabled', 'disabled');
            $('#user_pass').attr('disabled', 'disabled');
	  
     		$('#user_email').addClass('no-border');
    		$('#user_pass').addClass('no-border');

            $('#account-section-button-save').css('display', 'none');
            $('#account-section-button-edit').css('display', 'block');
          break;

          case 'details':
            $('#first_name').attr('disabled', 'disabled');
            $('#last_name').attr('disabled', 'disabled');
            $('#countrySelect').attr('disabled', 'disabled');
            $('#stateSelect').attr('disabled', 'disabled');
            $('#signup_pcode').attr('disabled', 'disabled');
            $('#hsm_signup_form_uni').attr('disabled', 'disabled');
            $('#hsm_signup_uni_other').attr('disabled', 'disabled');
            $('#signup_age').attr('disabled', 'disabled');
            $('#signup_gender').attr('disabled', 'disabled');
		    $('#first_name').addClass('no-border');
		    $('#last_name').addClass('no-border');
		    $('#countrySelect').addClass('no-border');
		    $('#stateSelect').addClass('no-border');
		    $('#signup_pcode').addClass('no-border');
		    $('#hsm_signup_form_uni').addClass('no-border');
		    $('#hsm_signup_uni_other').addClass('no-border');
		    $('#signup_age').addClass('no-border');
		    $('#signup_gender').addClass('no-border');

            $('#details-section-button-save').css('display', 'none');
            $('#details-section-button-edit').css('display', 'block');
          break;

          case 'options':
		    $('.hsm-custom-button-label').css('color','#A4A4A4');
		    $('#options_cover').css('display', 'block');
		    $('#start_date').attr('disabled', 'disabled');
		    $('#start_date').addClass('no-border');
            $('#options-section-button-save').css('display', 'none');
            $('#options-section-button-edit').css('display', 'block');
          break;

          case 'about':
            $('#hsm_member_about').attr('disabled', 'disabled');
		    $('#hsm_member_about').addClass('no-border');
	  	    $('#hsm_member_about').css('background','none');
            $('#about-section-button-save').css('display', 'none');
            $('#about-section-button-edit').css('display', 'block');
          break;
		  
		  case 'connect':
            $('#hsm_member_facebook_url').attr('disabled', 'disabled');
            $('#hsm_member_twitter_url').attr('disabled', 'disabled');
		    $('#profile-connect-edit').css('display','none');
            $('#connect-section-button-save').css('display', 'none');
            $('#connect-section-button-edit').css('display', 'block');
			window.location = MEMBERURL;
		  break;
		  
		  case 'goals':
            $('#hsm_member_goal_1').attr('disabled', 'disabled');
            $('#hsm_member_goal_2').attr('disabled', 'disabled');
            $('#hsm_member_goal_3').attr('disabled', 'disabled');
            $('#hsm_member_goal_4').attr('disabled', 'disabled');
            $('#hsm_member_goal_5').attr('disabled', 'disabled');
	  	    $('#hsm_member_goal_1').css('background','none');
	  	    $('#hsm_member_goal_2').css('background','none');
	  	    $('#hsm_member_goal_3').css('background','none');
	  	    $('#hsm_member_goal_4').css('background','none');
	  	    $('#hsm_member_goal_5').css('background','none');
			
		    $('#hsm_member_goal_1').addClass('no-border');
		    $('#hsm_member_goal_2').addClass('no-border');
		    $('#hsm_member_goal_3').addClass('no-border');
		    $('#hsm_member_goal_4').addClass('no-border');
		    $('#hsm_member_goal_5').addClass('no-border');
            $('#goals-section-button-save').css('display', 'none');
            $('#goals-section-button-edit').css('display', 'block');
		  break;
        }
      }
      else
      {
        $('#hidden-div').html(result);
      }
    }
  );

  return false;
}

function hsm_profile_edit_enable(section)
{
  switch (section)
  {
    case 'account':
      $('#user_email').attr('disabled', '');
      $('#user_pass').attr('disabled', '');
	  
      $('#user_email').removeClass('no-border');
      $('#user_pass').removeClass('no-border');

      $('#account-section-button-save').css('display', 'block');
      $('#account-section-button-edit').css('display', 'none');
    break;

    case 'details':
		$('#first_name').attr('disabled', '');
		$('#last_name').attr('disabled', '');
		$('#countrySelect').attr('disabled', '');
		$('#stateSelect').attr('disabled', '');
		$('#signup_pcode').attr('disabled', '');
		$('#hsm_signup_form_uni').attr('disabled', '');
		$('#hsm_signup_uni_other').attr('disabled', '');
		$('#signup_age').attr('disabled', '');
		$('#signup_gender').attr('disabled', '');
		$('#first_name').removeClass('no-border');
		$('#last_name').removeClass('no-border');
		$('#countrySelect').removeClass('no-border');
		$('#stateSelect').removeClass('no-border');
		$('#signup_pcode').removeClass('no-border');
		$('#hsm_signup_form_uni').removeClass('no-border');
		$('#hsm_signup_uni_other').removeClass('no-border');
		$('#signup_age').removeClass('no-border');
		$('#signup_gender').removeClass('no-border');

      $('#details-section-button-save').css('display', 'block');
      $('#details-section-button-edit').css('display', 'none');
    break;

    case 'options':
	  $('.hsm-custom-button-label').css('color','#000');
	  $('#options_cover').css('display', 'none');
	  $('#start_date').attr('disabled', '');
	  $('#start_date').removeClass('no-border');
      $('#options-section-button-save').css('display', 'block');
      $('#options-section-button-edit').css('display', 'none');
    break;

    case 'about':
      $('#hsm_member_about').attr('disabled', '');
      $('#hsm_member_about').removeClass('no-border');
	  $('#hsm_member_about').css('background','white');
      $('#about-section-button-save').css('display', 'block');
      $('#about-section-button-edit').css('display', 'none');
    break;
	
	case 'connect':
      $('#hsm_member_facebook_url').attr('disabled', '');
      $('#hsm_member_twitter_url').attr('disabled', '');
		$('#profile-connect-edit').css('display','block');
		$('#connect-section-button-save').css('display', 'block');
		$('#connect-section-button-edit').css('display', 'none');
	
	break;
	
	case 'goals':
      $('#hsm_member_goal_1').attr('disabled', '');
      $('#hsm_member_goal_2').attr('disabled', '');
      $('#hsm_member_goal_3').attr('disabled', '');
      $('#hsm_member_goal_4').attr('disabled', '');
      $('#hsm_member_goal_5').attr('disabled', '');
      $('#hsm_member_goal_1').removeClass('no-border');
      $('#hsm_member_goal_2').removeClass('no-border');
      $('#hsm_member_goal_3').removeClass('no-border');
      $('#hsm_member_goal_4').removeClass('no-border');
      $('#hsm_member_goal_5').removeClass('no-border');
		$('#hsm_member_goal_1').css('background','white');
		$('#hsm_member_goal_2').css('background','white');
		$('#hsm_member_goal_3').css('background','white');
		$('#hsm_member_goal_4').css('background','white');
		$('#hsm_member_goal_5').css('background','white');
      $('#goals-section-button-save').css('display', 'block');
      $('#goals-section-button-edit').css('display', 'none');
	break;
  }
}

function popupProfileChangePic()
{
  $('#hsm-avatar-change-popup').dialog('open');
}

/*
 * Events
 */
function hsm_event_post()
{
  var form = $('#hsm-event-post-form');
  var action = "ajax_event_post";
  var form_data = 'action=' + action + '&' + form.serialize();

  var schedule_date = form.get(0).schedule_date.value;
  var schedule_hh = form.get(0).schedule_hh.value;
  var schedule_mm = form.get(0).schedule_mm.value;
  var title = form.get(0).title.value;
  var info = form.get(0).info.value;

  var error = false;

  // Reset error messages
  $('.hsm-field-error').css('display', 'none');

  // Validations
  if (schedule_date == '')
  {
    error = true;
    $('#error-schedule_date').text('Please specify the vali date/time.');
    $('#error-schedule_date').css('display', 'block');
  }

  if (schedule_hh == '' || schedule_mm == '' || isNaN(schedule_hh) || isNaN(schedule_mm))
  {
    error = true;
    $('#error-schedule_date').text('Please specify the valid date/time.');
    $('#error-schedule_date').css('display', 'block');
  }

  if (title == '')
  {
    error = true;
    $('#error-title').text('Even title is required.');
    $('#error-title').css('display', 'block');
  }

  if (info == '')
  {
    error = true;
    $('#error-info').text('Valid event information is required.');
    $('#error-info').css('display', 'block');
  }

  if (!error)
  {
    $.post(
      ADMINURLAJAX,
      form_data,
      function(result)
      {
        if (result == 'success')
        {
          // Redirect to profile page
          window.location = MEMBERURL + 'events/';
        }
        else
        {
          $('#hidden-div').html(result);
        }
      }
    );
  }

  return false;
}

function hsm_event_action(action)
{
  var form = $('#hsm-event-attend-form');
  var form_data = 'action=ajax_event_action_' + action + '&' + form.serialize();
  var event_id = form.get(0).event_id.value;

  $.post(
    ADMINURLAJAX,
    form_data,
    function(result)
    {
      switch (action)
      {
        case 'remove':
          if (result == 'success')
          {
            window.location = MEMBERURL + 'events';
          }
        break;

        case 'cancel_attend':
          if (result == 'success')
          {
            window.location = MEMBERURL + 'events/?id=' + event_id;
          }
        break;

        case 'attend':
          if (result == 'success')
          {
            window.location = MEMBERURL + 'events/?id=' + event_id;
          }
        break;
      }
    }
  );
}
