3 or ($usr['privs'] > 1 and $evt['uid'] == $usr['ID'])); //boolean
$chBox .= strpos($evt['chd'], $date) ? $evt['cmk'] : '☐';
$cBoxAtt = $mayCheck ? "class='chkBox floatL point' onclick=\"checkE(this,{$evt['eid']},'{$date}');\"" : 'class="chkBox floatL arrow"';
$chBox = "{$chBox}";
}
if ($set['evtTemplPop']) {
$popText = "{$time} {$evt['tix']}
";
if ($eDetails or $evt['mayE']) {
$popText .= makeE($evt,$set['evtTemplPop'],'br','
');
}
$popText = htmlspecialchars(addslashes($popText));
$popClass = ($evt['pri'] ? 'private' : 'normal').(($evt['mde'] or $evt['r_t']) ? ' repeat' : '');
$popAttr = " onmouseover=\"pop(this,'{$popText}','{$popClass}')\"";
} else {
$popAttr = '';
}
if ($set['eventColor']) { //use event color
$eStyle = ($evt['cco'] ? "color:{$evt['cco']};" : '').($evt['cbg'] ? "background-color:{$evt['cbg']};" : '');
} else { //use user color
$eStyle = $evt['uco'] ? "background-color:{$evt['uco']};" : '';
}
$eStyle = $eStyle ? ' style="'.$eStyle.'"' : '';
$toAppr = ($evt['app'] and !$evt['apd']) ? ' toApprove' : '';
echo "
\n";
$click = ($evt['mayE'] ? 'editE' : 'showE')."({$evt['eid']},'{$date}')";
$onClick = ($eDetails or $evt['mayE']) ? "class='evtTitle point' onclick=\"{$click};\"" : "class='evtTitle arrow'";
echo "{$chBox}{$dTime} {$evt['tix']}\n";
if ($set['showImgInMV'] and preg_match_all($rxIMGTags,$evt['des'].$evt['xf1'].$evt['xf2'],$imgs, PREG_SET_ORDER)) {
foreach ($imgs as $img) { echo "
".$img[0]; }
}
echo "\n";
if ($set['showEmlInMV'] and preg_match_all($rxELink, $evt['des'].$evt['xf1'].$evt['xf2'], $emls, PREG_SET_ORDER)) { //display mailto links
foreach ($emls as $eml) { echo $eml[0]."
"; }
}
if ($set['showUrlInMV'] and preg_match_all($rxULink, $evt['des'].$evt['xf1'].$evt['xf2'], $urls, PREG_SET_ORDER)) { //display URL links
foreach ($urls as $url) { echo $url[0]."
"; }
}
echo "
\n";
}
}
//sanity check
if (empty($lcV)) { exit('not permitted ('.substr(basename(__FILE__),0,-4).')'); } //launch via script only
//initialize
$evtList = array();
$cYear = intval(substr($opt['cD'],0,4));
$cMonth = intval(substr($opt['cD'],5,2));
$cDay = intval(substr($opt['cD'],8,2));
// $set['MvWeeksToShow']
if (1 < 2) { //single month
$tfDay = mktime(12,0,0,$cMonth,1, $cYear); //Unix time of 1st day of the month
$prevDate = date("Y-m-d",mktime(12,0,0,$cMonth-1,1,$cYear)); //1st of prev. month
$nextDate = date("Y-m-d",mktime(12,0,0,$cMonth+1,1,$cYear)); //1st of next month
//determine total number of days to show, start date, end date
$sOffset = date("w",$tfDay) - $set['weekStart']; //offset first day
$eOffset = date("t",$tfDay) + $sOffset; //offset last day
$totDays = ($eOffset == 28) ? 28 : (($eOffset > 35) ? 42 : 35); //4, 5 or 6 weeks
$st = $tfDay - $sOffset * 86400; //start time
$et = $st + ($totDays - 1) * 86400; //end time
$sDate = date("Y-m-d",$st);
$eDate = date("Y-m-d",$et);
$header = ''.makeD($opt['cD'],3).'';
} else {
$tcDate = mktime(12,0,0,$cMonth,$cDay,$cYear); //Unix time of cD
$jumpWeeks = $set['MvWeeksToShow'] - intval($set['MvWeeksToShow']*0.5) + 1;
$prevDate = date("Y-m-d",$tcDate - $jumpWeeks * 604800);
$nextDate = date("Y-m-d",$tcDate + $jumpWeeks * 604800);
//determine total number of days to show, start date, end date
$totDays = $set['MvWeeksToShow'] * 7; //number of weeks to show
$sOffset = (date("w",$tcDate) - $set['weekStart'] + 7) % 7; //offset first day
$st = $tcDate - ($sOffset + 7) * 86400; //start time (1 past week)
$et = $st + ($totDays - 1) * 86400; //end time
$sDate = date("Y-m-d",$st);
$eDate = date("Y-m-d",$et);
$header = ''.makeD($sDate,3).' - '.makeD($eDate,3).'';
}
//display header
$dateHdr = !$cH ? $header : "{$header}";
$arrowL = "◀";
$arrowR = "▶";
echo "{$arrowL}{$dateHdr}{$arrowR}
\n";
//display days
$days = ($mode == 'fm') ? '0123456' : $set['workWeekDays']; //days to show
$cWidth = round(98 / strlen($days),1).'%';
//display day headers
echo '\n";
//display calendar
echo '\n";
?>