/**
 * Featured ads handler.
 * If fa_request_done exists, the json output is sent to it, otherwise a
 * document.write is done.
 *
 * Options:
 *
 * fa_siteId fa_conceptId fa_searchText fa_limit fa_detail fa_dim1 fa_dim2
 * fa_dim3 fa_dim4 fa_dim5 fa_dim6
 */

function validJsonString(str) { // {{{
    if (str.substring(str.length - 1, str.length) === '}') {
        return true;
    } else {
        return false;
    }

}  // }}}

function cleanString(string) { // {{{
    string = string.replace(/\x80/g, "&euro;");
    return string;
} // }}}

// Response handler
function fa_HandleResponse(data) { // {{{
    if (fa_type === 'Home') {
        fa_HandleResponse_Home(data);
    } else {
        fa_HandleResponse_Listing(data);
    }
} // }}}

function fa_HandleResponse_Home(data) { // {{{
    if (data.length > 0) {

        var uri = '/nf/StaticPage/featuredAdHowTo';
        var llocJer = '';
        if (typeof fa_dim3 != 'undefined' && fa_dim3 != 'undefined') { 
            llocJer+= fa_dim3;
        }
        if (typeof fa_dim4 != 'undefined' && fa_dim4 != 'undefined') { 
            llocJer+= fa_dim4; 
        }
        if (typeof fa_dim5 != 'undefined' && fa_dim5 != 'undefined') { 
            llocJer+= fa_dim5; 
        }
        if (typeof fa_dim6 != 'undefined' && fa_dim6 != 'undefined') { 
            llocJer+= fa_dim6; 
        }
        if (llocJer) { 
            uri+='?loc=' + escape(llocJer); 
        }

        var firstRow  = '<tr>';
        var secondRow = '<tr>';

        for (var i = 0; i < data.length; i++) {

            var item = data[i];
            var itemTitle = 'Anuncio Descatado!';
            var lastItem = '';
                
            if (i == (fa_limit - 1)) {
                lastItem = ' last_item';
            }

            firstRow += '<td class="first_row' + lastItem + '" >';

            secondRow+= '<td ';
            if (lastItem !== '') {
                secondRow+= 'class="' + lastItem + '"';
            }
            secondRow+= ' >';

            if (item.title !== null && item.title !== '') {
                itemTitle = item.title;
            }
            if ((item.title === null || item.title === '') &&
                    item.shortDescription !== '') {
                itemTitle = item.shortDescription;
            }
            itemTitle = cleanString(itemTitle);
    
            secondRow+= '<p class="container" ><a href="' + item.perm_link + 
                '" title="' + itemTitle + '">' + itemTitle + '</a></p>';

            var imgPath = '/images/thumb_default.gif';
            if (item.extra_info !== null && item.exra_info !== '' &&
                    validJsonString(item.extra_info)) {
                extraInfo = eval("(" + data[i].extra_info + ")");

                if ((typeof(extraInfo.image_url) !== 'undefined') && 
                    extraInfo.image_url !== null && 
                    extraInfo.image_url !== '') {
                    imgPath = extraInfo.image_url;
                }
                if((typeof(extraInfo.price_to_show) !== 'undefined') && 
                        (extraInfo.price_to_show !== null) && 
                        (extraInfo.price_to_show !== '')) {
                    secondRow+= '<span class="container price">Precio: ' + 
                       cleanString(extraInfo.price_to_show) + '</span>';
                }
                
                if((typeof(extraInfo.lloc_name) !== 'undefined') &&
                        (extraInfo.lloc_name !== null) && 
                        (extraInfo.lloc_name !== '')) {
                    secondRow+= '<p class="container location"> \
                                <span class="location">' + 
                                cleanString(extraInfo.lloc_name) + 
                                '</span></p>';
                }
            }
            var imgLink = '<a href="' + item.perm_link + 
                '" rel="nofollow"><img src="' + imgPath + '" alt="' + 
                itemTitle + '" ' + 
                'onError="this.src=\'/images/thumb_default.gif\';"></a>';
            firstRow+= imgLink;

            secondRow+= '<p class="container" >' +
                cleanString(item.shortDescription) + '</p>'

            firstRow += '</td>';
            secondRow+= '</td>';
        }

        for (i = (data.length + 1); i <= fa_limit; i++) {
            
            firstRow += '<td class="first_row';
            secondRow+= '<td ';
            
            if (i == fa_limit) {
                firstRow += ' last_item';
                secondRow+= ' class="last_item"';
            }
            firstRow += '" ></td>';
            secondRow+= '></td>';
        }

        firstRow += '</tr>';
        secondRow+= '</tr>';

        var msg = ' \
                <h2><span>Anuncios Destacados</span> \
                    <a href="' + uri + '" rel="nofollow"  \
                    title="Destaca tu Anuncio" >&iquest;C&oacute;mo destacar tu anuncio?</a> \
                </h2> \
                <div id="container_featured"> \
                    <table border="0" cellpadding="0" cellspacing="0"> \
                    ' + firstRow + secondRow + ' \
                    </table> \
                </div> \
                <div id="featured_bottom"> </div> \
                ';   
        
        var divMA = document.getElementById(ma_div_id);
        divMA.innerHTML = msg;
        divMA.style.display = 'block';
    } else {
        var divMA = document.getElementById(ma_div_id);
        divMA.style.background = '#FFFFFF';
    }


} // }}}

