[feladat @ 76]
Changed some of the functions that are used for the listing of (all)
zones. Instead of getting all zones from the database, it now only
requests exactlty what it needs. Considerable perfomance improvement.
<?php
require_once("inc/i18n.inc.php");
require_once('inc/toolkit.inc.php');
if (isset($_POST['s_submit']) || isset($_POST['q']))
{
$submitted=true;
$search_result=search_record($_POST['q']);
}
// we will continue after the search form ...
include_once('inc/header.inc.php');
?>
<h2><? echo _('Search zones or records'); ?></h2>
<h3>Query</h3>
<table>
<form method="post" action="<? echo $_SERVER['PHP_SELF']?>">
<tr>
<td class="n"><? echo _('Enter a hostname or IP address'); ?></td>
<td class="n"><input type="text" class="input" name="q"></td>
</tr>
<tr>
<td class="n"> </td>
<td class="n"><input type="submit" class="button" name="s_submit" value="<? echo _('Search'); ?>"></td>
</tr>
</form>
</table>
<?php
// results
if ($submitted)
{
echo '<br><br>';
// let's check if we found any domains ...
if (count($search_result) == 2 && count($search_result['domains']))
{
?>
<h4><? echo _('Zones found'); ?>:</h4>
<table>
<tr>
<th> </th>
<th><? echo _('Name'); ?></th>
<th><? echo _('Records'); ?></th>
<th><? echo _('Owner'); ?></th>
</tr>
<?php
foreach($search_result['domains'] as $d)
{
?>
<tr>
<?
if (level(5))
{
?>
<td class="n">
<a href="edit.php?id=<? echo $d["id"] ?>"><img src="images/edit.gif" title="<? echo _('Edit zone') . " " . $d['name']; ?>" alt="[ <? echo _('Edit zone') . " " . $d['name']; ?> ]"></a>
<a href="delete_domain.php?id=<? echo $d["id"] ?>"><img src="images/delete.gif" title="<? print _('Delete zone') . " " . $d['name']; ?>" alt="[<? echo _('Delete zone') . " " . $d['name']; ?>]"></a>
</td>
<?
}
else
{
?>
<td class="n">
</td>
<?
}
?>
<td class="y"><? echo $d['name']?></td>
<td class="y"><? echo $d['numrec']?></td>
<td class="y"><? echo get_owner_from_id($d['owner'])?></td>
</tr>
<?php
} // end foreach ...
?>
</table>
<br><br>
<?php
} // end if
// any records ?!
if(count($search_result['records']))
{
?>
<b><? echo _('Records found'); ?>:</b>
<p>
<table>
<tr>
<td class="n"> </td>
<td class="n"><? echo _('Name'); ?></td>
<td class="n"><? echo _('Type'); ?></td>
<td class="n"><? echo _('Content'); ?></td>
<td class="n"><? echo _('Priority'); ?></td>
<td class="n"><? echo _('TTL'); ?></td>
</tr>
<?php
foreach($search_result['records'] as $r)
{
?>
<tr>
<td class="n">
<?php
if (($r["type"] != "SOA" && $r["type"] != "NS") ||
($GLOBALS["ALLOW_SOA_EDIT"] && $r["type"] == "SOA") ||
($GLOBALS["ALLOW_NS_EDIT"] && $r["type"] == "NS") ||
($r["type"] == "NS" && get_name_from_record_id($r["id"]) != get_domain_name_from_id(recid_to_domid($r["id"])) &&
$GLOBALS["ALLOW_NS_EDIT"] != 1))
{
?>
<a href="edit_record.php?id=<? echo $r['id']?>&domain=<? echo $r['domain_id']?>"><img src="images/edit.gif" alt="[ <? echo _('Edit record'); ?> ]" border="0"></a>
<a href="delete_record.php?id=<? echo $r['id']?>&domain=<? echo $r['domain_id']?>"><img src="images/delete.gif" alt="[ <? echo _('Delete record'); ?> ]" border="0"></a>
<?php
} // big if ;-)
?>
</td>
<td class="y"><? echo $r['name']?></td>
<td class="y"><? echo $r['type']?></td>
<td class="y"><? echo $r['content']?></td>
<?php
if ($r['prio'] != 0)
{
?><td class="y"><? echo $r['prio']?></td><?php
}
else
{
?><td class="n"></td><?php
} // else
?><td class="y"><? echo $r['ttl']?></td>
</tr>
<?php
} // foreach
?>
</table>
<?php
} // if
if(count($search_result['domains']) == 0 && count($search_result['records']) == 0)
{
?>
<table border="0" cellspacing="4">
<tr>
<td width="510" class="n">
<? echo _('Nothing found for query'); ?> "<? echo $_POST['q']?>"
</td>
</tr>
</table>
<?
}
}
include_once('inc/footer.inc.php');
?>