Как стать автором
Обновить
3
Иван @ishamshurread⁠-⁠only

Пользователь

Отправить сообщение

DMARC: защитите вашу рассылку от подделок

Время на прочтение3 мин
Количество просмотров110K
Сталкивались ли вы с проблемой, что письма от вашего сервиса подделываются с целью вымогательства пароля или других конфиденциальных данных? Ежедневно к пользователям пытаются пробиться тысячи спамерских, фишинговых и мошеннических писем, которые злоумышленники маскируют под сообщения от известных сервисов.

Такие письма причиняют ущерб адресатам, что, в конечном счете, сказывается на репутации как самих добропорядочных сервисов, так и почтовых провайдеров.

Теперь мы даем сервисам, которые ведут свои рассылки, возможность защититься от такого рода подделок с помощью технологии DMARC (dmarc.org), которую мы поддержали первыми среди крупных почтовых сервисов в рунете.



Читать дальше →
Всего голосов 44: ↑42 и ↓2+40
Комментарии20

Утилита для запуска PHP-скриптов в фоновом режиме

Время на прочтение3 мин
Количество просмотров19K

Предисловие


Возможно, вы думаете, что это — очередная статья о том, как расплодить процессы с помощью fork() через консоль PHP. Но увы, ни консоли, ни pcntl_fork() здесь не будет — только браузер и сервер с PHP.
Читать дальше →
Всего голосов 32: ↑15 и ↓17-2
Комментарии7

Простенький helpdesk

Время на прочтение3 мин
Количество просмотров25K

О проекте.


Доброго дня, уважаемые коллеги по отрасли. Сегодня я решился рассказать вам о своем небольшом проекте. Это helpdesk система, написанная под нужды собственной аутсорс — компании, а точнее её beta – версия. Проект написан на yii framework с использованием некоторых extensions сторонних авторов.



Встречайте vsDesk.
Читать дальше →
Всего голосов 77: ↑66 и ↓11+55
Комментарии55

uptodate.js — библиотека для автообновления элементов времени

Время на прочтение1 мин
Количество просмотров18K
Как часто Вы используете конструкции вида «5 минут назад», «Полчаса назад» на вашем сайте? А что если пользователь открыл вкладку и забыл про нее на пару часов? «5 минут назад» явно теряет свою актуальность.
Именно для того чтобы исправить это досадное недоразумение служит uptodate.js

image

Читать дальше →
Всего голосов 87: ↑74 и ↓13+61
Комментарии42

Как запретить браузеру выделять текст

Время на прочтение4 мин
Количество просмотров179K
Если Вы веб-разработчик, то у вас наверняка возникала необходимость в том, чтобы запретить пользователю выделение текста. Оговоримся, что я не имею ввиду полный запрет с целью защиты текста, а запрет на выделение всевозможных подписей, надписей и т.п. где выделение мешает работе интерфейса и пользователю (чаще всего при drag&drop, или выделении текста при двойном клике). Это в первую очередь касается веб-приложений и ни в коем случае не касается информационных сайтов.
Читать дальше →
Всего голосов 57: ↑52 и ↓5+47
Комментарии69

tFormer.js — велосипед для валидации форм

Время на прочтение4 мин
Количество просмотров23K

tFormer.js — empower your HTML forms



Предисловие:


Вам приходилось верстать формы? Приходилось писать скрипт для валидации этих форм на клиенте? Доводилось ли использовать уже существующие плагины/надстройки для валидации форм?
Мне приходилось, но я не был на 100% удовлетворен ни от подхода решения задачи в лоб (собственный скрипт валидации для каждого проекта под его формы), ни от того, как работают существующие сторонние плагины.

Проблема:


Основными проблемами собственных скриптов и плагинов всегда были — гибкость, удобство и простота.
Большое количество data-attributes, необходимых для конфигурации скриптов (как это в Parsley.js) делают и код менее читабельным, и никогда не помнишь, как все они пишутся. Не просто…
Не все плагины хорошо подходили под желаемые HTML-формы, а постоянно писать свои скрипты под разные формы не всегда удобно и разумно.

Задача:


Создать нечто гибкое, удобно настраиваемое, полностью подконтрольное, с интуитивным синтаксисом и чтоб валидировало.

Решение:


Решение вылилось в небольшой опенсорсный плагин, который получил название tFormer.js.
Подробности
Всего голосов 40: ↑35 и ↓5+30
Комментарии31

