/[Arh]/lib/Arh/View.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 /lib/Arh/View.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 59 - (hide annotations)
Mon Apr 7 09:20:01 2008 UTC (16 years ago) by dpavlin
File size: 1445 byte(s)
don't show editing for anonymous users
1 dpavlin 6 package Arh::View;
2    
3     use strict;
4     use warnings;
5    
6     use Jifty::View::Declare -base;
7    
8     use Data::Dump qw/dump/;
9    
10 dpavlin 15 use Jifty::View::Declare::CRUD;
11     Jifty::View::Declare::CRUD->mount_view('materials');
12 dpavlin 28 Jifty::View::Declare::CRUD->mount_view('UnitPictures');
13 dpavlin 15 Jifty::View::Declare::CRUD->mount_view('units');
14 dpavlin 32 #Jifty::View::Declare::CRUD->mount_view('locations');
15 dpavlin 15
16 dpavlin 8 template '/units' => page {
17     h1 { _("Units available in system") };
18    
19 dpavlin 15 my $search = Arh::Model::UnitCollection->new;
20     $search->unlimit;
21 dpavlin 8
22 dpavlin 38 show( 'toggle_edit' ) if $search->count;
23    
24 dpavlin 15 set( search_collection => $search );
25     render_region(
26     name => 'units',
27     path => '/units/list',
28     defaults => {
29     page => 1,
30 dpavlin 8 }
31 dpavlin 15 );
32 dpavlin 8
33 dpavlin 13 };
34    
35 dpavlin 34 template 'toggle_edit' => sub {
36 dpavlin 23 my $self = shift;
37    
38 dpavlin 59 # don't show editing for anonymous users
39     return unless $self->current_user->id;
40    
41 dpavlin 34 my $toggleedit = new_action(
42     class => 'ToggleEdit',
43     # moniker => 'toggle-edit',
44 dpavlin 23 );
45    
46     my $label = $self->current_user->editing ? _("Disable editing") : _("Enable editing");
47    
48     warn "## $label\n";
49    
50     form {
51 dpavlin 34 outs_raw( $toggleedit->button(
52 dpavlin 23 label => $label,
53 dpavlin 34 submit => $toggleedit,
54     ));
55 dpavlin 23 }
56    
57     };
58    
59 dpavlin 49 template 'raw_pic' => sub {
60 dpavlin 51 my $filename = get('filename') or die "no filename?";
61 dpavlin 49 my $image = Arh::Model::Picture->new;
62     $image->load_by_cols( filename => $filename );
63     if ( $image->id ) {
64     Jifty->handler->apache->content_type('image/jpg');
65     Jifty->web->out($image->content);
66     } else {
67     die "can't find picture $filename";
68     }
69     };
70    
71 dpavlin 6 1;

  ViewVC Help
Powered by ViewVC 1.1.26