var globalebaySuchStr = '';
var bIsUserSearch = false;
var sContentOnPage = '';

function showEbayArticle(ebaySuchStr) {
  sContentOnPage = ''; 
  document.getElementById("lightbox-content").innerHTML = '<div class="ebay-wait-div">&nbsp;</div>';
  ShowLightBox('lightbox-content');
  globalebaySuchStr = ebaySuchStr; 
  bIsUserSearch = false;
  getEbayResults();
}

function showEbayArticleOnPage(ebaySuchStr, sDivId) {
  globalebaySuchStr = ebaySuchStr;
  sContentOnPage = sDivId; 
  bIsUserSearch = false;
  getEbayResults();
}

function doEbayUserSearch() {
  bIsUserSearch = true;
  globalebaySuchStr = document.getElementById("ebay_usersearchtfield").value;
  getEbayResults();  
}

function getEbayResults() {
  var url = "http://svcs.ebay.com/services/search/FindingService/v1";
      url += "?OPERATION-NAME=findItemsByKeywords";
      url += "&SERVICE-VERSION=1.0.0";
      url += "&SECURITY-APPNAME=Web-Evol-31e2-4d1d-aeab-c404d43a3deb";
      url += "&GLOBAL-ID=EBAY-DE";
      url += "&RESPONSE-DATA-FORMAT=JSON";
      url += "&callback=_cb_findItemsByKeywords";
      url += "&REST-PAYLOAD";
      url += "&keywords=" + globalebaySuchStr;
      url += "&paginationInput.entriesPerPage=88";

  // Submit the request 
  s=document.createElement('script'); // create script element
  s.src= url;
  document.body.appendChild(s);      
}

// Parse the response and build an HTML table to display search results
function _cb_findItemsByKeywords(root) {
  var items = root.findItemsByKeywordsResponse[0].searchResult[0].item || [];   
  var html = [];
  var htmlOnPage = [];
  
  html.push('<div class="ebay-search-usersearch">Ihre aktuelle Such nach:<input id="ebay_usersearchtfield" type="text" class="ebay-usersearchfield" value="' + globalebaySuchStr + '" />');
  html.push('<input type="button" onclick="doEbayUserSearch()" class="ebay-usersearchtbutton" value="neu suchen"' + globalebaySuchStr + '" />');
  html.push('benutzen Sie dieses Suchfeld, um Ihre eigene Suche bei Ebay zu starten');
  html.push('<div id="ebay-zurueck-wrap"><a href="#" onclick="HideLightBox(); return false;">zurück</a></div>');
  html.push('</div>');

  if (items.length == 0) {
    if (sContentOnPage == '') {
      iCutBei = globalebaySuchStr.lastIndexOf(' ');
      if ( (iCutBei == -1 || iCutBei == 0) || bIsUserSearch ) {
        html.push('<div class="ebay-search-searchresult"><div id="affilinet-ebay-notfound-msg">leider wurden für diesen Artikel keine Treffer bei ebay gefunden</div></div>'); 
        document.getElementById("lightbox-content").innerHTML = html.join("");
      } else {
         globalebaySuchStr = globalebaySuchStr.substring(0, iCutBei);
         getEbayResults();
      }
    }     
    return;    
  }
  

  html.push('<div class="ebay-search-searchresult"><table width="100%" border="0" cellspacing="0" cellpadding="6"><tbody>');
  htmlOnPage.push('<div class="ebay-search-searchresult"><h3 style="text-align: right">bei <img style="position: relative; top: 4px;" src="fileadmin/preisvergleich/template/img/ebay_mittel.png" />gefunden</h3><table width="100%" border="0" cellspacing="0" cellpadding="6"><tbody>');
  
  //html.push(var_dump(items[0], 'html'));

  for (var i = 0; i < items.length; ++i) {
    var item     = items[i];
    var title    = item.title;
    var pic      = item.galleryURL;
    var viewitem = item.viewItemURL;
    var location = item.location;
    var subtitle = "";
    if (item.subtitle) {
      subtitle = item.subtitle;
    }          
    
    var sellingStatus = item.sellingStatus;
    var currentPriceCurr = '';

//    var fucking_ie_CompatibilityStatement = 'currentPriceCurr = sellingStatus[0].currentPrice[0].'+ String.fromCharCode(64) + 'currencyId'; 
//    eval(fucking_ie_CompatibilityStatement);
//    var currentPriceCurr = sellingStatus[0].currentPrice[0].@currencyId;

    var currentPriceCurr = var_dump(sellingStatus[0].currentPrice[0], 'html');
    currentPriceCurr = currentPriceCurr.split('"')[3];
    
    var currentPriceVal = sellingStatus[0].currentPrice[0].__value__;
    
    var listingInfo = item.listingInfo;
    var buyItNowAvailable = listingInfo[0].buyItNowAvailable[0];
    var endTime = we_formatiereEbayDatum(listingInfo[0].endTime[0]);  
    var listingType = listingInfo[0].listingType[0];  
    var sInfoZurAuktion = "";
    
    if (listingType == 'Auction') {
//      sInfoZurAuktion = '<div class="info-auktion-auktiontype">Auktion</div>';
      sInfoZurAuktion += '<div class="info-auktion-endetdat">Auktion endet am: <br />' + endTime + '</div>';      
    } else {
      sInfoZurAuktion = '<div class="info-auktion-auktiontype"></div>';
    } 
    
    if ( (i % 2) == 0 ) {
      var rowClass = 'ebaytab-rowgerade'
    } else {
      var rowClass = 'ebaytab-rowungerade'
    }
    
    if (null != title && null != viewitem) {
      html.push('<tr class="' + rowClass + '"><td>' + '<img src="' + pic + '" border="0">' + '</td>' + 
      '<td><a href="' + viewitem + '" target="_blank">' + title + '</a><div class="ebay-auktion-subtitle">' + subtitle + '</div></td>' + 
      '<td>' + currentPriceVal + '&nbsp;' + currentPriceCurr + '</td>' + 
      '<td class="auction-info-td">' + sInfoZurAuktion + '</td>' +       
      '</tr>');

      htmlOnPage.push('<tr class="' + rowClass + '"><td>' + '<img src="' + pic + '" border="0">' + '</td>' + 
      '<td><a href="' + viewitem + '" target="_blank">' + title + '</a><div class="ebay-auktion-subtitle">' + subtitle + '</div></td>' + 
      '<td>' + currentPriceVal + '&nbsp;' + currentPriceCurr + '</td>' + 
      '<td class="auction-info-td">' + sInfoZurAuktion + '</td>' +       
      '</tr>');
    }
  }
  
  html.push('</tbody></table></div><div class="clearer">&nbsp;</div>');
  htmlOnPage.push('</tbody></table></div>');
  
  if (sContentOnPage == '') { 
    document.getElementById("lightbox-content").innerHTML = html.join("");
  } else {
    document.getElementById(sContentOnPage).innerHTML = htmlOnPage.join("");
  }  
}  // End _cb_findItemsByKeywords() function


