Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
 Аватар для Jumanji
0 / 0 / 0
Регистрация: 04.08.2016
Сообщений: 4

Нужен совет по скрипту!

04.08.2016, 17:04. Показов 692. Ответов 9

Студворк — интернет-сервис помощи студентам
Привет всем, уважаемые форумчане! Если кому не лень, прошу с советов С:
Дело вот в чем. Захотел на свой сайт разместить эдакое всплывающее окошко, которое показывает следующую инфу:
"Name из города N только что совершил заказ". Нашел, значит, сайт, где есть подобная штука. Вот сам сайт (добавлен в ЧС поисковика из-за мошенничества этой конторы). Скопировал его с помощью Wget, отыскал сам код всплывающего уведомления (код в спойлере).
Кликните здесь для просмотра всего текста
<script type="text/javascript">/**

var arr_buyer = {
'RU': {
img: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAA ABACAYAAACqaXHeAAAAa0lEQVR42u3QwQkAMAgAM fdf2hYc4yIc6NPM7k659PMAAAAAAAAAAAAAAFy1A QAAAAAAAAAAAAAAAIC/zF2VAAAAAAAAAAAAAAAAAODqCQAAAAAAAAAAAAAA AAAAgGwAAAAAAAAAAAAAAER72yqN3ef7lPIAAAAA SUVORK5CYII=',
town: ["Москва", "Воронеж", "Санкт-Петербург", "Новосибирск", "Екатеринбург", "Нижний Новгород", "Казань", "Челябинск", "Омск", "Самара", "Ростов-на-Дону", "Уфа", "Красноярск", "Пермь", "Волгоград", "Саратов", "Краснодар", "Тольятти", "Тюмень", "Ижевск", "Хабаровск", "Владивосток", "Оренбург", "Пенза"],
people_name: {
man: ["Сергей", "Леша", "Алексей", "Николай", "Александр", "Павел", "Паша", "Дима", "Дмитрий", "Женя", "Евгений", "Слава", "Святослав", "Андрей", "Антон", "Артем", "Геннадий", "Макс", "Максим", "Олег", "Виктор", "Роман", "Рома", "Денис", "Руслан", "Вадим", "Костя", "Влад", "Владислав", "Марат", "Юрий"],
woman: ['Татьяна', 'Лиза', 'Алла', 'Наталья', 'Ксения', 'Оксана', 'Юлия', 'Ольга', 'Екатерина', 'Руслана', 'Любовь']
},

'UA': {
town: ["Киев", "Харьков", "Одесса", "Днепропетровск", "Донецк", "Запорожье", "Львов", "Кривой Рог", "Николаев", "Мариуполь", "Луганск", "Винница", "Макеевка", "Херсон", "Полтава", "Чернигов", "Черкассы", "Житомир", "Сумы", "Хмельницкий", "Черновцы", "Ровно", "Днепродзержинск", "Кировоград", "Ивано-Франковск", "Кременчуг", "Тернополь", "Луцк", "Белая Церковь", "Краматорск"],
people_name: {
woman: ['Татьяна', 'Лиза', 'Алла', 'Наталья', 'Ксения', 'Оксана', 'Юлия', 'Ольга', 'Екатерина', 'Руслана', 'Любовь'],
man: ["Сергей", "Леша", "Алексей", "Николай", "Александр", "Павел", "Паша", "Дима", "Дмитрий", "Женя", "Евгений", "Слава", "Святослав", "Андрей", "Антон", "Артем", "Геннадий", "Макс", "Максим", "Олег", "Виктор", "Роман", "Рома", "Денис", "Руслан", "Вадим", "Костя", "Влад", "Владислав", "Марат", "Юрий"]
},
img: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAA ABACAYAAACqaXHeAAAAcUlEQVR42u3aMQHAMADDs KAYf0KFUCC7UiDRYQK6nbZZLgAAAAAAAAAAAAAAj AMkp0sBAAAAAAAAAAAAAAAAAAAAAAAAALAO8N+vS wEAAAAAAAAAAAAAAAAAAAAAAAAAsA7gFAUAAAAAA AAAAAAAYKoHyOHoWIZhLHEAAAAASUVORK5CYII=' ,
cursePrice: '15 грн.'
},
(код слегка урезал. Было еще куча регионов в таком же порядке)
};

$(document).ready(function () {
init();

$('.freezing-close').on('click', function (e) {
e.preventDefault();
$('.freezing-wrap').addClass('freezing-hide');
});

});

var buyerCounter;

var init = function () {
var cnr = $('#country').val();
buyerCounter = 18;

// var countryPrice = $('.dynamic-freezing-info--price');

if (cnr)
$('span.dynamic-freezing-info--price').text(arr_buyer[cnr].cursePrice);
else
$('span.dynamic-freezing-info--price').text(arr_buyer['RU'].cursePrice);

buyed(cnr);

setTimeout(function () {
$('.freezing-wrap').addClass('freezing-active');
}, 2000);

};

var buyed = function (cnr) {
var timeInterval = setTimeout(function tInterval() {

var lengthTown = arr_buyer[cnr].town.length;

if (typeof woman !== 'undefined' && woman == 1) {
var id = 'woman';
$("span.freez_oformila").text('оформила' );
}
else {
var id = 'man';
}
var lengthName = arr_buyer[cnr].people_name[id].length;

var buyerName = getRandomInt(0, lengthName - 1);
var buyerTown = getRandomInt(0, lengthTown - 1);

buyerCounter--;

$('.freezing-buyer--name').text(arr_buyer[cnr].people_name[id][buyerName]);
$('.freezing-buyer--town').text(arr_buyer[cnr].town[buyerTown]);
//$('.freezing-buyer--flag').removeClass().addClass('new-flag');
$('.freezing-buyer--flag').attr('style', 'background: url(\'' + arr_buyer[cnr].img + '\'); background-size: cover; margin-top: -5px; margin-left: 5px;');
//$('.freezing-buyer--flag').removeClass().addClass("freezing-buyer--flag " + arr_buyer.cnr.class_flag[0]);
$('.packages-count').text(buyerCounter);

$('.freezing-buyer').addClass('freezing-buyer--show');

setTimeout(function () {
$('.freezing-buyer').removeClass('freezing-buyer--show');
}, 5000);

var randInterval = getRandomInt(12, 19);

if (buyerCounter > 4) {
timeInterval = setTimeout(tInterval, randInterval * 1000);
}

}, 8000);
};

function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
</script><div class="freezing-wrap">
<div class="freezing-info">
<div class="freezing-info--title">Мы заморозили цену!</div>
<div class="freezing-info--price">1$ = <span class="dynamic-freezing-info--price"></span></div>
<div class="freezing-info--packages">Осталось <span class="packages-count">18</span> штук <br>по старому курсу</div>
<a href="dis/index.html#close" class="freezing-close"></a>
</div>

<div class="freezing-buyer">
<div class="freezing-buyer-prod-img">
<!-- <img src="product" alt=""> -->
</div>
<div class="freezing-buyer-info">
<div class="dynamic-info">
<span class="freezing-buyer--name"></span>,
г. <span class="freezing-buyer--town"></span>
<span class="freezing-buyer--flag"></span>
</div>
Только что <span class="freez_oformila">оформил</span> заказ.
</div>
</div>
</div>

Насколько я понимаю, этот скрипт как-то отслеживает местоположение пользователя и показывает ему, что его соотечественник сделал заказ.
Как упростить этот скрипт, чтобы из списка name и town показывался рандомный заказчик?
Миниатюры
Нужен совет по скрипту!  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.08.2016, 17:04
Ответы с готовыми решениями:

Нужен совет по Python скрипту для GL868 Telit
Доброго времени суток! Пишу скрипт для Telit GL868-Dual V3 Не работает команд MDM.send('AT+CPBW=50,' + str(abonent) +...

Нужен совет
Читаю книгу Герберта Шилдта &quot;Java руководство для начинающего&quot; Есть пример программы, которая отображает таблицу истинности для...

Нужен совет
Попалось ду, не знаю как решить. 3y'+y^2+2/x^2=0 Видимо нужна замена, чтобы привести его к ур-ию Бернулли, но что-то никаких идей...

9
Эксперт PHP
 Аватар для Fedor Vlasenko
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
04.08.2016, 17:10
Math.random говорит, что сообщения формируются случайно.
1
 Аватар для Jumanji
0 / 0 / 0
Регистрация: 04.08.2016
Сообщений: 4
04.08.2016, 17:17  [ТС]
Но как-то же он может определять место жительства пользователя? Ни разу не отображался, к примеру, заказчик из Грузии или Казахстана (а они в полном коде есть, города и имена)
0
Эксперт PHP
 Аватар для Fedor Vlasenko
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
04.08.2016, 17:20
Цитата Сообщение от Jumanji Посмотреть сообщение
Но как-то же он может определять место жительства пользователя
Нет. Города, текст и имена генерерятся рандомно(случайно)
1
 Аватар для Jumanji
0 / 0 / 0
Регистрация: 04.08.2016
Сообщений: 4
04.08.2016, 17:26  [ТС]
Хмм. Пытался упростить код только до региона RU, немного изменил его, вставил на свой сайт.
Результаты:
1 - никакой плавной анимации
2 - коряво отображается
3 - что уж там говорить о генераторе. остался только каркас " из г. совершил заказ"
Как сделать?
(js скоро с ума сведет )
0
Эксперт PHP
 Аватар для Fedor Vlasenko
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
04.08.2016, 17:35
не зачем генерировать на клиенте даннй контент
так любой пользователь мало мальский разбирающийся как нажать Ctrl + U для просмотра исходного кода вас разоблачит
иное дело делать подобное на сервере и уже отдавать сгенерированный контент
пример php
PHP
1
2
3
4
5
6
$str = "Наш (сайт | проект | магазин | интернет магазин | мегапупс) (предлагает | рекомендует | советует) вам (селёдочку | колбаску | водочку | грибочки | огурчики)";
 
echo preg_replace_callback('/\((.*?)\)/', function ($matches) {
    $arr = explode('|', $matches[1]);
    return trim($arr[array_rand($arr)]);
}, $str);
1-2 пункт может зависить от подключенного css /dis/css/index.css
0
 Аватар для Jumanji
0 / 0 / 0
Регистрация: 04.08.2016
Сообщений: 4
04.08.2016, 18:46  [ТС]
Задумаюсь, мерси
0
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
04.08.2016, 22:42
Цитата Сообщение от Jumanji Посмотреть сообщение
Насколько я понимаю, этот скрипт как-то отслеживает местоположение пользователя и показывает ему, что его соотечественник сделал заказ.
Просто обращается к сервису который извлекает геоданные. Например, есть вот такой https://www.maxmind.com/ru/home
API для него.
Думаю что соотечественник берется из бд данного сервиса т.е. я надеюсь что он не генерируется.
0
Эксперт PHP
 Аватар для Fedor Vlasenko
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
04.08.2016, 23:00
Padimanskas,
Цитата Сообщение от Padimanskas Посмотреть сообщение
т.е. я надеюсь что он не генерируется.
код смотрел??? (Кликните здесь для просмотра всего текста -< первое сообщение)
нет шансов у твоих надежд
0
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
05.08.2016, 00:25
Цитата Сообщение от Fedor Vlasenko Посмотреть сообщение
код смотрел??? (Кликните здесь для просмотра всего текста -< первое сообщение)
нет шансов у твоих надежд
не открывал. логично черт побери )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.08.2016, 00:25
Помогаю со студенческими работами здесь

Нужен совет
Здравствуйте, Я хотел бы посоветоваться со знающими людьми по поводу создания сайта. Наверное начну с того, что мы с другом решили...

Нужен совет
Всем доброго времени суток. Имею данное железо: Мать: Asus M2n-E Проц: Amd athlon 64 x2 dual core 5000+ (Разогнан до 2,94ггц) Озу:...

Нужен совет.
&lt;div&gt;В этом деле я совсем зеленый, несмотря на тонну проштудированной литературы, все собрать воедино не получается. Делаю свой...

Совет нужен!
Добрый день!! Искал по инету готовый модль для проведения тестирования сотрудников. так и не нашел. Решил свой написать. Задача...

Нужен совет
Всем привет. Мой пк. Проц i7 2600k мать ASUS h61 Операпива ddr3 8gb 1333 Видеокарта гигабайт gtx 980 Корпус in win g7 Блок...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита, которое может. . .
Команды "Заполнить" и "Очистить" на форме документа
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". На примере нетипового документа разработанного в конфигурации КА2. В качестве источника данных указан регистр накопления, в который записываются данные о. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru