package MGA::Mirrors::Controller::Mirrors; use Moose; use namespace::autoclean; BEGIN {extends 'Catalyst::Controller'; } =head1 NAME MGA::Mirrors::Controller::Mirrors - Catalyst Controller =head1 DESCRIPTION Catalyst Controller. =head1 METHODS =cut =head2 index =cut sub index :Path :Args(0) { my ( $self, $c ) = @_; $c->response->body('Matched MGA::Mirrors::Controller::Mirrors in Mirrors.'); } sub mirror :Path :Args(1) { my ( $self, $c, $host ) = @_; $c->stash->{hostname} = $host; if ($c->req->param('hostinfo') && $c->req->param('mail')) { my $hinfo = $c->model('Mirrors')->find_mirrors({ hostname => $host, })->[0]; if (! $hinfo->{readonly}) { my $reqid = $c->model('Mirrors')->add_host_change_request($host, bandwidth => $c->req->param('bandwidth'), city => $c->req->param('city'), country => $c->req->param('country'), syncfrom=> $c->req->param('syncfrom'), latitude => $c->req->param('latitude'), longitude => $c->req->param('longitude'), ); $c->forward( q'MGA::Mirrors::View::Mail', 'render', [ 'host_up_request.tt', { To => $c->req->param('mail'), Subject => 'Update Mageia mirror request', mail => { reqid => $reqid, } } ] ); } } $c->stash->{host} = $c->model('Mirrors')->find_mirrors({ hostname => $host, })->[0]; $c->model('Mirrors')->db->commit; } =head1 AUTHOR Olivier Thauvin =head1 LICENSE This library is free software. You can redistribute it and/or modify it under the same terms as Perl itself. =cut __PACKAGE__->meta->make_immutable; 1;