Edit the following file
/includes/cal/CAL_ViewBase.class.php
Change Line 223 from
if ($fn_RECURRING !== NULL && in_array(strtoupper($rs->Fields($fn_RECURRING)),array('DAY','WEEK','MONTH','YEAR')) ) {
to this
if ($fn_RECURRING !== NULL && in_array(strtoupper($rs->Fields($fn_RECURRING)),array('DAY','WEEK','BIWEEK','MONTH','YEAR')) ) {
Add this code snippet before line 338
Line 338:
case 'MONTH':
// Code for Bi-Weekly Events
case 'BIWEEK': $tmp_bi_week_day = CAL_extract('w',$startDate);
tmp_bi_week_day2 = CAL_extract('w',$this->startDate);
$tmp_bi_week_day -= ($tmp_bi_week_day2-7);
$cDate = CAL_addDate($this->startDate, $tmp_bi_week_day, 'd');
$cDate = CAL_extract('Y-m-d', $cDate) . ' ' . CAL_extract('H:i:s',$startDate);
$arrDates = array();
while ($cDate <= $end) {
if ($cDate>=$startDate && $cDate >= $this->startDate && $cDate <= $this->endDate) {$arrDates[] = $cDate;
$cDate = CAL_addDate($cDate, 14, 'd');}
// Create events array;
$t_title = $rs->Fields($fn_TITLE);
$t_desc = "";
$t_link = "";
if ($this->calendar->type == 'view') {
if ($fn_DESCRIPTION != null) {
$t_desc = KT_FormatForList($rs->Fields($fn_DESCRIPTION),255);}
$t_link = KT_DynamicData($this->calendar->getEventLink(), '', '', false, array(), false);
if ($this->calendar->sendKTBack) {
$t_link = KT_addReplaceParam($t_link, 'KT_back', 1);} else
{foreach($_GET as $key => $value) {
$t_link = CAL_glueQueryStrings($t_link, $key . '=' . $value);
//$t_link = KT_addReplaceParam($t_link, $key, $value);}}
$tmp_hour = CAL_extract('H',$endDate);
$tmp_minute = CAL_extract('i',$endDate);
for ($i=0;$i<count($arrDates);$i++) {
$tmp_sdate = $arrDates[$i];
$cDate = CAL_extract('Y-m-d',$tmp_sdate) . ' 00:00:00';
$tmp_edate = CAL_addDate($cDate, 60*$tmp_hour+$tmp_minute, 'i');
if ($tmp_edate <= $tmp_sdate) {
$tmp_edate = CAL_addDate($tmp_sdate, 1, 'H');}
if ($this->calendar->type == 'view') {
$t_link = KT_addReplaceParam($t_link, $this->calendar->dateParam, KT_convertDate($cDate, 'yyyy-mm-dd HH:ii:ss', $GLOBALS['KT_db_date_format']));
$tmp_arr = array('start' => $tmp_sdate, 'end' => $tmp_edate, 'title' => $t_title, 'desc' => $t_desc, 'link' => $t_link, 'class' => $specificClass);
$this->data['body'][$cDate]['event'][] = $tmp_arr;
break;
// End Code for Bi-Weekly Events