<%
  traces = [
    ["Application Trace", @exception.application_backtrace],
    ["Framework Trace", @exception.framework_backtrace],
    ["Full Trace", @exception.clean_backtrace]
  ]
  names = traces.collect {|name, trace| name}
%>

<p><code>RAILS_ROOT: <%= defined?(RAILS_ROOT) ? RAILS_ROOT : "unset" %></code></p>

<div id="traces">
  <% names.each do |name| -%>
    <%
      show = "document.getElementById('#{name.gsub /\s/, '-'}').style.display='block';"
      hide = (names - [name]).collect {|hide_name| "document.getElementById('#{hide_name.gsub /\s/, '-'}').style.display='none';"}
    %>
    <a href="#" onclick="<%= hide %><%= show %>; return false;"><%= name %></a> <%= '|' unless names.last == name %>
  <% end -%>

  <% traces.each do |name, trace| -%>
    <div id="<%= name.gsub /\s/, '-' %>" style="display: <%= name == "Application Trace" ? 'block' : 'none' %>;">
      <pre><code><%= trace.join "\n" %></code></pre>
    </div>
  <% end -%>
</div>