RBAC Авторизация в YII и LDAP

Время на прочтение12 мин
Количество просмотров97K

RBAC — это простой и мощный способ централизованного управления доступом в веб приложении. Основным его достоинством является то, что при правильном понимании и применении иерархии авторизации можно очень гибко управлять доступом не изменяя код контроллеров.

К сожалению стандартный мануал по RBAC в YII оставляет больше вопросов чем ответов. Эту ситуацию я и намереваюсь исправить.
Я расскажу о создании “правильной” иерархии: как делать не стоит. А в завершении я приберёг инструкцию, о том как подружить LDAP авторизацию (из ActiveDirectory ) с Yii и RBAC.

Все кто заинтересовался, добро пожаловать под кат!
Читать дальше →
Всего голосов 50: ↑47 и ↓3+44
Комментарии26

Манипулирование URL'ами в JavaScript

Время на прочтение2 мин
Количество просмотров70K
Из года в год, сталкиваюсь с одной и той же проблемой. Как добавить, изменить или удалить параметр к некоторому адресу в строковом виде. Быстро и грязно это можно делать с помощью, например, регулярных выражений или найти каке-то готовое решение. Зачастую также может потребоваться, к примеру, подменить путь в адресе или изменить протокол с HTTP на HTTPS и т.д.

В целом, это хочется делать просто и понятно. При этом хочется разумного компромиса. Я встречал некоторые библиотеки, которые дают мощный функционал, но при этом по объему — десятки килобайт JavaScript кода. Несколько десятков килобайт, чтобы, например, подменить параметр в QueryString? Эх…
Читать дальше →
Всего голосов 70: ↑67 и ↓3+64
Комментарии50

DKIM — это просто

Время на прочтение3 мин
Количество просмотров376K
Здравствуйте.

Хочу поделиться своим небольшим опытом прикручивания DKIM (DomainKeys Identified Mail) к своему домену и почтовому серверу.

Мы имеем:
Задача:
  • Разобраться в системе подписи сообщений DKIM, что бы gmail признал её валидной и выдал заветные: dkim=pass.

Читать дальше →
Всего голосов 35: ↑30 и ↓5+25
Комментарии34

Управление картинками и другим бинарным содержимым вашего веб-проекта

Время на прочтение4 мин
Количество просмотров12K
image
Мы, в компании XIAG, в разных проектах постоянно решаем одну и ту же задачу: как хранить и показывать бинарные пользовательские данные. Это могут быть логотипы компаний, PDF файлы с описанием вакансий или приветственное видео. Причем это содержание нужно показывать на страницах сайта самым разнообразным способом: лого должно быть нужного размера, PDF — в виде маленькой превью-картинки, а из видео нужно показать пару стоп-кадров.

Уверен, такая задача знакома всем веб-разработчикам. В этой статье мы хотим поделиться нашим решением проблемы, опубликованным под открытой лицензией на ГитХабе.

