$domain = "duntonvillage.org.uk";
$referrer = $_SERVER['HTTP_HOST'];
if ((!preg_match("/$domain/", $referrer)) and (!preg_match("/www.$domain/", $referrer))){
echo "Error: Invalid @1 AJAX Calendar PRO license. Please contact www.upoint.info/cgi .";
exit();
}
require_once("header.php");
// init vars
$js='';
$js.='
var site_config_url = "'.$site_config["SITE_URL"].'";
function calendar_display(param){
if(param=="hide"){
var offset_width,offset_height;
offset_height=document.getElementById("id_calendartable").offsetHeight;
offset_width=document.getElementById("id_calendartable").offsetWidth;
document.getElementById("id_calendartable_div").height=offset_height.toString();
document.getElementById("id_calendartable_div").width=offset_width.toString();
document.getElementById("id_calendartable_div").style.display="";
document.getElementById("id_calendartable").style.display="none";
}else{
document.getElementById("id_calendartable").style.display="";
document.getElementById("id_calendartable_div").style.display="none";
}
}
function make_calendar(){
var y=document.getElementById("idselyear");
var m=document.getElementById("idselmonth");
calendar_display("hide");
xajax_make_calendar_a(y.value,m.value);
}
function activate_calender_select(y,m){
document.getElementById("idselmonth").value=m;
document.getElementById("idselyear").value=y;
}
function layer_toggledisplay(layer_id){
var le = document.getElementById(layer_id);
if(le.style.display=="") le.style.display="none";
else le.style.display="";
}
/**************************************** POPUP LAYER ****************************************/
/* customized for calendar publisher pro */
function show_layer(layer_id,center_by){
document.getElementById(layer_id).style.display="";
Locate_center(document.getElementById(layer_id),center_by);
}
function hide_layer(layer_id){
document.getElementById(layer_id).style.display="none";
}
function Locate_center(elmt,center_by){
var posx=0,posy=0;
/* not working on IE
posx = (window.innerWidth/2) - (document.getElementById("popupmenu").offsetWidth/2);
posy = (window.innerHeight/2) - (document.getElementById("popupmenu").offsetHeight/2);
*/
posx = document.getElementById(center_by).offsetLeft + (document.getElementById(center_by).offsetWidth/2) - (elmt.offsetWidth/2);
posy = document.getElementById(center_by).offsetTop + (document.getElementById(center_by).offsetHeight/2) - (elmt.offsetHeight/2);
elmt.style.top=(posy)+"px";
elmt.style.left=(posx)+"px";
}
function show_event_details(y,mn,d,ic,ti,ds,ct,rp){
// grab elements
var e_date = document.getElementById("id_events_details_title");
var e_ic = document.getElementById("id_event_icon");
var e_ti = document.getElementById("id_event_title");
var e_ds = document.getElementById("id_event_description");
var e_ct = document.getElementById("id_event_category");
var e_rp = document.getElementById("id_event_repeat");
// set content from param
e_date.innerHTML = mn + " " + d + ", " + y;
e_ic.setAttribute("src",site_config_url + "/data/icons/" + ic);
e_ti.innerHTML = ti;
e_ds.innerHTML = ds;
e_ct.innerHTML = ct;
if(rp.toString()!="" && rp > 0)
e_rp.innerHTML = "Event is repeated for " + rp + " day(s)";
else
e_rp.innerHTML = "";
// set interface
calendar_display("hide");
show_layer("id_events_details","id_calendar_table_main");
}
';
$smarty->assign("js",$js);
$smarty->assign("form_action",$site_config["SITE_URL"]."/index.php"); // template - form action target
// ########## -start- CALENDAR ##########
{
function make_dateeventdetails($y,$m,$d,$mn){
global $smarty,$flat_files,$path_root,$default_icon,$site_config,$category_icon_extention;
// flat files
$ff = array();
for($i=0; $iget_month($y,$m,0,$flat_files[$i][1],true,$d);
}
}
$c_events = array();
$cday_str = sprintf("%d%02d%02d",$y,$m,$d);
for($i=0; $iassign("category_icon_extention",$category_icon_extention);
$smarty->assign("mevent_y",$y);
$smarty->assign("mevent_mn",$mn);
$smarty->assign("mevent_d",$d);
$smarty->assign("site_config",$site_config);
$smarty->assign("events_m",$c_events);
return $smarty->fetch("event_details.tpl");
}
function singleevent($param_ts,$y,$m,$d,$mn){
global $smarty,$flat_files,$path_root,$default_icon,$site_config,$category_icon_extention;
$ts = $param_ts;
if($ts<0) $ts=$ts*-1;
// flat files
$ff = array();
for($i=0; $iget_single($ts);
}
}
$c_events = array();
//$cday_str = sprintf("%d%02d%02d",$y,$m,$d);
for($i=0; $iassign("category_icon_extention",$category_icon_extention);
$smarty->assign("mevent_y",$y);
$smarty->assign("mevent_mn",$mn);
$smarty->assign("mevent_d",$d);
$smarty->assign("site_config",$site_config);
$smarty->assign("events_m",$c_events);
$smarty->assign("mini_display",1);
return $smarty->fetch("event_details.tpl");
}
function make_calendar($param_ts){
global $smarty,$calendar_months,$flat_files,$calendar_columns_limit,$path_root;
global $default_icon,$enable_tooltip,$year_start,$year_end,$category_icon_extention;
$smarty->assign("category_icon_extention",$category_icon_extention);
$smarty->assign("enable_tooltip",$enable_tooltip);
$select_month = array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
$smarty->assign("select_month",$select_month);
$select_year = array();
for($i=$year_start; $i<=$year_end; $i++){
$select_year[]=$i;
}
$smarty->assign("select_year",$select_year);
$calendar_data=array();
$weeks_dayname=array("Sun","Mon","Tue","Wed","Thu","Fri","Sat");
$timestamp_today=$param_ts;
$date_today=array("day"=>date("j",time()),"month"=>date("n",time()),"year"=>date("Y",time()));
$smarty->assign("date_today",$date_today);
// flat files
$ff = array();
for($i=0; $iget_month($year_counter,$month_counter,$month_nday,$flat_files[$i][1]);
}
}
$iday=1; $iweek=0;
while($iday<=$month_nday){
$c_events = array();
$cday_str = sprintf("%d%02d%02d",$year_counter,$month_counter,$iday);
for($i=0; $i0)
$status="e";
if($date_today["day"] == $iday && $date_today["month"] == $month_counter && $date_today["year"] == $year_counter)
$status = "t" . $status;
$calendar_data[$icol][$iweek][]=array("day"=>$iday,"month"=>$month_counter,"year"=>$year_counter,"dayname"=>date("w",$timestamp_counter),"monthname"=>date("F",$timestamp_counter),"nday"=>$month_nday,"events_data"=>$c_events,"status"=>$status);
if(date("w",$timestamp_counter)==6){
$iweek++;
}
$iday++;
$timestamp_counter=mktime(0,0,0,date("n",$timestamp_counter),$iday,date("Y",$timestamp_counter));
}
}
$smarty->assign("calendar_columns_limit",$calendar_columns_limit);
$smarty->assign("calendar_data",$calendar_data);
return $smarty->fetch("calendar_content_full.tpl");
}
}
// ########## -end- CALENDAR ##########
// ### AJAX
{
// AJAX related
function make_calendar_a($y,$m){
$ts = mktime(0,0,0,$m,1,$y);
$inner_html = make_calendar($ts);
// AJAX related function
$objResponse = new xajaxResponse();
$objResponse->addAssign("id_calendar_content_full", "innerHTML", $inner_html); // update calendar
$objResponse->addScriptCall("calendar_display","show"); // display data
$objResponse->addScriptCall("activate_calender_select",$y,$m); // display data
return $objResponse->getXML();
}
function make_dateeventdetails_a($y,$m,$d,$mn){
$inner_html = make_dateeventdetails($y,$m,$d,$mn);
// AJAX related function
$objResponse = new xajaxResponse();
$objResponse->addAssign("id_mevents_details", "innerHTML", $inner_html); // update calendar
$objResponse->addScriptCall("show_layer","id_mevents_details","id_calendar_table_main"); // display data
//$objResponse->addAlert($inner_html);
return $objResponse->getXML();
}
function singleevent_a($ts,$y,$m,$d,$mn){
$inner_html = singleevent($ts,$y,$m,$d,$mn);
// AJAX related function
$objResponse = new xajaxResponse();
$objResponse->addAssign("id_mevents_details", "innerHTML", $inner_html); // update calendar
$objResponse->addScriptCall("show_layer","id_mevents_details","id_calendar_table_main"); // display data
return $objResponse->getXML();
}
}
$smarty->assign("calendar_content_full",make_calendar(time()));
$xajax->processRequests();
// template - display
$smarty->display("month.tpl");
exit;
?>