• AngularJS + UI Router: проверка авторизации и прав доступа

    • Tutorial
    Если ваше приложение предполагает авторизацию пользователей и/или проверку прав доступа, то вам придется либо изобретать велосипед, либо гуглить в поисках подходящего решения. В принципе, я тоже это делал. В итоге я принял приемлемым для себя описанный ниже вариант.

    Предпосылки


    Информацию об авторизованном пользователе я решил хранить в sessionStorage, копируя её при запуске приложения в $rootScope. Также по рекомендации авторов UI Router я храню в $rootScope значения объекты $state и $stateParam, для удобного доступа. Информацию же о доступе к тому или иному состоянию можно передавать через блок data при описании самого состояния. Поскольку в моем приложении везде закрыт доступ, я решил идти от обратного и добавлять значение noLogin = true для состояний, которые не требуют авторизации, например страницы ввода логина, восстановления пароля или регистрации.
    Читать дальше →
  • Использование RequireJS в приложениях AngularJS

    • Перевод
    • Tutorial
    При написании больших JavaScript-приложений одна из самых простых вещей, которую можно сделать, это разделить код на несколько файлов. Это улучшает поддерживаемость кода, но увеличивает шансы потерять или ошибиться со вставкой тега script в главный HTML-документ. Отслеживание зависимостей затрудняется с ростом числа файлов проекта. Эта проблема присутствует в больших AngularJS приложениях до сих пор. У нас есть целый ряд инструментов, которые заботятся о загрузке зависимостей в приложении.

    В этой статье мы рассмотрим, использование RequireJS с AngularJS для упрощения загрузки зависимостей. Мы также рассмотрим, как использовать Grunt для генерации файлов, содержащих модули RequireJS.
    Читать дальше →
  • Выполнение PHP-кода в файлах JavaScript

      В большинстве веб-приложений статические JavaScript-файлы устраивают разработчика на 100%. Однако же иногда бывает лучшим решением подключить PHP и сгенерировать содержимое JS-файла «на лету» (например, получить актуальные цены на продукты из БД и передать их JavaScript-программе для валидации формы заказа). Как же это сделать?

      Способ первый: простой

      Конечно же, самое простое решение состоит в том, чтобы включить код PHP внутрь секции вашего HTML-шаблона, поскольку есть шансы, что у него будет расширение .php.

      <script>
          var jsVar = "<?php echo $phpVar ?>";
      </script>

      Даже если расширение шаблона .htm или .html, то в большинстве случаев веб-сервер настроен так, чтобы понимать включения PHP-кода (если же нет, то в конце заметки есть простой пример как решить и эту проблему). Но что касается красоты, то этот вариант не самый изящный. Хорошо бы держать мух и котлеты раздельно.
      Читать дальше →
    • Выпущен новый релиз NetBeans IDE 7.1

        Любители этой IDE наверняка заметили, что сроки указанные в roadmap на ее официальном сайте netbeans.org несколько разошлись с действительностью. Лично я с нетерпением ждал 14 декабря и потом каждый день проверял не изменилось ли чего. И вот вчера это состоялось — новый релиз доступен для широкой публики.

        Ключевым новшествами NetBeans 7.1 является обеспечение полноценной поддержки разработки с использованием JavaFX 2.0, значительное расширение возможностей Swing GUI Builder, поддержка CSS3, новые инструменты для визуальной отладки интерфейса приложений на базе Swing и JavaFX, интеграция поддержки Git. Кроме того, в новой версии добавлены средства для интеграции с Oracle WebLogic Server 12c. Интерфейс NetBeans 7.1 полностью локализован для русскоязычных пользователей.
        Читать дальше →
      • Интеграция Zend_Tool в NetBeans

        Zend_Tool — замечательный инструмент в составе Zend Framework. В интернетах пишут, что он еще не такой совершенный, как подобные утилиты у конкурирующих фреймворков, но я думаю, что лучше что-то, чем ничего. Утилита представляет собой файл zf.sh в Linux или zf.bat в Windows. Для ее работы надо, чтобы путь к интерпретатору PHP был указан в системной переменной PATH. Для удобства я там же указываю и путь к самой утилите: тогда ее можно вызывать из любого места.

        Интерфейс командной строки вещь хорошая — как говорится, feel power at the fingertips. Но не менее удобно иметь такой же функционал в любимой IDE'шке. Кстати говоря, он реализован в Zend Studio — прожорливой и не очень бесплатной, хотя и мощной среде разработки. А для любителей NetBeans разработчики предлагают возможность интегрировать утилиту командной строки в IDE. Когда я ее попробовал активировать, все оказалось неочевидно, хотя и довольно просто, надо было  какое-то время погуглить и поэкспериментировать.

        Итак, что нужно, чтобы все работало (под Windows 7 в моем случае):
        Читать дальше →
        • +18
        • 3,3k
        • 5