echo '<h2>' . __('Minimum Php version ' . AMR_PHPVERSION_REQUIRED . ' required for Amr Ical Events.  Your version is ' . PHP_VERSION, 'amr-ical-events-list') . '</h2>';
}
if (!class_exists('DateTime')) {
    echo '<h1>' . __('The <a href="http://au.php.net/manual/en/class.datetime.php"> DateTime Class </a> must be enabled on your system for this plugin to work. They may need to be enabled at compile time.  The class should exist by default in PHP version 5.2.', 'amr-ical-events-list') . '</h1>';
}
/* see http://acko.net/blog/php-clone */
if (version_compare(phpversion(), '5.0', '<')) {
    eval('function clone($object) {

      return $object;

    }

    ');
}
amr_set_defaults_for_datetime();
// needed all over the place
//add_action ('after_setup_theme','amr_load_pluggables');
//add_action ('wp','amr_load_pluggables', 10);	//move it later, No not good , plugins that apply the filters will nothave it then, so will fail
add_action('plugins_loaded', 'amr_load_pluggables', 99);
//move it later, No not good , plugins that apply the filters will nothave it then
function amr_load_pluggables()
{
    require_once 'amr-pluggable.php';
}
function amr_ical_events_list_record_version()
{
    global $amr_options;
    if (empty($amr_options['amr-ical-events-list-version'])) {
        $amr_options['amr-ical-events-list-version'] = 1.0;
    }
Example #2
0
function amr_set_defaults()
{
    global $amr_calprop;
    global $amr_colheading;
    global $amr_compprop;
    global $amr_groupings;
    global $amr_components;
    global $amr_limits, $amr_listtype;
    global $amr_formats;
    global $amr_general;
    global $amr_globaltz;
    global $ical_timezone;
    global $eventtaxonomies;
    global $amr_options, $locale;
    $amr_listtype = '1';
    // global default
    $amr_options = array('ngiyabonga' => false, 'own_css' => false, 'feed_css' => true, 'cssfile' => ICALSTYLEURL, 'date_localise' => 'amr', 'noeventsmessage' => 'No events found within criteria', 'lookmoremessage' => 'Look for more', 'lookprevmessage' => 'Look for previous', 'amr-ical-events-list', 'resetmessage' => 'Reset', 'amr-ical-events-list', 'freebusymessage' => '&#10006;');
    // if they don't have the gettext function the translation scanners will not pick the strings up for inclusion in the .pot/.po file
    $fakeforautolangtranslation = array('noeventsmessage' => __('No events found within criteria', 'amr-ical-events-list'), 'lookmoremessage' => __('Look for more', 'amr-ical-events-list'), 'lookprevmessage' => __('Look for previous', 'amr-ical-events-list'), 'resetmessage' => __('Reset', 'amr-ical-events-list'), 'freebusymessage' => __('Busy', 'amr-ical-events-list'), __("Year", 'amr-ical-events-list'), __("Quarter", 'amr-ical-events-list'), __("Astronomical Season", 'amr-ical-events-list'), __("Traditional Season", 'amr-ical-events-list'), __("Western Zodiac", 'amr-ical-events-list'), __("Month", 'amr-ical-events-list'), __("Week", 'amr-ical-events-list'), __("Day", 'amr-ical-events-list'));
    if (defined('AMR_ICAL_VERSION')) {
        $amr_options['ngiyabonga'] = true;
    }
    //do not show credit link
    $alreadyhave = false;
    //	if ($locale === 'en_US' )  $amr_options['date_localise'] = 'none';   // v4.0.9 commented out - multi lingual situations may have en as base, but will need localisation
    //	else
    $amr_options['date_localise'] = 'wp';
    //
    amr_set_defaults_for_datetime();
    $amr_general = array('name' => __('Default', 'amr-ical-events-list'), 'Description' => __('A default calendar list. This one set to tables with lists in the cells.  Usually needs the css file enabled. If you configure it, I suggest changing this description to aid your memory of how/why it is configured the way that it is. ', 'amr-ical-events-list'), "Default Event URL" => '', 'ListHTMLStyle' => 'table', 'customHTMLstylefile' => '');
    $amr_limits = array("events" => 30, "days" => 90, "cache" => 24, "eventscache" => 0.5);
    // must not set start here
    $amr_components = array("VEVENT" => true, "VTODO" => true, "VJOURNAL" => false, "VFREEBUSY" => true);
    $amr_groupings = amr_define_possible_groupings();
    $amr_colheading = array('1' => __('When', 'amr-ical-events-list'), '2' => __('What', 'amr-ical-events-list'), '3' => __('Where', 'amr-ical-events-list'));
    $dfalse = array('Column' => 0, 'Order' => 999, 'Before' => '', 'After' => '');
    $dtrue = array('Column' => 1, 'Order' => 1, 'Before' => '', 'After' => '');
    $dtrue2 = array('Column' => 2, 'Order' => 1, 'Before' => '', 'After' => '');
    // check if we have any taxonomies that we may wish to assign an event to
    $eventtaxonomies = amr_define_possible_taxonomies();
    foreach ($eventtaxonomies as $i => $tax) {
        $eventtaxonomiesprop[$tax] = array('Column' => 2, 'Order' => 200, 'Before' => '', 'After' => '&nbsp;');
    }
    $amr_calprop = array('X-WR-CALNAME' => array('Column' => 1, 'Order' => 1, 'Before' => '', 'After' => ''), 'X-WR-CALDESC' => $dfalse, 'X-WR-TIMEZONE' => array('Column' => 0, 'Order' => 40, 'Before' => '', 'After' => ''), 'icsurl' => array('Column' => 2, 'Order' => 20, 'Before' => '', 'After' => ''), 'addtogoogle' => array('Column' => 2, 'Order' => 10, 'Before' => '', 'After' => ''), 'icalrefresh' => array('Column' => 0, 'Order' => 30, 'Before' => '', 'After' => ''), 'LAST-MODIFIED' => $dtrue);
    /* NB need to switch some field s on for initial plugin view.  This will be common default for all, then some are customised separately */
    $amr_compprop = array('Descriptive' => array_merge(array('SUMMARY' => array('Column' => 2, 'Order' => 10, 'Before' => '<b>', 'After' => '</b>'), 'DESCRIPTION' => array('Column' => 2, 'Order' => 20, 'Before' => '', 'After' => ''), 'excerpt' => array('Column' => 0, 'Order' => 30, 'Before' => '<br />', 'After' => ''), 'postthumbnail' => array('Column' => 0, 'Order' => 35, 'Before' => '<br />', 'After' => ''), 'LOCATION' => array('Column' => 2, 'Order' => 41, 'Before' => '', 'After' => ''), 'map' => array('Column' => 2, 'Order' => 40, 'Before' => '', 'After' => ''), 'addevent' => array('Column' => 2, 'Order' => 1, 'Before' => '', 'After' => ''), 'subscribeevent' => array('Column' => 2, 'Order' => 2, 'Before' => '', 'After' => ''), 'subscribeseries' => array('Column' => 2, 'Order' => 3, 'Before' => '', 'After' => ''), 'GEO' => $dfalse, 'ATTACH' => array('Column' => 2, 'Order' => 150, 'Before' => __('More info: ', 'amr-ical-events-list'), 'After' => '<br />'), 'CATEGORIES' => array('Column' => 2, 'Order' => 200, 'Before' => '', 'After' => ''), 'CLASS' => array('Column' => 0, 'Order' => 210, 'Before' => '', 'After' => ''), 'COMMENT' => $dfalse, 'PERCENT-COMPLETE' => $dfalse, 'PRIORITY' => array('Column' => 0, 'Order' => 220, 'Before' => '', 'After' => ''), 'RESOURCES' => $dfalse, 'STATUS' => array('Column' => 0, 'Order' => 230, 'Before' => '', 'After' => '')), $eventtaxonomiesprop), 'Date and Time' => array('EventDate' => array('Column' => 1, 'Order' => 1, 'Before' => '', 'After' => ''), 'StartTime' => array('Column' => 1, 'Order' => 2, 'Before' => ' ', 'After' => ' '), 'EndDate' => array('Column' => 1, 'Order' => 3, 'Before' => __(' to', 'amr-ical-events-list') . '&nbsp;', 'After' => ''), 'EndTime' => array('Column' => 1, 'Order' => 4, 'Before' => ' ', 'After' => ''), 'DTSTART' => $dfalse, 'DTEND' => $dfalse, 'DUE' => $dfalse, 'DURATION' => array('Column' => 0, 'Order' => 50, 'Before' => '', 'After' => ''), 'allday' => array('Column' => 1, 'Order' => 4, 'Before' => '&nbsp;', 'After' => ''), 'timezone' => $dfalse, 'COMPLETED' => $dfalse, 'FREEBUSY' => $dfalse, 'TRANSP' => $dfalse), 'Relationship' => array('CONTACT' => array('Column' => 0, 'Order' => 350, 'Before' => '', 'After' => ''), 'ORGANIZER' => array('Column' => 0, 'Order' => 360, 'Before' => '', 'After' => ''), 'ATTENDEE' => array('Column' => 0, 'Order' => 370, 'Before' => '', 'After' => ''), 'Attendee-counts' => array('Column' => 0, 'Order' => 380, 'Before' => '', 'After' => ''), 'RECURRENCE-ID' => $dfalse, 'RELATED-TO' => $dfalse, 'URL' => array('Column' => 0, 'Order' => 150, 'Before' => '', 'After' => ''), 'UID' => $dfalse), 'Recurrence' => array('EXDATE' => $dfalse, 'EXRULE' => $dfalse, 'RDATE' => $dfalse, 'RRULE' => $dfalse), 'Alarm' => array('ACTION' => $dfalse, 'REPEAT' => $dfalse, 'TRIGGER' => $dfalse), 'Change Management' => array('CREATED' => $dfalse, 'DTSTAMP' => $dfalse, 'SEQUENCE' => $dfalse, 'LAST-MODIFIED' => $dfalse));
    //		if (function_exists ('amr_indicate_attendance')) {    //pluggable does not exist yet
    //		}
    if (function_exists('amr_rsvp')) {
        $amr_compprop['Relationship']['declined'] = array('Column' => 0, 'Order' => 400, 'Before' => '', 'After' => '');
        $amr_compprop['Relationship']['rsvp'] = array('Column' => 0, 'Order' => 410, 'Before' => '', 'After' => '');
        $amr_compprop['Relationship']['rsvpwithcomment'] = array('Column' => 0, 'Order' => 420, 'Before' => '', 'After' => '');
        $amr_compprop['Relationship']['going_ornot_ormaybe'] = array('Column' => 0, 'Order' => 430, 'Before' => '', 'After' => '');
        $amr_compprop['Relationship']['total_attending'] = array('Column' => 0, 'Order' => 510, 'Before' => '', 'After' => '');
        $amr_compprop['Relationship']['total_maybe'] = array('Column' => 0, 'Order' => 510, 'Before' => '', 'After' => '');
        $amr_compprop['Relationship']['total_declined'] = array('Column' => 0, 'Order' => 510, 'Before' => '', 'After' => '');
    }
    //
    for ($i = 1; $i <= 13; $i++) {
        /* setup some list type defaults if we have empty list type arrays */
        $amr_options['listtypes'][$i] = new_listtype();
        // set up basic
        $amr_options['listtypes'][$i] = customise_listtype($i);
        /* then tweak */
    }
    //		add_option('amr-ical-events-list', $amr_options);  // hmm what to do - if we autosave, then they do not pickup new defaults automatically
}