Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions README.rdoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
=Redmine Issue Template Plugin

==About

Allows to manage templates of issues, and adding them to a new issue body.

==Install

# Follow the Redmine plugin installation steps at: www.redmine.org/wiki/redmine/Plugins
# Make sure the plugin is installed to +vendor/plugins/redmine-issues-template+
# Setup the database using the migrations. +rake db:migrate_plugins RAILS_ENV=production+
# Add a new *issue template* by clicking at *issue templates* menu under Administration Area

==Roadmap

* Each issue template need to be scoped by project

==Authors

* 'undev.ru' http://undev.ru'
* Otávio Sampaio, [email protected]




12 changes: 10 additions & 2 deletions app/controllers/issue_templates_controller.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
class IssueTemplatesController < ApplicationController
before_filter :find_issue_template, :except => [:index, :new, :create]
before_filter :require_admin
unloadable
before_filter :find_issue_template, :except => [:index, :new, :create, :show]
before_filter :require_admin, :except => [:show]

def index
@issue_templates = IssueTemplate.all(:order => "created_at DESC")
Expand Down Expand Up @@ -34,6 +35,13 @@ def destroy
redirect_to issue_templates_url
end

def show
@issue_template = IssueTemplate.find(params[:issue_template_id])
respond_to do |type|
type.js { render }
end
end

private

def find_issue_template
Expand Down
2 changes: 1 addition & 1 deletion app/helpers/issue_templates_helper.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
module IssueTemplatesHelper
def issue_templates_options
options_from_collection_for_select(IssueTemplate.all, 'content', 'title')
options_from_collection_for_select(IssueTemplate.all, 'id', 'title')
end
end

17 changes: 8 additions & 9 deletions app/views/issue_templates/_issue_template_control.html.erb
Original file line number Diff line number Diff line change
@@ -1,18 +1,17 @@
<% html = capture do %>
<div class='insertTemplate' style="margin-bottom: 15px; margin-left: -180px;">
<% if @issue.new_record? && IssueTemplate.count > 0 %>
<div class='insertTemplate' style="margin-bottom: 15px; margin-left: 80px;">
<% form_remote_tag :html => {:method => :get}, :url => { :controller => 'issue_templates', :action => 'show'} do %>
<label style="margin-left: 0; margin-right: 5px;"><%= l(:label_issue_template_insert) %></label>
<select id="template_selector">
<select id="template_selector" name="issue_template_id" >
<%= issue_templates_options %>
</select>
<input type="button" value="Вставить" onclick="insertTemplate('template_selector', 'issue_description')"/>
<%= submit_tag l(:label_issue_template_insert_button) %>
<% end %>
</div>
<% end %>
<% end %>

<% javascript_tag do %>
$('issue_description').insert({after: '<%= escape_javascript(html) %>'});
var head = $$('head')[0];
if (head) {
script = new Element('script', { type: 'text/javascript', src: '/plugin_assets/redmine_issue_template/javascripts/issue_templates.js'});
head.appendChild(script);
}
$('issue_description').insert({before: '<%= escape_javascript(html) %>'});
<% end %>
1 change: 1 addition & 0 deletions app/views/issue_templates/show.js.rjs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
page.replace_html :issue_description, :text => @issue_template.content
25 changes: 0 additions & 25 deletions assets/javascripts/issue_templates.js

This file was deleted.

1 change: 1 addition & 0 deletions config/locales/en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,5 @@ en:
label_issue_template_new: New issue template
label_issue_template_edit: Edit issue template
label_issue_template_insert: Insert template
label_issue_template_insert_button: Insert

8 changes: 8 additions & 0 deletions config/locales/pt-BR.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
pt-BR:
label_issue_template: Modelo de Tarefa
label_issue_template_plural: Modelo de Tarefas
label_issue_template_new: Novo Modelo de Tarefa
label_issue_template_edit: Edição de Modelo de Tarefa
label_issue_template_insert: Inserir Modelo
label_issue_template_insert_button: Inserir

1 change: 1 addition & 0 deletions config/locales/ru.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,5 @@ ru:
label_issue_template_new: Новый шаблон задачи
label_issue_template_edit: Редактирование шаблона задачи
label_issue_template_insert: Вставить шаблон
label_issue_template_insert_button: Вставить