AngularJS Template

by Thunder Hemlock

HTML

<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.min.js"></script>
<div ng-controller="AppCtrl">
    <div>
         <h2>You have clicked the Button: {{click}} Times</h2>

        <button ng-click="click=click+1" ng-init="click=0">Increment</button>
        <button ng-click="clickedYo(click=click+1)" ng-init="click=0">MineYo</button>

    </div>
</div>

JavaScript

function AppCtrl($scope) {

    $scope.clickedYo = function(click) {
        //click=click+1;
        console.log('click:  ' + click);
        if (click == 5) {
            alert('five clicks yo');
        } else {
            alert('else {{click}}');
        }
    };


$scope.bikeSpecs = [{
  make: "Aprilia",
  model: "Aprilia Model 1"
}, {
  make: "Aprilia",
  model: "Aprilia Model 2"
}, {
  make: "Moto Guzzi",
  model: "Moto Guzzi Model 1"
}, {
  make: "Moto Guzzi",
  model: "Moto Guzzi Model 2"
}, {
  make: "zero",
  model: "zero Model 1"
}, {
  make: "zero",
  model: "zero Model 2"
}, {}, {
  id: null
}, {
  id: NaN
}, {
  id: 'undefined'
}];
$scope.selectedModels = [];
$scope.selectedMakes = [];
$scope.invalidEntries = 0;
$scope.selectedMakesArray = ["Aprilia", "Moto Guzzi"];
$scope.selectedModelsArray = ["Aprilia Model 2", "Moto Guzzi Model 1"];


//FILTER SELECTED MODELS
$scope.pushModels = function() {
var selectedMakes = $scope.selectedMakes;
var selectedModelsArray = $scope.selectedModelsArray;
var selectedModels = $scope.selectedModels;
  for (i = 0; i < $scope.selectedModelsArray.length; i += 1) {
    var thisSelectedModelsIndex = i;
    var thisSelectedModelsItem = selectedModelsArray[i];
    console.log('thisSelectedModelsIndex: ' + thisSelectedModelsIndex);
    console.log('thisSelectedModelsItem: ' + thisSelectedModelsItem);

    function isModel(obj) {
      return obj;
    }

    function filterByModels(item) {
      if (isModel(item.model == thisSelectedModelsItem)) {
        selectedModels.push(item);
        console.log('selectedModels', selectedModels);
        return true;
      }
      $scope.invalidEntries++;
      return false;
    }
    //var selectedMakesByModels = selectedMakes.filter(filterByModels);
    selectedMakes.filter(filterByModels);
  }
}
//pushModels();


//FILTER SELECTED MAKES
$scope.pushMakes = function() {
var selectedMakesArray = $scope.selectedMakesArray;
var selectedMakes = $scope.selectedMakes;
var bikeSpecs =...