Version 3.1.4

This commit is contained in:
Neo committed 2025-12-19 00:32:22 -08:00
1 parent 1d4720f3e2
commit ae5c01cc78
2563 files changed
+283048 -240689

No files matched your search

@@ -1,166 +1,171 @@
<?php
/**
* Invision Power Services
* IP.Board v3.0.5
* Calendar core extensions
* Last Updated: $LastChangedDate: 2009-07-28 20:26:37 -0400 (Tue, 28 Jul 2009) $
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @since 27th January 2004
* @version $Rev: 4948 $
*
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
class calendarPermMappingCalendar
{
/**
* Mapping of keys to columns
*
* @access private
* @var array
*/
private $mapping = array(
'view' => 'perm_view',
'start' => 'perm_2',
'nomod' => 'perm_3',
);
/**
* Mapping of keys to names
*
* @access private
* @var array
*/
private $perm_names = array(
'view' => 'Show Calendar',
'start' => 'Create Events',
'nomod' => 'Bypass Moderation',
);
/**
* Mapping of keys to background colors for the form
*
* @access private
* @var array
*/
private $perm_colors = array(
'view' => '#fff0f2',
'start' => '#effff6',
'nomod' => '#edfaff',
);
/**
* Method to pull the key/column mapping
*
* @access public
* @return array
*/
public function getMapping()
{
return $this->mapping;
}
/**
* Method to pull the key/name mapping
*
* @access public
* @return array
*/
public function getPermNames()
{
return $this->perm_names;
}
/**
* Method to pull the key/color mapping
*
* @access public
* @return array
*/
public function getPermColors()
{
return $this->perm_colors;
}
}
/**
* Invision Power Services
* IP.Board v3.0.5
* Library: Handle public session data
* Last Updated: $Date: 2009-07-28 20:26:37 -0400 (Tue, 28 Jul 2009) $
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @since 12th March 2002
* @version $Revision: 4948 $
*
*/
class publicSessions__calendar
{
/**
* Return session variables for this application
*
* current_appcomponent, current_module and current_section are automatically
* stored. This function allows you to add specific variables in.
*
* @access public
* @author Matt Mecham
* @return array
* @todo [Future] Store which event or calendar a user is viewing?
*/
public function getSessionVariables()
{
return array();
}
/**
* Parse/format the online list data for the records
*
* @access public
* @author Brandon Farber
* @param array Online list rows to check against
* @return array Online list rows parsed
*/
public function parseOnlineEntries( $rows )
{
if( !is_array($rows) OR !count($rows) )
{
return $rows;
}
$final = array();
//-----------------------------------------
// Extract the topic/forum data
//-----------------------------------------
foreach( $rows as $row )
{
if( $row['current_appcomponent'] == 'calendar' )
{
$row['where_line'] = ipsRegistry::getClass( 'class_localization' )->words['WHERE_calendar'];
$row['where_link'] = 'app=calendar&amp;module=calendar&amp;section=calendars';
}
$final[ $row['id'] ] = $row;
}
return $final;
}
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Calendar core extensions
* Last Updated: $LastChangedDate: 2010-09-08 22:56:21 -0400 (Wed, 08 Sep 2010) $
* </pre>
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @since 27th January 2004
* @version $Rev: 6843 $
*
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
class calendarPermMappingCalendar
{
/**
* Mapping of keys to columns
*
* @access private
* @var array
*/
private $mapping = array(
'view' => 'perm_view',
'start' => 'perm_2',
'nomod' => 'perm_3',
);
/**
* Mapping of keys to names
*
* @access private
* @var array
*/
private $perm_names = array(
'view' => 'Show Calendar',
'start' => 'Create Events',
'nomod' => 'Bypass Moderation',
);
/**
* Mapping of keys to background colors for the form
*
* @access private
* @var array
*/
private $perm_colors = array(
'view' => '#fff0f2',
'start' => '#effff6',
'nomod' => '#edfaff',
);
/**
* Method to pull the key/column mapping
*
* @access public
* @return array
*/
public function getMapping()
{
return $this->mapping;
}
/**
* Method to pull the key/name mapping
*
* @access public
* @return array
*/
public function getPermNames()
{
return $this->perm_names;
}
/**
* Method to pull the key/color mapping
*
* @access public
* @return array
*/
public function getPermColors()
{
return $this->perm_colors;
}
}
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Library: Handle public session data
* Last Updated: $Date: 2010-09-08 22:56:21 -0400 (Wed, 08 Sep 2010) $
* </pre>
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @since 12th March 2002
* @version $Revision: 6843 $
*
*/
class publicSessions__calendar
{
/**
* Return session variables for this application
*
* current_appcomponent, current_module and current_section are automatically
* stored. This function allows you to add specific variables in.
*
* @access public
* @author Matt Mecham
* @return array
* @todo [Future] Store which event or calendar a user is viewing?
*/
public function getSessionVariables()
{
return array();
}
/**
* Parse/format the online list data for the records
*
* @access public
* @author Brandon Farber
* @param array Online list rows to check against
* @return array Online list rows parsed
*/
public function parseOnlineEntries( $rows )
{
if( !is_array($rows) OR !count($rows) )
{
return $rows;
}
$final = array();
//-----------------------------------------
// Extract the topic/forum data
//-----------------------------------------
foreach( $rows as $row )
{
if( $row['current_appcomponent'] == 'calendar' )
{
$row['where_line'] = ipsRegistry::getClass( 'class_localization' )->words['WHERE_calendar'];
$row['where_link'] = 'app=calendar&amp;module=calendar&amp;section=calendars';
$row['_whereLinkSeo'] = ipsRegistry::getClass('output')->formatUrl( ipsRegistry::getClass('output')->buildUrl( 'app=calendar', 'public' ), 'calendar', 'app=calendar' );
}
$final[ $row['id'] ] = $row;
}
return $final;
}
}
@@ -1,62 +1,65 @@
<?php
/**
* Invision Power Services
* IP.Board v3.0.5
* Core variables for calendar
*
* @author $author$
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @version $Rev: 5462 $
**/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
$_LOAD = array();
$_LOAD['calendars'] = 1;
$CACHE['calendars'] = array(
'array' => 1,
'allow_unload' => 0,
'default_load' => 1,
'recache_file' => IPSLib::getAppDir( 'calendar' ) . '/modules_admin/calendar/calendars.php',
'recache_class' => 'admin_calendar_calendar_calendars',
'recache_function' => 'calendarsRebuildCache'
);
$CACHE['birthdays'] = array(
'array' => 1,
'allow_unload' => 0,
'default_load' => 1,
'recache_file' => IPSLib::getAppDir( 'calendar' ) . '/modules_admin/calendar/calendars.php',
'recache_class' => 'admin_calendar_calendar_calendars',
'recache_function' => 'calendarRebuildCache'
);
$CACHE['calendar'] = array(
'array' => 1,
'allow_unload' => 0,
'default_load' => 1,
'recache_file' => IPSLib::getAppDir( 'calendar' ) . '/modules_admin/calendar/calendars.php',
'recache_class' => 'admin_calendar_calendar_calendars',
'recache_function' => 'calendarRebuildCache'
);
$CACHE['rss_calendar'] = array(
'array' => 1,
'allow_unload' => 0,
'default_load' => 1,
'skip_rebuild_when_upgrading' => 1,
'recache_file' => IPSLib::getAppDir( 'calendar' ) . '/modules_admin/calendar/calendars.php',
'recache_class' => 'admin_calendar_calendar_calendars',
'recache_function' => 'calendarRSSCache'
);
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Core variables for calendar
* Last Updated: $Date: 2010-09-24 21:21:39 -0400 (Fri, 24 Sep 2010) $
* </pre>
*
* @author $author$
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @version $Rev: 6915 $
**/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
$_LOAD = array();
$_LOAD['calendars'] = 1;
$CACHE['calendars'] = array(
'array' => 1,
'allow_unload' => 0,
'default_load' => 1,
'recache_file' => IPSLib::getAppDir( 'calendar' ) . '/modules_admin/calendar/calendars.php',
'recache_class' => 'admin_calendar_calendar_calendars',
'recache_function' => 'calendarsRebuildCache'
);
$CACHE['birthdays'] = array(
'array' => 1,
'allow_unload' => 0,
'default_load' => 1,
'recache_file' => IPSLib::getAppDir( 'calendar' ) . '/modules_admin/calendar/calendars.php',
'recache_class' => 'admin_calendar_calendar_calendars',
'recache_function' => 'calendarRebuildCache'
);
$CACHE['calendar'] = array(
'array' => 1,
'allow_unload' => 0,
'default_load' => 1,
'recache_file' => IPSLib::getAppDir( 'calendar' ) . '/modules_admin/calendar/calendars.php',
'recache_class' => 'admin_calendar_calendar_calendars',
'recache_function' => 'calendarRebuildCache'
);
$CACHE['rss_calendar'] = array(
'array' => 1,
'allow_unload' => 0,
'default_load' => 1,
'skip_rebuild_when_upgrading' => 1,
'recache_file' => IPSLib::getAppDir( 'calendar' ) . '/modules_admin/calendar/calendars.php',
'recache_class' => 'admin_calendar_calendar_calendars',
'recache_function' => 'calendarRSSCache'
);
@@ -0,0 +1,25 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Define data hook locations (Calendar)
* Last Updated: $Date: 2010-10-12 13:04:59 -0400 (Tue, 12 Oct 2010) $
* </pre>
*
* @author $Author: ips_terabyte $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Core
* @link http://www.invisionpower.com
* @version $Rev: 6964 $
*/
$dataHookLocations = array(
/* POSTING DATA LOCATIONS */
array( 'calendarAddEvent', 'Add Calendar Event' ),
array( 'calendarEditEvent', 'Edit Calendar Event' ),
);
@@ -1,34 +1,36 @@
<?php
/**
* Invision Power Services
* IP.Board v3.0.5
* BBCode Management : Determines if bbcode can be used in this section
* Last Updated: $LastChangedDate: 2009-07-28 20:26:37 -0400 (Tue, 28 Jul 2009) $
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @since 27th January 2004
* @version $Rev: 4948 $
*
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
/*
* An array of key => value pairs
* When going to parse, the key should be passed to the editor
* to determine which bbcodes should be parsed in the section
*
*/
$BBCODE = array(
'calendar' => ipsRegistry::getClass('class_localization')->words['ctype__calendar'],
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* BBCode Management : Determines if bbcode can be used in this section
* Last Updated: $LastChangedDate: 2010-01-15 10:18:44 -0500 (Fri, 15 Jan 2010) $
* </pre>
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @since 27th January 2004
* @version $Rev: 5713 $
*
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
/*
* An array of key => value pairs
* When going to parse, the key should be passed to the editor
* to determine which bbcodes should be parsed in the section
*
*/
$BBCODE = array(
'calendar' => ipsRegistry::getClass('class_localization')->words['ctype__calendar'],
);
@@ -1,17 +1,19 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.0.5
* IP.Board v3.1.4
* Sets up SEO templates
* Last Updated: $Date$
* Last Updated: $Date: 2010-04-13 07:32:04 -0400 (Tue, 13 Apr 2010) $
* </pre>
*
* @author $Author$
* @author $Author: matt $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Forums
* @link http://www.iinvisionpower.com
* @version $Rev$
* @link http://www.invisionpower.com
* @version $Rev: 6099 $
*
*/
@@ -68,7 +70,7 @@ $_SEOTEMPLATES = array(
'allowRedirect' => 1,
'out' => array( '#app=calendar$#i', 'calendar/' ),
'in' => array(
'regex' => "#/calendar/?$#i",
'regex' => "#/calendar(/|$|\?)#i",
'matches' => array( array( 'app', 'calendar' ) )
)
),
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1,90 +1,92 @@
<?php
/**
* Invision Power Services
* IP.Board v3.0.5
* Calendar core extensions
* Last Updated: $LastChangedDate: 2009-02-23 21:27:51 +0000 (Mon, 23 Feb 2009) $
*
* @author $Author: josh $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @since 27th January 2004
* @version $Rev: 4081 $
*
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
/**
* Member Synchronization extensions
*
* @author $author$
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @version $Rev: 4081 $
**/
class calendarMemberSync
{
/**
* Registry reference
*
* @access public
* @var object
*/
public $registry;
/**
* CONSTRUCTOR
*
* @access public
* @return void
**/
public function __construct()
{
$this->registry = ipsRegistry::instance();
}
/**
* This method is called after a member account has been removed
*
* @access public
* @param string $ids SQL IN() clause
* @return void
**/
public function onDelete( $mids )
{
if( $this->registry->DB()->checkForTable( 'cal_events' ) )
{
$this->registry->DB()->update( 'cal_events', array( 'event_member_id' => 0 ), 'event_member_id' . $mids );
}
}
/**
* This method is called after a member's account has been merged into another member's account
*
* @access public
* @param array $member Member account being kept
* @param array $member2 Member account being removed
* @return void
**/
public function onMerge( $member, $member2 )
{
IPSDebug::addLogMessage( "Markers init done:", 'merge', $member );
if( $this->registry->DB()->checkForTable( 'cal_events' ) )
{
$this->registry->DB()->update( 'cal_events', array( 'event_member_id' => intval($member['member_id']) ), "event_member_id=" . $member2['member_id'] );
}
}
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Calendar core extensions
* Last Updated: $LastChangedDate: 2010-01-15 10:18:44 -0500 (Fri, 15 Jan 2010) $
* </pre>
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @since 27th January 2004
* @version $Rev: 5713 $
*
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
/**
* Member Synchronization extensions
*
* @author $author$
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @version $Rev: 5713 $
**/
class calendarMemberSync
{
/**
* Registry reference
*
* @access public
* @var object
*/
public $registry;
/**
* CONSTRUCTOR
*
* @access public
* @return void
**/
public function __construct()
{
$this->registry = ipsRegistry::instance();
}
/**
* This method is called after a member account has been removed
*
* @access public
* @param string $ids SQL IN() clause
* @return void
**/
public function onDelete( $mids )
{
if( $this->registry->DB()->checkForTable( 'cal_events' ) )
{
$this->registry->DB()->update( 'cal_events', array( 'event_member_id' => 0 ), 'event_member_id' . $mids );
}
}
/**
* This method is called after a member's account has been merged into another member's account
*
* @access public
* @param array $member Member account being kept
* @param array $member2 Member account being removed
* @return void
**/
public function onMerge( $member, $member2 )
{
IPSDebug::addLogMessage( "Markers init done:", 'merge', $member );
if( $this->registry->DB()->checkForTable( 'cal_events' ) )
{
$this->registry->DB()->update( 'cal_events', array( 'event_member_id' => intval($member['member_id']) ), "event_member_id=" . $member2['member_id'] );
}
}
}
@@ -1,19 +1,21 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.0.5
* IP.Board v3.1.4
* Portal plugin: calendar
* Last Updated: $Date: 2009-07-28 20:26:37 -0400 (Tue, 28 Jul 2009) $
* Last Updated: $Date: 2010-01-15 10:18:44 -0500 (Fri, 15 Jan 2010) $
* </pre>
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @link http://www.invisionpower.com
* @since 1st march 2002
* @version $Revision: 4948 $
* @version $Revision: 5713 $
*
*/
@@ -1,20 +1,20 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.0.5
* IP.Board v3.1.4
* Portal plugin: calendar
* Last Updated: $Date: 2009-10-13 17:40:38 -0400 (Tue, 13 Oct 2009) $
* Last Updated: $Date: 2010-10-22 06:13:38 -0400 (Fri, 22 Oct 2010) $
* </pre>
*
* @author $Author: josh $
* @author $Author: ips_terabyte $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @link http://www.invisionpower.com
* @since 1st march 2002
* @version $Revision: 5228 $
*
* @version $Revision: 7016 $
*/
if ( ! defined( 'IN_IPB' ) )
@@ -28,7 +28,6 @@ class ppi_calendar extends public_portal_portal_portal
/**
* Initialize module
*
* @access public
* @return void
*/
public function init()
@@ -38,23 +37,16 @@ class ppi_calendar extends public_portal_portal_portal
/**
* Show the current calendar month on the portal
*
* @access public
* @return string HTML content to replace tag with
*/
public function calendar_show_current_month()
{
/* If the calendar is not installed, just return */
if( ! IPSLib::appIsInstalled( 'calendar' ) )
{
return '';
}
//-----------------------------------------
// Grab calendar class
//-----------------------------------------
require_once( IPSLib::getAppDir( 'calendar', 'calendar' ) . '/calendars.php' );
$calendar = new public_calendar_calendar_calendars();
$classToLoad = IPSLib::loadActionOverloader( IPSLib::getAppDir( 'calendar' ) . '/modules_public/calendar/calendars.php', 'public_calendar_calendar_calendars' );
$calendar = new $classToLoad();
$calendar->makeRegistryShortcuts( $this->registry );
$calendar->initCalendar(true);
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -0,0 +1,405 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Report Center :: Calendar plugin
* Last Updated: $LastChangedDate: 2010-01-15 10:18:44 -0500 (Fri, 15 Jan 2010) $
* </pre>
*
* @author $Author: bfarber $
* @author Based on original "Report Center" by Luke Scott
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @version $Rev: 5713 $
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded 'admin.php'.";
exit();
}
class calendar_plugin
{
/**#@+
* Registry objects
*
* @access protected
* @var object
*/
protected $registry;
protected $DB;
protected $settings;
protected $request;
protected $lang;
protected $member;
protected $cache;
/**#@-*/
/**
* Holds extra data for the plugin
*
* @access private
* @var array Data specific to the plugin
*/
public $_extra;
/**
* Constructor
*
* @access public
* @param object Registry object
* @return void
*/
public function __construct( ipsRegistry $registry )
{
//-----------------------------------------
// Make object
//-----------------------------------------
$this->registry = $registry;
$this->DB = $this->registry->DB();
$this->settings =& $this->registry->fetchSettings();
$this->request =& $this->registry->fetchRequest();
$this->member = $this->registry->member();
$this->memberData =& $this->registry->member()->fetchMemberData();
$this->cache = $this->registry->cache();
$this->caches =& $this->registry->cache()->fetchCaches();
$this->lang = $this->registry->class_localization;
}
/**
* Display the form for extra data in the ACP
*
* @access public
* @param array Plugin data
* @param object HTML object
* @return string HTML to add to the form
*/
public function displayAdminForm( $plugin_data, &$html )
{
$return = '';
return $return;
}
/**
* Process the plugin's form fields for saving
*
* @access public
* @param array Plugin data for save
* @return string Error message
*/
public function processAdminForm( &$save_data_array )
{
return '';
}
/**
* Update timestamp for report
*
* @access public
* @param array New reports
* @param array New members cache
* @return boolean
*/
public function updateReportsTimestamp( $new_reports, &$new_members_cache )
{
return true;
}
/**
* Get report permissions (only supermods can moderate calendar)
*
* @access public
* @param string Type of perms to check
* @param array Permissions data
* @param array group ids
* @param string Special permissions
* @return boolean
*/
public function getReportPermissions( $check, $com_dat, $group_ids, &$to_return )
{
if( $this->_extra['report_bypass'] == 0 || $this->memberData['g_is_supmod'] == 1 )
{
return true;
}
else
{
return false;
}
}
/**
* Show the report form for this module
*
* @access public
* @param array Application data
* @return string HTML form information
*/
public function reportForm( $com_dat )
{
$this->registry->class_localization->loadLanguageFile( array( 'public_calendar' ), 'calendar' );
$eventid = intval($this->request['event_id']);
if( ! $eventid )
{
$this->registry->output->showError( 'reports_no_event', 10177 );
}
/**
* Load event
*/
$event = $this->DB->buildAndFetch( array(
'select' => 'e.*',
'from' => array( 'cal_events' => 'e' ),
'where' => 'e.event_id=' . $eventid,
'add_join' => array(
array(
'select' => 'c.*',
'from' => array( 'cal_calendars' => 'c' ),
'where' => 'c.cal_id=e.event_calendar_id',
'type' => 'left',
)
)
) );
/* Loop through the cache and build calendar jump */
if ( count( $this->caches['calendars'] ) AND is_array( $this->caches['calendars'] ) )
{
foreach( $this->caches['calendars'] as $cal_id => $cal )
{
if( $cal_id == $event['event_calendar_id'] )
{
/* Got a perm */
if( ! $this->registry->permissions->check( 'view', $cal ) )
{
$this->registry->output->showError( 'reports_no_event', 10178 );
}
}
}
}
$ex_form_data = array(
'event_id' => $eventid,
'ctyp' => 'calendar',
'title' => $event['event_title']
);
$this->registry->output->setTitle( $this->lang->words['report_cal_page'] );
$this->registry->output->addNavigation( $this->lang->words['t_welcome'], "app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" );
$this->registry->output->addNavigation( $this->lang->words['report_cal_page'], '' );
$this->lang->words['report_basic_title'] = $this->lang->words['report_cal_title'];
$this->lang->words['report_basic_url_title'] = $this->lang->words['report_cal_title'];
$this->lang->words['report_basic_enter'] = $this->lang->words['report_cal_msg'];
$url = $this->settings['base_url'] . "app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}";
return $this->registry->getClass('reportLibrary')->showReportForm( $event['event_title'], $url, $ex_form_data );
}
/**
* Get section and link
*
* @access public
* @param array Report data
* @return array Section/link
*/
public function giveSectionLinkTitle( $report_row )
{
ipsRegistry::_loadAppCoreVariables( 'calendar' );
$calendarCache = $this->cache->getCache('calendars');
return array(
'title' => $calendarCache[ $report_row['exdat1'] ]['cal_title'],
'url' => "/index.php?app=calendar&amp;module=calendar&amp;cal_id={$report_row['exdat1']}",
);
}
/**
* Process a report and save the data appropriate
*
* @access public
* @param array Report data
* @return array Data from saving the report
*/
public function processReport( $com_dat )
{
$eventid = intval($this->request['event_id']);
if( ! $eventid )
{
$this->registry->output->showError( 'reports_no_event', 10179 );
}
/**
* Load event
*/
$event = $this->DB->buildAndFetch( array(
'select' => 'e.*',
'from' => array( 'cal_events' => 'e' ),
'where' => 'e.event_id=' . $eventid,
'add_join' => array(
array(
'select' => 'c.*',
'from' => array( 'cal_calendars' => 'c' ),
'where' => 'c.cal_id=e.event_calendar_id',
'type' => 'left',
)
)
) );
/* Loop through the cache and build calendar jump */
if ( count( $this->caches['calendars'] ) AND is_array( $this->caches['calendars'] ) )
{
foreach( $this->caches['calendars'] as $cal_id => $cal )
{
if( $cal_id == $event['event_calendar_id'] )
{
/* Got a perm */
if( ! $this->registry->permissions->check( 'view', $cal ) )
{
$this->registry->output->showError( 'reports_no_event', 10180 );
}
}
}
}
$url = "app=calendar&module=calendar&cal_id={$event['event_calendar_id']}&do=showevent&event_id={$event['event_id']}";
$return_data = array();
$a_url = str_replace("&", "&amp;", $url);
$uid = md5( 'cal_' . $eventid . '_' . $com_dat['com_id'] );
$status = array();
$this->DB->build( array( 'select' => 'status, is_new, is_complete',
'from' => 'rc_status',
'where' => "is_new=1 OR is_complete=1",
) );
$this->DB->execute();
while( $row = $this->DB->fetch() )
{
if( $row['is_new'] == 1 )
{
$status['new'] = $row['status'];
}
elseif( $row['is_complete'] == 1 )
{
$status['complete'] = $row['status'];
}
}
$this->DB->build( array( 'select' => 'id', 'from' => 'rc_reports_index', 'where' => "uid='{$uid}'" ) );
$this->DB->execute();
if( $this->DB->getTotalRows() == 0 )
{
$built_report_main = array(
'uid' => $uid,
'title' => $this->request['title'],
'status' => $status['new'],
'url' => '/index.php?' . $a_url,
'rc_class' => $com_dat['com_id'],
'updated_by' => $this->memberData['member_id'],
'date_updated' => time(),
'date_created' => time(),
'exdat1' => $event['event_calendar_id'],
'exdat2' => $event['event_id'],
'exdat3' => 0
);
$this->DB->insert( 'rc_reports_index', $built_report_main );
$rid = $this->DB->getInsertId();
}
else
{
$the_report = $this->DB->fetch();
$rid = $the_report['id'];
$this->DB->update( 'rc_reports_index', array( 'date_updated' => time(), 'status' => $status['new'] ), "id='{$rid}'" );
}
IPSText::getTextClass('bbcode')->parse_bbcode = 1;
IPSText::getTextClass('bbcode')->parse_html = 0;
IPSText::getTextClass('bbcode')->parse_emoticons = 1;
IPSText::getTextClass('bbcode')->parse_nl2br = 1;
IPSText::getTextClass('bbcode')->parsing_section = 'reports';
$build_report = array(
'rid' => $rid,
'report' => IPSText::getTextClass('bbcode')->preDbParse( $this->request['message'] ),
'report_by' => $this->memberData['member_id'],
'date_reported' => time(),
);
$this->DB->insert( 'rc_reports', $build_report );
$reports = $this->DB->buildAndFetch( array( 'select' => 'COUNT(*) as total', 'from' => 'rc_reports', 'where' => "rid='{$rid}'" ) );
$this->DB->update( 'rc_reports_index', array( 'num_reports' => $reports['total'] ), "id='{$rid}'" );
$return_data = array(
'REDIRECT_URL' => $a_url,
'REPORT_INDEX' => $rid,
'SAVED_URL' => '/index.php?' . $url,
'REPORT' => $build_report['report']
);
return $return_data;
}
/**
* Where to send user after report is submitted
*
* @access public
* @param array Report data
* @return void
*/
public function reportRedirect( $report_data )
{
$this->registry->output->redirectScreen( $this->lang->words['report_sending'], $this->settings['base_url'] . $report_data['REDIRECT_URL'], true );
}
/**
* Retrieve list of users to send notifications to
*
* @access public
* @param string Group ids
* @param array Report data
* @return array Array of users to PM/Email
*/
public function getNotificationList( $group_ids, $report_data )
{
$notify = array();
$this->DB->build( array(
'select' => 'noti.*',
'from' => array( 'rc_modpref' => 'noti' ),
'where' => 'mem.member_group_id IN(' . $group_ids . ')',
'add_join' => array(
array(
'select' => 'mem.member_id, mem.members_display_name as name, mem.language, mem.members_disable_pm, mem.email, mem.member_group_id',
'from' => array( 'members' => 'mem' ),
'where' => 'mem.member_id=noti.mem_id',
)
)
) );
$this->DB->execute();
if( $this->DB->getTotalRows() > 0 )
{
while( $row = $this->DB->fetch() )
{
$notify[] = $row;
}
}
return $notify;
}
}
@@ -0,0 +1,10 @@
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1,153 +1,140 @@
<?php
/**
* Invision Power Services
* IP.Board v3.0.5
* RSS output plugin :: calendar
* Last Updated: $Date: 2009-12-07 21:57:46 -0500 (Mon, 07 Dec 2009) $
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @since 6/24/2008
* @version $Revision: 5529 $
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
class rss_output_calendar
{
/**
* Expiration date
*
* @access private
* @var integer Expiration timestamp
*/
private $expires = 0;
/**
* Grab the RSS links
*
* @access public
* @return string RSS document
*/
public function getRssLinks()
{
if( !IPSLib::appIsInstalled('calendar') )
{
return array();
}
$return = array();
$_calendarCache = ipsRegistry::cache()->getCache('calendars');
if( is_array($_calendarCache) AND count($_calendarCache) )
{
foreach( $_calendarCache as $r )
{
/* Got a perm */
if( ! ipsRegistry::getClass( 'permissions' )->check( 'view', $r ) )
{
continue;
}
$return[] = array( 'title' => $r['cal_title'], 'url' => ipsRegistry::getClass('output')->formatUrl( ipsRegistry::$settings['board_url'] . "/index.php?app=core&amp;module=global&amp;section=rss&amp;type=calendar&amp;id=" . $r['cal_id'], '%%' . $r['cal_title'] . '%%', 'section=rss2' ) );
}
}
return $return;
}
/**
* Grab the RSS document content and return it
*
* @access public
* @return string RSS document
*/
public function returnRSSDocument()
{
if( !IPSLib::appIsInstalled('calendar') )
{
return array();
}
//-----------------------------------------
// INIT
//-----------------------------------------
$cal_id = intval( ipsRegistry::$request['id'] );
$rss_data = array();
$to_print = '';
$this->expires = time();
//-----------------------------------------
// Get RSS export
//-----------------------------------------
$rss_data = ipsRegistry::DB()->buildAndFetch( array( 'select' => '*',
'from' => 'cal_calendars',
'where' => 'cal_id=' . $cal_id ) );
//-----------------------------------------
// Got one?
//-----------------------------------------
if ( $rss_data['cal_id'] AND $rss_data['cal_rss_export'] )
{
//-----------------------------------------
// Correct expires time
//-----------------------------------------
$this->expires = $this->expires + ($rss_data['cal_rss_update'] * 60);
//-----------------------------------------
// Need to recache?
//-----------------------------------------
$time_check = time() - ( $rss_data['cal_rss_update'] * 60 );
if ( ( ! $rss_data['cal_rss_cache'] ) OR $time_check > $rss_data['cal_rss_update_last'] )
{
//-----------------------------------------
// Yes
//-----------------------------------------
define( 'IN_ACP', 1 );
require_once( IPSLib::getAppDir( 'calendar' ) . '/modules_admin/calendar/calendars.php' );
$rss_export = new admin_calendar_calendar_calendars();
$rss_export->makeRegistryShortcuts( ipsRegistry::instance() );
return $rss_export->calendarRSSCache( $rss_data['cal_id'], 0 );
}
else
{
//-----------------------------------------
// No
//-----------------------------------------
return $rss_data['cal_rss_cache'];
}
}
}
/**
* Grab the RSS document expiration timestamp
*
* @access public
* @return integer Expiration timestamp
*/
public function grabExpiryDate()
{
return $this->expires ? $this->expires : time();
}
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* RSS output plugin :: calendar
* Last Updated: $Date: 2010-10-20 13:11:07 -0400 (Wed, 20 Oct 2010) $
* </pre>
*
* @author $Author: ips_terabyte $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @since 6/24/2008
* @version $Revision: 7005 $
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
class rss_output_calendar
{
/**
* Expiration date
*
* @var integer Expiration timestamp
*/
private $expires = 0;
/**
* Grab the RSS links
*
* @return string RSS document
*/
public function getRssLinks()
{
$return = array();
$_calendarCache = ipsRegistry::cache()->getCache('calendars');
if( is_array($_calendarCache) AND count($_calendarCache) )
{
foreach( $_calendarCache as $r )
{
/* Got a perm */
if( ! ipsRegistry::getClass( 'permissions' )->check( 'view', $r ) || !$r['cal_rss_export'] )
{
continue;
}
$return[] = array( 'title' => $r['cal_title'], 'url' => ipsRegistry::getClass('output')->formatUrl( ipsRegistry::$settings['board_url'] . "/index.php?app=core&amp;module=global&amp;section=rss&amp;type=calendar&amp;id=" . $r['cal_id'], '%%' . $r['cal_title'] . '%%', 'section=rss2' ) );
}
}
return $return;
}
/**
* Grab the RSS document content and return it
*
* @return string RSS document
*/
public function returnRSSDocument()
{
//-----------------------------------------
// INIT
//-----------------------------------------
$cal_id = intval( ipsRegistry::$request['id'] );
$rss_data = array();
$to_print = '';
$this->expires = time();
//-----------------------------------------
// Get RSS export
//-----------------------------------------
$rss_data = ipsRegistry::DB()->buildAndFetch( array( 'select' => '*',
'from' => 'cal_calendars',
'where' => 'cal_id=' . $cal_id ) );
//-----------------------------------------
// Got one?
//-----------------------------------------
if ( $rss_data['cal_id'] AND $rss_data['cal_rss_export'] )
{
//-----------------------------------------
// Correct expires time
//-----------------------------------------
$this->expires = $this->expires + ($rss_data['cal_rss_update'] * 60);
//-----------------------------------------
// Need to recache?
//-----------------------------------------
$time_check = time() - ( $rss_data['cal_rss_update'] * 60 );
if ( ( ! $rss_data['cal_rss_cache'] ) OR $time_check > $rss_data['cal_rss_update_last'] )
{
//-----------------------------------------
// Yes
//-----------------------------------------
define( 'IN_ACP', 1 );
$classToLoad = IPSLib::loadActionOverloader( IPSLib::getAppDir( 'calendar' ) . '/modules_admin/calendar/calendars.php', 'admin_calendar_calendar_calendars' );
$rss_export = new $classToLoad();
$rss_export->makeRegistryShortcuts( ipsRegistry::instance() );
return $rss_export->calendarRSSCache( $rss_data['cal_id'], 0 );
}
else
{
//-----------------------------------------
// No
//-----------------------------------------
return $rss_data['cal_rss_cache'];
}
}
}
/**
* Grab the RSS document expiration timestamp
*
* @return integer Expiration timestamp
*/
public function grabExpiryDate()
{
return $this->expires ? $this->expires : time();
}
}
@@ -0,0 +1,35 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Config file
* Last Updated: $Date: 2010-02-19 01:29:54 +0000 (Fri, 19 Feb 2010) $
* </pre>
*
* @author $author$
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @version $Rev: 5855 $
**/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
/* Can search with this app */
$CONFIG['can_search'] = 1;
/* Can view new content with this app */
$CONFIG['can_viewNewContent'] = 1;
/* Can fetch active content with this app */
$CONFIG['can_activeContent'] = 1;
/* Can fetch user generated content */
$CONFIG['can_userContent'] = 1;
@@ -0,0 +1,10 @@
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -0,0 +1,545 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Basic Calendar Search
* Last Updated: $Date: 2010-02-23 12:38:11 +0000 (Tue, 23 Feb 2010) $
* </pre>
*
* @author $Author: matt $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @version $Rev: 5861 $
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
class search_engine_calendar extends search_engine
{
/**
* Constructor
*/
public function __construct( ipsRegistry $registry )
{
parent::__construct( $registry );
}
/**
* Perform a search.
* Returns an array of a total count (total number of matches)
* and an array of IDs ( 0 => 1203, 1 => 928, 2 => 2938 ).. matching the required number based on pagination. The ids returned would be based on the filters and type of search
*
* So if we had 1000 replies, and we are on page 2 of 25 per page, we'd return 25 items offset by 25
*
* @access public
* @return array
*/
public function search()
{
/* INIT */
$count = 0;
$results = array();
$sort_by = IPSSearchRegistry::get('in.search_sort_by');
$sort_order = IPSSearchRegistry::get('in.search_sort_order');
$search_term = IPSSearchRegistry::get('in.clean_search_term');
$content_title_only = IPSSearchRegistry::get('opt.searchTitleOnly');
$post_search_only = IPSSearchRegistry::get('opt.onlySearchPosts');
$order_dir = ( $sort_order == 'asc' ) ? 'asc' : 'desc';
$sortKey = '';
$sortType = '';
$rows = array();
if ( IPSSearchRegistry::get('opt.noPostPreview') OR IPSSearchRegistry::get('display.onlyTitles') )
{
$group_by = 'c.event_id';
}
/* Sorting */
switch( $sort_by )
{
default:
case 'date':
$sortKey = 'c.event_unix_from';
$sortType = 'numerical';
break;
case 'title':
$sortKey = 'c.event_title';
$sortType = 'string';
break;
}
/* Query the count */
$count = $this->DB->buildAndFetch(
array(
'select' => 'COUNT(*) as total_results',
'from' => array( 'cal_events' => 'c' ),
'where' => $this->_buildWhereStatement( $search_term, $content_title_only ),
'group' => $group_by,
'add_join' => array(
array(
'from' => array( 'permission_index' => 'i' ),
'where' => "i.perm_type='calendar' AND i.perm_type_id=c.event_calendar_id",
'type' => 'left',
),
array(
'from' => array( 'profile_friends' => 'friend' ),
'where' => 'friend.friends_member_id=c.event_member_id AND friend.friends_friend_id=' . $this->memberData['member_id'],
'type' => 'left',
),
)
) );
/* Do the search */
$this->DB->build( array(
'select' => "c.*",
'from' => array( 'cal_events' => 'c' ),
'where' => $this->_buildWhereStatement( $search_term, $content_title_only ),
'group' => $group_by,
'order' => $sortKey . ' ' . $sort_order,
'limit' => array( IPSSearchRegistry::get('in.start'), IPSSearchRegistry::get('opt.search_per_page') ),
'add_join' => array(
array(
'select' => 'i.*',
'from' => array( 'permission_index' => 'i' ),
'where' => "i.perm_type='calendar' AND i.perm_type_id=c.event_calendar_id",
'type' => 'left',
),
array(
'select' => 'mem.members_display_name, mem.member_group_id, mem.mgroup_others',
'from' => array( 'members' => 'mem' ),
'where' => "mem.member_id=c.event_member_id",
'type' => 'left',
),
array(
'from' => array( 'profile_friends' => 'friend' ),
'where' => 'friend.friends_member_id=c.event_member_id AND friend.friends_friend_id=' . $this->memberData['member_id'],
'type' => 'left',
),
)
) );
$this->DB->execute();
/* Sort */
while( $r = $this->DB->fetch() )
{
$rows[] = $r;
}
/* Return it */
return array( 'count' => $count['total_results'], 'resultSet' => $rows );
}
/**
* Perform the viewNewContent search
* Populates $this->_count and $this->_results
*
* @access public
* @return nothin'
*/
public function viewNewContent()
{
/* Loop through the forums and build a list of forums we're allowed access to */
$start = IPSSearchRegistry::get('in.start');
$perPage = IPSSearchRegistry::get('opt.search_per_page');
IPSSearchRegistry::set('in.search_sort_by' , 'date' );
IPSSearchRegistry::set('in.search_sort_order', 'desc' );
IPSSearchRegistry::set('opt.searchTitleOnly' , true );
IPSSearchRegistry::set('display.onlyTitles' , true );
IPSSearchRegistry::set('opt.noPostPreview' , true );
/* Time */
$oldStamp = intval( $this->memberData['last_visit'] ) ? intval( $this->memberData['last_visit'] ) : time();
/* Start Where */
$where = array();
$where[] = $this->_buildWhereStatement( '' );
/* Based on oldest timestamp */
$where[] = "c.event_unix_from > " . $oldStamp;
$where = implode( " AND ", $where );
/* Fetch the count */
$count = $this->DB->buildAndFetch(
array(
'select' => 'COUNT(*) as total_results',
'from' => array( 'cal_events' => 'c' ),
'where' => $where,
'add_join' => array(
array(
'from' => array( 'permission_index' => 'i' ),
'where' => "i.perm_type='calendar' AND i.perm_type_id=c.event_calendar_id",
'type' => 'left',
),
array(
'from' => array( 'profile_friends' => 'friend' ),
'where' => 'friend.friends_member_id=c.event_member_id AND friend.friends_friend_id=' . $this->memberData['member_id'],
'type' => 'left',
),
)
) );
/* Fetch the data */
$events = array();
if( $count['total_results'] )
{
$this->DB->build( array(
'select' => "c.*",
'from' => array( 'cal_events' => 'c' ),
'where' => $where,
'order' => 'c.event_unix_from DESC',
'limit' => array( $start, $perPage ),
'add_join' => array(
array(
'select' => 'i.*',
'from' => array( 'permission_index' => 'i' ),
'where' => "i.perm_type='calendar' AND i.perm_type_id=c.event_calendar_id",
'type' => 'left',
),
array(
'select' => 'mem.members_display_name, mem.member_group_id, mem.mgroup_others',
'from' => array( 'members' => 'mem' ),
'where' => "mem.member_id=c.event_member_id",
'type' => 'left',
),
array(
'from' => array( 'profile_friends' => 'friend' ),
'where' => 'friend.friends_member_id=c.event_member_id AND friend.friends_friend_id=' . $this->memberData['member_id'],
'type' => 'left',
),
)
) );
$o = $this->DB->execute();
while( $row = $this->DB->fetch( $o ) )
{
$events[] = $row;
}
}
/* Return it */
return array( 'count' => $count['total_results'], 'resultSet' => $events );
}
/**
* Perform the search
* Populates $this->_count and $this->_results
*
* @access public
* @return nothin'
*/
public function viewActiveContent()
{
$seconds = IPSSearchRegistry::get('in.period_in_seconds');
/* Loop through the forums and build a list of forums we're allowed access to */
$where = array();
$start = IPSSearchRegistry::get('in.start');
$perPage = IPSSearchRegistry::get('opt.search_per_page');
$imgIds = array();
/* Start Where */
$where = array();
$where[] = $this->_buildWhereStatement( '' );
/* Generate last post times */
$where[] = "c.event_unix_from > " . intval( time() - $seconds );
$where = implode( " AND ", $where );
/* Fetch the count */
$count = $this->DB->buildAndFetch(
array(
'select' => 'COUNT(*) as total_results',
'from' => array( 'cal_events' => 'c' ),
'where' => $where,
'add_join' => array(
array(
'from' => array( 'permission_index' => 'i' ),
'where' => "i.perm_type='calendar' AND i.perm_type_id=c.event_calendar_id",
'type' => 'left',
),
array(
'from' => array( 'profile_friends' => 'friend' ),
'where' => 'friend.friends_member_id=c.event_member_id AND friend.friends_friend_id=' . $this->memberData['member_id'],
'type' => 'left',
),
)
) );
/* Fetch count */
$events = array();
if( $count['total_results'] )
{
$this->DB->build( array(
'select' => "c.*",
'from' => array( 'cal_events' => 'c' ),
'where' => $where,
'order' => 'c.event_unix_from DESC',
'limit' => array( $start, $perPage ),
'add_join' => array(
array(
'select' => 'i.*',
'from' => array( 'permission_index' => 'i' ),
'where' => "i.perm_type='calendar' AND i.perm_type_id=c.event_calendar_id",
'type' => 'left',
),
array(
'select' => 'mem.members_display_name, mem.member_group_id, mem.mgroup_others',
'from' => array( 'members' => 'mem' ),
'where' => "mem.member_id=c.event_member_id",
'type' => 'left',
),
array(
'from' => array( 'profile_friends' => 'friend' ),
'where' => 'friend.friends_member_id=c.event_member_id AND friend.friends_friend_id=' . $this->memberData['member_id'],
'type' => 'left',
),
)
) );
$o = $this->DB->execute();
while( $row = $this->DB->fetch( $o ) )
{
$events[] = $row;
}
}
/* Return it */
return array( 'count' => $count['total_results'], 'resultSet' => $events );
}
/**
* Perform the viewUserContent search
* Populates $this->_count and $this->_results
*
* @access public
* @return nothin'
*/
public function viewUserContent( $member )
{
/* Init */
$start = IPSSearchRegistry::get('in.start');
$perPage = IPSSearchRegistry::get('opt.search_per_page');
IPSSearchRegistry::set( 'in.search_sort_by' , 'date' );
IPSSearchRegistry::set( 'in.search_sort_order', 'desc' );
IPSSearchRegistry::set( 'gallery.searchInKey', 'images' );
/* Ensure we limit by date */
$this->settings['search_ucontent_days'] = ( $this->settings['search_ucontent_days'] ) ? $this->settings['search_ucontent_days'] : 365;
/* Start Where */
$where = array();
$where[] = $this->_buildWhereStatement( '' );
/* Search by author */
$where[] = "c.event_member_id=" . intval( $member['member_id'] );
if ( $this->settings['search_ucontent_days'] )
{
$where[] = "c.event_unix_from > " . ( time() - ( 86400 * intval( $this->settings['search_ucontent_days'] ) ) );
}
$where = implode( " AND ", $where );
/* Fetch the count */
$count = $this->DB->buildAndFetch(
array(
'select' => 'COUNT(*) as count',
'from' => array( 'cal_events' => 'c' ),
'where' => $where,
'add_join' => array(
array(
'from' => array( 'permission_index' => 'i' ),
'where' => "i.perm_type='calendar' AND i.perm_type_id=c.event_calendar_id",
'type' => 'left',
),
array(
'from' => array( 'profile_friends' => 'friend' ),
'where' => 'friend.friends_member_id=c.event_member_id AND friend.friends_friend_id=' . $this->memberData['member_id'],
'type' => 'left',
),
)
) );
/* Fetch the data */
$events = array();
if ( $count['count'] )
{
$this->DB->build( array(
'select' => "c.*",
'from' => array( 'cal_events' => 'c' ),
'where' => $where,
'order' => 'c.event_unix_from DESC',
'limit' => array( $start, $perPage ),
'add_join' => array(
array(
'select' => 'i.*',
'from' => array( 'permission_index' => 'i' ),
'where' => "i.perm_type='calendar' AND i.perm_type_id=c.event_calendar_id",
'type' => 'left',
),
array(
'select' => 'mem.members_display_name, mem.member_group_id, mem.mgroup_others',
'from' => array( 'members' => 'mem' ),
'where' => "mem.member_id=c.event_member_id",
'type' => 'left',
),
array(
'from' => array( 'profile_friends' => 'friend' ),
'where' => 'friend.friends_member_id=c.event_member_id AND friend.friends_friend_id=' . $this->memberData['member_id'],
'type' => 'left',
),
)
) );
$this->DB->execute();
while( $row = $this->DB->fetch() )
{
$events[] = $row;
}
}
/* Return it */
return array( 'count' => $count['count'], 'resultSet' => $events );
}
/**
* Builds the where portion of a search string
*
* @access private
* @param string $search_term The string to use in the search
* @param bool $content_title_only Search only title records
* @return string
**/
private function _buildWhereStatement( $search_term, $content_title_only=false )
{
/* INI */
$where_clause = array();
if( $search_term )
{
if( $content_title_only )
{
$where_clause[] = "c.event_title LIKE '%{$search_term}%'";
}
else
{
$where_clause[] = "(c.event_title LIKE '%{$search_term}%' OR c.event_content LIKE '%{$search_term}%')";
}
}
/* Exclude some items */
if( !$this->memberData['g_is_supmod'] )
{
/* Approved */
$where_clause[] = 'c.event_approved=1';
/* Owner only */
$where_clause[] = '(i.owner_only=0 OR c.event_member_id=' . $this->memberData['member_id'] . ')';
/* Friend only */
$where_clause[] = '(i.friend_only=0 OR friend.friends_id ' . $this->DB->buildIsNull( false ) . ')';
/* Authorized users only */
$where_clause[] = '(i.authorized_users ' . $this->DB->buildIsNull() . " OR i.authorized_users='' OR c.event_member_id=" . $this->memberData['member_id'] . " OR i.authorized_users LIKE '%," . $this->memberData['member_id'] . ",%')";
}
/* Date Restrict */
if( $this->search_begin_timestamp && $this->search_end_timestamp )
{
$where_clause[] = $this->DB->buildBetween( "c.event_unix_from", $this->search_begin_timestamp, $this->search_end_timestamp );
}
else
{
if( $this->search_begin_timestamp )
{
$where_clause[] = "c.event_unix_from > {$this->search_begin_timestamp}";
}
if( $this->search_end_timestamp )
{
$where_clause[] = "c.event_unix_from < {$this->search_end_timestamp}";
}
}
/* Add in AND where conditions */
if( isset( $this->whereConditions['AND'] ) && count( $this->whereConditions['AND'] ) )
{
$where_clause = array_merge( $where_clause, $this->whereConditions['AND'] );
}
/* ADD in OR where conditions */
if( isset( $this->whereConditions['OR'] ) && count( $this->whereConditions['OR'] ) )
{
$where_clause[] = '( ' . implode( ' OR ', $this->whereConditions['OR'] ) . ' )';
}
/* Permissions */
$where_clause[] = $this->DB->buildRegexp( "i.perm_view", $this->member->perm_id_array );
/* Event permissions */
$where_clause[] = "((c.event_private=1 AND c.event_member_id=" . $this->memberData['member_id'] . ") OR (c.event_private=0 AND " . $this->DB->buildRegexp( "c.event_perms", $this->member->perm_id_array ) . "))";
/* Build and return the string */
return implode( " AND ", $where_clause );
}
/**
* Remap standard columns (Apps can override )
*
* @access public
* @param string $column sql table column for this condition
* @return string column
* @return void
*/
public function remapColumn( $column )
{
$column = $column == 'member_id' ? 'c.event_member_id' : $column;
return $column;
}
/**
* Returns an array used in the searchplugin's setCondition method
*
* @access public
* @param array $data Array of forums to view
* @return array Array with column, operator, and value keys, for use in the setCondition call
**/
public function buildFilterSQL( $data )
{
/* INIT */
$return = array();
/* Set up some defaults */
IPSSearchRegistry::set( 'opt.noPostPreview' , false );
IPSSearchRegistry::set( 'opt.onlySearchPosts', false );
return array();
}
/**
* Can handle boolean searching
*
* @access public
* @return boolean
*/
public function isBoolean()
{
return false;
}
}
@@ -0,0 +1,59 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Returns HTML for the form (optional class, not required)
* Last Updated: $Date: 2010-02-19 01:29:54 +0000 (Fri, 19 Feb 2010) $
* </pre>
*
* @author $author$
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @version $Rev: 5855 $
**/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
class search_form_calendar
{
/**
* Construct
*
*/
public function __construct()
{
/* Make object */
$this->registry = ipsRegistry::instance();
$this->DB = $this->registry->DB();
$this->settings =& $this->registry->fetchSettings();
$this->request =& $this->registry->fetchRequest();
$this->lang = $this->registry->getClass('class_localization');
$this->member = $this->registry->member();
$this->memberData =& $this->registry->member()->fetchMemberData();
$this->cache = $this->registry->cache();
$this->caches =& $this->registry->cache()->fetchCaches();
}
/**
* Return sort drop down
*
*
* @access public
* @return array
*/
public function fetchSortDropDown()
{
$array = array( 'date' => $this->lang->words['s_search_type_0'],
'title' => $this->lang->words['forum_sort_title'] );
return $array;
}
}
@@ -0,0 +1,109 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Formats calendar search results
* Last Updated: $Date: 2010-02-19 01:29:54 +0000 (Fri, 19 Feb 2010) $
* </pre>
*
* @author $author$
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @version $Rev: 5855 $
**/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
class search_format_calendar extends search_format
{
/**
* Constructor
*/
public function __construct( ipsRegistry $registry )
{
parent::__construct( $registry );
}
/**
* Parse search results
*
* @access private
* @param array $r Search result
* @return array $html Blocks of HTML
*/
public function parseAndFetchHtmlBlocks( $rows )
{
return parent::parseAndFetchHtmlBlocks( $rows );
}
/**
* Formats the forum search result for display
*
* @access public
* @param array $search_row Array of data
* @return mixed Formatted content, ready for display, or array containing a $sub section flag, and content
**/
public function formatContent( $data )
{
$data['misc'] = unserialize( $data['misc'] );
/* Format as a ranged event */
if( $data['misc'] )
{
return array( ipsRegistry::getClass( 'output' )->getTemplate( 'search' )->calEventRangedSearchResult( $data, IPSSearchRegistry::get('display.onlyTitles') ), 0 );
}
/* Format as a single day event */
else
{
return array( ipsRegistry::getClass( 'output' )->getTemplate( 'search' )->calEventSearchResult( $data, IPSSearchRegistry::get('display.onlyTitles') ), 0 );
}
}
/**
* Formats / grabs extra data for results
* Takes an array of IDS (can be IDs from anything) and returns an array of expanded data.
*
* @access public
* @return array
*/
public function processResults( $ids )
{
$rows = array();
foreach( $ids as $i => $d )
{
$rows[ $i ] = $this->genericizeResults( $d );
}
return $rows;
}
/**
* Reassigns fields in a generic way for results output
*
* @param array $r
* @return array
**/
public function genericizeResults( $r )
{
$r['app'] = 'calendar';
$r['content'] = $r['event_content'];
$r['content_title'] = $r['event_title'];
$r['updated'] = $r['event_unix_from'];
$r['type_2'] = 'event';
$r['type_id_2'] = $r['event_id'];
$r['misc'] = $r['event_unix_to'];
$r['member_id'] = $r['event_member_id'];
return $r;
}
}
@@ -0,0 +1,10 @@
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1,74 +0,0 @@
<?php
/**
* Formats calendar search results
*
* @author $author$
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @version $Rev: 4948 $
**/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
class calendarSearchDisplay implements iSearchDisplay
{
/**
* The search plugin for this app
*
* @access public
* @var object
*/
public $search_plugin;
/**
* Formats the calendar search result for display
*
* @access public
* @param array $search_row Array of data from search_index
* @return string Formatted content, ready for display
*/
public function formatContent( $search_row )
{
/* Format as a topic */
if( $search_row['misc'] )
{
return ipsRegistry::getClass( 'output' )->getTemplate( 'search' )->calEventRangedSearchResult( $search_row, $this->search_plugin->onlyTitles );
}
/* Format as a forum */
else
{
return ipsRegistry::getClass( 'output' )->getTemplate( 'search' )->calEventSearchResult( $search_row, $this->search_plugin->onlyTitles );
}
}
/**
* Retuns the html for displaying the calendar filter on the advanced search page
*
* @access public
* @return string
*/
public function getFilterHTML()
{
return '';
//return ipsRegistry::getClass( 'output' )->getTemplate( 'search' )->forumAdvancedSearchFilters();
}
/**
* Builds the SQL filter query
*
* @access public
* @param array
* @return array
*/
public function buildFilterSQL( $data )
{
return array();
}
}
@@ -1,458 +0,0 @@
<?php
/**
* Invision Power Services
* IP.Board v3.0.5
* Basic Calendar Search
* Last Updated: $Date: 2009-01-09 15:37:32 -0500 (Fri, 09 Jan 2009) $
*
* @author $Author: josh $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @version $Rev: 3627 $
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
class searchCalendarPlugin implements iSearchIndexPlugin
{
/**
* Database object
*
* @access private
* @var object
*/
private $DB;
/**
* Date range restriction start
*
* @access private
* @var integer
*/
private $search_begin_timestamp = 0;
/**
* Date range restriction end
*
* @access private
* @var integer
*/
private $search_end_timestamp = 0;
/**
* Array of conditions for this search
*
* @access private
* @var array
*/
private $whereConditions = array();
/**
* Remoe self from search results
*
* @access public
* @var boolean
*/
public $removeSelf = false;
/**
* Only display title
*
* @access public
* @var boolean
*/
public $onlyTitles = false;
/**
* Setup registry objects
*
* @access public
* @param object ipsRegistry $registry
* @return void
*/
public function __construct( ipsRegistry $registry )
{
$this->DB = $registry->DB();
$this->member = $registry->member();
$this->memberData =& $registry->member()->fetchMemberData();
}
/**
* Performs search and returns an array of results
*
* @access public
* @param string $search_term
* @param array $limit_clause The erray should be array( begin, end )
* @param string $sort_by Column to sort by
* @param string $group_by Column to group by
* @param bool $content_title_only Only search title records
* @return array
*/
public function getSearchResults( $search_term, $limit_clause, $sort_by, $group_by='', $content_title_only=false, $sort_order='' )
{
/* Group By */
if( $group_by )
{
$group_by = 'c.' . $group_by;
}
/* User prefs */
$order_dir = ( $sort_order == 'asc' ) ? 'asc' : 'desc';
/* Do the search */
$this->DB->build( array(
'select' => "c.*",
'from' => array( 'cal_events' => 'c' ),
'where' => $this->_buildWhereStatement( $search_term, $content_title_only ),
'limit' => $limit_clause,
'order' => "c.event_unix_from " . $order_dir,
'group' => $group_by,
'add_join' => array(
array(
'select' => 'i.*',
'from' => array( 'permission_index' => 'i' ),
'where' => "i.perm_type='calendar' AND i.perm_type_id=c.event_calendar_id",
'type' => 'left',
),
array(
'select' => 'mem.members_display_name, mem.member_group_id, mem.mgroup_others',
'from' => array( 'members' => 'mem' ),
'where' => "mem.member_id=c.event_member_id",
'type' => 'left',
),
array(
'from' => array( 'profile_friends' => 'friend' ),
'where' => 'friend.friends_member_id=c.event_member_id AND friend.friends_friend_id=' . $this->memberData['member_id'],
'type' => 'left',
),
)
) );
$this->DB->execute();
/* Build result array */
$rows = array();
while( $r = $this->DB->fetch() )
{
/* Reassign stuff to match the search_index */
$rows[] = $this->formatFieldsForIndex( $r );
}
return $rows;
}
/**
* Performs live search and returns an array of results
* NOT AVAILABLE IN BASIC SEARCH
*
* @access public
* @param string $search_term
* @return array
*/
public function getLiveSearchResults( $search_term )
{
return array();
}
/**
* Returns the total number of results the search will return
*
* @access public
* @param string $search_term Search term
* @param string $group_by Column to group by
* @param bool $content_title_only Only search title records
* @return integer
*/
public function getSearchCount( $search_term, $group_by='', $content_title_only=false )
{
/* Group By */
if( $group_by )
{
$group_by = 'c.' . $group_by;
}
/* Query the count */
$this->DB->build( array(
'select' => 'COUNT(*) as total_results',
'from' => array( 'cal_events' => 'c' ),
'where' => $this->_buildWhereStatement( $search_term, $content_title_only ),
'group' => $group_by,
'add_join' => array(
array(
'from' => array( 'permission_index' => 'i' ),
'where' => "i.perm_type='calendar' AND i.perm_type_id=c.event_calendar_id",
'type' => 'left',
),
array(
'from' => array( 'profile_friends' => 'friend' ),
'where' => 'friend.friends_member_id=c.event_member_id AND friend.friends_friend_id=' . $this->memberData['member_id'],
'type' => 'left',
),
)
) );
$this->DB->execute();
$search = $this->DB->fetch();
/* Return the count */
return $search['total_results'];
}
/**
* Restrict the date range that the search is performed on
*
* @access public
* @param int $begin Start timestamp
* @param int [$end] End timestamp
* @return void
*/
public function setDateRange( $begin, $end=0 )
{
$this->search_begin_timestamp = $begin;
$this->search_end_timestamp = $end;
}
/**
* mySQL function for adding special search conditions
*
* @access public
* @param string $column sql table column for this condition
* @param string $operator Operation to perform for this condition, ex: =, <>, IN, NOT IN
* @param mixed $value Value to check with
* @param string $comp Comparison type
* @return void
*/
public function setCondition( $column, $operator, $value, $comp='AND' )
{
/* Remap */
$column = $column == 'member_id' ? 'event_member_id' : $column;
$column = $column == 'content_title' ? 'event_title' : $column;
if( $column == 'app' OR $column == 'type_id' )
{
return;
}
/* Build the condition based on operator */
switch( strtoupper( $operator ) )
{
case 'IN':
case 'NOT IN':
$this->whereConditions[$comp][] = "c.{$column} {$operator} ( {$value} )";
break;
default:
$this->whereConditions[$comp][] = "c.{$column} {$operator} {$value}";
break;
}
}
/**
* Allows you to specify multiple conditions that are chained together
*
* @access public
* @param array $conditions Array of conditions, each element has 3 keys: column, operator, value, see the setCondition function for information on each
* @param string $inner_comp Comparison operator to use inside the chain
* @param string $outer_comp Comparison operator to use outside the chain
* @return void
*/
public function setMultiConditions( $conditions, $inner_comp='OR', $outer_comp='AND' )
{
/* Loop through the conditions to build the statement */
$_temp = array();
foreach( $conditions as $r )
{
/* REMAP */
$r['column'] = ( $r['column'] == 'type_id' ) ? 'event_calendar_id' : $r['column'];
if( $r['column'] == 'app' )
{
continue;
}
switch( strtoupper( $r['operator'] ) )
{
case 'IN':
case 'NOT IN':
$_temp[] = "c.{$r['column']} {$r['operator']} ( {$r['value']} )";
break;
default:
$_temp[] = "c.{$r['column']} {$r['operator']} {$r['value']}";
break;
}
}
$this->whereConditions[$outer_comp][] = '( ' . implode( $_temp, ' ' . $inner_comp . ' ' ) . ' ) ';
}
/**
* Set search conditions for "View unread content"
*
* @access public
* @return void
*/
public function setUnreadConditions()
{
$this->setDateRange( intval( $this->memberData['last_visit'] ), time() );
}
/**
* Builds the where portion of a search string
*
* @access private
* @param string $search_term The string to use in the search
* @param bool $content_title_only Search only title records
* @return string
**/
private function _buildWhereStatement( $search_term, $content_title_only=false )
{
/* INI */
$where_clause = array();
if( $search_term )
{
if( $content_title_only )
{
$where_clause[] = "c.event_title LIKE '%{$search_term}%'";
}
else
{
$where_clause[] = "c.event_title LIKE '%{$search_term}%' OR c.event_content LIKE '%{$search_term}%'";
}
}
/* Exclude some items */
if( !$this->memberData['g_is_supmod'] )
{
/* Owner only */
$where_clause[] = '(i.owner_only=0 OR c.event_member_id=' . $this->memberData['member_id'] . ')';
/* Friend only */
$where_clause[] = '(i.friend_only=0 OR friend.friends_id ' . $this->DB->buildIsNull( false ) . ')';
/* Authorized users only */
$where_clause[] = '(i.authorized_users ' . $this->DB->buildIsNull() . " OR i.authorized_users='' OR c.event_member_id=" . $this->memberData['member_id'] . " OR i.authorized_users LIKE '%," . $this->memberData['member_id'] . ",%')";
}
/* Date Restrict */
if( $this->search_begin_timestamp && $this->search_end_timestamp )
{
$where_clause[] = $this->DB->buildBetween( "c.event_unix_from", $this->search_begin_timestamp, $this->search_end_timestamp );
}
else
{
if( $this->search_begin_timestamp )
{
$where_clause[] = "c.event_unix_from > {$this->search_begin_timestamp}";
}
if( $this->search_end_timestamp )
{
$where_clause[] = "c.event_unix_from < {$this->search_end_timestamp}";
}
}
/* Add in AND where conditions */
if( isset( $this->whereConditions['AND'] ) && count( $this->whereConditions['AND'] ) )
{
$where_clause = array_merge( $where_clause, $this->whereConditions['AND'] );
}
/* ADD in OR where conditions */
if( isset( $this->whereConditions['OR'] ) && count( $this->whereConditions['OR'] ) )
{
$where_clause[] = '( ' . implode( ' OR ', $this->whereConditions['OR'] ) . ' )';
}
/* Permissions */
$where_clause[] = $this->DB->buildRegexp( "i.perm_view", $this->member->perm_id_array );
/* Event permissions */
$where_clause[] = "((c.event_private=1 AND c.event_member_id=" . $this->memberData['member_id'] . ") OR (c.event_private=0 AND " . $this->DB->buildRegexp( "c.event_perms", $this->member->perm_id_array ) . "))";
/* Build and return the string */
return implode( " AND ", $where_clause );
}
/**
* Reassigns fields in a way the index exepcts
*
* @param array $r
* @return array
**/
public function formatFieldsForIndex( $r )
{
$r['app'] = 'calendar';
$r['content'] = $r['event_content'];
$r['content_title'] = $r['event_title'];
$r['updated'] = $r['event_unix_from'];
$r['type_2'] = 'event';
$r['type_id_2'] = $r['event_id'];
$r['misc'] = $r['event_unix_to'];
$r['member_id'] = $r['event_member_id'];
return $r;
}
/**
* This function grabs the actual results for display
*
* @param array $ids
* @return query result
**/
public function getResultsForSphinx( $ids )
{
$this->DB->build( array(
'select' => "c.*",
'from' => array( 'cal_events' => 'c' ),
'where' => 'c.event_id IN( ' . implode( ',', $ids ) . ')',
'order' => 'c.event_unix_from DESC',
'add_join' => array(
array(
'select' => 'mem.members_display_name, mem.member_group_id, mem.mgroup_others',
'from' => array( 'members' => 'mem' ),
'where' => "mem.member_id=c.event_member_id",
'type' => 'left',
)
)
) );
return $this->DB->execute();
}
/**
* Gets the name of the field this search index uses for dates.... >_<
*
* @return string
**/
public function getDateField()
{
return 'event_unix_from';
}
/**
* Gets field names for other conditions
*
* @param string Column
* @return string
**/
public function getConditionField( $column )
{
switch( $column )
{
case 'member_id':
return 'event_member_id';
break;
}
return $column;
}
}
@@ -1,93 +1,96 @@
<?php
/**
* Invision Power Services
* IP.Board v3.0.5
* Sphinx template file
* Last Updated: $Date: 2009-07-28 20:26:37 -0400 (Tue, 28 Jul 2009) $
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Calendar
* @link http://www.iinvisionpower.com
* @version $Rev: 4948 $
* @since 3.0.0
*
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
$appSphinxTemplate = <<<EOF
############################# --- CALENDAR --- ##############################
source calendar_search_main : ipb_source_config
{
# Set our forum PID counter
sql_query_pre = REPLACE INTO <!--SPHINX_DB_PREFIX-->cache_store VALUES( 'sphinx_calendar_counter', (SELECT max(event_id) FROM <!--SPHINX_DB_PREFIX-->cal_events), '', 0, UNIX_TIMESTAMP() )
# Query posts for the main source
sql_query = SELECT e.*, e.event_id as search_id, \
REPLACE( pi.perm_view, '*', 0 ) as perm_view, \
CASE WHEN pi.authorized_users IS NULL THEN 0 ELSE pi.authorized_users END AS authorized_users, \
CASE WHEN pi.friend_only=0 THEN 0 ELSE e.event_member_id END AS friend_only, \
CASE WHEN pi.owner_only=0 THEN 0 ELSE e.event_member_id END AS owner_only \
FROM <!--SPHINX_DB_PREFIX-->cal_events e \
LEFT JOIN <!--SPHINX_DB_PREFIX-->permission_index pi ON ( pi.perm_type_id=e.event_calendar_id AND pi.perm_type='calendar' ) \
WHERE e.event_id <= ( SELECT cs_value FROM <!--SPHINX_DB_PREFIX-->cache_store WHERE cs_key='sphinx_calendar_counter' )
# Fields
sql_attr_uint = search_id
sql_attr_uint = friend_only
sql_attr_uint = owner_only
sql_attr_timestamp = event_unix_from
sql_attr_multi = uint perm_view from field
sql_attr_multi = uint authorized_users from field
sql_attr_uint = event_member_id
sql_ranged_throttle = 0
}
source calendar_search_delta : calendar_search_main
{
# Override the base sql_query_pre
sql_query_pre =
# Query posts for the main source
sql_query = SELECT e.*, e.event_id as search_id, \
REPLACE( pi.perm_view, '*', 0 ) as perm_view, \
CASE WHEN pi.authorized_users IS NULL THEN 0 ELSE pi.authorized_users END AS authorized_users, \
CASE WHEN pi.friend_only=0 THEN 0 ELSE e.event_member_id END AS friend_only, \
CASE WHEN pi.owner_only=0 THEN 0 ELSE e.event_member_id END AS owner_only \
FROM <!--SPHINX_DB_PREFIX-->cal_events e \
LEFT JOIN <!--SPHINX_DB_PREFIX-->permission_index pi ON ( pi.perm_type_id=e.event_calendar_id AND pi.perm_type='calendar' ) \
WHERE e.event_id > ( SELECT cs_value FROM <!--SPHINX_DB_PREFIX-->cache_store WHERE cs_key='sphinx_calendar_counter' )
}
index calendar_search_main
{
source = calendar_search_main
path = <!--SPHINX_BASE_PATH-->/calendar_search_main
docinfo = extern
mlock = 0
morphology = none
min_word_len = 2
charset_type = sbcs
html_strip = 0
}
index calendar_search_delta : calendar_search_main
{
source = calendar_search_delta
path = <!--SPHINX_BASE_PATH-->/calendar_search_delta
}
EOF;
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Sphinx template file
* Last Updated: $Date: 2010-01-15 10:18:44 -0500 (Fri, 15 Jan 2010) $
* </pre>
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @version $Rev: 5713 $
* @since 3.0.0
*
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
$appSphinxTemplate = <<<EOF
############################# --- CALENDAR --- ##############################
source calendar_search_main : ipb_source_config
{
# Set our forum PID counter
sql_query_pre = REPLACE INTO <!--SPHINX_DB_PREFIX-->cache_store VALUES( 'sphinx_calendar_counter', (SELECT max(event_id) FROM <!--SPHINX_DB_PREFIX-->cal_events), '', 0, UNIX_TIMESTAMP() )
# Query posts for the main source
sql_query = SELECT e.*, e.event_id as search_id, \
REPLACE( pi.perm_view, '*', 0 ) as perm_view, \
CASE WHEN pi.authorized_users IS NULL THEN 0 ELSE pi.authorized_users END AS authorized_users, \
CASE WHEN pi.friend_only=0 THEN 0 ELSE e.event_member_id END AS friend_only, \
CASE WHEN pi.owner_only=0 THEN 0 ELSE e.event_member_id END AS owner_only \
FROM <!--SPHINX_DB_PREFIX-->cal_events e \
LEFT JOIN <!--SPHINX_DB_PREFIX-->permission_index pi ON ( pi.perm_type_id=e.event_calendar_id AND pi.perm_type='calendar' ) \
WHERE e.event_id <= ( SELECT cs_value FROM <!--SPHINX_DB_PREFIX-->cache_store WHERE cs_key='sphinx_calendar_counter' )
# Fields
sql_attr_uint = search_id
sql_attr_uint = friend_only
sql_attr_uint = owner_only
sql_attr_timestamp = event_unix_from
sql_attr_multi = uint perm_view from field
sql_attr_multi = uint authorized_users from field
sql_attr_uint = event_member_id
sql_ranged_throttle = 0
}
source calendar_search_delta : calendar_search_main
{
# Override the base sql_query_pre
sql_query_pre =
# Query posts for the main source
sql_query = SELECT e.*, e.event_id as search_id, \
REPLACE( pi.perm_view, '*', 0 ) as perm_view, \
CASE WHEN pi.authorized_users IS NULL THEN 0 ELSE pi.authorized_users END AS authorized_users, \
CASE WHEN pi.friend_only=0 THEN 0 ELSE e.event_member_id END AS friend_only, \
CASE WHEN pi.owner_only=0 THEN 0 ELSE e.event_member_id END AS owner_only \
FROM <!--SPHINX_DB_PREFIX-->cal_events e \
LEFT JOIN <!--SPHINX_DB_PREFIX-->permission_index pi ON ( pi.perm_type_id=e.event_calendar_id AND pi.perm_type='calendar' ) \
WHERE e.event_id > ( SELECT cs_value FROM <!--SPHINX_DB_PREFIX-->cache_store WHERE cs_key='sphinx_calendar_counter' )
}
index calendar_search_main
{
source = calendar_search_main
path = <!--SPHINX_BASE_PATH-->/calendar_search_main
docinfo = extern
mlock = 0
morphology = none
min_word_len = 2
charset_type = sbcs
html_strip = 0
}
index calendar_search_delta : calendar_search_main
{
source = calendar_search_delta
path = <!--SPHINX_BASE_PATH-->/calendar_search_delta
}
EOF;
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
File diff suppressed because it is too large. Load diff
@@ -1,16 +1,19 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.0.5
* IP.Board v3.1.4
* Calendar default section
* Last Updated: $Date: 2010-04-15 15:46:26 -0400 (Thu, 15 Apr 2010) $
* </pre>
*
* @author $author$
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @version $Rev: 4948 $
* @link http://www.invisionpower.com
* @version $Rev: 6133 $
**/
if ( ! defined( 'IN_IPB' ) )
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
File diff suppressed because it is too large. Load diff
@@ -1,16 +1,19 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.0.5
* IP.Board v3.1.4
* Default calendar section
* Last Updated: $Date: 2010-04-15 15:46:26 -0400 (Thu, 15 Apr 2010) $
* </pre>
*
* @author $author$
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @version $Rev: 4948 $
* @link http://www.invisionpower.com
* @version $Rev: 6133 $
*/
if ( ! defined( 'IN_IPB' ) )
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -0,0 +1,10 @@
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -0,0 +1,10 @@
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -3,4 +3,4 @@
$INSERT[] ="INSERT INTO cal_calendars (cal_id, cal_title, cal_moderate, cal_position, cal_event_limit, cal_bday_limit, cal_rss_export, cal_rss_export_days, cal_rss_export_max, cal_rss_update, cal_rss_update_last, cal_rss_cache, cal_permissions) VALUES (1, 'Основной календарь', 1, 0, 2, 1, 1, 14, 20, 1440, UNIX_TIMESTAMP(), '', 'a:3:{s:9:\"perm_read\";s:1:\"*\";s:9:\"perm_post\";s:3:\"4,3\";s:10:\"perm_nomod\";s:0:\"\";}');";
$INSERT[] ="INSERT INTO permission_index VALUES(NULL, 'calendar', 'calendar', 1, ',4,2,3,6,', ',4,3,6,', ',4,6,', '', '', '', '', 0, 0, NULL)";
$INSERT[] = "INSERT INTO rc_classes (onoff, class_title, class_desc, author, author_url, pversion, my_class, group_can_report, mod_group_perm, extra_data, lockd) VALUES(1, 'Плагин календаря', 'Плагин отправки жалоб на события календаря', 'Invision Power Services, Inc', 'http://', 'v1.0', 'calendar', ',1,2,3,4,6,', ',4,6,', 'N;', 1);";
$INSERT[] = "INSERT INTO rc_classes (onoff, class_title, class_desc, author, author_url, pversion, my_class, group_can_report, mod_group_perm, extra_data, lockd, app) VALUES(1, 'Плагин календаря', 'Плагин отправки жалоб на события календаря', 'Invision Power Services, Inc', '', 'v1.0', 'calendar', ',1,2,3,4,6,', ',4,6,', 'N;', 1, 'calendar');";
@@ -17,7 +17,8 @@ $TABLE[] = "CREATE TABLE cal_calendars (
cal_rss_update_last int(10) unsigned NOT NULL default '0',
cal_rss_cache mediumtext,
cal_permissions mediumtext,
PRIMARY KEY (cal_id)
PRIMARY KEY (cal_id),
KEY cal_rss_export (cal_rss_export)
);";
$TABLE[] = "CREATE TABLE cal_events (
event_id int(10) unsigned NOT NULL auto_increment,
@@ -31,13 +32,13 @@ $TABLE[] = "CREATE TABLE cal_events (
event_approved tinyint(1) NOT NULL default '0',
event_unixstamp int(10) unsigned NOT NULL default '0',
event_recurring int(2) unsigned NOT NULL default '0',
event_tz int(4) NOT NULL default '0',
event_tz VARCHAR(4) NOT NULL default '0',
event_timeset varchar(6) NOT NULL default '0',
event_unix_from int(10) unsigned NOT NULL default '0',
event_unix_to int(10) unsigned NOT NULL default '0',
event_all_day tinyint(1) NOT NULL default '0',
PRIMARY KEY (event_id),
KEY daterange (event_calendar_id,event_approved,event_unix_from,event_unix_to),
KEY daterange ( event_approved , event_unix_from , event_unix_to ),
KEY approved (event_calendar_id,event_approved)
);";
?>
@@ -1,2 +1,2 @@
<?php
<?php
$QUERY[] = "DELETE FROM rc_classes WHERE my_class='calendar';";
@@ -0,0 +1,10 @@
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1,274 +1,276 @@
<?php
/**
* Invision Power Services
* IP.Board v3.0.5
* Calendar skin file
* Last Updated: $Date: 2009-09-30 09:10:12 -0400 (Wed, 30 Sep 2009) $
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @since Friday 19th May 2006 17:33
* @version $Revision: 5182 $
*/
class cp_skin_calendar extends output
{
/**
* Prevent our main destructor being called by this class
*
* @access public
* @return void
*/
public function __destruct()
{
}
/**
* Form to add/edit a calendar
*
* @access public
* @param array Form elements
* @param string Form title
* @param string Action code
* @param string Button text
* @param array Calendar data
* @return string HTML
*/
public function calendarForm($form, $title, $formcode, $button, $calendar) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<<HTML
<div class='section_title'>
<h2>{$this->lang->words['c_title']}</h2>
</div>
<form id='adminform' action='{$this->settings['base_url']}&amp;{$this->form_code}&amp;do=$formcode&amp;cal_id={$calendar['cal_id']}' method='post'>
<input type='hidden' name='_admin_auth_key' value='{$this->registry->getClass('adminFunctions')->_admin_auth_key}' />
<div class='acp-box'>
<h3>$title</h3>
<ul class='acp-form alternate_rows'>
<li>
<label>{$this->lang->words['c_block_title']}</label>
{$form['cal_title']}
</li>
<li>
<label>{$this->lang->words['c_block_mod']}<span class='desctext'>{$this->lang->words['c_block_mod_info']}</span></label>
{$form['cal_moderate']}
</li>
<li>
<label>{$this->lang->words['c_block_limit']}<span class='desctext'>{$this->lang->words['c_block_limi_info']}</span></label>
{$form['cal_event_limit']}
</li>
<li>
<label>{$this->lang->words['c_block_bday']}<span class='desctext'>{$this->lang->words['c_block_bday_info']}</span></label>
{$form['cal_bday_limit']}
</li>
<li><label class='head'>{$this->lang->words['c_block_rss']}</label></li>
<li>
<label>{$this->lang->words['c_block_enable']}<span class='desctext'>{$this->lang->words['c_block_enabled_info']}</span></label>
<td width='60%' class='tablerow2'>{$form['cal_rss_export']}</td>
</li>
<li>
<label>{$this->lang->words['c_block_forthcoming']}</label>
{$form['cal_rss_export_days']}
</li>
<li>
<label>{$this->lang->words['c_block_max']}<span class='desctext'>{$this->lang->words['c_block_max_info']}</span></label>
{$form['cal_rss_export_max']}
</li>
<li>
<label>{$this->lang->words['c_block_freq']}<span class='desctext'>{$this->lang->words['c_block_freq_info']}</span></label>
{$form['cal_rss_update']}
</li>
</ul>
{$form['perm_matrix']}
<div class='acp-actionbar'>
<div class='centeraction'>
<input type='submit' class='button primary' value='$button' />
</div>
</div>
</div>
</form>
HTML;
//--endhtml--//
return $IPBHTML;
}
/**
* Calendar overview screen
*
* @access public
* @param array Calendars
* @return string HTML
*/
public function calendarOverviewScreen( $rows ) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<<HTML
<div class='section_title'>
<h2>{$this->lang->words['c_title']}</h2>
<!-- ACPNOTE: Rikki - need these two icons -->
<ul class='context_menu'>
<li>
<a href='{$this->settings['base_url']}{$this->form_code}&amp;do=calendar_add' title='{$this->lang->words['c_addcal']}'>
<img src='{$this->settings['skin_acp_url']}/_newimages/icons/add.png' alt='' />
{$this->lang->words['c_addcal']}
</a>
</li>
<li>
<a href='{$this->settings['base_url']}{$this->form_code}&amp;do=calendar_rebuildcache' title='{$this->lang->words['c_recachecal']}'>
<img src='{$this->settings['skin_acp_url']}/_newimages/icons/arrow_refresh.png' alt='' />
{$this->lang->words['c_recachecal']}
</a>
</li>
</ul>
</div>
<div class='acp-box'>
<h3>{$this->lang->words['c_calendars']}</h3>
<ul id='sortable_handle' class='alternate_rows'>
HTML;
foreach( $rows as $r )
{
$IPBHTML .= <<<HTML
<li id='calendar_{$r['cal_id']}'>
<table style='width: 100%'>
<tr>
<td style='width: 3%'>
<div class='draghandle'><img src='{$this->settings['skin_acp_url']}/_newimages/drag_icon.png' alt='' /></div>
</td>
<td style='width: 93%'>
<strong>{$r['cal_title']}</strong><br />
</td>
<td style='width: 4%'>
<img id="menu{$r['cal_id']}" src='{$this->settings['skin_acp_url']}/_newimages/menu_open.png' border='0' alt='{$this->lang->words['c_options']}' class='ipbmenu' />
<ul class='acp-menu' id='menu{$r['cal_id']}_menucontent'>
<li class='icon edit'><a href='{$this->settings['base_url']}{$this->form_code}&amp;do=calendar_edit&amp;cal_id={$r['cal_id']}'>{$this->lang->words['c_editcal']}</a></li>
<li class='icon refresh'><a href='{$this->settings['base_url']}{$this->form_code}&amp;do=calendar_rss_cache&amp;cal_id={$r['cal_id']}'>{$this->lang->words['c_rebuildcal']}</a></li>
<li class='icon delete'><a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}{$this->form_code}&amp;do=calendar_delete&amp;cal_id={$r['cal_id']}");'>{$this->lang->words['c_deletecal']}</a></li>
</ul>
</td>
</tr>
</table>
</li>
HTML;
}
$IPBHTML .= <<<HTML
</ul>
</div>
<script type='text/javascript'>
window.onload = function() {
Sortable.create( 'sortable_handle', { revert: true, format: 'calendar_([0-9]+)', onUpdate: dropItLikeItsHot, handle: 'draghandle' } );
};
dropItLikeItsHot = function( draggableObject, mouseObject )
{
var options = {
method : 'post',
parameters : Sortable.serialize( 'sortable_handle', { tag: 'li', name: 'calendars' } )
};
new Ajax.Request( "{$this->settings['base_url']}&{$this->form_code_js}&do=calendar_move&md5check={$this->registry->adminFunctions->getSecurityKey()}".replace( /&amp;/g, '&' ), options );
return false;
};
</script>
HTML;
//--endhtml--//
return $IPBHTML;
}
/**
* RSS recurring event
*
* @access public
* @param array Event data
* @return string HTML
*/
public function calendar_rss_recurring( $event ) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<<HTML
<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_recurring']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>
HTML;
//--endhtml--//
return $IPBHTML;
}
/**
* RSS ranged event
*
* @access public
* @param array Event data
* @return string HTML
*/
public function calendar_rss_range( $event ) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<<HTML
<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_ranged']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>
HTML;
//--endhtml--//
return $IPBHTML;
}
/**
* RSS single day event
*
* @access public
* @param array Event data
* @return string HTML
*/
public function calendar_rss_single( $event ) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<<HTML
<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_singleday']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}</p>
HTML;
//--endhtml--//
return $IPBHTML;
}
}
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Calendar skin file
* Last Updated: $Date: 2010-11-15 11:39:10 -0500 (Mon, 15 Nov 2010) $
* </pre>
*
* @author $Author: ips_terabyte $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.invisionpower.com
* @since Friday 19th May 2006 17:33
* @version $Revision: 7185 $
*/
class cp_skin_calendar extends output
{
/**
* Prevent our main destructor being called by this class
*
* @access public
* @return void
*/
public function __destruct()
{
}
/**
* Form to add/edit a calendar
*
* @access public
* @param array Form elements
* @param string Form title
* @param string Action code
* @param string Button text
* @param array Calendar data
* @return string HTML
*/
public function calendarForm($form, $title, $formcode, $button, $calendar) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<<HTML
<div class='section_title'>
<h2>{$this->lang->words['c_title']}</h2>
</div>
<form id='adminform' action='{$this->settings['base_url']}&amp;{$this->form_code}&amp;do=$formcode&amp;cal_id={$calendar['cal_id']}' method='post'>
<input type='hidden' name='_admin_auth_key' value='{$this->registry->getClass('adminFunctions')->_admin_auth_key}' />
<div class='acp-box'>
<h3>$title</h3>
<ul class='acp-form alternate_rows'>
<li>
<label>{$this->lang->words['c_block_title']}</label>
{$form['cal_title']}
</li>
<li>
<label>{$this->lang->words['c_block_mod']}<span class='desctext'>{$this->lang->words['c_block_mod_info']}</span></label>
{$form['cal_moderate']}
</li>
<li>
<label>{$this->lang->words['c_block_limit']}<span class='desctext'>{$this->lang->words['c_block_limit_info']}</span></label>
{$form['cal_event_limit']}
</li>
<li>
<label>{$this->lang->words['c_block_bday']}<span class='desctext'>{$this->lang->words['c_block_bday_info']}</span></label>
{$form['cal_bday_limit']}
</li>
<li><label class='head'>{$this->lang->words['c_block_rss']}</label></li>
<li>
<label>{$this->lang->words['c_block_enable']}<span class='desctext'>{$this->lang->words['c_block_enabled_info']}</span></label>
<td width='60%' class='tablerow2'>{$form['cal_rss_export']}</td>
</li>
<li>
<label>{$this->lang->words['c_block_forthcoming']}</label>
{$form['cal_rss_export_days']}
</li>
<li>
<label>{$this->lang->words['c_block_max']}<span class='desctext'>{$this->lang->words['c_block_max_info']}</span></label>
{$form['cal_rss_export_max']}
</li>
<li>
<label>{$this->lang->words['c_block_freq']}<span class='desctext'>{$this->lang->words['c_block_freq_info']}</span></label>
{$form['cal_rss_update']}
</li>
</ul>
{$form['perm_matrix']}
<div class='acp-actionbar'>
<div class='centeraction'>
<input type='submit' class='button primary' value='$button' />
</div>
</div>
</div>
</form>
HTML;
//--endhtml--//
return $IPBHTML;
}
/**
* Calendar overview screen
*
* @access public
* @param array Calendars
* @return string HTML
*/
public function calendarOverviewScreen( $rows ) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<<HTML
<div class='section_title'>
<h2>{$this->lang->words['c_title']}</h2>
<!-- ACPNOTE: Rikki - need these two icons -->
<ul class='context_menu'>
<li>
<a href='{$this->settings['base_url']}{$this->form_code}&amp;do=calendar_add' title='{$this->lang->words['c_addcal']}'>
<img src='{$this->settings['skin_acp_url']}/_newimages/icons/add.png' alt='' />
{$this->lang->words['c_addcal']}
</a>
</li>
<li>
<a href='{$this->settings['base_url']}{$this->form_code}&amp;do=calendar_rebuildcache' title='{$this->lang->words['c_recachecal']}'>
<img src='{$this->settings['skin_acp_url']}/_newimages/icons/arrow_refresh.png' alt='' />
{$this->lang->words['c_recachecal']}
</a>
</li>
</ul>
</div>
<div class='acp-box'>
<h3>{$this->lang->words['c_calendars']}</h3>
<ul id='sortable_handle' class='alternate_rows'>
HTML;
foreach( $rows as $r )
{
$IPBHTML .= <<<HTML
<li id='calendar_{$r['cal_id']}'>
<table style='width: 100%'>
<tr>
<td style='width: 3%'>
<div class='draghandle'><img src='{$this->settings['skin_acp_url']}/_newimages/drag_icon.png' alt='' /></div>
</td>
<td style='width: 93%'>
<strong>{$r['cal_title']}</strong><br />
</td>
<td style='width: 4%'>
<img id="menu{$r['cal_id']}" src='{$this->settings['skin_acp_url']}/_newimages/menu_open.png' alt='{$this->lang->words['c_options']}' class='ipbmenu' />
<ul class='acp-menu' id='menu{$r['cal_id']}_menucontent'>
<li class='icon edit'><a href='{$this->settings['base_url']}{$this->form_code}&amp;do=calendar_edit&amp;cal_id={$r['cal_id']}'>{$this->lang->words['c_editcal']}</a></li>
<li class='icon refresh'><a href='{$this->settings['base_url']}{$this->form_code}&amp;do=calendar_rss_cache&amp;cal_id={$r['cal_id']}'>{$this->lang->words['c_rebuildcal']}</a></li>
<li class='icon delete'><a href='#' onclick='return acp.confirmDelete("{$this->settings['base_url']}{$this->form_code}&amp;do=calendar_delete&amp;cal_id={$r['cal_id']}");'>{$this->lang->words['c_deletecal']}</a></li>
</ul>
</td>
</tr>
</table>
</li>
HTML;
}
$IPBHTML .= <<<HTML
</ul>
</div>
<script type='text/javascript'>
window.onload = function() {
Sortable.create( 'sortable_handle', { revert: true, format: 'calendar_([0-9]+)', onUpdate: dropItLikeItsHot, handle: 'draghandle' } );
};
dropItLikeItsHot = function( draggableObject, mouseObject )
{
var options = {
method : 'post',
parameters : Sortable.serialize( 'sortable_handle', { tag: 'li', name: 'calendars' } )
};
new Ajax.Request( "{$this->settings['base_url']}&{$this->form_code_js}&do=calendar_move&md5check={$this->registry->adminFunctions->getSecurityKey()}".replace( /&amp;/g, '&' ), options );
return false;
};
</script>
HTML;
//--endhtml--//
return $IPBHTML;
}
/**
* RSS recurring event
*
* @access public
* @param array Event data
* @return string HTML
*/
public function calendar_rss_recurring( $event ) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<<HTML
<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_recurring']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>
HTML;
//--endhtml--//
return $IPBHTML;
}
/**
* RSS ranged event
*
* @access public
* @param array Event data
* @return string HTML
*/
public function calendar_rss_range( $event ) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<<HTML
<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_ranged']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>
HTML;
//--endhtml--//
return $IPBHTML;
}
/**
* RSS single day event
*
* @access public
* @param array Event data
* @return string HTML
*/
public function calendar_rss_single( $event ) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<<HTML
<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_singleday']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}</p>
HTML;
//--endhtml--//
return $IPBHTML;
}
}
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1,19 +1,20 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.0.5
* IP.Board v3.1.4
* Task: Gathers birthday and calendar events for a few days and caches them
* Last Updated: $LastChangedDate: 2009-02-04 15:03:36 -0500 (Wed, 04 Feb 2009) $
* Last Updated: $LastChangedDate: 2010-10-20 13:11:07 -0400 (Wed, 20 Oct 2010) $
* </pre>
*
* @author $Author: bfarber $
* @author $Author: ips_terabyte $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.iinvisionpower.com/community/board/license.html
* @package Invision Power Board
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Calendar
* @link http://www.iinvisionpower.com
* @link http://www.invisionpower.com
* @since 27th January 2004
* @version $Rev: 3887 $
* @version $Rev: 7005 $
*/
if ( ! defined( 'IN_IPB' ) )
@@ -27,7 +28,6 @@ class task_item
/**
* Parent task manager class
*
* @access protected
* @var object
*/
protected $class;
@@ -35,7 +35,6 @@ class task_item
/**
* This task data
*
* @access protected
* @var array
*/
protected $task = array();
@@ -43,7 +42,6 @@ class task_item
/**
* Prevent logging
*
* @access protected
* @var boolean
*/
protected $restrict_log = false;
@@ -51,7 +49,6 @@ class task_item
/**#@+
* Registry Object Shortcuts
*
* @access protected
* @var object
*/
protected $registry;
@@ -60,13 +57,14 @@ class task_item
protected $request;
protected $lang;
protected $member;
protected $memberData;
protected $cache;
protected $caches;
/**#@-*/
/**
* Constructor
*
* @access public
* @param object ipsRegistry reference
* @param object Parent task class
* @param array This task data
@@ -92,7 +90,6 @@ class task_item
/**
* Run this task
*
* @access public
* @return void
*/
public function runTask()
@@ -105,8 +102,8 @@ class task_item
define( 'IN_ACP', 1 );
require_once( IPSLib::getAppDir( 'calendar' ) . '/modules_admin/calendar/calendars.php' );
$calendars = new admin_calendar_calendar_calendars();
$classToLoad = IPSLib::loadActionOverloader( IPSLib::getAppDir('calendar') . '/modules_admin/calendar/calendars.php' , 'admin_calendar_calendar_calendars' );
$calendars = new $classToLoad();
$calendars->makeRegistryShortcuts( $this->registry );
$calendars->calendarRebuildCache( 0 );
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1,295 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<templates application="calendar" templategroups="a:1:{s:13:&quot;skin_calendar&quot;;s:5:&quot;exact&quot;;}">
<templategroup group="skin_calendar">
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>mini_cal_blank_cell</template_name>
<template_data/>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>mini_cal_date_cell</template_name>
<template_data><![CDATA[$month_day="",$events=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>mini_cal_date_cell_today</template_name>
<template_data><![CDATA[$month_day="",$events=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>mini_cal_mini_wrap</template_name>
<template_data><![CDATA[$month="",$mid="",$year="",$events="",$day_words=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>mini_cal_new_row</template_name>
<template_data><![CDATA[$week=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>calendarEventForm</template_name>
<template_data><![CDATA[$code="", $calendar_id="", $formtype="", $event_id='', $event_title='', $form_title='', $event_date='', $event_type='', $groups, $button, $editor]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>calendarEventsList</template_name>
<template_data>$events</template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_week_monthbar</template_name>
<template_data><![CDATA[$month="",$year=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>calendarBirthdayList</template_name>
<template_data>$rows</template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_week_events_wrap</template_name>
<template_data><![CDATA[$link="",$text=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_week_dayentry</template_name>
<template_data><![CDATA[$wday="",$date="",$month="",$mid="",$year="",$events="",$queued=0]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_approve_button</template_name>
<template_data><![CDATA[$id="",$cal_id="",$event=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_blank_cell</template_name>
<template_data/>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_date_cell</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_date_cell_today</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_day_bit</template_name>
<template_data><![CDATA[$day="", $id='']]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_edit_del_button</template_name>
<template_data><![CDATA[$id="",$cal_id=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_events_wrap</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_events_wrap_manual</template_name>
<template_data><![CDATA[$url="",$text=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_events_wrap_range</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_events_wrap_recurring</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>calendar_rss_recurring</template_name>
<template_data>$event</template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>calendar_rss_range</template_name>
<template_data>$event</template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>calendar_rss_single</template_name>
<template_data>$event</template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>calendarMainContent</template_name>
<template_data><![CDATA[$calendars, $month="",$year="",$prev="",$next="",$cal_jump="",$cal_id="",$day_words=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_new_row</template_name>
<template_data><![CDATA[$week=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_show_event</template_name>
<template_data><![CDATA[$event="",$member="",$event_type="",$edit_button="",$approve_button="",$type="",$date_ends=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_unapprove_button</template_name>
<template_data><![CDATA[$id="",$cal_id="",$event=""]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content/>
<template_name>cal_week_content</template_name>
<template_data><![CDATA[$calendars, $date="",$month="",$year="",$prev="",$next="", $cal_id=1]]></template_data>
<template_updated>1260269079</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
</templategroup>
</templates>
@@ -0,0 +1,731 @@
<?xml version="1.0" encoding="utf-8"?>
<templates application="calendar" templategroups="a:1:{s:13:&quot;skin_calendar&quot;;s:5:&quot;exact&quot;;}">
<templategroup group="skin_calendar">
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_approve'><a href="{parse url="app=calendar&amp;module=calendar&amp;do=calendarEventApprove&amp;modfilter={$this->request['modfilter']}&amp;qt={$event['_quicktime']}&amp;approve=1&amp;md5check={$this->member->form_hash}&amp;cal_id={$cal_id}&amp;event_id=$id" base="public"}" title='{$this->lang->words['approve_event']}'>{parse replacement="edit_post_icon"} {$this->lang->words['approve_event']}</a></li>]]></template_content>
<template_name>cal_approve_button</template_name>
<template_data><![CDATA[$id="",$cal_id="",$event=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td class="blank"><!-- no content --></td>]]></template_content>
<template_name>cal_blank_cell</template_name>
<template_data/>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!--Day-->
<if test="datecellqueued:|:$queued != 0">
<td id='{$js_id}' class="moderated">
<strong>{$month_day}</strong><a href="{$cal_date_queued}">{parse replacement="t_queued"}</a>
<else />
<td id='{$js_id}'>
<strong>{$month_day}</strong>
</if>
{$events}
</td>]]></template_content>
<template_name>cal_date_cell</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!--Day-->
<if test="todayqueued:|:$queued != 0">
<td id='{$js_id}' class="today moderated">
<strong>{$month_day}: {$this->lang->words['today_title']}</strong> <a href="{$cal_date_queued}">{parse replacement="t_queued"}</a>
<else />
<td id='{$js_id}' class="today">
<strong>{$month_day}: {$this->lang->words['today_title']}</strong>
</if>
{$events}
</td>]]></template_content>
<template_name>cal_date_cell_today</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td id='{$id}'><strong>{$day}</strong></td>]]></template_content>
<template_name>cal_day_bit</template_name>
<template_data><![CDATA[$day="", $id='']]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_del'><a href='{parse url="app=calendar&amp;module=calendar&amp;do=delete&amp;md5check={$this->member->form_hash}&amp;event_id={$id}&amp;cal_id={$cal_id}" base="public"}' title='{$this->lang->words['calendar_delete_title']}'>{parse replacement="delete_post_icon"} {$this->lang->words['calendar_delete_button']}</a></li>
<li class='post_edit'><a href='{parse url="app=calendar&amp;module=calendar&amp;do=edit&amp;cal_id={$cal_id}&amp;event_id={$id}" base="public"}' title='{$this->lang->words['calendar_edit_title']}'>{parse replacement="edit_post_icon"} {$this->lang->words['calendar_edit_button']}</a></li>]]></template_content>
<template_name>cal_edit_del_button</template_name>
<template_data><![CDATA[$id="",$cal_id=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[</ul>]]></template_content>
<template_name>cal_events_end</template_name>
<template_data/>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<ul>]]></template_content>
<template_name>cal_events_start</template_name>
<template_data/>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" seotitle="false" template="event" base="public"}" title='{$this->lang->words['view_event']}'>{$event['event_title']}</a>
</li>]]></template_content>
<template_name>cal_events_wrap</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<if test="strpos( $url, "do=showevent" ) !== false">
<li class='cal'><a href="{parse url="app=calendar&amp;module=calendar&amp;{$url}" template="event" seotitle="false" base="public"}" title='{$this->lang->words['view_event']}'>{$text}</a></li>
<else />
<li class='cal'><a href="{parse url="app=calendar&amp;module=calendar&amp;{$url}" base="public"}" title='{$this->lang->words['view_event']}'>{$text}</a></li>
</if>]]></template_content>
<template_name>cal_events_wrap_manual</template_name>
<template_data><![CDATA[$url="",$text=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" template="event" seotitle="false" base="public"}" title='{$this->lang->words['view_event']}'>{$event['event_title']}</a>
</li>]]></template_content>
<template_name>cal_events_wrap_range</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" base="public"}" title="{$this->lang->words['tbt_recur']}">{$event['event_title']}</a>
</li>]]></template_content>
<template_name>cal_events_wrap_recurring</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[</tr>
<!-- NEW ROW-->
<php>
$this->row_class = ( $this->row_class == 'row1' ) ? 'row2' : 'row1';
</php>
<tr class='{$this->row_class}'>
<th class='view_week header' scope='row'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;do=showweek&amp;week={$week}" seotitle="false" template="cal_week" base="public"}" title="{$this->lang->words['view_this_week']}"><img src="{$this->settings['img_url']}/next.png" alt='' /></a>
</th>]]></template_content>
<template_name>cal_new_row</template_name>
<template_data><![CDATA[$week=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<if test="disablelightbox:|:!$this->settings['disable_lightbox']">
{parse template="include_lightbox" group="global" params=""}
</if>
{parse template="include_highlighter" group="global" params="1"}
<h2 class='maintitle'>{$this->lang->words['event_prefix']} {$event['event_title']}</h2>
<div class='generic_bar'></div>
<div class='post_block <if test="eventnotapproved:|:$event['event_approved']==0">moderated</if>' id='event_id_{$event['event_id']}'>
<div class='post_wrap'>
<if test="eventmember:|:$member['member_id']">
<h3>
<else />
<h3 class='guest'>
</if>
<if test="onlineoffline:|:$member['member_id']">
<if test="online:|:$member['_online']">
{parse replacement="user_online"}
<else />
{parse replacement="user_offline"}
</if> &nbsp;
<span class="author vcard"><a class="url fn" href='{parse url="showuser={$member['member_id']}" template="showuser" seotitle="{$member['members_seo_name']}" base="public"}' title='{$this->lang->words['view_profile']}'>{$member['members_display_name']}</a>{parse template="user_popup" group="global" params="$member['member_id'],$member['members_seo_name']"}</span>
<else />
{$member['members_display_name']}
</if>
</h3>
<div class='author_info'>
{parse template="userInfoPane" group="global" params="$member, $event['event_id'], array()"}
</div>
<div class='post_body'>
<p class='posted_info'>
<strong class='event'>{$this->lang->words['event_date']} {$event['_start_date']} {$date_ends} {$event['time']} ({$type})</strong>
</p>
<div class='post entry-content'>
{$event['event_content']}
</div>
</div>
<ul class='post_controls'>
<if test="reportpost:|:($this->settings['disable_reportpost'] != 1) and ( $this->memberData['member_id'] )">
<li class='report'><a href='{parse url="app=core&amp;module=reports&amp;rcom=calendar&amp;event_id={$event['event_id']}" base="public"}' title='{$this->lang->words['report_event']}'>{parse replacement="report_post_icon"} {$this->lang->words['report']}</a></li>
</if>
<!-- SKINNOTE: Add report link back in -->
{$approve_button} {$edit_button}
</ul>
</div>
</div>]]></template_content>
<template_name>cal_show_event</template_name>
<template_data><![CDATA[$event="",$member="",$event_type="",$edit_button="",$approve_button="",$type="",$date_ends=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_unapprove'><a href="{parse url="app=calendar&amp;module=calendar&amp;do=calendarEventApprove&amp;modfilter={$this->request['modfilter']}&amp;qt={$event['_quicktime']}&amp;approve=0&amp;md5check={$this->member->form_hash}&amp;cal_id={$cal_id}&amp;event_id={$id}" base="public"}" title='{$this->lang->words['unapprove_event']}'>{parse replacement="edit_post_icon"} {$this->lang->words['unapprove_event']}</a></li>]]></template_content>
<template_name>cal_unapprove_button</template_name>
<template_data><![CDATA[$id="",$cal_id="",$event=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[{parse js_module="calendar"}
<h2>{$this->lang->words['calendars']}</h2>
<div id='calendar_list' class='left general_box'>
<if test="calendarsforweek:|:is_array( $calendars ) && count( $calendars )">
<p><strong>{$this->lang->words['select_calendar']}</strong></p>
<ol>
<foreach loop="weekcalendars:$calendars as $cid => $cal">
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cid}&amp;do=showweek&amp;week={$this->request['week']}" seotitle="false" template="cal_week" base="public"}' title="{$this->lang->words['view_this_calendar']}" class='rounded'>{$cal['cal_title']}</a></li>
</foreach>
</ol>
</if>
<strong>{$this->lang->words['jump_to']}</strong><br />
<form action="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}" base="public"}" method="post">
<fieldset>
<label for='m' class='hide'>{$this->lang->words['fv_months']}:</label>
<select name="m" class='input_select'><!--IBF.MONTH_BOX--></select>&nbsp;
<label for='year' class='hide'>{$this->lang->words['fv_years']}:</label>
<select name="year" class='input_select'><!--IBF.YEAR_BOX--></select>&nbsp;
<input type='submit' class='input_submit' value='{$this->lang->words['jmp_go']}' />
</fieldset>
</form>
</div>
<div id='current_calendar' class='right calendar_wrap'>
<div class='topic_controls'>
<ul class='pagination'>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=showweek&amp;week={$prev['0']}" seotitle="false" template="cal_week" base="public"}" title="{$prev['month_name']} {$prev['year_id']}">{$this->lang->words['_larr']} {$this->lang->words['week_previous']}</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=showweek&amp;week={$next['0']}" seotitle="false" template="cal_week" base="public"}" title="{$next['month_name']} {$next['year_id']}">{$this->lang->words['week_next']} {$this->lang->words['_rarr']}</a></li>
</ul>
<ul class='topic_buttons'>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=single" base="public"}' title='{$this->lang->words['se_normal']}'>{parse replacement="cal_single"} {$this->lang->words['event_add_single']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=range" base="public"}' title='{$this->lang->words['se_range']}'>{parse replacement="cal_ranged"} {$this->lang->words['event_add_ranged']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=recur" base="public"}' title='{$this->lang->words['se_recur']}'>{parse replacement="cal_recurring"} {$this->lang->words['event_add_recurring']}</a></li>
</ul>
</div>
<br />
<h2 class='maintitle'>{$this->lang->words['week_beginning']} {$date} {$month} {$year}</h2>
<ol id='week_view' class='clear'>
<!--IBF.DAYS_CONTENT-->
</ol>
</div>
<div id='mini_calendars' class='left calendar_wrap'>
<!--PREV.MONTH-->
<br />
<!--THIS.MONTH-->
<br />
<!--NEXT.MONTH-->
</div>]]></template_content>
<template_name>cal_week_content</template_name>
<template_data><![CDATA[$calendars, $date="",$month="",$year="",$prev="",$next="", $cal_id=1]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<php>
$this->week_view = ( $this->week_view == 'row1' ) ? 'row2' : 'row1';
</php>
<li id='day-{$year}_{$mid}_{$date}' class='day {$this->week_view} <if test="weekdayentryqueued:|:$queued != 0">{$this->lang->words['moderated']}</if>'>
<h3 class='bar'>{$wday}</h3>
<div>
<span class='date altrow'>{$date}</span>
<ul>
{$events}
</ul>
</div>
</li>]]></template_content>
<template_name>cal_week_dayentry</template_name>
<template_data><![CDATA[$wday="",$date="",$month="",$mid="",$year="",$events="",$queued=0]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;$link" base="public"}" title='{$this->lang->words['view_event']}'>{$text}</a>
</li>]]></template_content>
<template_name>cal_week_events_wrap</template_name>
<template_data><![CDATA[$link="",$text=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='month_bar header'>
{$month} {$year}
</li>]]></template_content>
<template_name>cal_week_monthbar</template_name>
<template_data><![CDATA[$month="",$year=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_ranged']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>]]></template_content>
<template_name>calendar_rss_range</template_name>
<template_data>$event</template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_recurring']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>]]></template_content>
<template_name>calendar_rss_recurring</template_name>
<template_data>$event</template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_singleday']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}</p>]]></template_content>
<template_name>calendar_rss_single</template_name>
<template_data>$event</template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<h2>{$this->lang->words['cal_birthdays']}</h2>
<div class='general_box'>
{parse striping="bday" classes="row1,row2"}
<ul>
<foreach loop="birthdays:$rows as $r">
<li class='{parse striping="bday"}'><a href="{parse url="showuser={$r['uid']}" template="showuser" seotitle="{$r['seoname']}" base="public"}">{$r['uname']}</a> <if test="age:|:$r['age']">(<strong>{$r['age']}</strong>)</if></li>
</foreach>
</ul>
</div>]]></template_content>
<template_name>calendarBirthdayList</template_name>
<template_data>$rows</template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[{parse js_module="calendar"}
<script type='text/javascript'>
ipb.calendar.inSection = 'form';
</script>
<div class='post_form'>
<form id='postingform' action="{parse url="app=calendar&module=calendar&amp;do={$code}&amp;cal_id={$calendar_id}&amp;formtype={$formtype}&amp;event_id={$event_id}" base="public"}" method="post">
<input type="hidden" name="removeattachid" value="" />
<h2 class='maintitle'>{$form_title}</h2>
<div class='generic_bar'></div>
<fieldset>
<h3 class='bar'>{$this->lang->words['event_details']}</h3>
<ul>
<li class='field'>
<label for='event_title'>{$this->lang->words['calendar_title']}</label>
<input type='text' id='event_title' class='input_text' name='event_title' value="{$event_title}" size='50' maxlength='50' />
</li>
<if test="single:|:$formtype == 'single'">
<li class='field'>
<label for='e_day'>{$this->lang->words['fv_single']}</label>
<!-- SKINNOTE: Update this to use the calendar picker? -->
<select class='input_select' name="e_day" id='e_day'>{$event_date['nd']}</select>&nbsp;&nbsp;
<select class='input_select' name="e_month">{$event_date['nm']}</select>&nbsp;&nbsp;
<select class='input_select' name="e_year">{$event_date['ny']}</select>
</li>
</if>
<if test="range:|:$formtype == 'range'">
<li class='field'>
<label for='e_day'>{$this->lang->words['fv_single']}</label>
<select class='input_select' name="e_day" id='e_day'>{$event_date['nd']}</select>&nbsp;&nbsp;
<select class='input_select' name="e_month">{$event_date['nm']}</select>&nbsp;&nbsp;
<select class='input_select' name="e_year">{$event_date['ny']}</select>
</li>
<li class='field'>
<label for='end_day'>{$this->lang->words['fv_range_ends']}</label>
<select class='input_select' name="end_day" id='end_day'>{$event_date['fd']}</select>&nbsp;&nbsp;
<select class='input_select' name="end_month">{$event_date['fm']}</select>&nbsp;&nbsp;
<select class='input_select' name="end_year">{$event_date['fy']}</select>
</li>
</if>
<if test="recur:|:$formtype == 'recur'">
<li class='field'>
<label for='e_day'>{$this->lang->words['fv_single']}</label>
<select class='input_select' name="e_day" id='e_day'>{$event_date['nd']}</select>&nbsp;&nbsp;
<select class='input_select' name="e_month">{$event_date['nm']}</select>&nbsp;&nbsp;
<select class='input_select' name="e_year">{$event_date['ny']}</select>
</li>
<li class='field'>
<label for='recur_unit'>{$this->lang->words['fv_recur']}</label>
{$this->lang->words['fv_recur_every']}
<select class='input_select' name="recur_unit" id='recur_unit'>{$event_date['recur_unit']}</select>
{$this->lang->words['fv_until']}
<select class='input_select' name="end_day">{$event_date['fd']}</select>&nbsp;&nbsp;
<select class='input_select' name="end_month">{$event_date['fm']}</select>&nbsp;&nbsp;
<select class='input_select' name="end_year">{$event_date['fy']}</select>
</li>
</if>
<if test="settimes:|:$event_type['timestuff']['formtype'] != 'range'">
<li class='field checkbox'>
<input class='input_check' type='checkbox' id='set_times' name='set_times' {$event_type['timestuff']['checked']} value='1' />
<label for='set_times'>{$this->lang->words['form_set_times']}</label>
</li>
<li class='field time_setting'>
<label for='timezone'>{$this->lang->words['form_tz']}</label>
{$event_type['timezone']}
</li>
<li class='field time_setting'>
<label for='tz_start'>{$this->lang->words['form_timestart']}</label>
<input class='input_text' type='text' size='8' id='tz_start' name='event_timestart' value='{$event_type['timestuff']['timestart']}' />
</li>
</if>
</ul>
<h3 class='bar'>{$this->lang->words['event_options']}</h3>
<ul>
<li class='field'>
<label for='event_calendar_id'>{$this->lang->words['form_whichcal']}</label>
<select name='event_calendar_id' id='event_calendar_id'>{$event_type['dropdown']}</select>
</li>
<li class='field'>
<label for='e_type'>{$this->lang->words['calendar_event_type']}</label>
<select name="e_type" id='e_type'>
<option value="public"{$event_type['pub_select']}>{$this->lang->words['calendar_type_public']}</option>
<option value="private"{$event_type['priv_select']}>{$this->lang->words['calendar_type_private']}</option>
</select>
</li>
<if test="acpaccess:|:$this->memberData['g_access_cp']">
<li class='field type_setting'>
<label for='e_groups'>{$this->lang->words['calendar_group_filter']}</label>
<select name="e_groups[]" id='e_groups' size="5" multiple='multiple'>{$groups}</select>
</li>
<li class='field checkbox type_setting'>
<input type='checkbox' id='all_groups' value='1' class='input_check' />
<label for='all_groups'>{$this->lang->words['all_groups']}</label>
</if>
</ul>
<script type='text/javascript'>
<if test="hidetime:|:$event_type['timestuff']['divhide'] == 'none'">
$$('.time_setting').invoke('hide');
</if>
<if test="adminoptions:|:$this->memberData['g_access_cp']">
ipb.calendar.hideAdminOptions();
</if>
</script>
<h3 class='bar'>{$this->lang->words['event']}</h3>
<ul>
<li>{$editor}</li>
<li class='field checkbox'>
<input type="checkbox" name="enableemo" class="input_check" value="yes" <if test="hassmilies:|:$event_type['smilies'] == 1">checked='checked'</if> />
<label for='enableemo'>{$this->lang->words['enable_emo']}</label>
</li>
</ul>
</fieldset>
<fieldset class='submit'>
<input class='input_submit' type="submit" value="{$button}" tabindex="4" /> {$this->lang->words['or']} <a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$calendar_id}" base="public"}' title='{$this->lang->words['cancel']}' class='cancel'>{$this->lang->words['cancel']}</a>
</fieldset>
</form>
</div>]]></template_content>
<template_name>calendarEventForm</template_name>
<template_data><![CDATA[$code="", $calendar_id="", $formtype="", $event_id='', $event_title='', $form_title='', $event_date='', $event_type='', $groups, $button, $editor]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[{parse js_module="topic"}
<script type="text/javascript">
//<!#^#|CDATA|
function calendar_event_delete(id, cal_id)
{
if (confirm('{$this->lang->words['js_del_1']}'))
{
window.location.href = "{$this->settings['base_url']}app=calendar&amp;module=calendar&amp;do=delete&md5check={$this->member->form_hash}&event_id=" + id + "&cal_id=" + cal_id;
}
else {
alert ('{$this->lang->words['js_del_2']}');
}
}
//|#^#]>
</script>
<!--SKINNOTE: I commented this out because we need to show event titles, and this seemed "prettiest", but feel free to change -->
<!--<h2>{$this->lang->words['cal_title_events']}</h2>
<div class='generic_bar'></div>-->
{$events}]]></template_content>
<template_name>calendarEventsList</template_name>
<template_data>$events</template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[{parse js_module="calendar"}
<h2>{$this->lang->words['calendars']}</h2>
<div id='calendar_list' class='left general_box'>
<if test="gotcalendars:|:is_array( $calendars ) && count( $calendars )">
<p><strong>{$this->lang->words['select_calendar']}</strong></p>
<ol>
<foreach loop="calendars:$calendars as $cid => $cal">
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cid}&amp;m={$this->request['m']}&amp;y={$this->request['y']}" base="public"}' title="{$this->lang->words['view_this_calendar']}" class='rounded'>{$cal['cal_title']}</a></li>
</foreach>
</ol>
</if>
<strong>{$this->lang->words['jump_to']}</strong><br />
<form action="{parse url="app=calendar&amp;module=calendar" base="public"}" method="post">
<fieldset>
<input type='hidden' name='cal_id' value='{$this->request['cal_id']}' />
<label for='m' class='hide'>{$this->lang->words['fv_months']}:</label>
<select name="m" class='input_select'><!--IBF.MONTH_BOX--></select>&nbsp;
<label for='year' class='hide'>{$this->lang->words['fv_years']}:</label>
<select name="year" class='input_select'><!--IBF.YEAR_BOX--></select>&nbsp;
<input type='submit' class='input_submit' value='{$this->lang->words['jmp_go']}' />
</fieldset>
</form>
</div>
<div id='current_calendar' class='right calendar_wrap'>
<div class='topic_controls'>
<ul class='pagination'>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;m={$prev['month_id']}&amp;y={$prev['year_id']}" base="public"}" title="{$prev['month_name']} {$prev['year_id']}">{$this->lang->words['_larr']} {$this->lang->words['month_previous']}</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;m={$next['month_id']}&amp;y={$next['year_id']}" base="public"}" title="{$next['month_name']} {$next['year_id']}">{$this->lang->words['month_next']} {$this->lang->words['_rarr']}</a></li>
</ul>
<ul class='topic_buttons'>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=single" base="public"}' title='{$this->lang->words['se_normal']}'>{parse replacement="cal_single"} {$this->lang->words['event_add_single']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=range" base="public"}' title='{$this->lang->words['se_range']}'>{parse replacement="cal_ranged"} {$this->lang->words['event_add_ranged']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=recur" base="public"}' title='{$this->lang->words['se_recur']}'>{parse replacement="cal_recurring"} {$this->lang->words['event_add_recurring']}</a></li>
</ul>
</div>
<br />
<table id='calendar_table' class='ipb_table' summary="{$this->lang->words['calendar_for']} {$month} {$year}">
<caption class='maintitle'>{$month} {$year}</caption>
<tr class='header'>
<th class='head_week' scope='col'>&nbsp;</th>
<foreach loop="days:$day_words as $day">
<th scope='col'>{$day}</th>
</foreach>
<!--IBF.DAYS_CONTENT-->
</tr>
</table>
<ul class='pagination'>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=find&amp;what=thismonth" base="public"}">{$this->lang->words['aa_cur_month']}</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=find&amp;what=thisweek" base="public"}">{$this->lang->words['aa_view_week']}</a></li>
</ul>
</div>
<div id='mini_calendars' class='left calendar_wrap'>
<!--PREV.MONTH-->
<br />
<!--NEXT.MONTH-->
</div>
<br />]]></template_content>
<template_name>calendarMainContent</template_name>
<template_data><![CDATA[$calendars, $month="",$year="",$prev="",$next="",$cal_jump="",$cal_id="",$day_words=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td class='blank'><!-- no content --></td>]]></template_content>
<template_name>mini_cal_blank_cell</template_name>
<template_data/>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td>
{$month_day}
</td>]]></template_content>
<template_name>mini_cal_date_cell</template_name>
<template_data><![CDATA[$month_day="",$events=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td class="today">
<strong>{$month_day}</strong>
</td>]]></template_content>
<template_name>mini_cal_date_cell_today</template_name>
<template_data><![CDATA[$month_day="",$events=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!-- <a href="{parse url="app=calendar&module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;m={$mid}&amp;y=$year" base="public"}"> -->
<php>
$this->mini_cal = 'row2';
</php>
<h3 class='maintitle'>{$month} {$year}</h3>
<table class='mini_cal'>
<tr class='header'>
<th class='head_week'>&nbsp;</th>
<foreach loop="minidays:$day_words as $day">
<th>{parse expression="IPSText::mbsubstr( $day, 0, 1 )"}</th>
</foreach>
{$events}
</tr>
</table>]]></template_content>
<template_name>mini_cal_mini_wrap</template_name>
<template_data><![CDATA[$month="",$mid="",$year="",$events="",$day_words=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[</tr>
<!-- NEW ROW-->
<php>
$this->mini_cal = ( $this->mini_cal == 'row1' ) ? 'row2' : 'row1';
$this->request['_cal_id'] = ( $this->request['_cal_id'] ) ? $this->request['_cal_id'] : 1;
</php>
<tr class='{$this->mini_cal}'>
<th class='view_week header'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;do=showweek&amp;week={$week}" seotitle="false" template="cal_week" base="public"}" title='{$this->lang->words['view_this_week']}' ><img src="{$this->settings['img_url']}/next.png" alt='' /></a>
</th>]]></template_content>
<template_name>mini_cal_new_row</template_name>
<template_data><![CDATA[$week=""]]></template_data>
<template_updated>1288018126</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>mobile</template_master_key>
</template>
</templategroup>
</templates>
@@ -2,7 +2,7 @@
<css>
<cssfile>
<css_set_id>0</css_set_id>
<css_updated>1260269066</css_updated>
<css_updated>1288018123</css_updated>
<css_group>ipb_calendar</css_group>
<css_content>/************************************************************************/
/* IP.Board 3 CSS - By Rikki Tissier - (c)2008 Invision Power Services */
@@ -11,8 +11,9 @@
/************************************************************************/
div#calendar_list {
width: 17%;
width: 92%;
padding: 10px;
margin: 8px 0 15px 0;
}
div#calendar_list ol {
@@ -129,6 +130,10 @@ div#mini_calendars table,
border-top: 0;
}
.mini-cal-wrap {
width: 100%;
}
div#mini_calendars th.view_week {
padding: 6px 2px;
}
@@ -149,6 +154,7 @@ div#mini_calendars th, div#mini_calendars td,
.cal_color {
margin-right: 8px;
padding: 0 7px;
border-radius: 2px;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
}
@@ -157,6 +163,7 @@ div#mini_calendars th, div#mini_calendars td,
background-color: #d5dde5;
color: #fff;
font-size: 0.8em;
border-radius: 2px;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
padding: 2px 5px;
@@ -192,5 +199,6 @@ div#mini_calendars th, div#mini_calendars td,
<css_modules/>
<css_user_added>0</css_user_added>
<css_user_edited>0</css_user_edited>
<css_master_key>root</css_master_key>
</cssfile>
</css>
@@ -1,6 +1,401 @@
<?xml version="1.0" encoding="utf-8"?>
<templates application="calendar" templategroups="a:1:{s:13:&quot;skin_calendar&quot;;s:5:&quot;exact&quot;;}">
<templategroup group="skin_calendar">
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_approve'><a href="{parse url="app=calendar&amp;module=calendar&amp;do=calendarEventApprove&amp;modfilter={$this->request['modfilter']}&amp;qt={$event['_quicktime']}&amp;approve=1&amp;md5check={$this->member->form_hash}&amp;cal_id={$cal_id}&amp;event_id={$id}" base="public"}" title='{$this->lang->words['approve_event']}'>{parse replacement="edit_post_icon"} {$this->lang->words['approve_event']}</a></li>]]></template_content>
<template_name>cal_approve_button</template_name>
<template_data><![CDATA[$id="",$cal_id="",$event=""]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td class="blank"><!-- no content --></td>]]></template_content>
<template_name>cal_blank_cell</template_name>
<template_data/>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!--Day-->
<if test="datecellqueued:|:$queued != 0">
<td id='{$js_id}' class="moderated">
<strong>{$month_day}</strong><a href="{$cal_date_queued}">{parse replacement="t_queued"}</a>
<else />
<td id='{$js_id}'>
<strong>{$month_day}</strong>
</if>
{$events}
</td>]]></template_content>
<template_name>cal_date_cell</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!--Day-->
<if test="todayqueued:|:$queued != 0">
<td id='{$js_id}' class="today moderated">
<strong>{$month_day}: {$this->lang->words['today_title']}</strong> <a href="{$cal_date_queued}">{parse replacement="t_queued"}</a>
<else />
<td id='{$js_id}' class="today">
<strong>{$month_day}: {$this->lang->words['today_title']}</strong>
</if>
{$events}
</td>]]></template_content>
<template_name>cal_date_cell_today</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td id='{$id}'><strong>{$day}</strong></td>]]></template_content>
<template_name>cal_day_bit</template_name>
<template_data><![CDATA[$day="", $id='']]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_del'><a href='{parse url="app=calendar&amp;module=calendar&amp;do=delete&amp;md5check={$this->member->form_hash}&amp;event_id={$id}&amp;cal_id={$cal_id}" base="public"}' title='{$this->lang->words['calendar_delete_title']}'>{parse replacement="delete_post_icon"} {$this->lang->words['calendar_delete_button']}</a></li>
<li class='post_edit'><a href='{parse url="app=calendar&amp;module=calendar&amp;do=edit&amp;cal_id={$cal_id}&amp;event_id={$id}" base="public"}' title='{$this->lang->words['calendar_edit_title']}'>{parse replacement="edit_post_icon"} {$this->lang->words['calendar_edit_button']}</a></li>]]></template_content>
<template_name>cal_edit_del_button</template_name>
<template_data><![CDATA[$id="",$cal_id=""]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[</ul>]]></template_content>
<template_name>cal_events_end</template_name>
<template_data/>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<ul>]]></template_content>
<template_name>cal_events_start</template_name>
<template_data/>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" seotitle="false" template="event" base="public"}" title='{$this->lang->words['view_event']}'>{$event['event_title']}</a>
</li>]]></template_content>
<template_name>cal_events_wrap</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<if test="strpos( $url, "do=showevent" ) !== false">
<li class='cal'><a href="{parse url="app=calendar&amp;module=calendar&amp;{$url}" template="event" seotitle="false" base="public"}" title='{$this->lang->words['view_event']}'>{$text}</a></li>
<else />
<li class='cal'><a href="{parse url="app=calendar&amp;module=calendar&amp;{$url}" base="public"}" title='{$this->lang->words['view_event']}'>{$text}</a></li>
</if>]]></template_content>
<template_name>cal_events_wrap_manual</template_name>
<template_data><![CDATA[$url="",$text=""]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" template="event" seotitle="false" base="public"}" title='{$this->lang->words['view_event']}'>{$event['event_title']}</a>
</li>]]></template_content>
<template_name>cal_events_wrap_range</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" base="public" template="event" seotitle="false"}" title="{$this->lang->words['tbt_recur']}">{$event['event_title']}</a>
</li>]]></template_content>
<template_name>cal_events_wrap_recurring</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[</tr>
<!-- NEW ROW-->
<php>
$this->row_class = ( $this->row_class == 'row1' ) ? 'row2' : 'row1';
</php>
<tr class='{$this->row_class}'>
<th class='view_week header' scope='row'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;do=showweek&amp;week={$week}" seotitle="false" template="cal_week" base="public"}" title="{$this->lang->words['view_this_week']}"><img src="{$this->settings['img_url']}/next.png" alt='' /></a>
</th>]]></template_content>
<template_name>cal_new_row</template_name>
<template_data><![CDATA[$week=""]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<if test="disablelightbox:|:!$this->settings['disable_lightbox']">
{parse template="include_lightbox" group="global" params=""}
</if>
{parse template="include_highlighter" group="global" params="1"}
<h2 class='maintitle'>{$this->lang->words['event_prefix']} {$event['event_title']}</h2>
<div class='generic_bar'></div>
<div class='post_block <if test="eventnotapproved:|:$event['event_approved']==0">moderated</if>' id='event_id_{$event['event_id']}'>
<div class='post_wrap'>
<if test="eventmember:|:$member['member_id']">
<h3>
<else />
<h3 class='guest'>
</if>
<if test="onlineoffline:|:$member['member_id']">
<if test="online:|:$member['_online']">
{parse replacement="user_online"}
<else />
{parse replacement="user_offline"}
</if> &nbsp;
<span class="author vcard"><a class="url fn" href='{parse url="showuser={$member['member_id']}" template="showuser" seotitle="{$member['members_seo_name']}" base="public"}' title='{$this->lang->words['view_profile']}'>{$member['members_display_name']}</a>{parse template="user_popup" group="global" params="$member['member_id'],$member['members_seo_name']"}</span>
<else />
{$member['members_display_name']}
</if>
</h3>
<div class='author_info'>
{parse template="userInfoPane" group="global" params="$member, $event['event_id'], array()"}
</div>
<div class='post_body'>
<p class='posted_info'>
<strong class='event'>{$this->lang->words['event_date']} {$event['_start_date']} {$date_ends} {$event['time']} ({$type})</strong>
</p>
<div class='post entry-content'>
{$event['event_content']}
</div>
</div>
<ul class='post_controls'>
<if test="reportpost:|:($this->settings['disable_reportpost'] != 1) and ( $this->memberData['member_id'] )">
<li class='report'><a href='{parse url="app=core&amp;module=reports&amp;rcom=calendar&amp;event_id={$event['event_id']}" base="public"}' title='{$this->lang->words['report_event']}'>{parse replacement="report_post_icon"} {$this->lang->words['report']}</a></li>
</if>
<!-- SKINNOTE: Add report link back in -->
{$approve_button} {$edit_button}
</ul>
</div>
</div>]]></template_content>
<template_name>cal_show_event</template_name>
<template_data><![CDATA[$event="",$member="",$event_type="",$edit_button="",$approve_button="",$type="",$date_ends=""]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_unapprove'><a href="{parse url="app=calendar&amp;module=calendar&amp;do=calendarEventApprove&amp;modfilter={$this->request['modfilter']}&amp;qt={$event['_quicktime']}&amp;approve=0&amp;md5check={$this->member->form_hash}&amp;cal_id={$cal_id}&amp;event_id={$id}" base="public"}" title='{$this->lang->words['unapprove_event']}'>{parse replacement="edit_post_icon"} {$this->lang->words['unapprove_event']}</a></li>]]></template_content>
<template_name>cal_unapprove_button</template_name>
<template_data><![CDATA[$id="",$cal_id="",$event=""]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[{parse js_module="calendar"}
<h2>{$this->lang->words['calendars']}</h2>
<div id='current_calendar' class='right calendar_wrap'>
<div class='topic_controls'>
<ul class='pagination'>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=showweek&amp;week={$prev['0']}" seotitle="false" template="cal_week" base="public"}" title="{$prev['month_name']} {$prev['year_id']}">{$this->lang->words['_larr']} {$this->lang->words['week_previous']}</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=showweek&amp;week={$next['0']}" seotitle="false" template="cal_week" base="public"}" title="{$next['month_name']} {$next['year_id']}">{$this->lang->words['week_next']} {$this->lang->words['_rarr']}</a></li>
</ul>
<ul class='topic_buttons'>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=single" base="public"}' title='{$this->lang->words['se_normal']}'>{parse replacement="cal_single"} {$this->lang->words['event_add_single']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=range" base="public"}' title='{$this->lang->words['se_range']}'>{parse replacement="cal_ranged"} {$this->lang->words['event_add_ranged']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=recur" base="public"}' title='{$this->lang->words['se_recur']}'>{parse replacement="cal_recurring"} {$this->lang->words['event_add_recurring']}</a></li>
</ul>
</div>
<br />
<h2 class='maintitle'>{$this->lang->words['week_beginning']} {$date} {$month} {$year}</h2>
<ol id='week_view' class='clear'>
<!--IBF.DAYS_CONTENT-->
</ol>
</div>
<div id='mini_calendars' class='left calendar_wrap'>
<div id='calendar_list' class='left general_box'>
<if test="calendarsforweek:|:is_array( $calendars ) && count( $calendars )">
<p><strong>{$this->lang->words['select_calendar']}</strong></p>
<ol>
<foreach loop="weekcalendars:$calendars as $cid => $cal">
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cid}&amp;do=showweek&amp;week={$this->request['week']}" seotitle="false" template="cal_week" base="public"}' title="{$this->lang->words['view_this_calendar']}" class='rounded'>{$cal['cal_title']}</a></li>
</foreach>
</ol>
</if>
<strong>{$this->lang->words['jump_to']}</strong><br />
<form action="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}" base="public"}" method="post">
<fieldset>
<label for='m' class='hide'>{$this->lang->words['fv_months']}:</label>
<select name="m" class='input_select'><!--IBF.MONTH_BOX--></select>&nbsp;
<label for='year' class='hide'>{$this->lang->words['fv_years']}:</label>
<select name="year" class='input_select'><!--IBF.YEAR_BOX--></select>&nbsp;
<input type='submit' class='input_submit' value='{$this->lang->words['jmp_go']}' />
</fieldset>
</form>
</div>
<br style='clear:both;' />
<!--PREV.MONTH-->
<br />
<!--THIS.MONTH-->
<br />
<!--NEXT.MONTH-->
</div>]]></template_content>
<template_name>cal_week_content</template_name>
<template_data><![CDATA[$calendars, $date="",$month="",$year="",$prev="",$next="", $cal_id=1]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<php>
$this->week_view = ( $this->week_view == 'row1' ) ? 'row2' : 'row1';
</php>
<li id='day-{$year}_{$mid}_{$date}' class='day {$this->week_view} <if test="weekdayentryqueued:|:$queued != 0">{$this->lang->words['moderated']}</if>'>
<h3 class='bar'>{$wday}</h3>
<div>
<span class='date altrow'>{$date}</span>
<ul>
{$events}
</ul>
</div>
</li>]]></template_content>
<template_name>cal_week_dayentry</template_name>
<template_data><![CDATA[$wday="",$date="",$month="",$mid="",$year="",$events="",$queued=0]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;$link" base="public"}" title='{$this->lang->words['view_event']}'>{$text}</a>
</li>]]></template_content>
<template_name>cal_week_events_wrap</template_name>
<template_data><![CDATA[$link="",$text=""]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='month_bar header'>
{$month} {$year}
</li>]]></template_content>
<template_name>cal_week_monthbar</template_name>
<template_data><![CDATA[$month="",$year=""]]></template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_ranged']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>]]></template_content>
<template_name>calendar_rss_range</template_name>
<template_data>$event</template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_recurring']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>]]></template_content>
<template_name>calendar_rss_recurring</template_name>
<template_data>$event</template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_singleday']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}</p>]]></template_content>
<template_name>calendar_rss_single</template_name>
<template_data>$event</template_data>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<h2>{$this->lang->words['cal_birthdays']}</h2>
@@ -14,10 +409,11 @@
</div>]]></template_content>
<template_name>calendarBirthdayList</template_name>
<template_data>$rows</template_data>
<template_updated>1260269067</template_updated>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -28,6 +424,7 @@
<div class='post_form'>
<form id='postingform' action="{parse url="app=calendar&module=calendar&amp;do={$code}&amp;cal_id={$calendar_id}&amp;formtype={$formtype}&amp;event_id={$event_id}" base="public"}" method="post">
<input type="hidden" name="removeattachid" value="" />
<input type="hidden" name="auth_key" value="{$this->member->form_hash}" />
<h2 class='maintitle'>{$form_title}</h2>
<div class='generic_bar'></div>
@@ -147,10 +544,11 @@
</div>]]></template_content>
<template_name>calendarEventForm</template_name>
<template_data><![CDATA[$code="", $calendar_id="", $formtype="", $event_id='', $event_title='', $form_title='', $event_date='', $event_type='', $groups, $button, $editor]]></template_data>
<template_updated>1260269067</template_updated>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -175,41 +573,21 @@
{$events}]]></template_content>
<template_name>calendarEventsList</template_name>
<template_data>$events</template_data>
<template_updated>1260269067</template_updated>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[{parse js_module="calendar"}
<h2>{$this->lang->words['calendars']}</h2>
<div id='calendar_list' class='left general_box'>
<if test="gotcalendars:|:is_array( $calendars ) && count( $calendars )">
<p><strong>{$this->lang->words['select_calendar']}</strong></p>
<ol>
<foreach loop="calendars:$calendars as $cid => $cal">
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cid}&amp;m={$this->request['m']}&amp;y={$this->request['y']}" base="public"}' title="{$this->lang->words['view_this_calendar']}" class='rounded'>{$cal['cal_title']}</a></li>
</foreach>
</ol>
</if>
<strong>{$this->lang->words['jump_to']}</strong><br />
<form action="{parse url="app=calendar&amp;module=calendar" base="public"}" method="post">
<fieldset>
<input type='hidden' name='cal_id' value='{$this->request['cal_id']}' />
<label for='m' class='hide'>{$this->lang->words['fv_months']}:</label>
<select name="m" class='input_select'><!--IBF.MONTH_BOX--></select>&nbsp;
<label for='year' class='hide'>{$this->lang->words['fv_years']}:</label>
<select name="year" class='input_select'><!--IBF.YEAR_BOX--></select>&nbsp;
<input type='submit' class='input_submit' value='{$this->lang->words['jmp_go']}' />
</fieldset>
</form>
</div>
<div id='current_calendar' class='right calendar_wrap'>
<div class='topic_controls'>
<ul class='pagination'>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;m={$prev['month_id']}&amp;y={$prev['year_id']}" base="public"}" title="{$prev['month_name']} {$prev['year_id']}">&larr; {$this->lang->words['month_previous']}</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;m={$next['month_id']}&amp;y={$next['year_id']}" base="public"}" title="{$next['month_name']} {$next['year_id']}">{$this->lang->words['month_next']} &rarr;</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;m={$prev['month_id']}&amp;y={$prev['year_id']}" base="public"}" title="{$prev['month_name']} {$prev['year_id']}">{$this->lang->words['_larr']} {$this->lang->words['month_previous']}</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;m={$next['month_id']}&amp;y={$next['year_id']}" base="public"}" title="{$next['month_name']} {$next['year_id']}">{$this->lang->words['month_next']} {$this->lang->words['_rarr']}</a></li>
</ul>
<ul class='topic_buttons'>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=single" base="public"}' title='{$this->lang->words['se_normal']}'>{parse replacement="cal_single"} {$this->lang->words['event_add_single']}</a></li>
@@ -236,6 +614,28 @@
</ul>
</div>
<div id='mini_calendars' class='left calendar_wrap'>
<div id='calendar_list' class='general_box'>
<if test="gotcalendars:|:is_array( $calendars ) && count( $calendars )">
<p><strong>{$this->lang->words['select_calendar']}</strong></p>
<ol>
<foreach loop="calendars:$calendars as $cid => $cal">
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cid}&amp;m={$this->request['m']}&amp;y={$this->request['y']}" base="public"}' title="{$this->lang->words['view_this_calendar']}" class='rounded'>{$cal['cal_title']}</a></li>
</foreach>
</ol>
</if>
<strong>{$this->lang->words['jump_to']}</strong><br />
<form action="{parse url="app=calendar&amp;module=calendar" base="public"}" method="post">
<fieldset>
<input type='hidden' name='cal_id' value='{$this->request['cal_id']}' />
<label for='m' class='hide'>{$this->lang->words['fv_months']}:</label>
<select name="m" class='input_select'><!--IBF.MONTH_BOX--></select>&nbsp;
<label for='year' class='hide'>{$this->lang->words['fv_years']}:</label>
<select name="year" class='input_select'><!--IBF.YEAR_BOX--></select>&nbsp;
<input type='submit' class='input_submit' value='{$this->lang->words['jmp_go']}' />
</fieldset>
</form>
</div>
<!--PREV.MONTH-->
<br />
<!--NEXT.MONTH-->
@@ -243,407 +643,22 @@
<br />]]></template_content>
<template_name>calendarMainContent</template_name>
<template_data><![CDATA[$calendars, $month="",$year="",$prev="",$next="",$cal_jump="",$cal_id="",$day_words=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_ranged']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>]]></template_content>
<template_name>calendar_rss_range</template_name>
<template_data>$event</template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_recurring']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>]]></template_content>
<template_name>calendar_rss_recurring</template_name>
<template_data>$event</template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_singleday']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}</p>]]></template_content>
<template_name>calendar_rss_single</template_name>
<template_data>$event</template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_approve'><a href="{parse url="app=calendar&amp;module=calendar&amp;do=calendarEventApprove&amp;modfilter={$this->request['modfilter']}&amp;qt={$event['_quicktime']}&amp;approve=1&amp;md5check={$this->member->form_hash}&amp;cal_id={$cal_id}&amp;event_id=$id" base="public"}" title='{$this->lang->words['approve_event']}'>{parse replacement="edit_post_icon"} {$this->lang->words['approve_event']}</a></li>]]></template_content>
<template_name>cal_approve_button</template_name>
<template_data><![CDATA[$id="",$cal_id="",$event=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td class="blank"><!-- no content --></td>]]></template_content>
<template_name>cal_blank_cell</template_name>
<template_data/>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!--Day-->
<if test="datecellqueued:|:$queued != 0">
<td id='{$js_id}' class="moderated">
<strong>{$month_day}</strong><a href="{$cal_date_queued}">{parse replacement="t_queued"}</a>
<else />
<td id='{$js_id}'>
<strong>{$month_day}</strong>
</if>
{$events}
</td>]]></template_content>
<template_name>cal_date_cell</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!--Day-->
<if test="todayqueued:|:$queued != 0">
<td id='{$js_id}' class="today moderated">
<strong>{$month_day}: {$this->lang->words['today_title']}</strong> <a href="{$cal_date_queued}">{parse replacement="t_queued"}</a>
<else />
<td id='{$js_id}' class="today">
<strong>{$month_day}: {$this->lang->words['today_title']}</strong>
</if>
{$events}
</td>]]></template_content>
<template_name>cal_date_cell_today</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td id='{$id}'><strong>{$day}</strong></td>]]></template_content>
<template_name>cal_day_bit</template_name>
<template_data><![CDATA[$day="", $id='']]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_del'><a href='{parse url="app=calendar&amp;module=calendar&amp;do=delete&amp;md5check={$this->member->form_hash}&amp;event_id={$id}&amp;cal_id={$cal_id}" base="public"}' title='{$this->lang->words['calendar_delete_title']}'>{parse replacement="delete_post_icon"} {$this->lang->words['calendar_delete_button']}</a></li>
<li class='post_edit'><a href='{parse url="app=calendar&amp;module=calendar&amp;do=edit&amp;cal_id={$cal_id}&amp;event_id={$id}" base="public"}' title='{$this->lang->words['calendar_edit_title']}'>{parse replacement="edit_post_icon"} {$this->lang->words['calendar_edit_button']}</a></li>]]></template_content>
<template_name>cal_edit_del_button</template_name>
<template_data><![CDATA[$id="",$cal_id=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[</ul>]]></template_content>
<template_name>cal_events_end</template_name>
<template_data/>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<ul>]]></template_content>
<template_name>cal_events_start</template_name>
<template_data/>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" seotitle="false" template="event" base="public"}" title='{$this->lang->words['view_event']}'>{$event['event_title']}</a>
</li>]]></template_content>
<template_name>cal_events_wrap</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<if test="strpos( $url, "do=showevent" ) !== false">
<li class='cal'><a href="{parse url="app=calendar&amp;module=calendar&amp;{$url}" template="event" seotitle="false" base="public"}" title='{$this->lang->words['view_event']}'>{$text}</a></li>
<else />
<li class='cal'><a href="{parse url="app=calendar&amp;module=calendar&amp;{$url}" base="public"}" title='{$this->lang->words['view_event']}'>{$text}</a></li>
</if>]]></template_content>
<template_name>cal_events_wrap_manual</template_name>
<template_data><![CDATA[$url="",$text=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" template="event" seotitle="false" base="public"}" title='{$this->lang->words['view_event']}'>{$event['event_title']}</a>
</li>]]></template_content>
<template_name>cal_events_wrap_range</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" base="public"}" title="{$this->lang->words['tbt_recur']}">{$event['event_title']}</a>
</li>]]></template_content>
<template_name>cal_events_wrap_recurring</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[</tr>
<!-- NEW ROW-->
<php>
$this->row_class = ( $this->row_class == 'row1' ) ? 'row2' : 'row1';
</php>
<tr class='{$this->row_class}'>
<th class='view_week header' scope='row'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;do=showweek&amp;week={$week}" seotitle="false" template="cal_week" base="public"}" title="{$this->lang->words['view_this_week']}"><img src="{$this->settings['img_url']}/next.png" alt='{$this->lang->words['icon']}' /></a>
</th>]]></template_content>
<template_name>cal_new_row</template_name>
<template_data><![CDATA[$week=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<if test="disablelightbox:|:!$this->settings['disable_lightbox']">
{parse template="include_lightbox" group="global" params=""}
</if>
{parse template="include_highlighter" group="global" params="1"}
<h2 class='maintitle'>{$this->lang->words['event_prefix']} {$event['event_title']}</h2>
<div class='generic_bar'></div>
<div class='post_block <if test="eventnotapproved:|:$event['event_approved']==0">moderated</if>' id='event_id_{$event['event_id']}'>
<div class='post_wrap'>
<if test="eventmember:|:$member['member_id']">
<h3>
<else />
<h3 class='guest'>
</if>
<if test="onlineoffline:|:$member['member_id']">
<if test="online:|:$member['_online']">
{parse replacement="user_online"}
<else />
{parse replacement="user_offline"}
</if> &nbsp;
<span class="author vcard"><a class="url fn" href='{parse url="showuser={$member['member_id']}" template="showuser" seotitle="{$member['members_seo_name']}" base="public"}' title='{$this->lang->words['view_profile']}'>{$member['members_display_name']}</a>{parse template="user_popup" group="global" params="$member['member_id'],$member['members_seo_name']"}</span>
<else />
{$member['members_display_name']}
</if>
</h3>
<div class='author_info'>
{parse template="userInfoPane" group="global" params="$member, $event['event_id'], array()"}
</div>
<div class='post_body'>
<p class='posted_info'>
<if test="posticonid:|:$post['post']['icon_id']">
<img src="{$this->settings['public_dir']}/style_extra/post_icons/icon{$post['post']['icon_id']}.gif" alt="{$this->lang->words['icon']}" />&nbsp;
</if>
<strong class='event'>{$this->lang->words['event_date']} {$event['_start_date']} {$date_ends} {$event['time']} ({$type})</strong>
</p>
<div class='post entry-content'>
{$event['event_content']}
</div>
</div>
<ul class='post_controls'>
<if test="reportpost:|:($this->settings['disable_reportpost'] != 1) and ( $this->memberData['member_id'] )">
<li class='report'><a href='{parse url="app=core&amp;module=reports&amp;rcom=calendar&amp;event_id={$event['event_id']}" base="public"}' title='{$this->lang->words['report_event']}'>{parse replacement="report_post_icon"} {$this->lang->words['report']}</a></li>
</if>
<!-- SKINNOTE: Add report link back in -->
{$approve_button} {$edit_button}
</ul>
</div>
</div>]]></template_content>
<template_name>cal_show_event</template_name>
<template_data><![CDATA[$event="",$member="",$event_type="",$edit_button="",$approve_button="",$type="",$date_ends=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_unapprove'><a href="{parse url="app=calendar&amp;module=calendar&amp;do=calendarEventApprove&amp;modfilter={$this->request['modfilter']}&amp;qt={$event['_quicktime']}&amp;approve=0&amp;md5check={$this->member->form_hash}&amp;cal_id={$cal_id}&amp;event_id={$id}" base="public"}" title='{$this->lang->words['unapprove_event']}'>{parse replacement="edit_post_icon"} {$this->lang->words['unapprove_event']}</a></li>]]></template_content>
<template_name>cal_unapprove_button</template_name>
<template_data><![CDATA[$id="",$cal_id="",$event=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[{parse js_module="calendar"}
<h2>{$this->lang->words['calendars']}</h2>
<div id='calendar_list' class='left general_box'>
<if test="calendarsforweek:|:is_array( $calendars ) && count( $calendars )">
<p><strong>{$this->lang->words['select_calendar']}</strong></p>
<ol>
<foreach loop="weekcalendars:$calendars as $cid => $cal">
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cid}&amp;do=showweek&amp;week={$this->request['week']}" seotitle="false" template="cal_week" base="public"}' title="{$this->lang->words['view_this_calendar']}" class='rounded'>{$cal['cal_title']}</a></li>
</foreach>
</ol>
</if>
<strong>{$this->lang->words['jump_to']}</strong><br />
<form action="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}" base="public"}" method="post">
<fieldset>
<label for='m' class='hide'>{$this->lang->words['fv_months']}:</label>
<select name="m" class='input_select'><!--IBF.MONTH_BOX--></select>&nbsp;
<label for='year' class='hide'>{$this->lang->words['fv_years']}:</label>
<select name="year" class='input_select'><!--IBF.YEAR_BOX--></select>&nbsp;
<input type='submit' class='input_submit' value='{$this->lang->words['jmp_go']}' />
</fieldset>
</form>
</div>
<div id='current_calendar' class='right calendar_wrap'>
<div class='topic_controls'>
<ul class='pagination'>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=showweek&amp;week={$prev['0']}" seotitle="false" template="cal_week" base="public"}" title="{$prev['month_name']} {$prev['year_id']}">&larr; {$this->lang->words['week_previous']}</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=showweek&amp;week={$next['0']}" seotitle="false" template="cal_week" base="public"}" title="{$next['month_name']} {$next['year_id']}">{$this->lang->words['week_next']} &rarr;</a></li>
</ul>
<ul class='topic_buttons'>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=single" base="public"}' title='{$this->lang->words['se_normal']}'>{parse replacement="cal_single"} {$this->lang->words['event_add_single']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=range" base="public"}' title='{$this->lang->words['se_range']}'>{parse replacement="cal_ranged"} {$this->lang->words['event_add_ranged']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=recur" base="public"}' title='{$this->lang->words['se_recur']}'>{parse replacement="cal_recurring"} {$this->lang->words['event_add_recurring']}</a></li>
</ul>
</div>
<br />
<h2 class='maintitle'>{$this->lang->words['week_beginning']} {$date} {$month} {$year}</h2>
<ol id='week_view' class='clear'>
<!--IBF.DAYS_CONTENT-->
</ol>
</div>
<div id='mini_calendars' class='left calendar_wrap'>
<!--PREV.MONTH-->
<br />
<!--THIS.MONTH-->
<br />
<!--NEXT.MONTH-->
</div>]]></template_content>
<template_name>cal_week_content</template_name>
<template_data><![CDATA[$calendars, $date="",$month="",$year="",$prev="",$next="", $cal_id=1]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<php>
$this->week_view = ( $this->week_view == 'row1' ) ? 'row2' : 'row1';
</php>
<li id='day-{$year}_{$mid}_{$date}' class='day {$this->week_view} <if test="weekdayentryqueued:|:$queued != 0">{$this->lang->words['moderated']}</if>'>
<h3 class='bar'>{$wday}</h3>
<div>
<span class='date altrow'>{$date}</span>
<ul>
{$events}
</ul>
</div>
</li>]]></template_content>
<template_name>cal_week_dayentry</template_name>
<template_data><![CDATA[$wday="",$date="",$month="",$mid="",$year="",$events="",$queued=0]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;$link" base="public"}" title='{$this->lang->words['view_event']}'>{$text}</a>
</li>]]></template_content>
<template_name>cal_week_events_wrap</template_name>
<template_data><![CDATA[$link="",$text=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<div style="background-color: $bg; color: $ft; padding: 3px; border: 1px outset $bg; width: 50%;">
<a href='{parse url="app=calendar&amp;module=calendar&amp;$link" base="public"}' style="color: $ft;">$text</a>
</div>]]></template_content>
<template_name>cal_week_events_wrap_range</template_name>
<template_data><![CDATA[$link="",$text="",$ft="",$bg=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='month_bar header'>
{$month} {$year}
</li>]]></template_content>
<template_name>cal_week_monthbar</template_name>
<template_data><![CDATA[$month="",$year=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td class='blank'><!-- no content --></td>]]></template_content>
<template_name>mini_cal_blank_cell</template_name>
<template_data/>
<template_updated>1260269067</template_updated>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -652,10 +667,11 @@
</td>]]></template_content>
<template_name>mini_cal_date_cell</template_name>
<template_data><![CDATA[$month_day="",$events=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -664,33 +680,38 @@
</td>]]></template_content>
<template_name>mini_cal_date_cell_today</template_name>
<template_data><![CDATA[$month_day="",$events=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!-- <a href="{parse url="app=calendar&module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;m={$mid}&amp;y=$year" base="public"}"> -->
<php>
$this->mini_cal = 'row2';
</php>
<h3 class='maintitle'>{$month} {$year}</h3>
<table class='mini_cal'>
<tr class='header'>
<th class='head_week'>&nbsp;</th>
<foreach loop="minidays:$day_words as $day">
<th>{parse expression="IPSText::mbsubstr( $day, 0, 1 )"}</th>
</foreach>
{$events}
</tr>
</table>]]></template_content>
</php>
<div class='mini-cal-wrap'>
<h3 class='maintitle'>{$month} {$year}</h3>
<table class='mini_cal'>
<tr class='header'>
<th class='head_week'>&nbsp;</th>
<foreach loop="minidays:$day_words as $day">
<th>{parse expression="IPSText::mbsubstr( $day, 0, 1 )"}</th>
</foreach>
{$events}
</tr>
</table>
</div>]]></template_content>
<template_name>mini_cal_mini_wrap</template_name>
<template_data><![CDATA[$month="",$mid="",$year="",$events="",$day_words=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -702,14 +723,15 @@
</php>
<tr class='{$this->mini_cal}'>
<th class='view_week header'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;do=showweek&amp;week={$week}" seotitle="false" template="cal_week" base="public"}" title='{$this->lang->words['view_this_week']}' ><img src="{$this->settings['img_url']}/next.png" alt='{$this->lang->words['icon']}' /></a>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;do=showweek&amp;week={$week}" seotitle="false" template="cal_week" base="public"}" title='{$this->lang->words['view_this_week']}' ><img src="{$this->settings['img_url']}/next.png" alt='' /></a>
</th>]]></template_content>
<template_name>mini_cal_new_row</template_name>
<template_data><![CDATA[$week=""]]></template_data>
<template_updated>1260269067</template_updated>
<template_updated>1288018124</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>root</template_master_key>
</template>
</templategroup>
</templates>
@@ -1,6 +1,403 @@
<?xml version="1.0" encoding="utf-8"?>
<templates application="calendar" templategroups="a:1:{s:13:&quot;skin_calendar&quot;;s:5:&quot;exact&quot;;}">
<templategroup group="skin_calendar">
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_approve'><a href="{parse url="app=calendar&amp;module=calendar&amp;do=calendarEventApprove&amp;modfilter={$this->request['modfilter']}&amp;qt={$event['_quicktime']}&amp;approve=1&amp;md5check={$this->member->form_hash}&amp;cal_id={$cal_id}&amp;event_id=$id" base="public"}" title='{$this->lang->words['approve_event']}'>{parse replacement="edit_post_icon"} {$this->lang->words['approve_event']}</a></li>]]></template_content>
<template_name>cal_approve_button</template_name>
<template_data><![CDATA[$id="",$cal_id="",$event=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td class="blank"><!-- no content --></td>]]></template_content>
<template_name>cal_blank_cell</template_name>
<template_data/>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!--Day-->
<if test="$queued != 0">
<td id='{$js_id}' class="moderated">
<strong>$month_day</strong><a href="{$cal_date_queued}">{parse replacement="t_queued"}</a>
<else />
<td id='{$js_id}'>
<strong>$month_day</strong>
</if>
$events
</td>]]></template_content>
<template_name>cal_date_cell</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!--Day-->
<if test="$queued != 0">
<td id='{$js_id}' class="today moderated">
<strong>$month_day: {$this->lang->words['today_title']}</strong> <a href="{$cal_date_queued}">{parse replacement="t_queued"}</a>
<else />
<td id='{$js_id}' class="today">
<strong>$month_day: {$this->lang->words['today_title']}</strong>
</if>
$events
</td>]]></template_content>
<template_name>cal_date_cell_today</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td id='{$id}'><strong>$day</strong></td>]]></template_content>
<template_name>cal_day_bit</template_name>
<template_data><![CDATA[$day="", $id='']]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_del'><a href='{parse url="app=calendar&amp;module=calendar&amp;do=delete&amp;md5check={$this->member->form_hash}&amp;event_id=$id&amp;cal_id={$cal_id}" base="public"}' title='{$this->lang->words['calendar_delete_title']}'>{parse replacement="delete_post_icon"} {$this->lang->words['calendar_delete_button']}</a></li>
<li class='post_edit'><a href='{parse url="app=calendar&amp;module=calendar&amp;do=edit&amp;cal_id={$cal_id}&amp;event_id=$id" base="public"}' title='{$this->lang->words['calendar_edit_title']}'>{parse replacement="edit_post_icon"} {$this->lang->words['calendar_edit_button']}</a></li>]]></template_content>
<template_name>cal_edit_del_button</template_name>
<template_data><![CDATA[$id="",$cal_id=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[</ul>]]></template_content>
<template_name>cal_events_end</template_name>
<template_data/>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<ul>]]></template_content>
<template_name>cal_events_start</template_name>
<template_data/>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" base="public"}" title='{$this->lang->words['view_event']}'>{$event['event_title']}</a></li>]]></template_content>
<template_name>cal_events_wrap</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'><a href="{parse url="app=calendar&amp;module=calendar&amp;{$url}" base="public"}" title='{$this->lang->words['view_event']}'>{$text}</a></li>]]></template_content>
<template_name>cal_events_wrap_manual</template_name>
<template_data><![CDATA[$url="",$text=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<div class="calranged">
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" base="public"}" title='{$this->lang->words['view_event']}'>{$event['event_title']}</a>
</div>]]></template_content>
<template_name>cal_events_wrap_range</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<div class="calitem">
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" base="public"}" title="{$this->lang->words['tbt_recur']}">{$event['event_title']}</a>
</div>]]></template_content>
<template_name>cal_events_wrap_recurring</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[</tr>
<!-- NEW ROW-->
<php>
$this->row_class = ( $this->row_class == 'row1' ) ? 'row2' : 'row1';
</php>
<tr class='{$this->row_class}'>
<th class='view_week' scope='row'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;do=showweek&amp;week=$week" base="public"}" title="{$this->lang->words['view_this_week']}"><img src="{$this->settings['img_url']}/next.png" alt='' /></a>
</th>]]></template_content>
<template_name>cal_new_row</template_name>
<template_data><![CDATA[$week=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<h2>Event: {$event['event_title']}</h2>
<ul class='topic_options'></ul>
<div class='post_block <if test="$event['event_approved']==0">moderated</if> id='event_id_{$event['event_id']}'>
<div class='post_wrap'>
<if test="$member['member_id']">
<h3>
<else />
<h3 class='guest'>
</if>
<if test="$member['member_id']">
<if test="$member['_online']">
{parse replacement="user_online"}
<else />
{parse replacement="user_offline"}
</if> &nbsp;
<address class="author vcard"><a class="url fn" href='{parse url="showuser={$member['member_id']}" base="public"}' title='{$this->lang->words['view_profile']}'>{$member['members_display_name']}</a>{parse template="user_popup" group="global" params="$member['member_id']"}</address>
<else />
{$member['members_display_name']}
</if>
</h3>
<p class='posted_info'>
<strong class='event'>{$this->lang->words['event_date']} {$event['_start_date']} $date_ends</b> {$event['time']} ($type)</strong>
</p>
<div class='author_info'>
{parse template="userInfoPane" group="global" params="$member, $event['event_id'], array()"}
</div>
<div class='post_body'>
<div class='post entry-content'>
{$event['event_content']}
</div>
</div>
<ul class='post_controls'>
<if test="($this->settings['disable_reportpost'] != 1) and ( $this->memberData['member_id'] )">
<li class='report'><a href='{parse url="app=core&amp;module=reports&amp;rcom=calendar&amp;event_id={$event['event_id']}" base="public"}' title='{$this->lang->words['report_event']}'>{parse replacement="report_post_icon"} {$this->lang->words['report']}</a></li>
</if>
<!-- SKINNOTE: Add report link back in -->
{$approve_button} {$edit_button}
</ul>
</div>
</div>]]></template_content>
<template_name>cal_show_event</template_name>
<template_data><![CDATA[$event="",$member="",$event_type="",$edit_button="",$approve_button="",$type="",$date_ends=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_unapprove'><a href="{parse url="app=calendar&amp;module=calendar&amp;do=calendarEventApprove&amp;modfilter={$this->request['modfilter']}&amp;qt={$event['_quicktime']}&amp;approve=0&amp;md5check={$this->member->form_hash}&amp;cal_id={$cal_id}&amp;event_id=$id" base="public"}" title='{$this->lang->words['unapprove_event']}'>{parse replacement="edit_post_icon"} {$this->lang->words['unapprove_event']}</a></li>]]></template_content>
<template_name>cal_unapprove_button</template_name>
<template_data><![CDATA[$id="",$cal_id="",$event=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[{parse js_module="calendar"}
<h2>{$this->lang->words['calendars']}</h2>
<div id='calendar_list' class='general_box'>
<if test="is_array( $calendars ) && count( $calendars )">
<p><strong>{$this->lang->words['select_calendar']}</strong></p>
<ol>
<foreach loop="$calendars as $cid => $cal">
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cid}&amp;do=showweek&amp;week={$this->request['week']}" base="public"}' title="{$this->lang->words['view_this_calendar']}">{$cal['cal_title']}</a></li>
</foreach>
</ol>
</if>
<p>
<form action="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}" base="public"}" method="post">
<strong>{$this->lang->words['jump_to']}</strong><br />
<fieldset>
<label for='m' class='hide'>{$this->lang->words['fv_months']}:</label>
<select name="m" class='input_select'><!--IBF.MONTH_BOX--></select>&nbsp;
<label for='year' class='hide'>{$this->lang->words['fv_years']}:</label>
<select name="year" class='input_select'><!--IBF.YEAR_BOX--></select>&nbsp;
<input type='submit' class='input_submit' value='{$this->lang->words['jmp_go']}' />
</fieldset>
</form>
</p>
</div>
<div id='current_calendar'>
<div class='topic_controls'>
<ul class='pagination'>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=showweek&amp;week={$prev['0']}" base="public"}" title="{$prev['month_name']} {$prev['year_id']}">{$this->lang->words['_larr']} {$this->lang->words['week_previous']}</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=showweek&amp;week={$next['0']}" base="public"}" title="{$next['month_name']} {$next['year_id']}">{$this->lang->words['week_next']} {$this->lang->words['_rarr']}</a></li>
</ul>
<ul class='topic_buttons'>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=single" base="public"}' title='{$this->lang->words['se_normal']}'>{parse replacement="cal_single"} {$this->lang->words['event_add_single']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=range" base="public"}' title='{$this->lang->words['se_range']}'>{parse replacement="cal_ranged"} {$this->lang->words['event_add_ranged']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=recur" base="public"}' title='{$this->lang->words['se_recur']}'>{parse replacement="cal_recurring"} {$this->lang->words['event_add_recurring']}</a></li>
</ul>
</div>
<br />
<h2>{$this->lang->words['week_beginning']} $date $month $year</h2>
<ol id='week_view'>
<!--IBF.DAYS_CONTENT-->
</ol>
</div>
<div id='mini_calendars'>
<!--PREV.MONTH-->
<br />
<!--THIS.MONTH-->
<br />
<!--NEXT.MONTH-->
</div>]]></template_content>
<template_name>cal_week_content</template_name>
<template_data><![CDATA[$calendars, $date="",$month="",$year="",$prev="",$next="", $cal_id=1]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<php>
$this->week_view = ( $this->week_view == 'row1' ) ? 'row2' : 'row1';
</php>
<li id='day-{$year}_{$mid}_{$date}' class='day {$this->week_view} <if test="$queued != 0">{$this->lang->words['moderated']}</if>'>
<h3 class='bar'>$wday</h3>
<div>
<span class='date altrow'>$date</span>
{$events}
</div>
</li>]]></template_content>
<template_name>cal_week_dayentry</template_name>
<template_data><![CDATA[$wday="",$date="",$month="",$mid="",$year="",$events="",$queued=0]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<div class="divpad">
<b><a href="{parse url="app=calendar&amp;module=calendar&amp;$link" base="public"}">$text</a></b>
</div>]]></template_content>
<template_name>cal_week_events_wrap</template_name>
<template_data><![CDATA[$link="",$text=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<div style="background-color: $bg; color: $ft; padding: 3px; border: 1px outset $bg; width: 50%;">
<a href='{parse url="app=calendar&amp;module=calendar&amp;$link" base="public"}' style="color: $ft;">$text</a>
</div>]]></template_content>
<template_name>cal_week_events_wrap_range</template_name>
<template_data><![CDATA[$link="",$text="",$ft="",$bg=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='month_bar'>
$month $year
</li>]]></template_content>
<template_name>cal_week_monthbar</template_name>
<template_data><![CDATA[$month="",$year=""]]></template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_ranged']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>]]></template_content>
<template_name>calendar_rss_range</template_name>
<template_data>$event</template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_recurring']}
<br />{$this->lang->words['c_fromcolon']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}
<br />{$this->lang->words['c_tocolon']} {$event['_to_month']}/{$event['_to_day']}/{$event['_to_year']}</p>]]></template_content>
<template_name>calendar_rss_recurring</template_name>
<template_data>$event</template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<p>{$event['event_content']}</p>
<br />
<p>{$this->lang->words['c_singleday']} {$event['_from_month']}/{$event['_from_day']}/{$event['_from_year']}</p>]]></template_content>
<template_name>calendar_rss_single</template_name>
<template_data>$event</template_data>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<div class="formsubtitle">{$this->lang->words['cal_birthdays']}</div>
@@ -13,10 +410,11 @@
</div>]]></template_content>
<template_name>calendarBirthdayList</template_name>
<template_data>$rows</template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -146,10 +544,11 @@
</div>]]></template_content>
<template_name>calendarEventForm</template_name>
<template_data><![CDATA[$code="", $calendar_id="", $formtype="", $event_id='', $event_title='', $form_title='', $event_date='', $event_type='', $groups, $button, $editor]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -172,10 +571,11 @@
{$events}]]></template_content>
<template_name>calendarEventsList</template_name>
<template_data>$events</template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -204,8 +604,8 @@
<div id='current_calendar'>
<div class='topic_controls'>
<ul class='pagination'>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;m={$prev['month_id']}&amp;y={$prev['year_id']}" base="public"}" title="{$prev['month_name']} {$prev['year_id']}">&larr; {$this->lang->words['month_previous']}</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;m={$next['month_id']}&amp;y={$next['year_id']}" base="public"}" title="{$next['month_name']} {$next['year_id']}">{$this->lang->words['month_next']} &rarr;</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;m={$prev['month_id']}&amp;y={$prev['year_id']}" base="public"}" title="{$prev['month_name']} {$prev['year_id']}">{$this->lang->words['_larr']} {$this->lang->words['month_previous']}</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;m={$next['month_id']}&amp;y={$next['year_id']}" base="public"}" title="{$next['month_name']} {$next['year_id']}">{$this->lang->words['month_next']} {$this->lang->words['_rarr']}</a></li>
</ul>
<ul class='topic_buttons'>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=single" base="public"}' title='{$this->lang->words['se_normal']}'>{parse replacement="cal_single"} {$this->lang->words['event_add_single']}</a></li>
@@ -239,296 +639,22 @@
<br />]]></template_content>
<template_name>calendarMainContent</template_name>
<template_data><![CDATA[$calendars, $month="",$year="",$prev="",$next="",$cal_jump="",$cal_id="",$day_words=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!--Day-->
<if test="$queued != 0">
<td id='{$js_id}' class="moderated">
<strong>$month_day</strong><a href="{$cal_date_queued}">{parse replacement="t_queued"}</a>
<else />
<td id='{$js_id}'>
<strong>$month_day</strong>
</if>
$events
</td>]]></template_content>
<template_name>cal_date_cell</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<!--Day-->
<if test="$queued != 0">
<td id='{$js_id}' class="today moderated">
<strong>$month_day: {$this->lang->words['today_title']}</strong> <a href="{$cal_date_queued}">{parse replacement="t_queued"}</a>
<else />
<td id='{$js_id}' class="today">
<strong>$month_day: {$this->lang->words['today_title']}</strong>
</if>
$events
</td>]]></template_content>
<template_name>cal_date_cell_today</template_name>
<template_data><![CDATA[$month_day="",$events="",$cal_date_queued="",$queued=0, $js_id]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<td id='{$id}'><strong>$day</strong></td>]]></template_content>
<template_name>cal_day_bit</template_name>
<template_data><![CDATA[$day="", $id='']]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_del'><a href='{parse url="app=calendar&amp;module=calendar&amp;do=delete&amp;md5check={$this->member->form_hash}&amp;event_id=$id&amp;cal_id={$cal_id}" base="public"}' title='{$this->lang->words['calendar_delete_title']}'>{parse replacement="delete_post_icon"} {$this->lang->words['calendar_delete_button']}</a></li>
<li class='post_edit'><a href='{parse url="app=calendar&amp;module=calendar&amp;do=edit&amp;cal_id={$cal_id}&amp;event_id=$id" base="public"}' title='{$this->lang->words['calendar_edit_title']}'>{parse replacement="edit_post_icon"} {$this->lang->words['calendar_edit_button']}</a></li>]]></template_content>
<template_name>cal_edit_del_button</template_name>
<template_data><![CDATA[$id="",$cal_id=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" base="public"}" title='{$this->lang->words['view_event']}'>{$event['event_title']}</a></li>]]></template_content>
<template_name>cal_events_wrap</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='cal'><a href="{parse url="app=calendar&amp;module=calendar&amp;{$url}" base="public"}" title='{$this->lang->words['view_event']}'>{$text}</a></li>]]></template_content>
<template_name>cal_events_wrap_manual</template_name>
<template_data><![CDATA[$url="",$text=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<div class="calranged">
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" base="public"}" title='{$this->lang->words['view_event']}'>{$event['event_title']}</a>
</div>]]></template_content>
<template_name>cal_events_wrap_range</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<div class="calitem">
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$event['event_calendar_id']}&amp;do=showevent&amp;event_id={$event['event_id']}" base="public"}" title="{$this->lang->words['tbt_recur']}">{$event['event_title']}</a>
</div>]]></template_content>
<template_name>cal_events_wrap_recurring</template_name>
<template_data><![CDATA[$event=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[</tr>
<!-- NEW ROW-->
<php>
$this->row_class = ( $this->row_class == 'row1' ) ? 'row2' : 'row1';
</php>
<tr class='{$this->row_class}'>
<th class='view_week' scope='row'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;do=showweek&amp;week=$week" base="public"}" title="{$this->lang->words['view_this_week']}"><img src="{$this->settings['img_url']}/next.png" alt='{$this->lang->words['icon']}' /></a>
</th>]]></template_content>
<template_name>cal_new_row</template_name>
<template_data><![CDATA[$week=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<h2>Event: {$event['event_title']}</h2>
<ul class='topic_options'></ul>
<div class='post_block <if test="$event['event_approved']==0">moderated</if> id='event_id_{$event['event_id']}'>
<div class='post_wrap'>
<if test="$member['member_id']">
<h3>
<else />
<h3 class='guest'>
</if>
<if test="$member['member_id']">
<if test="$member['_online']">
{parse replacement="user_online"}
<else />
{parse replacement="user_offline"}
</if> &nbsp;
<address class="author vcard"><a class="url fn" href='{parse url="showuser={$member['member_id']}" base="public"}' title='{$this->lang->words['view_profile']}'>{$member['members_display_name']}</a>{parse template="user_popup" group="global" params="$member['member_id']"}</address>
<else />
{$member['members_display_name']}
</if>
</h3>
<p class='posted_info'>
<if test="$post['post']['icon_id']">
<img src="{$this->settings['public_dir']}/style_extra/post_icons/icon{$post['post']['icon_id']}.gif" alt="{$this->lang->words['icon']}" />&nbsp;
</if>
<strong class='event'>{$this->lang->words['event_date']} {$event['_start_date']} $date_ends</b> {$event['time']} ($type)</strong>
</p>
<div class='author_info'>
{parse template="userInfoPane" group="global" params="$member, $event['event_id'], array()"}
<!--{$post['author']['warn_text']} {$post['author']['warn_minus']}{$post['author']['warn_add']}-->
</div>
<div class='post_body'>
<div class='post entry-content'>
{$event['event_content']}
</div>
</div>
<ul class='post_controls'>
<if test="($this->settings['disable_reportpost'] != 1) and ( $this->memberData['member_id'] )">
<li class='report'><a href='{parse url="app=core&amp;module=reports&amp;rcom=calendar&amp;event_id={$event['event_id']}" base="public"}' title='{$this->lang->words['report_event']}'>{parse replacement="report_post_icon"} {$this->lang->words['report']}</a></li>
</if>
<!-- SKINNOTE: Add report link back in -->
{$approve_button} {$edit_button}
</ul>
</div>
</div>]]></template_content>
<template_name>cal_show_event</template_name>
<template_data><![CDATA[$event="",$member="",$event_type="",$edit_button="",$approve_button="",$type="",$date_ends=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='post_unapprove'><a href="{parse url="app=calendar&amp;module=calendar&amp;do=calendarEventApprove&amp;modfilter={$this->request['modfilter']}&amp;qt={$event['_quicktime']}&amp;approve=0&amp;md5check={$this->member->form_hash}&amp;cal_id={$cal_id}&amp;event_id=$id" base="public"}" title='{$this->lang->words['unapprove_event']}'>{parse replacement="edit_post_icon"} {$this->lang->words['unapprove_event']}</a></li>]]></template_content>
<template_name>cal_unapprove_button</template_name>
<template_data><![CDATA[$id="",$cal_id="",$event=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[{parse js_module="calendar"}
<h2>{$this->lang->words['calendars']}</h2>
<div id='calendar_list' class='general_box'>
<if test="is_array( $calendars ) && count( $calendars )">
<p><strong>{$this->lang->words['select_calendar']}</strong></p>
<ol>
<foreach loop="$calendars as $cid => $cal">
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cid}&amp;do=showweek&amp;week={$this->request['week']}" base="public"}' title="{$this->lang->words['view_this_calendar']}">{$cal['cal_title']}</a></li>
</foreach>
</ol>
</if>
<p>
<form action="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}" base="public"}" method="post">
<strong>{$this->lang->words['jump_to']}</strong><br />
<fieldset>
<label for='m' class='hide'>{$this->lang->words['fv_months']}:</label>
<select name="m" class='input_select'><!--IBF.MONTH_BOX--></select>&nbsp;
<label for='year' class='hide'>{$this->lang->words['fv_years']}:</label>
<select name="year" class='input_select'><!--IBF.YEAR_BOX--></select>&nbsp;
<input type='submit' class='input_submit' value='{$this->lang->words['jmp_go']}' />
</fieldset>
</form>
</p>
</div>
<div id='current_calendar'>
<div class='topic_controls'>
<ul class='pagination'>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=showweek&amp;week={$prev['0']}" base="public"}" title="{$prev['month_name']} {$prev['year_id']}">&larr; {$this->lang->words['week_previous']}</a></li>
<li><a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=showweek&amp;week={$next['0']}" base="public"}" title="{$next['month_name']} {$next['year_id']}">{$this->lang->words['week_next']} &rarr;</a></li>
</ul>
<ul class='topic_buttons'>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=single" base="public"}' title='{$this->lang->words['se_normal']}'>{parse replacement="cal_single"} {$this->lang->words['event_add_single']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=range" base="public"}' title='{$this->lang->words['se_range']}'>{parse replacement="cal_ranged"} {$this->lang->words['event_add_ranged']}</a></li>
<li><a href='{parse url="app=calendar&amp;module=calendar&amp;cal_id={$cal_id}&amp;do=newevent&amp;formtype=recur" base="public"}' title='{$this->lang->words['se_recur']}'>{parse replacement="cal_recurring"} {$this->lang->words['event_add_recurring']}</a></li>
</ul>
</div>
<br />
<h2>{$this->lang->words['week_beginning']} $date $month $year</h2>
<ol id='week_view'>
<!--IBF.DAYS_CONTENT-->
</ol>
</div>
<div id='mini_calendars'>
<!--PREV.MONTH-->
<br />
<!--THIS.MONTH-->
<br />
<!--NEXT.MONTH-->
</div>]]></template_content>
<template_name>cal_week_content</template_name>
<template_data><![CDATA[$calendars, $date="",$month="",$year="",$prev="",$next="", $cal_id=1]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<php>
$this->week_view = ( $this->week_view == 'row1' ) ? 'row2' : 'row1';
</php>
<li id='day-{$year}_{$mid}_{$date}' class='day {$this->week_view} <if test="$queued != 0">{$this->lang->words['moderated']}</if>'>
<h3 class='bar'>$wday</h3>
<div>
<span class='date altrow'>$date</span>
{$events}
</div>
</li>]]></template_content>
<template_name>cal_week_dayentry</template_name>
<template_data><![CDATA[$wday="",$date="",$month="",$mid="",$year="",$events="",$queued=0]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<div class="divpad">
<b><a href="{parse url="app=calendar&amp;module=calendar&amp;$link" base="public"}">$text</a></b>
</div>]]></template_content>
<template_name>cal_week_events_wrap</template_name>
<template_data><![CDATA[$link="",$text=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
</template>
<template>
<template_group>skin_calendar</template_group>
<template_content><![CDATA[<li class='month_bar'>
$month $year
</li>]]></template_content>
<template_name>cal_week_monthbar</template_name>
<template_data><![CDATA[$month="",$year=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_content><![CDATA[<td class='blank'><!-- no content --></td>]]></template_content>
<template_name>mini_cal_blank_cell</template_name>
<template_data/>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -537,10 +663,11 @@
</td>]]></template_content>
<template_name>mini_cal_date_cell</template_name>
<template_data><![CDATA[$month_day="",$events=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -549,10 +676,11 @@
</td>]]></template_content>
<template_name>mini_cal_date_cell_today</template_name>
<template_data><![CDATA[$month_day="",$events=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -572,10 +700,11 @@
</table>]]></template_content>
<template_name>mini_cal_mini_wrap</template_name>
<template_data><![CDATA[$month="",$mid="",$year="",$events="",$day_words=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
<template>
<template_group>skin_calendar</template_group>
@@ -586,14 +715,15 @@
</php>
<tr class='{$this->mini_cal}'>
<th class='view_week'>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;do=showweek&amp;week=$week" base="public"}" title='{$this->lang->words['view_this_week']}' ><img src="{$this->settings['img_url']}/next.png" alt='{$this->lang->words['icon']}' /></a>
<a href="{parse url="app=calendar&amp;module=calendar&amp;cal_id={$this->request['_cal_id']}&amp;do=showweek&amp;week=$week" base="public"}" title='{$this->lang->words['view_this_week']}' ><img src="{$this->settings['img_url']}/next.png" alt='' /></a>
</th>]]></template_content>
<template_name>mini_cal_new_row</template_name>
<template_data><![CDATA[$week=""]]></template_data>
<template_updated>1260269070</template_updated>
<template_removable>1</template_removable>
<template_updated>1288018125</template_updated>
<template_removable>0</template_removable>
<template_user_added>0</template_user_added>
<template_user_edited>0</template_user_edited>
<template_master_key>xmlskin</template_master_key>
</template>
</templategroup>
</templates>
@@ -6,7 +6,7 @@
<hook_desc>Выводит на главной странице мини-календарь</hook_desc>
<hook_author>Invision Power Services, Inc.</hook_author>
<hook_email/>
<hook_website>http://</hook_website>
<hook_website/>
<hook_update_check/>
<hook_requirements><![CDATA[a:4:{s:20:"hook_ipb_version_min";i:3;s:20:"hook_ipb_version_max";i:0;s:20:"hook_php_version_min";s:0:"";s:20:"hook_php_version_max";s:0:"";}]]></hook_requirements>
<hook_version_human>1.0.0</hook_version_human>
@@ -0,0 +1,10 @@
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1 +1,10 @@
<html>␍<head><title>IP.Board - Bulletin Board System</title></head>␍<body>␍<h1>403: IP.Board -> Forbidden</h1>␍<hr>␍You have reached this page in error, please use your back button to return to the forum.␍<hr>␍<a href="http://www.invisionboard.com/">IP.Board</a>␍</body>␍</html>␍
<html>
<head><title>IP.Board - Bulletin Board System</title></head>
<body>
<h1>403: IP.Board -&gt; Forbidden</h1>
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
</body>
</html>
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<versions>
<version>
<human>3.0.5</human>
<long>30012</long>
<human>3.1.4</human>
<long>31007</long>
</version>
</versions>