Автозаполнение форм оффлайн

Привет, %username%!
Хочу поделиться одной занимательной историей, которая произошла на моей работе.
Одной сотруднице начальство поставило задачу: провести анкетирование всех наших партнеров и внести данные через форму на внутреннем сайте. Форма достаточно внушительная, содержит множество полей разных типов (текстовые, выпадающие списки, чекбоксы и т.д.) Да и партнеров тоже немалое количество.
Доступа к внутреннему сайту у них, разумеется, нет, поэтому сами они эту форму заполнить не могут. В общем, прикинув объем работы, пришла эта сотрудница за помощью в наш IT-отдел.
И вот какое решение было придумано.

Читать дальше →

Генератор случайного url с использованием bit.ly API

Всё большую популярность набирает Twitter, для использования которого нужно умение уложить мысль в 140 символов, включая в них ссылку на пост в блоге, фотографию, новостной сайт или прочее. Для этого, как известно, используются сайты-сокращатели ссылок, вроде j.mp или tinyurl.com. В результате их использования ссылка сокращается, но теряет смысл: невозможно определить, куда мы попадем: на хабрахабр или на порносайт, потому что адрес представляет собой набор из 6 символов. Более того, ссылка может вести на какую-либо опасную страницу. Наиболее часто используемый сокращатель, bit.ly (он же j.mp), решает эту проблему, проверяя ссылки: на многие сайты он не пускает, выдавая предупреждение об опасности.

Другой метод (используемый, к примеру, в расширении ChromedBird) заключается в том, что приложение делает запрос к API ссылкосжимателя, отображая пользователю уже полный url. Вышеупомянутый bit.ly такое API предоставляет, позволяя с его помощью как сжимать адреса, так и разжимать, если заданный короткий адрес (грубо говоря, хэш) существует.


Читать дальше →

Автоматический перевод слова в нужный падеж

Введение
Тебе приходилось, %username%, видеть на многих проектах надписи:
  • «Подружиться с Дмитрий»
  • «Опубликован Артем» (подразумевалось кем-то)
  • Etc.
Или как, например, сделал ВКонтакте:
  • «Подружиться с Андреем»
  • «Отправить Ярославу подарок»
Сегодня я расскажу, как сделать такую штуку, как «автоматический перевод слова в нужный падеж».
Читать дальше →

Полноценный кроссдоменный AJAX для пользовательских скриптов Opera 10.6 на транспорте script

Недавно наткнулся на подобную заметку "Кросс-доменные запросы в Opera UserJS" — метод основан на window.name транспорте. Но в комментариях было замечание, что данная техника не работает в Opera 10.64, хотя работает в 10.10. Я детально не
Читать дальше →

Вывод статистики о ходе выполнения долгих операций

Вы делаете сервис (скрипт), который будет выполнять достаточно долго? Тогда, вам точно стоит подумать о выводе статистики по ходу выполнения операции.
Задача
Есть примерно такая таблица.

В которой перечислено огромное количество RSS лент содержимое, которых мы хотим получить. Но, на этом наши хотелки не заканчиваются. Мы хотим, не дожидаясь полной обработки всех лент видеть результат по уже обработанным лентам, а именно: количество записей в ленте и статус — обработана/не обработана.

Читать дальше →

Объектный подход к созданию Javascript-плагинов

Пост будет полезен тем, кто хочет использовать полноценные объекты в Javascript.

У каждого профессионального программиста в течении долгих лет практики формируется свой подход к каждому языку.
Читать дальше →

Простая шифровка методами Javascript

Итак представим себе нелепейшую ситуацию. Имеется у вас хостинг. Скорее всего бесплатный. Ибо какой же уважающий себя бесплатный хостинг, даст юзеру php и апач? Правильно, практически никакой. Нет, конечно, исключения есть. Но давайте мы про них ненамного забудем. И так вам доступен исключительно dhtml и скрипты по мелочам.

А задание в данных условиях самое что ни на есть гадкое, а именно обеспечить контент, закрытый от посторонних глаз и доступный исключительно избранным. Казалось бы ну никак не сохранить от этого юзера данные, они ведь ему передаются в самом что ни на есть открытом виде и никаких тут тебе «на стороне сервера». Но мы то знаем, что есть такая штука, как шифрование и средствами javascript и dhtml его обеспечить очень даже можно.


Читать дальше →

Скачиваем журнал «Компьютерра» в электронную книжку

«Компьютерра»-offline


Журнал «Компьютерра» был моим любимым компьютерным еженедельником. Прекращение существования его бумажной версии в конце 2009 года стало для меня большим разочарованием.

Оказалось, что я совершенно не приспособлен читать online-версию журнала. Во-первых, свободное время для чтения журнала у меня почти всегда находится либо в дороге, либо тогда, когда я нахожусь далеко от компьютера. Во-вторых, заходя на сайт, мне неудобно искать новые статьи среди уже прочитанных. Короче говоря, я привык покупать новый номер журнала и с удобством читать его от начала до конца.

Мне не оставалось ничего другого, как написать скрипт, выкачивающий с сайта «Компьютерры» все новые статьи и выдающий их на одной HTML-странице. Так возник проект «Компьютерра»-offline.


Читать дальше →

Компактный и гибкий Javascript шаблонизатор

В последние дни на Хабре одна за одной вышли несколько статей посвященных шаблонизаторам на Javascript.
Идея вынести «View» из паттерна MVC на сторону клиента очень интересная, но поизучав существующие билиотеки я понял что мне категорически не хватает их возможностей. Простейший обход свойств объекта зачастую был невозможен.
Естественным образом родилась идея использовать в качестве языка разметки тот же Javascript.

Код получился весьма компактным и сходу удалось применить его в реальных задачах. Можно использовать всю гибкость Javascript, так как на выходе шаблонизатор его и генерит.
Читать дальше →