var meetingNum = 0;
var fieldDelim = "\t";
var lineDelim = "\n";

$(document).ready( function () {

  // Add styles
  $("#modelling_form, #meetings_form").find("input:text").addClass("text");
  $("#modelling_form, #meetings_form").find("input:submit").addClass("submit");


  /*

    Mallinnukset list

  */

  $("#modelling_list .delete").click( function () {
    if (confirm("Haluatko varmasti poistaa mallinnuksen?"))
    {
      $("#modelling_list").css("opacity", 0.5);
      var id = ($(this).attr("id").split("_"))[1];
      $.post(
        "/mallinnus_poista", 
        { 
          "id": id, 
          "cmf_pids": 
          id,"cmf_op": 
          "delete"
        }, 
        function () { window.location.href = "/mallinnukset2"; }
      );
    }
  });

  /*

    Kuntakäynnit list
 
  */

  $("#meetings_list .delete").click( function () {
    if (confirm("Haluatko varmasti poistaa käynnin?"))
    {
      $("#meetings_list").css("opacity", 0.5);
      var id = ($(this).attr("id").split("_"))[1];
      $.post(
        "/kuntakaynti_poista", 
        { 
          "id": id, 
          "cmf_pids": 
          id,"cmf_op": 
          "delete"
        }, 
        function () { window.location.href = "/kuntakaynnit"; }
      );
    }
  });

  /*

    Kuntakäynnit Add/edit form

  */

  // Add/edit form submission
  $("#meetings_form").submit( function (e) {
    var meetingField = '';
    $("#meetings div").each( function () {
      meetingField += 
        $(this).find("input:eq(0)").val() + fieldDelim +
        $(this).find("input:eq(1)").val() + lineDelim
        // $(this).find("textarea").val() + lineDelim;
    });
    $("#meetingField").val( meetingField );

    if ($("#meetings_form").hasClass("add_meeting"))
    {   
    }
    else if ($("#meetings_form").hasClass("update_meeting"))
    {
      e.preventDefault();
      $("#meetings_form").css("opacity", 0.5);
      $.post(
        "/kuntakaynti_muokkaa", 
        {
          "id": $("#pid").val(),
          "cmf_pids": $("#pid").val(),
          "cmf_op": "edit",
          "cmf_0_0": $("#q0").val(),
          "cmf_0_1": $("#q1").val(),
          "cmf_0_2": $("#q2").val(),
          "cmf_0_3": $("#q3").val(),
          "cmf_0_4": meetingField,
          "cmf_0_5": $("#q4").val()
        },
        function () {  window.location.href = "/kuntakaynnit"; }
      );
    }
  });

  // Add-mode
  if ($("#meetings_form").hasClass("add_meeting"))
    addMeeting();

  // Edit-mode
  else if ($("#meetings_form").hasClass("update_meeting"))
    getMeetings();

  // Add meeting -link
  $("#addMeeting").click( function () {
    addMeeting();
  });

});


function addMeeting (meetings) 
{ 
  if (meetings == undefined)
    meetings = ["", ""];
    // meetings = ["", "", ""];

  meetingNum++;

  $("#meetings").append(
    $(document.createElement("div"))
      .attr("id", "meeting_"+ meetingNum)
      .addClass("meeting")
      .css("display", "none")
      .fadeIn("500")
      .append(
      
        $(document.createElement("a"))
          .attr("href", "#")
          .text("Poista")
          .addClass("deleteMeeting")
          .click( function () {
            $(this).parent("div").remove();
          }),

        $(document.createElement("label"))
          .attr("for", "meeting_date_"+ meetingNum)
          .text("Tapaamisen päivämäärä "),

        $(document.createElement("input"))
          .attr("type", "text")
          .attr("id", "meeting_date_"+ meetingNum)
          .attr("name", "meeting_date_"+ meetingNum)
          .addClass("text")
          .val( meetings[0] ),
 
        $(document.createElement("label"))
          .attr("for", "meeting_person_"+ meetingNum)
          .text("Ketä tavattu"),

        $(document.createElement("input"))
          .attr("type", "text")
          .attr("id", "meeting_person_"+ meetingNum)
          .attr("name", "meeting_person_"+ meetingNum)
          .addClass("text")
          .val( meetings[1] )

        /*
         $(document.createElement("label"))
          .attr("for", "meeting_memo_"+ meetingNum)
          .text("Sovitut toimenpiteet"),

        $(document.createElement("textarea"))
          .attr("id", "meeting_memo_"+ meetingNum)
          .attr("name", "meeting_memo_"+ meetingNum)
          .text( meetings[2] )
        */
      )
  );
}

function getMeetings ()
{
  var meetingData = $("#meetingField").val();
  if (!meetingData) return false;

  var meetings = meetingData.split(lineDelim);
  $.each(meetings, function (i, meeting) {
    if (meeting)
    {
      meetingFields = meeting.split(fieldDelim);
      addMeeting(meetingFields);
    }       
  });
}
