Changeset 159
- Timestamp:
- 04/05/09 15:32:54 (15 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/MANIFEST
r158 r159 23 23 lib/Vote/Controller/Vote.pm 24 24 lib/Vote/DB.pm 25 lib/Vote/DB/common.pm 25 26 lib/Vote/Model/Vote.pm 26 27 lib/Vote/Template/Plugin/Mail.pm -
trunk/lib/Vote/DB.pm
r157 r159 6 6 use warnings; 7 7 use Vote; 8 use DBI;9 8 use Mail::Mailer; 9 use base 'Vote::DB::common'; 10 10 11 11 =head1 NAME … … 24 24 bless { 25 25 dbstring => $dbstring, 26 db => _newdb($dbstring),26 db => Vote::DB::common::_newdb($dbstring), 27 27 }, $class; 28 }29 30 sub _newdb {31 my ($dbstring) = @_;32 my $db = DBI->connect(33 'dbi:Pg:' . $dbstring,34 undef, undef,35 {36 RaiseError => 0,37 AutoCommit => 0,38 PrintWarn => 0,39 PrintError => 1,40 }41 ) or return;42 $db->do(q{set DATESTYLE to 'DMY'});43 return $db;44 }45 46 sub db {47 my ($self) = @_;48 return $_[0]->{db} && $_[0]->{db}->ping49 ? $_[0]->{db}50 : $_[0]->_newdb($self->{dbstring});51 }52 53 sub mail_header {54 return(55 'Content-Type' => 'text/plain; charset=UTF-8; format=flowed',56 'Content-Transfer-Encoding' => '8bit',57 'X-Epoll-version' => $Vote::VERSION,58 );59 }60 61 sub random_string {62 my $lenght = $_[-1] || 8;63 64 return join('', map { ('a'..'z', 'A'..'Z', 0..9)[rand 62] } (1..$lenght));65 }66 67 sub gen_enc_passwd {68 my ($self, $passwd) = @_;69 70 $passwd ||= random_string(8);71 return(crypt($passwd, '$1$' . random_string(8) . '$'));72 }73 74 sub dbtime {75 my ($self) = @_;76 my $sth = $self->db->prepare(77 q{select to_char(now(), 'DD/MM/YYYY HH24:MI:SS') as d}78 );79 80 $sth->execute();81 my $res = $sth->fetchrow_hashref;82 $sth->finish;83 $res->{d};84 28 } 85 29
Note: See TracChangeset
for help on using the changeset viewer.