includes/common_cli.php
author Dan
Fri, 21 Aug 2009 15:39:23 -0400
changeset 1096 86feb1c7ca3f
parent 1081 745200a9cc2a
child 1099 73abd46f5148
permissions -rw-r--r--
Wiki formatter: heading IDs are now name based ("head:" . sanitize_page_id($text)) instead of tocN.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
500
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
     1
<?php
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
     2
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
     3
/*
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
     4
 * Enano - an open-source CMS capable of wiki functions, Drupal-like sidebar blocks, and everything in between
1081
745200a9cc2a Fixed some upgrade bugs; added support for choosing one's own date/time formats; rebrand as 1.1.7
Dan
parents: 945
diff changeset
     5
 * Copyright (C) 2006-2009 Dan Fuhry
500
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
     6
 *
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
     7
 * This program is Free Software; you can redistribute and/or modify it under the terms of the GNU General Public License
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
     8
 * as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
     9
 *
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    10
 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    11
 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    12
 */
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    13
 
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    14
/**
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    15
 * The main loader script that initializes everything about Enano in the proper order. This is only loaded
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    16
 * if PHP is running via CLI.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    17
 * @package Enano
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    18
 * @subpackage Core
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    19
 * @copyright See header block
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    20
 */
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    21
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    22
//
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    23
// MAIN API INITIALIZATION
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    24
//
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    25
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    26
// Note to important functions and the template class that we're running via CLI
812
68060328e9c6 Added CLI installer. Supports interactive, command-line, and internal-call installation. Fixed a few bugs related to anti-SQL injection parser and plugin installation.
Dan
parents: 801
diff changeset
    27
@define('ENANO_CLI', 1);
500
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    28
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    29
// The first thing we need to do is start the database connection. At this point, for all we know, Enano might not
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    30
// even be installed. If this connection attempt fails and it's because of a missing or corrupt config file, the
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    31
// user will be redirected (intelligently) to install.php.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    32
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    33
$config_file = ( defined('IN_ENANO_INSTALL') ) ? '/config.new.php' : '/config.php';
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    34
@include(ENANO_ROOT . $config_file);
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    35
unset($dbuser, $dbpasswd);
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    36
if ( !isset($dbdriver) )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    37
  $dbdriver = 'mysql';
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    38
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    39
$db = new $dbdriver();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    40
$db->connect();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    41
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    42
profiler_log('Database connected');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    43
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    44
// The URL separator is the character appended to contentPath + url_title type strings.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    45
// If the contentPath has a ? in it, this should be an ampersand; else, it should be a
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    46
// question mark.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    47
$sep = ( strstr(contentPath, '?') ) ? '&' : '?';
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    48
define('urlSeparator', $sep);
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    49
unset($sep); // save 10 bytes of memory...
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    50
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    51
// Select and fetch the site configuration
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    52
$e = $db->sql_query('SELECT config_name, config_value FROM '.table_prefix.'config;');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    53
if ( !$e )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    54
{
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    55
  $db->_die('Some critical configuration information could not be selected.');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    56
}
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    57
// Used in die_semicritical to figure out whether to call getConfig() or not
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    58
define('ENANO_CONFIG_FETCHED', '');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    59
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    60
// Initialize and fetch the site configuration array, which is used to cache the config
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    61
$enano_config = Array();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    62
while($r = $db->fetchrow())
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    63
{
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    64
  $enano_config[$r['config_name']] = $r['config_value'];
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    65
}
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    66
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    67
$db->free_result();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    68
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    69
profiler_log('Config fetched');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    70
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    71
// Now that we have the config, check the Enano version.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    72
if ( enano_version(false, true) != $version && !defined('IN_ENANO_UPGRADE') )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    73
{
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    74
  grinding_halt('Version mismatch', 'Trying to run Enano version '.$version.' on database version '.enano_version().', you might need to upgrade.');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    75
}
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    76
650
e45183014778 Added CDN support: a URL to a CDN can now be specified and Enano will load all images, CSS, and javascript (except TinyMCE) from that server
Dan
parents: 612
diff changeset
    77
