Angular CTRL
by wholypantalones
HTML
<div ng-app="ctrl" ng-controller="mindCtrl">
<div ng-repeat="g in buyersGuide" ng-init="mainIndex=$index">
<div ng-repeat="group in g.groups">
<div ng-repeat="make in group.makes">
<h4>{{make.makeText}} {{make.fromYear}}-{{make.toYear}}</h4>
<div class="panel-group" id="accordion{{partIndex}}{{p.partNumberm}}{{mainIndex}}{{$index}}">
<div class="panel panel-default" ng-repeat="model in make.models" ng-init="headIndex=$index">
<div class="panel-heading" id="heading{{partIndex}}{{p.partNumber}}{{mainIndex}}{{headIndex}}">
<h4 class="panel-title">
<a data-toggle="collapse" data-parent="#accordion{{partIndex}}{{p.partNumber}}{{mainIndex}}{{$index}}" data-target="#collapse{{partIndex}}{{p.partNumber}}{{mainIndex}}{{$index}}">
{{model.fromYear}}-{{model.toYear}} {{model.model}}
</a>
</h4>
</div>
<div id="collapse{{partIndex}}{{p.partNumber}}{{mainIndex}}{{$index}}" class="panel-collapse collapse" ng-class="{in:mainIndex==0&&$index==0}">
<div class="panel-body">
<div class="table-responsive clearfix">
<table class="table m-bottom-0">
<tbody>
<tr ng-repeat="vehicle in model.sub">
<td>
{{vehicle.engineText}} {{vehicle.detailsText}}
</td>
</tr>
</tbody>
</table>
</div>
</div><!-- panel body -->
</div><!-- collapse -->
</div><!-- panel -->
</div><!-- panel-group -->
</div><!-- makes -->
</div><!-- groups -->
</div><!-- buyersGuide -->
<pre>{{buyersGuide | json}}</pre>
</div>
JavaScript
angular.module("ctrl", []).controller("mindCtrl", function($scope) {
$scope.buyerInfo = [{
"partDescriptionId": "10",
"fromYear": "02",
"toYear": "02",
"numberOfApplications": "1",
"addDate": "01/03",
"makeText": "CHEVROLET",
"modelText": "CAVALIER",
"engineText": " 4-134 2.2L DOHC",
"specCode1": "0",
"specCode2": "0",
"specCode3": "0",
"specCode4": "0",
"detailsText": "CANADA EQPD - US EQPD - 16 VALVES - MANUFACTURER OE RECOMMENDED OIL CHANGE INTERVALS",
"coverageOrderNumber": "1830",
"coverageLineDescription": "Filters",
"lineCode": "WIF",
"makeCode": "5",
"modelCode": "3",
"engineCode": "9",
"groupText": "Engine Filters & PCV",
"partDescription": "Oil Filter",
"perCarQuantity": "01/03",
"manufacturerName": "WIX",
"groupNumber": "1"
}, {
"partDescriptionId": "10",
"fromYear": "03",
"toYear": "04",
"numberOfApplications": "2",
"addDate": "01/03",
"makeText": "CHEVROLET",
"modelText": "CAVALIER",
"engineText": " 4-134 2.2L DOHC",
"specCode1": "0",
"specCode2": "0",
"specCode3": "0",
"specCode4": "0",
"detailsText": "GAS ENG - OE #24460713 - MANUFACTURER OE RECOMMENDED OIL CHANGE INTERVALS CANADA EQPD - US EQPD - L4-2198CC/134CID 2.2L ENG MEXICO - L4-2190CC/134CID 2.2L ENG",
"coverageOrderNumber": "1830",
"coverageLineDescription": "Filters",
"lineCode": "WIF",
"makeCode": "5",
"modelCode": "3",
"engineCode": "9",
"groupText": "Engine Filters & PCV",
"partDescription": "Oil Filter",
"perCarQuantity": "01/03",
"manufacturerName": "WIX",
"groupNumber": "1"
}, {
"partDescriptionId": "10",
"fromYear": "05",
"toYear": "05",
"numberOfApplications": "1",
"addDate": "01/03",
"makeText": "CHEVROLET",
"modelText": "CAVALIER",
"engineText": " 4-134 2.2L DOHC",
"specCode1": "0",
"specCode2": "0",
"specCode3": "0",
"specCode4":...