$(document).ready(function () {
  PreparePage();
});

$.generateId = function() {
        return arguments.callee.prefix + arguments.callee.count++;
};
$.generateId.prefix = 'jqu_';
$.generateId.count = 0;

$.fn.generateId = function() {
        return this.each(function() {
                this.id = $.generateId();
        });
};


function PreparePage() {
  //GoToContacts();
  
  //$("#GroupMembersTBody input").change(function() { AddNewRow(); });
  //$("#AddMemberButton").click(function() { AddNewMemberRow(); });
  //$("#RemoveMemberButton").click(function() { RemoveLastMemberRow(); });
  //AddNewMemberRow();
  
  $('#ArtistGroupAttendForm').submit(function() {
    SendingForm();
    var options = {
      url: 'ilmo.php?js_flag=1', 
      dataType: 'json',
      success:    function(data) {
          FormSent();
          if (data.IsSuccess) {
            ShowSuccess(data.SuccessHtml);
          } else {
            ShowError('<p>Tarkasta seuraavat tiedot:</p>' + data.Message);
          }
          window.scroll(0,0);
      }
    };
    $(this).ajaxSubmit(options); 
    // return false to prevent normal browser submit and page navigation 
    return false; 
  });

}

function AddNewMemberRow() {
  var CurrentCount = 0;
  var Table = $("#GroupMembersTBody")[0];
  if (!Table.rows) {
    CurrentCount = 0;
  } else {
    CurrentCount = Table.rows.length;
  }
  var NewCount = CurrentCount+1;
  var TR = Table.insertRow(CurrentCount);
  var TD1 = TR.insertCell(0);
  var TD2 = TR.insertCell(1);
  var TD3 = TR.insertCell(2);
  var TD4 = TR.insertCell(3);
  var TD5 = TR.insertCell(4);
  
  $(TD1).html(NewCount + '. <input type="hidden" name="GroupMemberList[]" value="' + NewCount + '" />');
  $(TD2).html('<input type="text" name="GroupMemberFirstName_' + NewCount +'" size="10" value="" />');
  $(TD3).html('<input type="text" name="GroupMemberLastName_' + NewCount +'" size="15" value="" />');
  $(TD4).html('<input type="text" name="GroupMemberInstrument_' + NewCount +'" size="15" value="" />');
  $(TD5).html('<input type="text" name="GroupMemberTechInfo_' + NewCount +'" size="15" value="" />');
  //alert(NewCount);
  
  UpdateMemberRowButtons();
}

function SendingForm() {
  $("#AttendFormErrorDiv").hide();
  $("#SubmitButton").val("Odota...");
  $("#SubmitButton").attr("disabled","disabled");
  $("#WaitImage").show();  
}
function FormSent() {
  $("#SubmitButton").val("Lähetä ilmoittautuminen");
  $("#SubmitButton").removeAttr("disabled");
  $("#WaitImage").hide();  
}
function ShowSuccess(infoHtml) {
  $("#AttendFormDiv").html(infoHtml);
}
function ShowError(infoHtml) {
  $("#AttendFormErrorDiv").html(infoHtml).show();
}

function RemoveLastMemberRow() {
  var Table = $("#GroupMembersTBody")[0];
  var LastRow = $("#GroupMembersTBody tr:last");
  if (LastRow) {
    Table.deleteRow(Table.rows.length - 1);
  }
  
  UpdateMemberRowButtons();
}

function UpdateMemberRowButtons() {

  var Rows = $("#GroupMembersTBody tr");
  if (Rows.length <= 1) {
    $("#RemoveMemberButton").attr("disabled","disabled");
  } else {
    $("#RemoveMemberButton").removeAttr("disabled");
  }
}
