import torrus 1.0.9
[freeside.git] / httemplate / elements / create_uri_query
1 <% $query %>\
2 <%init>
3
4 my $query = $cgi->query_string;
5
6 if ( length($query) > 1920 ) { #stupid IE 2083 URL limit
7
8   my $session = int(rand(4294967296)); #XXX
9   my $pref = new FS::access_user_pref({
10     'usernum'    => $FS::CurrentUser::CurrentUser->usernum,
11     'prefname'   => "redirect$session",
12     'prefvalue'  => $query,
13     'expiration' => time + 3600, #1h?  1m?
14   });
15   my $pref_error = $pref->insert;
16   if ( $pref_error ) {
17     die "FATAL: couldn't even set redirect cookie: $pref_error".
18         " attempting to set redirect$session to $query\n";
19   }
20
21   $query = "redirect=$session";
22
23 }
24
25 </%init>