to post messages and comments.

← All posts tagged JavaScript

И тут вспомнил, как я, студент машиностроительного факультета технологической, в ту пору, академии, за гамбургеры решал на чистом javascript + html задачи по математическому анализу знакомому, что учился на факультете юридическом.

Беспощадная Россия 2000-х годов.

Честно познал формат JSON-записей Nitro (http://nitrotasks.com/) и теперь могу парсить в нужном мне формате оный с Dropbox, с выводом а-ля информационных дашбордов на jQuery. Дальше дело за малым: Bootstrap + немного волшебной аналитики на замену всех этих богомерзких платных сервисов и монстров а-ля MS Project.

Не так давно компания по одному из государственных тендеров выиграла клиента. Одним из условий услуги был независимый мониторинг конечных точек абонента по многим параметрам. После перебора SNMPc, Zabbix, Orange, Icinga, Nagios, выбор пал на последний, как наиболее простой, стабильный и расширяемых во всех плоскостях. Одно плохо, заказчик хотел русскоязычный интерфейс.

Надо признать, за эти годы, Nagios перестали русифицировать, а работает интерфейс на cgi скриптах, написанных на православном C, следовательно, чтобы русифицировать интерфейс, необходимо изменять исходные коды и после снова компилировать в cgi.

В версии 3.4.1 я случайно обнаружил, что разработчики начали использовать в интерфейсе jQuery. Утром проснулся с идеей русификации на лету на клиенте. В этом помог плагин benalman.com что позволяет заменять текст по паттерну или строгому совпадению на странице. К концу дня был готов хеш в виде "en": "ru" и банальный цикл по хешу с вызовом функции замены текста на странице. Разработчики в некоторых скриптах Nagios почему-то решили не подгружать jQuery, но это легко решилось через проверку наличия объекта и, если его не существует, подгрузкой jQuery в реальном времени.

Видимо, я изобрёл велосипед, который в конкретно этом случае помог избежать ещё больших велосипедов. Но меня не покидает одна мысль: если везде всё так насквозь на javascript, почему бы не применять такой метод локализации повсеместно?

Я, конечно, могу слоупочить, но никак не ожидал, что на gazeta.ru при копировании в буфер иксов тоже работает скрипт

<script type="text/javascript">
$(document).ready(function() {
$('#content').addtocopy({
htmlcopytxt: '<br><br>Читать полностью: <a href="'+window.location.href+'">'+window.location.href+'</a>',
minlen:35,
addcopyfirst: false
});
});
</script>

что дописывает в буфер "Читать полностью: СсылкаНаСтатью". Тут из зала подсказывают, что такая же мода у lenta.ru. Возможно, и другие новостные сайты этим страдают.

хак, который я искал всю жизнь:

Converting to Number

Converting values to numbers, especially strings to numbers, is an extremely common requirement and many methods can be used. Any mathematical operator except the concatenation/addition operator will force type-conversion. So conversion of a string to a number might entail performing a mathematical operation on the string representation of the number that would not affect the resulting number, such as subtracting zero or multiplying by one.

var numValue = (+stringValue);

сегодня раскурил хороший, легкий и мощный плагин к jQuery для рисования деревьев по имени jstree. казалось бы, он умеет практически всё, что от него захотят, даже плагины. а вот элементарной выгрузки всего существующего дерева, с изменениями, в json не умеет. а потому как он создает элементы через dom и не хранит в переменной текущую структуру дерева, то максимум что мы можем — это забрать сформированный им html.
грусть-печаль, джуйк, грусть-печаль...