je suis sur que le probleme, viens se la page " Month.php" qui fait appelle au template apres, donc, dedans il doit manquer un truc pour fair l'appelle a cette fonction ???
script page event.php:
<?php
include '../../mainfile.php';
$GLOBALS['xoopsOption']['template_main'] = 'extcal_event.html';
include XOOPS_ROOT_PATH.'/header.php';
include XOOPS_ROOT_PATH.'/include/comment_view.php';
if(!isset($_GET['event'])) {
$eventId = 0;
} else {
$eventId = intval($_GET['event']);
}
$eventHandler = xoops_getmodulehandler('event', 'extcal');
$fileHandler = xoops_getmodulehandler('file', 'extcal');
$eventmemberHandler = xoops_getmodulehandler('eventmember', 'extcal');
$eventnotmemberHandler = xoops_getmodulehandler('eventnotmember', 'extcal');
$permHandler = ExtcalPerm::getHandler();
// Retriving event
$eventObj = $eventHandler->getEvent($eventId);
if(!$eventObj) {
redirect_header('index.php', 3, '');
}
$event = $eventHandler->objectToArray($eventObj, array('cat_id', 'event_submitter'));
$eventHandler->serverTimeToUserTime($event);
// Adding formated date for start and end event
$eventHandler->formatEventDate($event, $xoopsModuleConfig['event_date_event']);
// Assigning event to the template
$xoopsTpl->assign('event', $event);
// Title of the page
$xoopsTpl->assign('xoops_pagetitle', $event['event_title']);
$lang = array(
'start'=>_MD_EXTCAL_START,
'end'=>_MD_EXTCAL_END,
'contact_info'=>_MD_EXTCAL_CONTACT_INFO,
'email'=>_MD_EXTCAL_EMAIL,
'url'=>_MD_EXTCAL_URL,
'whos_going'=>_MD_EXTCAL_WHOS_GOING,
'whosnot_going'=>_MD_EXTCAL_WHOSNOT_GOING,
'reccur_rule'=>_MD_EXTCAL_RECCUR_RULE,
'posted_by'=>_MD_EXTCAL_POSTED_BY,
'on'=>_MD_EXTCAL_ON
);
// Assigning language data to the template
$xoopsTpl->assign('lang', $lang);
// Getting event attachement
$eventFiles = $fileHandler->objectToArray($fileHandler->getEventFiles($eventId));
$fileHandler->formatFilesSize($eventFiles);
$xoopsTpl->assign('event_attachement', $eventFiles);
// Token to disallow direct posting on membre/nonmember page
$xoopsTpl->assign('token', $GLOBALS['xoopsSecurity']->getTokenHTML());
// ### For Who's Going function ###
// If the who's goging function is enabled
if($xoopsModuleConfig['whos_going']) {
// Retriving member's for this event
$members = $eventmemberHandler->getMembers($eventId);
// Initializing variable
$eventmember['member']['show_button'] = false;
$nbUser = 0;
// Making a list with members and counting regitered user's
foreach($members as $k => $v) {
$nbUser++;
$eventmember['member']['userList'][] = array('uid'=>$k, 'uname'=>$v->getVar('uname'));
}
$eventmember['member']['nbUser'] = $nbUser;
// If the user is logged
if($xoopsUser) {
// Initializing variable
$eventmember['member']['show_button'] = true;
$eventmember['member']['button_disabled'] = '';
// If the user is already restired to this event
if(array_key_exists($xoopsUser->getVar('uid'), $members)) {
$eventmember['member']['button_text'] = _MD_EXTCAL_REMOVE_ME;
$eventmember['member']['joinevent_mode'] = 'remove';
} else {
$eventmember['member']['button_text'] = _MD_EXTCAL_ADD_ME;
$eventmember['member']['joinevent_mode'] = 'add';
// If this event is full
if($event['event_nbmember'] != 0 && $eventmemberHandler->getNbMember($eventId) >= $event['event_nbmember']) {
$eventmember['member']['disabled'] = ' disabled="disabled"';
}
}
}
}
// ### For Who's not Going function ###
// If the who's not goging function is enabled
if($xoopsModuleConfig['whosnot_going']) {
// Retriving not member's for this event
$notmembers = $eventnotmemberHandler->getMembers($eventId);
// Initializing variable
$eventmember['notmember']['show_button'] = false;
$nbUser = 0;
// Making a list with not members
foreach($notmembers as $k => $v) {
$nbUser++;
$eventmember['notmember']['userList'][] = array('uid'=>$k, 'uname'=>$v->getVar('uname'));
}
$eventmember['notmember']['nbUser'] = $nbUser;
// If the user is logged
if($xoopsUser) {
// Initializing variable
$eventmember['notmember']['show_button'] = true;
$eventmember['notmember']['button_disabled'] = '';
// If the user is already restired to this event
if(array_key_exists($xoopsUser->getVar('uid'), $notmembers)) {
$eventmember['notmember']['button_text'] = _MD_EXTCAL_REMOVE_ME;
$eventmember['notmember']['joinevent_mode'] = 'remove';
} else {
$eventmember['notmember']['button_text'] = _MD_EXTCAL_ADD_ME;
$eventmember['notmember']['joinevent_mode'] = 'add';
}
}
}
// If who's going or not going function is enabled
if($xoopsModuleConfig['whos_going'] || $xoopsModuleConfig['whosnot_going']) {
$xoopsTpl->assign('eventmember', $eventmember);
}
// Checking user perm
if($xoopsUser) {
$xoopsTpl->assign('isAdmin', $xoopsUser->isAdmin());
$canEdit = $permHandler->isAllowed($xoopsUser, 'extcal_cat_edit', $event['cat']['cat_id']) && $xoopsUser->getVar('uid') == $event['user']['uid'];
$xoopsTpl->assign('canEdit', $canEdit);
} else {
$xoopsTpl->assign('isAdmin', false);
$xoopsTpl->assign('canEdit', false);
}
$xoopsTpl->assign('whosGoing', $xoopsModuleConfig['whos_going']);
$xoopsTpl->assign('whosNotGoing', $xoopsModuleConfig['whosnot_going']);
include(XOOPS_ROOT_PATH."/footer.php");
?>
Scritp "Month.php"
<?php
function orderEvents($event1, $event2) {
if($event1['event_start'] == $event2['event_start']) {
return 0;
}
if($GLOBALS['xoopsModuleConfig']['sort_order'] == 'ASC') {
$opt1 = -1;
$opt2 = 1;
} else {
$opt1 = 1;
$opt2 = -1;
}
return ($event1['event_start'] < $event2['event_start']) ? $opt1 : $opt2;
}
$year = isset($_GET['year']) ? intval($_GET['year']) : date('Y');
$month = isset($_GET['month']) ? intval($_GET['month']) : date('n');
$cat = isset($_GET['cat']) ? intval($_GET['cat']) : 0;
include '../../mainfile.php';
$GLOBALS['xoopsOption']['template_main'] = 'extcal_month.html';
include XOOPS_ROOT_PATH.'/header.php';
if(!defined('CALENDAR_ROOT')) {
define('CALENDAR_ROOT', XOOPS_ROOT_PATH.'/modules/extcal/class/pear/Calendar/');
}
include XOOPS_ROOT_PATH.'/class/xoopsformloader.php';
require_once CALENDAR_ROOT.'Month/Weekdays.php';
// Getting eXtCal object's handler
$catHandler = xoops_getmodulehandler('cat', 'extcal');
$eventHandler = xoops_getmodulehandler('event', 'extcal');
$extcalTimeHandler = ExtcalTime::getHandler();
// Tooltips include
$xoTheme->addScript('modules/extcal/include/ToolTips.js');
$xoTheme->addStylesheet('modules/extcal/include/style.css');
$lang = array(
'start'=>_MD_EXTCAL_START,
'end'=>_MD_EXTCAL_END,
'calmonth'=>_MD_EXTCAL_NAV_CALMONTH,
'calweek'=>_MD_EXTCAL_NAV_CALWEEK,
'year'=>_MD_EXTCAL_NAV_YEAR,
'month'=>_MD_EXTCAL_NAV_MONTH,
'week'=>_MD_EXTCAL_NAV_WEEK,
'day'=>_MD_EXTCAL_NAV_DAY
);
// Assigning language data to the template
$xoopsTpl->assign('lang', $lang);
// ### Create the navigation form ###
// Year selectbox
$yearSelect = new XoopsFormSelect('', 'year', $year);
for($i=2004;$i<2015;$i++) {
$yearSelect->addOption($i);
}
// Month selectbox
$monthSelect = new XoopsFormSelect('', 'month', $month);
for($i=1;$i<13;$i++) {
$monthSelect->addOption($i, $extcalTimeHandler->getMonthName($i));
}
// Category selectbox
$catsList = $catHandler->getAllCat($xoopsUser);
$catSelect = new XoopsFormSelect('', 'cat', $cat);
$catSelect->addOption(0, ' ');
foreach($catsList as $catList) {
$catSelect->addOption($catList->getVar('cat_id'), $catList->getVar('cat_name'));
}
$form = new XoopsSimpleForm('', 'navigSelectBox', 'month.php', 'get');
$form->addElement($yearSelect);
$form->addElement($monthSelect);
$form->addElement($catSelect);
$form->addElement(new XoopsFormButton("", "", _SEND, "submit"));
// Assigning the form to the template
$form->assign($xoopsTpl);
// Retriving events
$events = $eventHandler->objectToArray($eventHandler->getEventMonth($month, $year, $cat), array('cat_id'));
$eventHandler->serverTimeToUserTimes($events);
// Formating date
$eventHandler->formatEventsDate($events, $xoopsModuleConfig['event_date_year']);
// Treatment for recurring event
$startMonth = mktime(0,0,0,$month,1,$year);
$endMonth = mktime(23,59,59,$month,31,$year);
$eventsArray = array();
foreach($events as $event) {
if(!$event['event_isrecur']) {
// Formating date
$eventHandler->formatEventDate($event, $xoopsModuleConfig['event_date_week']);
$eventsArray[] = $event;
} else {
$recurEvents = $eventHandler->getRecurEventToDisplay($event, $startMonth, $endMonth);
// Formating date
$eventHandler->formatEventsDate($recurEvents, $xoopsModuleConfig['event_date_week']);
$eventsArray = array_merge($eventsArray, $recurEvents);
}
}
// Sort event array by event start
usort($eventsArray, "orderEvents");
// Assigning events to the template
$xoopsTpl->assign('events', $eventsArray);
// Retriving categories
$cats = $catHandler->objectToArray($catHandler->getAllCat($xoopsUser));
// Assigning categories to the template
$xoopsTpl->assign('cats', $cats);
// Making navig data
$monthCalObj = new Calendar_Month_Weekdays($year, $month);
$pMonthCalObj = $monthCalObj->prevMonth('object');
$nMonthCalObj = $monthCalObj->nextMonth('object');
$navig = array(
'prev'=>array(
'uri'=>'year='.$pMonthCalObj->thisYear().'&month='.$pMonthCalObj->thisMonth(),
'name'=>$extcalTimeHandler->getFormatedDate($xoopsModuleConfig['nav_date_month'], $pMonthCalObj->getTimestamp())
),
'this'=>array(
'uri'=>'year='.$monthCalObj->thisYear().'&month='.$monthCalObj->thisMonth(),
'name'=>$extcalTimeHandler->getFormatedDate($xoopsModuleConfig['nav_date_month'], $monthCalObj->getTimestamp())
),
'next'=>array(
'uri'=>'year='.$nMonthCalObj->thisYear().'&month='.$nMonthCalObj->thisMonth(),
'name'=>$extcalTimeHandler->getFormatedDate($xoopsModuleConfig['nav_date_month'], $nMonthCalObj->getTimestamp())
)
);
// Title of the page
$xoopsTpl->assign('xoops_pagetitle', $xoopsModule->getVar('name').' '.$navig['this']['name']);
// Assigning navig data to the template
$xoopsTpl->assign('navig', $navig);
// Assigning current form navig data to the template
$xoopsTpl->assign('selectedCat', $cat);
$xoopsTpl->assign('year', $year);
$xoopsTpl->assign('month', $month);
$xoopsTpl->assign('view', "month");
include XOOPS_ROOT_PATH.'/footer.php';
?>