Repository: cloudstack
Updated Branches:
  refs/heads/4.5 1681b0227 -> b70106158


CLOUDSTACK-7816: UI > Global Settings > add "Baremetal Rack Configuration" 
section.


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/b7010615
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/b7010615
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/b7010615

Branch: refs/heads/4.5
Commit: b70106158c2c0e3315704a8843c7ed455282f023
Parents: 1681b02
Author: Jessica Wang <[email protected]>
Authored: Thu Oct 30 11:27:38 2014 -0700
Committer: Jessica Wang <[email protected]>
Committed: Thu Oct 30 11:27:38 2014 -0700

----------------------------------------------------------------------
 ui/scripts/globalSettings.js | 135 +++++++++++++++++++++++++++++++++++++-
 1 file changed, 134 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/b7010615/ui/scripts/globalSettings.js
----------------------------------------------------------------------
diff --git a/ui/scripts/globalSettings.js b/ui/scripts/globalSettings.js
index 4cbfd07..34d65a2 100644
--- a/ui/scripts/globalSettings.js
+++ b/ui/scripts/globalSettings.js
@@ -234,7 +234,140 @@
                         }
                     }
                 }
-            },
+            },      
+            baremetalRct: {
+                type: 'select',
+                title: 'Baremetal Rack Configuration',
+                listView: {
+                    id: 'baremetalRct',
+                    label: 'Baremetal Rack Configuration',
+                    fields: {   
+                       id: {
+                               label: 'label.id'
+                       },
+                        url: {
+                            label: 'label.url'
+                        }
+                    },
+                    dataProvider: function(args) {
+                        var data = {};
+                        listViewDataProvider(args, data);
+                        
+                        $.ajax({
+                               url: createURL("listBaremetalRct"),
+                               data: data,
+                               success: function(json) {                       
                
+                                       args.response.success({ data: 
json.listbaremetalrctresponse.baremetalrct });
+                               }
+                        });   
+                    },
+                    actions: {
+                        add: {
+                            label: 'Add Baremetal Rack Configuration',
+                            messages: {                                
+                                notification: function(args) {
+                                    return 'Add Baremetal Rack Configuration';
+                                }
+                            },
+                            createForm: {
+                                title: 'Add Baremetal Rack Configuration',
+                                fields: {
+                                    url: {
+                                        label: 'label.url',
+                                        validation: {
+                                            required: true
+                                        }
+                                    }
+                                }
+                            },
+                            action: function(args) {                           
     
+                                $.ajax({
+                                       url: createURL("addBaremetalRct"),
+                                       data: {
+                                               baremetalrcturl: args.data.url
+                                       },
+                                       success: function(json) {               
                                
+                                               var jid = 
json.addbaremetalrctresponse.jobid
+                                               args.response.success({
+                                            _custom: {
+                                                jobId: jid,
+                                                getUpdatedItem: function(json) 
{                                                       
+                                                    return 
json.queryasyncjobresultresponse.jobresult.baremetalrct;
+                                                }
+                                            }
+                                        });
+                                       }
+                                });
+                            },
+                            notification: {
+                                poll: pollAsyncJobResult
+                            }
+                        }
+                    },                    
+                    
+                    detailView: {
+                       name: "details",
+                       actions: {
+                               remove: {
+                                label: 'Delete Baremetal Rack Configuration',
+                                messages: {
+                                    confirm: function(args) {
+                                        return 'Please confirm that you want 
to delete Baremetal Rack Configuration.';
+                                    },
+                                    notification: function(args) {
+                                        return 'Delete Baremetal Rack 
Configuration';
+                                    }
+                                },
+                                action: function(args) {                       
                
+                                    var data = {
+                                        id: args.context.baremetalRct[0].id
+                                    };
+                                    $.ajax({
+                                        url: createURL('deleteBaremetalRct'),
+                                        data: data,
+                                        success: function(json) {
+                                               var jid = 
json.deletebaremetalrctresponse.jobid;                                          
                                              
+                                            args.response.success({
+                                                _custom: {
+                                                    jobId: jid
+                                                }
+                                            });                                
                
+                                        }
+                                    });
+                                },
+                                notification: {
+                                    poll: pollAsyncJobResult
+                                }
+                            }
+                       },                      
+                       tabs: {
+                            details: {
+                                title: 'label.details',
+                                fields: [{
+                                       id: {
+                                               label: 'label.id'
+                                       },
+                                    url: {
+                                        label: 'label.url'
+                                    }
+                                }],
+                                dataProvider: function(args) {                 
                
+                                    var data = {
+                                        id: args.context.baremetalRct[0].id
+                                    };                                    
+                                    $.ajax({
+                                       url: createURL("listBaremetalRct"),
+                                       data: data,
+                                       success: function(json) {               
                                        
+                                               args.response.success({ data: 
json.listbaremetalrctresponse.baremetalrct[0] });
+                                       }
+                                    });                                       
+                                }
+                            }
+                        }                      
+                    }                    
+                }
+            },        
             hypervisorCapabilities: {
                 type: 'select',
                 title: 'label.hypervisor.capabilities',

Reply via email to