Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

All other Modules /

Discuss all other Modules here.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Porting dhtmlxScheduler to silverstripe module


Reply


2 Posts   1469 Views

Avatar
hopey

Community Member, 4 Posts

25 March 2010 at 10:33pm

Edited: 25/03/2010 10:34pm

Hi, I haven't found a good calendar system for Silver Stripe and I've been thinking about porting dhtmlxScheduler to Silverstripe. dhtmlxScheduler has already been ported to Wordpress, joomla and drupal, so I think it could be done to SS too.

http://www.dhtmlx.com/docs/products/dhtmlxScheduler/index.shtml

What it needs is:

1) Database integration to SS. From the start it uses just:

<?php
   include ('../../../codebase/connector/scheduler_connector.php');
   include ('../../common/config.php');
   
   $res=mysql_connect($server, $user, $pass);
   mysql_select_db($db_name);
   
   $scheduler = new schedulerConnector($res);
   //$scheduler->enable_log("log.txt",true);
   $scheduler->render_table("events","event_id","start_date,end_date,event_name,details");
?>

and then uses its own scripts to handle the mysql data. What would be the easiest way to make it to use SS database abstraction?

2) It needs to show static calendar page on web site. This is easy.

3) It needs to give an editable php/ajax site on CMS side. Can this be done by adding a field to this site types main tab? Do I need to define a custom field or something? By quick looking I have found only some text field etc that can be added to the cms tabs.

Avatar
hopey

Community Member, 4 Posts

26 March 2010 at 12:52am

Got it working in admin section just with:

function getCMSFields() {

$fields = parent::getCMSFields();
$fields->removeFieldFromTab("Root.Content.Main","Content");
$fields->addFieldToTab("Root.Content.Main", new LiteralField('scheduler', '<iframe src ="mysite/code/scheduler.html" width="100%" height="100%"> </iframe>'));

return $fields;

}

Only thing left is database integration and making it a decent module.