merge branch og-portcontrol
This commit is contained in:
		| @@ -6,14 +6,36 @@ | ||||
|     </tr> | ||||
|     <tr> | ||||
|       <td>Location</td> | ||||
|       [% IF vars.user.port_control %] | ||||
|       <td class="nd_editable_cell" contenteditable="true" | ||||
|         data-field="location" data-for-device="[% d.ip %]"> | ||||
|           <i class="icon-edit nd_edit_icon nd_device_details_edit"></i> | ||||
|           [% d.location %] | ||||
|           <i class="icon-thumbs-up nd_thumb_icon" | ||||
|             rel="tooltip" data-placement="left" data-offset="3" | ||||
|             data-animation="" title="Click to Apply"></i> | ||||
|       </td> | ||||
|       [% ELSE %] | ||||
|       <td> | ||||
|         <a rel="tooltip" data-placement="top" data-offset="5" title="Find Similar Devices" | ||||
|         href="[% vars.search_device %]&location=[% d.location | uri %]">[% d.location %]</a> | ||||
|       </td> | ||||
|       [% END %] | ||||
|     </tr> | ||||
|     <tr> | ||||
|       <td>Contact</td> | ||||
|       [% IF vars.user.port_control %] | ||||
|       <td class="nd_editable_cell" contenteditable="true" | ||||
|         data-field="contact" data-for-device="[% d.ip %]"> | ||||
|           <i class="icon-edit nd_edit_icon nd_device_details_edit"></i> | ||||
|           [% d.contact %] | ||||
|           <i class="icon-thumbs-up nd_thumb_icon" | ||||
|             rel="tooltip" data-placement="left" data-offset="3" | ||||
|             data-animation="" title="Click to Apply"></i> | ||||
|       </td> | ||||
|       [% ELSE %] | ||||
|       <td>[% d.contact %]</td> | ||||
|       [% END %] | ||||
|     </tr> | ||||
|     <tr> | ||||
|       <td>Vendor / Model</td> | ||||
|   | ||||
| @@ -3,6 +3,7 @@ | ||||
|     <tr> | ||||
|       <th></th> | ||||
|       [% FOREACH item IN vars.port_columns %] | ||||
|       [% NEXT IF item.name == 'c_admin' %] | ||||
|         [% NEXT UNLESS params.${item.name} %] | ||||
|         <th[% ' class="center_cell"' IF NOT loop.first %]>[% item.label %]</th> | ||||
|       [% END %] | ||||
| @@ -22,18 +23,39 @@ | ||||
|         <span class="label label-warning">D</span> | ||||
|         [% END %] | ||||
|       </td> | ||||
|  | ||||
|       [% IF params.c_port %] | ||||
|       <td><a class="nd_linkcell nd_this_port_only" href="[% uri_for('/device', | ||||
|               vars.self_options) %]&q=[% params.q | uri %]&f=[% row.port | uri %]"> | ||||
|       [% IF vars.user.port_control AND params.c_admin %] | ||||
|       [% IF row.up_admin == 'up' %] | ||||
|       <td class="nd_editable_cell" data-action="down" | ||||
|         data-field="c_port" data-for-device="[% device %]" data-for-port="[% row.port | html_entity %]"> | ||||
|         <i class="icon-hand-down nd_hand_icon" | ||||
|           rel="tooltip" data-placement="top" data-offset="3" | ||||
|           data-animation="" title="Click to Disable"></i> | ||||
|       [% ELSE %] | ||||
|       <td class="nd_editable_cell" data-action="up" | ||||
|         data-field="c_port" data-for-device="[% device %]" data-for-port="[% row.port | html_entity %]"> | ||||
|         <i class="icon-hand-up nd_hand_icon" | ||||
|           rel="tooltip" data-placement="top" data-offset="3" | ||||
|           data-animation="" title="Click to Enable"></i> | ||||
|       [% END %] | ||||
|       [% ELSE %] | ||||
|       <td> | ||||
|       [% END %] | ||||
|         <a class="nd_linkcell nd_this_port_only" href="[% uri_for('/device', | ||||
|             vars.self_options) %]&q=[% params.q | uri %]&f=[% row.port | uri %]"> | ||||
|         [% row.port | html_entity %] | ||||
|       </a></td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_descr %] | ||||
|       <td class="center_cell">[% row.descr | html_entity %]</td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_type %] | ||||
|       <td class="center_cell">[% row.type | html_entity %]</td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_duplex %] | ||||
|       <td class="center_cell"> | ||||
|         [% IF row.up == 'up' AND row.duplex %] | ||||
| @@ -41,27 +63,63 @@ | ||||
|         [% END %] | ||||
|       </td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_lastchange %] | ||||
|       <td class="center_cell">[% row.lastchange_stamp | html_entity %]</td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_name %] | ||||
|       <td class="center_cell">[% row.name | html_entity %]</td> | ||||
|       [% IF vars.user.port_control AND params.c_admin %] | ||||
|       <td class="center_cell nd_editable_cell" contenteditable="true" | ||||
|           data-field="c_name" data-for-device="[% device %]" data-for-port="[% row.port | html_entity %]"> | ||||
|       <i class="icon-edit nd_edit_icon"></i> | ||||
|       [% ELSE %] | ||||
|       <td class="center_cell"> | ||||
|       [% END %] | ||||
|       <div class="nd_editable_cell_content"> | ||||
|         [% row.name | html_entity %] | ||||
|         [% IF vars.user.port_control AND params.c_admin %] | ||||
|         <i class="icon-thumbs-up nd_thumb_icon" | ||||
|           rel="tooltip" data-placement="top" data-offset="3" | ||||
|           data-animation="" title="Click to Apply"></i> | ||||
|         [% END %] | ||||
|       </div> | ||||
|       </td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_speed %] | ||||
|       <td class="center_cell">[% row.speed | html_entity %]</td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_mac %] | ||||
|       <td class="center_cell">[% row.mac | html_entity %]</td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_mtu %] | ||||
|       <td class="center_cell">[% row.mtu | html_entity %]</td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_vlan %] | ||||
|       [% IF vars.user.port_control AND params.c_admin %] | ||||
|       <td class="center_cell nd_editable_cell" contenteditable="true" | ||||
|         data-field="c_vlan" data-for-device="[% device %]" data-for-port="[% row.port | html_entity %]"> | ||||
|       <i class="icon-edit nd_edit_icon"></i> | ||||
|       <div class="nd_editable_cell_content"> | ||||
|         [% IF row.vlan %][% row.vlan | html_entity %][% ELSE %] [% END %] | ||||
|         <i class="icon-thumbs-up nd_thumb_icon" | ||||
|           rel="tooltip" data-placement="top" data-offset="3" | ||||
|           data-animation="" title="Click to Apply"></i> | ||||
|       </div> | ||||
|       </td> | ||||
|       [% ELSE %] | ||||
|       <td class="center_cell"> | ||||
|         <a class="nd_linkcell" | ||||
|           href="[% uri_for('/search') %]?tab=vlan&q=[% row.vlan | uri %]">[% row.vlan | html_entity %]</a> | ||||
|           href="[% uri_for('/search') %]?tab=vlan&q=[% row.vlan | uri %]"> | ||||
|             [% row.vlan | html_entity %]</a> | ||||
|       </td> | ||||
|       [% END %] | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_vmember %] | ||||
|       <td> | ||||
|         [% IF row.tagged_vlans_count %] | ||||
| @@ -73,14 +131,17 @@ | ||||
|         [% END %] | ||||
|         [% IF row.tagged_vlans_count > 10 %] [%# FIXME make this a settable variable %] | ||||
|           [% SET output = '<div class="vlan_total">(' _ row.tagged_vlans_count | ||||
|             _ ')</div><a href="#" class="nd_linkcell nd_collapse_vlans"><div class="cell-arrow-up"></div>' | ||||
|             _ 'Show VLANs</a><div class="nd_collapsing nd_collapse_pre_hidden">' _ output %] | ||||
|             _ ')</div><span class="nd_linkcell nd_collapse_vlans"> | ||||
|               <i class="cell-arrow-up-down icon-chevron-up icon-large"> | ||||
|               </i>Show VLANs</span> | ||||
|               <div class="nd_collapsing nd_collapse_pre_hidden">' _ output %] | ||||
|           [% SET output = output _ '</div>' %] | ||||
|         [% END %] | ||||
|         [% output %] | ||||
|         [% END %] | ||||
|       </td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_connected %] | ||||
|       <td> | ||||
|         [% IF row.remote_ip %] | ||||
| @@ -115,9 +176,11 @@ | ||||
|         [% END %] | ||||
|       </td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_stp %] | ||||
|       <td class="center_cell">[% row.stp | html_entity %]</td> | ||||
|       [% END %] | ||||
|  | ||||
|       [% IF params.c_up %] | ||||
|       <td class="center_cell"> | ||||
|         [% row.up_admin | html_entity %] / [% row.up | html_entity %] | ||||
|   | ||||
| @@ -38,7 +38,7 @@ | ||||
|       <td> </td> | ||||
|       [% END %] | ||||
|       <td>Switch Port</td> | ||||
|       <td><a href="[% vars.device_ports %]&q=[% node.switch | url %]&f=[% node.port | url %]">[% node.switch %] [ [% node.port %] ]</a> | ||||
|       <td><a href="[% vars.device_ports %]&q=[% node.switch | url %]&f=[% node.port | url %]&c_connected=on">[% node.switch %] [ [% node.port %] ]</a> | ||||
|         [% ' (' _ node.device.dns.remove(settings.domain_suffix) _ ')' IF node.device.dns %] | ||||
|         [% ' <span class="label label-warning">A</span>' IF NOT node.active %] | ||||
|       </td> | ||||
|   | ||||
| @@ -66,7 +66,7 @@ | ||||
|       </td> | ||||
|       [% END %] | ||||
|       <td>Switch Port</td> | ||||
|       <td><a href="[% vars.device_ports %]&q=[% node.switch | url %]&f=[% node.port | url %]">[% node.switch %] [ [% node.port %] ]</a> | ||||
|       <td><a href="[% vars.device_ports %]&q=[% node.switch | url %]&f=[% node.port | url %]&c_connected=on">[% node.switch %] [ [% node.port %] ]</a> | ||||
|         [% ' (' _ node.device.dns.remove(settings.domain_suffix) _ ')' IF node.device.dns %] | ||||
|         [% ' <span class="label label-warning">A</span>' IF NOT node.active %] | ||||
|       </td> | ||||
| @@ -97,7 +97,7 @@ | ||||
|       </td> | ||||
|       [% END %] | ||||
|       <td>Switch Port</td> | ||||
|       <td><a href="[% vars.device_ports %]&q=[% port.ip | url %]&f=[% port.port | url %]">[% port.ip %] [ [% port.port %] ]</a> | ||||
|       <td><a href="[% vars.device_ports %]&q=[% port.ip | url %]&f=[% port.port | url %]&c_connected=on">[% port.ip %] [ [% port.port %] ]</a> | ||||
|         [% ' (' _ port.device.dns.remove(settings.domain_suffix) _ ')' IF port.device.dns %] | ||||
|       </td> | ||||
|       [% IF params.stamps %] | ||||
|   | ||||
| @@ -1,15 +1,12 @@ | ||||
| <img class="sidebar_toggle" id="sidebar_toggle_img_out" | ||||
|   src="[% uri_base %]/images/diagona_settings.png" | ||||
|   rel="tooltip" data-placement="left" data-offset="5" title="Show Options"/> | ||||
| <i class="sidebar_toggle icon-wrench icon-large" id="sidebar_toggle_img_out" | ||||
|   rel="tooltip" data-placement="left" data-offset="5" title="Show Sidebar"></i> | ||||
| <div class="container-fluid"> | ||||
|   <div class="sidebar"> | ||||
|   <div class="sidebar sidebar_pinned"> | ||||
|     <div class="well"> | ||||
|       <img class="sidebar_toggle" id="sidebar_toggle_img_in" | ||||
|         src="[% uri_base %]/images/splashyfish_right.png" | ||||
|         rel="tooltip" data-placement="left" data-offset="5" title="Hide Sidebar"/> | ||||
|       <div id="sidebar_pin_box" class="well"> | ||||
|         <img id="sidebar_pin" src="[% uri_base %]/images/matte_basic_pin.png"/> | ||||
|       </div> | ||||
|       <i class="sidebar_toggle icon-signout" id="sidebar_toggle_img_in" | ||||
|         rel="tooltip" data-placement="left" data-offset="5" title="Hide Sidebar"></i> | ||||
|       <i class="sidebar_pin icon-pushpin sidebar_pin_clicked" | ||||
|         rel="tooltip" data-placement="left" data-offset="5" title="Pin Sidebar"></i> | ||||
|       <div class="tab-content"> | ||||
|         [% FOREACH tab IN vars.tabs %] | ||||
|         <div id="[% tab.id %]_search" class="tab-pane [% 'active' IF params.tab == tab.id %]"> | ||||
| @@ -37,6 +34,7 @@ | ||||
|       [% FOREACH tab IN vars.tabs %] | ||||
|       <li[% ' class="active"' IF params.tab == tab.id %]><a id="[% tab.id %]_link" href="#[% tab.id %]_pane">[% tab.label %]</a></li> | ||||
|       [% END %] | ||||
|       <span class="nd_device_name">[% d.dns || d.name %]</span> | ||||
|     </ul> | ||||
|     <div class="tab-content"> | ||||
|       [% FOREACH tab IN vars.tabs %] | ||||
|   | ||||
| @@ -6,26 +6,76 @@ | ||||
|     // VLANs column list collapser trigger | ||||
|     // it's a bit of a faff because we can't easily use Bootstrap's collapser | ||||
|     $('.nd_collapse_vlans').toggle(function() { | ||||
|         event.preventDefault(); // prevent jump to top of page | ||||
|         $(this).siblings('.nd_collapsing').toggle('fast'); | ||||
|         $(this).siblings('.cell-arrow-up').toggleClass('cell-arrow-down cell-arrow-up'); | ||||
|         $(this).html('<div class="cell-arrow-down"></div>Hide VLANs'); | ||||
|         $(this).siblings('.nd_collapsing').toggle(); | ||||
|         $(this).siblings('.cell-arrow-up-down') | ||||
|           .toggleClass('icon-chevron-up icon-chevron-down'); | ||||
|         $(this).html('<div class="cell-arrow-up-down icon-chevron-down icon-large"></div>Hide VLANs'); | ||||
|       }, function() { | ||||
|         event.preventDefault(); // prevent jump to top of page | ||||
|         $(this).siblings('.nd_collapsing').toggle('fast'); | ||||
|         $(this).siblings('.cell-arrow-down').toggleClass('cell-arrow-down cell-arrow-up'); | ||||
|         $(this).html('<div class="cell-arrow-up"></div>Show VLANs'); | ||||
|         $(this).siblings('.nd_collapsing').toggle(); | ||||
|         $(this).siblings('.cell-arrow-up-down') | ||||
|           .toggleClass('icon-chevron-up icon-chevron-down'); | ||||
|         $(this).html('<div class="cell-arrow-up-down icon-chevron-up icon-large"></div>Show VLANs'); | ||||
|     }); | ||||
|  | ||||
|     // toggle visibility of port up/down and edit controls | ||||
|     $('.nd_editable_cell').hover(function() { | ||||
|       $(this).children('.nd_hand_icon').toggle(); | ||||
|       $(this).children('.nd_edit_icon').toggle(); | ||||
|     }); | ||||
|  | ||||
|     // toggle visibility of VLAN edit control when clicked | ||||
|     $('[contenteditable=true]').focus(function() { | ||||
|       $(this).find('.nd_thumb_icon').toggle(); | ||||
|     }); | ||||
|     $('[contenteditable=true]').blur(function() { | ||||
|       $(this).find('.nd_thumb_icon').toggle(); | ||||
|       // can undo but CSS doesn't shift, so just do nothing for now. | ||||
|     }); | ||||
|  | ||||
|     // activity for port up/down control | ||||
|     $('.icon-hand-up').click(function() { | ||||
|       port_control(this); // save | ||||
|     }); | ||||
|     $('.icon-hand-down').click(function() { | ||||
|       port_control(this); // save | ||||
|     }); | ||||
|  | ||||
|     // activity for contenteditable control | ||||
|     $('.nd_thumb_icon').click(function() { | ||||
|       $(this).closest('[contenteditable=true]').blur(); | ||||
|       port_control(this); // save | ||||
|     }); | ||||
|  | ||||
|     // activity for contenteditable control | ||||
|     $('[contenteditable=true]').keydown(function() { | ||||
|       var esc = event.which == 27, | ||||
|           nl  = event.which == 13; | ||||
|  | ||||
|       if (esc) { | ||||
|         document.execCommand('undo'); | ||||
|         $(this).blur(); | ||||
|       } | ||||
|       else if (nl) { | ||||
|         $(this).blur(); | ||||
|         event.preventDefault(); | ||||
|         port_control(this); // save | ||||
|       } | ||||
|     }); | ||||
|  | ||||
|     // activate tooltips | ||||
|     $("[rel=tooltip]").tooltip({live: true}); | ||||
|   } | ||||
|  | ||||
|   $(document).ready(function() { | ||||
|     // sidebar collapser events trigger change of up/down arrow | ||||
|     $('.collapse').on('show', function() { | ||||
|       $(this).siblings().find('.arrow-up').toggleClass('arrow-down arrow-up'); | ||||
|       $(this).siblings().find('.arrow-up-down') | ||||
|         .toggleClass('icon-chevron-up icon-chevron-down'); | ||||
|     }); | ||||
|  | ||||
|     $('.collapse').on('hide', function() { | ||||
|       $(this).siblings().find('.arrow-down').toggleClass('arrow-down arrow-up'); | ||||
|       $(this).siblings().find('.arrow-up-down') | ||||
|         .toggleClass('icon-chevron-up icon-chevron-down'); | ||||
|     }); | ||||
|  | ||||
|     // show or hide sweeping brush icon when field has content | ||||
|   | ||||
| @@ -20,11 +20,21 @@ | ||||
|   <script type="text/javascript"> | ||||
|     var uri_base = '[% uri_base %]'; | ||||
|   </script> | ||||
|  | ||||
|   <script type="text/javascript" src="[% uri_base %]/javascripts/netdisco.js"></script> | ||||
|  | ||||
|   <link rel="stylesheet" href="[% uri_base %]/css/bootstrap.min.css"> | ||||
|   <link rel="stylesheet" href="[% uri_base %]/css/netdisco.css"> | ||||
|   <link rel="stylesheet" href="[% uri_base %]/css/nd_print.css" media="print"> | ||||
|   [% IF vars.user.port_control %] | ||||
|   <script type="text/javascript" src="[% uri_base %]/javascripts/toastr.js"></script> | ||||
|   <script type="text/javascript" src="[% uri_base %]/javascripts/netdisco_portcontrol.js"></script> | ||||
|  | ||||
|   <link rel="stylesheet" href="[% uri_base %]/css/toastr.css"/> | ||||
|   <link rel="stylesheet" href="[% uri_base %]/css/toastr-responsive.css"/> | ||||
|   [% END %] | ||||
|  | ||||
|   <link rel="stylesheet" href="[% uri_base %]/css/bootstrap.min.css"/> | ||||
|   <link rel="stylesheet" href="[% uri_base %]/css/font-awesome.css"/> | ||||
|   <link rel="stylesheet" href="[% uri_base %]/css/netdisco.css"/> | ||||
|   <link rel="stylesheet" href="[% uri_base %]/css/nd_print.css" media="print"/> | ||||
| </head> | ||||
|  | ||||
| <body> | ||||
| @@ -60,12 +70,19 @@ | ||||
|       </ul> | ||||
|       <form class="navbar-search pull-left" method="get" action="[% uri_for('/search') %]"> | ||||
|         <input placeholder="Find Anything" class="search-query span3" id="nq" name="q" type="text"/> | ||||
|         <i id="navsearchgo" class="icon-search icon-white navbar_icon"></i> | ||||
|         <span style="font-size: 24px;"> | ||||
|         <i id="navsearchgo" class="icon-search navbar_icon"></i> | ||||
|         </span> | ||||
|       </form> | ||||
|       <ul class="nav pull-right"> | ||||
|         <li class="nd_navbartext">Logged in as  </li> | ||||
|         <li class="dropdown"> | ||||
|           <a href="#" class="dropdown-toggle" data-toggle="dropdown"> | ||||
|           [% IF vars.user.port_control %] | ||||
|             <i class="icon-user-md"></i> | ||||
|           [% ELSE %] | ||||
|             <i class="icon-user"></i> | ||||
|           [% END %] | ||||
|             [% session.user %] <b class="caret"></b></a> | ||||
|           <ul class="dropdown-menu"> | ||||
|             [% FOREACH item IN user_dd %] | ||||
|   | ||||
| @@ -1,15 +1,12 @@ | ||||
| <img class="sidebar_toggle" id="sidebar_toggle_img_out" | ||||
|   src="[% uri_base %]/images/diagona_settings.png" | ||||
|   rel="tooltip" data-placement="left" data-offset="5" title="Show Search Options"/> | ||||
| <i class="sidebar_toggle icon-wrench icon-large" id="sidebar_toggle_img_out" | ||||
|   rel="tooltip" data-placement="left" data-offset="5" title="Show Sidebar"></i> | ||||
| <div class="container-fluid"> | ||||
|   <div class="sidebar"> | ||||
|     <div class="well"> | ||||
|       <img class="sidebar_toggle" id="sidebar_toggle_img_in" | ||||
|         src="[% uri_base %]/images/splashyfish_right.png" | ||||
|         rel="tooltip" data-placement="left" data-offset="5" title="Hide Sidebar"/> | ||||
|       <div id="sidebar_pin_box" class="well"> | ||||
|         <img id="sidebar_pin" src="[% uri_base %]/images/matte_basic_pin.png"/> | ||||
|       </div> | ||||
|       <i class="sidebar_toggle icon-signout" id="sidebar_toggle_img_in" | ||||
|         rel="tooltip" data-placement="left" data-offset="5" title="Hide Sidebar"></i> | ||||
|       <i class="sidebar_pin icon-pushpin" | ||||
|         rel="tooltip" data-placement="left" data-offset="5" title="Pin Sidebar"></i> | ||||
|       <div class="tab-content"> | ||||
|         [% FOREACH tab IN vars.tabs %] | ||||
|         <div id="[% tab.id %]_search" class="tab-pane [% 'active' IF params.tab == tab.id %]"> | ||||
|   | ||||
| @@ -1,5 +1,4 @@ | ||||
|  | ||||
|             <p><em>Port Filter Options</em></p> | ||||
|             <input name="q" value="[% params.q %]" type="hidden"/> | ||||
|             <div class="clearfix"> | ||||
|               <a class="field_clear_icon" href="#" | ||||
| @@ -10,9 +9,11 @@ | ||||
|                 rel="tooltip" data-placement="left" data-offset="5" title="Filter by Port, Name or VLAN"/> | ||||
|             </div> | ||||
|             <div class="clearfix"> | ||||
|               <a href="#" data-toggle="collapse" data-target="#nd_legend"> | ||||
|                 <label class="nd_collapser">Legend<div class="arrow-down"></div></label></a> | ||||
|               <div id="nd_legend" class="collapse in"> | ||||
|               <span data-toggle="collapse" data-target="#nd_legend"> | ||||
|                 <label class="nd_collapser">Legend | ||||
|                 <i class="arrow-up-down icon-chevron-up icon-large"></i> | ||||
|                 </label></span> | ||||
|               <div id="nd_legend" class="collapse"> | ||||
|                 <ul class="inputs-list unstyled"> | ||||
|                   <li> | ||||
|                     <span class="label">S</span>  Admin Disabled | ||||
| @@ -39,16 +40,23 @@ | ||||
|               </div> | ||||
|             </div> | ||||
|             <div class="clearfix"> | ||||
|               <a href="#" data-toggle="collapse" data-target="#nd_columns"> | ||||
|                 <label class="nd_collapser">Display Columns<div class="arrow-down"></div></label></a> | ||||
|               <span data-toggle="collapse" data-target="#nd_columns"> | ||||
|                 <label class="nd_collapser">Display Columns | ||||
|                 <i class="arrow-up-down icon-chevron-down icon-large"></i> | ||||
|                 </label></span> | ||||
|               <div id="nd_columns" class="collapse in"> | ||||
|                 <ul class="inputs-list unstyled"> | ||||
|                   [% FOREACH item IN vars.port_columns %] | ||||
|                   [% NEXT IF item.name == 'c_admin' AND NOT vars.user.port_control %] | ||||
|                   <li> | ||||
|                     <label class="checkbox"> | ||||
|                       <input type="checkbox" id="[% item.name %]" | ||||
|                         name="[% item.name %]"[% ' checked="checked"' IF params.${item.name} %] /> | ||||
|                       [% item.label %] | ||||
|                       [% IF item.name == 'c_admin' %] | ||||
|                         <span class="label label-inverse">[% item.label %]</span> | ||||
|                       [% ELSE %] | ||||
|                         [% item.label %] | ||||
|                       [% END %] | ||||
|                     </label> | ||||
|                   </li> | ||||
|                   [% END %] | ||||
| @@ -56,8 +64,10 @@ | ||||
|               </div> | ||||
|             </div> | ||||
|             <div class="clearfix"> | ||||
|               <a href="#" data-toggle="collapse" data-target="#nd_portprops"> | ||||
|                 <label class="nd_collapser">Port Properties<div class="arrow-up"></div></label></a> | ||||
|               <span data-toggle="collapse" data-target="#nd_portprops"> | ||||
|                 <label class="nd_collapser">Port Properties | ||||
|                 <i class="arrow-up-down icon-chevron-up icon-large"></i> | ||||
|                 </label></span> | ||||
|               <div id="nd_portprops" class="collapse"> | ||||
|                 <ul class="inputs-list unstyled"> | ||||
|                   <li> | ||||
| @@ -86,8 +96,10 @@ | ||||
|               </div> | ||||
|             </div> | ||||
|             <div class="clearfix"> | ||||
|               <a href="#" data-toggle="collapse" data-target="#nd_nodeprops"> | ||||
|                 <label class="nd_collapser">Node Properties<div class="arrow-up"></div></label></a> | ||||
|               <span data-toggle="collapse" data-target="#nd_nodeprops"> | ||||
|                 <label class="nd_collapser">Node Properties | ||||
|                 <i class="arrow-up-down icon-chevron-up icon-large"></i> | ||||
|                 </label></span> | ||||
|               <div id="nd_nodeprops" class="collapse"> | ||||
|                 <ul class="inputs-list unstyled"> | ||||
|                   [% FOREACH item IN vars.connected_properties %] | ||||
|   | ||||
| @@ -1,47 +1,42 @@ | ||||
|  | ||||
|             <p><em>Device Search Options</em></p> | ||||
|             <p class="nd_sidebar_title"><em>Device Search Options</em></p> | ||||
|             <input name="q" value="[% params.q %]" type="hidden"/> | ||||
|             <div class="clearfix"> | ||||
|               <a data-btn-for="dns" class="field_copy_icon" href="#"> | ||||
|                 <img src="[% uri_base %]/images/vaga_copy.png"/></a> | ||||
|               <a id="dns_clear_btn" data-btn-for="dns" class="field_clear_icon" href="#"> | ||||
|                 <i class="icon-trash"></i></a> | ||||
|               <i data-btn-for="dns" class="field_copy_icon icon-copy icon-large"></i> | ||||
|               <i id="dns_clear_btn" data-btn-for="dns" | ||||
|                 class="field_clear_icon icon-trash icon-large"></i> | ||||
|               <input class="nd_side_input" placeholder="DNS" | ||||
|                 type="text" name="dns" value="[% params.dns %]" | ||||
|                 rel="tooltip" data-placement="left" data-offset="5" title="DNS"/> | ||||
|             </div> | ||||
|             <div class="clearfix"> | ||||
|               <a data-btn-for="ip" class="field_copy_icon" href="#"> | ||||
|                 <img src="[% uri_base %]/images/vaga_copy.png"/></a> | ||||
|               <a id="ip_clear_btn" data-btn-for="ip" class="field_clear_icon" href="#"> | ||||
|                 <i class="icon-trash"></i></a> | ||||
|               <i data-btn-for="ip" class="field_copy_icon icon-copy icon-large"></i> | ||||
|               <i id="ip_clear_btn" data-btn-for="ip" | ||||
|                 class="field_clear_icon icon-trash icon-large"></i> | ||||
|               <input class="nd_side_input" placeholder="IP Address" | ||||
|                 type="text" name="ip" value="[% params.ip %]" | ||||
|                 rel="tooltip" data-placement="left" data-offset="5" title="IP Address"/> | ||||
|             </div> | ||||
|             <div class="clearfix"> | ||||
|               <a data-btn-for="name" class="field_copy_icon" href="#"> | ||||
|                 <img src="[% uri_base %]/images/vaga_copy.png"/></a> | ||||
|               <a id="name_clear_btn" data-btn-for="name" class="field_clear_icon" href="#"> | ||||
|                 <i class="icon-trash"></i></a> | ||||
|               <i data-btn-for="name" class="field_copy_icon icon-copy icon-large"></i> | ||||
|               <i id="name_clear_btn" data-btn-for="name" | ||||
|                 class="field_clear_icon icon-trash icon-large"></i> | ||||
|               <input class="nd_side_input" placeholder="System Name" | ||||
|                 type="text" name="name" value="[% params.name %]" | ||||
|                 rel="tooltip" data-placement="left" data-offset="5" title="System Name"/> | ||||
|             </div> | ||||
|             <div class="clearfix"> | ||||
|               <a data-btn-for="location" class="field_copy_icon" href="#"> | ||||
|                 <img src="[% uri_base %]/images/vaga_copy.png"/></a> | ||||
|               <a id="location_clear_btn" data-btn-for="location" class="field_clear_icon" href="#"> | ||||
|                 <i class="icon-trash"></i></a> | ||||
|               <i data-btn-for="location" class="field_copy_icon icon-copy icon-large"></i> | ||||
|               <i id="location_clear_btn" data-btn-for="location" | ||||
|                 class="field_clear_icon icon-trash icon-large"></i> | ||||
|               <input class="nd_side_input" placeholder="Location" | ||||
|                 type="text" name="location" value="[% params.location %]" | ||||
|                 rel="tooltip" data-placement="left" data-offset="5" title="Location"/> | ||||
|             </div> | ||||
|             <div class="clearfix"> | ||||
|               <a data-btn-for="description" class="field_copy_icon" href="#"> | ||||
|                 <img src="[% uri_base %]/images/vaga_copy.png"/></a> | ||||
|               <a id="description_clear_btn" data-btn-for="description" class="field_clear_icon" href="#"> | ||||
|                 <i class="icon-trash"></i></a> | ||||
|               <i data-btn-for="description" class="field_copy_icon icon-copy icon-large"></i> | ||||
|               <i id="description_clear_btn" data-btn-for="description" | ||||
|                 class="field_clear_icon icon-trash icon-large"></i> | ||||
|               <input class="nd_side_input" placeholder="Description" | ||||
|                 type="text" name="description" value="[% params.description %]" | ||||
|                 rel="tooltip" data-placement="left" data-offset="5" title="Description"/> | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
|  | ||||
|             <p><em>Node Search Options</em></p> | ||||
|             <p class="nd_sidebar_title"><em>Node Search Options</em></p> | ||||
|             <input name="q" value="[% params.q %]" type="hidden"/> | ||||
|             <div class="clearfix input-prepend"> | ||||
|               <label class="add-on"> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user