Задать вопрос
  • Как получить данные в нужной временной зоне?

    Stalker_RED
    @Stalker_RED
    Хранить UTC 0, при передаче на клиент или еще куда-то - конвертировать.
    В laravel можно в конфиге указать таймзону для вашего приложения.
    'mysql' => [
                'driver'    => 'mysql',
                'host'      => ...,
                'database'  => ...,
                'username'  => ...,
                'password'  => ...,
                'charset'   => 'utf8',
                'collation' => 'utf8_unicode_ci',
                'prefix'    => '',
                'strict'    => false,
                'timezone'  => '+03:00'
            ],
    Ответ написан
    7 комментариев
  • ООП + jQuery, как правильно делать?

    Stalker_RED
    @Stalker_RED
    Ключевое слово this в javascript работает своеобразно, не так, как в других языках.

    В отличие от PHP, Java, C++ и т.п, значение this в javascript не привязывается статически ни к какому объекту, а зависит от контекста вызова.
    javascript.ru/tutorial/object/thiskeyword
    https://learn.javascript.ru/object-methods
    https://developer.mozilla.org/en-US/docs/Web/JavaS...

    И да, вместо
    var self = affiliate
    id: self.customerId
    Можно было просто написать
    id: affiliate.customerId
    Ответ написан
    Комментировать
  • SetTimeout update?

    Stalker_RED
    @Stalker_RED
    let btnUndelete = document.querySelector('.btn-undelete')
    let undeleteHideTimer = null
    
    function showBtn(){
      if (undeleteHideTimer) clearTimeout(undeleteHideTimer) // сбрасываем предыдущий таймер
      undeleteHideTimer = setTimeout(hideBtn, 10000) // ставим новый
      btnUndelete.styleList.add('visible')
    }
    function hideBtn(){
      btnUndelete.styleList.remove('visible')
    }
    Ответ написан
    Комментировать
  • Где и как лучше сделать запрос на сервер или он не нужен?

    Stalker_RED
    @Stalker_RED
    Дополнительный зарос не нужен. Чем вам не нравится определение таймзоны на клиенте и в чем проблема с виджетами?
    https://jsfiddle.net/j5veLew4/

    Отформатировать вывод - еще пара строчек. Если сложно - можно использовать moment.js
    Ответ написан
  • Потянет ли MBP 13" 2015 два Full-Hd дисплея?

    Stalker_RED
    @Stalker_RED
    Режимы двух экранов и видеоповтора: одновременная поддержка полного штатного разрешения на встроенном экране и до 3840x2160 пикселей на одном или двух внешних мониторах;

    lmgtfy.com/?q=MF839+%D1%80%D0%B0%D0%B7%D1%80%D0%B5...
    Ответ написан
  • Вопрос по JS как закрыть окно после добавление товара в корзину?

    Stalker_RED
    @Stalker_RED
    А кроме как по id вы не знаете способов найти элемент?
    document.querySelector('.mfp-close').click()
    Ответ написан
    Комментировать
  • Из JavaScript в PHP?

    Stalker_RED
    @Stalker_RED
    getElementById - это не "родная" функция javascript, а один из методов DOM.

    В php есть библиотеки для работы с DOM DOMDocument::getElementById
    Возможно, более удобными вам покажутся Zend_Dom_Query или PHP Simple HTML DOM Parser, или еще какой-то парсер, их десятки.
    Ответ написан
  • Стоит ли и как сделать загрузку "изображений по запросу"?

    Stalker_RED
    @Stalker_RED
    Поздравляю, вы сделали сразу два изобретения.
    1. Lazy load (ленивая загрузка) - ресурсы подгружаются не все сразу, а по мере надобности.
    2. Preload (предварительная загрузка) - приложение предугадывает какие ресурсы ему вскоре понадобятся, и подгружает их заранее.

    Во всяких серьезных галереях и слайдерах эти штуки давно есть, и они настраиваются.
    preloadImages в bxSlider, например.

    Особой разницы в нагрузке не будет, т.к. все равно каждая картинка грузится отдельным запросом.
    Ответ написан
  • Как определять ответственность функций?

    Stalker_RED
    @Stalker_RED
    В том-то и дело, что есть разные философии/парадигмы/принципы/паттерны/антипаттерны и т.д., а универсальной кнопки "сделать зашибись" пока нет.
    И выбор конкретного подхода зависит от предметной области, от стандартов индустрии и личных предпочтений главного архитектора, или как его там.

    Если уж у вас в тегах стоит ООП, то стоит упомянуть про SOLID. Эти принципы специально придуманы для больших и сложных проектов с долгим жизненным циклом.

    Но если вы собираетесь по-быстренькому набросать управление вентилятором, например, прошить этот код в контроллер и забыть о нем навсегда, то принципы SOLID могут показаться слишком громоздкими и переусложненными.
    Ответ написан
    2 комментария
  • Как с помощью NFC метки сохранить свои пароли?

    Stalker_RED
    @Stalker_RED
    Большинство NFС-меток имеют лишь 64 байта памяти, хотя есть и модели с 1кб, например.

    Не лучше ли использовать менеджер паролей? А уж авторизацию в нем можно сделать хоть через NFC, хоть по отпечатку пальца, хоть голосом.
    Ответ написан
    2 комментария
  • Есть смысл загружать все изображения на субдомен?

    Stalker_RED
    @Stalker_RED
    Да, cookieless domain немного ускорит.

    И вы сами увидели какое-то упрощение при хранении изображений.

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

    Точные цифры по лимитам здесь:
    stackoverflow.com/questions/985431/max-parallel-ht...

    CDN немного про другое. Задержки при получении контента с сервера расположенного на другой стороне земного шара будет большими, чем с сервера на соседней улице. CDN - прежде всего географически распределенная сеть серверов, чтобы клиент мог подключаться к ближайшему, на выбор.
    Ответ написан
    2 комментария
  • В правильном ли направлении строится система роутингов?

    Stalker_RED
    @Stalker_RED
    Направление более-менее правильное, но путь еще предстоит большой.

    Что в роутинге делают htmlspecialchars и trim? Если в запросе пришел мусор, лучше не устраивать лотерею, а честно показывать 404. По крайней мере поначалу.

    str_replace('/', '\\', $str)
    Тестовый сервер на windows? В последствии он только на windows и будет крутится?
    (Хинт: есть такая штука как DIRECTORY_SEPARATOR)

    Переменные с названиями $str и $str2 пораюдуют вас, когда вы попытаетесь вспомнить что делает этот код всего-лишь через полгодика.

    if (file_exists ...
    Не лучше ли поручить подключение классов автолоадеру? Он специально для таких случаев и придуман.

    Ну и echo с выводом ошибок в браузер - это жесть. Надеюсь, что это временная заглушка.
    Ответ написан
    3 комментария
  • Какая связь между положительным рейтингом статей и снижением кармы автора?

    Stalker_RED
    @Stalker_RED
    Milfgard постит крутые истории написанные живым языком. Когда он пишет для Mail.ru или для Крока - тоже получается зашибись. Вот в одном из своих постов он делится опытом написания таких статей.

    А у вас в блоге унылая фигня из серии "победи свою лень, олень", которая многих уже успела задолбать. Отсюда и минусы.
    Ответ написан
    1 комментарий
  • Политика одного источника не позволяет чтения удаленного ресурса?

    Stalker_RED
    @Stalker_RED
    Wiki: CORS

    Прописать правильный Access-Control-Allow-Origin или использовать jsonp, например.
    Ответ написан
    Комментировать
  • Как реализовать прикрепление файлов к форме с помощью перетаскивания?

    Stalker_RED
    @Stalker_RED
    Документация: https://developer.mozilla.org/en-US/docs/Web/Event...

    Готовая реализация: dropzonejs

    Но как сделать удаление конкретного файла из input-a?
    Никак. FileList - readonly по соображениям безопасности. но вы можете скрыть превьюшку и отправить на сервер информацию о том, что файл такой-то нужно проигнорировать.
    Ответ написан
  • Какой видеоплеер нормально держит уровень громкости?

    Stalker_RED
    @Stalker_RED
    Компрессия (сжатие) — процесс изменения динамики звука, выравнивание его громкости, делающее громкий звук тише. По сути компрессор — это автоматический регулятор громкости.

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

    iRBofTz.png

    также посмотрите на настройки нормализации звука. Возможно их стоит изменить или отключить.

    P.S: Тоже долго сидел на LightAlloy (лет 6-7), но потом перешел на Media Player Classic. Он умеет практически все то-же самое, но какие-то преимущества я в нем нашел.
    Ответ написан
  • Почему не происходит создания массива после отлова события?

    Stalker_RED
    @Stalker_RED
    Проблема, скорее всего, из-за неправильного вызова $.get
    Объект вручную собирать не обязательно, в jQuery есть .serialize(), а в "чистом" js есть FormData.

    $('input[name=invoice-invoice_number]').on('blur', function(){
      let myData = $(this.form).serialize();
      $.ajax({
        url: "/echo/json/",
        method: 'POST',
        data: myData
      }).done(function() {
        console.log (myData)
      });
    })

    Живая демка: https://jsfiddle.net/wb5nv0u8/
    gjSbv4K.png
    Ответ написан
    2 комментария
  • Почему не записывается дата в бд ( c нулями запись)?

    Stalker_RED
    @Stalker_RED
    Дык у вас же поле Y-m-d, а вы туда непонятно что пытаетесь записать.
    Напишите 2017-03-07 (или 2017-07-03, хз какую именно дату вы изначально подразумевали).
    Ответ написан
    1 комментарий
  • Как определиться новичку?

    Stalker_RED
    @Stalker_RED
    Совмещение дизайн + верстка - вполне себе обычное явление, и ничего сверхъестественного в этом нет. Потянете или нет - решать вам. Можете пытаться равномерно качать оба скилла, можете временно сделать перекос в одну или другую сторону. Логичнее было бы начать с верстки по чужим макетам, чтобы посмотреть по каким принципам эти макеты вообще строятся. Готовые "psd макеты для верстки" легко гуглятся, если что.

    Знания чистого html/css/js не помешают. С ростом сложности проектов все чаще бывает, что стандартных средств фреймворка недостаточно, готового плагина нет, и нужны именно знания "чистого" чего-то там.

    Если под единомышленниками вы подразумеваете что-то типа сокурсников, то найти таких в сети - скорее всего утопия. У всех разная скорость обучения и разная сфера интересов, и даже если вы найдете кого-то своего уровня, то вскоре, с вероятностью 146%, ваши уровни перестанут совпадать. Можете конечно попытаться, но я не представляю как именно.
    Если попадете на оффлайн курсы - с этим сильно попроще, там ритм занятий больше зависит от преподавателя.
    Ответ написан
    2 комментария
  • В каких вопросах комментарии к ответам играют большую роль, чем сам ответ?

    Stalker_RED
    @Stalker_RED
    Конечно, лайки за комментарии - это круто. Я бы нажимал иногда.
    Составной лайк, как предложил Сергей, тоже может взлететь. Как и вынесение ветки из комментов в ответ.

    ИДЕИ И ПРЕДЛОЖЕНИЯ:
    Сделать более явной кнопку редактирования собственного вопроса или ответа. Поставить ее вместо "нравится", например. Все равно ведь "голосовать за собственный ответ нельзя".

    Скрывать поле ответа для автора самого вопроса. Или полностью блокировать. Или хотя-бы выводить предупреждение. Очень часто новички на тостре вместо того, чтобы дополнить вопрос пишут всякое в поле "ответ".

    Изменить очень неочевидную иконку кнопки с тремя точками на <cоde> или типа того.

    Вместо удаления вопроса с формулировкой "ответ легко ищется поисковиком" - плашка со ссылками на похожие вопросы на тостере.
    pro: Эти почти почти одинаковые вопросы - это же ваши ключевики для органики.
    contra: Несколько лишних кликов для модератора. Но можно частично автоматизировать.

    В некоторых случаях можно подсказывать ответы еще в момент написания заголовка вопроса. Этакий live search в стиле гугла.

    Рейтинги за сами вопросы, причем не только в плюс, но и в минус. Я понимаю, что это очень спорная тема, но сейчас чуть ли не половина всех вопросов, которые появляются в моей ленте, сформулированы так, что можно только пытаться угадать чего на самом деле хотел автор вопроса. И некоторые люди пишут такие вопросы целыми сериями. К примеру, пользователь hollanditkzn пишет какой-то сервис по продаже футболок и когда у него появляются трудности - пишет вопрос на тостер. При этом он, похоже, свято верит, что все в курсе "содержания предыдущих серий" все знают какой код он там у себя написал, и какие ошибки у него выскакивают. Было бы круто заминусовать большую часть таких вопросов, например.
    pros:
    Меньше затраты времени и внимания у отвечающих.
    Более чистая поисковая выдача, если заминусованные вопросы плетутся в конце.
    cons:
    Некоторые люди постесняются писать вопросы (но может это и к лучшему?)
    Появится возможность для "карма-войн". Хотя на и хабре вроде выработали более-менее работающую схему, и на stackoverflow тоже.

    UPD: Иногда, я изменяю ответ на свой вопрос перенося туда что-то из комментария. Но довольно редко - мотивации нет. Если становится понятно, что автор в очередной раз сам не знает чего хочет и вопрос обречен остаться мертвым грузом - проще о нем забыть. Иногда понимаешь, что хоть ответ и принят, так как в комментариях у автора были выбиты признания и дополнительные сведения, но ответ не соответствует тому, что написано в заголовке и теле вопроса - проще о нем забыть. Можно, конечно, попытаться отредактировать сам вопрос, но это уже какая-то википедия получается.
    И только когда понимаю, что сам дал неполный или неправильный ответ, и при этом сам вопрос написан нормально - тогда я могу перенести подробности из комментариев в ответ.

    UPD2: Еще одно рацпредложение:
    Сейчас в ленте над заголовком вопроса указаны теги, как-то так:
    eq163KD.png
    При этом нет никакой возможности узнать какие-же там "+2 ещё", пока не откроешь сам вопрос. Было бы круто сделать показ тегов хотя-бы при наведении мышкой, чтобы можно было не открывая понять, что там про 1С, например.
    Ответ написан
    Комментировать