kontur = {};
kontur.vcard = {};

kontur.vcard.json_encode = function (data) {
  var data = JSON.stringify(data, function(key, value) {
        return '[';
  });
}

kontur.vcard.addLink = function(id) {
  if (typeof id != 'string') id = String(id);
  var result = ''
    +'<a href="#" onclick="kontur.vcard.addId(' + id.replace(/^brbaz-object-vcard-/, '') + ')" >Hinzuf&uuml;gen</a>';
  return result;
};

kontur.vcard.deleteLink = function(id) {
  if (typeof id != 'string') id = String(id);
  var result = ''
    +'<a href="#" onclick="kontur.vcard.deleteId(' + id.replace(/^brbaz-object-vcard-/, '') + ')" >Entfernen</a>&nbsp;'
    +'<a href="http://vcard.reiseland-brandenburg.de/visitenkarte.php?mode=notizblock" target="brbazvcard" >Ansehen</a>';
  return result;
};

kontur.vcard.cleanData = function(data) {
  if (!data || !data.visitenkarte || !data.visitenkarte.ids) {
    data = {visitenkarte: {ids:[]}}  
  }  
  return data;
};

kontur.vcard.addId = function(id) {
  if (typeof id != 'string') id = String(id);
  $.ajax({
      type: "GET"
    , url: "http://session.reiseland-brandenburg.de/clientInterface.php?id=" + session.globalSessionId + "&format=json&jsoncallback=?"
    , data: ""
    , dataType: "json"
    //, contentType : "application/json"           
    , success: function(oldData){
      oldData = kontur.vcard.cleanData(oldData);
      oldData.visitenkarte.ids.push(id);
      //alert(JSON.stringify(oldData));      
      $.ajax({
          type: "GET"
        , url: "http://session.reiseland-brandenburg.de/clientInterface.php?id=" + session.globalSessionId + "&format=json&jsoncallback=?"
        , data: 'data=' + JSON.stringify(oldData)        
        , dataType: "json"
        //, contentType : "application/json"           
        , success: function(data){          
          //alert($.serialize(data));
        }
      });    
    }
  });
  $('#brbaz-object-vcard-' + id).html(kontur.vcard.deleteLink(id));
}

kontur.vcard.deleteId = function(id) {
  if (typeof id != 'string') id = String(id);
  $.ajax({
      type: "GET"
    , url: "http://session.reiseland-brandenburg.de/clientInterface.php?id=" + session.globalSessionId + "&format=json&jsoncallback=?"
    , data: ""
    , dataType: "json"
    //, contentType : "application/json"           
    , success: function(oldData){
      oldData = kontur.vcard.cleanData(oldData);
      var newData = oldData;
      //alert(JSON.stringify(oldData));
      var items = oldData.visitenkarte.ids;
      delete newData.visitenkarte.ids;
      newData.visitenkarte.ids = [];
      for (var i=0; i<=items.length; i++) {
        //alert(String(items[i]) + ' - ' + id + ' - ' + String(String(items[i]) == id));
        if (String(items[i]) == id) continue;
     if (items[i] == "undefined") continue;
        if (items[i] == null) continue;
     if (!items[i]) continue;
        newData.visitenkarte.ids.push(items[i]);
      }
      newData = kontur.vcard.cleanData(newData);
      //alert(JSON.stringify(newData));
      $.ajax({
          type: "GET"
        , url: "http://session.reiseland-brandenburg.de/clientInterface.php?id=" + session.globalSessionId + "&format=json&jsoncallback=?"
        , data: 'data=' + JSON.stringify(newData)
        , dataType: "json"
        //, contentType : "application/json"           
        , success: function(data){
          //alert(JSON.stringify(data));
        }
      });    
    }
  });
  $('#brbaz-object-vcard-' + id).html(kontur.vcard.addLink(id));
}

session = {};
session.globalSessionId = null; 

$(document).ready(function(){  
  $.ajax({
      type: "GET"
    , url: "http://session.reiseland-brandenburg.de/server.php?format=json&jsoncallback=?"
    , data: ""
    , dataType: "json"
    //, contentType : "application/json"           
    , success: function(globalSessionId){
      //alert(globalSessionId);
      session.globalSessionId = globalSessionId;
      $.ajax({
          type: "GET"
        , url: "http://session.reiseland-brandenburg.de/clientInterface.php?id=" + session.globalSessionId + "&format=json&jsoncallback=?"
        , data: ""
        , dataType: "json"
        //, contentType : "application/json"           
        , success: function(data){  
          data = kontur.vcard.cleanData(data);             
          $('.vcard').each(function(object) {
            //alert(object);
            var id = this.id;
            var savedObject = false;                                              
            for(var i in data.visitenkarte.ids) {
              if (data.visitenkarte.ids[i] == id.replace(/^brbaz-object-vcard-/, '')){
                  savedObject = true;
              }
            }
            if (savedObject) {
              $(this).html(kontur.vcard.deleteLink(id));
            } else {
              $(this).html(kontur.vcard.addLink(id));
            }                  
          });
        }
      });  
    }
  });  
  
});