function piwikTrack(preambel, url, title) {
  if (preambel == undefined)
    preambel = "piwikTrack: ";
  try {
    title = ""+preambel+((title != undefined) ? title : url);
    piwikTracker.setCustomUrl(url);
    piwikTracker.setDocumentTitle(title);
    piwikTracker.trackPageView();
    piwikTracker.enableLinkTracking();
  }catch(err) {
    C.log(err);
  }
}

function updateContent (url) {
  $("#search_site").searchUpdateMode();
  piwikTrack("updateContent: ", url, title);
  $.ajax({
    url: url,
    success: function (data) {
      $("#search_site").searchNormalMode();
      $('#container_sub_content').html (data);
      correctContentLinks ();
    }
  });
}
function updateContent2 (url) {
  $("#search_site").searchUpdateMode();
  piwikTrack("updateContent 2: ", url, title);
  $.ajax({
    url: url,
    success: function (data) {
      $("#search_site").searchNormalMode();
      //      var $neu = $(data);
      $('.content-full').html(data);
      //      $('.content-full').html (data);
      C.log(data);
    //      correctContentLinks ();
    }
  });
}

function correctContentLinks () {
  $('#container_sub_content .autooption').each(function() {
    var targetURI = $(this).attr('value');
    targetURI += (targetURI.indexOf('?') >= 0) ? '&' : '?';
    targetURI += 'type=' + xmlType;
    $(this).attr('value', targetURI);
//    $("#search_site").searchUpdateMode();
    C.log(".autooption found: preparing redirection to: "+targetURI);
  });
}


function initSiteSearch () {
}


function ajaxUpdate(url, successCallback, errorCallback, title) {
  var xmlType = 4; // only data
  var targetURI = url; 
  if (targetURI == "#" || targetURI == "/#" ) {
    C.log("ajaxUpdate: link is #. Stopping.");
    return;
  }

  piwikTrack("AJAX Update: ", url, title);

  $("#search_site").searchUpdateMode();
  targetURI += (targetURI.indexOf('?') >= 0) ? '&' : '?';
  targetURI += 'type=' + xmlType;
  //      C.log("updating content by: "+targetURI);
  $.ajax({
    url: targetURI,
    success: function (data) {
      $("#search_site").searchNormalMode();
      var $data = $("<div>").html(data);
      if ($data.length == 0) // do not work on real document
        return;
      //          this.$popup.append($data); //.context.getChildren());
      $('.content-full').empty().append($data);     
      //          $('.content-full').html(data);     
      C.log("ajaxUpdate: update sucessfull");
      if (successCallback != undefined)
        successCallback();
    //              C.log(data);
    },
    error: function (jqXHR, textStatus, errorThrown) {
      $("#search_site").searchNormalMode();
      $('.content-full').html("ERROR <br/>"+jqXHR+" <br/>"+ textStatus+" <br/>"+ errorThrown+"<br/>"+targetURI);     
      C.log("ajaxUpdate: error");
      if (errorCallback != undefined)
        errorCallback();
    //      C.log(data);
    }
  });
  
}



////////////////////////////////


$(function() {
            
  $("#search_site").searchPlugin({
    area : area,
    areaID : areaID,
    level : level
  });

  correctContentLinks();

  $("#search_site").searchInitializeSearch();
});



   

