Shuffle shit round to be neater to my eyes. Move that horrible time function out...
Tomas Doran [Fri, 11 Dec 2009 00:34:44 +0000 (00:34 +0000)]
lib/Gitalist/Controller/Root.pm
lib/Gitalist/Utils.pm [new file with mode: 0644]

index f67e4b5..e51e344 100644 (file)
@@ -1,11 +1,6 @@
 package Gitalist::Controller::Root;
-use Moose;
-use namespace::autoclean;
-
-BEGIN { extends 'Catalyst::Controller' }
-
-__PACKAGE__->config->{namespace} = '';
 
+use Moose;
 use Moose::Autobox;
 use Sys::Hostname ();
 use XML::Atom::Feed;
@@ -13,17 +8,15 @@ use XML::Atom::Entry;
 use XML::RSS;
 use XML::OPML::SimpleGen;
 
-=head1 NAME
-
-Gitalist::Controller::Root - Root Controller for Gitalist
+use Gitalist::Utils qw/ age_string /;
 
-=head1 DESCRIPTION
+use namespace::autoclean;
 
-[enter your description here]
+BEGIN { extends 'Catalyst::Controller' }
 
-=head1 METHODS
+__PACKAGE__->config->{namespace} = '';
 
-=cut
+sub root : Chained('/') PathPart('') CaptureArgs(0) {}
 
 sub _get_object {
   my($self, $c, $haveh) = @_;
@@ -683,50 +676,12 @@ sub end : ActionClass('RenderView') {
     }
 }
 
-sub error_404 :Private {
+sub error_404 : Action {
     my ($self, $c) = @_;
     $c->response->status(404);
     $c->response->body('Page not found');
 }
 
-sub age_string {
-  my $age = shift;
-  my $age_str;
-
-  if ( $age > 60 * 60 * 24 * 365 * 2 ) {
-    $age_str  = ( int $age / 60 / 60 / 24 / 365 );
-    $age_str .= " years ago";
-  }
-  elsif ( $age > 60 * 60 * 24 * ( 365 / 12 ) * 2 ) {
-    $age_str  = int $age / 60 / 60 / 24 / ( 365 / 12 );
-    $age_str .= " months ago";
-  }
-  elsif ( $age > 60 * 60 * 24 * 7 * 2 ) {
-    $age_str  = int $age / 60 / 60 / 24 / 7;
-    $age_str .= " weeks ago";
-  }
-  elsif ( $age > 60 * 60 * 24 * 2 ) {
-    $age_str  = int $age / 60 / 60 / 24;
-    $age_str .= " days ago";
-  }
-  elsif ( $age > 60 * 60 * 2 ) {
-    $age_str  = int $age / 60 / 60;
-    $age_str .= " hours ago";
-  }
-  elsif ( $age > 60 * 2 ) {
-    $age_str  = int $age / 60;
-    $age_str .= " min ago";
-  }
-  elsif ( $age > 2 ) {
-    $age_str  = int $age;
-    $age_str .= " sec ago";
-  }
-  else {
-    $age_str .= " right now";
-  }
-  return $age_str;
-}
-
 __PACKAGE__->meta->make_immutable;
 
 __END__
diff --git a/lib/Gitalist/Utils.pm b/lib/Gitalist/Utils.pm
new file mode 100644 (file)
index 0000000..0df4973
--- /dev/null
@@ -0,0 +1,70 @@
+package Gitalist::Utils;
+use strict;
+use warnings;
+use Exporter qw/import/;
+
+our @EXPORT_OK = qw/
+    age_string
+/;
+
+sub age_string {
+  my $age = shift;
+  my $age_str;
+
+  if ( $age > 60 * 60 * 24 * 365 * 2 ) {
+    $age_str  = ( int $age / 60 / 60 / 24 / 365 );
+    $age_str .= " years ago";
+  }
+  elsif ( $age > 60 * 60 * 24 * ( 365 / 12 ) * 2 ) {
+    $age_str  = int $age / 60 / 60 / 24 / ( 365 / 12 );
+    $age_str .= " months ago";
+  }
+  elsif ( $age > 60 * 60 * 24 * 7 * 2 ) {
+    $age_str  = int $age / 60 / 60 / 24 / 7;
+    $age_str .= " weeks ago";
+  }
+  elsif ( $age > 60 * 60 * 24 * 2 ) {
+    $age_str  = int $age / 60 / 60 / 24;
+    $age_str .= " days ago";
+  }
+  elsif ( $age > 60 * 60 * 2 ) {
+    $age_str  = int $age / 60 / 60;
+    $age_str .= " hours ago";
+  }
+  elsif ( $age > 60 * 2 ) {
+    $age_str  = int $age / 60;
+    $age_str .= " min ago";
+  }
+  elsif ( $age > 2 ) {
+    $age_str  = int $age;
+    $age_str .= " sec ago";
+  }
+  else {
+    $age_str .= " right now";
+  }
+  return $age_str;
+}
+
+1;
+
+__END__
+
+=head1 NAME
+
+Gitalist::Utils - trivial utils for Gitalist
+
+=head2 FUNCTIONS
+
+=head2 age_string
+
+Turns an integer number of seconds into a string..
+
+=head1 AUTHORS
+
+See L<Gitalist> for authors.
+
+=head1 LICENSE
+
+See L<Gitalist> for the license.
+
+=cut