Changeset 833

Show
Ignore:
Timestamp:
11/03/07 21:20:54 (1 year ago)
Author:
wyca..@gmail.com
Message:

Better exceptions

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/app_generators/merb/templates/app/views/exceptions/internal_server_error.html.erb

    r819 r833  
    132132                                <h2>Sorry about that...</h2> 
    133133                        <% end -%> 
     134                        <h3>Parameters</h3> 
     135                        <ul> 
     136                        <% controller.params[:original_params].each do |param, value| %> 
     137                                <li><strong><%= param %>:</strong> <%= value.inspect %></li> 
     138                        <% end %> 
     139                        <%= "<li>None</li>" if controller.params[:original_params].empty? %> 
     140                        </ul> 
     141                         
     142                        <h3>Session</h3> 
     143                        <ul> 
     144                        <% controller.params[:original_session].each do |param, value| %> 
     145                                <li><strong><%= param %>:</strong> <%= value.inspect %></li> 
     146                        <% end %> 
     147                        <%= "<li>None</li>" if controller.params[:original_session].empty? %>                    
     148                        </ul> 
     149                         
     150                        <h3>Cookies</h3> 
     151                        <ul> 
     152                        <% controller.params[:original_cookies].each do |param, value| %> 
     153                                <li><strong><%= param %>:</strong> <%= value.inspect %></li> 
     154                        <% end %> 
     155                        <%= "<li>None</li>" if controller.params[:original_cookies].empty? %>                    
     156                        </ul>                    
    134157                </div> 
    135158                 
     
    142165                                                </td> 
    143166                                                <td class="path"> 
    144                                                         <%  file, lineno, in_exists, method = ( line.match(/^(.+):(\d+):(in) `(.+)'/) || line.match(/^(.+):(\d+)/) ).to_a[1..-1] %> 
    145                                                         <%= file rescue line %> 
    146                                                         <% if in_exists %> 
    147                                                                 in "<strong><%=method %></strong>" 
    148                                                         <% end %> 
     167                                                        <%= (line.match(/^([^:]+)/)[1] rescue 'unknown').sub(/\/((opt|usr)\/local\/lib\/(ruby\/)?(gems\/)?(1.8\/)?(gems\/)?|.+\/app\/)/, '') %> in "<strong><%= line.match(/:in `(.+)'$/)[1] rescue '?' %></strong>" 
    149168                                                </td> 
    150169                                                <td class="line"> 
    151                                                         <a href="txmt://open?url=file://<%=file rescue 'unknown' %>&amp;line=<%= lineno rescue '?' %>"><%=lineno%></a> 
     170                                                        <a href="txmt://open?url=file://<%=file = (line.match(/^([^:]+)/)[1] rescue 'unknown')%>&amp;line=<%= lineno = line.match(/:([0-9]+):/)[1] rescue '?' %>"><%=lineno%></a> 
    152171                                                </td>  
    153172                                        </tr> 
     
    157176                                                <td class="code" colspan="2"><% (__caller_lines__(file, lineno, 5) rescue []).each do |llineno, lcode, lcurrent| %> 
    158177<a href="txmt://open?url=file://<%=file%>&amp;line=<%=llineno%>"><%= llineno %></a><%='<em>' if llineno==lineno.to_i %><%= lcode.size > 90 ? lcode[0..90]+'<span class="more">......</span>' : lcode %><%='</em>' if llineno==lineno.to_i %> 
    159                                                <% end %> 
     178<% end %> 
    160179 
    161180</td>