function createSeoFriendlyUrl() {
    String.prototype.trim = function () {
        return this.replace(/^\s*/, "").replace(/\s*$/, "");
    }
    mots="";
    ville = $('#ville_rech_text').val();
    mots = $('#mots').val();
    grCp = $('#lstgr :selected').text();
    exploded = grCp.split('--');
    groupe = exploded[0]!=undefined?exploded[0].trim():"";
    categorie = exploded[1]!=undefined?exploded[1].trim():"";

    if (mots == "Mot clé ou no annonce PAC" || mots=="" || mots==undefined) {
        mots = "";
        $('#mots').remove();
    }
    else {
        mots = "-"+filtreUrlRewriting(mots);
    }
    if (groupe.trim() == "Toutes les rubriques" || groupe.trim()=="") {
        groupe = '';
    }
    else {
        groupe = '-'+filtreUrlRewriting(groupe);
    }
    if (categorie.trim() == "Tout" || categorie.trim()=="") {
        categorie = '';
    }
    else {
        categorie = '-'+filtreUrlRewriting(categorie);
    }
    ville = "-"+filtreUrlRewriting(ville);
    qse = buildQSE();
    action = "r"+groupe+categorie+ville+mots+qse;

    $('#frmRecherche').attr("action",action);

    return action;
}

function redirectSeoFriendlyUrl() {
    tmpUrl = createSeoFriendlyUrl();
    if (tmpUrl != "") {
        document.location.href = tmpUrl;
    }
    return true;
}

function getParamString(param) {
    paramString = null;
    switch ($('#'+param).attr("type")) {
    case "radio":
        if ($('#'+param+":checked").val()==undefined || $('#'+param+":checked").val()=="0") {
            break;
        }
        else {
            paramString = param + "ZZ" + filtreUrlRewriting( $('input[name='+param+']:checked').val() );
        }
        break;
    case "checkbox":
        if ($('#'+param).attr('checked')==false) {
            break;
        }
        else {
            paramString = param + "ZZ" + $('#'+param).val();
        }
        break;
    default:
        if ($('#'+param).val()=="" || ($('#'+param).val()=="0" && param != 'vengar' && param != 'parindex' && param != 'page')) {
            break;
        } else {
            var val = $('#'+param).val();
            if (param == "mots" || param == "titAlr") {
                tmpUrl = encodeURIComponent(val.toLowerCase());
                paramString = param + "ZZ" + tmpUrl.replace(/[%](\1)+/g, 'P');
            } else {
                if(val.match(/.+W$/) != null){
                    val += ",";
                }
                paramString = param + "ZZ" + val;
            }
        }
    }
    if (paramString != null) {
        if (window.first == 1){
            limiter="-LPC";
            window.first = 0;
        }
        else {
            limiter="WW";
        }
        paramString = limiter + paramString;
    }
    return paramString;
}

function buildQSE () {
    var qse="";
    //AssignationTemporaire();
    var lstParam = window.lstParam;
    if (lstParam != "" && lstParam != undefined) {
        lstParam = lstParam.split(',');
        window.first=1;
        for (var i in lstParam) {
            if ($('#'+lstParam[i]).val()!=undefined) {
                if ( paramString = getParamString(lstParam[i]) ) {
                    qse = qse + paramString;
                }
            }
        }
    }
    return qse;
}

function filtreUrlRewriting(chaine) {
    if (chaine != undefined) {
        chaine = chaine.replace(/[\-&\+\(\)\\\/'*\?](\1)+/g," ");
        chaine = chaine.replace(/\s+/g,"-");

        // On convertit tous les accents
        chaine = chaine.replace(/[áàäâÁÀÄÂ](\1)+/g, 'a');
        chaine = chaine.replace(/[éèëêÉÈËÊ](\1)+/g, 'e');
        chaine = chaine.replace(/[íìïîÍÌÏÎ](\1)+/g, 'i');
        chaine = chaine.replace(/[óòöôÓÒÖÔ](\1)+/g, 'o');
        chaine = chaine.replace(/[úùüûÚÙÜÛ](\1)+/g, 'u');
        chaine = chaine.replace(/[çÇ](\1)+/g, 'c');

        // on ne garde que les chiffres et les lettres
        chaine = chaine.replace(/[^0-9A-Za-z\-\/]+/g, "");
    }
    return chaine;
}