X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fweb%2Froot%2Fsrc%2Fmain%2Fresources%2Fjs%2Flib.js;h=00eacdfce6b9eba6fed4b472a95f4a265748877b;hb=58f29499046f0d04002f196ef7ee4aef6539ae51;hp=6b73668ab885d3c351e2bfcf15622710555381d8;hpb=65dcba73cc07b3f29e6a6ad547ab5105f1ab9bde;p=controller.git diff --git a/opendaylight/web/root/src/main/resources/js/lib.js b/opendaylight/web/root/src/main/resources/js/lib.js index 6b73668ab8..00eacdfce6 100644 --- a/opendaylight/web/root/src/main/resources/js/lib.js +++ b/opendaylight/web/root/src/main/resources/js/lib.js @@ -26,6 +26,17 @@ one.lib.dashlet = { $h4.text(header); return $h4; }, + label : function(name, type) { + var $span = $(document.createElement('span')); + $span.addClass('label'); + if (type !== undefined) { + $span.addClass(type); + } else if (type !== null) { + $span.addClass('label-info'); + } + $span.append(name); + return $span; + }, list : function(list) { var $ul = $(document.createElement('ul')); $(list).each(function(index, value) { @@ -67,6 +78,68 @@ one.lib.dashlet = { return $buttonGroup; } }, + datagrid: { + /* + * The init function returns HTML markup for the datagrid per the options provided. Each consumer + * of the datagrid must first call init and then provide the datasource for the grid. + * id: this is the id of the table + * options: { + * searchable: true/false, + * pagination: turned off for now, + * flexibleRowsPerPage: turned off + * } + * classes : String containing bootstrap related classes. For ex: "table-striped table-condensed" + * The classes "table", "table-bordered" and "datagrid" will be added by default + */ + init: function(id, options, classes) { + var $fuelGridContainerDiv = $(document.createElement("div")); + $fuelGridContainerDiv.addClass("fuelux"); + $table = $(document.createElement("table")); + $table.attr("id", id); + $table.addClass("table table-bordered datagrid"); + $table.addClass(classes); + // create datagrid header + $thead = $(document.createElement("thead")); + $headertr = $(document.createElement("tr")); + $headerth = $(document.createElement("th")); + // create datagrid footer + $tfoot = $(document.createElement("tfoot")); + $footertr = $(document.createElement("tr")); + $footerth = $(document.createElement("th")); + if(options.searchable == true) { + $headerth.append(one.lib.dashlet.datagrid._searchable()); + } + if(options.flexibleRowsPerPage == true) { + $footerth.append(one.lib.dashlet.datagrid._rowsPerPage(options.popout)); + } + if(options.pagination == true) { + $footerth.append(one.lib.dashlet.datagrid._pagination()); + } + $headertr.append($headerth); + $thead.append($headertr); + $footertr.append($footerth); + $tfoot.append($footertr); + $table.append($thead).append($tfoot); + $fuelGridContainerDiv.append($table); + return $fuelGridContainerDiv; + }, + _searchable: function() { + var searchHTML = "