You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
132 lines
7.0 KiB
Ruby
132 lines
7.0 KiB
Ruby
|
2 years ago
|
# encoding: UTF-8
|
||
|
|
|
||
|
|
# Copyright © Emilio González Montaña
|
||
|
|
# Licence: Attribution & no derivatives
|
||
|
|
# * Attribution to the plugin web page URL should be done if you want to use it.
|
||
|
|
# https://redmine.ociotec.com/projects/redmine-plugin-scrum
|
||
|
|
# * No derivatives of this plugin (or partial) are allowed.
|
||
|
|
# Take a look to licence.txt file at plugin root folder for further details.
|
||
|
|
|
||
|
|
ApplicationHelper.send(:include, Scrum::ApplicationHelperPatch)
|
||
|
|
CalendarsController.send(:include, Scrum::CalendarsControllerPatch)
|
||
|
|
Issue.send(:include, Scrum::IssuePatch)
|
||
|
|
IssueQuery.send(:include, Scrum::IssueQueryPatch)
|
||
|
|
IssuesController.send(:include, Scrum::IssuesControllerPatch)
|
||
|
|
IssueStatus.send(:include, Scrum::IssueStatusPatch)
|
||
|
|
Journal.send(:include, Scrum::JournalPatch)
|
||
|
|
Project.send(:include, Scrum::ProjectPatch)
|
||
|
|
ProjectsHelper.send(:include, Scrum::ProjectsHelperPatch)
|
||
|
|
Query.send(:include, Scrum::QueryPatch)
|
||
|
|
Tracker.send(:include, Scrum::TrackerPatch)
|
||
|
|
User.send(:include, Scrum::UserPatch)
|
||
|
|
|
||
|
|
require_dependency File.dirname(__FILE__) + '/lib/scrum/helper_hooks'
|
||
|
|
require_dependency File.dirname(__FILE__) + '/lib/scrum/view_hooks'
|
||
|
|
|
||
|
|
Redmine::Plugin.register :scrum do
|
||
|
|
name 'Scrum Redmine plugin'
|
||
|
|
author 'Emilio González Montaña'
|
||
|
|
description 'This plugin for Redmine allows to follow Scrum methodology with Redmine projects'
|
||
|
|
version '0.23.0'
|
||
|
|
url 'https://redmine.ociotec.com/projects/redmine-plugin-scrum'
|
||
|
|
author_url 'https://ociotec.com'
|
||
|
|
requires_redmine :version_or_higher => '4.0.0'
|
||
|
|
|
||
|
|
project_module :scrum do
|
||
|
|
permission :manage_sprints,
|
||
|
|
{:sprints => [:new, :create, :edit, :update, :destroy, :edit_effort, :update_effort]},
|
||
|
|
:require => :member
|
||
|
|
permission :view_sprint_board,
|
||
|
|
{:sprints => [:index, :show]}
|
||
|
|
permission :edit_sprint_board,
|
||
|
|
{:sprints => [:change_issue_status, :sort],
|
||
|
|
:scrum => [:change_story_points, :change_remaining_story_points,
|
||
|
|
:change_pending_effort, :change_assigned_to,
|
||
|
|
:new_pbi, :create_pbi, :edit_pbi, :update_pbi,
|
||
|
|
:new_task, :create_task, :edit_task, :update_task]},
|
||
|
|
:require => :member
|
||
|
|
permission :sort_sprint_board,
|
||
|
|
{:sprints => [:sort]},
|
||
|
|
:require => :member
|
||
|
|
permission :view_sprint_burndown,
|
||
|
|
{:sprints => [:burndown_index, :burndown]}
|
||
|
|
permission :view_sprint_stats, {:sprints => [:stats_index, :stats]}
|
||
|
|
permission :view_sprint_stats_by_member, {}
|
||
|
|
permission :view_product_backlog,
|
||
|
|
{:product_backlog => [:index, :show, :check_dependencies]}
|
||
|
|
permission :edit_product_backlog,
|
||
|
|
{:product_backlog => [:new_pbi, :create_pbi],
|
||
|
|
:scrum => [:edit_pbi, :update_pbi]},
|
||
|
|
:require => :member
|
||
|
|
permission :sort_product_backlog,
|
||
|
|
{:product_backlog => [:sort],
|
||
|
|
:scrum => [:move_pbi]},
|
||
|
|
:require => :member
|
||
|
|
permission :view_product_backlog_burndown,
|
||
|
|
{:product_backlog => [:burndown]}
|
||
|
|
permission :view_release_plan,
|
||
|
|
{:product_backlog => [:release_plan]}
|
||
|
|
permission :view_scrum_stats,
|
||
|
|
{:scrum => [:stats]}
|
||
|
|
permission :view_pending_effort,
|
||
|
|
{}
|
||
|
|
permission :edit_pending_effort,
|
||
|
|
{:scrum => [:change_pending_effort, :change_pending_efforts,
|
||
|
|
:change_story_points, :change_remaining_story_points]},
|
||
|
|
:require => :member
|
||
|
|
permission :view_remaining_story_points,
|
||
|
|
{}
|
||
|
|
permission :edit_remaining_story_points,
|
||
|
|
{:scrum => [:change_remaining_story_points]},
|
||
|
|
:require => :member
|
||
|
|
end
|
||
|
|
|
||
|
|
menu :project_menu, :product_backlog, {:controller => :product_backlog, :action => :index},
|
||
|
|
:caption => :label_menu_product_backlog, :after => :activity, :param => :project_id
|
||
|
|
menu :project_menu, :sprint, {:controller => :sprints, :action => :index},
|
||
|
|
:caption => :label_menu_sprint, :after => :activity, :param => :project_id
|
||
|
|
|
||
|
|
settings :default => {:create_journal_on_pbi_position_change => '0',
|
||
|
|
:doer_color => 'post-it-color-5',
|
||
|
|
:pbi_status_ids => [],
|
||
|
|
:pbi_tracker_ids => [],
|
||
|
|
:reviewer_color => 'post-it-color-3',
|
||
|
|
:doer_reviewer_postit_user_field_id => nil,
|
||
|
|
:story_points_custom_field_id => nil,
|
||
|
|
:blocked_custom_field_id => nil,
|
||
|
|
:simple_pbi_custom_field_id => nil,
|
||
|
|
:task_status_ids => [],
|
||
|
|
:task_tracker_ids => [],
|
||
|
|
:auto_update_pbi_status => '1',
|
||
|
|
:closed_pbi_status_id => nil,
|
||
|
|
:clear_new_tasks_assignee => '1',
|
||
|
|
:verification_activity_ids => [],
|
||
|
|
:inherit_pbi_attributes => '1',
|
||
|
|
:postit_size => 'small',
|
||
|
|
:random_posit_rotation => '1',
|
||
|
|
:render_position_on_pbi => '0',
|
||
|
|
:render_category_on_pbi => '1',
|
||
|
|
:render_version_on_pbi => '1',
|
||
|
|
:render_author_on_pbi => '1',
|
||
|
|
:render_assigned_to_on_pbi => '0',
|
||
|
|
:render_updated_on_pbi => '0',
|
||
|
|
:check_dependencies_on_pbi_sorting => '0',
|
||
|
|
:product_burndown_sprints => '4',
|
||
|
|
:render_pbis_speed => '1',
|
||
|
|
:render_tasks_speed => '1',
|
||
|
|
:lowest_speed => 70,
|
||
|
|
:low_speed => 80,
|
||
|
|
:high_speed => 140,
|
||
|
|
:render_plugin_tips => '1',
|
||
|
|
:sprint_burndown_day_zero => '1',
|
||
|
|
:pbi_is_closed_if_tasks_are_closed => '0',
|
||
|
|
:show_project_totals_on_sprint => '0',
|
||
|
|
:show_project_totals_on_backlog => '0',
|
||
|
|
:use_remaining_story_points => '0',
|
||
|
|
:product_burndown_extra_sprints => 3,
|
||
|
|
:default_sprint_name => 'Sprint 1',
|
||
|
|
:default_sprint_days => 10,
|
||
|
|
:default_sprint_shared => '1'},
|
||
|
|
:partial => 'settings/scrum_settings'
|
||
|
|
end
|