/[transports]/trunk/web/templates/fragments/user_on_landscape
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /trunk/web/templates/fragments/user_on_landscape

Parent Directory Parent Directory | Revision Log Revision Log


Revision 63 - (show annotations)
Sat Jun 10 22:32:40 2006 UTC (17 years, 10 months ago) by dpavlin
File size: 1882 byte(s)
added protoGrowl for cool pop-up indicators
1 <%args>
2 $user_id
3 $op => '';
4 $landscape_id => 0
5 </%args>
6 <%init>
7
8 sub growl {
9 my ($level,$title,$message) = @_;
10 print <<_END_OF_GROWL_;
11 <script type="text/javascript">
12 new protoGrowl({
13 type: '$level', title: '$title', message: '$message',
14 width: 400, height: 40,
15 minWidth: 400, minHeight: 40,
16 className: 'protogrowl',
17 });
18 </script>
19 _END_OF_GROWL_
20 };
21
22 warn "user_id: $user_id, op: $op, landscape_id: $landscape_id\n";
23
24 if ($op eq 'delete') {
25 my $u = Transports::Model::UserOnLandscape->new();
26 $u->load_by_cols(
27 user_on => $user_id,
28 landscape => $landscape_id
29 );
30 if ($u->delete) {
31 growl('ok','Deleted', $u->landscape->name . ' removed from ' . $u->user_on->name);
32 } else {
33 growl('error','Error',"Problem while deleting " . $u->landscape->name);
34 }
35
36 } elsif ($op eq 'add') {
37 my $u = Transports::Model::UserOnLandscape->new();
38 if($u->create(
39 user_on => $user_id,
40 landscape => $landscape_id,
41 )) {
42 # $m->out("Added ", $u->landscape->name);
43 growl('ok','Added', $u->landscape->name);
44 } else {
45 growl('error','Error',"Problem while adding " . $landscape_id);
46 }
47 }
48
49 my $landscapes = Transports::Model::UserOnLandscapeCollection->new();
50 $landscapes->limit(
51 column => 'user_on',
52 value => $user_id,
53 quote_value => 0,
54 );
55
56 my $selected_landscape;
57 map { $selected_landscape->{ $_->landscape->id }++ } @{ $landscapes->items_array_ref };
58
59 my $all_landscapes = Transports::Model::LandscapeCollection->new();
60 $all_landscapes->unlimit;
61
62 </%init>
63
64 <div>
65 Landscapes:
66
67 <ul>
68 % while (my $l = $all_landscapes->next ) {
69 <li>
70 % if ($selected_landscape->{ $l->id }) {
71 <% $l->name %>
72 <% Jifty->web->link(
73 label => 'remove' ,
74 onclick => { args => { op => 'delete', landscape_id => $l->id }}
75 ) %>
76 % } else {
77 <del><% $l->name %></del>
78 <% Jifty->web->link(
79 label => 'add' ,
80 onclick => { args => { op => 'add', landscape_id => $l->id }}
81 ) %>
82 % }
83 </li>
84 % }
85 </ul>
86
87 </div>
88

  ViewVC Help
Powered by ViewVC 1.1.26