function display_rs(rs_data) {
    var rs_str = '';

    for (var i = 0; i < rs_data.length; i++) {
        rs_link = '<a class="oneclick_RS" href="' + rs_data[i].href_url + '">' +  rs_data[i].term + '</a>';

        if (i < 8)
            rs_str += '<div class="oneclick_RS_bg"> ' + rs_link + ' </div>';
    }

    document.getElementById('rs_container').innerHTML = rs_str;
}

function set_sb_tokens() {
    if(token) {
        document.forms.frm_rs_search.ltk.value = token;
    }
    if(search_token) {
        document.forms.frm_rs_search.stk.value = search_token;
    }
}


 function get_ad_ratings(ad) { 
     var ad_extensions = ''; 
     if (typeof(ad.seller_ratings) != 'undefined') { 
         var seller_rating = ad.seller_ratings; 
          ad_extensions += '<div class="ad_rating">'; 
          ad_extensions += '<div class="ad_rating_text">' + seller_rating.advertiser_info + '</div>'; 
          for (var j=0; j < 5; j++) { 
              var star = 'e'; 
              if (seller_rating.rating > 0) { 
                   if (seller_rating.rating >= 1) { 
                        star = 'f'; 
                   } else { 
                        star = 'p'; 
                   } 
               } 
              seller_rating.rating--; 
              ad_extensions += '<div class="ad_rating_star' + star + '"></div>'; 
          } 
          ad_extensions += ' (<a href="' + seller_rating.source_url + '" target="_blank">' + seller_rating.review_count + '</a>)'; 
          ad_extensions += '<div class="clearlr"></div>'; 
          ad_extensions += '</div>'; 
     } 

     return ad_extensions; 
} 

function get_ad_sitelinks(ad) { 
     var ad_extensions = ''; 
     if (typeof(ad.sitelinks) != 'undefined') { 
          ad_extensions += '<div class="ad_sitelinks">'; 
         var ad_sitelinks = new Array('', ''); 
          for (var j=0; j < ad.sitelinks.length; j++) { 
              var sitelink = ad.sitelinks[j]; 
              ad_sitelinks[j % 2] += '<a href="' + sitelink.catcher_url + '" target="_blank">' + sitelink.link_text + '</a><br />'; 
          } 
          ad_extensions += '<div class="sitelinks_col1">' + ad_sitelinks[0] + '</div>'; 
          ad_extensions += '<div class="sitelinks_col2">' + ad_sitelinks[1] + '</div>'; 
          ad_extensions += '<div class="clearlr"></div>'; 
          ad_extensions += '</div>'; 
     } 

     return ad_extensions; 
} 

function display_ads(google_ads_array, iba_url, is_ads_repeat) {
    var ads_string = '';
    for (var i = 0; i < google_ads_array.length; i++) {
        var start_div = '<div class="ad">';
        var end_div = '</div>';


        var ad_title = '<a class="ad_headline" href="' + google_ads_array[i].catcher_url + '" target="_blank">' + google_ads_array[i].ad_title + '</a><br>';
        var ad_link = '<a class="ad_link" href="' + google_ads_array[i].catcher_url + '" target="_blank">' + google_ads_array[i].visible_url + '</a>';
        var ad_description = '<div class="ad_line">';                                                                             

        if (typeof(ad_format) != 'undefined' && ad_format == 2) { 

           ad_description += '<span class="ad_urlline">' + ad_link + '</span>'; 

           ad_link = ''; 

        } 

        ad_description += google_ads_array[i].ad_description + '</div>';
        var ad_ratings = get_ad_ratings(google_ads_array[i]); 

        var ad_sitelinks = get_ad_sitelinks(google_ads_array[i]);     

        ads_string += start_div + ad_title + ad_description + ad_ratings + ad_link + ad_sitelinks + end_div; 
    }

    // display
    if(is_ads_repeat) { 
        target_ads = 'ads_repeat';
    }
    else {
        target_ads = 'ads';
    }

    var target_ads_container = target_ads + '_container';
    var target_ads_title = target_ads + '_title';       
    document.getElementById(target_ads_container).innerHTML  = ads_string;
    if(iba_url) {
        var sponsored_label = document.getElementById("ads_title").innerHTML;
        document.getElementById(target_ads_title).innerHTML = '<a href="' + iba_url + '" target="_blank">' + sponsored_label + '</a>';
    }
    document.getElementById(target_ads).style.display = 'block';
    document.getElementById("portal_content").style.display = 'none';
}

function display_ws(google_ws_array) {
    if(google_ws_array.length > 0) {    
        var ws_string = '';
        for (var i = 0; i < google_ws_array.length; i++) {
            var start_div = '<div class="ad">';
            var end_div = '</div>';

            var ws_title = '<a class="ad_headline" href="' + google_ws_array[i].ws_url + '" target="_blank">' + google_ws_array[i].ws_title + '</a><br>';
            var ws_description = '<div class="ad_line">' + google_ws_array[i].ws_description + '</div>';
            var ws_link = '<a class="ad_link" href="' + google_ws_array[i].ws_url + '" target="_blank">' + google_ws_array[i].ws_url + '</a>';

            ws_string += start_div + ws_title + ws_description + ws_link + end_div;
        }
        document.getElementById("web_container").innerHTML  = ws_string;   
    }
    // display
    document.getElementById("web").style.display = 'block';
}

function display_portal(pq, tc_array, pc_array) {
    var lpq = pq.replace(/&tk=[^&]*(?:&|$)/, '&');
    lpq = lpq.replace(/&$/, '');

    // popular categories
    top_pc_string = '';
    pc_string = '';
    for (var i = 0; i < pc_array.length; i++) {
        var pc_href = lpq + '&aq=' + encodeURIComponent(pc_array[i][0]) + '&tk=' + token;
        var pc_link = '<a href="' + pc_href + '" class="portal_RS">' + pc_array[i][0] + '</a>';

        if (i < 5) {
            top_pc_string += '<div class="portal_RS_bg">' + pc_link + '</div>';
        }

        if (i >= 5 && i < 10) {
            pc_string += '<div class="portal_RS_bg">' + pc_link + '</div>';
        }
    }

    // display
    document.getElementById("top_pc_container").innerHTML = top_pc_string;
    document.getElementById("pc_container").innerHTML = pc_string;
    document.getElementById("portal_content").style.display = 'block';
    document.getElementById("ads").style.display = 'none';
}

function display_content() {
    // set tokens for SB
    set_sb_tokens();

    // ads
    if(!force_portal) {
        // display rs
        display_rs(rs_data);

        display_ads(google_ads_array, iba_url, 0);
        if(gt == 'AFS' && google_ws_array) {
            display_ws(google_ws_array);
        }
        if(gt == 'AFS' && google_ads_repeat_array && google_ads_repeat_array.length > 0) {
            display_ads(google_ads_repeat_array, '', 1);
        }        
    }
    //  portal
    else {
        display_portal(pq, tc_array, pc_array);
    }
}

// content display call
display_content();
