Changeset 2082

Show
Ignore:
Timestamp:
11/02/06 19:27:35
Author:
miyagawa
Message:

remove redirect.tt; make /foo and /a/foo the same

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • Mixxi/trunk/lib/Mixxi/Controller/About.pm

    r2076 r2082  
    2222=cut 
    2323 
    24 sub a : Global
     24sub index : Private
    2525    my ( $self, $c, $alias, $id ) = @_; 
     26 
     27    my $alias = $c->req->args->[0]; 
     28    my $id    = $c->req->args->[1]; 
    2629 
    2730    my $url; 
    2831    eval { 
     32        $alias = $id if $alias eq 'a'; 
     33 
     34        unless ($alias || $id) { 
     35            die "No alias nor id"; 
     36        } 
     37 
    2938        if ($alias eq 'u') { 
    3039            $id = Mixxi::Schema::Url->to_id($id) or die "No id"; 
  • Mixxi/trunk/lib/Mixxi/Controller/Root.pm

    r2080 r2082  
    2727=cut 
    2828 
    29 sub u : Global { 
    30     my ( $self, $c ) = @_; 
    31  
    32     eval { 
    33         my $id = $c->req->args->[0]; 
    34         $id = Mixxi::Schema::Url->to_id($id) or die "No decodable ID"; 
    35  
    36         my $url = $c->model('DBIC::Url')->find($id) 
    37             or die "No object with id=$id"; 
    38  
    39         $c->res->redirect($url->url); 
    40     }; 
    41  
    42     if ($@) { 
    43         $c->res->redirect($c->uri_for('/url')); 
    44     } 
    45 } 
    46  
    4729sub id : Global { 
    4830    my($self, $c) = @_; 
     
    5739sub default : Private { 
    5840    my($self, $c) = @_; 
    59  
    60     eval { 
    61         my $alias = $c->req->args->[0] or die "No alias"; 
    62         my $rs = $c->model('DBIC::Url')->search(alias => $alias); 
    63         $rs->count or die "No url matched $alias"; 
    64         my $url = $rs->first; 
    65  
    66         if ($c->req->cookie('seen')) { 
    67             $c->res->redirect( $url->url ); 
    68         } else { 
    69             $c->res->cookies->{seen} = { 
    70                 value   => 1, 
    71                 expires => '+3d', 
    72             }; 
    73             $c->stash->{url} = $url; 
    74             $c->stash->{template} = 'redirect.tt'; 
    75         } 
    76     }; 
    77  
    78     if ($@) { 
    79         return $c->res->redirect($c->uri_for('/url')); 
    80     } 
     41    $c->forward('/about/index'); 
    8142} 
    8243 
  • Mixxi/trunk/lib/Mixxi/Controller/URL.pm

    r2077 r2082  
    4444    }); 
    4545 
    46     $c->res->redirect($c->uri_for('/a/') . $rec->canon_path); 
     46    $c->res->redirect($c->uri_for('/') . $rec->canon_path); 
    4747} 
    4848 
  • Mixxi/trunk/root/about.tt

    r2076 r2082  
    1 [% INCLUDE head.tt %] 
    2 Long URL: [% url.url | html %]<br /> 
     1[% INCLUDE head.tt meta_refresh = url.url %] 
     2Long URL: [% url.url | html %] (Redirect in 10 seconds)<br /> 
    33Short URL: <a href="[% c.uri_for('/') %][% url.canon_path | html %]">[% c.uri_for('/') %][% url.canon_path | html %]</a><br /> 
    44 
    5 <p><img src="[% c.uri_for('/qr/') %][% url.canon_path | html %]" /></p>  
     5<p><img src="[% c.uri_for('/qr/') %][% url.canon_path | html %]" /></p> 
     6 
     7<p><a href="[% c.uri_for('/url') %]">Create your own NOW!</a></p> 
    68 
    79[% INCLUDE footer.tt %] 
  • Mixxi/trunk/root/url/index.tt

    r2081 r2082  
    4646<p id="hint"><strong>ヒント:</strong> 
    4747<ul> 
    48 <li>http://mixxi.jp/{Alias} リダイレクト</li> 
    49 <li>http://mixxi.jp/a/{Alias} リンク情報表示</li> 
     48<li>http://mixxi.jp/{Alias} リダイレクト + リンク情報</li> 
    5049<li>http://mixxi.jp/qr/{Alias} QRコード表示</li> 
    5150</ul>