1 |
use warnings; |
2 |
use strict; |
3 |
|
4 |
|
5 |
package Transports::CurrentUser; |
6 |
|
7 |
use base qw(Jifty::CurrentUser); |
8 |
|
9 |
=head2 new PARAMHASH |
10 |
|
11 |
Instantiate a new current user object, loading the user by paramhash: |
12 |
|
13 |
my $item = Transports::Model::Item->new( Transports::CurrentUser->new(email => 'user@site')); |
14 |
|
15 |
if you give the param |
16 |
_bootstrap => 1 |
17 |
|
18 |
your object will be marked as a bootstrap user. You can use that to do an endrun around acls. |
19 |
|
20 |
=cut |
21 |
|
22 |
|
23 |
|
24 |
sub _init { |
25 |
my $self = shift; |
26 |
my %args = (@_); |
27 |
|
28 |
if (delete $args{'_bootstrap'} ) { |
29 |
$self->is_bootstrap_user(1); |
30 |
} elsif (keys %args) { |
31 |
$self->user_object(Transports::Model::User->new(current_user => $self)); |
32 |
$self->user_object->load_by_cols(%args); |
33 |
} |
34 |
$self->SUPER::_init(%args); |
35 |
} |
36 |
|
37 |
|
38 |
1; |