[Jifty-commit] r4474 - in apps/spensive: . lib/Spensive/Model
lib/Spensive/View
jifty-commit at lists.jifty.org
jifty-commit at lists.jifty.org
Tue Nov 20 12:09:40 EST 2007
Author: jesse
Date: Tue Nov 20 12:09:39 2007
New Revision: 4474
Modified:
apps/spensive/ (props changed)
apps/spensive/lib/Spensive/Dispatcher.pm
apps/spensive/lib/Spensive/Model/User.pm
apps/spensive/lib/Spensive/View.pm
apps/spensive/lib/Spensive/View/Expenses.pm
Log:
r58204 at pinglin (orig r6551): jesse | 2007-06-09 23:15:27 -0400
r58201 at pinglin: jesse | 2007-06-09 17:24:26 -0400
* we can now create expenses
Modified: apps/spensive/lib/Spensive/Dispatcher.pm
==============================================================================
--- apps/spensive/lib/Spensive/Dispatcher.pm (original)
+++ apps/spensive/lib/Spensive/Dispatcher.pm Tue Nov 20 12:09:39 2007
@@ -5,4 +5,12 @@
use strict;
use warnings;
+
+before qr'^/(?!(?:login|signup|__jifty))' => run {
+ unless(Jifty->web->current_user->id) {
+ Jifty->web->tangent( url => '/login');
+ }
+ };
+
+
1;
Modified: apps/spensive/lib/Spensive/Model/User.pm
==============================================================================
--- apps/spensive/lib/Spensive/Model/User.pm (original)
+++ apps/spensive/lib/Spensive/Model/User.pm Tue Nov 20 12:09:39 2007
@@ -14,6 +14,7 @@
use Jifty::Plugin::User::Mixin::Model::User;
use Jifty::Plugin::Authentication::Password::Mixin::Model::User;
+use Jifty::Plugin::OpenID::Mixin::Model::User;
# Your model-specific methods go here.
Modified: apps/spensive/lib/Spensive/View.pm
==============================================================================
--- apps/spensive/lib/Spensive/View.pm (original)
+++ apps/spensive/lib/Spensive/View.pm Tue Nov 20 12:09:39 2007
@@ -9,16 +9,17 @@
h1 { _('Spensive helps you keep track of your expenses') };
h2 { _('(It also helps you get reimbursed for them)') };
+ form {
my $search = Spensive::Model::ExpenseCollection->new();
$search->unlimit();
with( page => 1, search_collection => $search, id => 'xxx'),
render_region ( name=> 'myregion', path => '/expenses/list');
-
+ };
};
require Spensive::View::Expenses;
-import_templates Spensive::View::Expenses under '/expenses/';
+alias Spensive::View::Expenses under 'expenses/';
1;
Modified: apps/spensive/lib/Spensive/View/Expenses.pm
==============================================================================
--- apps/spensive/lib/Spensive/View/Expenses.pm (original)
+++ apps/spensive/lib/Spensive/View/Expenses.pm Tue Nov 20 12:09:39 2007
@@ -1,110 +1,26 @@
package Spensive::View::Expenses;
use strict;
use warnings;
-use Jifty::View::Declare -base;
-use base 'Spensive::View::CRUD';
-use Template::Declare::Tags;
-use Jifty::Plugin::Yullio::View;
-
-sub object_type { 'Expense' }
-
-sub fragment_for {
- return object_type()."/$_[1]";
-}
-
-template 'hi' => sub { h1 { 'hi'}};
-
-template 'index.html' => page {
- my $self = shift;
- #my $lang = get('lang');
- #my $organization = __PACKAGE__->get_record( get('organization') );
- #set( id => $organization->id );
- with ( width => 'doc', column_template => 'yui-t4' ),
- yullio {
- #h1 { $organization->team->name . ' ' . $organization->name };
-# render_region( name => 'available_languages', path => __PACKAGE__->fragment_for('available_languages'));
-# render_region( name => 'strings' );
- } sub { }
-};
-
-template available_languages => sub {
- my $self = shift;
- my $lang = get('lang');
- my $organization = __PACKAGE__->get_record( get('id') );
- ul {
- for my $lang ( @{ $organization->available_languages } ) {
- li { $self->lang_percentage($organization, $lang);
- span { hyperlink( url => "/translate/untranslated.html",
- parameters => { lang => $lang, organization => $organization->id },
- label => $lang,
- onclick => { region => 'strings',
- replace_with => '/organization/viewlang',
- args => { lang => $lang, id => get('id') } }) }
- span { hyperlink( url => "/organization/download_po",
- parameters => { lang => $lang, organization => $organization->id },
- label => 'Download PO' ) };
- }
- }
- };
-
-
-};
+use Jifty::View::Declare -base;
+use Jifty::View::Declare::CRUD;
+import_templates Jifty::View::Declare::CRUD under '/';
-template new_language_form => sub {
- my $newlang = new_action(
- class => 'NewLanguage',
- moniker => "newlanguage-" . Jifty->web->serial,
- arguments => { organization => get('id') }
- );
- Jifty->web->form->start;
- render_action( $newlang );
- form_submit( label => 'Create',
- onclick => [ {submit => $newlang,
- refresh => 'available_languages',
- args => { id => get('id')} } ]);
- Jifty->web->form->end;
-};
+sub fragment_base_path {'/expenses'}
-template viewlang => sub {
- my $self = shift;
- my ( $lang, $id ) = ( get('lang'), get('id') );
- my $p = $self->get_record( $id );
- h1 { _('Translating %1 pacakge %2 for %2', $p->team->name, $p->name, $lang) };
+sub object_type { 'Expense' }
- $self->render_tabs('organization-'.$lang, [qw(id lang)], qw( untranslated translated_tab ) );
-};
-template translated => sub {
- my $self = shift;
- my $p = $self->get_record( get('id') );
- die unless get('lang');
- my $strings = $p->translated(get('lang'));
- div { { id is 'translated-list' };
- $self->render_record_collection($strings, 'translated');
- };
-};
+template 'index.html' => page {
+ title is 'Expenses' ;
+ form {
+ render_region(
+ name => 'newslist',
+ path => 'expenses/list');
+ }
-template untranslated => sub {
- my $self = shift;
- my $p = $self->get_record( get('id') );
- my $strings = $p->untranslated(get('lang'));
- div { { id is 'untranslated-list' };
- $self->render_record_collection($strings, 'untranslated');
- };
};
-sub render_record_collection {
- my ($self, $strings, $name) = @_;
- h1 { _('%1 entries', $strings->count) };
- my $page = get('page');
- $strings->set_page_info( per_page => 10, current_page => $page );
- while (my $string = $strings->next) {
- render_region(name => $name.'-'.$string->id,
- force_path=>__PACKAGE__->fragment_for('list'),
- force_arguments => { id => $string->id});
- }
-};
1;
More information about the Jifty-commit
mailing list