function fa_HandleResponse_Listing(data) { // {{{
    if (data.length > 0) {

        var uri = '/nf/StaticPage/featuredAdHowTo';
        var llocJer = '';
        if (typeof fa_dim3 != 'undefined' && fa_dim3 != 'undefined') { 
            llocJer+= fa_dim3;
        }
        if (typeof fa_dim4 != 'undefined' && fa_dim4 != 'undefined') { 
            llocJer+= fa_dim4; 
        }
        if (typeof fa_dim5 != 'undefined' && fa_dim5 != 'undefined') { 
            llocJer+= fa_dim5; 
        }
        if (typeof fa_dim6 != 'undefined' && fa_dim6 != 'undefined') { 
            llocJer+= fa_dim6; 
        }
        if (llocJer) { 
            uri+='?loc=' + escape(llocJer); 
        }

        var featuredAds = '';

        for (var i = 0; i < data.length; i++) {

            var item = data[i];
            var itemTitle = 'Anuncio Descatado!';
            if (item.title !== null && item.title !== '') {
                itemTitle = item.title;
            }
            if ((item.title === null || item.title === '') &&
                    item.shortDescription !== '') {
                itemTitle = item.shortDescription;
            }
            itemTitle = cleanString(itemTitle);
            var extras = '';
            var imgPath = '/images/thumb_default.gif';
            if (item.extra_info !== null && item.exra_info !== '' &&
                    validJsonString(item.extra_info)) {
                extraInfo = eval("(" + data[i].extra_info + ")");

                extras = '<p class="extras">';
                if ((typeof(extraInfo.image_url) !== 'undefined') && 
                    extraInfo.image_url !== null && 
                    extraInfo.image_url !== '') {
                    imgPath = extraInfo.image_url;
                }
                if((typeof(extraInfo.price_to_show) !== 'undefined') && 
                        (extraInfo.price_to_show !== null) && 
                        (extraInfo.price_to_show !== '')) {
                    extras += '<span class="container price">Precio: ' + 
                       cleanString(extraInfo.price_to_show) + '</span>';
                }
                
                if((typeof(extraInfo.price_to_show) !== 'undefined') && 
                        (extraInfo.price_to_show !== null) && 
                        (extraInfo.price_to_show !== '') &&
                        (typeof(extraInfo.lloc_name) !== 'undefined') &&
                        (extraInfo.lloc_name !== null) && 
                        (extraInfo.lloc_name !== '')) {
                    extras += ' | ';
                }

                if((typeof(extraInfo.lloc_name) !== 'undefined') &&
                        (extraInfo.lloc_name !== null) && 
                        (extraInfo.lloc_name !== '')) {
                    extras += '<span class="location">' + 
                               cleanString(extraInfo.lloc_name) + 
                               '</span>';
                }
                extras += '</p>'
            }
            var imgLink = '<a href="' + item.perm_link + 
                '" rel="nofollow"><img src="' + imgPath + '" alt="' + 
                itemTitle + '" ' + 
                'onError="this.src=\'/images/thumb_default.gif\';"></a>';
    

            featuredAds += '<tr> \
                        <td class="fa_image"> \
                            <div class="td_wrapper"> \
                                <img class="featured-badge" src="/images/medalla.gif" alt="Anuncio Destacado" /> \
                                <div class="thumb_container"> \
                                    <a class="image_link" href="' + item.perm_link +'">'+ imgLink + '</a> \
                                </div> \
                            </div> \
                        </td> \
                        <td class="fa_content"> \
                            <p><a href="' + item.perm_link + '">' + itemTitle + '</a></p>' + extras + '<p>' + cleanString(item.shortDescription) + '</p> \
                        </td> \
                    </tr>';
        }

        var msg = ' \
                <div class="featured_ads_llistat"> \
                    <div class="title_container"> \
                        <table class="fa_titles"> \
                            <tr> \
                                <td><h2>Anuncios Destacados</h2></td> \
                                <td><p class="como_destacar"><a class="destacar" href="' + uri + '" rel="nofollow"> &iquest;C&oacute;mo destacar tu anuncio?</a></p></td> \
                            </tr> \
                        </table> \
                    </div> \
                    <table class="fa_ads" width="615"> \
                        <col width="91" /> \
                        <col width="auto" /> \
                        ' +  featuredAds + ' \
                    </table> \
                </div>                ';   
        
        var divMA = document.getElementById(ma_div_id);
        divMA.innerHTML = msg;
        divMA.style.display = 'block';
    } else {
        var divMA = document.getElementById(ma_div_id);
        divMA.style.background = '#FFFFFF';
    }


} // }}}