var curr_lb_div;
var is_modal = false;

function ShowLightBox(lb_div, isModal)
{
  document.getElementById(lb_div).style.display='block';
  document.getElementById('lightboxfade').style.display='block';
  curr_lb_div = lb_div;
  if (isModal)
  is_modal = true;
  else is_modal = false;
}

function HideLightBox()
{
  if (document.getElementById(curr_lb_div))
  {
    document.getElementById(curr_lb_div).style.display='none';
    document.getElementById('lightboxfade').style.display='none';
    curr_lb_div = '';
  }
}


function we_formatiereEbayDatum(sIn) {
  var sOut = "";
  try {
    var aParts = sIn.split("-");
    var aParts2 = aParts[2].split("T"); 
    var aParts3 = aParts2[1].split(":");   
    sOut = aParts2[0] + "." + aParts[1] + "." + aParts[0] + " " + aParts3[0] + ":" + aParts3[1];
  } catch(e){}
  
  return sOut;
}


 // super brauchbare var_dump Funktion Bsp:
 //document.write(var_dump(sellingStatus[0].currentPrice[0].@currencyId,'html'));
 function var_dump(data,addwhitespace,safety,level) {
        var rtrn = '';
        var dt,it,spaces = '';
        if(!level) {level = 1;}
        for(var i=0; i<level; i++) {
           spaces += '   ';
        }//end for i<level
        if(typeof(data) != 'object') {
           dt = data;
           if(typeof(data) == 'string') {
              if(addwhitespace == 'html') {
                 dt = dt.replace(/&/g,'&amp;');
                 dt = dt.replace(/>/g,'&gt;');
                 dt = dt.replace(/</g,'&lt;');
              }//end if addwhitespace == html
              dt = dt.replace(/\"/g,'\"');
              dt = '"' + dt + '"';
           }//end if typeof == string
           if(typeof(data) == 'function' && addwhitespace) {
              dt = new String(dt).replace(/\n/g,"\n"+spaces);
              if(addwhitespace == 'html') {
                 dt = dt.replace(/&/g,'&amp;');
                 dt = dt.replace(/>/g,'&gt;');
                 dt = dt.replace(/</g,'&lt;');
              }//end if addwhitespace == html
           }//end if typeof == function
           if(typeof(data) == 'undefined') {
              dt = 'undefined';
           }//end if typeof == undefined
           if(addwhitespace == 'html') {
              if(typeof(dt) != 'string') {
                 dt = new String(dt);
              }//end typeof != string
              dt = dt.replace(/ /g,"&nbsp;").replace(/\n/g,"<br>");
           }//end if addwhitespace == html
           return dt;
        }//end if typeof != object && != array
        for (var x in data) {
           if(safety && (level > safety)) {
              dt = '*RECURSION*';
           } else {
              try {
                 dt = var_dump(data[x],addwhitespace,safety,level+1);
              } catch (e) {continue;}
           }//end if-else level > safety
           it = var_dump(x,addwhitespace,safety,level+1);
           rtrn += it + ':' + dt + ',';
           if(addwhitespace) {
              rtrn += '\n'+spaces;
           }//end if addwhitespace
        }//end for...in
        if(addwhitespace) {
           rtrn = '{\n' + spaces + rtrn.substr(0,rtrn.length-(2+(level*3))) + '\n' + spaces.substr(0,spaces.length-3) + '}';
        } else {
           rtrn = '{' + rtrn.substr(0,rtrn.length-1) + '}';
        }//end if-else addwhitespace
        if(addwhitespace == 'html') {
           rtrn = rtrn.replace(/ /g,"&nbsp;").replace(/\n/g,"<br>");
        }//end if addwhitespace == html
        return rtrn;
     }//end function var_dump

