Use the stashed project object for uri generation rather than the attribute in the...
Tomas Doran [Sun, 8 Nov 2009 23:46:12 +0000 (23:46 +0000)]
lib/Gitalist.pm

index 085456c..edd3519 100644 (file)
@@ -53,12 +53,13 @@ __PACKAGE__->setup();
 
 around uri_for => sub {
   my ($orig, $c) = (shift, shift);
-  local $c->stash->{current_model}; # FIXME - for zts..
+  my $project_name = $c->stash->{'Project'} && $c->stash->{'Project'}->name;
   my $hash = ref($_[-1]) eq 'HASH' ? pop @_ : {};
   my $params = Catalyst::Utils::merge_hashes(
-    { p => $hash->{p} || $c->model()->project },
+    { p => $hash->{p} || $project_name },
     $hash,
   );
+  delete $params->{p} unless defined $params->{p} && length $params->{p};
   (my $uri = $c->$orig(@_, $params))
     =~ tr[&][;];
   return $uri;