our client would like to have calendar module (similar to Google calendar/outlook) in their application. We found this control in our analysis and is providing the most of required feature of our application. We are very much glad to use this control. We would like to confirm this to the client as this control best suits for our application. Before that, I have few clarifications in the implementation of the following features in Scheduler.
Invitation -
Send the event as invitation to internal or external users.
Accept/Decline Invitation
Tracking Invitation
Sharing/Un-Sharing Calendar control to other users.
Please let us know how should we achieve the above features. It would be of great help if you share any documentation or sample in this regard.
Thanks in advance for your support and co-operation.
Hi,
scheduler provides the functionality to display/edit/create of events. It has no built-in features for these tasks, so they will require custom implementation
We would like to show the customized event window based on the type of the calendar or User.
For Example: if user is viewing the Personal calendar then we would like to show Personal event window which is having fields like Title, Description, From, To, Location, Category.
if user is viewing the Office Calendar then we would like to show Office Calendar Event window which is having field like Title, Description, From, To, Location, Dress Code, Fee(if applicable).
Please let us know how should we achieve this. It would be of great help if you share the document or snippet on this.
Hi,
you can set different configuration of lighbox, depending on the type of calendar, the code may look like next:
[code]public virtual ActionResult Index()
{
var sched = new DHXScheduler(this);
.....
bool isOfficeCalendar = ....;
_CommonLightbox(sched);
if (isOfficeCalendar)
{
_OfficeLightbox(sched);
}
else
{
_PersonalLightbox(sched);
}
return View(sched);
}
public void _CommonLightbox(DHXScheduler scheduler)
{
scheduler.Lightbox.Add(new LightboxText("text", "Text") { Height = 25});
scheduler.Lightbox.Add(new LightboxText("description", "Description") { Height = 120 });
scheduler.Lightbox.Add(new LightboxTime("auto", "Time"));
scheduler.Lightbox.Add(new LightboxText("location", "Location") { Height = 25 });
}
public void _OfficeLightbox(DHXScheduler scheduler)
{
var cat = new LightboxSelect("dress_sode", "Dress Code");
cat.AddOptions(
new object[] {
new { key=1, label="Business" },
new { key=2, label="Casual" }
}
);
scheduler.Lightbox.Add(cat);
scheduler.Lightbox.Add(new LightboxText("fee", "Fee") { Height = 25});
}
public void _PersonalLightbox(DHXScheduler scheduler)
{
var cat = new LightboxSelect("category", "Category");
var categories = new object[] {
new { key=1, label="Family" },
new { key=2, label="Other" }
};
cat.AddOptions(categories);
scheduler.Lightbox.Add(cat);
}[/code]
new LightboxText("text", "Text")
- the first parameter is a control’s name, and, by default it’s a property of the event on which control is mapped(e.g. control from the code above will set value of event.text)
the second parameter is controls title
also note, that default LightboxTime should take ‘auto’ for the first parameter, to be mapped to ‘start_date’ and ‘end_date’ properties
Thanks for your suggestion to add custom fileds to LightBox i.e Event window.
After adding these controls, we are not able to view all these control on event window properly and even not able to set scroll bar to the event window. Could you please help us how should we set the height of the Lightbox and scroll bars to Light box as well as alginment and styles of custom fields and LightBox.
Hello,
there is no native api to set lightbox sizes, they expected to be calculated by scheduler, but you may override this behavior
js:
[code]
//helper
function setLightboxHeight(val) {
scheduler.setLightboxSize = function () {
var d = this._lightbox;
if (!d) return;
d.style.height = val + “px”;
var con = d.childNodes[1];
con.style.height = val - 50 + "px";
con.style.overflow = "auto";
};
}[/code]
and usage:
setLightboxHeight(300);
you may put this code after scheduler.Render call
as for styles and aligns - you can’t set style to specific control, but you may override css classes which is applied to lightbox and controls
Great! We are able set the height and styles of the calendar.
As you know, we tried to customize the lightbox by adding different in-line controls and able to load the data using map property. While doing this, we planned to use this Title field value as Event text on light box as well as on calendar. We are able achive while loading the data on calendar but when event is edited then we are not able to update text on calendar/ligbox. We tried like this in Save method:
actionValues[“text”] = actionValues[“Title”].ToString();
But no luck. Could you please help us how should we achieve this.
Also, will it be possible to add link button to light box like “new LightboxText” or “new LightboxCheckbox”
Hello,
try to override templates for the appoitments,
scheduler.Templates.event_text = scheduler.Templates.agenda_text = scheduler.Templates.event_bar_text = "{Title}";
this code will make scheduler use ‘Title’ property instead of ‘text’ in all main views
scheduler does not contain such control, but you may extend it, if you need to.
To achieve this, you’ll have to define control on the client-side, as described here http://docs.dhtmlx.com/doku.php?id=dhtmlxscheduler:custom_details_form#custom_editors
and add it’s server side configuration object, which should be inherited from LightboxField class
We will try to customize the controls and update you the status.
Also, we try to limit the active dates of the calendar. When we are searching we got below link docs.dhtmlx.com/doku.php?id=dhtm … date-scale
We followed this link and we have added the extensions like below in the controller.
sched.Extensions.Add(SchedulerExternsions.Extension.Limit)
But we are not getting the property(i.e.scheduler.config.limit_start) to set the active dates. could you please help us how to solve this.
We are facing alignment issue in light box. As you know, we have added few custom fields and then enabled the time and recurrent fields as shown below.
/To Enable default time
sched.Lightbox.Add(new LightboxMiniCalendar(“auto”, “Time”));
When we run the applation and view the light box, the alignment of checkbox, time and recurring section is not coming properly. We are trying to set height and width througth javascript but no lock. Please find the attached lightbox image for your reference.
Could you please help us how should we solve this.
We will try to align the control by updating the CSS and update you the status.
Also, we have added full day event field and is working fine in light box. When we create event by selecting full day event then event is saving to database but it is not showing on the calendar. where as we create an event with specific time then event is saving to database and also showing on the calendar.
Another issue is, we try to limit the active dates of the calendar. When we are searching we got below link docs.dhtmlx.com/doku.php?id=dhtm … date-scale
We followed this link and we have added the extensions like below in the controller.
sched.Extensions.Add(SchedulerExternsions.Extension.Limit). But we are not getting the property(i.e.scheduler.config.limit_start) to set the active dates and tried on Html side to achives this and but no luck.
could you please help us how to solve the above issues.