From b1e939e7151ac9f9f8ffc6e8bb873d05b495ecc3 Mon Sep 17 00:00:00 2001 From: Mojca Lorber Date: Thu, 20 Apr 2017 10:56:25 +0200 Subject: [PATCH] add experiment to activities --- app/controllers/canvas_controller.rb | 1 + app/controllers/experiments_controller.rb | 5 +++++ app/controllers/my_module_comments_controller.rb | 3 +++ app/controllers/my_modules_controller.rb | 6 ++++++ app/controllers/protocols_controller.rb | 3 +++ app/controllers/result_assets_controller.rb | 3 +++ app/controllers/result_comments_controller.rb | 3 +++ app/controllers/result_tables_controller.rb | 3 +++ app/controllers/result_texts_controller.rb | 3 +++ app/controllers/results_controller.rb | 1 + app/controllers/step_comments_controller.rb | 3 +++ app/controllers/steps_controller.rb | 4 ++++ app/controllers/user_my_modules_controller.rb | 2 ++ app/models/activity.rb | 7 ++++--- app/models/experiment.rb | 3 +++ app/models/step.rb | 1 + app/utilities/wopi_util.rb | 1 + db/migrate/20170418153541_add_experiment_to_activities.rb | 5 +++++ 18 files changed, 54 insertions(+), 3 deletions(-) create mode 100644 db/migrate/20170418153541_add_experiment_to_activities.rb diff --git a/app/controllers/canvas_controller.rb b/app/controllers/canvas_controller.rb index 91dd8bd8e..3b4b0c93a 100644 --- a/app/controllers/canvas_controller.rb +++ b/app/controllers/canvas_controller.rb @@ -252,6 +252,7 @@ class CanvasController < ApplicationController Activity.create( type_of: :archive_module, project: my_module.experiment.project, + experiment: my_module.experiment, my_module: my_module, user: current_user, message: t( diff --git a/app/controllers/experiments_controller.rb b/app/controllers/experiments_controller.rb index 9456ac72f..264b97871 100644 --- a/app/controllers/experiments_controller.rb +++ b/app/controllers/experiments_controller.rb @@ -51,6 +51,7 @@ class ExperimentsController < ApplicationController Activity.create( type_of: :create_experiment, project: @experiment.project, + experiment: @experiment, user: current_user, message: I18n.t( 'activities.create_experiment', @@ -101,6 +102,7 @@ class ExperimentsController < ApplicationController Activity.create( type_of: :edit_experiment, project: @experiment.project, + experiment: @experiment, user: current_user, message: I18n.t( 'activities.edit_experiment', @@ -141,6 +143,7 @@ class ExperimentsController < ApplicationController Activity.create( type_of: :archive_experiment, project: @experiment.project, + experiment: @experiment, user: current_user, message: I18n.t( 'activities.archive_experiment', @@ -190,6 +193,7 @@ class ExperimentsController < ApplicationController Activity.create( type_of: :clone_experiment, project: project, + experiment: @experiment, user: current_user, message: I18n.t( 'activities.clone_experiment', @@ -240,6 +244,7 @@ class ExperimentsController < ApplicationController Activity.create( type_of: :move_experiment, project: project, + experiment: @experiment, user: current_user, message: I18n.t( 'activities.move_experiment', diff --git a/app/controllers/my_module_comments_controller.rb b/app/controllers/my_module_comments_controller.rb index fb2c12a6b..8b268ed7f 100644 --- a/app/controllers/my_module_comments_controller.rb +++ b/app/controllers/my_module_comments_controller.rb @@ -59,6 +59,7 @@ class MyModuleCommentsController < ApplicationController type_of: :add_comment_to_module, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( 'activities.add_comment_to_module', @@ -117,6 +118,7 @@ class MyModuleCommentsController < ApplicationController type_of: :edit_module_comment, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( 'activities.edit_module_comment', @@ -143,6 +145,7 @@ class MyModuleCommentsController < ApplicationController type_of: :delete_module_comment, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( 'activities.delete_module_comment', diff --git a/app/controllers/my_modules_controller.rb b/app/controllers/my_modules_controller.rb index d4ce4358a..290d3d42a 100644 --- a/app/controllers/my_modules_controller.rb +++ b/app/controllers/my_modules_controller.rb @@ -147,6 +147,7 @@ class MyModulesController < ApplicationController Activity.create( type_of: :archive_module, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, user: current_user, message: t( @@ -163,6 +164,7 @@ class MyModulesController < ApplicationController Activity.create( type_of: :restore_module, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, user: current_user, message: t( @@ -179,6 +181,7 @@ class MyModulesController < ApplicationController Activity.create( type_of: :change_module_description, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, user: current_user, message: t( @@ -284,6 +287,7 @@ class MyModulesController < ApplicationController Activity.create( type_of: :assign_sample, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, user: current_user, message: I18n.t( @@ -321,6 +325,7 @@ class MyModulesController < ApplicationController Activity.create( type_of: :unassign_sample, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, user: current_user, message: I18n.t( @@ -403,6 +408,7 @@ class MyModulesController < ApplicationController Activity.create( user: current_user, project: @project, + experiment: @experiment, my_module: @my_module, message: message, type_of: completed ? :complete_task : :uncomplete_task diff --git a/app/controllers/protocols_controller.rb b/app/controllers/protocols_controller.rb index 8b7c5dd93..1cab571da 100644 --- a/app/controllers/protocols_controller.rb +++ b/app/controllers/protocols_controller.rb @@ -403,6 +403,7 @@ class ProtocolsController < ApplicationController Activity.create( type_of: :revert_protocol, project: @protocol.my_module.experiment.project, + experiment: @protocol.my_module.experiment, my_module: @protocol.my_module, user: current_user, message: I18n.t( @@ -492,6 +493,7 @@ class ProtocolsController < ApplicationController Activity.create( type_of: :load_protocol_from_repository, project: @protocol.my_module.experiment.project, + experiment: @protocol.my_module.experiment, my_module: @protocol.my_module, user: current_user, message: I18n.t( @@ -539,6 +541,7 @@ class ProtocolsController < ApplicationController Activity.create( type_of: :load_protocol_from_file, project: @protocol.my_module.experiment.project, + experiment: @protocol.my_module.experiment, my_module: @protocol.my_module, user: current_user, message: I18n.t( diff --git a/app/controllers/result_assets_controller.rb b/app/controllers/result_assets_controller.rb index 3ce0b8745..75247bb05 100644 --- a/app/controllers/result_assets_controller.rb +++ b/app/controllers/result_assets_controller.rb @@ -48,6 +48,7 @@ class ResultAssetsController < ApplicationController type_of: :add_result, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( "activities.add_asset_result", @@ -126,6 +127,7 @@ class ResultAssetsController < ApplicationController Activity.create( type_of: :archive_result, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, user: current_user, message: t( @@ -170,6 +172,7 @@ class ResultAssetsController < ApplicationController type_of: :edit_result, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( "activities.edit_asset_result", diff --git a/app/controllers/result_comments_controller.rb b/app/controllers/result_comments_controller.rb index 3387a0400..cca7cef2f 100644 --- a/app/controllers/result_comments_controller.rb +++ b/app/controllers/result_comments_controller.rb @@ -55,6 +55,7 @@ class ResultCommentsController < ApplicationController type_of: :add_comment_to_result, user: current_user, project: @result.my_module.experiment.project, + experiment: @result.my_module.experiment, my_module: @result.my_module, message: t( 'activities.add_comment_to_result', @@ -113,6 +114,7 @@ class ResultCommentsController < ApplicationController type_of: :edit_result_comment, user: current_user, project: @result.my_module.experiment.project, + experiment: @result.my_module.experiment, my_module: @result.my_module, message: t( 'activities.edit_result_comment', @@ -139,6 +141,7 @@ class ResultCommentsController < ApplicationController type_of: :delete_result_comment, user: current_user, project: @result.my_module.experiment.project, + experiment: @result.my_module.experiment, my_module: @result.my_module, message: t( 'activities.delete_result_comment', diff --git a/app/controllers/result_tables_controller.rb b/app/controllers/result_tables_controller.rb index c4e4243cb..4fefe1701 100644 --- a/app/controllers/result_tables_controller.rb +++ b/app/controllers/result_tables_controller.rb @@ -49,6 +49,7 @@ class ResultTablesController < ApplicationController type_of: :add_result, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( "activities.add_table_result", @@ -106,6 +107,7 @@ class ResultTablesController < ApplicationController Activity.create( type_of: :archive_result, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, user: current_user, message: t( @@ -125,6 +127,7 @@ class ResultTablesController < ApplicationController type_of: :edit_result, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( "activities.edit_table_result", diff --git a/app/controllers/result_texts_controller.rb b/app/controllers/result_texts_controller.rb index 7fe013435..9d5660d3a 100644 --- a/app/controllers/result_texts_controller.rb +++ b/app/controllers/result_texts_controller.rb @@ -48,6 +48,7 @@ class ResultTextsController < ApplicationController type_of: :add_result, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( "activities.add_text_result", @@ -107,6 +108,7 @@ class ResultTextsController < ApplicationController Activity.create( type_of: :archive_result, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, user: current_user, message: t( @@ -126,6 +128,7 @@ class ResultTextsController < ApplicationController type_of: :edit_result, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( "activities.edit_text_result", diff --git a/app/controllers/results_controller.rb b/app/controllers/results_controller.rb index 2d4e27b96..fbff11215 100644 --- a/app/controllers/results_controller.rb +++ b/app/controllers/results_controller.rb @@ -20,6 +20,7 @@ class ResultsController < ApplicationController type_of: :destroy_result, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: act_log ) diff --git a/app/controllers/step_comments_controller.rb b/app/controllers/step_comments_controller.rb index 76361d96e..3adfd6128 100644 --- a/app/controllers/step_comments_controller.rb +++ b/app/controllers/step_comments_controller.rb @@ -57,6 +57,7 @@ class StepCommentsController < ApplicationController type_of: :add_comment_to_step, user: current_user, project: @step.my_module.experiment.project, + experiment: @step.my_module.experiment, my_module: @step.my_module, message: t( "activities.add_comment_to_step", @@ -117,6 +118,7 @@ class StepCommentsController < ApplicationController type_of: :edit_step_comment, user: current_user, project: @step.my_module.experiment.project, + experiment: @step.my_module.experiment, my_module: @step.my_module, message: t( 'activities.edit_step_comment', @@ -146,6 +148,7 @@ class StepCommentsController < ApplicationController type_of: :delete_step_comment, user: current_user, project: @step.my_module.experiment.project, + experiment: @step.my_module.experiment, my_module: @step.my_module, message: t( 'activities.delete_step_comment', diff --git a/app/controllers/steps_controller.rb b/app/controllers/steps_controller.rb index c4bd82e3e..d02ecf455 100644 --- a/app/controllers/steps_controller.rb +++ b/app/controllers/steps_controller.rb @@ -64,6 +64,7 @@ class StepsController < ApplicationController type_of: :create_step, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( "activities.create_step", @@ -183,6 +184,7 @@ class StepsController < ApplicationController type_of: :edit_step, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( "activities.edit_step", @@ -297,6 +299,7 @@ class StepsController < ApplicationController Activity.create( user: current_user, project: protocol.my_module.experiment.project, + experiment: protocol.my_module.experiment, my_module: protocol.my_module, message: message, type_of: checked ? :check_step_checklist_item : :uncheck_step_checklist_item @@ -369,6 +372,7 @@ class StepsController < ApplicationController Activity.create( user: current_user, project: protocol.my_module.experiment.project, + experiment: protocol.my_module.experiment, my_module: protocol.my_module, message: message, type_of: completed ? :complete_step : :uncomplete_step diff --git a/app/controllers/user_my_modules_controller.rb b/app/controllers/user_my_modules_controller.rb index 1e11ad401..b0d9e7ed2 100644 --- a/app/controllers/user_my_modules_controller.rb +++ b/app/controllers/user_my_modules_controller.rb @@ -50,6 +50,7 @@ class UserMyModulesController < ApplicationController Activity.create( user: current_user, project: @um.my_module.experiment.project, + experiment: @um.my_module.experiment, my_module: @um.my_module, message: message, type_of: :assign_user_to_module @@ -84,6 +85,7 @@ class UserMyModulesController < ApplicationController Activity.create( user: current_user, project: @um.my_module.experiment.project, + experiment: @um.my_module.experiment, my_module: @um.my_module, message: message, type_of: :unassign_user_from_module diff --git a/app/models/activity.rb b/app/models/activity.rb index 9f96ff6fc..8560ece3a 100644 --- a/app/models/activity.rb +++ b/app/models/activity.rb @@ -63,6 +63,7 @@ class Activity < ActiveRecord::Base validates :project, :user, presence: true belongs_to :project, inverse_of: :activities + belongs_to :experiment, inverse_of: :activities belongs_to :my_module, inverse_of: :activities belongs_to :user, inverse_of: :activities @@ -87,8 +88,8 @@ class Activity < ActiveRecord::Base .application .routes .url_helpers - .canvas_experiment_path(my_module.experiment)}'> - #{my_module.experiment.name}" if my_module.experiment + .canvas_experiment_path(experiment)}'> + #{experiment.name}" if experiment task_m = "| #{I18n.t('search.index.module')} #{my_module.name}" if my_module - +byebug notification = Notification.create( type_of: notification_type, title: diff --git a/app/models/experiment.rb b/app/models/experiment.rb index 07f137273..e314ba7bb 100644 --- a/app/models/experiment.rb +++ b/app/models/experiment.rb @@ -11,6 +11,7 @@ class Experiment < ActiveRecord::Base has_many :my_modules, inverse_of: :experiment, dependent: :destroy has_many :my_module_groups, inverse_of: :experiment, dependent: :destroy has_many :report_elements, inverse_of: :experiment, dependent: :destroy + has_many :activities, inverse_of: :experiment has_attached_file :workflowimg validates_attachment :workflowimg, @@ -145,6 +146,7 @@ class Experiment < ActiveRecord::Base type_of: :create_module, user: current_user, project: self.project, + experiment: m.experiment, my_module: m, message: I18n.t( "activities.create_module", @@ -159,6 +161,7 @@ class Experiment < ActiveRecord::Base Activity.create( type_of: :clone_module, project: mn.experiment.project, + experiment: mn.experiment, my_module: mn, user: current_user, message: I18n.t( diff --git a/app/models/step.rb b/app/models/step.rb index 5624b8755..df1db9e11 100644 --- a/app/models/step.rb +++ b/app/models/step.rb @@ -128,6 +128,7 @@ class Step < ActiveRecord::Base Activity.create( type_of: :destroy_step, project: protocol.my_module.experiment.project, + experiment: protocol.my_module.experiment, my_module: protocol.my_module, user: @current_user, message: I18n.t( diff --git a/app/utilities/wopi_util.rb b/app/utilities/wopi_util.rb index b508856c7..4529189c0 100644 --- a/app/utilities/wopi_util.rb +++ b/app/utilities/wopi_util.rb @@ -98,6 +98,7 @@ module WopiUtil type_of: :start_edit_wopi_file, user: current_user, project: @my_module.experiment.project, + experiment: @my_module.experiment, my_module: @my_module, message: t( started_editing ? 'activities.start_edit_wopi_file_result' : diff --git a/db/migrate/20170418153541_add_experiment_to_activities.rb b/db/migrate/20170418153541_add_experiment_to_activities.rb new file mode 100644 index 000000000..58ef688e0 --- /dev/null +++ b/db/migrate/20170418153541_add_experiment_to_activities.rb @@ -0,0 +1,5 @@ +class AddExperimentToActivities < ActiveRecord::Migration + def change + add_reference :activities, :experiment, index: true, foreign_key: true + end +end