From 18a09c966493be45c7bd40cb81bed2822325da2c Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Tue, 2 Oct 2012 17:02:11 -0700 Subject: [PATCH] cloudstack UI - advanced search - implement advanced search on snapshot page. --- ui/scripts/storage.js | 35 ++++++++++++++++------------------- 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/ui/scripts/storage.js b/ui/scripts/storage.js index 9b207c5ed01..2e7aac14a17 100644 --- a/ui/scripts/storage.js +++ b/ui/scripts/storage.js @@ -976,7 +976,7 @@ pollAgainIfValueIsIn: { 'UploadNotStarted': 1 }, - pollAgainFn: function(context) { //??? + pollAgainFn: function(context) { var toClearInterval = false; $.ajax({ url: createURL("listVolumes&id=" + context.volumes[0].id), @@ -1072,30 +1072,27 @@ } }, - dataProvider: function(args) { - var array1 = []; - if(args.filterBy != null) { - if(args.filterBy.search != null && args.filterBy.search.by != null && args.filterBy.search.value != null) { - switch(args.filterBy.search.by) { - case "name": - if(args.filterBy.search.value.length > 0) - array1.push("&keyword=" + args.filterBy.search.value); - break; - } - } - } - - var apiCmd = "listSnapshots&listAll=true&page=" + args.page + "&pagesize=" + pageSize + array1.join(""); + advSearchFields: { + name: { label: 'Name' }, + tagKey: { label: 'Tag Key' }, + tagValue: { label: 'Tag Value' } + }, + + dataProvider: function(args) { + var data = {}; + listViewDataProvider(args, data); + if(args.context != null) { if("volumes" in args.context) { - apiCmd += "&volumeid=" + args.context.volumes[0].id; + $.extend(data, { + volumeid: args.context.volumes[0].id + }); } } $.ajax({ - url: createURL(apiCmd), - dataType: "json", - async: true, + url: createURL('listSnapshots'), + data: data, success: function(json) { var items = json.listsnapshotsresponse.snapshot; args.response.success({