jQuery(function () {
// notice how you can overwrite the defaults for instances
jQuery.fn.multiSelect.defaults.minWidth = 170;
jQuery.fn.multiSelect.defaults.selectedList = 3;
jQuery.fn.multiSelect.defaults.noneSelectedText = i18n.elg_cars_JSNOTIFY.notifyoricare;
jQuery.fn.multiSelect.defaults.checkAllText = i18n.elg_cars_JSNOTIFY.notifyoricare;
jQuery.fn.multiSelect.defaults.unCheckAllText = i18n.elg_cars_JSNOTIFY.notifyunselect;
jQuery.fn.multiSelect.defaults.selectedText = '# ' + i18n.elg_cars_JSNOTIFY.selectate;
// $('#themeswitcher').themeswitcher({ loadTheme: 'blitzer' });
jQuery("select.multiselect#tipcombustibil, select.multiselect#transmission").multiSelect({
onCheck: doSearch
});
// default options
jQuery("select.multiselect150#culoareext, select#vehicle-exteriorcolor").multiSelect({
onCheck: doSearch,
minWidth: 150,
//colors must be described exactly in order the select's options are
colors: ['white', 'blue', 'silver', 'gold', 'azure', 'beige', 'yellow', 'grey', 'brown', 'black', 'orange', 'red', 'green', 'purple', 'burgundy']
});
jQuery("select.multiselect150#culoareint, select#vehicle-interiorcolor").multiSelect({
onCheck: doSearch,
minWidth: 150,
colors: ['white', 'beige', 'grey', 'brown', 'black', 'burgundy', 'others']
});
jQuery("select.multiselect150#tapiterie").multiSelect({
onCheck: doSearch,
minWidth: 150
});
jQuery("select.multiselect130").multiSelect({
onCheck: doSearch,
minWidth: 130
});
jQuery("select.multiselect200").multiSelect({
onCheck: doSearch,
minWidth: 220
});
jQuery("select.multiselect").multiSelect({
onCheck: doSearch
});
jQuery(".ui-multiselect").addClass('form-control');
});
jQuery(document).ready(function () {
toggleDisabled({
'1': 'marca2',
'2': 'model2',
'3': 'versiune2',
'4': 'caroserie2',
'5': 'categorie2'}, jQuery('#marca option:selected').val(), '');
toggleDisabled({
'1': 'marca3',
'2': 'model3',
'3': 'versiune3',
'4': 'caroserie3',
'5': 'categorie3'}, jQuery('#marca2 option:selected').val(), '');
/**
* attach events to all input/select/checkboxes etc. ... form elements.
* so that they will submit the form when it fires.
*/
if (jQuery('#search-form') != null) {
// attach an event to all specific field inputs
jQuery('#search-form').find('select#marca').bind('change', function () {
sessionStorage.as_1_make = this.selectedIndex;
ajaxRequest({
'TODO': 'MODELS',
'ACTION': 'OPTION',
'vehicle:makeid': this.options[this.selectedIndex].value,
'auto_type': '1',
'element_id': 'model'
});
toggleDisabled({
'1': 'marca2',
'2': 'model2',
'3': 'versiune2',
'4': 'caroserie2'}, this.options[this.selectedIndex].value, '0');
});
jQuery('#search-form').find('select#model').bind('change', function () {
sessionStorage.as_1_model = this.selectedIndex;
});
jQuery('#search-form').find('select#vehicle-makeid-0').bind('change', function () {
sessionStorage.as_1_make = this.selectedIndex;
ajaxRequest({
'TODO': 'MODELS',
'ACTION': 'OPTION',
'vehicle:makeid': this.options[this.selectedIndex].value,
'auto_type': '1',
'element_id': 'vehicle-modelid-0'});
doSearch();
});
jQuery('#search-form').find('select#vehicle-modelid-0').bind('change', function () {
sessionStorage.as_1_model = this.selectedIndex;
});
jQuery('#search-form').find('select#marca2').bind('change', function () {
sessionStorage.as_2_make = this.selectedIndex;
ajaxRequest({
'TODO': 'MODELS',
'ACTION': 'OPTION',
'vehicle:makeid': this.options[this.selectedIndex].value,
'auto_type': '1',
'element_id': 'model2'});
toggleDisabled({
'1': 'marca3',
'2': 'model3',
'3': 'versiune3',
4: 'caroserie3'}, this.options[this.selectedIndex].value, '0');
});
jQuery('#search-form').find('select#model2').bind('change', function () {
sessionStorage.as_2_model = this.selectedIndex;
});
jQuery('#search-form').find('select#marca3').bind('change', function () {
sessionStorage.as_3_make = this.selectedIndex;
ajaxRequest({
'TODO': 'MODELS',
'ACTION': 'OPTION',
'vehicle:makeid': this.options[this.selectedIndex].value,
'auto_type': '1',
'element_id': 'model3'});
});
jQuery('#search-form').find('select#model3').bind('change', function () {
sessionStorage.as_3_model = this.selectedIndex;
});
var select_make_1 = document.getElementById("marca");
var select_model_1 = document.getElementById("model");
var select_make_2 = document.getElementById("marca2");
var select_model_2 = document.getElementById("model2");
var select_make_3 = document.getElementById("marca3");
var select_model_3 = document.getElementById("model3");
var select_make_mobile = document.getElementById("vehicle-makeid-0");
var select_model_mobile = document.getElementById("vehicle-modelid-0");
if (sessionStorage.as_1_make && select_make_1) {
select_make_1.options[sessionStorage.as_1_make].selected = true;
ajaxRequest({
'TODO': 'MODELS',
'ACTION': 'OPTION',
'vehicle:makeid': select_make_1.options[select_make_1.selectedIndex].value,
'auto_type': '1',
'element_id': 'model'
}, function () {
if (sessionStorage.as_1_model) {
select_model_1.options[sessionStorage.as_1_model].selected = true;
}
});
}
if (sessionStorage.as_2_make && select_make_2) {
select_make_2.options[sessionStorage.as_2_make].selected = true;
ajaxRequest({
'TODO': 'MODELS',
'ACTION': 'OPTION',
'vehicle:makeid': select_make_2.options[select_make_2.selectedIndex].value,
'auto_type': '1',
'element_id': 'model2'
}, function () {
if (sessionStorage.as_2_model) {
select_model_2.options[sessionStorage.as_2_model].selected = true;
}
});
}
if (sessionStorage.as_3_make && select_make_3) {
select_make_3.options[sessionStorage.as_3_make].selected = true;
ajaxRequest({
'TODO': 'MODELS',
'ACTION': 'OPTION',
'vehicle:makeid': select_make_3.options[select_make_3.selectedIndex].value,
'auto_type': '1',
'element_id': 'model3'
}, function () {
if (sessionStorage.as_3_model) {
select_model_3.options[sessionStorage.as_3_model].selected = true;
}
});
}
if (sessionStorage.as_1_make && select_make_mobile) {
select_make_mobile.options[sessionStorage.as_1_make].selected = true;
ajaxRequest({
'TODO': 'MODELS',
'ACTION': 'OPTION',
'vehicle:makeid': select_make_mobile.options[select_make_mobile.selectedIndex].value,
'auto_type': '1',
'element_id': 'vehicle-modelid-0'
}, function () {
if (sessionStorage.as_1_model) {
select_model_mobile.options[sessionStorage.as_1_model].selected = true;
}
});
}
jQuery('#search-form').find('input:text').bind('keyup', doSearch);
jQuery('#versiune').bind('change', doSearch);
jQuery('#versiune2').bind('change', doSearch);
jQuery('#versiune3').bind('change', doSearch);
jQuery('#oras').bind('change', doSearch);
//jQuery('#search-form').find('input[type=checkbox]').bind('change', doSearch);
/**
* multi-selects send 2 requests to the server, one for select element and the other for input checkbox
* make this hack by checking if the checkbox id has the string 'ui-multiselect' ... and skip in this case.
*/
jQuery('#search-form').find('input[type=checkbox]').each(function (index) {
var str = jQuery(this).attr("id");
if (str != null && str.substring(0, 14) == 'ui-multiselect') {
} else {
jQuery(this).bind('change', doSearch);
}
});
/**
* multi-selects au Select-all si Unselect-all, dar nu au niciun eveniment si nu se face doSearch.
* Atasez un eveniment pentru ele.
*/
jQuery('.ui-multiselect-none').bind("click", doSearch);
jQuery('.ui-multiselect-all').bind("click", doSearch);
}
if (jQuery('#judet option:selected').val() == '') {
jQuery('#judet').attr('disabled', true);
}
jQuery('#tara_seller').change(function () {
var value = jQuery('#tara_seller').val();
if (value == 'RO') {
jQuery('#judet').attr('disabled', false);
} else {
jQuery('#judet').val('');
jQuery('#judet').attr('disabled', true);
}
});
jQuery('.jTip').each(function () {
target_div = jQuery(this).attr('rel');
if (jQuery('#' + target_div).is(':empty')) {
jQuery(this).hide();
}
});
jQuery("select.multiselect").each(function () {
jQuery(this).parent().append("");
}).change(function () {
jQuery(this).siblings("input[type=text]").val(jQuery(this).val() === "" ? i18n.elg_cars_JSNOTIFY.notifyoricare : jQuery(this).val());
jQuery(this).siblings("input[type=hidden]").val(jQuery(this).val());
});
jQuery("select.with-free-input").each(function () {
var maxlength = "maxlength='4'";
if(jQuery(this).attr('id') == 'kilometrajdela' || jQuery(this).attr('id') == 'kilometrajpanala') {
maxlength = "maxlength='6'";
}
if(jQuery(this).attr('id') == 'pretdela' || jQuery(this).attr('id') == 'pretpanala') {
maxlength = "maxlength='7'";
}
jQuery(this).parent().css('position', 'relative');
if (jQuery(this).attr('id') === "puteredela" || jQuery(this).attr('id') === "puterepanala") {
jQuery(this).parent().append("");
} else {
jQuery(this).parent().append("");
}
jQuery(this).parent().append("");
jQuery(this).attr('name', '_' + jQuery(this).attr('name'));
jQuery(this).siblings("input[type=text]").keypress(function (e) {
if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
return false;
}
});
jQuery(this).siblings("input[type=text]").change (function () {
jQuery(this).siblings("input[type=hidden]").val(jQuery(this).val() === "Oricare" ? "" : jQuery(this).val());
jQuery(this).siblings("select.with-free-input").attr('selectedIndex', 1);
});
jQuery(this).siblings("input[type=text]").focusout (function () {
if(jQuery(this).val() === "") {
jQuery(this).val("Oricare");
} else {
if (jQuery(this).attr('name') === "__vehicle[powerkw][from]" || jQuery(this).attr('name') === "__vehicle[powerkw][to]") {
//get kW number from string and add kW + HP conversion at the end
jQuery(this).val(getEnginePowerString(jQuery(this).val()));
}
}
});
jQuery(this).siblings("input[type=text]").focus (function () {
if(jQuery(this).val() === "Oricare") {
jQuery(this).val("");
} else {
if (jQuery(this).attr('name') === "__vehicle[powerkw][from]" || jQuery(this).attr('name') === "__vehicle[powerkw][to]") {
//strip value to only kW number
jQuery(this).val(getEngineKWPowerNumber(jQuery(this).val()));
}
}
});
jQuery(this).siblings("input[type=text]").bind('focusout', doSearch);
}).change(function () {
if (jQuery(this).attr('id') === "puteredela" || jQuery(this).attr('id') === "puterepanala") {
jQuery(this).siblings("input[type=text]").val(jQuery(this).val() === "" ? i18n.elg_cars_JSNOTIFY.notifyoricare : jQuery(this).find("option:selected").text());
} else {
jQuery(this).siblings("input[type=text]").val(jQuery(this).val() === "" ? i18n.elg_cars_JSNOTIFY.notifyoricare : jQuery(this).val());
}
jQuery(this).siblings("input[type=hidden]").val(jQuery(this).val());
});
if (jQuery('#search-form') != null) {
jQuery('#search-form').find('select').bind('change', function () {
doSearch();
});
}
doSearch();
});
function getEngineKWPowerNumber(val) {
var engine_kw = parseInt(val.substr(0,val.indexOf(' ')));
if (isNaN(engine_kw)) {
return val;
} else {
return engine_kw;
}
}
function getEnginePowerString(val) {
var engine_kw = val;
var engine_hp = parseInt(val) * 1.359;
return engine_kw.toString() + i18n.elg_cars_JSNOTIFY.powerkw + " (" + Math.ceil(engine_hp).toString() + i18n.elg_cars_JSNOTIFY.powercp + ")";
}