}
$np = new NetworkPortMigration();
if (!isset($_GET["id"])) {
    $_GET["id"] = "";
}
if (isset($_POST["purge"])) {
    $np->check($_POST['id'], PURGE);
    $np->delete($_POST, 1);
    Event::log($_POST['id'], "networkport", 5, "inventory", sprintf(__('%s purges an item'), $_SESSION["glpiname"]));
    Html::redirect($CFG_GLPI["root_doc"] . "/front/networkportmigration.php");
} else {
    if (isset($_POST["delete_several"])) {
        Session::checkRight("networking", UPDATE);
        if (isset($_POST["del_port"]) && count($_POST["del_port"])) {
            foreach ($_POST["del_port"] as $port_id => $val) {
                if ($np->can($port_id, PURGE)) {
                    $np->delete(array("id" => $port_id));
                }
            }
        }
        Event::log(0, "networkport", 5, "inventory", sprintf(__('%s deletes several network ports'), $_SESSION["glpiname"]));
        Html::back();
    } else {
        if (isset($_POST["update"])) {
            $np->check($_POST['id'], PURGE);
            $networkport = new NetworkPort();
            if ($networkport->can($_POST['id'], UPDATE)) {
                if ($networkport->switchInstantiationType($_POST['transform_to']) !== false) {
                    $instantiation = $networkport->getInstantiation();
                    $input = $np->fields;
                    $input['networkports_id'] = $input['id'];
}
$np = new NetworkPortMigration();
if (!isset($_GET["id"])) {
    $_GET["id"] = "";
}
if (isset($_POST["delete"])) {
    $np->check($_POST['id'], 'd');
    $np->delete($_POST);
    Event::log($_POST['id'], "networkport", 5, "inventory", sprintf(__('%s purges an item'), $_SESSION["glpiname"]));
    Html::redirect($CFG_GLPI["root_doc"] . "/front/networkportmigration.php");
} else {
    if (isset($_POST["delete_several"])) {
        Session::checkRight("networking", "w");
        if (isset($_POST["del_port"]) && count($_POST["del_port"])) {
            foreach ($_POST["del_port"] as $port_id => $val) {
                if ($np->can($port_id, 'd')) {
                    $np->delete(array("id" => $port_id));
                }
            }
        }
        Event::log(0, "networkport", 5, "inventory", sprintf(__('%s deletes several network ports'), $_SESSION["glpiname"]));
        Html::back();
    } else {
        if (isset($_POST["update"])) {
            $np->check($_POST['id'], 'd');
            $networkport = new NetworkPort();
            if ($networkport->can($_POST['id'], 'w')) {
                if ($networkport->switchInstantiationType($_POST['transform_to']) !== false) {
                    $instantiation = $networkport->getInstantiation();
                    $input = $np->fields;
                    $input['networkports_id'] = $input['id'];