diff options
Diffstat (limited to 'application/modules/user/views/scripts/pool/index.phtml')
-rw-r--r-- | application/modules/user/views/scripts/pool/index.phtml | 80 |
1 files changed, 77 insertions, 3 deletions
diff --git a/application/modules/user/views/scripts/pool/index.phtml b/application/modules/user/views/scripts/pool/index.phtml index 36934f6..4d224a1 100644 --- a/application/modules/user/views/scripts/pool/index.phtml +++ b/application/modules/user/views/scripts/pool/index.phtml @@ -1,7 +1,7 @@ <h1>Pools</h1> <?php if($this->notification != ''){echo $this->notification;} ?> <?php echo $this->formButton('createconfig', 'Create Pool', array( - 'onclick' => 'self.location="/user/pool/createpool"', + 'onclick' => 'self.location="/user/pool/createpool/page/'.$this->page.'"', 'class' => 'addbutton'))?> <?php if ($this->pools): ?> @@ -97,8 +97,14 @@ <?php echo $this->pagination; ?> <?php if (isset($this->freeclients) && count($this->freeclients)>0): ?> -<h2>Free clients</h2> -<table > + <h2 style='margin-top:20px;'>Free clients</h2> + <p style="text-align:right;"> + <span style="font-weight:bold;">Search:</span> <input type="text" id="txtSearch" name="txtSearch" maxlength="50" /> + <img id="imgSearch" src="/media/img/delete.png" alt="Cancel Search" title="Cancel Search" style="width:150px;width:14px;height:14px;" /> + </p> + +<div style="height: 200px; overflow: scroll; overflow-x: hidden; "> +<table id='tblSearch'> <tr> <th>ClientID</th> <th>MacAdress</th> @@ -132,6 +138,74 @@ foreach ($this->freeclients as $client): ?> </tr> <?php endforeach ?> </table> +</div> +<script> +jQuery.expr[":"].containsNoCase = function(el, i, m) { + var search = m[3]; + if (!search) return false; + return eval("/" + search + "/i").test($(el).text()); +}; + + jQuery(document).ready(function() { + // used for the first example in the blog post + jQuery('li:contains(\'DotNetNuke\')').css('color', '#0000ff').css('font-weight', 'bold'); + + // hide the cancel search image + jQuery('#imgSearch').hide(); + + // reset the search when the cancel image is clicked + jQuery('#imgSearch').click(function() { + resetSearch(); + }); + + // cancel the search if the user presses the ESC key + jQuery('#txtSearch').keyup(function(event) { + if (event.keyCode == 27) { + resetSearch(); + } + }); + + // execute the search + jQuery('#txtSearch').keyup(function() { + // only search when there are 3 or more characters in the textbox + if (jQuery('#txtSearch').val().length > 2) { + // hide all rows + jQuery('#tblSearch tr').hide(); + // show the header row + jQuery('#tblSearch tr:first').show(); + // show the matching rows (using the containsNoCase from Rick Strahl) + jQuery('#tblSearch tr td:containsNoCase(\'' + jQuery('#txtSearch').val() + '\')').parent().show(); + // show the cancel search image + jQuery('#imgSearch').show(); + } + else if (jQuery('#txtSearch').val().length == 0) { + // if the user removed all of the text, reset the search + resetSearch(); + } + + // if there were no matching rows, tell the user + if (jQuery('#tblSearch tr:visible').length == 1) { + // remove the norecords row if it already exists + jQuery('.norecords').remove(); + // add the norecords row + jQuery('#tblSearch').append('<tr class="norecords"><td colspan="5" class="Normal">No records were found</td></tr>'); + } + }); +}); + +function resetSearch() { + // clear the textbox + jQuery('#txtSearch').val(''); + // show all table rows + jQuery('#tblSearch tr').show(); + // remove any no records rows + jQuery('.norecords').remove(); + // remove the cancel search image + jQuery('#imgSearch').hide(); + // make sure we re-focus on the textbox for usability + jQuery('#txtSearch').focus(); +} +</script> <?php endif;?> <?php else: ?> |