- Timestamp:
- 07/30/12 01:04:22 (12 years ago)
- Location:
- web
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
web/lib/Sophie/Base/Result/Paths.pm
r443 r460 14 14 __PACKAGE__->belongs_to('MetaPaths' => 'Sophie::Base::Result::MetaPaths', 'meta_path'); 15 15 __PACKAGE__->has_many(MediasPaths => 'Sophie::Base::Result::MediasPaths', 'd_path'); 16 __PACKAGE__->has_many(Rpmfile s=> 'Sophie::Base::Result::RpmFile', 'd_path');16 __PACKAGE__->has_many(Rpmfile => 'Sophie::Base::Result::RpmFile', 'd_path'); 17 17 18 18 -
web/lib/Sophie/Base/Result/RpmFile.pm
r356 r460 8 8 __PACKAGE__->add_columns(qw/d_path filename pkgid added mtime size/); 9 9 __PACKAGE__->set_primary_key(qw/d_path filename/); 10 __PACKAGE__->belongs_to(Path => 'Sophie::Base::Result::Paths', 'd_path');10 __PACKAGE__->belongs_to(Paths => 'Sophie::Base::Result::Paths', 'd_path'); 11 11 __PACKAGE__->belongs_to(Rpms => 'Sophie::Base::Result::Rpms', 'pkgid'); 12 12 -
web/lib/Sophie/Controller/Login.pm
r415 r460 41 41 if ($c->req->xmlrpc->is_xmlrpc_request) { 42 42 $c->error('invalid login / password'); 43 } else { 44 $c->stash->{error} = 'Invalid login / password'; 43 45 } 44 46 } … … 51 53 } 52 54 53 sub logout :Local{54 my ($self, $c ) = @_;55 sub create_request : Private { 56 my ($self, $c, $mail) = @_; 55 57 56 $c->logout; 58 my $valid_code = join('', map { printf("%02x", rand(256)) } (0 .. 15)); 59 60 $c->model('Base::AccountRequest')->create({ 61 mail => $mail, 62 valid_code => $valid_code, 63 }); 57 64 } 58 65 … … 81 88 $c->stash->{valid} = "$aa + $bb"; 82 89 $c->session->{valid_create_user} = $aa + $bb; 83 84 90 } 85 91 -
web/lib/Sophie/Controller/Rpms.pm
r403 r460 249 249 { 250 250 order_by => [ 'count' ], 251 select => [ 'rpmsenseflag("flags")', qw(depname flags evr) ],251 select => [ \[ 'rpmsenseflag("flags")' ], qw(depname flags evr) ], 252 252 as => [ qw'sense depname flags evr' ], 253 253 … … 411 411 { 412 412 order_by => [ 'count' ], 413 select => [ 'rpmsenseflag("flags")', 414 qw(depname flags evr deptype) ], 413 select => [ 414 \[ 'rpmsenseflag("flags")' ], 415 qw(depname flags evr deptype) 416 ], 415 417 as => [ qw'sense depname flags evr deptype' ], 416 418 … … 457 459 }, 458 460 { 459 'select' => [ 'contents is NOT NULL as has_content', 'rpmfilesmode(mode) as perm', @col, '"group"', 460 '"user"' ], 461 'select' => [ 462 \[ 'contents is NOT NULL as has_content' ], 463 \[ 'rpmfilesmode(mode) as perm' ], 464 @col, '"group"', '"user"' 465 ], 461 466 as => [ qw(has_content perm), @col, 'group', 'user' ], 462 467 order_by => [ 'dirname', 'basename' ], … … 530 535 { 531 536 select => [ 532 qq{rpmquery("header", ?)},533 qq{rpmquery("header", ?)},537 \[ qq{rpmquery("header", ?)} ], 538 \[ qq{rpmquery("header", ?)} ], 534 539 ], 535 540 as => [ qw(script prog) ], … … 546 551 { 547 552 select => [ 548 qq{rpmquery("header", ?)},549 qq{rpmquery("header", ?)},550 qq{rpmquery("header", ?)},551 qq{rpmsenseflag(rpmquery("header", ?)::int)},552 qq{rpmquery("header", ?)},553 \[ qq{rpmquery("header", ?)} ], 554 \[ qq{rpmquery("header", ?)} ], 555 \[ qq{rpmquery("header", ?)} ], 556 \[ qq{rpmsenseflag(rpmquery("header", ?)::int)} ], 557 \[ qq{rpmquery("header", ?)} ], 553 558 ], 554 559 as => [ qw(script prog name sense version) ], … … 580 585 map { 581 586 { 582 distribution => $_->get_column('name'), 583 dist => $_->get_column('shortname'), 584 release => $_->get_column('version'), 585 arch => $_->get_column('arch'), 586 media => $_->get_column('label'), 587 media_group => $_->get_column('group_label'), 588 } 589 } 590 $c->forward('/distrib/distrib_rs', [ {} ]) 587 distribution => ($_->Arch->Release->Distribution->name || undef), 588 dist => ($_->Arch->Release->Distribution->shortname || undef), 589 release => ($_->Arch->Release->version || undef), 590 arch => ($_->Arch->arch || undef), 591 media => ($_->label || undef), 592 media_group => ($_->group_label || undef), 593 } 594 } $c->model('Base')->resultset('RpmFile')->search( 595 { pkgid => $pkgid }, 596 )->search_related('Paths') 591 597 ->search_related('MediasPaths') 592 ->search_related('Paths') 593 ->search_related('Rpmfiles', 594 { pkgid => $pkgid }, 595 { 596 select => [ qw(shortname name version arch label group_label) ], 597 order_by => [ qw(name version arch label) ], 598 } 599 )->all ] 598 ->search_related('Medias', {}, 599 { 600 select => [ qw() ], 601 prefetch => { 602 Arch => { Release => 'Distribution' } 603 } 604 } 605 )->all ] 606 600 607 } 601 608 -
web/lib/Sophie/Controller/Search.pm
r351 r460 105 105 ->search_related('MediasPaths') 106 106 ->search_related('Paths') 107 ->search_related('Rpmfile s');107 ->search_related('Rpmfile'); 108 108 } else { 109 109 return; … … 197 197 { depname => $depname }, 198 198 ($depsense 199 ? ( {-nest =>\[199 ? (\[ 200 200 'rpmdepmatch(flags, me.evr, rpmsenseflag(?), ?)', 201 201 [ plain_text => $depsense], 202 202 [ plain_text => $depevr ] 203 ] })203 ]) 204 204 : ()), 205 205 ($searchspec->{pkgid} -
web/lib/Sophie/Controller/Search/Rpm.pm
r351 r460 227 227 $c->stash->{rs} = $c->model('Base')->resultset('Rpms')->search( 228 228 { 229 -nest => \[ 230 "to_tsvector('english', description) @@ to_tsquery(?)", 231 [ plain_text => $tsquery], 232 ], 229 -and => [ 230 \[ "to_tsvector('english', description) @@ to_tsquery(?)", 231 [ plain_text => $tsquery ] ], 233 232 (exists($searchspec->{src}) 234 233 ? (issrc => $searchspec->{src} ? 1 : 0) … … 237 236 ? (pkgid => { IN => $distrs->get_column('pkgid')->as_query, },) 238 237 : ()), 238 ] 239 239 }, 240 240 { 241 241 select => [ 242 "ts_rank_cd(to_tsvector('english', description),to_tsquery(?)) as rank",243 242 \[ "ts_rank_cd(to_tsvector('english', description),to_tsquery(?)) as rank" ], 243 'pkgid' 244 244 ], 245 245 bind => [ $tsquery ], -
web/lib/Sophie/Controller/Search/Rpms.pm
r449 r460 35 35 ->search_related('MediasPaths') 36 36 ->search_related('Paths') 37 ->search_related('Rpmfile s',37 ->search_related('Rpmfile', 38 38 { 39 39 pkgid => { … … 56 56 as => [qw(filename pkgid distribution dist release arch media) ], 57 57 rows => $searchspec->{rows} || 30000, 58 order_by => [ 'Rpmfile s.added desc' ],58 order_by => [ 'Rpmfile.added desc' ], 59 59 }, 60 60 ); … … 147 147 148 148 $c->stash->{rs} = $c->forward('rpms_rs')->search( 149 \[ "Rpmfile s.added > '1970-01-01'::date + ?::interval",149 \[ "Rpmfile.added > '1970-01-01'::date + ?::interval", 150 150 [ plain_text => "$date seconds" ], 151 151 ] -
web/lib/Sophie/Controller/Sources.pm
r101 r460 56 56 } 57 57 58 $c->model('Base:: Rpms')58 $c->model('Base::SrcFiles') 59 59 ->search( 60 60 { … … 66 66 }, 67 67 { 68 select => [ 'evr' ], 69 } 70 )->search_related('SrcFiles')->search( 71 { 72 #has_content => 1, 73 }, 74 { 75 select => [ 'basename', 'evr', 'SrcFiles.pkgid' ], 76 group_by => [ 'basename', 'evr', 'SrcFiles.pkgid' ], 68 select => [ 'basename', 'Rpms.evr', 'pkgid' ], 69 group_by => [ 'basename', 'evr', 'me.pkgid' ], 77 70 order_by => [ 'evr using >>', 'basename' ], 71 join => [ 'Rpms' ], 78 72 } 79 73 )->all ]; -
web/t/controller_Rpms.t
r229 r460 16 16 ok( request("/rpms/$pkgid/changelog")->is_success, 'Request a pkgid/changelog should succeed' ); 17 17 ok( request("/rpms/$pkgid/location")->is_success, 'Request a pkgid/location should succeed' ); 18 ok( request("/rpms/$pkgid/scriptlet")->is_success, 'Request a pkgid/scriptlet should succeed' ); 18 19 19 20 ok( xmlrequest_ok('rpms.basicinfo', $pkgid), 'XMLRPC rpms.basicinfo' );
Note: See TracChangeset
for help on using the changeset viewer.