Помогите с кирилицей!!! в скрипте

Тема в разделе "Внешний вид, шаблоны, графика", создана пользователем paparazzzi, 08.12.2010.

  1. Offline

    paparazzzi Недавно здесь

    Регистрация:
    03.12.2010
    Сообщения:
    42
    Симпатии:
    0
    Пол:
    Мужской
    Добавил скрипт через jumi (все исходники отправлю)
    В начале не отображался, потом в скрипте showflash поставил значения == -2 (типо принимает кирилицу джумлы)
    var isIE = (ua.indexOf("msie") != -2 && ua.indexOf("opera") == -2 && ua.indexOf("webtv") == -2);
    у браузера opera в нем все отлично изображает, в любых остальных не работает, либо я не так ввожу название браузера

    Пытался добавить && ua.indexOf("firefox") == -2) все равно не отображает ( вот сайт http://mytest.hdd1.ru/?page_id=23 )
    Как сделать чтобы отображалось все нормально во всех браузеров? (русский язык)

    Вот скрипты:

    showflasj:
    function flashVersion() {
    // Отдельно определяем Internet Explorer
    var ua = navigator.userAgent.toLowerCase();
    var isIE = (ua.indexOf("msie") != -2 && ua.indexOf("opera") == -2 && ua.indexOf("webtv") == -2) && ua.indexOf("ie 9") == -2;
    // Стартовые переменные
    var version = 0;
    var lastVersion = 10; // c запасом
    var i;
    if (isIE) { // browser == IE
    try {
    for (i = 3; i <= lastVersion; i++) {
    if (eval('new ActiveXObject("ShockwaveFlash.ShockwaveFlash.'+i+'")')) {
    version = i;
    }
    }
    } catch(e) {}
    } else { // browser != IE
    for (i = 0; i < navigator.plugins.length; i++) {
    if (navigator.plugins.name.indexOf('Flash') > -1) {
    version = (parseInt(navigator.plugins.description.charAt(16)) > version) ? parseInt(navigator.plugins.description.charAt(16)) : version;
    }
    }
    }
    return version;
    }

    function showflashWH(flashName, W, H) {
    var bnFlash = flashName;
    var bnW = W;
    var bnH = H;
    var flashV = "6";
    document.getElementById(flashName).innerHTML = showflashJS(bnFlash, bnW, bnH, flashV);
    }

    function showflash(flashName) {
    var bnFlash = flashName;
    var bnW = 200;
    var bnH = 200;
    var flashV = "6";
    document.getElementById(flashName).innerHTML = showflashJS(bnFlash, bnW, bnH, flashV);
    }

    function showPleaseWait(type) {
    if (type == 'show') {
    document.getElementById("please_wait").innerHTML = "Пожалуйста подождите<br>загрузка может занять<br>несколько секунд";
    } else {
    document.getElementById("please_wait").innerHTML = "";
    return false;
    }
    setTimeout('showPleaseWait("hide")', 15000);
    }

    function showflashJS(bnFlash, bnW, bnH, flashV) {
    var ie = (navigator.userAgent && (navigator.userAgent.indexOf("MSIE") >= 0) && (navigator.appVersion.indexOf("Win") != -1)) ? 1 : 0;
    var plugin = (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"]) ? navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin : 0;
    var ret = "";

    if(plugin){
    var version = flashVersion();
    var pluginVersion = parseInt(plugin.description.substring(plugin.description.indexOf(".") - 2));
    version = pluginVersion > version ? pluginVersion : version;
    var isPlay = (version >= flashV);
    }
    else if(ie){
    isPlay = true;
    ret += '<sc'+'ript type="text/vbscript"> \n';
    ret += 'on error resume next \n';
    ret += 'isPlay = IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.'+flashV+'")) \n';
    ret += '</sc'+'ript> \n';
    }

    if(isPlay){
    ret += '<object type="application/x-shockwave-flash" data="'+bnFlash;
    ret +='" width="'+bnW+'" height="'+bnH+'">';
    ret +='<param name="movie" value="'+bnFlash;
    ret +='" />';
    ret +='<param name="quality" value="high" />';
    ret +='<param name="wmode" value="transparent" />';
    ret +='</object>';
    }
    return ret;
    }


















    raschet: (это сам скрипт что нужно)

    var door_model = 0;
    var door_zamok_type = 0;

    var data = new Array();
    data[1] = new Array();
    data[1]['id'] = 'door_models';
    data[1]['title'] = 'Выберите модель двери';
    data[1][1] = {'name': 'Стандарт М (сталь 2 мм. "металл-металл")', 'cost': '15200'};
    data[1][2] = {'name': 'Престиж М (сталь 2 мм "металл - внутр. щит")', 'cost': '14650'};
    data[1][3] = {'name': 'Элит М (сталь 2 мм "металл - металл + внутр. щит")', 'cost': '16900'};
    data[1][4] = {'name': 'Браво М (сталь 2 мм "металл + нар. щит - металл + внутр. щит")', 'cost': '17800'};

    data[2] = new Array();
    data[2]['title'] = 'Сторонность открывания';
    data[2]['id'] = 'door_open';
    data[2][1] = {'name': 'Правая', 'cost': '0'};
    data[2][2] = {'name': 'Левая', 'cost': '0'};

    data[3] = new Array();
    data[3]['title'] = 'Цвет полимерного покрытия';
    data[3]['id'] = 'door_color';
    data[3][1] = {'name': 'антик медь', 'cost': '0'};
    data[3][2] = {'name': 'антик черная бронза', 'cost': '0'};
    data[3][3] = {'name': 'антик серебро', 'cost': '0'};
    data[3][4] = {'name': 'серо-коричневый молотковый', 'cost': '0'};
    data[3][5] = {'name': 'серый молотковый', 'cost': '0'};
    data[3][6] = {'name': 'голубой молотковый', 'cost': '0'};
    data[3][7] = {'name': 'зеленый молотковый', 'cost': '0'};
    data[3][8] = {'name': 'темно-синий молотковый', 'cost': '0'};
    data[3][9] = {'name': 'белая шагрень', 'cost': '0'};
    data[3][10] = {'name': 'серая шагрень', 'cost': '0'};
    data[3][11] = {'name': 'черная шагрень', 'cost': '0'};
    data[3][12] = {'name': 'синяя шагрень', 'cost': '0'};
    data[3][13] = {'name': 'серый металлик', 'cost': '1500'};
    data[3][14] = {'name': 'синий металлик', 'cost': '1500'};
    data[3][15] = {'name': 'коричневый металлик', 'cost': '1500'};
    data[3][16] = {'name': 'бежевый металлик', 'cost': '1500'};
    data[3][17] = {'name': 'зеленый мрамор', 'cost': '1500'};
    data[3][18] = {'name': 'красный мрамор', 'cost': '1500'};

    data[4] = new Array();
    data[4]['title'] = 'Декоративная панель (внутренняя)';
    data[4]['id'] = 'door_panel_intern';
    data[4][1] = {'name': 'Щит МДФ 16 мм. с покрытием пленкой ПВХ Корея', 'cost': '4000'};
    data[4][2] = {'name': 'Щит МДФ 16 мм. с покрытием пленкой ПВХ Италия', 'cost': '5200'};
    /*
    data[4][3] = {'name': 'Щит МДФ 10 мм с покрытием шпоном', 'cost': '6500'};
    data[4][4] = {'name': 'Щит МДФ 10 мм окрашенный по RAL', 'cost': '6500'};
    */
    data[4][3] = {'name': 'Щит ламинат 6 мм', 'cost': '1500'};

    data[5] = new Array();
    data[5]['title'] = 'Декоративная панель (внешняя)';
    data[5]['id'] = 'door_panel_extern';
    data[5][1] = {'name': 'Щит МДФ 16 мм. с покрытием пленкой ПВХ', 'cost': '4000'};
    data[5][2] = {'name': 'Щит МДФ 16 мм. с покрытием пленкой ПВХ Италия', 'cost': '5200'};

    data[6] = new Array();
    data[6]['title'] = 'Основной замок';
    data[6]['id'] = 'door_zamok';
    data[6][1] = {'name': 'CISA 57535 сувальдный', 'cost': '3700', 'type': 1};
    data[6][2] = {'name': 'CISA 57986 сувальдно-цилиндровый', 'cost': '6370', 'type': -1};
    data[6][3] = {'name': 'CISA 57685 сувальдный, перекодируемый', 'cost': '5340', 'type': 1};
    data[6][4] = {'name': 'CISA 56535 цилиндровый', 'cost': '3340', 'type': 2};
    data[6][5] = {'name': 'KALE 352 цилиндровый', 'cost': '1150', 'type': 2};
    data[6][6] = {'name': 'KALE 252 без тяг, сувальдный', 'cost': '1180', 'type': 1};
    data[6][7] = {'name': 'KALE 252 без тяг, цилиндровый', 'cost': '690', 'type': 2};
    data[6][8] = {'name': 'Mul-t-lock OMEGA роторный', 'cost': '6300', 'type': -1};
    data[6][9] = {'name': 'Mul-t-lock OMEGA роторно-цилиндровый', 'cost': '7400', 'type': -1};

    data[7] = new Array();
    data[7]['id'] = 'door_dop_zamok';
    data[7]['title'] = 'Дополнительный замок';
    data[7][1] = {'name': 'Нет', 'cost': '0'};
    data[7][2] = {'name': 'CISA 56525 цилиндровый', 'cost': '3100'};
    data[7][3] = {'name': 'CISA 57525 сувальдный', 'cost': '3500'};
    data[7][4] = {'name': 'CISA 56675 сувальдный', 'cost': '5100'};
    data[7][5] = {'name': 'KALE 257 цилиндровый', 'cost': '550'};
    data[7][6] = {'name': 'KALE 257 сувальдный', 'cost': '860'};

    data[8] = new Array();
    data[8]['title'] = 'Накладка для основного замка';
    data[8]['id'] = 'door_nakladki';
    data[8][1] = {'name': 'CISA сувальдный', 'cost': '200'};
    data[8][2] = {'name': 'CISA цилиндровый', 'cost': '130'};
    data[8][3] = {'name': 'Mul-t-lock', 'cost': '650'};
    data[8][4] = {'name': 'Броненакладка на цилиндр CISA', 'cost': '1200'};
    data[8][5] = {'name': 'Броненакладка на цилиндр Mul-t-lock', 'cost': '1750'};

    data[9] = new Array();
    data[9]['id'] = 'door_nakladki_dop';
    data[9]['title'] = 'Накладка для дополнительного замка';
    data[9][1] = {'name': 'CISA сувальдный', 'cost': '200'};
    data[9][2] = {'name': 'CISA цилиндровый', 'cost': '130'};
    data[9][3] = {'name': 'Mul-t-lock', 'cost': '650'};
    data[9][4] = {'name': 'Броненакладка на цилиндр CISA', 'cost': '1200'};
    data[9][5] = {'name': 'Броненакладка на цилиндр Mul-t-lock', 'cost': '1750'};

    data[10] = new Array();
    data[10]['title'] = 'Цилиндр для цилиндрового замка';
    data[10]['id'] = 'door_cilindr_for_cilindr';
    data[10][1] = {'name': 'CISA Pratic английский', 'cost': '320'};
    data[10][2] = {'name': 'KALE 3 ключа английский', 'cost': '320'};
    data[10][3] = {'name': 'KALE , с перфорацией, 5 ключей', 'cost': '630'};
    data[10][4] = {'name': 'Mul-t-lock 7*7 с перфорацией, 5 ключей', 'cost': '890'};
    data[10][5] = {'name': 'CISA ASIX с перфорацией, 5 ключей', 'cost': '890'};
    data[10][6] = {'name': 'CISA ASTRAL с перфорацией, 5 ключей', 'cost': '1550'};

    data[11] = new Array();
    data[11]['title'] = 'Глазок';
    data[11]['id'] = 'door_glazok';
    data[11][1] = {'name': 'AMIG', 'cost': '250'};

    data[12] = new Array();
    data[12]['title'] = 'Задвижка с рукояткой';
    data[12]['id'] = 'door_zadvizhka';
    data[12][1] = {'name': 'MBC', 'cost': '600'};
    data[12][2] = {'name': 'REGUITTY', 'cost': '700'};

    data[13] = new Array();
    data[13]['id'] = 'door_ruchka';
    data[13]['title'] = 'Ручка';
    data[13][1] = {'name': 'GARDA хром', 'cost': '800'};
    data[13][2] = {'name': 'GRAZIA хром', 'cost': '1100'};
    data[13][3] = {'name': 'WING хром', 'cost': '1200'};
    data[13][4] = {'name': 'KUBA хром', 'cost': '1700'};
    data[13][5] = {'name': 'PIN AP хром', 'cost': '1370'};
    data[13][6] = {'name': 'GIADA хром', 'cost': '2060'};
    data[13][7] = {'name': 'M.B.C. BETA хром', 'cost': '540'};
    data[13][8] = {'name': 'EVO хром', 'cost': '840'};
    data[13][9] = {'name': 'CORONA хром', 'cost': '740'};
    data[13][10] = {'name': 'CORSICA хром', 'cost': '1070'};
    data[13][11] = {'name': 'DIONA хром', 'cost': '720'};
    data[13][12] = {'name': 'ERIDAN хром', 'cost': '780'};
    data[13][13] = {'name': 'LIBRA хром', 'cost': '810'};
    data[13][14] = {'name': 'PAVA хром', 'cost': '890'};
    data[13][15] = {'name': 'TAURUS хром', 'cost': '860'};
    data[13][16] = {'name': 'TRINITY хром', 'cost': '1070'};
    data[13][17] = {'name': 'VEGA хром', 'cost': '740'};
    data[13][18] = {'name': 'VITORIA хром', 'cost': '1400'};

    data[14] = new Array();
    data[14]['title'] = 'Датчики "Геркон" (для сигнализации)';
    data[14]['id'] = 'door_gerkon';
    data[14][1] = {'name': 'Да', 'cost': '220'};
    data[14][2] = {'name': 'Нет', 'cost': '0'};

    function isNumeric(value) {
    return parseInt(value)==value;
    }

    function add_option(select_box, value, text) {
    var option = document.createElement('option');
    option.text = text;
    option.value = value;
    try {
    select_box.add(option, null);
    } catch (e) {
    select_box.add(option);
    }
    }

    function showSelectBox(num) {
    var object;
    if(isObject(num)) {
    object = data[num];
    selectBox = document.getElementById(data[num]['id'] + '_select');
    selectBox.options.length = 0;
    add_option(selectBox, 0, 'не выбрано');
    for (i in object) {
    if(isNumeric(i)) {
    add_option(selectBox, i, object['name']);
    }
    }
    }
    }

    function isObject(num) {
    if(typeof(data[num]) != "undefined") {
    return true;
    } else {
    return false;
    }
    }

    function generateAskItem(num) {
    if(isObject(num)) {
    object = data[num];
    var table = document.getElementById('ask_table');
    var tr = table.insertRow(-1);
    var td_title = tr.insertCell(-1);
    var td_select = tr.insertCell(-1);
    var td_cost = tr.insertCell(-1);

    td_title.innerHTML = '<div class="td_div" id="' + object['id'] + '_title">' + object['title'] + '</div>';
    td_select.innerHTML = '<div class="td_div" id="' + object['id'] + '_select_div">'+
    '<select id="' + object['id'] + '_select" onChange="updateCalculate(' + num + ');">'+
    '<option value="">не выбрано</option>'+
    '</select>'+
    '</div>';
    td_cost.innerHTML = '<div class="td_div" id="' + object['id'] + '_cost_visible">0</div><input type="hidden" id="' + object['id'] + '_cost" value="0">';
    td_cost.setAttribute("align","center");
    showSelectBox(num);
    }
    }

    function showAskItem(num) {
    if(isObject(num)) {
    object = data[num];
    generateAskItem(num);
    document.getElementById(object['id'] + '_title').style.display = 'block';
    document.getElementById(object['id'] + '_select_div').style.display = 'block';
    document.getElementById(object['id'] + '_cost_visible').style.display = 'block';
    }
    }

    function hideAskItem(num) {
    if(isObject(num)) {
    object = data[num];
    generateAskItem(num);
    document.getElementById(object['id'] + '_title').style.display = 'none';
    document.getElementById(object['id'] + '_select_div').style.display = 'none';
    document.getElementById(object['id'] + '_cost_visible').style.display = 'none';
    }
    }

    function disableAskItem(num) {
    if(isObject(num)) {
    object = data[num];
    document.getElementById(object['id'] + '_select').selectedIndex = 0;
    document.getElementById(object['id'] + '_cost').value = 0;
    document.getElementById(object['id'] + '_cost_visible').innerHTML = 0;
    document.getElementById(object['id'] + '_select').disabled = true;
    }
    }

    function enableAskItem(num) {
    if(isObject(num)) {
    object = data[num];
    document.getElementById(object['id'] + '_select').disabled = false;
    }
    }

    function getValueAskItem(num) {
    if(isObject(num)) {
    object = data[num];
    return document.getElementById(object['id'] + '_select').value;
    } else {
    return false;
    }
    }

    function getZamokType() {
    if(document.getElementById(data[6]['id'] + '_select').selectedIndex != 0) {
    return data[6][document.getElementById(data[6]['id'] + '_select').selectedIndex]['type'];
    } else {
    return 0;
    }
    }

    function clearAskItems() {
    for (i in data) {
    if(isNumeric(i)) {
    disableAskItem(i);
    }
    }
    document.getElementById('total_cost').innerHTML = 0;
    enableAskItem(1);
    }

    function enableAllAskItems() {
    for (i in data) {
    if(isNumeric(i)) {
    enableAskItem(i);
    }
    }
    }

    function updateTotalCost() {
    var totalCost = 0;
    for (i in data) {
    if(isNumeric(i)) {
    totalCost = totalCost + parseInt(document.getElementById(data['id'] + '_cost').value);
    }
    }
    document.getElementById('total_cost').innerHTML = totalCost;
    }

    function updateCost(num) {
    if(isObject(num)) {
    var object = data[num];
    var cost = 0;
    if(document.getElementById(object['id'] + '_select').selectedIndex !=0) {
    cost = object[document.getElementById(object['id'] + '_select').selectedIndex]['cost'];
    }
    document.getElementById(object['id'] + '_cost').value = cost;
    document.getElementById(object['id'] + '_cost_visible').innerHTML = cost;
    }
    }

    function updateCalculate(num) {
    door_model = getValueAskItem(1);

    if(door_model == 0) {
    clearAskItems();
    } else {
    enableAllAskItems();
    if(door_model == 1) {
    disableAskItem(4);
    disableAskItem(5);
    }
    if(door_model == 2 || door_model == 3) {
    enableAskItem(4);
    disableAskItem(5);
    }
    if(door_model == 4) {
    enableAskItem(4);
    enableAskItem(5);
    }
    }

    door_zamok_type = getZamokType();
    if (door_zamok_type <= 0 ) {
    disableAskItem(10);
    } else {
    if (door_zamok_type == 2) {
    enableAskItem(10);
    }
    if (door_zamok_type == 1) {
    disableAskItem(10);
    }
    }

    updateCost(num);
    updateTotalCost();
    }

    function initModel() {
    for (i in data) {
    if(isNumeric(i)) {
    showAskItem(i);
    }
    }
    clearAskItems();
    }
     
  2.  
  3. Offline

    paparazzzi Недавно здесь

    Регистрация:
    03.12.2010
    Сообщения:
    42
    Симпатии:
    0
    Пол:
    Мужской
    Помогите :(
     

Поделиться этой страницей

Загрузка...