2 <html xmlns:ng="http://angularjs.org">
5 <script src="angular.js" ng:autobind></script>
8 Printers.$inject = ['$xhr'];
10 function Printers(xhr){
14 , "/json/monitor/printers?callback=JSON_CALLBACK"
15 , function(code, response){
16 console.log('xhr JSON', code, response);
25 <title>Printer overview</title>
30 font-family: monospace;
50 <div ng:controller="Printers">
52 <label><input type=checkbox name=hostname checked>hostname</label>
53 <label><input type=checkbox name=model>model</label>
54 <label><input type=checkbox name=serial>serial</label>
55 <label><input type=checkbox name=message checked>message</label>
56 <label><input type=checkbox name=consumable>consumable</label>
57 <label><input type=checkbox name=trays>trays</label>
58 <label><input type=checkbox name=pages checked>pages</label>
59 <label><input type=checkbox name=info>info</label>
61 <input type=text name=search>
64 <tr ng:repeat="printer in data.$filter(search)">
65 <td><a href="http://{{printer._key}}" target="{{printer._key}}"><tt>{{printer._key}}</tt></a></td>
67 <td ng:show="hostname">{{printer.hostname}}</td>
68 <td ng:show="model">{{printer.model}}</td>
69 <td ng:show="serial">{{printer.serial}}</td>
71 <td><div class=message ng:show="message" ng:repeat="m in printer.message">{{m}}</div></td>
73 <td ng:show="consumable">
74 <span ng:repeat="c in printer.consumable" ng:class="'p'+((c.curr * 10 + 0.0001)/ c.max).toFixed(0)" title="{{c.name}}">
75 {{ ((c.curr * 100 + 0.0001)/ c.max).toFixed(1) }}%
80 <span ng:repeat="t in printer.tray" ng:class="'p'+((t.capacity * 10 + 0.0001)/ t.max).toFixed(0)" title="{{t.name}} {{t.dim_x}}*{{t.dim_y}}">
81 {{t.capacity}}/{{t.max}}
85 <td ng:show="pages" align="right">{{printer.pages}}</td>
87 <td ng:show="info">{{printer.info}}</td>
91 <input name=debug type=checkbox>