Start Building Professional
Web Apps Today


 
Categories Question details Back To List
Question  posted by John McGrath on Sep 16, 2009 17:41
open dhtmlx forum
Integrating Calendar with Scheduler

We are using your Scheduler and would like to integrate your Calendar control. I am able to get the Calendar to change the dates on the Scheduler using the scheduler.setCurrentView(new Date()) with the onClick event but I cannot get the Scheduler (forward and back arrows, Today, etc.) to update the Calendar.
Could you provide some input/examples of this type of integration. I find it interesting that your Scheduler doesn't have a calendar control built in. It would certainly enhance the navigation.
Answer posted by Alex (support) on Sep 18, 2009 05:46

Scheduler has onViewChange event. So, you can call any custom code when view is changed:

scheduler.attachEvent("onViewChange",function(mode,date){

/*your code here*/

})

Answer posted by Benjamin on Oct 06, 2009 05:01
Hello There JohnMcGrath,

are you able to tell me more abou thow to integrade the minicalendar into the schedule?
Think you use it next to each other, right?

Perhaps you can contact me out of this via mail: bbincl [AT] netcologne.de

Would be really happy about help doing this, what you did...


Bets wishes,
Benjamin
Answer posted by Stanislav (support) on Oct 06, 2009 06:50
There is no special integration features so far. 
You can just place both on page, and attach code so on select in mini-calendar call
        scheduler.setCurrentView
and on onViewChange event, change setDate of calendar
Answer posted by Benjamin on Oct 08, 2009 16:38
Hey there,

quite missed this ticket so i can reply yet:
Ok, of course just both on one page :-)

Do you think there is a possibility to lay the minicalc over the Scheduler?
I mean, sorry, this is not a dhtmlx question, quite a CSS question, right?

I thought about overlaying it in the bottom-right :)
Is there (just out of ya head) any major problem?
How should i declare it? Not absolute, right? :/
Hopefully i get the point to configure it, but i think the positionig is worser.

By the way, is it possible, that the commercial project (web2cal) where a minicalc is next to it leftside made with your DHTMLX Source? It feels exactly like your Schedule and today i thought about it, that i could imagine, that it is possible to create such a calender out of the basic scheudle if ya want :)
Answer posted by Benjamin on Oct 08, 2009 17:40
Deep in night i am developing and tried to integrate this minicalc...
Problem is, that the <body onload="init()"> stops the calendar to run!
If i delete this, calender runs perfectly (but shceduler not any more)...

Should it be not so easy to integrate?
Answer posted by Benjamin on Oct 08, 2009 18:07
Again very confusing...
Put the init(); in the end of the window.onload = function() from calendar and it works... even down, but not at the rigth yet :)
I wish i could edit... sos orry guys!
Answer posted by Stanislav (support) on Oct 09, 2009 09:36
>>I thought about overlaying it in the bottom-right :)
Actually you can inject any content directly in scheduler's template 


<div id="scheduler_here" class="dhx_cal_container" style='width:100%; height:100%;'>
     ...
   <div class="dhx_cal_data"></div>  
   <div style="position:absolute; right:0px; bottom:0px;"> any html code for mini-calendar here </div>
</div>

>>By the way, is it possible, that the commercial project (web2cal) where a minicalc is next to it leftside made with your DHTMLX Source?
Nope, this is independent project and while both calendars provide similar functionality they are very different in API and inner code.

Answer posted by Stanislav (support) on Oct 09, 2009 09:41
>>Problem is, that the <body onload="init()"> stops the calendar to run!
>>If i delete this, calender runs perfectly (but shceduler not any more)...

If you need to have multiple independent onload handlers, instead window.onload and "<body onload=" you can use

dhtmlxEvent(window,"load",function(){
          any code here
})

there can be many such blocks on the page and which will be executed on page loading.