mirror of
				https://github.com/scinote-eln/scinote-web.git
				synced 2025-11-01 00:56:05 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			39 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| # frozen_string_literal: true
 | |
| 
 | |
| module Dashboard
 | |
|   class CalendarsController < ApplicationController
 | |
|     include IconsHelper
 | |
|     include MyModulesHelper
 | |
| 
 | |
|     def show
 | |
|       date = params[:date].in_time_zone(current_user.time_zone)
 | |
|       start_date = date.at_beginning_of_month.utc - 8.days
 | |
|       end_date = date.at_end_of_month.utc + 15.days
 | |
|       due_dates = current_user.my_modules.active.uncomplete
 | |
|                               .joins(experiment: :project)
 | |
|                               .where(experiments: { archived: false })
 | |
|                               .where(projects: { archived: false })
 | |
|                               .where('my_modules.due_date > ? AND my_modules.due_date < ?', start_date, end_date)
 | |
|                               .joins(:protocols).where(protocols: { team_id: current_team.id })
 | |
|                               .pluck(:due_date)
 | |
|       render json: { events: due_dates.map { |i| { date: i.to_date } } }
 | |
|     end
 | |
| 
 | |
|     def day
 | |
|       date = params[:date].in_time_zone(current_user.time_zone)
 | |
|       start_date = date.utc
 | |
|       end_date = date.end_of_day.utc
 | |
|       my_modules = current_user.my_modules.active.uncomplete
 | |
|                                .joins(experiment: :project)
 | |
|                                .where(experiments: { archived: false })
 | |
|                                .where(projects: { archived: false })
 | |
|                                .where('my_modules.due_date > ? AND my_modules.due_date < ?', start_date, end_date)
 | |
|                                .where(projects: { team_id: current_team.id })
 | |
|       render json: {
 | |
|         html: render_to_string(partial: 'shared/my_modules_list_partial.html.erb', locals: {
 | |
|                                  my_modules: my_modules
 | |
|                                })
 | |
|       }
 | |
|     end
 | |
|   end
 | |
| end
 |