Познакомьтесь с веб-сервисом Barberry (https://github.com/Magomogo/Barberry), который мы успешно используем уже около года. Суть сервиса в том, что он хранит оригиналы загруженных документов и способен по-разному отдавать их, конвертируя на лету.
Читать дальше →
Всего голосов 30: ↑26 и ↓4+22
Комментарии33

Веб-консоль на PHP

Время на прочтение1 мин
Количество просмотров37K

Как-то я уже писал о веб-консоли через которую можно управлять Git-ом. Теперь же я решил развить её и сделать универсальную консоль.

Читать дальше →
Всего голосов 43: ↑33 и ↓10+23
Комментарии43

Howto: Amazon SES PHP mailer

Время на прочтение2 мин
Количество просмотров25K
Здравствуйте!

Сегодня я расскажу как настроить массовую рассылку писем через Amazon SES с нуля.

Для начала нужно иметь аккаунт в Amazon Web Services и прикреплённый к нему метод оплаты сервиса. Если у Вас это есть, смело можем начинать!

Настройка SES

Итак, пройдём в консоль: https://console.aws.amazon.com. В списке сервисов ищем SES. Т.к. мы раньше не имели дела c SES, нас встречает удручающая надпись:
image
Читать дальше →
Всего голосов 23: ↑19 и ↓4+15
Комментарии12

Массовая рассылка писем с помощью Amazon SES

Время на прочтение3 мин
Количество просмотров53K
Одним из основных способов общения с пользователем является электронная почта. И практически для каждого сервиса важно обеспечить надежную ее доставку. Когда число писем, отправляемых в сутки переваливает за несколько тысяч, можно столкнуться с различными ограничениями. В этой статье мы хотим рассказать о нашем опыте работы с почтовыми сервисами и предупредить о проблемах, с которыми может столкнуться каждый. Также подробно расскажем о том, как настроить работу с Amazon SES.
Читать дальше →
Всего голосов 15: ↑12 и ↓3+9
Комментарии11

Social-feed — социальный плагин jQuery

Время на прочтение2 мин
Количество просмотров19K

Потребность

При разработке веб-приложений очень часто возникает необходимость отображения постов пользователя или сообщества из социальных сетей. У социальных сетей есть свои виджеты, которые подключаются через iframe, со своим внешним видом и стилем. Что если нам нужно отображать посты одновременно из нескольких социальных сетей с возможнстью изменения дизайна отображения? Если это пара twitter и facebook, то существует несколько плагинов, выполняющих эту задачу. Принимая во внимание, что популярность социальной сети Вконтакте на территории СНГ очень высока, то есть необходимость плагина поддерживающего и эту сеть.
Читать дальше →
Всего голосов 43: ↑40 и ↓3+37
Комментарии39

Подбор маски ввода по телефонному номеру

Время на прочтение7 мин
Количество просмотров170K
Данный плагин для jQuery позволяет автоматически подбирать подходящую маску ввода на основе введённого начала телефонного номера. Это позволяет сделать ввод номера телефона на странице web-cайта более быстрым и безошибочным. Кроме того, разработанный плагин может быть использован в других областях, если правила ввода возможно представить в виде нескольких масок ввода.
Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии56

Загадка выпадающего списка «Амазона»

Время на прочтение2 мин
Количество просмотров191K
Бен Кэменс обнаружил, что в выпадающем списке Shop by Department на сайте «Амазон» ховер-эффект происходит очень быстро, абсолютно без какой-либо задержки. Тем самым происходит нарушение старого, выработанного ещё в 90-х годах прошлого века правила: перед отображением пункта подменю необходим так называемый гистерезис, запаздывание.



Запаздывание необходимо не только для того, чтобы сберечь ресурсы машины пользователя, но и по соображениям юзабилити: если не добавить задержку, то переводить курсор мыши на выпавшее подменю будет неудобно, придётся вести его сначала горизонтально в меню, не задевая другие пункты, и лишь после выбирать нужный подпункт.
Читать дальше →
Всего голосов 558: ↑548 и ↓10+538
Комментарии90

Фабрика виджетов jQuery UI

Время на прочтение9 мин
Количество просмотров56K
Все jQuery UI виджеты создаются на простой основе — Фабрике Виджетов. Она обеспечивает гибкую основу для создания сложных, структурированных плагинов с совместимым API. С её помощью можно создавать не только плагины jQuery UI, но и любые объектно-ориентированные компоненты, не изобретая велосипедов. Она не зависит от других компонентов jQuery UI, наоборот, большая часть компонентов UI зависит от неё.

Что это?


Фабрика виджетов это метод глобального объекта jQuery —
jQuery.widget
Всего голосов 34: ↑34 и ↓0+34
Комментарии16

Опыт построения бюджетного отказоустойчивого online-сервиса 24х7

Время на прочтение6 мин
Количество просмотров14K

Проблематика



Итак, мы имеем коммерческий online-сервис, а наши клиенты — это компании, которые используют сервис 24x7. Наша задача, чтобы клиенты были счастливы и наши внутренние проблемы, связанные с отказом оборудования и ПО оставались для клиента максимально незамеченными. Клиенту вовсе не надо знать о том, что у нас сгорел RAID-контроллер, а системный администратор живет в Таиланде и не привык рано вставать.
Читать дальше →
Всего голосов 25: ↑11 и ↓14-3
Комментарии67

Дайджест интересных новостей и материалов из мира PHP за последние две недели №11 (12.02.2013 — 25.02.2013)

Время на прочтение7 мин
Количество просмотров20K


Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Всего голосов 75: ↑60 и ↓15+45
Комментарии17

Информация

В рейтинге
Не участвует
Откуда
Донецк, Донецкая обл., Украина
Дата рождения
Зарегистрирован
Активность