/** * Generated from ResourcesTemplate.csp * Do not edit. */ package org.civilian.internal.admin.app; import java.util.Iterator; import org.civilian.Application; import org.civilian.Resource; import org.civilian.template.Template; import org.civilian.template.mixin.HtmlMixin; public class ResourcesTemplate extends Template { public ResourcesTemplate(Application app) { this.app = app; } @Override protected void init() { super.init(); html = new HtmlMixin(out); } @Override protected void print() throws Exception { html.script("civilian/admin/angular.min.1.2.13.js"); // line 9: @html.script("civilian/admin/angular.min.1.2.13.js"); out.println("<script>"); // line 10: <script> out.println("function Ctrl($scope, $http) {"); // line 11: function Ctrl($scope, $http) { out.increaseTab(); out.println("$scope.resources = ["); // line 12: $scope.resources = [ out.increaseTab(); Resource rootRes = app.getRootResource(); // line 13: @Resource rootRes = app.getRootResource(); if (rootRes != null) // line 14: @if (rootRes != null) { Iterator<Resource> it = rootRes.iterator(); // line 15: @Iterator<Resource> it = rootRes.iterator(); while(it.hasNext()) // line 16: @while(it.hasNext()) { Resource resource = it.next(); // line 17: @Resource resource = it.next(); String route = resource.getRoute().toString(); // line 18: @String route = resource.getRoute().toString(); printControllerEntry(resource.getControllerSignature(), route); // line 19: @printControllerEntry(resource.getControllerSignature(), route); } } out.decreaseTab(); out.println("];"); // line 20: ]; out.println(); out.println("$scope.showDetails = function(resource) {"); // line 22: $scope.showDetails = function(resource) { out.increaseTab(); out.println("if (!resource.details) {"); // line 23: if (!resource.details) { out.increaseTab(); out.println("$http({ url: window.location.pathname, method: \"GET\", params: { controller: resource.controller}})."); // line 24: $http({ url: window.location.pathname, method: "GET", params: { controller: resource.controller}}). out.increaseTab(); out.println("success(function(data, status, headers, config) {"); // line 25: success(function(data, status, headers, config) { out.increaseTab(); out.println("resource.details = data;"); // line 26: resource.details = data; out.decreaseTab(); out.println("});"); // line 27: }); out.decreaseTab(); out.decreaseTab(); out.println("}"); // line 28: } out.println("resource.show = !resource.show;"); // line 29: resource.show = !resource.show; out.decreaseTab(); out.println("}"); // line 30: } out.decreaseTab(); out.println("}"); // line 31: } out.println("</script>"); // line 32: </script> out.println("<table class=\"table table-bordered table-condensed\" ng-app ng-controller=\"Ctrl\">"); // line 33: <table class="table table-bordered table-condensed" ng-app ng-controller="Ctrl"> out.println("<tr>"); // line 34: <tr> out.increaseTab(); out.println("<td width=\"30px\">#</td>"); // line 35: <td width="30px">#</td> out.println("<th width=\"33%\">Path</th>"); // line 36: <th width="33%">Path</th> out.println("<th>mapped to class</th>"); // line 37: <th>mapped to class</th> out.println("<th></th>"); // line 38: <th></th> out.decreaseTab(); out.println("</tr>"); // line 39: </tr> out.println("<tr>"); // line 40: <tr> out.increaseTab(); out.println("<td></td>"); // line 41: <td></td> out.println("<td>"); // line 42: <td> out.increaseTab(); out.println("<input type=\"search\" ng-model=\"search.path\" placeholder=\"filter path\">"); // line 43: <input type="search" ng-model="search.path" placeholder="filter path"> out.decreaseTab(); out.println("</td>"); // line 44: </td> out.println("<td>"); // line 45: <td> out.increaseTab(); out.println("<input type=\"search\" ng-model=\"search.controller\" placeholder=\"filter class\">"); // line 46: <input type="search" ng-model="search.controller" placeholder="filter class"> out.decreaseTab(); out.println("</td>"); // line 47: </td> out.println("<td></td>"); // line 48: <td></td> out.decreaseTab(); out.println("</tr>"); // line 49: </tr> out.println("<tr ng-repeat-start=\"r in resources | filter:search:strict\">"); // line 50: <tr ng-repeat-start="r in resources | filter:search:strict"> out.increaseTab(); out.println("<td>{{$index+1}}</td>"); // line 51: <td>{{$index+1}}</td> out.println("<td><a href=\"javascript:;\" ng-click=\"showDetails(r)\">{{r.path}}</a></td>"); // line 52: <td><a href="javascript:;" ng-click="showDetails(r)">{{r.path}}</a></td> out.println("<td>{{r.controller}}</td>"); // line 53: <td>{{r.controller}}</td> out.print("<td><a ng-href=\""); // line 54: <td><a ng-href=" out.print(app.getPath()); // line 54: <%app.getPath()%> out.print("{{r.path}}\" target=\""); // line 54: {{r.path}}" target=" out.print(app.getId()); // line 54: <%app.getId()%> out.println("\"><i class=\"icon-share-alt\"></i></a></td>"); // line 54: "><i class="icon-share-alt"></i></a></td> out.decreaseTab(); out.println("</tr>"); // line 55: </tr> out.println("<tr ng-repeat-end ng-show=\"r.show\">"); // line 56: <tr ng-repeat-end ng-show="r.show"> out.increaseTab(); out.println("<td colspan=\"2\"></td>"); // line 57: <td colspan="2"></td> out.println("<td>"); // line 58: <td> out.increaseTab(); out.println("<ul>"); // line 59: <ul> out.increaseTab(); out.println("<li ng-repeat=\"detail in r.details\">{{detail.method}}(): {{detail.info}}</li>"); // line 60: <li ng-repeat="detail in r.details">{{detail.method}}(): {{detail.info}}</li> out.decreaseTab(); out.println("</ul>"); // line 61: </ul> out.decreaseTab(); out.println("</td>"); // line 62: </td> out.println("<td></td>"); // line 63: <td></td> out.decreaseTab(); out.println("</tr>"); // line 64: </tr> out.println("</table>"); // line 65: </table> } private void printControllerEntry(String ctrlSig, String path) { if (ctrlSig != null) // line 71: @if (ctrlSig != null) { out.print("{ controller: \""); // line 72: { controller: " out.print(ctrlSig); // line 72: <%ctrlSig%> out.print("\", path: \""); // line 72: ", path: " out.print(path.length() != 0 ? path : "/"); // line 72: <%path.length() != 0 ? path : "/"%> out.println("\" },"); // line 72: " }, } } private Application app; private HtmlMixin html; }