AngularJS Template

HTML

<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.min.js"></script>
<h1>Pricing Poll</h1>
<div ng-controller="VerticalsController">
    <div id="container" ui-fade-toggle="visible">
        <h2>{{currentVertical.title}}</h2>
        <ul>
            <li ng-repeat="pricing in currentVertical.pricings">
                <a ng-click="selectPricing(pricing)">{{pricing.name}}</a>
            </li>
        </ul>
    </div>
</div>

JavaScript

function VerticalsController($scope, $timeout) {

  $scope.verticals = [
    {
        title:'internet',
        pricings: [
            {
                name: 'netvision',
                monthly: 23
            },
            {
                name: 'hot',
                monthly: 33
            },
            {
                name: '012',
                monthly: 28
            }
        ]
    },
    {
        title:'cellular', 
        pricings: [
            {
                name: 'cellcom',
                monthly: 20
            },
            {
                name: 'pelephone',
                monthly: 30
            },
            {
                name: 'orange',
                monthly: 25
            }
        ]
    },
    {
        title:'banks', 
        pricings: [
            {
                name: 'leumi',
                monthly: 20
            },
            {
                name: 'poalim',
                monthly: 30
            },
            {
                name: 'benleumi',
                monthly: 25
            }
        ]
    }];

    $scope.selected = [
    ];

    $scope.currentIndex = 0;
    $scope.currentVertical = $scope.verticals[0];

  $scope.selectPricing = function(pricing) {
    $scope.selected.push(pricing);
    $scope.currentIndex++;
    $scope.visible = false;
      
    $timeout(function(){
      $scope.currentVertical = $scope.verticals[$scope.currentIndex];
      $scope.visible = true;
    }, 1000);
  };

  /*$scope.remaining = function() {
    var count = 0;
    angular.forEach($scope.todos, function(todo) {
      count += todo.done ? 0 : 1;
    });
    return count;
  };*/
    
  $scope.visible = true;
}

var fadeToggleDirective = function() {
    return {
        link: function(scope, element, attrs) {
            scope.$watch(attrs.uiFadeToggle, function(val, oldVal) {
                if(val === oldVal) return; // Skip inital call
                // console.log('change');
                element[val ? 'fadeIn'...