Angular and cookies

by Gennady Grishkovtsov

HTML

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular-cookies.min.js"></script>
<div ng-controller="MainController">
  <p>{{debug}}</p>
  Lang: {{$root.language || 'null'}}
</div>

JavaScript

var myApp = angular.module('myApp', ['ngCookies']);

myApp.controller('MainController', ['$scope', '$rootScope', '$cookies', '$timeout', function($scope, $rootScope, $cookies, $timeout) {
  if ($cookies.get('lang')) {
  	$scope.debug = "Browser has got cookies";
    $rootScope.language = $cookies.get('lang');
  } else {
  	$scope.debug = "Browser does not have cookies";
  	$timeout(function() {
      $cookies.put('lang', 'en');
      $rootScope.language = 'en';
      $scope.debug = "Browser has got cookies";
    }, 2000);
  }
}]);