From 9c3c772ceb85b1a3db027c4fb52a9f7c59e005ef Mon Sep 17 00:00:00 2001 From: Kumar Rishabh Date: Wed, 15 Mar 2017 01:02:11 +0530 Subject: Add vnf, tag create & Associate Plugins Adds support for accessing database, plugin to create tags and vnfs and make association between them. Also adds autocomplete feature to vnf-tag association. Change-Id: Id55f998df68ae5e6e6fd298c6393b3500777468a Signed-off-by: Kumar Rishabh --- .../VNF_Catalogue/public/javascripts/mode_edit.js | 82 ++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 vnfcatalogue/VNF_Catalogue/public/javascripts/mode_edit.js (limited to 'vnfcatalogue/VNF_Catalogue/public/javascripts/mode_edit.js') diff --git a/vnfcatalogue/VNF_Catalogue/public/javascripts/mode_edit.js b/vnfcatalogue/VNF_Catalogue/public/javascripts/mode_edit.js new file mode 100644 index 0000000..2047a92 --- /dev/null +++ b/vnfcatalogue/VNF_Catalogue/public/javascripts/mode_edit.js @@ -0,0 +1,82 @@ +/******************************************************************************* + * Copyright (c) 2017 Kumar Rishabh and others. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Apache License, Version 2.0 + * which accompanies this distribution, and is available at + * http://www.apache.org/licenses/LICENSE-2.0 + *******************************************************************************/ + +$(document).ready( function() { + + //getVnfs : get 5 main VNFs using typeahead + var getVnfs = new Bloodhound({ + datumTokenizer: Bloodhound.tokenizers.obj.whitespace('vnf_name'), + queryTokenizer: Bloodhound.tokenizers.obj.whitespace('vnf_name'), + remote: { + url: '/search_vnf?key=%QUERY', + wildcard: '%QUERY' + }, + limit: 5 + }); + + getVnfs.initialize(); + $('#scrollable-dropdown-menu #vnf_name.typeahead').typeahead( + { + hint: true, + highlight: true, + minLength: 1 + }, + { + name: 'vnf_name', + display: 'vnf_name', + limit: 5, + source: getVnfs.ttAdapter() + }); + + //getTags : get 5 main tags using typeahead + var getTags = new Bloodhound({ + datumTokenizer: Bloodhound.tokenizers.obj.whitespace('tag_name'), + queryTokenizer: Bloodhound.tokenizers.obj.whitespace('tag_name'), + remote: { + url: '/search_tag?key=%QUERY', + wildcard: '%QUERY' + }, + limit: 5 + }); + + getTags.initialize(); + $('#scrollable-dropdown-menu #tag_name.typeahead').typeahead( + { + hint: true, + highlight: true, + minLength: 1 + }, + { + name: 'tag_name', + display: 'tag_name', + limit: 5, + source: getTags.ttAdapter() + }); + + $("#add_vnf_tag_association_button").on('click',function(){ + event.preventDefault(); + var vnf_name = $("#vnf_name").val() ; + + $.ajax({ + url: '/vnf_tag_association', + type: 'post', + dataType: 'json', + data: $('form#add_vnf_tag_association_form').serialize(), + success: function(data) { + $('#modal3').modal('close'); + $('form#add_vnf_tag_association_form').trigger('reset'); + Materialize.toast('Successfully added the TAG to the VNF!', 3000, 'rounded'); + }, + error: function (error) { + Materialize.toast(error['responseJSON']['error'], 3000, 'rounded'); + } + }); + }); + +}); -- cgit 1.2.3-korg