block days Mini Calendar

Hello,

I use the Mini Calendar in Timline. How can I block days?
Can I give a start date?


	function show_minical(){
			if (scheduler.isCalendarVisible())
				scheduler.destroyCalendar();
			else
				scheduler.renderCalendar({
					position:"dhx_minical_icon",
					date:scheduler._date,
					navigation:true,
					handler:function(date,calendar){
						scheduler.setCurrentView(date);
						scheduler.destroyCalendar()
					}
				});
		}

thanks
Ciao Thomas

Hi,
What means ‘block days’? If you mean ‘scheduler.blockTime’, unfortunately this doesn’t work for miniCalendar. Other actions you can prohibit in handler:function(date,calendar){...}
To get a start date, if you mean min date of the currently opened view, please use getState method

scheduler.getState().min_date

Yes, my deactivated days in the Mini Calendar (past days). The user can not go back in time.
I think min_date and max_date are the right thing. Do you have an example where I give min_date and max_date?
A date for min_date and max_date will be taken over by the Mini Calandar as well?

thanks

You can get these dates in minicalendar handler

handler:function(date,calendar){ var minDate = scheduler.getState().min_date; var maxDate = scheduler.getState().max_date; }
To limit period during which user can swith, you should add dhtmlxscheduler_limit.js extension, set the value of limit_view config to true and also specify time range using scheduler.config.limit_start and scheduler.config.limit_end.

Hi Polina,
I can set the start date in the timeline to the current day. The user can not go back in days gone by. However, the user can no longer open a lightbox on the start day. The double click does not work anymore. The next day the double click works and the lightbox opens.
Do you have any idea?

thanks
Ciao Thomas

scheduler.config.limit_start = new Date()
scheduler.config.limit_end = new Date (2018,12,01);

If you set

scheduler.config.limit_start = new Date()

time is also significant. I.e you can’t create new event above the red line. Demo
You should set time to 00:00 of the current day to have the opportunity create new event during whole day.

Hi Polina
I want to change events in a specific date range. Everything is displayed correctly but not saved.


      var evs = scheduler.getEvents(from,to); 
		for (var i=0; i<evs.length; i++){ 
			scheduler.getEvent(evs[i].id).text = 'XYZ'; 
			scheduler.updateEvent(evs[i].id);				
		}

When I delete the events in the date range, it works -> scheduler.deleteEvent(evs[i].id);
All events are deleted in the display and in the DB
Is after scheduler.updateEvent (evs [i] .id); another command needed?

Thanks
Ciao Thomas

No, it should work.
Do other events changes store in the database?

Yes, everything else works. It will be created or changed. Everything is saved.
There are no errors in the console. Deleting in the loop works fine.
Another idea?

hmm… something strange. Could you provide with access to your application?

Hi Polina.

my timeline is loaded at login for a year. That’s a lot of data and takes some time. The user changes an Event1 and everything is sent to the server and saved. After saving, no data is sent from the server to the user.
If the user changes Event2, the data from Eevent1 and Event2 are sent to the server. Is it possible to send only Event2 to the server?
The currently processed event should always be sent.

THANK YOU
Chiao thomas