diff -r c72d6d51f3d3 -r c255196bc447 add_record.php --- a/add_record.php Wed Mar 12 20:45:56 2008 +0000 +++ b/add_record.php Tue Mar 25 22:45:31 2008 +0000 @@ -20,63 +20,111 @@ */ require_once("inc/toolkit.inc.php"); +include_once("inc/header.inc.php"); -$xsid = (isset($_GET['id'])) ? $_GET['id'] : $_POST['zoneid']; -if ((!level(5)) && ((!xs($xsid) || ($_SESSION[$xsid.'_ispartial'])))) { - error(ERR_RECORD_ACCESS_DENIED); +if (verify_permission(zone_content_view_others)) { $perm_view = "all" ; } +elseif (verify_permission(zone_content_view_own)) { $perm_view = "own" ; } +else { $perm_view = "none" ; } + +if (verify_permission(zone_content_edit_others)) { $perm_content_edit = "all" ; } +elseif (verify_permission(zone_content_edit_own)) { $perm_content_edit = "own" ; } +else { $perm_content_edit = "none" ; } + +if (verify_permission(zone_meta_edit_others)) { $perm_meta_edit = "all" ; } +elseif (verify_permission(zone_meta_edit_own)) { $perm_meta_edit = "own" ; } +else { $perm_meta_edit = "none" ; } + +$zone_id = "-1"; +if ((isset($_GET['id'])) && (v_num($_GET['id']))) { + $zone_id = $_GET['id']; +} + +$ttl = $DEFAULT_TTL; +if ((isset($_POST['ttl'])) && (v_num($_POST['ttl']))) { + $ttl = $_POST['ttl']; } -if (isset($_POST["commit"]) && isset($_POST['zoneid']) && isset($_POST['name']) && isset($_POST['type']) && isset($_POST['content']) && isset($_POST['ttl']) && isset($_POST['prio']) ) { - $ret = add_record($_POST["zoneid"], $_POST["name"], $_POST["type"], $_POST["content"], $_POST["ttl"], $_POST["prio"]); - if ($ret != '1') { - die("$ret"); - } - clean_page("edit.php?id=".$_POST["zoneid"]); +$prio = "10"; +if ((isset($_GET['prio'])) && (v_num($_GET['prio']))) { + $prio = $_GET['prio']; +} + +$name = $_POST['name']; +$type = $_POST['type']; +$content = $_POST['content']; + +if ($zone_id == "-1") { + error(ERR_INV_INPUT); + include_once("inc/footer.inc.php"); + exit; +} + +$user_is_zone_owner = verify_user_is_owner_zoneid($zone_id); +$zone_type = get_domain_type($zone_id); +$zone_name = get_domain_name_from_id($zone_id); + +if ($_POST["commit"]) { + if ( $zone_type == "SLAVE" || $perm_content_edit == "none" || $perm_content_edit == "own" && $user_is_zone_owner == "0" ) { + error(ERR_PERM_ADD_RECORD); + } else { + if ( add_record($zone_id, $name, $type, $content, $ttl, $prio)) { + success(_('The record was succesfully added.')); + unset($zone_id, $name, $type, $content, $ttl, $prio); + } + } } -include_once("inc/header.inc.php"); -?> - -

""

+echo "

" . _('Add record in zone') . " " . $zone_name . "

\n"; -
- "> - - - - - - - - - - - - - - - - - -
 
.IN - \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "
" . _('Name') . " " . _('Type') . "" . _('Priority') . "" . _('Content') . "" . _('TTL') . "
." . $zone_name . "IN\n"; + echo " \n"; + echo " \n"; + echo "
\n"; + echo "
\n"; + echo " \n"; + echo " \n"; } + +include_once("inc/footer.inc.php"); + ?> - -
-
- - - -