show_project.rhtml 2.57 KB
<% @project = Kalibro::Client::ProjectClient.new.project(@page.name) %>

<table id="project_info">
  <tr>
    <td><%= _('Name') %></td>
    <td><%= @project.name %></td>
  </tr>
  <tr>
    <td><%= _('License') %></td>
    <td><%= @project.license %></td>
  </tr>
  <tr>
    <td><%= _('Description') %></td>
    <td><%= @project.description %></td>
  </tr>
  <tr>
    <td><%= _('Repository type') %></td>
    <td><%= @project.repository.type %></td>
  </tr>
  <tr>
    <td><%= _('Repository address') %></td>
    <td><%= @project.repository.address %></td>
  </tr>
  <tr>
    <td><%= _('Configuration') %></td>
    <td><%= @project.configuration_name %></td>
  </tr>
</table>

<br />

<% if ! @project.error.nil? %>
  <h3><%= _('ERROR') %></h3>
  <% @error = @project.error %>
  <p>
    <%= "State when error ocurred: #{@project.state}" %>
    <br/>
    <%= @error.message %>
    <ul><% @error.stack_trace.each do |trace| %>
      <li><%= "#{trace.declaring_class}.#{trace.method_name}(#{trace.file_name}:#{trace.line_number})" %></li>
    <% end %></ul>
  </p>
<% elsif @project.state.end_with? 'ING' %>
  <p>
    <%= _("Kalibro Service is #{@project.state.downcase} the source code.") %>
    <br/>
    <%= _('Reload the page manually in a few moments.') %>
  </p>
<% elsif @project.state == 'READY' %>
  <h3><%= _('LAST RESULT') %></h3>
  <% @project_result = Kalibro::Client::ProjectResultClient.new.last_result(@project.name) %>
  <% @module_client = Kalibro::Client::ModuleResultClient.new %>

  <table id="project_result_info">
    <tr>
      <td><%= _('Date') %></td>
      <td><%= @project_result.date %></td>
    </tr>
    <tr>
      <td><%= _('Load time') %></td>
      <td><%= @project_result.formatted_load_time %></td>
    </tr>
    <tr>
      <td><%= _('Analysis time') %></td>
      <td><%= @project_result.formatted_analysis_time %></td>
    </tr>
  </table>
  <h5><%= _('Source tree') %></h5>
  <%= @project_result.source_tree.print %>

  <% @module_result = @module_client.module_result(@project.name, @project.name, @project_result.date) %>

  <h5><%= _('Metric Result') %> </h5>
  <strong>
  <%= _('Module:') %>
  <%=  @module_result.module.name %>
  <br/>
  <%= _('Grade:') %>
  <%=  @module_result.grade %>
  </strong>
  <br/>
  <hr/>
  <table id="project_metric_result">
    <% @module_result.metric_results.each do |metric_result|  %>
    <tr>
      <td><%= metric_result.metric.name %></td>
      <td><%= metric_result.value %></td>
      <% range = metric_result.range %>
      <td style="background-color: #<%= range.color[2..-1] %>"><%= range.label %></td>
    </tr>

    <% end %>
  </table>

<% end %>