Esempio n. 1
0
     if ($_POST["export_id"] && $_POST["dst"] && $_POST["vps_id"]) {
         $e = nas_get_export_by_id($_POST["export_id"]);
         $vps = new vps_load($_POST["vps_id"]);
         if (is_mount_dst_valid($_POST["dst"]) === false) {
             $xtpl->perex(_("Destination contains forbidden characters"), '');
             mount_add_form($mount_export_add_target, $mount_custom_add_target);
         } elseif (nas_can_user_add_mount($e, $vps)) {
             nas_mount_add($_POST["export_id"], $_POST["vps_id"], $_POST["access_mode"], 0, "", $_POST["dst"], $_SESSION["is_admin"] ? $_POST["m_opts"] : NULL, $_SESSION["is_admin"] ? $_POST["u_opts"] : NULL, "nfs", $_POST["cmd_premount"], $_POST["cmd_postmount"], $_POST["cmd_preumount"], $_POST["cmd_postumount"], $_POST["mount_immediately"]);
         }
         notify_user(_("Mount created"), _("Mount was successfully created."));
         redirect('?page=nas');
     }
     break;
 case "mount_custom_add_save":
     if ($_SESSION["is_admin"] && $_POST["vps_id"] && $_POST["src"] && $_POST["dst"]) {
         $e = nas_get_export_by_id($_POST["export_id"]);
         $vps = new vps_load($_POST["vps_id"]);
         if (is_mount_dst_valid($_POST["dst"]) === false) {
             $xtpl->perex(_("Destination contains forbidden characters"), '');
             mount_add_form($mount_export_add_target, $mount_custom_add_target);
         } elseif (nas_can_user_add_mount($e, $vps)) {
             nas_mount_add(0, $_POST["vps_id"], $_POST["access_mode"], $_POST["source_node_id"], $_POST["src"], $_POST["dst"], $_POST["m_opts"], $_POST["u_opts"], $_POST["type"], $_POST["cmd_premount"], $_POST["cmd_postmount"], $_POST["cmd_preumount"], $_POST["cmd_postumount"], $_POST["mount_immediately"]);
         }
         notify_user(_("Mount created"), _("Mount was successfully created."));
         redirect('?page=nas');
     }
     break;
 case "mount_edit":
     $m = nas_get_mount_by_id($_GET["id"]);
     $vps = new vps_load($m["vps_id"]);
     if (nas_can_user_manage_mount($m, $vps)) {
Esempio n. 2
0
 function get_backuper_server()
 {
     global $db;
     $e = nas_get_export_by_id($this->ve["vps_backup_export"]);
     $n = new cluster_node($e["node_id"]);
     return $n->s;
 }
Esempio n. 3
0
function nas_create_default_mounts($obj, $mapping = array())
{
    $mounts = nas_list_default_mounts();
    foreach ($mounts as $m) {
        $storage_export_id = $m["storage_export_id"];
        if ($storage_export_id) {
            $e = nas_get_export_by_id($storage_export_id);
            if ($e["default"] != "no") {
                $storage_export_id = $mapping[$storage_export_id];
            }
        }
        nas_mount_add($storage_export_id, $m["vps_id"] ? $m["vps_id"] : $obj["vps_id"], $m["mode"], $m["server_id"], nas_resolve_vars($m["src"], $obj), $m["dst"], $m["mount_opts"], $m["umount_opts"], $m["mount_type"], $m["cmd_premount"], $m["cmd_postmount"], $m["cmd_preumount"], $m["cmd_postumount"], false, false);
    }
}
Esempio n. 4
0
             }
             $msg .= "</ul>";
         }
         if (count($mounts) > 0) {
             $msg .= _("Following mounts of these exports will be deleted too:") . "<ul>";
             foreach ($mounts as $m) {
                 $msg .= "<li> VPS #" . $m["vps_id"] . "; " . _("path") . " " . $m["dst"] . "</li>";
             }
             $msg .= "</ul>";
         }
         $msg .= '<br><br><a href="?page=cluster&action=nas_settings">' . strtoupper(_("No")) . '</a> | <a href="?page=cluster&action=nas_def_export_del2&id=' . $_GET["id"] . '">' . strtoupper(_("Yes")) . '</a>';
         $xtpl->perex(_("Do you really want to delete export") . ' ' . $e["path"] . '?', $msg);
     }
     break;
 case "nas_def_export_del2":
     if ($_GET["id"] && ($e = nas_get_export_by_id($_GET["id"]))) {
         nas_export_delete($_GET["id"]);
         notify_user(_("Default export deleted"), _("Default export successfully deleted."));
         redirect('?page=cluster&action=nas_settings');
     }
     break;
 case "nas_def_mount_add":
     $xtpl->table_title(_("Add default mount for new VPS"));
     mount_add_form('?page=cluster&action=nas_def_export_mount_save', '?page=cluster&action=nas_def_custom_mount_save', true);
     $xtpl->sbar_add(_("Back"), '?page=cluster&action=nas_settings');
     break;
 case "nas_def_export_mount_save":
     if ($_POST["export_id"] && $_POST["dst"] && isset($_POST["vps_id"])) {
         nas_mount_add($_POST["export_id"], $_POST["vps_id"], $_POST["access_mode"], 0, "", $_POST["dst"], $_SESSION["is_admin"] ? $_POST["m_opts"] : NULL, $_SESSION["is_admin"] ? $_POST["u_opts"] : NULL, "nfs", $_POST["cmd_premount"], $_POST["cmd_postmount"], $_POST["cmd_preumount"], $_POST["cmd_postumount"], false, true);
         notify_user(_("Default mount saved"), '');
         redirect('?page=cluster&action=nas_settings');