#!/usr/bin/perl

#
# Copyright (C) 2019 Nethesis S.r.l.
# http://www.nethesis.it - nethserver@nethesis.it
#
# This script is part of NethServer.
#
# NethServer is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License,
# or any later version.
#
# NethServer is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with NethServer.  If not, see COPYING.
#

use strict;
use esmith::ConfigDB;
use esmith::event;
use JSON;

require '/usr/libexec/nethserver/api/lib/helper_functions.pl';

my $eventName = 'nethserver-vsftpd-save';
my $ret;
my @eventArgs;
my $exitCode = 0;

my $input = readInput();
my $db = esmith::ConfigDB->open('accounts');

if (!$input->{'name'}) {
    error();
}

my $record = $db->get($input->{'name'});
$record->delete();

esmith::event::set_json_log(1);

if(esmith::event::event_signal($eventName, @eventArgs)) {
    $ret = {'state' => 'success'};
} else {
    $ret = {
        'type' => 'Error',
        'message' => 'common.api_update_failed',
        'attributes' => {
            'event_name' => $eventName,
            'event_args' => \@eventArgs,
        }
    };
    $exitCode = 1;
}

print encode_json($ret);
exit($exitCode);