// Get featured ads.

var fa_url = "http://ads.olx.com/services/featuredad/getForShow.jsonCallback?";
var fa_urlOptions = [];

if (typeof fa_siteId != 'undefined' && fa_siteId != 'undefined') { fa_urlOptions.push('siteId=' + escape(fa_siteId));}
if (typeof fa_conceptId != 'undefined' && fa_conceptId != 'undefined') { fa_urlOptions.push('conceptId=' + escape(fa_conceptId));}
if (typeof fa_searchText != 'undefined' && fa_searchText != 'undefined') { fa_urlOptions.push('searchText=' + escape(fa_searchText));}
if (typeof fa_limit != 'undefined' && fa_limit != 'undefined') { fa_urlOptions.push('limit=' + escape(fa_limit));}
if (typeof fa_detail != 'undefined' && fa_detail != 'undefined') { fa_urlOptions.push('detail=' + escape(fa_detail));}
if (typeof fa_dim1 != 'undefined' && fa_dim1 != 'undefined') {fa_urlOptions.push('dim1=' + escape(fa_dim1));}
if (typeof fa_dim2 != 'undefined' && fa_dim2 != 'undefined') {fa_urlOptions.push('dim2=' + escape(fa_dim2));}
if (typeof fa_dim3 != 'undefined' && fa_dim3 != 'undefined') {fa_urlOptions.push('dim3=' + escape(fa_dim3));}
if (typeof fa_dim4 != 'undefined' && fa_dim4 != 'undefined') {fa_urlOptions.push('dim4=' + escape(fa_dim4));}
if (typeof fa_dim5 != 'undefined' && fa_dim5 != 'undefined') {fa_urlOptions.push('dim5=' + escape(fa_dim5));}
if (typeof fa_dim6 != 'undefined' && fa_dim6 != 'undefined') {fa_urlOptions.push('dim6=' + escape(fa_dim6));}
if (typeof fa_dim7 != 'undefined' && fa_dim7 != 'undefined') {fa_urlOptions.push('dim7=' + escape(fa_dim7));}
if (typeof fa_dim8 != 'undefined' && fa_dim8 != 'undefined') {fa_urlOptions.push('dim8=' + escape(fa_dim8));}
if (typeof fa_dim9 != 'undefined' && fa_dim9 != 'undefined') {fa_urlOptions.push('dim9=' + escape(fa_dim9));}
if (typeof fa_dim10 != 'undefined' && fa_dim10 != 'undefined') {fa_urlOptions.push('dim10=' + escape(fa_dim10));}

fa_url+= fa_urlOptions.join('&');
var wrappervar = "script";

if ((navigator.appName == "Microsoft Internet Explorer") && (navigator.userAgent.toLowerCase().indexOf("msie 6") > 1)){
    try {
        document.write(unescape("%3C" + wrappervar + " src='" + fa_url + "' type='text/javascript'%3E%3C/" + wrappervar + "%3E"));
    } catch(err) { }
} else {
    document.write(unescape("%3C" + wrappervar + " src='" + fa_url + "' type='text/javascript'%3E%3C/" + wrappervar + "%3E"));
}

