app/views/search/index.html.erb
<h2><%= l(:label_search) %> <%= image_tag("xapian-powered.png", :plugin => 'redmine_xapian') %> </h2>
<div class="box">
<%= form_tag({}, :method => :get) do %>
<%= label_tag "search-input", l(:description_search), :class => "hidden-for-sighted" %>
<p><%= text_field_tag 'q', @question, :size => 60, :id => 'search-input' %>
<%= javascript_tag "Field.focus('search-input')" %>
<%= project_select_tag %>
<%= hidden_field_tag 'all_words', '', :id => nil %>
<label><%= check_box_tag 'all_words', 1, @all_words %> <%= l(:label_all_words) %></label>
<%= hidden_field_tag 'titles_only', '', :id => nil %>
<label><%= check_box_tag 'titles_only', 1, @titles_only %> <%= l(:label_search_titles_only) %></label>
</p>
<p>
<% @object_types.each do |t| %>
<% logger.debug "DEBUG: object type: " + t.inspect %>
<label><%= check_box_tag t, 1, @scope.include?(t) %> <%= type_label(t) %></label>
<% end %>
</p>
<% logger.debug "DEBUG: object_types from search: " + Redmine::Search.available_search_types.inspect %>
<% if @object_types.include?("attachments") || @object_types.include?("repofiles") %>
<% Setting.plugin_redmine_xapian['stem_langs'].push(Setting.plugin_redmine_xapian['stemming_lang']) unless Setting.plugin_redmine_xapian['stem_langs'].include?(Setting.plugin_redmine_xapian['stemming_lang']) %>
<p>
<% if Setting.plugin_redmine_xapian['stem_on_search'] == "true" then %>
<label><%= content_tag(:label, l(:label_stemming_lang))%> <%= select_tag "user_stem_lang",
options_for_select( Setting.plugin_redmine_xapian['stem_langs'], @user_stem_lang ) %>
</label>
<%=content_tag(:label, l(:label_stemming_strategy))%>
<%=radio_button_tag 'user_stem_strategy', 'STEM_NONE', 'STEM_NONE' == @user_stem_strategy %> <%= l(:label_stem_none)%>
<%=radio_button_tag 'user_stem_strategy', 'STEM_SOME', 'STEM_SOME' == @user_stem_strategy %> <%= l(:label_stem_some)%>
<%=radio_button_tag 'user_stem_strategy', 'STEM_ALL', 'STEM_ALL' == @user_stem_strategy %> <%= l(:label_stem_all)%>
<%end%>
<%end%>
<p><%= submit_tag l(:button_submit), :name => 'submit' %></p>
<% end %>
</div>
<% if @results %>
<div id="search-results-counts">
<%= render_results_by_type(@results_by_type) unless @scope.size == 1 %>
</div>
<h3><%= l(:label_result_plural) %> (<%= @results_by_type.values.sum %>)</h3>
<dl id="search-results">
<% @results.each do |e| %>
<dt class="<%= e.event_type %>"><%= content_tag('span', h(e.project), :class => 'project') unless @project == e.project %>
<% if e.event_type == "attachment" then %>
<strong>
<%= link_to highlight_tokens(truncate(e.event_title, :length => 255), @tokens), e.event_url %>
</strong>
<%= link_to_container(e) %>
<% else %>
<%= link_to highlight_tokens(truncate(e.event_title, :length => 255), @tokens), e.event_url %>
<%end%>
</dt>
<dd><span class="description">
<% if e.event_type == "attachment" || e.event_type == "subversion" || e.event_type == "git" then %>
<%= highlight_tokens2(e.event_description, @tokens) %>
<% else%>
<%= highlight_tokens(e.event_description, @tokens) %>
<% end %>
</span>
<span class="author"><%= format_time(e.event_datetime) %></span></dd>
<% end %>
</dl>
<% end %>
<p><center>
<% if @pagination_previous_date %>
<%= link_to_content_update("\xc2\xab " + l(:label_previous),
params.merge(:previous => 1,
:offset => @pagination_previous_date.strftime("%Y%m%d%H%M%S"))) %>
<% end %>
<% if @pagination_next_date %>
<%= link_to_content_update(l(:label_next) + " \xc2\xbb",
params.merge(:previous => nil,
:offset => @pagination_next_date.strftime("%Y%m%d%H%M%S"))) %>
<% end %>
</center></p>
<% html_title(l(:label_search)) -%>
<% content_for :header_tags do %>
<%= stylesheet_link_tag 'redmine_xapian', 'pagination', :plugin => 'redmine_xapian' %>
<% end %>