diff --git a/app/assets/javascripts/budget_edit_associations.js b/app/assets/javascripts/budget_edit_associations.js
index 83c7ae3a6..37a2d328e 100644
--- a/app/assets/javascripts/budget_edit_associations.js
+++ b/app/assets/javascripts/budget_edit_associations.js
@@ -4,15 +4,13 @@
initialize: function() {
$(".js-budget-users-list [type='checkbox']").on({
change: function() {
- var admin_count, tracker_count, valuator_count;
+ var admin_count, valuator_count;
admin_count = $("#administrators_list :checked").length;
valuator_count = $("#valuators_list :checked").length;
- tracker_count = $("#trackers_list :checked").length;
App.I18n.set_pluralize($(".js-budget-show-administrators-list"), admin_count);
App.I18n.set_pluralize($(".js-budget-show-valuators-list"), valuator_count);
- App.I18n.set_pluralize($(".js-budget-show-trackers-list"), tracker_count);
}
});
$(".js-budget-show-users-list").on({
diff --git a/app/controllers/tracking/budget_investment_milestones_controller.rb b/app/controllers/admin/budget_investment_milestones_controller.rb
similarity index 55%
rename from app/controllers/tracking/budget_investment_milestones_controller.rb
rename to app/controllers/admin/budget_investment_milestones_controller.rb
index 25ad0cab6..6879298d9 100644
--- a/app/controllers/tracking/budget_investment_milestones_controller.rb
+++ b/app/controllers/admin/budget_investment_milestones_controller.rb
@@ -1,4 +1,4 @@
-class Tracking::BudgetInvestmentMilestonesController < Tracking::MilestonesController
+class Admin::BudgetInvestmentMilestonesController < Admin::MilestonesController
private
def milestoneable
diff --git a/app/controllers/admin/budget_investment_progress_bars_controller.rb b/app/controllers/admin/budget_investment_progress_bars_controller.rb
new file mode 100644
index 000000000..4cc34570c
--- /dev/null
+++ b/app/controllers/admin/budget_investment_progress_bars_controller.rb
@@ -0,0 +1,7 @@
+class Admin::BudgetInvestmentProgressBarsController < Admin::ProgressBarsController
+ private
+
+ def progressable
+ Budget::Investment.find(params[:budget_investment_id])
+ end
+end
diff --git a/app/controllers/admin/budget_investments_controller.rb b/app/controllers/admin/budget_investments_controller.rb
index bb71ef946..78fcfc806 100644
--- a/app/controllers/admin/budget_investments_controller.rb
+++ b/app/controllers/admin/budget_investments_controller.rb
@@ -87,7 +87,7 @@ class Admin::BudgetInvestmentsController < Admin::BaseController
def budget_investment_params
attributes = [:external_url, :heading_id, :administrator_id, :tag_list,
:valuation_tag_list, :incompatible, :visible_to_valuators, :selected,
- :milestone_tag_list, tracker_ids: [], valuator_ids: [], valuator_group_ids: []]
+ :milestone_tag_list, valuator_ids: [], valuator_group_ids: []]
params.require(:budget_investment).permit(attributes, translation_params(Budget::Investment))
end
@@ -101,7 +101,6 @@ class Admin::BudgetInvestmentsController < Admin::BaseController
def load_staff
@admins = @budget.administrators.includes(:user)
- @trackers = @budget.trackers.includes(:user).order(description: :asc).order("users.email ASC")
@valuators = @budget.valuators.includes(:user).order(description: :asc).order("users.email ASC")
end
diff --git a/app/controllers/admin/budgets_controller.rb b/app/controllers/admin/budgets_controller.rb
index 30395face..f95c8c6d9 100644
--- a/app/controllers/admin/budgets_controller.rb
+++ b/app/controllers/admin/budgets_controller.rb
@@ -71,8 +71,7 @@ class Admin::BudgetsController < Admin::BaseController
valid_attributes = [:phase,
:currency_symbol,
administrator_ids: [],
- valuator_ids: [],
- tracker_ids: []
+ valuator_ids: []
] + descriptions
params.require(:budget).permit(*valid_attributes, *report_attributes, translation_params(Budget))
end
@@ -83,7 +82,6 @@ class Admin::BudgetsController < Admin::BaseController
def load_staff
@admins = Administrator.includes(:user)
- @trackers = Tracker.includes(:user).order(description: :asc).order("users.email ASC")
@valuators = Valuator.includes(:user).order(description: :asc).order("users.email ASC")
end
end
diff --git a/app/controllers/admin/legislation/milestones_controller.rb b/app/controllers/admin/legislation/milestones_controller.rb
index aba0c673f..09d55f6ca 100644
--- a/app/controllers/admin/legislation/milestones_controller.rb
+++ b/app/controllers/admin/legislation/milestones_controller.rb
@@ -1,4 +1,4 @@
-class Admin::Legislation::MilestonesController < Tracking::MilestonesController
+class Admin::Legislation::MilestonesController < Admin::MilestonesController
include FeatureFlags
feature_flag :legislation
@@ -11,4 +11,8 @@ class Admin::Legislation::MilestonesController < Tracking::MilestonesController
def milestoneable
::Legislation::Process.find(params[:process_id])
end
+
+ def milestoneable_path
+ admin_legislation_process_milestones_path(milestoneable)
+ end
end
diff --git a/app/controllers/tracking/legislation/progress_bars_controller.rb b/app/controllers/admin/legislation/progress_bars_controller.rb
similarity index 69%
rename from app/controllers/tracking/legislation/progress_bars_controller.rb
rename to app/controllers/admin/legislation/progress_bars_controller.rb
index 38ed60788..ba00d5e91 100644
--- a/app/controllers/tracking/legislation/progress_bars_controller.rb
+++ b/app/controllers/admin/legislation/progress_bars_controller.rb
@@ -1,4 +1,4 @@
-class Tracking::Legislation::ProgressBarsController < Tracking::ProgressBarsController
+class Admin::Legislation::ProgressBarsController < Admin::ProgressBarsController
include FeatureFlags
feature_flag :legislation
diff --git a/app/controllers/tracking/milestones_controller.rb b/app/controllers/admin/milestones_controller.rb
similarity index 75%
rename from app/controllers/tracking/milestones_controller.rb
rename to app/controllers/admin/milestones_controller.rb
index 9d916c830..1ee5ecc10 100644
--- a/app/controllers/tracking/milestones_controller.rb
+++ b/app/controllers/admin/milestones_controller.rb
@@ -1,4 +1,4 @@
-class Tracking::MilestonesController < Tracking::BaseController
+class Admin::MilestonesController < Admin::BaseController
include Translatable
include ImageAttributes
@@ -17,7 +17,7 @@ class Tracking::MilestonesController < Tracking::BaseController
def create
@milestone = @milestoneable.milestones.new(milestone_params)
if @milestone.save
- redirect_to milestoneable_path, notice: t("tracking.milestones.create.notice")
+ redirect_to milestoneable_path, notice: t("admin.milestones.create.notice")
else
render :new
end
@@ -28,7 +28,7 @@ class Tracking::MilestonesController < Tracking::BaseController
def update
if @milestone.update(milestone_params)
- redirect_to milestoneable_path, notice: t("tracking.milestones.update.notice")
+ redirect_to milestoneable_path, notice: t("admin.milestones.update.notice")
else
render :edit
end
@@ -36,7 +36,7 @@ class Tracking::MilestonesController < Tracking::BaseController
def destroy
@milestone.destroy!
- redirect_to milestoneable_path, notice: t("tracking.milestones.delete.notice")
+ redirect_to milestoneable_path, notice: t("admin.milestones.delete.notice")
end
private
@@ -67,7 +67,6 @@ class Tracking::MilestonesController < Tracking::BaseController
end
def milestoneable_path
- polymorphic_path([current_user.administrator? ? :admin : :tracking,
- *resource_hierarchy_for(@milestone.milestoneable)])
+ polymorphic_path([:admin, *resource_hierarchy_for(@milestone.milestoneable)])
end
end
diff --git a/app/controllers/tracking/progress_bars_controller.rb b/app/controllers/admin/progress_bars_controller.rb
similarity index 72%
rename from app/controllers/tracking/progress_bars_controller.rb
rename to app/controllers/admin/progress_bars_controller.rb
index 0eb3340cd..1d05c0027 100644
--- a/app/controllers/tracking/progress_bars_controller.rb
+++ b/app/controllers/admin/progress_bars_controller.rb
@@ -1,4 +1,4 @@
-class Tracking::ProgressBarsController < Tracking::BaseController
+class Admin::ProgressBarsController < Admin::BaseController
include Translatable
before_action :load_progressable
@@ -15,7 +15,7 @@ class Tracking::ProgressBarsController < Tracking::BaseController
def create
@progress_bar = @progressable.progress_bars.new(progress_bar_params)
if @progress_bar.save
- redirect_to progress_bars_index, notice: t("tracking.progress_bars.create.notice")
+ redirect_to progress_bars_index, notice: t("admin.progress_bars.create.notice")
else
render :new
end
@@ -26,7 +26,7 @@ class Tracking::ProgressBarsController < Tracking::BaseController
def update
if @progress_bar.update(progress_bar_params)
- redirect_to progress_bars_index, notice: t("tracking.progress_bars.update.notice")
+ redirect_to progress_bars_index, notice: t("admin.progress_bars.update.notice")
else
render :edit
end
@@ -34,7 +34,7 @@ class Tracking::ProgressBarsController < Tracking::BaseController
def destroy
@progress_bar.destroy!
- redirect_to progress_bars_index, notice: t("tracking.progress_bars.delete.notice")
+ redirect_to progress_bars_index, notice: t("admin.progress_bars.delete.notice")
end
private
@@ -64,6 +64,6 @@ class Tracking::ProgressBarsController < Tracking::BaseController
end
def progress_bars_index
- polymorphic_path([:tracking, *resource_hierarchy_for(@progressable), ProgressBar.new])
+ polymorphic_path([:admin, *resource_hierarchy_for(@progressable), ProgressBar.new])
end
end
diff --git a/app/controllers/tracking/proposal_milestones_controller.rb b/app/controllers/admin/proposal_milestones_controller.rb
similarity index 52%
rename from app/controllers/tracking/proposal_milestones_controller.rb
rename to app/controllers/admin/proposal_milestones_controller.rb
index c0507d4bf..5699183a9 100644
--- a/app/controllers/tracking/proposal_milestones_controller.rb
+++ b/app/controllers/admin/proposal_milestones_controller.rb
@@ -1,4 +1,4 @@
-class Tracking::ProposalMilestonesController < Tracking::MilestonesController
+class Admin::ProposalMilestonesController < Admin::MilestonesController
private
def milestoneable
diff --git a/app/controllers/tracking/proposal_progress_bars_controller.rb b/app/controllers/admin/proposal_progress_bars_controller.rb
similarity index 51%
rename from app/controllers/tracking/proposal_progress_bars_controller.rb
rename to app/controllers/admin/proposal_progress_bars_controller.rb
index f402b5b85..2da652e05 100644
--- a/app/controllers/tracking/proposal_progress_bars_controller.rb
+++ b/app/controllers/admin/proposal_progress_bars_controller.rb
@@ -1,4 +1,4 @@
-class Tracking::ProposalProgressBarsController < Tracking::ProgressBarsController
+class Admin::ProposalProgressBarsController < Admin::ProgressBarsController
private
def progressable
diff --git a/app/controllers/admin/trackers_controller.rb b/app/controllers/admin/trackers_controller.rb
deleted file mode 100644
index c244d052f..000000000
--- a/app/controllers/admin/trackers_controller.rb
+++ /dev/null
@@ -1,57 +0,0 @@
-class Admin::TrackersController < Admin::BaseController
- load_and_authorize_resource
-
- before_action :set_tracker, only: [:show, :edit, :update, :destroy]
-
- def show
- @tracker = Tracker.find(params[:id])
- end
-
- def index
- @trackers = @trackers.page(params[:page])
- end
-
- def search
- @users = User.search(params[:name_or_email])
- .includes(:tracker)
- .page(params[:page])
- .for_render
- end
-
- def create
- @tracker = Tracker.new(tracker_params)
- @tracker.save!
-
- redirect_to admin_trackers_path
- end
-
- def edit
- @tracker = Tracker.find(params[:id])
- end
-
- def update
- @tracker = Tracker.find(params[:id])
- if @tracker.update(tracker_params)
- notice = t("admin.trackers.form.updated")
- redirect_to [:admin, @tracker], notice: notice
- else
- render :edit
- end
- end
-
- def destroy
- @tracker.destroy!
- redirect_to admin_trackers_path
- end
-
- private
-
- def set_tracker
- @tracker = Tracker.find(params[:id])
- end
-
- def tracker_params
- params[:tracker][:description] = nil if params[:tracker][:description].blank?
- params.require(:tracker).permit(:user_id, :description, :budget_investment_count)
- end
-end
diff --git a/app/controllers/tracking/base_controller.rb b/app/controllers/tracking/base_controller.rb
deleted file mode 100644
index 2e459bc7b..000000000
--- a/app/controllers/tracking/base_controller.rb
+++ /dev/null
@@ -1,14 +0,0 @@
-class Tracking::BaseController < ApplicationController
- layout "admin"
-
- before_action :authenticate_user!
- before_action :verify_tracker
-
- skip_authorization_check
-
- private
-
- def verify_tracker
- raise CanCan::AccessDenied unless current_user&.tracker? || current_user&.administrator?
- end
-end
diff --git a/app/controllers/tracking/budget_investment_progress_bars_controller.rb b/app/controllers/tracking/budget_investment_progress_bars_controller.rb
deleted file mode 100644
index 6e536d8ed..000000000
--- a/app/controllers/tracking/budget_investment_progress_bars_controller.rb
+++ /dev/null
@@ -1,17 +0,0 @@
-class Tracking::BudgetInvestmentProgressBarsController < Tracking::ProgressBarsController
- before_action :restrict_access_to_assigned_items
-
- private
-
- def progressable
- Budget::Investment.find(params[:budget_investment_id])
- end
-
- def restrict_access_to_assigned_items
- return if current_user.administrator? ||
- Budget::TrackerAssignment.exists?(investment_id: params[:budget_investment_id],
- tracker_id: current_user.tracker.id)
-
- raise ActionController::RoutingError.new("Not Found")
- end
-end
diff --git a/app/controllers/tracking/budget_investments_controller.rb b/app/controllers/tracking/budget_investments_controller.rb
deleted file mode 100644
index e5fe27f28..000000000
--- a/app/controllers/tracking/budget_investments_controller.rb
+++ /dev/null
@@ -1,81 +0,0 @@
-class Tracking::BudgetInvestmentsController < Tracking::BaseController
- include FeatureFlags
- include CommentableActions
-
- feature_flag :budgets
-
- before_action :restrict_access_to_assigned_items, only: [:show, :edit]
- before_action :load_budget
- before_action :load_investment, only: [:show, :edit]
-
- has_orders %w[oldest], only: [:show, :edit]
-
- load_and_authorize_resource :investment, class: "Budget::Investment"
-
- def index
- @heading_filters = heading_filters
- @investments = if current_user.tracker? && @budget.present?
- current_user.tracker.investments_by_heading(heading_params, @budget)
- .page(params[:page])
- else
- Budget::Investment.none.page(params[:page])
- end
- end
-
- def show
- end
-
- def edit
- end
-
- private
-
- def resource_model
- Budget::Investment
- end
-
- def resource_name
- resource_model.parameterize(separator: "_")
- end
-
- def load_budget
- @budget = Budget.find(params[:budget_id])
- end
-
- def load_investment
- @investment = @budget.investments.find params[:id]
- end
-
- def heading_filters
- investments = @budget.investments.by_tracker(current_user.tracker&.id).distinct
- investment_headings = Budget::Heading.where(id: investments.pluck(:heading_id))
- .order(name: :asc)
- all_headings_filter = [
- {
- name: t("valuation.budget_investments.index.headings_filter_all"),
- id: nil,
- count: investments.size
- }
- ]
-
- investment_headings.reduce(all_headings_filter) do |filters, heading|
- filters << {
- name: heading.name,
- id: heading.id,
- count: investments.select { |i| i.heading_id == heading.id }.size
- }
- end.uniq
- end
-
- def restrict_access_to_assigned_items
- return if current_user.administrator? ||
- Budget::TrackerAssignment.exists?(investment_id: params[:id],
- tracker_id: current_user.tracker.id)
-
- raise ActionController::RoutingError.new("Not Found")
- end
-
- def heading_params
- params.permit(:heading_id)
- end
-end
diff --git a/app/controllers/tracking/budgets_controller.rb b/app/controllers/tracking/budgets_controller.rb
deleted file mode 100644
index 0e33ecf03..000000000
--- a/app/controllers/tracking/budgets_controller.rb
+++ /dev/null
@@ -1,14 +0,0 @@
-class Tracking::BudgetsController < Tracking::BaseController
- include FeatureFlags
- feature_flag :budgets
-
- load_and_authorize_resource
-
- def index
- @budget = current_budget
- if @budget.present?
- @investments = @budget.investments
- .by_tracker(current_user.tracker)
- end
- end
-end
diff --git a/app/controllers/tracking/legislation/milestones_controller.rb b/app/controllers/tracking/legislation/milestones_controller.rb
deleted file mode 100644
index 458bdb650..000000000
--- a/app/controllers/tracking/legislation/milestones_controller.rb
+++ /dev/null
@@ -1,18 +0,0 @@
-class Tracking::Legislation::MilestonesController < Tracking::MilestonesController
- include FeatureFlags
- feature_flag :legislation
-
- def index
- @process = milestoneable
- end
-
- private
-
- def milestoneable
- ::Legislation::Process.find(params[:process_id])
- end
-
- def milestoneable_path
- admin_legislation_process_milestones_path(milestoneable)
- end
-end
diff --git a/app/helpers/trackers_helper.rb b/app/helpers/trackers_helper.rb
deleted file mode 100644
index d0e1368ed..000000000
--- a/app/helpers/trackers_helper.rb
+++ /dev/null
@@ -1,19 +0,0 @@
-module TrackersHelper
- def tracker_label(tracker)
- truncate([tracker.name, tracker.email, tracker.description].compact.join(" - "), length: 100)
- end
-
- def tracker_back_path(progressable)
- if progressable.class.to_s == "Legislation::Process"
- admin_legislation_process_milestones_path(progressable)
- else
- polymorphic_path([tracker_namespace, *resource_hierarchy_for(progressable)])
- end
- end
-
- private
-
- def tracker_namespace
- current_user.administrator? ? :admin : :tracking
- end
-end
diff --git a/app/helpers/translatable_form_helper.rb b/app/helpers/translatable_form_helper.rb
index aeafcc6ea..fb24e9b27 100644
--- a/app/helpers/translatable_form_helper.rb
+++ b/app/helpers/translatable_form_helper.rb
@@ -10,7 +10,7 @@ module TranslatableFormHelper
end
def backend_translations_enabled?
- (controller.class.parents & [Admin, Management, Valuation, Tracking]).any?
+ (controller.class.parents & [Admin, Management, Valuation]).any?
end
def highlight_translation_html_class
diff --git a/app/helpers/users_helper.rb b/app/helpers/users_helper.rb
index f4ba9d4db..8d2aa8ef6 100644
--- a/app/helpers/users_helper.rb
+++ b/app/helpers/users_helper.rb
@@ -55,13 +55,11 @@ module UsersHelper
current_user&.poll_officer?
end
- def current_tracker?
- current_user&.tracker?
- end
-
def show_admin_menu?(user = nil)
- current_administrator? || current_moderator? || current_valuator? || current_manager? ||
- current_tracker? || (user&.administrator?) || current_poll_officer?
+ unless namespace == "officing"
+ current_administrator? || current_moderator? || current_valuator? || current_manager? ||
+ (user&.administrator?) || current_poll_officer?
+ end
end
def interests_title_text(user)
diff --git a/app/models/abilities/administrator.rb b/app/models/abilities/administrator.rb
index 07238f548..e23962230 100644
--- a/app/models/abilities/administrator.rb
+++ b/app/models/abilities/administrator.rb
@@ -99,7 +99,6 @@ module Abilities
can [:create, :destroy], DirectUpload
can [:deliver], Newsletter, hidden_at: nil
- can [:manage], ::Tracker
can [:manage], Dashboard::AdministratorTask
can [:edit, :update], DownloadSetting
diff --git a/app/models/abilities/tracker.rb b/app/models/abilities/tracker.rb
deleted file mode 100644
index a755d26fb..000000000
--- a/app/models/abilities/tracker.rb
+++ /dev/null
@@ -1,12 +0,0 @@
-module Abilities
- class Tracker
- include CanCan::Ability
-
- def initialize(user)
- can :index, Budget
- can [:index, :show, :edit], Budget::Investment
- can :manage, Milestone
- can :manage, ProgressBar
- end
- end
-end
diff --git a/app/models/ability.rb b/app/models/ability.rb
index 128b000d5..38e8a565f 100644
--- a/app/models/ability.rb
+++ b/app/models/ability.rb
@@ -8,7 +8,6 @@ class Ability
if user # logged-in users
merge Abilities::Valuator.new(user) if user.valuator?
- merge Abilities::Tracker.new(user) if user.tracker?
if user.administrator?
merge Abilities::Administrator.new(user)
diff --git a/app/models/budget.rb b/app/models/budget.rb
index 41a6c0869..57be318ca 100644
--- a/app/models/budget.rb
+++ b/app/models/budget.rb
@@ -32,8 +32,6 @@ class Budget < ApplicationRecord
has_many :headings, through: :groups
has_many :lines, through: :ballots, class_name: "Budget::Ballot::Line"
has_many :phases, class_name: "Budget::Phase"
- has_many :budget_trackers
- has_many :trackers, through: :budget_trackers
has_many :budget_administrators
has_many :administrators, through: :budget_administrators
has_many :budget_valuators
diff --git a/app/models/budget/investment.rb b/app/models/budget/investment.rb
index c0beb4b68..9a6fcedde 100644
--- a/app/models/budget/investment.rb
+++ b/app/models/budget/investment.rb
@@ -51,9 +51,6 @@ class Budget
inverse_of: :commentable,
class_name: "Comment"
- has_many :tracker_assignments, dependent: :destroy
- has_many :trackers, through: :tracker_assignments
-
delegate :name, :email, to: :author, prefix: true
validates_translation :title, presence: true, length: { in: 4..Budget::Investment.title_max_length }
@@ -108,10 +105,6 @@ class Budget
where("budget_valuator_assignments.valuator_id = ?", valuator_id).joins(:valuator_assignments)
end
- def self.by_tracker(tracker_id)
- where("budget_tracker_assignments.tracker_id = ?", tracker_id).joins(:tracker_assignments)
- end
-
def self.by_valuator_group(valuator_group_id)
joins(:valuator_group_assignments).
where("budget_valuator_group_assignments.valuator_group_id = ?", valuator_group_id)
diff --git a/app/models/budget/tracker_assignment.rb b/app/models/budget/tracker_assignment.rb
deleted file mode 100644
index 38f1edbba..000000000
--- a/app/models/budget/tracker_assignment.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-class Budget
- class TrackerAssignment < ApplicationRecord
- belongs_to :tracker, counter_cache: :budget_investment_count
- belongs_to :investment, counter_cache: true
- end
-end
diff --git a/app/models/budget_tracker.rb b/app/models/budget_tracker.rb
deleted file mode 100644
index b7598227e..000000000
--- a/app/models/budget_tracker.rb
+++ /dev/null
@@ -1,4 +0,0 @@
-class BudgetTracker < ApplicationRecord
- belongs_to :budget
- belongs_to :tracker
-end
diff --git a/app/models/tracker.rb b/app/models/tracker.rb
deleted file mode 100644
index 81f3d8021..000000000
--- a/app/models/tracker.rb
+++ /dev/null
@@ -1,30 +0,0 @@
-class Tracker < ApplicationRecord
- belongs_to :user, touch: true
-
- delegate :name, :email, :name_and_email, to: :user
-
- has_many :tracker_assignments, dependent: :destroy, class_name: "Budget::TrackerAssignment"
- has_many :investments, through: :tracker_assignments, class_name: "Budget::Investment"
-
- validates :user_id, presence: true, uniqueness: true
-
- def description_or_email
- description.presence || email
- end
-
- def description_or_name
- description.presence || name
- end
-
- def assigned_investment_ids
- investment_ids
- end
-
- def investments_by_heading(params, budget)
- results = investments.by_budget(budget)
- if params[:heading_id].present?
- results = results.by_heading(params[:heading_id])
- end
- results
- end
-end
diff --git a/app/models/user.rb b/app/models/user.rb
index a2afcf858..d8c53200d 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -14,7 +14,6 @@ class User < ApplicationRecord
has_one :administrator
has_one :moderator
has_one :valuator
- has_one :tracker
has_one :manager
has_one :poll_officer, class_name: "Poll::Officer"
has_one :organization
@@ -198,10 +197,6 @@ class User < ApplicationRecord
valuator.present?
end
- def tracker?
- tracker.present?
- end
-
def manager?
manager.present?
end
diff --git a/app/views/admin/_menu.html.erb b/app/views/admin/_menu.html.erb
index 91245c0cf..0348cc4d9 100644
--- a/app/views/admin/_menu.html.erb
+++ b/app/views/admin/_menu.html.erb
@@ -212,10 +212,6 @@
<%= link_to t("admin.menu.valuators"), admin_valuators_path %>
-
>
- <%= link_to t("admin.menu.trackers"), admin_trackers_path %>
-
-
>
<%= link_to t("admin.menu.managers"), admin_managers_path %>
diff --git a/app/views/admin/budget_investments/edit.html.erb b/app/views/admin/budget_investments/edit.html.erb
index e7d36337f..7aaddf857 100644
--- a/app/views/admin/budget_investments/edit.html.erb
+++ b/app/views/admin/budget_investments/edit.html.erb
@@ -89,16 +89,6 @@
<% end %>
-
-
-
- <%= f.label :tracker_ids, t("admin.budget_investments.edit.assigned_trackers") %>
-
- <%= f.collection_check_boxes :tracker_ids, @trackers, :id, :email do |b| %>
- - <%= b.label(title: tracker_label(b.object)) { b.check_box + truncate(b.object.description_or_email, length: 60) } %>
- <% end %>
-
-
diff --git a/app/views/admin/budget_investments/show.html.erb b/app/views/admin/budget_investments/show.html.erb
index b2584c35a..fe73c2a5f 100644
--- a/app/views/admin/budget_investments/show.html.erb
+++ b/app/views/admin/budget_investments/show.html.erb
@@ -50,15 +50,6 @@
<% end %>
-
- <%= t("admin.budget_investments.show.assigned_trackers") %>:
- <% if @investment.trackers.any? %>
- <%= @investment.trackers.collect(&:name_and_email).join(", ") %>
- <% else %>
- <%= t("admin.budget_investments.show.undefined") %>
- <% end %>
-
-
<%= link_to t("admin.budget_investments.show.edit_classification"),
edit_admin_budget_budget_investment_path(@budget, @investment,
@@ -77,4 +68,4 @@
<%= render "admin/change_logs/change_log", logs: @logs %>
-<%= render "tracking/milestones/milestones", milestoneable: @investment %>
+<%= render "admin/milestones/milestones", milestoneable: @investment %>
diff --git a/app/views/admin/budgets/_form.html.erb b/app/views/admin/budgets/_form.html.erb
index fbd7686b8..f9fc67a62 100644
--- a/app/views/admin/budgets/_form.html.erb
+++ b/app/views/admin/budgets/_form.html.erb
@@ -22,7 +22,7 @@
- <% %w[administrators valuators trackers].each do |staff| %>
+ <% %w[administrators valuators].each do |staff| %>
<%= link_to t("admin.budgets.edit.#{staff}", count: @budget.send(staff).count),
"#",
@@ -35,7 +35,6 @@
<%= render "/admin/budgets/association", assignable_type: "administrators", assignables: @admins, form: f %>
<%= render "/admin/budgets/association", assignable_type: "valuators", assignables: @valuators, form: f %>
- <%= render "/admin/budgets/association", assignable_type: "trackers", assignables: @trackers, form: f %>
<% if @budget.phases.present? %>
diff --git a/app/views/admin/legislation/milestones/index.html.erb b/app/views/admin/legislation/milestones/index.html.erb
index 91136e164..456b6154a 100644
--- a/app/views/admin/legislation/milestones/index.html.erb
+++ b/app/views/admin/legislation/milestones/index.html.erb
@@ -9,4 +9,4 @@
<%= render "admin/legislation/processes/subnav", process: @process, active: "milestones" %>
<%= render "summary_form", process: @process %>
-<%= render "tracking/milestones/milestones", milestoneable: @process %>
+<%= render "admin/milestones/milestones", milestoneable: @process %>
diff --git a/app/views/tracking/milestones/_form.html.erb b/app/views/admin/milestones/_form.html.erb
similarity index 83%
rename from app/views/tracking/milestones/_form.html.erb
rename to app/views/admin/milestones/_form.html.erb
index a98f99d3b..b7cc30270 100644
--- a/app/views/tracking/milestones/_form.html.erb
+++ b/app/views/admin/milestones/_form.html.erb
@@ -1,14 +1,14 @@
<%= render "shared/globalize_locales", resource: @milestone %>
-<%= translatable_form_for [:tracking, *resource_hierarchy_for(@milestone)] do |f| %>
+<%= translatable_form_for [:admin, *resource_hierarchy_for(@milestone)] do |f| %>
<%= f.select :status_id,
@statuses.collect { |s| [s.name, s.id] },
- { include_blank: @statuses.any? ? "" : t("tracking.milestones.form.no_statuses_defined") },
+ { include_blank: @statuses.any? ? "" : t("admin.milestones.form.no_statuses_defined") },
{ disabled: @statuses.blank? } %>
- <%= link_to t("tracking.milestones.form.admin_statuses"),
+ <%= link_to t("admin.milestones.form.admin_statuses"),
admin_milestone_statuses_path %>
diff --git a/app/views/tracking/milestones/_milestones.html.erb b/app/views/admin/milestones/_milestones.html.erb
similarity index 59%
rename from app/views/tracking/milestones/_milestones.html.erb
rename to app/views/admin/milestones/_milestones.html.erb
index 4548011de..bcbf61885 100644
--- a/app/views/tracking/milestones/_milestones.html.erb
+++ b/app/views/admin/milestones/_milestones.html.erb
@@ -1,7 +1,7 @@
-
<%= t("tracking.milestones.index.milestone") %>
+
<%= t("admin.milestones.index.milestone") %>
-<%= link_to t("tracking.progress_bars.manage"),
- polymorphic_path([:tracking, *resource_hierarchy_for(milestoneable.progress_bars.new)]),
+<%= link_to t("admin.progress_bars.manage"),
+ polymorphic_path([:admin, *resource_hierarchy_for(milestoneable.progress_bars.new)]),
class: "button hollow float-right" %>
<% if milestoneable.milestone_tag_list.any? %>
@@ -16,14 +16,14 @@
- | <%= t("tracking.milestones.index.table_id") %> |
- <%= t("tracking.milestones.index.table_title") %> |
- <%= t("tracking.milestones.index.table_description") %> |
- <%= t("tracking.milestones.index.table_publication_date") %> |
- <%= t("tracking.milestones.index.table_status") %> |
- <%= t("tracking.milestones.index.image") %> |
- <%= t("tracking.milestones.index.documents") %> |
- <%= t("tracking.milestones.index.table_actions") %> |
+ <%= t("admin.milestones.index.table_id") %> |
+ <%= t("admin.milestones.index.table_title") %> |
+ <%= t("admin.milestones.index.table_description") %> |
+ <%= t("admin.milestones.index.table_publication_date") %> |
+ <%= t("admin.milestones.index.table_status") %> |
+ <%= t("admin.milestones.index.image") %> |
+ <%= t("admin.milestones.index.documents") %> |
+ <%= t("admin.milestones.index.table_actions") %> |
@@ -32,7 +32,7 @@
<%= milestone.id %> |
<%= link_to milestone.title,
- polymorphic_path([:tracking, *resource_hierarchy_for(milestone)],
+ polymorphic_path([:admin, *resource_hierarchy_for(milestone)],
action: :edit) %>
|
<%= milestone.description %> |
@@ -43,7 +43,7 @@
<%= milestone.status.present? ? milestone.status.name : "" %>
- <%= link_to t("tracking.milestones.index.show_image"),
+ <%= link_to t("admin.milestones.index.show_image"),
milestone.image_url(:large),
target: :_blank if milestone.image.present? %>
|
@@ -58,8 +58,8 @@
<% end %>
- <%= link_to t("tracking.milestones.index.delete"),
- polymorphic_path([:tracking, *resource_hierarchy_for(milestone)]),
+ <%= link_to t("admin.milestones.index.delete"),
+ polymorphic_path([:admin, *resource_hierarchy_for(milestone)]),
method: :delete,
class: "button hollow alert expanded" %>
|
@@ -68,12 +68,12 @@
<% else %>
-
<%= t("tracking.milestones.index.no_milestones") %>
+
<%= t("admin.milestones.index.no_milestones") %>
<% end %>
- <%= link_to t("tracking.milestones.index.new_milestone"),
- polymorphic_path([:tracking, *resource_hierarchy_for(milestoneable.milestones.new)],
+ <%= link_to t("admin.milestones.index.new_milestone"),
+ polymorphic_path([:admin, *resource_hierarchy_for(milestoneable.milestones.new)],
action: :new),
class: "button hollow" %>
diff --git a/app/views/tracking/milestones/edit.html.erb b/app/views/admin/milestones/edit.html.erb
similarity index 65%
rename from app/views/tracking/milestones/edit.html.erb
rename to app/views/admin/milestones/edit.html.erb
index 4ce62f5a8..297ebccb4 100644
--- a/app/views/tracking/milestones/edit.html.erb
+++ b/app/views/admin/milestones/edit.html.erb
@@ -1,6 +1,6 @@
<%= back_link_to milestoneable_path %>
-
<%= t("tracking.milestones.edit.title") %>
+
<%= t("admin.milestones.edit.title") %>
<%= render "form" %>
diff --git a/app/views/tracking/milestones/new.html.erb b/app/views/admin/milestones/new.html.erb
similarity index 72%
rename from app/views/tracking/milestones/new.html.erb
rename to app/views/admin/milestones/new.html.erb
index de664eadb..aa55123c9 100644
--- a/app/views/tracking/milestones/new.html.erb
+++ b/app/views/admin/milestones/new.html.erb
@@ -3,7 +3,7 @@
<%= back_link_to milestoneable_path %>
-
<%= t("tracking.milestones.new.creating") %>
+ <%= t("admin.milestones.new.creating") %>
<%= render "form" %>
diff --git a/app/views/tracking/progress_bars/_form.html.erb b/app/views/admin/progress_bars/_form.html.erb
similarity index 93%
rename from app/views/tracking/progress_bars/_form.html.erb
rename to app/views/admin/progress_bars/_form.html.erb
index 7606b17e8..3598aea12 100644
--- a/app/views/tracking/progress_bars/_form.html.erb
+++ b/app/views/admin/progress_bars/_form.html.erb
@@ -1,6 +1,6 @@
<%= render "shared/globalize_locales", resource: @progress_bar %>
-<%= translatable_form_for [:tracking, *resource_hierarchy_for(@progress_bar)] do |f| %>
+<%= translatable_form_for [:admin, *resource_hierarchy_for(@progress_bar)] do |f| %>
diff --git a/app/views/tracking/progress_bars/_progress_bars.html.erb b/app/views/admin/progress_bars/_progress_bars.html.erb
similarity index 60%
rename from app/views/tracking/progress_bars/_progress_bars.html.erb
rename to app/views/admin/progress_bars/_progress_bars.html.erb
index 0a47e306d..3715c2f35 100644
--- a/app/views/tracking/progress_bars/_progress_bars.html.erb
+++ b/app/views/admin/progress_bars/_progress_bars.html.erb
@@ -1,8 +1,8 @@
-
<%= t("tracking.progress_bars.index.title") %>
+
<%= t("admin.progress_bars.index.title") %>
-<%= link_to t("tracking.progress_bars.index.new_progress_bar"),
+<%= link_to t("admin.progress_bars.index.new_progress_bar"),
polymorphic_path(
- [:tracking, *resource_hierarchy_for(ProgressBar.new(progressable: progressable))],
+ [:admin, *resource_hierarchy_for(ProgressBar.new(progressable: progressable))],
action: :new
),
class: "button float-right" %>
@@ -11,10 +11,10 @@
- | <%= t("tracking.progress_bars.index.table_id") %> |
- <%= t("tracking.progress_bars.index.table_kind") %> |
- <%= t("tracking.progress_bars.index.table_title") %> |
- <%= t("tracking.progress_bars.index.table_percentage") %> |
+ <%= t("admin.progress_bars.index.table_id") %> |
+ <%= t("admin.progress_bars.index.table_kind") %> |
+ <%= t("admin.progress_bars.index.table_title") %> |
+ <%= t("admin.progress_bars.index.table_percentage") %> |
<%= t("admin.actions.actions") %> |
@@ -29,7 +29,7 @@
<% if progress_bar.title.present? %>
<%= progress_bar.title %>
<% else %>
- <%= t("tracking.progress_bars.index.primary") %>
+ <%= t("admin.progress_bars.index.primary") %>
<% end %>
@@ -37,12 +37,12 @@
|
<%= link_to t("admin.actions.edit"),
- polymorphic_path([:tracking, *resource_hierarchy_for(progress_bar)],
+ polymorphic_path([:admin, *resource_hierarchy_for(progress_bar)],
action: :edit),
class: "button hollow" %>
<%= link_to t("admin.actions.delete"),
- polymorphic_path([:tracking, *resource_hierarchy_for(progress_bar)]),
+ polymorphic_path([:admin, *resource_hierarchy_for(progress_bar)]),
method: :delete,
class: "button hollow alert" %>
|
@@ -52,6 +52,6 @@
<% else %>
- <%= t("tracking.progress_bars.index.no_progress_bars") %>
+ <%= t("admin.progress_bars.index.no_progress_bars") %>
<% end %>
diff --git a/app/views/admin/progress_bars/edit.html.erb b/app/views/admin/progress_bars/edit.html.erb
new file mode 100644
index 000000000..21dd27d9a
--- /dev/null
+++ b/app/views/admin/progress_bars/edit.html.erb
@@ -0,0 +1,15 @@
+<% if @progress_bar.primary? %>
+ <% bar_title = t("admin.progress_bars.edit.title.primary") %>
+<% else %>
+ <% bar_title = t("admin.progress_bars.edit.title.secondary", title: @progress_bar.title) %>
+<% end %>
+
+<% provide :title do %>
+ <%= "#{t("admin.header.title")} - #{bar_title}" %>
+<% end %>
+
+<%= back_link_to progress_bars_index %>
+
+
<%= bar_title %>
+
+<%= render "form" %>
diff --git a/app/views/admin/progress_bars/index.html.erb b/app/views/admin/progress_bars/index.html.erb
new file mode 100644
index 000000000..bcac8d7a4
--- /dev/null
+++ b/app/views/admin/progress_bars/index.html.erb
@@ -0,0 +1,9 @@
+<% provide :title do %>
+ <%= "#{t("admin.header.title")} - #{t("admin.progress_bars.index.title")}" %>
+<% end %>
+
+<%= back_link_to polymorphic_path([:admin, *resource_hierarchy_for(@progressable)]) %>
+
+
+
+<%= render "admin/progress_bars/progress_bars", progressable: @progressable %>
diff --git a/app/views/admin/progress_bars/new.html.erb b/app/views/admin/progress_bars/new.html.erb
new file mode 100644
index 000000000..8c379ac3a
--- /dev/null
+++ b/app/views/admin/progress_bars/new.html.erb
@@ -0,0 +1,9 @@
+<% provide :title do %>
+ <%= "#{t("admin.header.title")} - #{t("admin.progress_bars.new.creating")}" %>
+<% end %>
+
+<%= back_link_to progress_bars_index %>
+
+
<%= t("admin.progress_bars.new.creating") %>
+
+<%= render "form" %>
diff --git a/app/views/admin/proposals/show.html.erb b/app/views/admin/proposals/show.html.erb
index ce81e2136..afb2379e3 100644
--- a/app/views/admin/proposals/show.html.erb
+++ b/app/views/admin/proposals/show.html.erb
@@ -32,4 +32,4 @@
-<%= render "tracking/milestones/milestones", milestoneable: @proposal %>
+<%= render "admin/milestones/milestones", milestoneable: @proposal %>
diff --git a/app/views/admin/trackers/edit.html.erb b/app/views/admin/trackers/edit.html.erb
deleted file mode 100644
index ec098a9a9..000000000
--- a/app/views/admin/trackers/edit.html.erb
+++ /dev/null
@@ -1,15 +0,0 @@
-<%= back_link_to admin_trackers_path %>
-
-
<%= t("admin.trackers.form.edit_title") %>
-
-
- <%= @tracker.name %>
- <%= @tracker.email %>
-
-
-
- <%= form_for [:admin, @tracker] do |f| %>
- <%= f.text_field :description %>
- <%= f.submit t("admin.trackers.form.update"), class: "button success" %>
- <% end %>
-
diff --git a/app/views/admin/trackers/index.html.erb b/app/views/admin/trackers/index.html.erb
deleted file mode 100644
index baf7a5311..000000000
--- a/app/views/admin/trackers/index.html.erb
+++ /dev/null
@@ -1,48 +0,0 @@
-
<%= t("admin.trackers.index.title") %>
-
-<%= render "admin/shared/user_search", url: search_admin_trackers_path %>
-
-
- <% if @trackers.any? %>
-
<%= page_entries_info @trackers %>
-
-
-
- | <%= t("admin.trackers.index.name") %> |
- <%= t("admin.trackers.index.email") %> |
- <%= t("admin.valuators.index.description") %> |
- <%= t("admin.actions.actions") %> |
-
-
- <% @trackers.each do |tracker| %>
-
- | <%= link_to tracker.name, admin_tracker_path(tracker) %> |
- <%= tracker.email %> |
-
- <% if tracker.description.present? %>
- <%= tracker.description %>
- <% else %>
- <%= t("admin.trackers.index.no_description") %>
- <% end %>
- |
-
- <%= link_to t("admin.actions.edit"),
- edit_admin_tracker_path(tracker),
- class: "button hollow" %>
- <%= link_to t("admin.valuators.valuator.delete"),
- admin_tracker_path(tracker),
- method: :delete,
- class: "button hollow alert" %>
- |
-
- <% end %>
-
-
-
- <%= paginate @trackers %>
- <% else %>
-
- <%= t("admin.trackers.index.no_trackers") %>
-
- <% end %>
-
diff --git a/app/views/admin/trackers/search.html.erb b/app/views/admin/trackers/search.html.erb
deleted file mode 100644
index 3dc703d50..000000000
--- a/app/views/admin/trackers/search.html.erb
+++ /dev/null
@@ -1,58 +0,0 @@
-
<%= t("admin.trackers.search.title") %>
-
-<%= render "admin/shared/user_search", url: search_admin_trackers_path %>
-
-
- <% if @users.any? %>
-
<%= page_entries_info @users %>
-
-
-
- | <%= t("admin.trackers.index.name") %> |
- <%= t("admin.trackers.index.email") %> |
- <%= t("admin.trackers.index.description") %> |
- <%= t("admin.shared.actions") %> |
-
-
- <% @users.each do |user| %>
-
- | <%= user.name %> |
- <%= user.email %> |
-
- <% if user.tracker %>
- <% if user.tracker.description.present? %>
- <%= user.tracker.description %>
- <% else %>
- <%= t("admin.trackers.index.no_description") %>
- <% end %>
- <% else %>
- <%= t("admin.trackers.index.no_description") %>
- <% end %>
- |
- <% if user.tracker? %>
- <%= link_to t("admin.actions.edit"),
- edit_admin_tracker_path(user.tracker),
- class: "button hollow" %>
-
- <%= link_to t("admin.valuators.valuator.delete"),
- admin_tracker_path(user.tracker),
- method: :delete,
- class: "button hollow alert" %>
- <% else %>
- <%= form_for Tracker.new(user: user), url: admin_trackers_path do |f| %>
- <%= f.hidden_field :user_id %>
- <%= f.submit t("admin.trackers.tracker.add"),
- class: "button success expanded" %>
- <% end %>
- <% end %>
- |
-
- <% end %>
-
-
- <% else %>
-
- <%= t("admin.shared.no_search_results") %>
-
- <% end %>
-
diff --git a/app/views/admin/trackers/show.html.erb b/app/views/admin/trackers/show.html.erb
deleted file mode 100644
index 9d3deaeef..000000000
--- a/app/views/admin/trackers/show.html.erb
+++ /dev/null
@@ -1,22 +0,0 @@
-<%= back_link_to admin_trackers_path %>
-
-<%= link_to t("admin.actions.edit"), edit_admin_tracker_path(@tracker), class: "button hollow float-right" %>
-
-
-
-
<%= @tracker.name %>
-
-
-
- <%= t("admin.trackers.show.email") %>
- <%= @tracker.email %>
-
-
- <%= t("admin.trackers.show.description") %>
- <% if @tracker.description.present? %>
- <%= @tracker.description %>
- <% else %>
- <%= t("admin.trackers.show.no_description") %>
- <% end %>
-
-
diff --git a/app/views/shared/_admin_login_items.html.erb b/app/views/shared/_admin_login_items.html.erb
index 11bc01444..2d5aba1b2 100644
--- a/app/views/shared/_admin_login_items.html.erb
+++ b/app/views/shared/_admin_login_items.html.erb
@@ -21,13 +21,6 @@
<% end %>
- <% if (feature?(:budgets)) &&
- (current_user.administrator? || current_user.tracker?) %>
-
- <%= link_to t("layouts.header.tracking"), tracking_root_path %>
-
- <% end %>
-
<% if current_user.administrator? || current_user.manager? %>
<%= link_to t("layouts.header.management"), management_sign_in_path %>
diff --git a/app/views/tracking/_menu.html.erb b/app/views/tracking/_menu.html.erb
deleted file mode 100644
index ed934071e..000000000
--- a/app/views/tracking/_menu.html.erb
+++ /dev/null
@@ -1,17 +0,0 @@
-
diff --git a/app/views/tracking/budget_investments/edit.html.erb b/app/views/tracking/budget_investments/edit.html.erb
deleted file mode 100644
index 09a4d30fa..000000000
--- a/app/views/tracking/budget_investments/edit.html.erb
+++ /dev/null
@@ -1,12 +0,0 @@
-<%= link_to tracking_budget_budget_investment_path(@budget, @investment), class: "back" do %>
-
- <%= "#{t("tracking.budget_investments.show.title")} #{@investment.id}" %>
-<% end %>
-
-
-
-<%= @investment.title %>
-
-<%= auto_link_already_sanitized_html wysiwyg(@investment.description) %>
-
-<%= render "tracking/milestones/milestones", milestoneable: @investment %>
diff --git a/app/views/tracking/budget_investments/index.html.erb b/app/views/tracking/budget_investments/index.html.erb
deleted file mode 100644
index 8a777225e..000000000
--- a/app/views/tracking/budget_investments/index.html.erb
+++ /dev/null
@@ -1,58 +0,0 @@
-
- <%= @budget.name %> - <%= t("tracking.budget_investments.index.title") %>
- <%= t("tracking.budget_investments.index.assigned_to", tracker: current_user.name) %>
-
-
-
- <% @heading_filters.each_slice(8) do |slice| %>
-
- <% slice.each do |filter| %>
- <%= link_to tracking_budget_budget_investments_path(budget_id: @budget.id, heading_id: filter[:id]),
- class: "#{"is-active" if params[:heading_id].to_s == filter[:id].to_s}" do %>
- <%= filter[:name] %> (<%= filter[:count] %>)
- <% end %>
- <% end %>
-
- <% end %>
-
-
-<% if @investments.any? %>
- <%= page_entries_info @investments %>
-
-
-
-
- | <%= t("tracking.budget_investments.index.table_id") %> |
- <%= t("tracking.budget_investments.index.table_title") %> |
- <%= t("tracking.budget_investments.index.table_heading_name") %> |
- <%= t("tracking.budget_investments.index.table_actions") %> |
-
-
-
- <% @investments.each do |investment| %>
-
- |
- <%= investment.id %>
- |
-
- <%= link_to investment.title, tracking_budget_budget_investment_path(@budget, investment) %>
- |
-
- <%= investment.heading.name %>
- |
-
- <%= link_to t("tracking.budget_investments.index.edit"),
- edit_tracking_budget_budget_investment_path(@budget, investment),
- class: "button hollow expanded" %>
- |
-
- <% end %>
-
-
-
- <%= paginate @investments %>
-<% else %>
-
- <%= t("tracking.budget_investments.index.no_investments") %>
-
-<% end %>
diff --git a/app/views/tracking/budget_investments/show.html.erb b/app/views/tracking/budget_investments/show.html.erb
deleted file mode 100644
index 1bf3b740e..000000000
--- a/app/views/tracking/budget_investments/show.html.erb
+++ /dev/null
@@ -1,47 +0,0 @@
-<%= back_link_to tracking_budget_budget_investments_path %>
-
-<%= t("tracking.budget_investments.show.title") %> <%= @investment.id %>
-<%= @investment.title %>
-
-<%= auto_link_already_sanitized_html wysiwyg(@investment.description) %>
-
-<% if @investment.external_url.present? %>
- <%= sanitize_and_auto_link @investment.external_url %>
-<% end %>
-
-<%= t("tracking.budget_investments.show.info") %>
-
-<%= t("tracking.budget_investments.show.by") %>:
- <%= @investment.author.name %>
-
-
-<%= t("tracking.budget_investments.show.heading") %>:
- <%= @investment.heading.name %>
-
-
-<%= t("tracking.budget_investments.show.sent") %>:
- <%= l @investment.created_at, format: :datetime %>
-
-
-<%= t("tracking.budget_investments.show.responsibles") %>
-
-<%= t("tracking.budget_investments.show.assigned_admin") %>:
- <% if @investment.administrator.present? %>
- <%= @investment.administrator.name_and_email %>
- <% else %>
- <%= t("tracking.budget_investments.show.undefined") %>
- <% end %>
-
-
-<%= t("trackers.budget_investments.show.assigned_trackers") %>:
-
-
- <% @investment.trackers.each do |tracker| %>
- - <%= tracker.name_and_email %>
- <% end %>
-
- <% if @investment.trackers.empty? %>
- - <%= t("tracking.budget_investments.show.undefined") %>
- <% end %>
-
-
diff --git a/app/views/tracking/budgets/index.html.erb b/app/views/tracking/budgets/index.html.erb
deleted file mode 100644
index a8968d029..000000000
--- a/app/views/tracking/budgets/index.html.erb
+++ /dev/null
@@ -1,36 +0,0 @@
-<%= t("tracking.budgets.index.title") %>
-
-<% if @budget.present? %>
-
-
-
- | <%= t("tracking.budgets.index.table_name") %> |
- <%= t("tracking.budgets.index.table_phase") %> |
- <%= t("tracking.budgets.index.table_assigned_investments_tracking_open") %> |
- <%= t("tracking.budgets.index.table_actions") %> |
-
-
-
-
- |
- <%= @budget.name %>
- |
-
- <%= t("budgets.phase.#{@budget.phase}") %>
- |
-
- <%= @investments.count %>
- |
-
- <%= link_to t("tracking.budgets.index.tracking"),
- tracking_budget_budget_investments_path(budget_id: @budget.id),
- class: "button hollow expanded" %>
- |
-
-
-
-<% else %>
-
- <%= t("tracking.budgets.index.no_budgets") %>
-
-<% end %>
diff --git a/app/views/tracking/progress_bars/edit.html.erb b/app/views/tracking/progress_bars/edit.html.erb
deleted file mode 100644
index 1f0e30eeb..000000000
--- a/app/views/tracking/progress_bars/edit.html.erb
+++ /dev/null
@@ -1,15 +0,0 @@
-<% if @progress_bar.primary? %>
- <% bar_title = t("tracking.progress_bars.edit.title.primary") %>
-<% else %>
- <% bar_title = t("tracking.progress_bars.edit.title.secondary", title: @progress_bar.title) %>
-<% end %>
-
-<% provide :title do %>
- <%= "#{t("tracking.header.title")} - #{bar_title}" %>
-<% end %>
-
-<%= back_link_to progress_bars_index %>
-
-<%= bar_title %>
-
-<%= render "form" %>
diff --git a/app/views/tracking/progress_bars/index.html.erb b/app/views/tracking/progress_bars/index.html.erb
deleted file mode 100644
index 356350812..000000000
--- a/app/views/tracking/progress_bars/index.html.erb
+++ /dev/null
@@ -1,9 +0,0 @@
-<% provide :title do %>
- <%= "#{t("admin.header.title")} - #{t("tracking.progress_bars.index.title")}" %>
-<% end %>
-
-<%= back_link_to tracker_back_path(@progressable) %>
-
-
-
-<%= render "tracking/progress_bars/progress_bars", progressable: @progressable %>
diff --git a/app/views/tracking/progress_bars/new.html.erb b/app/views/tracking/progress_bars/new.html.erb
deleted file mode 100644
index f889a8a81..000000000
--- a/app/views/tracking/progress_bars/new.html.erb
+++ /dev/null
@@ -1,9 +0,0 @@
-<% provide :title do %>
- <%= "#{t("admin.header.title")} - #{t("tracking.progress_bars.new.creating")}" %>
-<% end %>
-
-<%= back_link_to progress_bars_index %>
-
-<%= t("tracking.progress_bars.new.creating") %>
-
-<%= render "form" %>
diff --git a/config/i18n-tasks.yml b/config/i18n-tasks.yml
index 99bfe965a..ad5d47f85 100644
--- a/config/i18n-tasks.yml
+++ b/config/i18n-tasks.yml
@@ -47,7 +47,6 @@ data:
- config/locales/%{locale}/milestones.yml
- config/locales/%{locale}/stats.yml
- config/locales/%{locale}/download.yml
- - config/locales/%{locale}/tracking.yml
# Locale files to write new keys to, based on a list of key pattern => file rules. Matched from top to bottom:
# `i18n-tasks normalize -p` will force move the keys according to these rules
@@ -141,7 +140,7 @@ ignore_unused:
- "admin.hidden_proposals.index.filter*"
- "admin.proposal_notifications.index.filter*"
- "admin.budgets.index.filter*"
- - "admin.budgets.edit.(administrators|trackers|valuators).*"
+ - "admin.budgets.edit.(administrators|valuators).*"
- "admin.budget_investments.index.filter*"
- "admin.organizations.index.filter*"
- "admin.hidden_users.index.filter*"
diff --git a/config/locales/en/admin.yml b/config/locales/en/admin.yml
index 19ebc001e..e315b5142 100644
--- a/config/locales/en/admin.yml
+++ b/config/locales/en/admin.yml
@@ -102,13 +102,8 @@ en:
zero: "Select valuators"
one: "1 valuator selected"
other: "%{count} valuators selected"
- trackers:
- zero: "Select trackers"
- one: "1 tracker selected"
- other: "%{count} trackers selected"
empty_administrators: "There are no administrators"
empty_valuators: "There are no valuators"
- empty_trackers: "There are no trackers"
destroy:
success_notice: Budget deleted successfully
unable_notice: You cannot delete a budget that has associated investments
@@ -254,7 +249,6 @@ en:
"false": "No"
valuator_groups: "Valuator Groups"
preview: Investment preview
- assigned_trackers: "Assigned trackers"
edit:
classification: Classification
compatibility: Compatibility
@@ -265,11 +259,36 @@ en:
user_tags: User assigned tags
tags_placeholder: "Write the tags you want separated by commas (,)"
undefined: Undefined
- assigned_trackers: "Trackers"
search_unfeasible: Search unfeasible
milestones:
index:
+ table_id: "ID"
+ table_title: "Title"
+ table_description: "Description"
+ table_publication_date: "Publication date"
+ table_status: Status
+ table_actions: "Actions"
+ delete: "Delete milestone"
+ no_milestones: "Don't have defined milestones"
+ image: "Image"
+ show_image: "Show image"
+ documents: "Documents"
+ milestone: Milestone
+ new_milestone: Create new milestone
milestone_tags: Milestone Tags
+ form:
+ admin_statuses: Manage statuses
+ no_statuses_defined: There are no defined statuses yet
+ new:
+ creating: Create milestone
+ edit:
+ title: Edit milestone
+ create:
+ notice: New milestone created successfully!
+ update:
+ notice: Milestone updated successfully
+ delete:
+ notice: Milestone successfully deleted
statuses:
index:
title: Milestone statuses
@@ -291,8 +310,28 @@ en:
delete:
notice: Milestone status deleted successfully
progress_bars:
+ manage: "Manage progress bars"
index:
title: "Progress bars"
+ no_progress_bars: "There are no progress bars"
+ new_progress_bar: "Create new progress bar"
+ primary: "Primary progress bar"
+ table_id: "ID"
+ table_kind: "Type"
+ table_title: "Title"
+ table_percentage: "Current progress"
+ new:
+ creating: "Create progress bar"
+ edit:
+ title:
+ primary: "Edit primary progress bar"
+ secondary: "Edit progress bar %{title}"
+ create:
+ notice: "Progress bar created successfully!"
+ update:
+ notice: "Progress bar updated successfully"
+ delete:
+ notice: "Progress bar deleted successfully"
comments:
index:
id: "ID"
@@ -656,7 +695,6 @@ en:
title_booths: Voting booths
legislation: Collaborative Legislation
users: Users
- trackers: "Trackers"
dashboard: Proposals dashboard
administrator_tasks: Resources requested
dashboard_actions: Resources and actions
@@ -1555,26 +1593,6 @@ en:
edited_by: "Edited by"
actions: "Actions"
empty: "There are not changes logged"
- trackers:
- index:
- title: Trackers
- name: Name
- email: Email
- description: Description
- no_description: No description
- no_trackers: There are no trackers.
- tracker:
- add: "Add to trackers"
- form:
- update: Update Tracker
- updated: "Tracker updated succesfully."
- edit_title: "Trackers: Edit tracker"
- show:
- email: Email
- description: Description
- no_description: No description.
- search:
- title: Trackers
local_census_records:
index:
title: Manage local census
diff --git a/config/locales/en/general.yml b/config/locales/en/general.yml
index 43337febb..8cf293097 100644
--- a/config/locales/en/general.yml
+++ b/config/locales/en/general.yml
@@ -255,7 +255,6 @@ en:
other: You have %{count} new notifications
notifications: Notifications
no_notifications: "You don't have new notifications"
- tracking: "Tracking"
admin:
watch_form_message: "You have unsaved changes. Do you confirm to leave the page?"
notifications:
diff --git a/config/locales/en/tracking.yml b/config/locales/en/tracking.yml
deleted file mode 100644
index f78bac5c9..000000000
--- a/config/locales/en/tracking.yml
+++ /dev/null
@@ -1,90 +0,0 @@
-en:
- tracking:
- header:
- title: Tracking
- menu:
- title: Tracking
- budgets: Participatory budgets
- budgets:
- index:
- title: Participatory budgets
- table_name: Name
- table_phase: Phase
- table_assigned_investments_tracking_open: Investment projects assigned with tracking open
- table_actions: Actions
- tracking: Tracking
- no_budgets: "There are no budgets"
- budget_investments:
- index:
- assigned_to: "Assigned to %{tracker}"
- title: Investment projects
- edit: Edit milestones
- table_id: ID
- table_title: Title
- table_heading_name: Heading name
- table_actions: Actions
- no_investments: "There are no investment projects."
- show:
- title: Investment project
- info: Author info
- by: Sent by
- sent: Sent at
- heading: Heading
- undefined: "Undefined"
- responsibles: Responsibles
- assigned_admin: Assigned admin
- milestones:
- index:
- table_id: "ID"
- table_title: "Title"
- table_description: "Description"
- table_publication_date: "Publication date"
- table_status: Status
- table_actions: "Actions"
- delete: "Delete milestone"
- no_milestones: "Don't have defined milestones"
- image: "Image"
- show_image: "Show image"
- documents: "Documents"
- milestone: Milestone
- new_milestone: Create new milestone
- form:
- admin_statuses: Manage statuses
- no_statuses_defined: There are no defined statuses yet
- new:
- creating: Create milestone
- edit:
- title: Edit milestone
- create:
- notice: New milestone created successfully!
- update:
- notice: Milestone updated successfully
- delete:
- notice: Milestone successfully deleted
- progress_bars:
- manage: "Manage progress bars"
- index:
- title: "Progress bars"
- no_progress_bars: "There are no progress bars"
- new_progress_bar: "Create new progress bar"
- primary: "Primary progress bar"
- table_id: "ID"
- table_kind: "Type"
- table_title: "Title"
- table_percentage: "Current progress"
- new:
- creating: "Create progress bar"
- edit:
- title:
- primary: "Edit primary progress bar"
- secondary: "Edit progress bar %{title}"
- create:
- notice: "Progress bar created successfully!"
- update:
- notice: "Progress bar updated successfully"
- delete:
- notice: "Progress bar deleted successfully"
- trackers:
- budget_investments:
- show:
- assigned_trackers: "Assigned trackers"
diff --git a/config/locales/es/admin.yml b/config/locales/es/admin.yml
index 76fcf12fb..e7f998dd5 100644
--- a/config/locales/es/admin.yml
+++ b/config/locales/es/admin.yml
@@ -102,13 +102,8 @@ es:
zero: "Seleccionar evaluadores"
one: "1 evaluador seleccionado"
other: "%{count} evaluadores seleccionados"
- trackers:
- zero: "Seleccionar gestores de seguimiento"
- one: "1 gestor de seguimiento seleccionado"
- other: "%{count} gestores de seguimiento seleccionados"
empty_administrators: "No hay administradores"
empty_valuators: "No hay evaluadores"
- empty_trackers: "No hay gestores de seguimiento"
destroy:
success_notice: Presupuesto eliminado correctamente
unable_notice: No se puede eliminar un presupuesto con proyectos asociados
@@ -254,7 +249,6 @@ es:
"false": "No"
valuator_groups: "Grupos de evaluadores"
preview: Vista previa
- assigned_trackers: "Gestores de seguimiento asignados"
edit:
classification: Clasificación
compatibility: Compatibilidad
@@ -265,11 +259,36 @@ es:
user_tags: Etiquetas asignadas por el usuario
tags_placeholder: "Escribe las etiquetas que desees separadas por comas (,)"
undefined: Sin definir
- assigned_trackers: "Gestores de seguimiento"
search_unfeasible: Buscar inviables
milestones:
index:
+ table_id: "ID"
+ table_title: "Título"
+ table_description: "Descripción"
+ table_publication_date: "Fecha de publicación"
+ table_status: Estado
+ table_actions: "Acciones"
+ delete: "Eliminar hito"
+ no_milestones: "No hay hitos definidos"
+ image: "Imagen"
+ show_image: "Mostrar imagen"
+ documents: "Documentos"
+ milestone: Seguimiento
+ new_milestone: Crear nuevo hito
milestone_tags: Etiquetas de Seguimiento
+ form:
+ admin_statuses: Gestionar estados
+ no_statuses_defined: No hay estados definidos
+ new:
+ creating: Crear hito
+ edit:
+ title: Editar hito
+ create:
+ notice: "¡Nuevo hito creado con éxito!"
+ update:
+ notice: Hito actualizado
+ delete:
+ notice: Hito borrado correctamente
statuses:
index:
title: Estados de seguimiento
@@ -291,8 +310,28 @@ es:
delete:
notice: Estado de seguimiento eliminado correctamente
progress_bars:
+ manage: "Gestionar barras de progreso"
index:
title: "Barras de progreso"
+ no_progress_bars: "No hay barras de progreso"
+ new_progress_bar: "Crear nueva barra de progreso"
+ primary: "Barra de progreso principal"
+ table_id: "ID"
+ table_kind: "Tipo"
+ table_title: "Título"
+ table_percentage: "Progreso"
+ new:
+ creating: "Crear barra de progreso"
+ edit:
+ title:
+ primary: "Editar barra de progreso principal"
+ secondary: "Editar barra de progreso %{title}"
+ create:
+ notice: "¡Barra de progreso creada con éxito!"
+ update:
+ notice: "Barra de progreso actualizada"
+ delete:
+ notice: "Barra de progreso eliminada correctamente"
comments:
index:
id: "ID"
@@ -655,7 +694,6 @@ es:
title_booths: Urnas de votación
legislation: Legislación colaborativa
users: Usuarios
- trackers: "Gestores de seguimiento"
dashboard: Panel de progreso de propuestas
administrator_tasks: Recursos solicitados
dashboard_actions: Recursos y acciones
@@ -1554,26 +1592,6 @@ es:
edited_by: "Editado por"
actions: "Acciones"
empty: "No hay cambios registrados"
- trackers:
- index:
- title: Gestores de seguimiento
- name: Nombre
- email: Email
- description: Descripción
- no_description: Sin descripción
- no_trackers: No hay gestores de seguimiento.
- tracker:
- add: "Añadir a gestores de seguimiento"
- form:
- update: "Actualizar gestor"
- updated: "Gestor de seguimiento actualizado correctamente."
- edit_title: "Gestores de seguimiento: Editar gestor"
- show:
- email: Email
- description: Descripción
- no_description: Sin descripción.
- search:
- title: Trackers
local_census_records:
index:
title: Gestionar censo local
diff --git a/config/locales/es/general.yml b/config/locales/es/general.yml
index b4aa427d9..34a58a50d 100644
--- a/config/locales/es/general.yml
+++ b/config/locales/es/general.yml
@@ -255,7 +255,6 @@ es:
other: Tienes %{count} notificaciones nuevas
notifications: Notificaciones
no_notifications: "No tienes notificaciones nuevas"
- tracking: "Seguimiento"
admin:
watch_form_message: "Has realizado cambios que no han sido guardados. ¿Seguro que quieres abandonar la página?"
notifications:
diff --git a/config/locales/es/tracking.yml b/config/locales/es/tracking.yml
deleted file mode 100644
index f0855327d..000000000
--- a/config/locales/es/tracking.yml
+++ /dev/null
@@ -1,90 +0,0 @@
-es:
- tracking:
- header:
- title: Seguimiento
- menu:
- title: Seguimiento
- budgets: Presupuestos participativos
- budgets:
- index:
- title: Presupuestos participativos
- table_name: Nombre
- table_phase: Fase
- table_assigned_investments_tracking_open: Prop. Inv. asignadas en segumiento
- table_actions: Acciones
- tracking: Seguimiento
- no_budgets: "No hay presupuestos"
- budget_investments:
- index:
- assigned_to: "Asignadas a %{tracker}"
- title: Proyectos de gasto
- edit: Editar seguimiento
- table_id: ID
- table_title: Título
- table_heading_name: Nombre de la partida
- table_actions: Acciones
- no_investments: "No hay proyectos de gasto."
- show:
- title: Proyecto de gasto
- info: Datos de envío
- by: Enviada por
- sent: Fecha de creación
- heading: Partida
- undefined: Sin definir
- responsibles: Responsables
- assigned_admin: Administrador asignado
- milestones:
- index:
- table_id: "ID"
- table_title: "Título"
- table_description: "Descripción"
- table_publication_date: "Fecha de publicación"
- table_status: Estado
- table_actions: "Acciones"
- delete: "Eliminar hito"
- no_milestones: "No hay hitos definidos"
- image: "Imagen"
- show_image: "Mostrar imagen"
- documents: "Documentos"
- milestone: Seguimiento
- new_milestone: Crear nuevo hito
- form:
- admin_statuses: Gestionar estados
- no_statuses_defined: No hay estados definidos
- new:
- creating: Crear hito
- edit:
- title: Editar hito
- create:
- notice: "¡Nuevo hito creado con éxito!"
- update:
- notice: Hito actualizado
- delete:
- notice: Hito borrado correctamente
- progress_bars:
- manage: "Gestionar barras de progreso"
- index:
- title: "Barras de progreso"
- no_progress_bars: "No hay barras de progreso"
- new_progress_bar: "Crear nueva barra de progreso"
- primary: "Barra de progreso principal"
- table_id: "ID"
- table_kind: "Tipo"
- table_title: "Título"
- table_percentage: "Progreso"
- new:
- creating: "Crear barra de progreso"
- edit:
- title:
- primary: "Editar barra de progreso principal"
- secondary: "Editar barra de progreso %{title}"
- create:
- notice: "¡Barra de progreso creada con éxito!"
- update:
- notice: "Barra de progreso actualizada"
- delete:
- notice: "Barra de progreso eliminada correctamente"
- trackers:
- budget_investments:
- show:
- assigned_trackers: "Gestores de seguimiento asignados"
diff --git a/config/routes.rb b/config/routes.rb
index c538a12f1..c650e1401 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -24,7 +24,6 @@ Rails.application.routes.draw do
draw :tag
draw :user
draw :valuation
- draw :tracking
draw :verification
root "welcome#index"
diff --git a/config/routes/admin.rb b/config/routes/admin.rb
index 972f15842..eb8af3fbf 100644
--- a/config/routes/admin.rb
+++ b/config/routes/admin.rb
@@ -62,6 +62,9 @@ namespace :admin do
resources :budget_investments, only: [:index, :show, :edit, :update] do
member { patch :toggle_selection }
+
+ resources :milestones, controller: "budget_investment_milestones"
+ resources :progress_bars, except: :show, controller: "budget_investment_progress_bars"
end
resources :budget_phases, only: [:edit, :update]
@@ -103,11 +106,6 @@ namespace :admin do
get :summary, on: :collection
end
- resources :trackers, only: [:show, :index, :edit, :update, :create, :destroy] do
- get :search, on: :collection
- get :summary, on: :collection
- end
-
resources :valuator_groups
resources :managers, only: [:index, :create, :destroy] do
@@ -210,7 +208,8 @@ namespace :admin do
member { patch :toggle_selection }
end
resources :draft_versions
- resources :milestones, only: :index
+ resources :milestones
+ resources :progress_bars, except: :show
resource :homepage, only: [:edit, :update]
end
end
diff --git a/config/routes/tracking.rb b/config/routes/tracking.rb
deleted file mode 100644
index 1912b856b..000000000
--- a/config/routes/tracking.rb
+++ /dev/null
@@ -1,23 +0,0 @@
-namespace :tracking do
- root to: "budgets#index"
-
- resources :budgets, only: :index do
- resources :budget_investments, only: [:index, :show, :edit] do
- resources :milestones, controller: "budget_investment_milestones"
- resources :progress_bars, except: :show, controller: "budget_investment_progress_bars"
- patch :track, on: :member
- end
- end
-
- resources :proposals, only: [:index, :show] do
- resources :milestones, controller: "proposal_milestones"
- resources :progress_bars, except: :show, controller: "proposal_progress_bars"
- end
-
- namespace :legislation do
- resources :processes, only: [:index, :show] do
- resources :milestones
- resources :progress_bars, except: :show
- end
- end
-end
diff --git a/db/migrate/20191101183155_remove_trackers.rb b/db/migrate/20191101183155_remove_trackers.rb
new file mode 100644
index 000000000..ecb1fc98f
--- /dev/null
+++ b/db/migrate/20191101183155_remove_trackers.rb
@@ -0,0 +1,12 @@
+class RemoveTrackers < ActiveRecord::Migration[5.0]
+ def up
+ remove_column :budget_investments, :tracker_assignments_count, :integer
+ drop_table :budget_tracker_assignments
+ drop_table :budget_trackers
+ drop_table :trackers
+ end
+
+ def down
+ fail ActiveRecord::IrreversibleMigration
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 79d28c3fc..c6f941612 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
-ActiveRecord::Schema.define(version: 20191031210734) do
+ActiveRecord::Schema.define(version: 20191101183155) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
@@ -297,7 +297,6 @@ ActiveRecord::Schema.define(version: 20191031210734) do
t.datetime "confirmed_hide_at"
t.datetime "ignored_flag_at"
t.integer "flags_count", default: 0
- t.integer "tracker_assignments_count"
t.integer "original_heading_id"
t.index ["administrator_id"], name: "index_budget_investments_on_administrator_id", using: :btree
t.index ["author_id"], name: "index_budget_investments_on_author_id", using: :btree
@@ -340,24 +339,6 @@ ActiveRecord::Schema.define(version: 20191031210734) do
t.datetime "updated_at", null: false
end
- create_table "budget_tracker_assignments", force: :cascade do |t|
- t.integer "tracker_id"
- t.integer "investment_id"
- t.datetime "created_at", null: false
- t.datetime "updated_at", null: false
- t.index ["investment_id"], name: "index_budget_tracker_assignments_on_investment_id", using: :btree
- t.index ["tracker_id"], name: "index_budget_tracker_assignments_on_tracker_id", using: :btree
- end
-
- create_table "budget_trackers", force: :cascade do |t|
- t.integer "budget_id"
- t.integer "tracker_id"
- t.datetime "created_at", null: false
- t.datetime "updated_at", null: false
- t.index ["budget_id"], name: "index_budget_trackers_on_budget_id", using: :btree
- t.index ["tracker_id"], name: "index_budget_trackers_on_tracker_id", using: :btree
- end
-
create_table "budget_translations", force: :cascade do |t|
t.integer "budget_id", null: false
t.string "locale", null: false
@@ -1504,15 +1485,6 @@ ActiveRecord::Schema.define(version: 20191031210734) do
t.index ["hidden_at"], name: "index_topics_on_hidden_at", using: :btree
end
- create_table "trackers", force: :cascade do |t|
- t.integer "user_id"
- t.string "description"
- t.integer "budget_investment_count", default: 0
- t.datetime "created_at", null: false
- t.datetime "updated_at", null: false
- t.index ["user_id"], name: "index_trackers_on_user_id", using: :btree
- end
-
create_table "users", force: :cascade do |t|
t.string "email", default: ""
t.string "encrypted_password", default: "", null: false
@@ -1700,9 +1672,6 @@ ActiveRecord::Schema.define(version: 20191031210734) do
add_foreign_key "budget_administrators", "administrators"
add_foreign_key "budget_administrators", "budgets"
add_foreign_key "budget_investments", "communities"
- add_foreign_key "budget_tracker_assignments", "trackers"
- add_foreign_key "budget_trackers", "budgets"
- add_foreign_key "budget_trackers", "trackers"
add_foreign_key "budget_valuators", "budgets"
add_foreign_key "budget_valuators", "valuators"
add_foreign_key "dashboard_administrator_tasks", "users"
@@ -1743,7 +1712,6 @@ ActiveRecord::Schema.define(version: 20191031210734) do
add_foreign_key "proposals", "communities"
add_foreign_key "related_content_scores", "related_contents"
add_foreign_key "related_content_scores", "users"
- add_foreign_key "trackers", "users"
add_foreign_key "users", "geozones"
add_foreign_key "valuators", "users"
end
diff --git a/spec/factories/users.rb b/spec/factories/users.rb
index 069a2cda0..2d3359798 100644
--- a/spec/factories/users.rb
+++ b/spec/factories/users.rb
@@ -98,10 +98,6 @@ FactoryBot.define do
user
end
- factory :tracker do
- user
- end
-
factory :valuator do
user
end
diff --git a/spec/features/admin/budgets_spec.rb b/spec/features/admin/budgets_spec.rb
index fa1f747a4..5ed404756 100644
--- a/spec/features/admin/budgets_spec.rb
+++ b/spec/features/admin/budgets_spec.rb
@@ -245,9 +245,8 @@ describe "Admin budgets" do
scenario "Deselect all selected staff", :js do
admin = Administrator.first
valuator = create(:valuator)
- tracker = create(:tracker)
- budget = create(:budget, administrators: [admin], valuators: [valuator], trackers: [tracker])
+ budget = create(:budget, administrators: [admin], valuators: [valuator])
visit edit_admin_budget_path(budget)
click_link "1 administrator selected"
@@ -260,17 +259,11 @@ describe "Admin budgets" do
expect(page).to have_link "Select valuators"
- click_link "1 tracker selected"
- uncheck tracker.name
-
- expect(page).to have_link "Select trackers"
-
click_button "Update Budget"
visit edit_admin_budget_path(budget)
expect(page).to have_link "Select administrators"
expect(page).to have_link "Select valuators"
- expect(page).to have_link "Select trackers"
end
end
diff --git a/spec/features/admin/translatable_spec.rb b/spec/features/admin/translatable_spec.rb
index c40919d81..4ef2a299b 100644
--- a/spec/features/admin/translatable_spec.rb
+++ b/spec/features/admin/translatable_spec.rb
@@ -356,7 +356,7 @@ describe "Admin edit translatable records" do
let(:translatable) { create(:milestone) }
scenario "Shows an error message" do
- visit edit_tracking_budget_budget_investment_milestone_path(*resource_hierarchy_for(translatable))
+ visit edit_admin_budget_budget_investment_milestone_path(*resource_hierarchy_for(translatable))
click_link "Remove language"
click_link "Remove language"
diff --git a/spec/features/officing_spec.rb b/spec/features/officing_spec.rb
index bb5a7afd1..a2298d8fd 100644
--- a/spec/features/officing_spec.rb
+++ b/spec/features/officing_spec.rb
@@ -108,7 +108,7 @@ describe "Poll Officing" do
expect(page).not_to have_link("Moderation")
end
- xscenario "Officing dashboard" do
+ scenario "Officing dashboard" do
create(:poll_officer, user: user)
create(:poll)
login_as(user)
diff --git a/spec/features/tracking/budget_investments_spec.rb b/spec/features/tracking/budget_investments_spec.rb
deleted file mode 100644
index c33c2e8e6..000000000
--- a/spec/features/tracking/budget_investments_spec.rb
+++ /dev/null
@@ -1,351 +0,0 @@
-require "rails_helper"
-
-describe "Valuation budget investments" do
- let(:budget) { create(:budget) }
- let(:tracker) do
- create(:tracker, user: create(:user, username: "Rachel", email: "rachel@trackers.org"))
- end
-
- before do
- login_as(tracker.user)
- end
-
- scenario "Disabled with a feature flag" do
- Setting["process.budgets"] = nil
- expect do
- visit tracking_budget_budget_investments_path(create(:budget))
- end.to raise_exception(FeatureFlags::FeatureDisabled)
- end
-
- scenario "Display link to tracking section" do
- visit root_path
- expect(page).to have_link "Tracking", href: tracking_root_path
- end
-
- describe "Index" do
- scenario "Index shows budget investments assigned to current tracker" do
- investment1 = create(:budget_investment, budget: budget)
- investment2 = create(:budget_investment, budget: budget)
-
- investment1.trackers << tracker
-
- visit tracking_budget_budget_investments_path(budget)
-
- expect(page).to have_content(investment1.title)
- expect(page).not_to have_content(investment2.title)
- end
-
- scenario "Index shows no budget investment to admins no trackers" do
- investment1 = create(:budget_investment, budget: budget)
- investment2 = create(:budget_investment, budget: budget)
-
- investment1.trackers << tracker
-
- logout
- login_as create(:administrator).user
- visit tracking_budget_budget_investments_path(budget)
-
- expect(page).not_to have_content(investment1.title)
- expect(page).not_to have_content(investment2.title)
- end
-
- scenario "Index displays investments paginated" do
- per_page = Kaminari.config.default_per_page
- (per_page + 2).times do
- investment = create(:budget_investment, budget: budget)
- investment.trackers << tracker
- end
-
- visit tracking_budget_budget_investments_path(budget)
-
- expect(page).to have_css(".budget_investment", count: per_page)
- within("ul.pagination") do
- expect(page).to have_content("1")
- expect(page).to have_content("2")
- expect(page).not_to have_content("3")
- click_link "Next", exact: false
- end
-
- expect(page).to have_css(".budget_investment", count: 2)
- end
-
- scenario "headings" do
- investment1 = create(:budget_investment,
- budget: budget,
- title: "investment 1",
- heading: create(:budget_heading, name: "first_heading"))
- investment2 = create(:budget_investment,
- budget: budget, title: "investment 2",
- heading: create(:budget_heading, name: "last_heading"))
- create(:budget_investment,
- budget: budget,
- title: "investment 3",
- heading: create(:budget_heading, name: "no_heading"))
-
- investment1.trackers << tracker
- investment2.trackers << tracker
-
- visit tracking_budget_budget_investments_path(budget)
-
- expect(page).to have_link("All headings (2)")
- expect(page).to have_link("last_heading (1)")
- expect(page).to have_link("first_heading (1)")
- expect(page).not_to have_link("no_heading (1)")
-
- expect(page).to have_content("investment 1")
- expect(page).to have_content("investment 2")
- expect(page).not_to have_content("investment 3")
-
- expect(page.find(".select-heading .is-active")).to have_content("All headings")
-
- click_on "last_heading (1)"
-
- expect(page.find(".select-heading .is-active")).to have_content("last_heading (1)")
- expect(page).not_to have_content("investment 1")
- expect(page).to have_content("investment 2")
- expect(page).not_to have_content("investment 3")
- end
- end
-
- describe "Show" do
- let(:administrator) do
- create(:administrator, user: create(:user, username: "Ana", email: "ana@admins.org"))
- end
- let(:second_tracker) do
- create(:tracker, user: create(:user, username: "Rick", email: "rick@trackers.org"))
- end
- let(:investment) do
- create(:budget_investment, budget: budget, administrator: administrator)
- end
-
- before do
- investment.trackers << [tracker, second_tracker]
- end
-
- scenario "visible for assigned trackers" do
- visit tracking_budget_budget_investments_path(budget)
-
- click_link investment.title
-
- expect(page).to have_content(investment.title)
- expect(page).to have_content(investment.description)
- expect(page).to have_content(investment.author.name)
- expect(page).to have_content(investment.heading.name)
-
- within("#assigned_trackers") do
- expect(page).to have_content("Rachel (rachel@trackers.org)")
- expect(page).to have_content("Rick (rick@trackers.org)")
- end
- end
-
- scenario "visible for admins" do
- logout
- login_as create(:administrator).user
-
- visit tracking_budget_budget_investment_path(budget, investment)
-
- expect(page).to have_content(investment.title)
- expect(page).to have_content(investment.description)
- expect(page).to have_content(investment.author.name)
- expect(page).to have_content(investment.heading.name)
- expect(page).to have_content("Ana (ana@admins.org)")
-
- within("#assigned_trackers") do
- expect(page).to have_content("Rachel (rachel@trackers.org)")
- expect(page).to have_content("Rick (rick@trackers.org)")
- end
- end
-
- scenario "not visible for not assigned trackers" do
- logout
- login_as create(:tracker).user
-
- expect do
- visit tracking_budget_budget_investment_path(budget, investment)
- end.to raise_error "Not Found"
- end
- end
-
- describe "Milestones" do
- let(:admin) { create(:administrator) }
- let(:investment) do
- create(:budget_investment, budget: budget, administrator: admin)
- end
-
- before do
- investment.trackers << tracker
- end
-
- scenario "visit investment manage milestones" do
- visit tracking_budget_budget_investments_path(budget)
-
- click_link "Edit milestones"
-
- expect(page).to have_content("Milestone")
- expect(page).to have_content(investment.title)
- end
-
- scenario "create investment milestones" do
- visit edit_tracking_budget_budget_investment_path(budget, investment)
-
- expect(page).to have_content("Milestone")
- expect(page).to have_content(investment.title)
-
- click_link "Create new milestone"
-
- expect(page).to have_content("Create milestone")
- fill_in("Description", with: "Test Description")
- page.find("#milestone_publication_date").set(Date.current)
-
- click_button "Create milestone"
-
- visit edit_tracking_budget_budget_investment_path(budget, investment)
-
- expect(page).to have_content("Test Description")
- end
-
- scenario "delete investment milestones" do
- milestone = create(:milestone,
- milestoneable: investment,
- description: "Test delete milestone")
-
- visit edit_tracking_budget_budget_investment_path(budget, investment)
-
- expect(page).to have_content("Test delete milestone")
-
- page.find("#milestone_#{milestone.id}").click_link("Delete milestone")
-
- visit edit_tracking_budget_budget_investment_path(budget, investment)
-
- expect(page).not_to have_content("Test delete milestone")
- end
-
- scenario "edit investment milestones" do
- milestone = create(:milestone, milestoneable: investment, description: "Test edit milestone")
-
- visit edit_tracking_budget_budget_investment_path(budget, investment)
-
- expect(page).to have_content("Test edit milestone")
-
- page.find("#milestone_#{milestone.id}").first("a").click
-
- expect(page).to have_content("Edit milestone")
- expect(page).to have_content("Test edit milestone")
- fill_in("Description", with: "Test edited milestone")
-
- click_button "Update milestone"
-
- visit edit_tracking_budget_budget_investment_path(budget, investment)
-
- expect(page).not_to have_content("Test edit milestone")
- expect(page).to have_content("Test edited milestone")
- end
- end
-
- describe "Progress Bars" do
- let(:admin) { create(:administrator) }
- let(:investment) do
- create(:budget_investment, budget: budget, administrator: admin)
- end
-
- before do
- investment.trackers << tracker
- end
-
- scenario "view index" do
- visit edit_tracking_budget_budget_investment_path(budget, investment)
-
- click_link "Manage progress bars"
-
- expect(page).to have_content("Progress bars")
-
- logout
- login_as create(:tracker, user: create(:user)).user
-
- expect do
- visit tracking_budget_budget_investment_progress_bars_path(budget, investment)
- end.to raise_error "Not Found"
- end
-
- scenario "create primary progress bar" do
- visit tracking_budget_budget_investment_progress_bars_path(budget, investment)
-
- expect(page).to have_content("Progress bars")
-
- click_link "Create new progress bar"
-
- expect(page).to have_content("Create progress bar")
-
- select("Primary", from: "Type")
- fill_in("Current progress", with: 50)
-
- click_button "Create Progress bar"
-
- expect(page).to have_content("Progress bars")
-
- expect(page).to have_content("Primary")
- end
-
- scenario "create secondary progress bar" do
- visit tracking_budget_budget_investment_progress_bars_path(budget, investment)
-
- expect(page).to have_content("Progress bars")
-
- click_link "Create new progress bar"
-
- expect(page).to have_content("Create progress bar")
-
- select("Secondary", from: "Type")
- fill_in("Title", with: "secondary_progress_bar")
- fill_in("Current progress", with: 50)
-
- click_button "Create Progress bar"
-
- expect(page).to have_content("Progress bars")
-
- expect(page).to have_content("secondary_progress_bar")
- end
-
- scenario "delete" do
- create(:progress_bar, progressable: investment)
- secondary_progress_bar = create(:progress_bar,
- :secondary,
- title: "to delete",
- progressable: investment)
-
- visit tracking_budget_budget_investment_progress_bars_path(budget, investment)
-
- expect(page).to have_content("Primary")
- expect(page).to have_content(secondary_progress_bar.title)
-
- page.find("#progress_bar_#{secondary_progress_bar.id}").click_link("Delete")
-
- visit tracking_budget_budget_investment_progress_bars_path(budget, investment)
-
- expect(page).to have_content("Primary")
- expect(page).not_to have_content(secondary_progress_bar.title)
- end
-
- scenario "edit" do
- create(:progress_bar, progressable: investment)
- secondary_progress_bar = create(:progress_bar,
- :secondary,
- title: "to edit",
- progressable: investment)
-
- visit tracking_budget_budget_investment_progress_bars_path(budget, investment)
-
- expect(page).to have_content("Primary")
- expect(page).to have_content(secondary_progress_bar.title)
-
- page.find("#progress_bar_#{secondary_progress_bar.id}").click_link("Edit")
-
- fill_in("Title", with: "edited")
- click_button "Update Progress bar"
-
- expect(page).to have_content("Progress bars")
-
- expect(page).to have_content("edited")
- end
- end
-end
diff --git a/spec/features/tracking/budgets_spec.rb b/spec/features/tracking/budgets_spec.rb
deleted file mode 100644
index 077666f5b..000000000
--- a/spec/features/tracking/budgets_spec.rb
+++ /dev/null
@@ -1,29 +0,0 @@
-require "rails_helper"
-
-describe "Tracking budgets" do
- before do
- tracker = create(:tracker, user: create(:user, username: "Rachel",
- email: "rachel@trackers.org"))
- login_as(tracker.user)
- end
-
- scenario "Disabled with a feature flag" do
- Setting["process.budgets"] = nil
- expect { visit tracking_budgets_path }.to raise_exception(FeatureFlags::FeatureDisabled)
- end
-
- context "Index" do
- scenario "Displaying budgets" do
- budget = create(:budget)
- visit tracking_budgets_path
-
- expect(page).to have_content(budget.name)
- end
-
- scenario "With no budgets" do
- visit tracking_budgets_path
-
- expect(page).to have_content "There are no budgets"
- end
- end
-end
diff --git a/spec/shared/features/admin_progressable.rb b/spec/shared/features/admin_progressable.rb
index 1ee49eadb..81cd2cb62 100644
--- a/spec/shared/features/admin_progressable.rb
+++ b/spec/shared/features/admin_progressable.rb
@@ -5,7 +5,7 @@ shared_examples "admin_progressable" do |factory_name, path_name|
let(:progressable_path) { send(path_name, *resource_hierarchy_for(progressable)) }
let(:path) do
- polymorphic_path([:tracking, *resource_hierarchy_for(progressable.progress_bars.new)])
+ polymorphic_path([:admin, *resource_hierarchy_for(progressable.progress_bars.new)])
end
context "Index" do