/[Frey]/trunk/lib/Reblog.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Annotation of /trunk/lib/Reblog.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1008 - (hide annotations)
Sat Jan 24 15:11:20 2009 UTC (15 years, 3 months ago) by dpavlin
File size: 923 byte(s)
 r3882@llin (orig r1001):  dpavlin | 2009-01-12 18:28:05 +0100
 begin port to DBIx::Class

1 dpavlin 1008 package Reblog;
2     use Moose;
3    
4     extends 'Frey';
5     with 'Frey::Web';
6     with 'Frey::Config';
7     #with 'Frey::Storage';
8    
9     use lib 'lib';
10     use Reblog::Schema;
11    
12     has page => (
13     is => 'rw',
14     isa => 'Int',
15     required => 1,
16     default => 1,
17     );
18    
19     sub as_sponge {
20     my ($self) = @_;
21    
22     my $reblog = Reblog::Schema->connect(
23     "DBI:mysql:database=reblog;host=127.0.0.1;port=13306", '', ''
24     );
25    
26     my @feeds = $reblog->resultset('Feeds')->search(
27     undef,
28     { page => $self->page }
29     );
30    
31     my @rows;
32     my @name;
33     my $name_pos;
34    
35     foreach my $feed ( @feeds ) {
36     my %row = $feed->get_columns;
37    
38     my @row;
39    
40     foreach my $name ( keys %row ) {
41     if ( ! defined $name_pos->{$name} ) {
42     push @name, $name;
43     $name_pos->{$name} = $#name;
44     warn "## name_pos: ", $self->dump( $name_pos ) if $self->debug;
45     }
46    
47     my $pos = $name_pos->{$name};
48     $row[$pos] = $row{$name};
49     }
50    
51     push @rows, [ @row ];
52     }
53    
54     return {
55     rows => \@rows,
56     NAME => \@name,
57     }
58     }
59    
60     1;

  ViewVC Help
Powered by ViewVC 1.1.26