// Set our CDN path
666
402adf8ea719 Made cdnPath define conditionally; fixed common_cli not properly loading plugins
Dan
parents: 650
diff changeset
    78
if ( !defined('cdnPath') )
402adf8ea719 Made cdnPath define conditionally; fixed common_cli not properly loading plugins
Dan
parents: 650
diff changeset
    79
  define('cdnPath', getConfig('cdn_path', scriptPath));
650
e45183014778 Added CDN support: a URL to a CDN can now be specified and Enano will load all images, CSS, and javascript (except TinyMCE) from that server
Dan
parents: 612
diff changeset
    80
500
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    81
//
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    82
// Low level maintenance
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    83
//
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    84
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    85
// If the AES key size has been changed, bail out and fast
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    86
if ( !getConfig('aes_key_size') )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    87
{
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    88
  setConfig('aes_key_size', AES_BITS);
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    89
}
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    90
else if ( $ks = getConfig('aes_key_size') )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    91
{
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    92
  if ( intval($ks) != AES_BITS )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    93
  {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    94
    grinding_halt('AES key size changed', 'Enano has detected that the AES key size in constants.php has been changed. This change cannot be performed after installation, otherwise the private key would have to be re-generated and all passwords would have to be re-encrypted.' . "\n\n" . 'Please change the key size back to ' . $ks . ' bits and rerun this script.');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    95
  }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    96
}
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    97
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    98
// Same for AES block size
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
    99
if ( !getConfig('aes_block_size') )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   100
{
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   101
  setConfig('aes_block_size', AES_BLOCKSIZE);
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   102
}
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   103
else if ( $ks = getConfig('aes_block_size') )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   104
{
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   105
  if ( intval($ks) != AES_BLOCKSIZE )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   106
  {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   107
    grinding_halt('AES block size changed', "Enano has detected that the AES block size in constants.php has been changed. This change cannot be performed after installation, otherwise all passwords would have to be re-encrypted.\n\nPlease change the block size back to $ks bits and rerun this script.");
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   108
  }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   109
}
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   110
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   111
// Is there no default language?
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   112
if ( getConfig('default_language') === false && !defined('IN_ENANO_MIGRATION') )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   113
{
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   114
  $q = $db->sql_query('SELECT lang_id FROM '.table_prefix.'language LIMIT 1;');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   115
  if ( !$q )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   116
    $db->_die('common.php - setting default language');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   117
  if ( $db->numrows() < 1 && !defined('ENANO_ALLOW_LOAD_NOLANG') )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   118
  {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   119
    grinding_halt('No languages', 'No languages are installed on the site, load from web interface for instructions on how to fix this.');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   120
  }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   121
  $row = $db->fetchrow();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   122
  setConfig('default_language', $row['lang_id']);
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   123
}
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   124
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   125
profiler_log('Ran checks');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   126
612
3e73e4996d64 Made CLI version of common load cache manager properly
Dan
parents: 541
diff changeset
   127
// Init cache
3e73e4996d64 Made CLI version of common load cache manager properly
Dan
parents: 541
diff changeset
   128
$cache = new CacheManager();
3e73e4996d64 Made CLI version of common load cache manager properly
Dan
parents: 541
diff changeset
   129
500
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   130
// Load plugin manager
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   131
$plugins = new pluginLoader();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   132
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   133
//
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   134
// Mainstream API boot-up
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   135
//
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   136
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   137
// Obtain list of plugins
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   138
$plugins->loadAll();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   139
666
402adf8ea719 Made cdnPath define conditionally; fixed common_cli not properly loading plugins
Dan
parents: 650
diff changeset
   140
profiler_log('Fetched plugin list');
402adf8ea719 Made cdnPath define conditionally; fixed common_cli not properly loading plugins
Dan
parents: 650
diff changeset
   141
500
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   142
global $plugins;
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   143
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   144
// Load plugins from common because we can't give plugins full abilities in object context
695
6bd7215c718b Added ENANO_NO_PLUGINS optional switch to common_cli.
Dan
parents: 685
diff changeset
   145
