Revision 44660f58 ui/static/snf/js/ui/web/ui_icon_view.js
b/ui/static/snf/js/ui/web/ui_icon_view.js | ||
---|---|---|
112 | 112 |
} else { |
113 | 113 |
this.toggler.addClass("open"); |
114 | 114 |
this.vm.do_update_stats = true; |
115 |
this.view.details_views[this.vm.id].update_layout(); |
|
116 |
this.view.tags_views[this.vm.id].update_layout(); |
|
117 |
this.view.stats_views[this.vm.id].update_layout(); |
|
115 | 118 |
} |
116 | 119 |
|
117 | 120 |
var self = this; |
... | ... | |
542 | 545 |
}, |
543 | 546 |
|
544 | 547 |
update_layout: function() { |
548 |
if (!this.visible() && this.parent.details_hidden) { return }; |
|
549 |
|
|
545 | 550 |
var image = this.vm.get_image(); |
546 | 551 |
var flavor = this.vm.get_flavor(); |
547 | 552 |
if (!flavor || !image) { |
... | ... | |
554 | 559 |
this.sel('cpu').text(flavor.get('cpu')); |
555 | 560 |
this.sel('ram').text(flavor.get('ram')); |
556 | 561 |
this.sel('disk').text(flavor.get('disk')); |
562 |
|
|
563 |
this.parent.tags_views[this.vm.id].update_layout(); |
|
564 |
this.parent.stats_views[this.vm.id].update_layout(); |
|
557 | 565 |
} |
558 | 566 |
}); |
559 | 567 |
|
... | ... | |
563 | 571 |
// view id (this could be used to identify |
564 | 572 |
// the view object from global context |
565 | 573 |
view_id: 'vm_icon', |
574 |
|
|
575 |
details_hidden: true, |
|
566 | 576 |
|
567 | 577 |
el: '#machinesview-icon', |
568 | 578 |
id_tpl: 'icon-vm-', |
569 | 579 |
|
570 | 580 |
selectors: { |
571 | 581 |
'vms': '.machine-container', |
572 |
'vm': '#icon-vm-{0}',
|
|
582 |
'vm': '#icon-vm-', |
|
573 | 583 |
'view': '#machinesview-icon', |
574 | 584 |
'tpl': '#machinesview-icon.standard #machine-container-template', |
575 | 585 |
'spinner': '.large-spinner', |
... | ... | |
662 | 672 |
// truncate name |
663 | 673 |
el.find("span.name").text(util.truncate(vm.get("name"), 40)); |
664 | 674 |
// set ips |
665 |
el.find(".ipv4-text").text(vm.get_addresses().ip4 || "undefined"); |
|
675 |
el.find("span.ipv4-text").text(vm.get_addresses().ip4 || "undefined");
|
|
666 | 676 |
// TODO: fix ipv6 truncates and tooltip handler |
667 |
el.find(".ipv6-text").text(vm.get_addresses().ip6 || "undefined"); |
|
677 |
el.find("span.ipv6-text").text(vm.get_addresses().ip6 || "undefined");
|
|
668 | 678 |
// set the state (i18n ??) |
669 |
el.find(".status").text(STATE_TEXTS[vm.state()]); |
|
679 |
el.find("div.status").text(STATE_TEXTS[vm.state()]);
|
|
670 | 680 |
// set state class |
671 |
el.find(".state").removeClass().addClass(views.IconView.STATE_CLASSES[vm.state()].join(" ")); |
|
681 |
el.find("div.state").removeClass().addClass(views.IconView.STATE_CLASSES[vm.state()].join(" "));
|
|
672 | 682 |
// os icon |
673 |
el.find(".logo").css({'background-image': "url(" + this.get_vm_icon_path(vm, "medium") + ")"}); |
|
683 |
el.find("div.logo").css({'background-image': "url(" + this.get_vm_icon_path(vm, "medium") + ")"});
|
|
674 | 684 |
|
675 | 685 |
el.removeClass("connectable"); |
676 | 686 |
if (vm.is_connectable()) { |
677 | 687 |
el.addClass("connectable"); |
678 | 688 |
} |
679 | 689 |
|
680 |
if (vm.get('status') == 'BUILD') { |
|
690 |
var status = vm.get("status"); |
|
691 |
var state = vm.get("state"); |
|
692 |
|
|
693 |
if (status == 'BUILD') { |
|
681 | 694 |
// update bulding progress |
682 |
el.find(".machine-ips").hide(); |
|
683 |
el.find(".build-progress").show().text(vm.get('progress_message')); |
|
695 |
el.find("div.machine-ips").hide();
|
|
696 |
el.find("div.build-progress").show().text(vm.get('progress_message'));
|
|
684 | 697 |
} else { |
685 | 698 |
// hide building progress |
686 |
el.find(".machine-ips").show() |
|
687 |
el.find(".build-progress").hide(); |
|
699 |
el.find("div.machine-ips").show()
|
|
700 |
el.find("div.build-progress").hide();
|
|
688 | 701 |
} |
689 | 702 |
|
690 |
if (vm.state() == "DESTROY") {
|
|
691 |
el.find(".machine-ips").hide(); |
|
692 |
el.find(".build-progress").show().text("Terminating..."); |
|
703 |
if (state == "DESTROY") {
|
|
704 |
el.find("div.machine-ips").hide();
|
|
705 |
el.find("div.build-progress").show().text("Terminating...");
|
|
693 | 706 |
} |
694 | 707 |
|
695 | 708 |
icon_state = vm.is_active() ? "on" : "off"; |
... | ... | |
697 | 710 |
|
698 | 711 |
// update subviews |
699 | 712 |
this.rename_views[vm.id].update_layout(); |
700 |
this.stats_views[vm.id].update_layout(); |
|
701 | 713 |
this.connect_views[vm.id].update_layout(); |
702 |
this.tags_views[vm.id].update_layout(); |
|
703 | 714 |
this.details_views[vm.id].update_layout(); |
704 | 715 |
}, |
705 | 716 |
|
Also available in: Unified diff