diff --git a/app/controllers/v1/learning_objects_controller.rb b/app/controllers/v1/learning_objects_controller.rb index 7d606b3fbb8f6966e876c1cd115bdb2914983d78..b33b8593cc36d6e75b6557136393cd59da57acac 100644 --- a/app/controllers/v1/learning_objects_controller.rb +++ b/app/controllers/v1/learning_objects_controller.rb @@ -75,6 +75,12 @@ class V1::LearningObjectsController < ApplicationController # PATCH/PUT /learning_objects/1.json def update lo_params = learning_object_params + language_ids_lo = params[:language_ids] + @learning_object.language_ids = language_ids_lo + current_user.tag(@learning_object, with: params[:tags].map { |t| t['name'] }) + @learning_object.add_educational_stages(ids: params[:educational_stages]) unless params[:educational_stages].nil? + @learning_object.update_subjects(ids: params[:subjects]) unless params[:subjects].nil? + if !lo_params[:object_type_id].blank? && lo_params[:object_type_id] != @learning_object.object_type_id && lo_params[:link].blank? change_object_type_id = true end @@ -98,6 +104,7 @@ class V1::LearningObjectsController < ApplicationController # DELETE /learning_objects/1 # DELETE /learning_objects/1.json def destroy + @learning_object.update(state: LearningObject.states[:deleted]) @learning_object.destroy response = { 'status': 'deleted' } render status: :ok, json: response @@ -162,8 +169,8 @@ class V1::LearningObjectsController < ApplicationController elsif !extra_params[:tags].nil? current_user.tag(learning_object, with: extra_params[:tags].map { |t| t['name'] }) end - learning_object.add_subjects(ids: extra_params[:subjects]) unless extra_params[:subjects].nil? - learning_object.add_educational_stages(ids: extra_params[:educational_stages]) unless extra_params[:educational_stages].nil? + learning_object.add_subjects(ids: params[:subjects]) unless params[:subjects].nil? + #learning_object.add_educational_stages(ids: extra_params[:educational_stages]) unless extra_params[:educational_stages].nil? if change_object_type_id learning_object.link = nil diff --git a/app/models/concerns/subjectable.rb b/app/models/concerns/subjectable.rb index 544af2a090c1abdc0becc440f839ad3581e71568..525fab26f59a0a797fdc0d696a15a6334e73588d 100644 --- a/app/models/concerns/subjectable.rb +++ b/app/models/concerns/subjectable.rb @@ -32,7 +32,6 @@ module Subjectable def add_subjects(ids: []) ids.each do |subject_id| subject = Subject.find(subject_id) - SubjectRelation.where(subject: subject, subjectable: self).first_or_create self.subjects << subject end end