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

Todos.controller('MainCtrl', ['$scope', '$window', function($scope, $window) {

  $scope.todos = _loadTodos();
  $scope.newTodo = '';

  $scope.newTodoKeydownHandler = function(evt) {
    if(evt.keyCode === 13) {
      $scope.todos.push({
        text: $scope.newTodo
      });
      $scope.newTodo = '';
      _saveTodos($scope.todos);
    }
  };

  $scope.removeTodoByIndex = function(index) {
    $scope.todos.splice(index, 1);
    _saveTodos($scope.todos);
  };

  function _loadTodos() {
    var todosStr = $window.localStorage.getItem('notVanillaTodos.todos');
    return JSON.parse(todosStr || '[]');
  }

  function _saveTodos(todos) {
    var todosStr = JSON.stringify(todos);
    $window.localStorage.setItem('notVanillaTodos.todos', todosStr);
  }

}]);