Aurora settings class. Required by aurora.php
HotScript @ RoŲnašn index for more scripts and extensions.
Run this script as an example.
<?php
DEFINE
('AURORA_VERSION''1.0.1');
if(
realpath($_SERVER['SCRIPT_FILENAME']) == realpath(__FILE__))
{
  
header('Content-type:text/xml');
  echo 
'<aurora>This settings file is not available for standalone reading</aurora>';
  exit();
}
class 
aurora_settings
{
  
/* abstract resource aurora_mysql_connect
   *
   * Establish an connection to your aurora_database and
   * return the appropriate mysql_resource.
   */ 
  
function aurora_mysql_connect()
  {
    
$l = @mysql_connect() or exit('<span>Aurora could not be connected to database</span>');
    @
mysql_select_db('GLOBAL') or exit('<span>Aurora could not be connected to database</span>');
    return 
$l;
  }

  
/* Abstract string aurora_mysql_table()
   *
   * Return the tablename in which the aurora data is stored 
   */
  
function aurora_mysql_table()
  {
    return 
'AURORA';
  }

  
/*abstract string aurora_server_base
   *
   * This is the 'server base' of your local aurora system
   * It gives the location of the aurora.php file. IE
   * When you're aurora.php is located at:
   * http://www.example.com/ your aurora_sb will be
   * www.example.com
   * When located at http://www.example.com/services/ it
   * will be www.example.com/services
   *
   * The serverbase will be used in remote messaging.
   * Messages from other Aurora System shall send for example
   * a message directed to webmaster@www.example.com to the
   * http://www.example.com/aurora.php file in order to 
   * trasmit data.
   * webmaster@www.example.com/services will be send to
   * http://www.example.com/services/aurora.php
   *
   */   
function aurora_server_base()
  {
    return 
'localhost/beheer/aurora';
  }

  
/* abstract boolean aurora_inbox_exists($box, [$mysql_connection])
   *
   * Check if an inbox exists on this aurora system.
   *
   * By default an inbox exists when there is an aurora message with
   * date == null in the database.
   *
   * For most project its usefull to link boxnames to usernames
   * Therefor it is necessairy to adapt this method to your
   * own local settings and user database
   *
   * String $box, contains the boxname. Make sure to use
   * addSlashes when using this name directly into queries.
   *
   * Resource $mysql_connection. optional.
   */
  
function aurora_inbox_exists($box$mysql_connection null)
  {
    
$q 'SELECT `ID` FROM `'.aurora_settings::aurora_mysql_table().'` WHERE `DATE` IS NULL AND UPPER(`FROM`) = "'.strtoupper(addslashes($box)).'"';
    if(empty(
$mysql_connection))
      
$q mysql_query($q);
    else
      
$q mysql_query($q$mysql_connection);
    if(!
$q)
    {
      
aurora_settings::aurora_error('An error occured when trying to verify inbox settings');
      return 
false;
    }
    
$found mysql_num_rows($q);
    return (
$found 0);
  }


  
/* abstract void aurora_error($err_str)
   *
   * output aurora warnings and errors. 
   * for the moment no difference will
   * be made in throwing errors and
   * throwing warnings.
   *
   * string $err_string, Error message
   */
  
function aurora_error($err_str)
  {
    echo 
'<table class="aurora_msg"><tr><th>'.$err_str.'</th></tr></table>';
  }
  
  
/* abstract string aurora_base_url()
   *
   * returns the url which directs to the aurora editor mode.
   * Likely a return $_SERVER['PHP_SELF'].'?' could be enough,
   * but when part of a greater project possible an url like
   * $_SERVER['PHP_SELF'].'?page=aurora&' is needed.
   *
   * Make sure that the aurora_base_url returns ends with
   * '?' or '&' because aurora_paramterers are concatted
   * directly after the aurora_base_url.
   */   
  
function aurora_base_url()
  {
    
$base_url $_SERVER['PHP_SELF'];
    
$base_url .= '?mb='.@$_GET['mb'].'&';
    return 
$base_url;
  }
  
  
/* abstract string aurora_secret_word()
   *
   * This function returns a secret word which is used
   * to secure the delivery of remote messages into
   * the local Aurora system.
   */
  
function aurora_secret_word()
  {
    return 
'REPLACE THIS WITH YOUR OWN SECRET WORD';
  }

}
?>