213
213
<dt class="two-col">Storage</dt>
214
214
<dd class="four-col last-col">
215
{$ node.storage $}GB over {$ node.disks $} disks
215
{$ node.storage $}GB over {$ node.physical_disk_count $} disks
217
217
<dt class="two-col">Operating System</dt>
218
218
<dd class="four-col last-col">{$ getOSText() $}</dd>
323
323
<div class="row">
324
<div class="inner-wrapper">
324
<div class="inner-wrapper" ng-controller="NodeStorageController">
326
326
<div class="twelve-col">
327
327
<h3 class="title">Storage</h3>
329
329
<div class="twelve-col">
330
<h4 data-ng-hide="storage.physicalDisks.length">
330
<h4 data-ng-hide="disks.length">
331
331
No storage information. Commissioning this node will gather the storage information.
333
<table class="table-listing ng-hide" data-ng-show="storage.physicalDisks.length">
333
<table class="table-listing ng-hide" data-ng-show="disks.length">
336
336
<th class="t20">Name</th>
338
338
<th class="t10">Size (GB)</th>
339
339
<th class="table-listing__header" class="t25" colspan="2">
340
340
<!-- XXX blake_r 2015-02-18 - Need to add e2e test. -->
341
<a class="table-listing__header-link" href="" data-ng-click="storage.column = 'model'" data-ng-class="{active: storage.column === 'model'}">
341
<a class="table-listing__header-link" href="" data-ng-click="column = 'model'" data-ng-class="{active: column === 'model'}">
344
344
<span class="divide"></span>
345
<a class="table-listing__header-link" href="" data-ng-click="storage.column = 'serial'" data-ng-class="{active: storage.column === 'serial'}">
345
<a class="table-listing__header-link" href="" data-ng-click="column = 'serial'" data-ng-class="{active: column === 'serial'}">
353
<tr class="table-listing__row" data-ng-repeat="disk in storage.physicalDisks">
353
<tr class="table-listing__row" data-ng-repeat="disk in disks">
354
354
<td class="t20">{$ disk.name $}</td>
355
355
<td class="t25">{$ disk.path $}</td>
356
356
<td class="t10">{$ disk.size_gb $}</td>
357
<td class="t25" colspan="2" data-ng-show="storage.column === 'model'">{$ disk.model $}</td>
358
<td class="t25 ng-hide" colspan="2" data-ng-show="storage.column === 'serial'">{$ disk.serial $}</td>
357
<td class="t25" colspan="2" data-ng-show="column === 'model'">{$ disk.model $}</td>
358
<td class="t25 ng-hide" colspan="2" data-ng-show="column === 'serial'">{$ disk.serial $}</td>
360
<span class="tag-link" data-ng-repeat="tag in disk.tags" data-ng-hide="storage.editing">
360
<span class="tag-link" data-ng-repeat="tag in disk.tags" data-ng-hide="editing">
361
361
<a href="#/nodes/?query=storage_tags:({$ tag.text $})">{$ tag.text $}</a>
363
363
<tags-input ng-model="disk.tags"
364
data-ng-show="storage.editing" allowed-tags-pattern="[\w-]+">
364
data-ng-show="editing" allowed-tags-pattern="[\w-]+">
371
<div class="controls" data-ng-show="storage.physicalDisks.length && !storage.editing">
371
<div class="controls" data-ng-show="disks.length && !editing">
372
372
<a href="" class="link-cta-ubuntu secondary"
373
373
data-ng-show="canEdit()"
374
data-ng-click="editStorage()">Edit</a>
374
data-ng-click="edit()">Edit</a>
376
<div class="controls ng-hide" data-ng-show="storage.editing">
376
<div class="controls ng-hide" data-ng-show="editing">
377
377
<a href="" class="link-cta-ubuntu clear"
378
data-ng-click="cancelEditStorage()">Cancel</a>
378
data-ng-click="cancel()">Cancel</a>
379
379
<button class="cta-ubuntu"
380
data-ng-click="saveEditStorage()">Save changes</button>
380
data-ng-click="save()">Save changes</button>