[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.
<?phprequire_once("inc/toolkit.inc.php");// Assigning records to user: Check for records owned by userif(isset($_POST["action"])&&$_POST["action"]=="record-user"){foreach($_POST["rowid"]as$x_user=>$x_value){$x_userid=$db->queryOne("SELECT id FROM record_owners WHERE user_id = '".$_POST["userid"]."' AND record_id='".$x_value."'");if(empty($x_userid)){$db->query("INSERT INTO record_owners SET user_id = '".$_POST["userid"]."',record_id='".$x_value."'");}}}if(isset($_POST['change_slave_master'])&&is_numeric($_POST["domain"])&&level(5)){change_domain_slave_master($_POST['domain'],$_POST['slave_master']);}if(isset($_POST['type_change'])&&in_array($_POST['newtype'],$server_types)){change_domain_type($_POST['newtype'],$_GET['id']);}if(isset($_POST["newowner"])&&is_numeric($_POST["domain"])&&is_numeric($_POST["newowner"])){add_owner($_POST["domain"],$_POST["newowner"]);}if(isset($_POST["del_user"])&&is_numeric($_POST["del_user"])&&level(5)){delete_owner($_GET["id"],$_POST["del_user"]);}$info=get_domain_info_from_id($_GET["id"]);include_once("inc/header.inc.php");if(level(5)){if(!isset($info["ownerid"])){?> <div class="error"><?echo_('Error');?>: <?echo('There is no owner for this zone, please assign someone.');?></div><?}$domain_type=get_domain_type($_GET['id']);if($domain_type=="SLAVE"){$slave_master=get_domain_slave_master($_GET['id']);if($slave_master==""){?> <div class="error"><?echo_('Type of this zone is "slave", but there is no IP address for it\'s master given.');?></div><?}}}?> <h2><?echo_('Edit zone');?> "<?echoget_domain_name_from_id($_GET["id"])?>"</h2><?if(level(5)){?> <div id="meta"> <div id="meta-left"> <table> <tr> <th colspan="2"><?echo_('Owner of zone');?></th> </tr><?if(isset($info["ownerid"])){$userRes=get_users_from_domain_id($_GET["id"]);foreach($userResas$user){?> <tr> <form method="post" action="edit.php?id=<?echo$_GET['id']?>"> <td><?echo$user["fullname"]?> </td> <td> <input type="hidden" name="del_user" value="<?echo$user["id"]?>"> <input type="submit" class="sbutton" name="co" value="<?echo_('Delete');?>"> </td> </form> </tr><?}}else{?> <tr> <td><?echo_('No owner set or this zone!');?></td> </tr><?}}?> <tr> <form method="post" action="edit.php?id=<?echo$_GET['id']?>"> <td> <input type="hidden" name="domain" value="<?echo$_GET["id"]?>"> <select name="newowner"><?$users=show_users();foreach($usersas$u){unset($add);if($u["id"]==$info["ownerid"]){$add=" SELECTED";}?> <option<?echo$add?> value="<?echo$u["id"]?>"><?echo$u["fullname"]?></option><?}?> </select> </td> <td> <input type="submit" class="sbutton" name="co" value="<?echo_('Add');?>"> </td> </form> </tr> </table> </div> <?// eo div meta-left ?><?if(level(5)){$domain_type=get_domain_type($_GET['id']);?> <div id="meta-right"> <table> <tr> <th colspan="2"><?echo_('Type of zone');?></th> </tr> <form action="<?echo$_SERVER['PHP_SELF']?>?id=<?echo$_GET['id']?>" method="post"> <input type="hidden" name="domain" value="<?echo$_GET["id"]?>"> <tr> <td> <select name="newtype"><?foreach($server_typesas$s){unset($add);if($s==$domain_type){$add=" SELECTED";}?> <option<?echo$add?> value="<?echo$s?>"><?echo$s?></option><?}?> </select> </td> <td> <input type="submit" class="sbutton" name="type_change" value="<?echo_('Change');?>"> </td> </tr> </form><?if($domain_type=="SLAVE"){$slave_master=get_domain_slave_master($_GET['id']);?> <tr> <th colspan="2"><?echo_('IP address of master NS');?> </th> </tr> <form action="<?echo$_SERVER['PHP_SELF']?>?&id=<?echo$_GET['id']?>" method="post"> <input type="hidden" name="domain" value="<?echo$_GET["id"]?>"> <tr> <td> <input type="text" name="slave_master" value="<?echo$slave_master;?>" class="input"> </td> <td> <input type="submit" class="sbutton" name="change_slave_master" value="<?echo_('Change');?>"> </td> </tr> </form><?}}?> </table> </div> <?// eo div meta-right ?></div><?// eo div meta ?><divid="meta"><?if($_SESSION[$_GET["id"]."_ispartial"]!=1&&$domain_type!="SLAVE"){?> <input type="button" class="button" OnClick="location.href='add_record.php?id=<?echo$_GET["id"]?>'" value="<?echo_('Add record');?>"> <?}if(level(5)){?> <input type="button" class="button" OnClick="location.href='delete_domain.php?id=<?echo$_GET["id"]?>'" value="<?echo_('Delete zone');?>"><?}?> </div> <?// eo div meta ?><divclass="showmax"><?show_pages($info["numrec"],ROWAMOUNT,$_GET["id"]);?> </div> <?// eo div showmax ?><formaction="<? echo $_SERVER["PHP_SELF"]?>?id=<? echo $_GET["id"]?>"method="post"><inputtype="hidden"name="action"value="record-user"><table><?$countinput=0;$rec_result=get_records_from_domain_id($_GET["id"],ROWSTART,ROWAMOUNT);if($rec_result!=-1){?> <tr> <th> </th><?if(level(10)&&$domain_type!="SLAVE"){echo"<th class=\"n\">"._('Sub-owners')."</td>";}?> <th><?echo_('Name');?></th> <th><?echo_('Type');?></th> <th><?echo_('Content');?></th> <th><?echo_('Priority');?></th> <th><?echo_('TTL');?></th> </tr><?$recs=sort_zone($rec_result);foreach($recsas$r){?> <tr> <td class="n"><?if($domain_type!="SLAVE"){if(level(5)||(!($r["type"]=="SOA"&&!$GLOBALS["ALLOW_SOA_EDIT"])&&!($r["type"]=="NS"&&!$GLOBALS["ALLOW_NS_EDIT"]))){?> <a href="edit_record.php?id=<?echo$r['id']?>&domain=<?echo$_GET["id"]?>"><img src="images/edit.gif" alt="[ <?echo_('Edit record');?> ]"></a> <a href="delete_record.php?id=<?echo$r['id']?>&domain=<?echo$_GET["id"]?>"><img src="images/delete.gif" ALT="[ <?echo_('Delete record');?> ]" BORDER="0"></a><?}}if(level(10)&&$domain_type!="SLAVE"){?> <input type="checkbox" name="rowid[<?echo$countinput++?>]" value="<?echo$r['id']?>" /><?}?> </td><?if(level(10)&&$domain_type!="SLAVE"){?> <td class="n"><?$x_result=$db->query("SELECT r.user_id,u.username,u.fullname FROM record_owners as r, users as u WHERE r.record_id='".$r['id']."' AND u.id=r.user_id");echo"<select style=\"width:120px;\">";while($x_r=$x_result->fetchRow()){echo"<option value=\"".$x_r["username"]."\">".$x_r["fullname"]."</option>";}echo"</select>";?> </td><?}?> <td class="y"><?echo$r['name']?></td> <td class="y"><?echo$r['type']?></td> <td class="y"><?echo$r['content']?></td><?if($r['prio']!=0){?> <td class="y"><?echo$r['prio'];?></td><?}else{?> <td class="n"></td><?}?> <td class="y"><?echo$r['ttl']?></td> </tr><?}}else{?> <tr> <td class="n"> <div class="warning"><?echo_('No records for this zone.');?></div> </td> </tr><?}?> </table><?if($domain_type!="SLAVE"){if(level(10)){?> <img src="images/arrow.png" alt="arrow" class="edit-assign-to-user"> <select name="userid"><?$users=show_users();foreach($usersas$user){echo"<option value=\"".$user[id]."\">".$user[fullname]."</option>";}?> </select> <input type="submit" class="button" value="<?echo_('Assign to user');?>"> </form><?}}include_once("inc/footer.inc.php");?>