if ( !defined('ENANO_NO_PLUGINS') )
500
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   146
{
695
6bd7215c718b Added ENANO_NO_PLUGINS optional switch to common_cli.
Dan
parents: 685
diff changeset
   147
  foreach ( $plugins->load_list as $f )
6bd7215c718b Added ENANO_NO_PLUGINS optional switch to common_cli.
Dan
parents: 685
diff changeset
   148
  {
6bd7215c718b Added ENANO_NO_PLUGINS optional switch to common_cli.
Dan
parents: 685
diff changeset
   149
    if ( file_exists(ENANO_ROOT . '/plugins/' . $f) )
6bd7215c718b Added ENANO_NO_PLUGINS optional switch to common_cli.
Dan
parents: 685
diff changeset
   150
      include_once ENANO_ROOT . '/plugins/' . $f;
6bd7215c718b Added ENANO_NO_PLUGINS optional switch to common_cli.
Dan
parents: 685
diff changeset
   151
  }
500
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   152
}
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   153
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   154
profiler_log('Loaded plugins');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   155
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   156
// Three fifths of the Enano API gets the breath of life right here.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   157
$session = new sessionManager();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   158
$paths = new pathManager();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   159
$template = new template();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   160
$email = new EmailEncryptor();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   161
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   162
profiler_log('Instanciated important singletons');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   163
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   164
// We've got the five main objects - flick on the switch so if a problem occurs, we can have a "friendly" UI
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   165
define('ENANO_BASE_CLASSES_INITIALIZED', '');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   166
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   167
// From here on out, none of this functionality is needed during the installer stage.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   168
// Once $paths->init() is called, we could be redirected to the main page, so we don't want
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   169
// that if the installer's running. Don't just go and define IN_ENANO_INSTALL from your
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   170
// script though, because that will make the DBAL look in the wrong place for the config file.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   171
if ( !defined('IN_ENANO_INSTALL') )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   172
{
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   173
  // And here you have it, the de facto way to place a hook. Plugins can place hooks and hook
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   174
  // into other plugins. You just never know.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   175
  $code = $plugins->setHook('base_classes_initted');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   176
  foreach ( $code as $cmd )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   177
  {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   178
    eval($cmd);
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   179
  }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   180
  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   181
  profiler_log('Finished base_classes_initted hook');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   182
  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   183
  // For special and administration pages, sometimes there is a "preloader" function that must be run
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   184
  // before the session manager and/or path manager get the init signal. Call it here.  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   185
  $p = RenderMan::strToPageId($paths->get_pageid_from_url());
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   186
  if( ( $p[1] == 'Admin' || $p[1] == 'Special' ) && function_exists('page_'.$p[1].'_'.$p[0].'_preloader'))
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   187
  {
945
c19242d13a49 Removed "@" from all call_user_func() calls to make debugging special pages and such possible
Dan
parents: 812
diff changeset
   188
    call_user_func('page_'.$p[1].'_'.$p[0].'_preloader');
500
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   189
  }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   190
  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   191
  profiler_log('Checked for preloader');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   192
  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   193
  // One quick security check...
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   194
  if ( isset($_SERVER['REMOTE_ADDR']) )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   195
  {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   196
    grinding_halt('REMOTE_ADDR detected', 'Detected a REMOTE_ADDR, this should not happen in CLI mode.');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   197
  }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   198
  $_SERVER['REMOTE_ADDR'] = '127.0.0.1';
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   199
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   200
  // All checks passed! Start the main components up.  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   201
  $session->start();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   202
  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   203
  // This is where plugins will want to add pages from 1.1.x on out. You can still add
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   204
  // pages at base_classes_initted but the titles won't be localized. This is because
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   205
  // the session manager has to be started before localization will work in the user's
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   206
  // preferred language.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   207
  $code = $plugins->setHook('session_started');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   208
  foreach ( $code as $cmd )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   209
  {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   210
    eval($cmd);
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   211
  }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   212
  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   213
  profiler_log('Ran session_started hook');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   214
  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   215
  $paths->init();
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   216
  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   217
  // We're ready for whatever life throws us now.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   218
  define('ENANO_MAINSTREAM', '');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   219
  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   220
  // If the site is disabled, bail out, unless we're trying to log in or administer the site
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   221
  if(getConfig('site_disabled') == '1' && $session->user_level < USER_LEVEL_ADMIN)
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   222
  {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   223
    if ( $paths->namespace == 'Admin' || ( $paths->namespace == 'Special' && ( $paths->page_id == 'CSS' || $paths->page_id == 'Administration' || $paths->page_id == 'Login' ) ) )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   224
    {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   225
      // do nothing; allow execution to continue
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   226
    }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   227
    else
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   228
    {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   229
      if(!$n = getConfig('site_disabled_notice')) 
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   230
      {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   231
        $n = 'The administrator has disabled the site. Please check back later.';
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   232
      }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   233
      
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   234
      $text = RenderMan::render($n) . '
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   235
      <div class="info-box">
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   236
        If you have an administrative account, you may <a href="'.makeUrlNS('Special', 'Login').'">log in</a> to the site.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   237
      </div>';
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   238
      $paths->wiki_mode = 0;
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   239
      die_semicritical('Site disabled', $text);
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   240
    }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   241
  }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   242
  else if ( getConfig('site_disabled') == '1' && $session->user_level >= USER_LEVEL_ADMIN )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   243
  {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   244
    // If the site is disabled but the user has admin rights, allow browsing
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   245
    // and stuff, but display the orange box notifying the admin.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   246
    $template->site_disabled = true;
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   247
  }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   248
  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   249
  // At this point all of Enano is fully initialized and running and you're ready to do whatever you want.
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   250
  $code = $plugins->setHook('common_post');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   251
  foreach ( $code as $cmd )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   252
  {
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   253
    eval($cmd);
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   254
  }
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   255
  
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   256
  profiler_log('Ran disabled-site checks and common_post');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   257
  
541
acb7e23b6ffa Massive commit with various changes. Added user ranks system (no admin interface yet) and ability for users to have custom user titles. Made cron framework accept fractions of hours through floating-point intervals. Modifed ACL editor to use miniPrompt framework for close confirmation box. Made avatar system use a special page as opposed to fetching the files directly for caching reasons.
Dan
parents: 536
diff changeset
   258
  load_rank_data();
acb7e23b6ffa Massive commit with various changes. Added user ranks system (no admin interface yet) and ability for users to have custom user titles. Made cron framework accept fractions of hours through floating-point intervals. Modifed ACL editor to use miniPrompt framework for close confirmation box. Made avatar system use a special page as opposed to fetching the files directly for caching reasons.
Dan
parents: 536
diff changeset
   259
  
acb7e23b6ffa Massive commit with various changes. Added user ranks system (no admin interface yet) and ability for users to have custom user titles. Made cron framework accept fractions of hours through floating-point intervals. Modifed ACL editor to use miniPrompt framework for close confirmation box. Made avatar system use a special page as opposed to fetching the files directly for caching reasons.
Dan
parents: 536
diff changeset
   260
  profiler_log('Loaded user rank data');
acb7e23b6ffa Massive commit with various changes. Added user ranks system (no admin interface yet) and ability for users to have custom user titles. Made cron framework accept fractions of hours through floating-point intervals. Modifed ACL editor to use miniPrompt framework for close confirmation box. Made avatar system use a special page as opposed to fetching the files directly for caching reasons.
Dan
parents: 536
diff changeset
   261
  
500
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   262
  if ( isset($_GET['noheaders']) )
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   263
    $template->no_headers = true;
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   264
}
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   265
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   266
profiler_log('common finished');
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   267
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   268
// That's the end. Enano should be loaded now :-)
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   269
455277559782 Added basic CLI support for the Enano API. Loads automatically, just include common.php as normal. REVISION 500!!! :-D
Dan
parents:
diff changeset
   270
?>