• Как не выводить сообщения из loguru в консоль?

    @AWEme
    Retard Soft Inc.
    Удалите стандартный логгер, перед тем как добавлять свой:
    from loguru import logger
    logger.remove()
    logger.add(...)
    Ответ написан
    Комментировать
  • Как сделать солнечный блик на блоке?

    @Satir01
    Как просите - не делал, но видел такой hover-эффект ищете на странице, называется Apollo.
    Надеюсь, чем-нибудь помог.
    Ответ написан
    Комментировать
  • Правильная проверка на пустоту переменной?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Читая ответы, хочется плакать.

    В кои-то веки нашелся автор, который осилил корректно сформулировать свою проблему: в дополнение к стандартной проверке РНР, ему надо отбрасывать и нули тоже. Казалось бы - прочти и сделай по заказанному.

    Но нет. Один герой все бубнит про "это исходит от Вашей задачи" (при том что задача описана!) и дальше пишет бессмысленный код. Второй, по своей стародавней привычке, просто с умным видом пишет бессмыслицу. С третьего взятки гладки - типичное похапешное создание, пишет код не приходя в сознание.

    И при этом никто (включая автора) почему-то не догадался тупо перечислить условия задачи:
    !($var || $var === 0 || $var === 0.0 ||$var === '0')) ...

    Не говоря уже о том, что подумав, можно сообразить, что автора интересует длина строки. И написать код, который корректно, но не столь императивно следует всем условиям задачи:
    function is_empty(&$var)
    {
        return !($var || (is_scalar($var) && strlen($var)));
    }

    Самое печальное, что писать это всё - пустая трата времени.
    Серая похапешнаая масса так и останется серой массой, не понимающей языка, на котором она пишет, но всегда готовой дать совет ближнему.
    Ответ написан
    5 комментариев
  • Как раскрасить средствами php серую картинку?

    Посмотри imagine.readthedocs.io/en/latest/.
    Возможно придется составлять финальную картинку из нескольких заготовок, предварительно обработанных.
    Ответ написан
    Комментировать
  • Как раскрасить средствами php серую картинку?

    @santaatnas
    Java, Python, Php
    Комментировать
  • Почему HTML-письмо некорректно отображается на iOS?

    AlexBelkevich
    @AlexBelkevich Автор вопроса
    Нет нерешаемых задач. Есть деревянные клиенты
    Разобрался с проблемой вставкой тега
    <meta name=”x-apple-disable-message-reformatting”>

    Вся проблема в Apple Mail в iOS 10. Если кому интересно, пункт 3
    Ответ написан
    2 комментария
  • Как подключить несколько ssl сертификатов для виртуальных поддоменов?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Отдавайте поддомены урлами типа example.com/subdomain1/, тогда будет достаточно одного сертификата, либо покупайте wildcard-сертификат, либо (рекомендую именно этот вариант) заведите себе сертификаты от Let`s Encrypt, каждый из которых позволяет добавлять до ста имён.
    Ответ написан
    3 комментария
  • Версия 55.0.2883.52 beta (64-bit) как поменять кодировку?

    @9uvwyuwo6pqt
    Ответ написан
    Комментировать
  • Где в Европе поднять VPN?

    OxDEAD
    @OxDEAD
    HelloWorld Developer. Chief of Voodoo programming.
    https://www.arubacloud.com
    Полгода полет нормальный. Мне хватает впски за 1 евро.
    Ответ написан
    3 комментария
  • Как изменить сам тег с помощью js (jq)?

    iiiBird
    @iiiBird Куратор тега HTML
    Пока ты спишь - твой конкурент совершенствуется
    сам тег не поменять, но можешь изначально делать через div
    <div class="all_content_in">
    < div class="menu_left">
    </.....

    и задать стили display: table и display: table-cell
    а потом уже через js менять их
    Ответ написан
    Комментировать
  • Почему так сильно подорожали аккаунты pro на российских биржах фриланса? С чем это связано?

    tin-iven
    @tin-iven
    Фрилансер до костей
    d4b3d05717394f538a0470236a5d53f8.png

    Все понимаю - козлы, жлобы, эксплуататоры, жмоты - акционеры и руководство.
    Но: хлеб у вас в магазине не дорожал? тюлька не дорожала? услуги провайдера? абонемент в спортзале? и т.д.?
    Все или почти все поднялось в цене. Виноват проклятый доллар (ну, или не доллар, не важно). Поднялись и цены на бирже.

    А теперь конкретно по FL. Как это работает - есть акционеры (Мажирин и аптекари) и руководство (Росошанский и Тараханов). Раз в полгода акционеры собираются и говорят руководству - уровень прибыльности должен быть такой. Аптекари покупали долю в у.е. и получать хотят у.е. Мажирину тоже у.е. нужны - хотя бы на танцы свои. Итак, в начале 2013 прибыль была 200 000 у.е. в месяц, а в начале 2015 стала 75 000 у.е. Акционеры говорят руководству - нужно вернуть хотя бы до 150 000 у.е.

    Как это сделать - проблема не акционеров, а руководства. И руководство начинает действовать - вводит Profi, поднимает цену Pro, добавляет закрепления и прочие мелкие платности, увольняет кучу людей штата - почти 90%! www.the-village.ru/village/blogs/business/221897-c...
    Прибыль пошла в гору. "Ф-у-у-х! Акционеры не уволят, даже премию дадут" - так думает руководство. На первом этапе это так и работает.

    Но. Что имеем с итоге: сервис теряет в качестве - не хватает людей для нормального обслуживания пользователей, кода, серверов - отсюда постоянные падения, взломы и недовольство (https://vc.ru/n/fl-off, https://vc.ru/p/fl-hacked и т.д.). Сервис становится дороже (замечу - в рублях, в у.е. остается на том же уровне или дешевле) - отсюда снова недовольство пользователей.

    Блин, так почему же эта биржа не умирает? Почему все снова идут и платят (судя по анализу количество PRO за последний год не уменьшилось, а только выросло)? А я скажу - потому что есть заказы. Не просто заказы, а много заказов. Смотрим сколько - primelance.com/analytics/. Блин, да столько же, сколько на всех остальных биржах вместе взятых.

    Итог повествования: в обозримой перспективе ничего не изменится. На FL будет много заказов - к ней привыкли, она выделяет денег на рекламу больше остальных, только она обслуживает юриков. Поэтому туда будут идти фрилансеры, будут платить дорогой Pro. Этот самый Pro будет дальше дорожать - думаю, к середине 2016 на уровне 2000-2500 рублей. Если рубль продолжит плохо себя вести - еще больше, или переведут ценник в доллар.

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

    Поэтому - если вы знаете или учите английский - валите по быстрому с отечественного фриланса. Если не знаете и учить не собираетесь - радуйтесь, что FL просят 1600 в месяц с неограниченным числом ответов, а не 600 за 10 ответов в месяц, и дальше по 120 рублей за каждый ответ + 10% с каждого заказа (каждого!), как это есть на Upwork.
    Ответ написан
    8 комментариев
  • Как правильно написать авторизацию/аутентификацию?

    @enibeniraba
    Очень сильно упрощенно, без ООП и паттернов):
    Авторизация:
    session_start();
    if (!empty($_SESSION['user_id']))
    	die('Вы уже авторизованы');
    	
    $user = get_user_by_login($_POST['login']);
    if (!$user)
    	die('Пользователь не найден');
    	
    if ($_POST['pass'] !== $user['pass'])
    	die('Неверный пароль');
    
    $_SESSION['user_id'] = $user['id'];
    die('Привет, '.$user['login']);

    При этом в куки пользователя запишется session_id, а в сессию user_id.

    Проверка:
    session_start();
    if (empty($_SESSION['user_id']))
    	die('Нет прав');
    
    $user = get_user_by_id($_SESSION['user_id']);
    if (!$user || !$user['active'])
    {
    	unset($_SESSION['user_id']);
    	die('Нет прав');
    }


    Выход:
    session_start();
    unset($_SESSION['user_id']);


    Если нужен доступ только с одного устройства (последнего, с которого был вход), то храним на сервере последнюю сессию пользователя и при каждом запросе:
    if ($user['session_id'] !== session_id())
    {
    	unset($_SESSION['user_id']);
    	die('Нет прав');
    }


    Если с нескольких, то делать ничего не нужно.

    При oauth авторизации через внешние сервисы в сессии и куках будет все то же самое.
    В бд добавятся 2 поля auth_provider и auth_provider_id.
    В auth_provider у тебя будет vk или fb или google... в auth_provider_id - id пользователя в vk, fb...
    Когда юзер нажимает кнопку войти через vk, ты его редиректишь на контакт. Там он что-то делает. Потом контакт его редиректит к тебе с ?code=request_code.
    Ты используя code делаешь запрос к api контакта на получение access_token.
    Получив access_token, делаешь запрос к api на получение инфы о пользователе. В этой инфе должен быть какой-нибудь уникальный id (auth_provider_id).
    Если у тебя нет пользователя с таким auth_provider_id для провайдера vk, то создаешь его либо без логина, либо генерируешь что-нибудь, без пароля.
    Если пользователь был создан или он был до этого, помещаешь в сессию user.id и считаешь пользователя авторизованным.

    PS:
    По каждой строчке ответа есть нюансы, но думаю общая картина такая.
    Естественно лучше написать класс для пользователя, чтобы использовать что-то вроде:
    $user->is_auth();
    $user->auth_by_id($user_id);
    $user->unauth();
    Ответ написан
    13 комментариев
  • Есть ли нормальный, легальный сервис online ТВ?

    @efkot
    Ответ написан
    Комментировать
  • Какие готовые коммерческие проект "умный дом" есть сейчас на рынке?

    exclus
    @exclus
    СОТ/СКУД/СКС/Автоматика
    Приветствую,
    Да согласен с предыдущим ответчиком, что majordomo, будет один из простых решений для собственной реализации к нему можно подцепить почти любое железо, в так же есть комьюнити ц которого можно запросить помощи.
    Далее коммерческие проекты по мере их удорожания:
    1. Z-wave
    2. Sensehome ( miniserver), ограничено в сценариях и протоколах, но уже готовый щит
    3. Mimismart ( требует проекта, шеф монтажа, и пнр)
    4. Loxone ( требует проекта, шеф монтажа, и пнр)
    Это низкий ценовой сегмент систем, дальше уже выходит за рамки Ваших ожиданий. Вы сможете съэкономить много денег, если напишите грамотное ТЗ, и запросите у интегратора готовый запрограммированный щит и пнр, но тут тогда нужно все подключить самому.
    Ответ написан
    Комментировать
  • Какие готовые коммерческие проект "умный дом" есть сейчас на рынке?

    Jey
    @Jey
    программист, изобретатель, организатор
    Добрый день!

    Я не думаю, что вы сможете найти сразу готовое решение, которое можно купить за какую-то фиксированную сумму денег, принести домой, распаковать и пользоваться. Так же не скажу, что Умный Дом -- это нечто, что за деньги вовсе не купишь. Относительно "стандартный" путь это пойти в компанию-интегратор и совместно с их менеджерами и техническими специалистами составить техническое задание, подобрать компоненты, выполнить монтаж и наладку. За всё это нужно платить и довольно много. Причём процент закладываемой прибыли зачастую невероятно высок в виду эксклюзивности услуги. Но и здесь, к сожалению, нельзя сказать о том, что заплатив один раз всё закончится. Аппетит приходит во время еды и вскоре вы захотите расширить возможножности своего Умного Дома, а для этого опять же надо обращаться к специалистам.

    Если вы технически подкованы, то можете посмотреть в сторону продуктов на базе протокола ZWave -- тот же Fibaro Home Center или контроллер Zipato. Это достаточно сбалансированные решения, относительно несложные в установке и настройке. Благодаря большому количеству совместимого ZWave-оборудования можно получить огромное количество возможностей и гибкости в расширении системы.

    Ну и третий вариант, так сказать, уровень hardcore, но не nightmare -- не обязательно "паять самому" :) Посмотрите в сторону проекта MajorDoMo -- открытая платформа домашней автоматики, поддерживающая работу с большим количеством протоколов одновременно, как проводных так и беспроводных (тот же ZWave в том числе). Этот вариант наиболее гибкий по бюджету, а так же отличается тем, что в нём присутствует очень активное сообщество, генерирующее тонны идей в этом направлении.

    Удачи в реализации!
    Ответ написан
    Комментировать
  • Как пробросить USB порт по радиоканалу?

    RicoX
    @RicoX
    Ушел на http://ru.stackoverflow.com/
    Вариант софтварный:
    USB over IP если надо пробросить с компа на комп.
    Вариант хардварный:
    USB over IP железный, либо практически любой роутер имеющий USB порт. (Пример реализации)
    Ответ написан
    1 комментарий
  • Изменение html кода проходящего через прокси сервер

    vasilevkirill
    @vasilevkirill Автор вопроса
    Сертифицированный тренер MikroTik TR0417
    Решение найдено privoxy
    Ответ написан
    Комментировать
  • Плохо ли, когда http и https версии сайта совсем разные, а домен один и тот же?

    @m-haritonov
    На мой взгляд, формально это не корректно, т.к. протокол отвечает за формат передаваемых данных и использование его иным образом нарушает формальное разделение обязанностей между частями URL адреса. Трактовать часть URL адреса «https» как «закрытая область» я бы не стал (хотя подобный минимализм притягивает), т.к. по https могут передаваться и данные из общедоступной области. Плюс, в будущем может возникнуть необходимость отдавать данные открытой области по https и тогда придётся переносить закрытую область на поддомен (и, как следствие, рассылать пользователям уведомления о смене адреса, менять URL адреса во всех местах программы (т.к. поставить редирект с прежнего адреса будет нельзя) и т.п.).
    Ответ написан
    1 комментарий
  • Регистрация flickr.com

    RedOctoberCZ
    @RedOctoberCZ
    Специально для вас попробовал зарегистрироваться через акк на Facebook :) Всё работает нормально: " Smile RedOctoberCZ. Flickr gives you one free terabyte of space. Share your photos in full resolution. "
    Ответ написан
    3 комментария