move admin tasks and remove JobControl package
This commit is contained in:
@@ -16,7 +16,6 @@ use App::Netdisco::Web::Report;
|
||||
use App::Netdisco::Web::AdminTask;
|
||||
use App::Netdisco::Web::TypeAhead;
|
||||
use App::Netdisco::Web::PortControl;
|
||||
use App::Netdisco::Web::JobControl;
|
||||
|
||||
sub _load_web_plugins {
|
||||
my $plugin_list = shift;
|
||||
|
||||
@@ -1,6 +1,35 @@
|
||||
package App::Netdisco::Web::AdminTask;
|
||||
|
||||
use Dancer ':syntax';
|
||||
use Dancer::Plugin::AJAX;
|
||||
use Dancer::Plugin::DBIC;
|
||||
|
||||
sub add_discover_job {
|
||||
my $ip = NetAddr::IP::Lite->new(shift);
|
||||
return unless $ip
|
||||
and $ip->addr ne '0.0.0.0';
|
||||
|
||||
schema('netdisco')->resultset('Admin')->create({
|
||||
device => $ip->addr,
|
||||
action => 'discover',
|
||||
status => 'queued',
|
||||
username => session('user'),
|
||||
userip => request->remote_address,
|
||||
});
|
||||
}
|
||||
|
||||
ajax '/ajax/control/admin/discover' => sub {
|
||||
return unless var('user') and var('user')->admin;
|
||||
add_discover_job(param('device'));
|
||||
};
|
||||
|
||||
post '/admin/discover' => sub {
|
||||
return unless var('user') and var('user')->admin;
|
||||
add_discover_job(param('device'));
|
||||
|
||||
status(302);
|
||||
header(Location => uri_for('/admin/jobqueue')->path_query());
|
||||
};
|
||||
|
||||
get '/admin/*' => sub {
|
||||
my ($tag) = splat;
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
package App::Netdisco::Web::JobControl;
|
||||
|
||||
use Dancer ':syntax';
|
||||
use Dancer::Plugin::DBIC;
|
||||
|
||||
post '/admin/discover' => sub {
|
||||
return unless var('user') and var('user')->admin;
|
||||
|
||||
my $ip = NetAddr::IP::Lite->new(param('device'));
|
||||
return unless $ip
|
||||
and $ip->addr ne '0.0.0.0';
|
||||
|
||||
schema('netdisco')->resultset('Admin')->create({
|
||||
device => $ip->addr,
|
||||
action => 'discover',
|
||||
status => 'queued',
|
||||
username => session('user'),
|
||||
userip => request->remote_address,
|
||||
});
|
||||
|
||||
status(302);
|
||||
header(Location => uri_for('/admin/jobqueue')->path_query());
|
||||
};
|
||||
|
||||
true;
|
||||
Reference in New Issue
Block a user