2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								namespace  Grocy\Services ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								use  Grocy\Helpers\UrlManager ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								class  CalendarService  extends  BaseService 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
									
										
										
										
											2021-07-16 17:32:08 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									public  function  __construct () 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
									{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
										$this -> UrlManager  =  new  UrlManager ( GROCY_BASE_URL ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
									private  $UrlManager ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
									public  function  GetEvents () 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
									{ 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										$stockEvents  =  []; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										if  ( GROCY_FEATURE_FLAG_STOCK_BEST_BEFORE_DATE_TRACKING ) 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
										{ 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-01 23:47:47 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$products  =  $this -> getDatabase () -> products (); 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-15 19:53:44 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$titlePrefix  =  $this -> getLocalizationService () -> __t ( 'Product due' )  .  ': ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
											foreach  ( $this -> getStockService () -> GetCurrentStock ()  as  $currentStockEntry ) 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
											{ 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												if  ( $currentStockEntry -> amount  >  0 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												{ 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													$stockEvents []  =  [ 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
														'title'  =>  $titlePrefix  .  FindObjectInArrayByPropertyValue ( $products ,  'id' ,  $currentStockEntry -> product_id ) -> name , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
														'start'  =>  $currentStockEntry -> best_before_date , 
							 
						 
					
						
							
								
									
										
										
										
											2020-04-22 12:03:05 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
														'date_format'  =>  'date' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
														'link'  =>  $this -> UrlManager -> ConstructUrl ( '/stockoverview' ) 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													]; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										$taskEvents  =  []; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										if  ( GROCY_FEATURE_FLAG_TASKS ) 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
										{ 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-01 23:47:47 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$titlePrefix  =  $this -> getLocalizationService () -> __t ( 'Task due' )  .  ': ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
											foreach  ( $this -> getTasksService () -> GetCurrent ()  as  $currentTaskEntry ) 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											{ 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$taskEvents []  =  [ 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													'title'  =>  $titlePrefix  .  $currentTaskEntry -> name , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'start'  =>  $currentTaskEntry -> due_date , 
							 
						 
					
						
							
								
									
										
										
										
											2020-04-22 12:03:05 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													'date_format'  =>  'date' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'link'  =>  $this -> UrlManager -> ConstructUrl ( '/tasks' ) 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												]; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										$choreEvents  =  []; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										if  ( GROCY_FEATURE_FLAG_CHORES ) 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
										{ 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-01 23:47:47 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$users  =  $this -> getUsersService () -> GetUsersAsDto (); 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-20 10:19:44 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$chores  =  $this -> getDatabase () -> chores () -> where ( 'active = 1' ); 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-01 23:47:47 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$titlePrefix  =  $this -> getLocalizationService () -> __t ( 'Chore due' )  .  ': ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
											foreach  ( $this -> getChoresService () -> GetCurrent ()  as  $currentChoreEntry ) 
							 
						 
					
						
							
								
									
										
										
										
											2019-09-17 16:28:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											{ 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$chore  =  FindObjectInArrayByPropertyValue ( $chores ,  'id' ,  $currentChoreEntry -> chore_id ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												$assignedToText  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												if  ( ! empty ( $currentChoreEntry -> next_execution_assigned_to_user_id )) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												{ 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-01 23:47:47 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													$assignedToText  =  ' ('  .  $this -> getLocalizationService () -> __t ( 'assigned to %s' ,  FindObjectInArrayByPropertyValue ( $users ,  'id' ,  $currentChoreEntry -> next_execution_assigned_to_user_id ) -> display_name )  .  ')' ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												} 
							 
						 
					
						
							
								
									
										
										
										
											2019-09-17 16:28:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$choreEvents []  =  [ 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													'title'  =>  $titlePrefix  .  $chore -> name  .  $assignedToText , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'start'  =>  $currentChoreEntry -> next_estimated_execution_time , 
							 
						 
					
						
							
								
									
										
										
										
											2020-04-22 12:03:05 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													'date_format'  =>  'datetime' , 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-24 18:27:40 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													'link'  =>  $this -> UrlManager -> ConstructUrl ( '/choresoverview' ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'allDay'  =>  $chore -> track_date_only  ==  1 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												]; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										$batteryEvents  =  []; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										if  ( GROCY_FEATURE_FLAG_BATTERIES ) 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
										{ 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-20 10:19:44 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$batteries  =  $this -> getDatabase () -> batteries () -> where ( 'active = 1' ); 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-01 23:47:47 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$titlePrefix  =  $this -> getLocalizationService () -> __t ( 'Battery charge cycle due' )  .  ': ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
											foreach  ( $this -> getBatteriesService () -> GetCurrent ()  as  $currentBatteryEntry ) 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											{ 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$batteryEvents []  =  [ 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													'title'  =>  $titlePrefix  .  FindObjectInArrayByPropertyValue ( $batteries ,  'id' ,  $currentBatteryEntry -> battery_id ) -> name , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'start'  =>  $currentBatteryEntry -> next_estimated_charge_time , 
							 
						 
					
						
							
								
									
										
										
										
											2020-04-22 12:03:05 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													'date_format'  =>  'datetime' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'link'  =>  $this -> UrlManager -> ConstructUrl ( '/batteriesoverview' ) 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												]; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 10:22:54 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										$mealPlanRecipeEvents  =  []; 
							 
						 
					
						
							
								
									
										
										
										
											2020-09-14 11:15:11 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										$mealPlanNotesEvents  =  []; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
										$mealPlanProductEvents  =  []; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 17:33:02 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										if  ( GROCY_FEATURE_FLAG_RECIPES ) 
							 
						 
					
						
							
								
									
										
										
										
											2019-09-24 09:40:56 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										{ 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 18:08:26 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$mealPlanSections  =  $this -> getDatabase () -> meal_plan_sections (); 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 17:27:46 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 18:08:26 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$recipes  =  $this -> getDatabase () -> recipes () -> where ( 'type' ,  'normal' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
											$mealPlanDayRecipes  =  $this -> getDatabase () -> meal_plan () -> where ( 'type' ,  'recipe' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
											$titlePrefix  =  $this -> getLocalizationService () -> __t ( 'Meal plan recipe' )  .  ': ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											foreach  ( $mealPlanDayRecipes  as  $mealPlanDayRecipe ) 
							 
						 
					
						
							
								
									
										
										
										
											2019-09-24 09:40:56 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											{ 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 18:08:26 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$start  =  $mealPlanDayRecipe -> day ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												$dateFormat  =  'date' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												$section  =  FindObjectInArrayByPropertyValue ( $mealPlanSections ,  'id' ,  $mealPlanDayRecipe -> section_id ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												if  ( ! empty ( $section -> time_info )) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													$start  =  $mealPlanDayRecipe -> day  .  ' '  .  $section -> time_info  .  ':00' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													$dateFormat  =  'datetime' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												} 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 18:08:26 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$titlePrefix2  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												if  ( ! empty ( $section -> name )) 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 17:27:46 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												{ 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 18:08:26 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													$titlePrefix2  =  $section -> name  .  ': ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 17:27:46 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												} 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 18:08:26 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												$mealPlanRecipeEvents []  =  [ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'title'  =>  $titlePrefix  .  $titlePrefix2  .  FindObjectInArrayByPropertyValue ( $recipes ,  'id' ,  $mealPlanDayRecipe -> recipe_id ) -> name , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'start'  =>  $start , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'date_format'  =>  $dateFormat , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'description'  =>  $this -> UrlManager -> ConstructUrl ( '/mealplan'  .  '?week='  .  $mealPlanDayRecipe -> day ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'link'  =>  $this -> UrlManager -> ConstructUrl ( '/recipes'  .  '?recipe='  .  $mealPlanDayRecipe -> recipe_id  .  '#fullscreen' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												]; 
							 
						 
					
						
							
								
									
										
										
										
											2019-09-24 09:40:56 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-03-01 23:47:47 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$mealPlanDayNotes  =  $this -> getDatabase () -> meal_plan () -> where ( 'type' ,  'note' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
											$titlePrefix  =  $this -> getLocalizationService () -> __t ( 'Meal plan note' )  .  ': ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											foreach  ( $mealPlanDayNotes  as  $mealPlanDayNote ) 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 17:27:46 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											{ 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 18:08:26 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$start  =  $mealPlanDayNote -> day ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												$dateFormat  =  'date' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												$section  =  FindObjectInArrayByPropertyValue ( $mealPlanSections ,  'id' ,  $mealPlanDayNote -> section_id ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												if  ( ! empty ( $section -> time_info )) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													$start  =  $mealPlanDayNote -> day  .  ' '  .  $section -> time_info  .  ':00' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													$dateFormat  =  'datetime' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 19:09:17 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$titlePrefix2  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												if  ( ! empty ( $section -> name )) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													$titlePrefix2  =  $section -> name  .  ': ' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$mealPlanNotesEvents []  =  [ 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 19:09:17 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													'title'  =>  $titlePrefix  .  $titlePrefix2  .  $mealPlanDayNote -> note , 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 18:08:26 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													'start'  =>  $start , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'date_format'  =>  $dateFormat 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												]; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 17:27:46 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2020-01-26 01:50:44 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-03-01 23:47:47 +07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											$products  =  $this -> getDatabase () -> products (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
											$mealPlanDayProducts  =  $this -> getDatabase () -> meal_plan () -> where ( 'type' ,  'product' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
											$titlePrefix  =  $this -> getLocalizationService () -> __t ( 'Meal plan product' )  .  ': ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											foreach  ( $mealPlanDayProducts  as  $mealPlanDayProduct ) 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 17:27:46 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											{ 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 18:08:26 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$start  =  $mealPlanDayProduct -> day ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												$dateFormat  =  'date' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												$section  =  FindObjectInArrayByPropertyValue ( $mealPlanSections ,  'id' ,  $mealPlanDayProduct -> section_id ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												if  ( ! empty ( $section -> time_info )) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													$start  =  $mealPlanDayProduct -> day  .  ' '  .  $section -> time_info  .  ':00' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													$dateFormat  =  'datetime' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 19:09:17 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$titlePrefix2  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												if  ( ! empty ( $section -> name )) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													$titlePrefix2  =  $section -> name  .  ': ' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												$mealPlanProductEvents []  =  [ 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 19:09:17 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													'title'  =>  $titlePrefix  .  $titlePrefix2  .  FindObjectInArrayByPropertyValue ( $products ,  'id' ,  $mealPlanDayProduct -> product_id ) -> name , 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-08 18:08:26 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
													'start'  =>  $start , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
													'date_format'  =>  $dateFormat 
							 
						 
					
						
							
								
									
										
										
										
											2020-08-31 20:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
												]; 
							 
						 
					
						
							
								
									
										
										
										
											2020-02-09 17:27:46 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2020-01-26 01:50:44 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
										return  array_merge ( $stockEvents ,  $taskEvents ,  $choreEvents ,  $batteryEvents ,  $mealPlanRecipeEvents ,  $mealPlanNotesEvents ,  $mealPlanProductEvents ); 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-04 17:44:48 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								}