autoload.lib
上传用户:xiao730204
上传日期:2007-01-04
资源大小:141k
文件大小:164k
源码类别:

WEB邮件程序

开发平台:

PHP

  1. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/WebClient/WebClient_Netscape_4.object" ] != 1 ) {
  2. /* ../prometheus-library/objects/WebClient/WebClient_Netscape_4.object */
  3. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/WebClient/WebClient_Netscape_4.object" ]  = 1;
  4. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/WebClient/WebClient_Netscape_4.object";
  5. ?><?php  class WebClient_Netscape_4 extends WebClientBrowser {    Function WebClient_Netscape_4() {    $this->BaseObject( 'WebClient_Netscape_4' );  $this->WebClientBrowser();    $this->browser       = 'netscape';    $this->tables           = 1;  $this->frames           = 1;  $this->images           = 1;  $this->forms            = 1;  $this->javascript       = 1;  $this->javascript_1     = 1;  $this->javascript_1_1   = 1;  $this->javascript_1_2   = 1;  $this->javascript_1_3   = 1;  $this->java             = 1;  $this->layers           = 1;  $this->style_sheets     = 1;  }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  6. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/WebClient/WebClient_Netscape_5.object" ] != 1 ) {
  7. /* ../prometheus-library/objects/WebClient/WebClient_Netscape_5.object */
  8. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/WebClient/WebClient_Netscape_5.object" ]  = 1;
  9. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/WebClient/WebClient_Netscape_5.object";
  10. ?><?php  class WebClient_Netscape_5 extends WebClientBrowser {    Function WebClient_Netscape_5() {    $this->BaseObject( 'WebClient_Netscape_5' );  $this->WebClientBrowser();    $this->browser       = 'netscape';    $this->tables           = 1;  $this->frames           = 1;  $this->images           = 1;  $this->forms            = 1;  $this->javascript       = 1;  $this->javascript_1     = 1;  $this->javascript_1_1   = 1;  $this->javascript_1_2   = 1;  $this->javascript_1_3   = 1;  $this->javascript_1_4   = 1;  $this->java             = 1;  $this->xml              = 1;  $this->style_sheets     = 1;  $this->layers           = 1;  }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  11. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/WebClient/WebClient.object" ] != 1 ) {
  12. /* ../prometheus-library/objects/WebClient/WebClient.object */
  13. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/WebClient/WebClient.object" ]  = 1;
  14. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/WebClient/WebClient.object";
  15. ?><?php  class WebClient extends BaseObject {    Function WebClient() {  $this->BaseObject( 'WebClient' );  }    Function Detect() {  global $HTTP_USER_AGENT;        if ( ereg(  '(MSIE|Internet Explorer/)([0-9]).([0-9])+',  $HTTP_USER_AGENT,  $version ) ) {    $major_version = (int)$version[ 2 ];    $ie_browser = new WebClientBrowser();    switch( $major_version ) {  case 5:  $ie_browser = new WebClient_Ie_5();  break;  case 4:  $ie_browser = new WebClient_Ie_4();  break;  case 3:  $ie_browser = new WebClient_Ie_3();  break;  default:  $ie_browser = new WebClient_Ie_3();  break;  }    $ie_browser->version = $major_version;    return $ie_browser;    }    if ( ereg( 'Mozilla/([0-9]+)', $HTTP_USER_AGENT, $results ) ) {    $major_version = (int)$results[ 1 ];    $ns_browser = new WebClientBrowser();    switch( $major_version ) {  case 5:  $ns_browser = new WebClient_Netscape_5();  break;  case 4:  $ns_browser = new WebClient_Netscape_4();  break;  case 3:  $ns_browser = new WebClient_Netscape_3();  break;  default:  $ns_browser = new WebClient_Netscape_3();  }    $ns_browser->version = $major_version ;    return $ns_browser;  }    if ( ereg( 'Lynx/([0-9]+)', $HTTP_USER_AGENT, $results ) ) {  $major_version = (int)$results[ 1 ];  $lynx_browser = new WebClient_Lynx();    $lynx_browser->version = $major_version;    return $lynx_browser;  }      return new WebClientBrowser();    }  }  ?><?php } /* End if file is autoloaded */ ?><?php
  16. if ( $PHP_AUTO_LOADED_FILES[ "..//lib//objects/Defaults/Defaults.object" ] != 1 ) {
  17. /* ..//lib//objects/Defaults/Defaults.object */
  18. $PHP_AUTO_LOADED_FILES[ "..//lib//objects/Defaults/Defaults.object" ]  = 1;
  19. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "..//lib//objects/Defaults/Defaults.object";
  20. ?><?php  class Defaults extends BaseObject {      var $base_url;  var $template_base;    var $db;  var $user_db;  var $user_theme_db;  var $user_domain_db;  var $admin_privileges_db;  var $session_db;  var $pimp_settings_db;  var $customer_db;    var $pimp;    var $user_change_themes;    var $graphics_base_url;      var $use_sendmail;  var $sendmail_command;  var $use_smtp;  var $smtp_server;  var $smtp_server_port;      var $vpopmail_enabled;  var $vpopmail_db;    Function Defaults() {    $this->BaseObject( 'Defaults' );    $this->base_url               = 'index.php3';  $this->template_base          = '';    $this->db                     = new DbDefaults();  $this->user_db                = new DbDefaults();  $this->user_theme_db          = new DbDefaults();  $this->user_domain_db         = new DbDefaults();  $this->user_settings_db       = new DbDefaults();  $this->admin_privileges_db    = new DbDefaults();  $this->session_db             = new DbDefaults();  $this->pimp_settings_db       = new DbDefaults();  $this->customer_db            = new DbDefaults();    $this->pimp                   = '';    $this->user_change_themes     = 0;    $this->use_sendmail           = 0;  $this->sendmail_command       = 'sendmail';    $this->use_smtp               = 1;  $this->smtp_server            = 'localhost';  $this->smtp_server_port       = 25;    $this->vpopmail_enabled       = 0;  $this->vpopmail_db            = new DbDefaults();    }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  21. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/AdminPrivileges/AdminPrivileges.object" ] != 1 ) {
  22. /* ../prometheus-library/objects/AdminPrivileges/AdminPrivileges.object */
  23. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/AdminPrivileges/AdminPrivileges.object" ]  = 1;
  24. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/AdminPrivileges/AdminPrivileges.object";
  25. ?><?php    class AdminPrivileges extends BaseObject {    var $user_id;  var $add_users;  var $edit_users;  var $delete_users;    Function AdminPrivileges() {    $this->BaseObject( 'AdminPrivileges' );    $this->user_id          = -1;  $this->add_users        = 0;  $this->edit_users       = 0;  $this->delete_users     = 0;  }    Function DebugDump() {  $temp = new Debug();  $temp->On();  $temp->Message( 'START DUMP' );  $temp->Message( 'User id       : ' . $this->user_id );  $temp->Message( 'Add Users     : ' . $this->add_users );  $temp->Message( 'Edit Users    : ' . $this->edit_users );  $temp->Message( 'Delete Users  : ' . $this->delete_users );  $temp->Message( 'END DUMP' );  }    Function BinaryTrueFalse() {  $this->add_users        = $this->BinTF( $this->add_users );  $this->edit_users       = $this->BinTF( $this->edit_users );  $this->delete_users     = $this->BinTF( $this->delete_users );  }    Function BinTF( $item ) {  if ( $item == 'true' ) {  return '1';  } else {  return '0';  }  }    }    ?><?php } /* End if file is autoloaded */ ?><?php
  26. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/AdminPrivileges_Db/Mysql_AdminPrivileges_Db.object" ] != 1 ) {
  27. /* ../prometheus-library/db/AdminPrivileges_Db/Mysql_AdminPrivileges_Db.object */
  28. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/AdminPrivileges_Db/Mysql_AdminPrivileges_Db.object" ]  = 1;
  29. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/db/AdminPrivileges_Db/Mysql_AdminPrivileges_Db.object";
  30. ?><?php    class Mysql_AdminPrivileges_Db extends BaseObject {    var $debug;    var $admin_privileges_db;    Function Mysql_AdminPrivileges_Db( $db_config = '' ) {    $this->BaseObject( 'Mysql_AdminPrivileges_Db' );    $this->admin_privileges_db     = new Mysql_Db;    if ( is_object( $db_config ) ) {  $this->admin_privileges_db->db = $db_config;  }    $this->debug                  = new Debug;    $this->autocreate_user        = false;  $this->debug->prefix          = 'Mysql_Db::Admin_Privileges_Db';  $this->debug->Off();      }        Function InitDbConnection() {      if ( $this->admin_privileges_db->connection_init == false) {  $retuns = $this->admin_privileges_db->CreateConnection();  }    if ( $this->admin_privileges_db->connection_init == false ) {  return array( false, 'Database connection failed' );  }  return array( true );  }    Function ListAll() {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $select_all_privileges = $this->admin_privileges_db->PrepareSql(  '  SELECT  user_id, add_users,  edit_users, delete_users  FROM  admin_privileges_table  ORDER BY  user_id  ');    $i = 0;    $ResultArray   = array();  $ResultObj     = new AdminPrivileges();    $select_all_privileges->Exec();    while(  list( $user_id, $add_users, $edit_users, $delete_users )  = $select_all_privileges->FetchRow()  ) {    $ResultObj     = new AdminPrivileges;    $ResultObj->user_id        = $user_id;  $ResultObj->add_users      = $add_users;  $ResultObj->edit_users     = $edit_users;  $ResultObj->delete_users   = $delete_users;    $ResultArray[ $i ]         = $ResultObj;    $i++;    }  return array( true, $i, $ResultArray );  }    Function Add( $ThisPrivilege ) {      if ( $ThisPrivilege->user_id == '' ) {  return array( false, 'NO user id provided' );  }        $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $ThisPrivilege->BinaryTrueFalse();    $insert_privilege = $this->admin_privileges_db->PrepareSql( '  INSERT INTO  admin_privileges_table  ( user_id, add_users,  edit_users, delete_users )  VALUES ( ' .  $ThisPrivilege->user_id . ', ' .  $ThisPrivilege->add_users . ', ' .  $ThisPrivilege->edit_users . ', ' .  $ThisPrivilege->delete_users . ' ' .  ' )'  );    list( $ret_val, $reason ) = $insert_privilege->Exec();    if ( ! $ret_val ) {  return array( false, 'Insert to table failed.' );  } else {  return array( true, $ThisPrivilege );  }    }    Function Delete( $user_id ) {        $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $delete_user = $this->admin_privileges_db->PrepareSql( 'DELETE FROM admin_privileges_table WHERE user_id = ' . $user_id );    list( $ret_val, $reason ) = $delete_user->Exec();    if ( ! $ret_val ) {  return array( false, 'Failed to delete uid : ' . $user_id );  } else {  return array( true, $user_id );  }    }    Function Get( $user_id ) {        $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();    if ( $ret_val == false ) {  $this->debug->Message( 'connect failed : ' . $reason );  return array( $ret_val, $reason );  }      $query_string = '';  $query_string .= '  SELECT  user_id, add_users,  edit_users, delete_users  FROM  admin_privileges_table  WHERE  user_id = ' . $user_id;      $query_string .= ';';    $get_user_info  = $this->admin_privileges_db->PrepareSql( $query_string );        if ( ! (  list( $user_id, $add_users, $edit_users, $delete_users )  = $get_user_info->FetchRow()  ) ){  $this->debug->Message( 'No match found!' );  return array( false, 'NO Match found.' );  }    $ResultObject = new AdminPrivileges;  $ResultObject->user_id        = $user_id;  $ResultObject->add_users      = $add_users;  $ResultObject->edit_users     = $edit_users;  $ResultObject->delete_users   = $delete_users;    $this->debug->Message(  'User Id      : ' . $ResultObject->user_id  );  $this->debug->Message(  'Add Users    : ' . $ResultObject->add_users  );  $this->debug->Message(  'Edit Users   : ' . $ResultObject->edit_users  );  $this->debug->Message(  'Delete Users : ' . $ResultObject->delete_users  );    $this->debug->Message( 'Ret true' );    return array( true, $ResultObject );    }    Function Modify( $user_id, $ThisPrivileges ) {    if ( $user_id == '' ) {  return array( false, 'Please provide a user id.');  }        $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();    if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $ThisPrivileges->BinaryTrueFalse();    $query_string = '';  $query_string =  '  UPDATE  admin_privileges_table  SET ';    $more_than_one = false;    if ( $ThisPrivileges->add_users != '' ) {  $more_than_one = true;  $query_string .= 'add_users = ' . $ThisPrivileges->add_users . ' ';  }  if ( $ThisPrivileges->edit_users != '' ) {  if ( $more_than_one ) {  $query_string .= ' , ';  }  $more_than_one = true;  $query_string .= 'edit_users  = ' . $ThisPrivileges->edit_users . ' ';  }    if ( $ThisPrivileges->delete_users != '' ) {  if ( $more_than_one ) {  $query_string .= ' , ';  }  $more_than_one = true;  $query_string .= 'delete_users     = ' . $ThisPrivileges->delete_users . ' ';  }  $query_string .= 'where user_id = ' . $user_id  ;    $mod_user_info = $this->admin_privileges_db->PrepareSql( $query_string );    return array( true, $mod_user_info->Exec() );    }    }    ?><?php } /* End if file is autoloaded */ ?><?php
  31. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/AdminPrivileges_Db/Dummy_AdminPrivileges_Db.object" ] != 1 ) {
  32. /* ../prometheus-library/db/AdminPrivileges_Db/Dummy_AdminPrivileges_Db.object */
  33. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/AdminPrivileges_Db/Dummy_AdminPrivileges_Db.object" ]  = 1;
  34. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/db/AdminPrivileges_Db/Dummy_AdminPrivileges_Db.object";
  35. ?><?php  class Dummy_AdminPrivileges_Db {  Function Dummy_AdminPrivileges_Db() {  }  }  ?><?php } /* End if file is autoloaded */ ?><?php
  36. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/AdminPrivileges_Db/AdminPrivileges_Db.object" ] != 1 ) {
  37. /* ../prometheus-library/db/AdminPrivileges_Db/AdminPrivileges_Db.object */
  38. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/AdminPrivileges_Db/AdminPrivileges_Db.object" ]  = 1;
  39. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/db/AdminPrivileges_Db/AdminPrivileges_Db.object";
  40. ?><?php    class AdminPrivileges_Db extends BaseObject {    Function AdminPrivileges_Db() {  $this->BaseObject( 'AdminPrivileges_Db' );  }    Function Db( $driver, $db_config ) {    $driver = strtolower( $driver );    switch( $driver ) {    case 'mysql':  return new Mysql_AdminPrivileges_Db( $db_config );  break;    default:  return new Dummy_AdminPrivileges_Db( $db_config );  break;    }    }    }    ?><?php } /* End if file is autoloaded */ ?><?php
  41. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/AdminPrivileges/UserAdminPrivileges.object" ] != 1 ) {
  42. /* ../prometheus-library/objects/AdminPrivileges/UserAdminPrivileges.object */
  43. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/AdminPrivileges/UserAdminPrivileges.object" ]  = 1;
  44. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/AdminPrivileges/UserAdminPrivileges.object";
  45. ?><?php  class UserAdminPrivileges extends BaseObject {  var $admin_db;    Function UserAdminPrivileges( $admin_db = '' ) {  $this->BaseObject( 'UserAdminPrivileges' );  if ( is_object( $admin_db ) ) {  $this->admin_db = $admin_db;  } else {  $this->admin_db = AdminPrivileges_Db();  }  }    Function Get( $user_id ) {    return $this->admin_db->Get( $user_id );    }  }  ?><?php } /* End if file is autoloaded */ ?><?php
  46. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/BenchMark/BenchMark.object" ] != 1 ) {
  47. /* ../prometheus-library/objects/BenchMark/BenchMark.object */
  48. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/BenchMark/BenchMark.object" ]  = 1;
  49. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/BenchMark/BenchMark.object";
  50. ?><?php  class BenchMark {    var $start_time;  var $stop_time;    var $high_exec_time;  var $low_exec_time;    var $total_time;    var $avg_exec_time;    var $ignore_variables;    Function BenchMark() {    $this->start_time       = 0;  $this->stop_time        = 0;  $this->high_exec_time   = 0;  $this->low_exec_time    = 0;  $this->total_time       = 0;  $this->avg_exec_time    = 0;    $this->ignore_variables = Array();    }    Function IgnoreVar( $var_name ) {  $this->ignore_variables[ $var_name ] = 1;  }    Function UnIgnoreVar( $var_name ) {  $this->ignore_variables[ $var_name ] = 0;  }    Function IgnorePhpVars() {  $this->IgnoreVar( 'GLOBALS' );  $this->IgnoreVar( 'SCRIPT_FILENAME' );  $this->IgnoreVar( 'SCRIPT_NAME' );  $this->IgnoreVar( 'PATH_TRANSLATED' );  $this->IgnoreVar( 'PHP_SELF' );  }    Function IgnoreWebServerVars() {  $this->IgnoreVar( 'HTTP_GET_VARS' );  $this->IgnoreVar( 'HTTP_COOKIE_VARS' );  $this->IgnoreVar( 'HTTP_GET_VARS' );  $this->IgnoreVar( 'HTTP_ACCEPT' );  $this->IgnoreVar( 'HTTP_ACCEPT_CHARSET' );  $this->IgnoreVar( 'HTTP_ACCEPT_LANGUAGE' );  $this->IgnoreVar( 'HTTP_ACCEPT_ENCODING' );  $this->IgnoreVar( 'HTTP_CONNECTION' );  $this->IgnoreVar( 'HTTP_HOST' );  $this->IgnoreVar( 'HTTP_PRAGMA' );  $this->IgnoreVar( 'HTTP_USER_AGENT' );  $this->IgnoreVar( 'REMOTE_ADDR' );  $this->IgnoreVar( 'REMOTE_PORT' );  $this->IgnoreVar( 'DOCUMENT_ROOT' );  $this->IgnoreVar( 'SERVER_ADDR' );  $this->IgnoreVar( 'SERVER_ADMIN' );  $this->IgnoreVar( 'SERVER_NAME' );  $this->IgnoreVar( 'SERVER_PORT' );  $this->IgnoreVar( 'SERVER_SIGNATURE' );  $this->IgnoreVar( 'SERVER_SOFTWARE' );  $this->IgnoreVar( 'GATEWAY_INTERFACE' );  $this->IgnoreVar( 'SERVER_PROTOCOL' );  $this->IgnoreVar( 'REQUEST_METHOD' );  $this->IgnoreVar( 'QUERY_STRING' );  $this->IgnoreVar( 'REQUEST_URI' );  $this->IgnoreVar( 'REDIRECT_STATUS' );  $this->IgnoreVar( 'REDIRECT_URL' );  }    Function IgnoreUnixEnvVars() {  $this->IgnoreVar( 'PATH' );  $this->IgnoreVar( 'INIT_VERSION' );  $this->IgnoreVar( 'TERM' );  $this->IgnoreVar( 'HOSTTYPE' );  $this->IgnoreVar( 'PREVLEVEL' );  $this->IgnoreVar( 'runlevel' );  $this->IgnoreVar( 'AUTOBOOT' );  $this->IgnoreVar( 'BOOT_IMAGE' );  $this->IgnoreVar( 'CONSOLE' );  $this->IgnoreVar( 'HOME' );  $this->IgnoreVar( 'RUNLEVEL' );  $this->IgnoreVar( 'SHELL' );  $this->IgnoreVar( 'OSTYPE' );  $this->IgnoreVar( 'SHLVL' );  $this->IgnoreVar( '_' );  $this->IgnoreVar( 'previous' );    }    Function GlobalStackDump() {  echo( '<pre>' );  echo( 'Global stack dump -' . "n" );  while( list( $key, $value ) = each( $GLOBALS ) ) {  if ( $this->ignore_variables[ $key ] != 1 ) {  echo( 'Variable name : ' . $key . "n" );  var_dump( $GLOBALS[ $key ] );  echo( "n" );  }  }  echo( '</pre>' );  }    Function GetMicroTime() {  $mtime = microtime();  $mtime = explode( ' ' , $mtime );  $mtime = $mtime[ 1 ] + $mtime[ 0 ] ;  return $mtime;  }    Function Start() {  $this->start_time = $this->GetMicroTime();  }    Function Stop() {  $this->stop_time = $this->GetMicroTime();  }    Function Iterate( $code_segment, $test_times ) {  for( $i = 0; $i < $test_times; $i++ ) {  $this->Start();  eval( $code_segment );  $this->Stop();  $this->NextLoopIteration();  }  $this->CalculateAvg( $test_times );  }    Function NextLoopIteration() {  $overall_time = 0;  $overall_time = $this->stop_time - $this->start_time;  $this->total_time = $this->total_time + $overall_time;  if ( $overall_time > $this->high_exec_time ) {  $this->high_exec_time = $overall_time;  }  if ( $overall_time < $this->low_exec_time ) {  $this->low_exec_time = $overall_time;  }  }    Function CalculateAvg( $test_times ) {  $this->avg_exec_time = $this->total_time / $test_times;  }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  51. if ( $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/functions/PimpHandle.func" ] != 1 ) {
  52. /* ..//pimp/lib/functions/PimpHandle.func */
  53. $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/functions/PimpHandle.func" ]  = 1;
  54. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "..//pimp/lib/functions/PimpHandle.func";
  55. ?><?php  Function PimpHandle( $handle_this ) {  global $session;  global $default;  global $mail_action_message;  global $title;  global $server_settings_db;  global $current_server_settings;  global $user_obj;  global $PIMP_VERSION;  global $mail_folder;      $mail_action_message = '';  $current_server_settings = new MailServerSettings();  $title = '';    if ( $mail_folder == '' ) {    $mail_folder = 'INBOX';    $session->Add(  $temp = new SessionElement( 'mail_folder', 'string' )  );    }      $server_settings_db = new MailServer_Settings_Db();    $server_settings_db = $server_settings_db->Db(  $default->pimp_settings_db->driver,  $default->pimp_settings_db  );  $ret_vals = $server_settings_db->Get( $user_obj->user_id );      if ( $ret_vals[ 0 ] == 0 ) {  $current_server_settings->user_id = $user_obj->user_id;  $server_settings_db->Add( $current_server_settings );  } else {  $current_server_settings = $ret_vals[ 1 ];  }    if ( $current_server_settings->server_name  == '' ) {  $current_server_settings->server_name = $default->pimp->mail_server;  }    if ( $current_server_settings->server_username == '' ) {  $current_server_settings->server_username = $user_obj->user_name;  }    if ( $current_server_settings->server_password == '' ) {  $current_server_settings->server_password = $user_obj->password;  }    /*  Debug jic -  echo( '<!--' . "n" );  echo( 'M : ' . $current_server_settings->server_name     . "n" );  echo( 'U : ' . $current_server_settings->server_username . "n" );  echo( 'P : ' . $current_server_settings->server_password . "n" );  echo( '-->' . "n" );  */    if ( $current_server_settings->from_name != '' ) {  $title = $current_server_settings->from_name;  }    if ( $current_server_settings->from_address != '' ) {  $title .= ' - ' . $current_server_settings->from_address;  } else {  if ( ereg( '@', $current_server_settings->server_username ) ) {    $title .= ' - ' . $current_server_settings->server_username;  } else {  $title .= ' - ' .  $current_server_settings->server_username . '@' .  $current_server_settings->server_name;  }  }      if ( $title == '' ) {  if ( is_object( $user_obj ) ) {  $title .= $user_obj->user_name;  }    if ( is_object( $user_domain_obj ) ) {  if ( $user_domain_obj->domain_id != '' ) {  $title .= '@' . $user_domain_obj->domain_name;  } else {  $title .= '@default';  }  }  }    $title               .= ' - Mail ' . $PIMP_VERSION;    }  ?><?php } /* End if file is autoloaded */ ?><?php
  56. if ( $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/objects/Pimp/Pimp_DefaultApplicationSettings.object" ] != 1 ) {
  57. /* ..//pimp/lib/objects/Pimp/Pimp_DefaultApplicationSettings.object */
  58. $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/objects/Pimp/Pimp_DefaultApplicationSettings.object" ]  = 1;
  59. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "..//pimp/lib/objects/Pimp/Pimp_DefaultApplicationSettings.object";
  60. ?><?php    class Pimp_DefaultApplicationSettings extends BaseObject {    var $mail_server;    var $user_change_server;  var $user_change_username;  var $user_change_password;  var $user_change_email_address;  var $user_change_from_name;  var $user_change_server_type;    Function Pimp_DefaultApplicationSettings() {  $this->BaseObject( 'Pimp_DefaultApplicationsSettings' );  $this->mail_server            = 'localhost';  $this->user_change_server           = 0;  $this->user_change_username         = 0;  $this->user_change_password         = 0;  $this->user_change_email_address    = 0;  $this->user_change_from_name        = 0;  $this->user_change_server_type      = 0;  }    }    ?><?php } /* End if file is autoloaded */ ?><?php
  61. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Util/PageNavigator.object" ] != 1 ) {
  62. /* ../prometheus-library/objects/Util/PageNavigator.object */
  63. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Util/PageNavigator.object" ]  = 1;
  64. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/Util/PageNavigator.object";
  65. ?><?php  class PageNavigator {    var $first_page;  var $last_page;    var $first_item;  var $last_item;    var $num_items;  var $num_items_per_page;    var $current_page;  var $next_page;  var $previous_page;    Function PageNavigator() {    $this->first_page = 0;  $this->last_page  = 0;    $this->first_item = 0;  $this->last_item  = 0;    $this->num_items  = 0;  $this->num_items_per_page = 0;    $this->current_page  = 0;  }    Function Calculate() {    if ( $this->num_items == 0 ) {  return;  }  if ( $this->num_items_per_page == 0 ) {  return;  }    $this->first_page = 1;  $this->last_page =  ceil( $this->num_items / $this->num_items_per_page );    if ( $this->current_page == 0 ) {  return;  }    $this->previous_page = $this->current_page - 1 ;  if ( $this->previous_page <= 0 ) {  $this->previous_page = 1;  }  $this->next_page     = $this->current_page + 1;  if ( $this->next_page > $this->last_page ) {  $this->next_page = $this->last_page;  }    $this->last_item  = 0;  $this->last_item  = $this->num_items_per_page * $this->current_page;  if ( $this->last_item > $this->num_items ) {  $this->last_item = $this->num_items;  }    $this->first_item = 0;  $this->first_item =  ($this->num_items_per_page * ($this->current_page - 1 ));    if ( $this->first_item < 0 ) {  $this->first_item = 0;  }  if ( $this->first_item == 0 ) {  $this->first_item = 1;  }    }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  66. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/MailServerSettings.object" ] != 1 ) {
  67. /* ../prometheus-library/objects/Mail/MailServerSettings.object */
  68. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/MailServerSettings.object" ]  = 1;
  69. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/Mail/MailServerSettings.object";
  70. ?><?php  class MailServerSettings extends BaseObject {  var $user_id;    var $server_name;  var $server_username;  var $server_password;  var $server_type;    var $from_address;  var $from_name;    Function MailServerSettings() {  $this->BaseObject( 'MailServerSettings' );    $this->user_id             = -1;  $this->server_name         = '';  $this->server_username     = '';  $this->server_password     = '';  $this->server_type         = '';    $this->from_address        = '';  $this->from_name           = '';    }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  71. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/MailServer_Settings_Db/Mysql_MailServer_Settings_Db.object" ] != 1 ) {
  72. /* ../prometheus-library/db/MailServer_Settings_Db/Mysql_MailServer_Settings_Db.object */
  73. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/MailServer_Settings_Db/Mysql_MailServer_Settings_Db.object" ]  = 1;
  74. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/db/MailServer_Settings_Db/Mysql_MailServer_Settings_Db.object";
  75. ?><?php    class Mysql_MailServer_Settings_Db extends BaseObject {    var $debug;  var $server_settings_db;    Function Mysql_MailServer_Settings_Db( $db_config = '' ) {    $this->BaseObject( 'Mysql_MailServer_Settings_Db' );    $this->server_settings_db           = new Mysql_Db();    if ( is_object( $db_config ) ) {  $this->server_settings_db->db = $db_config;  }    $this->debug                  = new Debug();  $this->debug->prefix          = 'Mysql_Db::Mysql_MailServer_Settings';  $this->debug->Off();  $this->server_settings_db->debug->Off();  }    Function InitDbConnection() {    /*  Make sure the database handle is available  ( if not try to open it )  */  $returns = Array();    if ( $this->server_settings_db->connection_init == false) {  $returns = $this->server_settings_db->CreateConnection();  }    if ( $this->server_settings_db->connection_init == false ) {  return array( false, 'Database not connected', $returns );  }    return array( true );  }    Function ListAll() {}    Function Add( $settings_obj ) {        $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $insert_setting = $this->server_settings_db->PrepareSql(  $sql_util->InsertStatement(  'server_settings_table',  Array(  'user_id'          => $settings_obj->user_id,  'server_name'      => $settings_obj->server_name,  'server_username'  => $settings_obj->server_username,  'server_password'  => $settings_obj->server_password,  'server_type'      => $settings_obj->server_type,  'from_address'     => $settings_obj->from_address,  'from_name'        => $settings_obj->from_name  )  )  );    list( $ret_val, $reason ) = $insert_setting->Exec();    if ( ! $ret_val ) {  return Array( false, 'Insert to table failed.' );  } else {  return Array( true );  }    }    Function Delete( $user_id) {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();        if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $delete_setting = $this->server_settings_db->PrepareSql(  $sql_util->DeleteStatement(  'server_settings_table',  'user_id = ' . $user_id  )  );    list( $ret_val, $reason ) = $delete_setting->Exec();    if ( ! $ret_val ) {  return Array( false, 'Delete of setting failed.' );  } else {  return Array( true );  }    }    Function Get( $user_id )    {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $get_setting = $this->server_settings_db->PrepareSql(  $sql_util->SelectStatement(  Array( 'server_settings_table' ),  Array(  'user_id',           'server_name',    'server_username',  'server_password',   'server_type',    'from_address',  'from_name'  ),  'user_id = ' . $user_id  )  );    if ( ! (  list( $user_id, $server_name, $server_username, $server_password, $server_type, $from_address, $from_name ) = $get_setting->FetchRow()  ) ) {  return Array( false, 'No match found.' );  } else {    $setting_obj = new MailServerSettings();  $setting_obj->user_id            = $user_id;  $setting_obj->server_name        = $server_name;  $setting_obj->server_username    = $server_username;  $setting_obj->server_password    = $server_password;  $setting_obj->from_address       = $from_address;  $setting_obj->from_name          = $from_name;    return Array( true, $setting_obj );    }    }    Function Modify( $setting_obj ) {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $update_setting = $this->server_settings_db->PrepareSql(  $sql_util->UpdateStatement(  'server_settings_table',  Array(  'user_id'          => $setting_obj->user_id,  'server_name'      => $setting_obj->server_name,  'server_username'  => $setting_obj->server_username,  'server_password'  => $setting_obj->server_password,  'server_type'      => $setting_obj->server_type,  'from_address'     => $setting_obj->from_address,  'from_name'        => $setting_obj->from_name  ),  'user_id = ' . $setting_obj->user_id  )  );    list( $ret_val, $reason ) = $update_setting->Exec();    if ( ! $ret_val ) {  return Array( false, 'Update of setting failed.' );  } else {  return Array( true );  }      }    }    ?><?php } /* End if file is autoloaded */ ?><?php
  76. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/MailServer_Settings_Db/Dummy_MailServer_Settings_Db.object" ] != 1 ) {
  77. /* ../prometheus-library/db/MailServer_Settings_Db/Dummy_MailServer_Settings_Db.object */
  78. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/MailServer_Settings_Db/Dummy_MailServer_Settings_Db.object" ]  = 1;
  79. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/db/MailServer_Settings_Db/Dummy_MailServer_Settings_Db.object";
  80. ?><?php  class Dummy_Server_Settings_Db extends BaseObject {    var $debug;  var $server_settings_db;    Function Dummy_Server_Settings_Db( $db_config ) {    $this->BaseObject( 'Dummy_Server_Settings_Db' );    }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  81. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/MailServer_Settings_Db/MailServer_Settings_Db.object" ] != 1 ) {
  82. /* ../prometheus-library/db/MailServer_Settings_Db/MailServer_Settings_Db.object */
  83. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/MailServer_Settings_Db/MailServer_Settings_Db.object" ]  = 1;
  84. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/db/MailServer_Settings_Db/MailServer_Settings_Db.object";
  85. ?><?php    class MailServer_Settings_Db extends BaseObject {    Function MailServer_Settings_Db() {  $this->BaseObject( 'MailServer_Settings_Db' );  }    Function Db( $driver, $db_config ) {  $driver = strtolower( $driver ) ;    switch( $driver ) {    case 'mysql':  return new Mysql_MailServer_Settings_Db( $db_config );  break;    default:  return new Dummy_MailServer_Settings_Db( $db_config );  break;    }    }    }    ?><?php } /* End if file is autoloaded */ ?><?php
  86. if ( $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/objects/Pimp/Pimp_Signature.object" ] != 1 ) {
  87. /* ..//pimp/lib/objects/Pimp/Pimp_Signature.object */
  88. $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/objects/Pimp/Pimp_Signature.object" ]  = 1;
  89. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "..//pimp/lib/objects/Pimp/Pimp_Signature.object";
  90. ?><?php    class Pimp_Signature extends BaseObject {    var $user_id;  var $signature;    Function Pimp_Signature() {  $this->BaseObject( 'Pimp_Signature' );  $user_id    = -1;  $signature  = '';  }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  91. if ( $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/db/User_Signature_Db/Mysql_User_Signature_Db.object" ] != 1 ) {
  92. /* ..//pimp/lib/db/User_Signature_Db/Mysql_User_Signature_Db.object */
  93. $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/db/User_Signature_Db/Mysql_User_Signature_Db.object" ]  = 1;
  94. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "..//pimp/lib/db/User_Signature_Db/Mysql_User_Signature_Db.object";
  95. ?><?php    class Mysql_User_Signature_Db extends BaseObject {    var $debug;  var $signature_db;    Function Mysql_User_Signature_Db( $db_config = '' ) {    $this->BaseObject( 'Mysql_User_Signature_Db' );    $this->signature_db           = new Mysql_Db();    if ( is_object( $db_config ) ) {  $this->signature_db->db = $db_config;  }    $this->debug                  = new Debug();  $this->debug->prefix          = 'Mysql_Db::Mysql_User_Signature';    }    Function InitDbConnection() {    /*  Make sure the database handle is available  ( if not try to open it )  */  $returns = Array();    if ( $this->signature_db->connection_init == false) {  $returns = $this->signature_db->CreateConnection();  }    if ( $this->signature_db->connection_init == false ) {  return array( false, 'Database not connected', $returns );  }    return array( true );  }    Function ListAll() {}  Function Add( $signature_obj ) {        $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $insert_signature = $this->signature_db->PrepareSql(  $sql_util->InsertStatement(  'user_signatures_table',  Array(  'user_id'      => $signature_obj->user_id,  'signature'    => $signature_obj->signature  )  )  );    list( $ret_val, $reason ) = $insert_signature->Exec();    if ( ! $ret_val ) {  return Array( false, 'Insert to table failed.' );  } else {  return Array( true );  }    }    Function Delete( $user_id) {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();        if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $delete_signature = $this->signature_db->PrepareSql(  $sql_util->DeleteStatement(  'user_signatures_table',  'user_id = ' . $user_id  )  );    list( $ret_val, $reason ) = $delete_signature->Exec();    if ( ! $ret_val ) {  return Array( false, 'Delete of signature failed.' );  } else {  return Array( true );  }    }    Function Get( $user_id )    {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $get_signature = $this->signature_db->PrepareSql(  $sql_util->SelectStatement(  Array( 'user_signatures_table' ),  Array( 'user_id', 'signature' ),  'user_id = ' . $user_id  )  );    if ( ! (  list( $user_id, $signature ) = $get_signature->FetchRow()  ) ) {  return Array( false, 'No match found.' );  } else {    $signature_obj = new Pimp_Signature();  $signature_obj->user_id       = $user_id;  $signature_obj->signature     = $signature;  return Array( true, $signature_obj );  }    }    Function Modify( $signature_obj ) {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $update_signature = $this->signature_db->PrepareSql(  $sql_util->UpdateStatement(  'user_signatures_table',  Array(  'signature'       => $signature_obj->signature  ),  'user_id = ' . $signature_obj->user_id  )  );    list( $ret_val, $reason ) = $update_signature->Exec();    if ( ! $ret_val ) {  return Array( false, 'Update of signature failed.' );  } else {  return Array( true );  }      }    }    ?><?php } /* End if file is autoloaded */ ?><?php
  96. if ( $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/db/User_Signature_Db/Dummy_User_Signature_Db.object" ] != 1 ) {
  97. /* ..//pimp/lib/db/User_Signature_Db/Dummy_User_Signature_Db.object */
  98. $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/db/User_Signature_Db/Dummy_User_Signature_Db.object" ]  = 1;
  99. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "..//pimp/lib/db/User_Signature_Db/Dummy_User_Signature_Db.object";
  100. ?><?php  class Dummy_User_Signature_Db extends BaseObject {    var $debug;  var $signature_db;    Function Dummy_User_Signature_Db( $db_config ) {    $this->BaseObject( 'Dummy_User_Signature_Db' );    }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  101. if ( $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/db/User_Signature_Db/User_Signature_Db.object" ] != 1 ) {
  102. /* ..//pimp/lib/db/User_Signature_Db/User_Signature_Db.object */
  103. $PHP_AUTO_LOADED_FILES[ "..//pimp/lib/db/User_Signature_Db/User_Signature_Db.object" ]  = 1;
  104. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "..//pimp/lib/db/User_Signature_Db/User_Signature_Db.object";
  105. ?><?php    class User_Signature_Db extends BaseObject {    Function User_Signature_Db() {  $this->BaseObject( 'User_Signature_Db' );  }    Function Db( $driver, $db_config ) {  $driver = strtolower( $driver ) ;    switch( $driver ) {    case 'mysql':  return new Mysql_User_Signature_Db( $db_config );  break;  default:  return new Dummy_User_Signature_Db( $db_config );  break;  }    }    }    ?><?php } /* End if file is autoloaded */ ?><?php
  106. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Util/MimeObject.object" ] != 1 ) {
  107. /* ../prometheus-library/objects/Util/MimeObject.object */
  108. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Util/MimeObject.object" ]  = 1;
  109. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/Util/MimeObject.object";
  110. ?><?php  class MimeObject extends BaseObject {    var $mime_types;  var $default_type;    Function MimeObject() {    $this->BaseObject( 'MimeObject' );  $this->mime_types = Array();    $this->InitTypes();    $this->default_type = 'application/octet-stream';    }    Function InitTypes() {    $this->mime_types =  Array(  'ez'                   => 'application/andrew-inset',  'hqx'                  => 'application/mac-binhex40',  'cpt'                  => 'application/mac-compactpro',  'doc'                  => 'application/msword',  'bin'                  => 'application/octet-stream',  'dms'                  => 'application/octet-stream',  'lha'                  => 'application/octet-stream',  'lzh'                  => 'application/octet-stream',  'exe'                  => 'application/octet-stream',  'class'                => 'application/octet-stream',  'oda'                  => 'application/oda',  'pdf'                  => 'application/pdf',  'ai'                   => 'application/postscript',  'eps'                  => 'application/postscript',  'ps'                   => 'application/postscript',  'rtf'                  => 'application/rtf',  'smi'                  => 'application/smil',  'smil'                 => 'application/smil',  'mif'                  => 'application/vnd.mif',  'ppt'                  => 'application/vnd.ms-powerpoint',  'bcpio'                => 'application/x-bcpio',  'vcd'                  => 'application/x-cdlink',  'pgn'                  => 'application/x-chess-pgn',  'cpio'                 => 'application/x-cpio',  'csh'                  => 'application/x-csh',  'dcr'                  => 'application/x-director',  'dir'                  => 'application/x-director',  'dxr'                  => 'application/x-director',  'dvi'                  => 'application/x-dvi',  'spl'                  => 'application/x-futuresplash',  'gtar'                 => 'application/x-gtar',  'hdf'                  => 'application/x-hdf',  'js'                   => 'application/x-javascript',  'skp'                  => 'application/x-koan',  'skd'                  => 'application/x-koan',  'skt'                  => 'application/x-koan',  'skm'                  => 'application/x-koan',  'latex'                => 'application/x-latex',  'nc'                   => 'application/x-netcdf',  'cdf'                  => 'application/x-netcdf',  'rpm'                  => 'application/x-rpm',  'sh'                   => 'application/x-sh',  'shar'                 => 'application/x-shar',  'swf'                  => 'application/x-shockwave-flash',  'sit'                  => 'application/x-stuffit',  'sv4cpio'              => 'application/x-sv4cpio',  'sv4crc'               => 'application/x-sv4crc',  'tar'                  => 'application/x-tar',  'tcl'                  => 'application/x-tcl',  'tex'                  => 'application/x-tex',  'texinfo'              => 'application/x-texinfo',  'texi'                 => 'application/x-texinfo',  't'                    => 'application/x-troff',  'tr'                   => 'application/x-troff',  'roff'                 => 'application/x-troff',  'man'                  => 'application/x-troff-man',  'me'                   => 'application/x-troff-me',  'ms'                   => 'application/x-troff-ms',  'ustar'                => 'application/x-ustar',  'src'                  => 'application/x-wais-source',  'zip'                  => 'application/zip',  'au'                   => 'audio/basic',  'snd'                  => 'audio/basic',  'mid'                  => 'audio/midi',  'midi'                 => 'audio/midi',  'kar'                  => 'audio/midi',  'mpga'                 => 'audio/mpeg',  'mp2'                  => 'audio/mpeg',  'mp3'                  => 'audio/mpeg',  'aif'                  => 'audio/x-aiff',  'aiff'                 => 'audio/x-aiff',  'aifc'                 => 'audio/x-aiff',  'ram'                  => 'audio/x-pn-realaudio',  'rm'                   => 'audio/x-pn-realaudio',  'ra'                   => 'audio/x-realaudio',  'wav'                  => 'audio/x-wav',  'pdb'                  => 'chemical/x-pdb',  'xyz'                  => 'chemical/x-pdb',  'gif'                  => 'image/gif',  'ief'                  => 'image/ief',  'jpeg'                 => 'image/jpeg',  'jpg'                  => 'image/jpeg',  'jpe'                  => 'image/jpeg',  'png'                  => 'image/png',  'tiff'                 => 'image/tiff',  'tif'                  => 'image/tiff',  'ras'                  => 'image/x-cmu-raster',  'pnm'                  => 'image/x-portable-anymap',  'pbm'                  => 'image/x-portable-bitmap',  'pgm'                  => 'image/x-portable-graymap',  'ppm'                  => 'image/x-portable-pixmap',  'rgb'                  => 'image/x-rgb',  'xbm'                  => 'image/x-xbitmap',  'xpm'                  => 'image/x-xpixmap',  'xwd'                  => 'image/x-xwindowdump',  'igs'                  => 'model/iges',  'iges'                 => 'model/iges',  'msh'                  => 'model/mesh',  'mesh'                 => 'model/mesh',  'silo'                 => 'model/mesh',  'wrl'                  => 'model/vrml',  'vrml'                 => 'model/vrml',  'css'                  => 'text/css',  'asc'                  => 'text/plain',  'txt'                  => 'text/plain',  'rtx'                  => 'text/richtext',  'rtf'                  => 'text/rtf',  'sgml'                 => 'text/sgml',  'sgm'                  => 'text/sgml',  'tsv'                  => 'text/tab-separated-values',  'etx'                  => 'text/x-setext',  'xml'                  => 'text/xml',  'mpeg'                 => 'video/mpeg',  'mpg'                  => 'video/mpeg',  'mpe'                  => 'video/mpeg',  'qt'                   => 'video/quicktime',  'mov'                  => 'video/quicktime',  'avi'                  => 'video/x-msvideo',  'movie'                => 'video/x-sgi-movie',  'ice'                  => 'x-conference/x-cooltalk',  'html'                 => 'text/html',  'htm'                  => 'text/html'  );    }    Function AddType( $ext, $mime_type ) {  $this->mime_types[ $ext ] = $mime_type;  }    Function GetType( $filename ) {  $base_name = basename( $filename );  if ( ereg( '.(.*)$', $base_name, $ext ) ) {  $ext = $ext[ 0 ];  $ext = str_replace( '.', '', $ext );    $mime_type = '';  $mime_type = $this->mime_types[ $ext ];  if ( $mime_type == '' ) {  return $this->default_type;  }  return $mime_type;  }  return $this->default_type;  }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  111. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Net/Net.object" ] != 1 ) {
  112. /* ../prometheus-library/objects/Net/Net.object */
  113. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Net/Net.object" ]  = 1;
  114. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/Net/Net.object";
  115. ?><?php  class Net extends BaseObject {    var $server;  var $port;    var $connnected;  var $connection_handle;    Function Net() {  $this->BaseObject( 'Net' );    $this->server              = '';  $this->port                = '';  $this->connected           = 0;  $this->connection_handle   = undef;    }    Function Open()      { return $this->Connect(); }  Function Connect()   {    $this->connection_handle =  fsockopen(  $this->server,  $this->port,  $error_number,  $error_string  );    if ( ! $this->connection_handle ) {  return Array(  false,  'Could not connect : ' .  $error_number, ' - ' . $error_string  );  }    $this->connected = true;    }    Function Close()        { return $this->Disconnect(); }  Function Disconnect()   {  return fclose( $this->connection_handle );  }    Function ReadLine( $buffer_len = 2048 ) {    if ( $this->connected == true ) {  return fgets( $this->connection_handle, $buffer_len );  }    }    Function SendLine( $line ) {  if ( $this->connected == true ) {  return fputs( $this->connection_handle, $line );  }  return 0;  }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  116. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/MailMessage.object" ] != 1 ) {
  117. /* ../prometheus-library/objects/Mail/MailMessage.object */
  118. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/MailMessage.object" ]  = 1;
  119. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/Mail/MailMessage.object";
  120. ?><?php  class MailMessage extends BaseObject {    var $from;  var $to;  var $cc;  var $bcc;    var $subject;  var $headers;  var $message_body;    var $attatchments;  var $attatchments_filename_override;  var $attatchments_comments;    var $sendmail;  var $sendmail_command;    var $smtp;  var $smtp_server;  var $smtp_port;    var $mime_boundary;    var $new_line;    var $net_object;    var $debug;    var $fp;    var $charset;    Function MailMessage() {    $this->BaseObject( 'MailMessage' );    $this->from          = '';  $this->to            = '';  $this->subject       = '';  $this->message_body  = '';    $this->headers       = Array();    $this->attatchments                    = Array();  $this->attatchments_comments           = Array();  $this->attatchments_filename_override  = Array();    $this->sendmail         = 0;  $this->sendmail_command = 'sendmail';    $this->smtp             = 1;  $this->smtp_server      = 'localhost';  $this->smtp_port        = 25;    $this->net_obj          = new Net();    $this->new_line         = "rn";    $this->debug = new Debug();  $this->debug->On();    $this->fp = undef;    $this->charset = 'US-ASCII';  }    Function AddFile( $path_to_file, $comment = '', $fname_override = '') {  return $this->AttatchFile( $path_to_file, $comment, $fname_override );  }    Function AttatchFile( $path_to_file, $comment = '', $fname_override = '' ) {  if ( file_exists( $path_to_file ) ) {  $this->attatchments[] = $path_to_file;  $this->attatchments_comments[ $path_to_file ] = $comment;  $this->attatchments_filename_override[ $path_to_file ] =  $fname_override;  return 1;  }  return 0;  }    Function AddHeader( $header, $value ) {  $this->headers[ $header ] = $value;  }    Function Send() {    if ( $this->sendmail == 1 ) {  $this->debug->Message( 'Send using sendmail' );  return $this->SendUsingSendmail();  }    if ( $this->smtp == 1 ) {  $this->debug->Message( 'Send using smtp' );  return $this->SendUsingSMTP();  }    return 0;    }      Function ExplodeAddressList( $address_list ) {  if ( $address_list == '' ) {  return Array();  }  return split( ',', $address_list );  }    Function StripMailAddressBare( $address ) {    $bare_addr = $address;      if ( ereg( '<(.*)>', $address , $regs ) ) {  $bare_addr = $regs[ 1 ];  }    return $bare_addr;    }    Function FpPrint( $line, $new_line = 1 ) {    $this->debug->Message( 'SEND: ' . $line );    if ( $this->smtp == 1 ) {  $this->net_obj->SendLine( $line );  } else {  fputs( $this->fp, $line );  }    if ( $new_line == 1 && $this->smtp == 1 ) {  $this->net_obj->SendLine( $this->new_line );  } else if ( $new_line == 1 ) {  fputs( $this->fp, $this->new_line );  }    }    Function Write_RFC822_Headers() {          $this->FpPrint( 'Subject: '   .  $this->subject );  $this->FpPrint( 'From: '      .  $this->from );  $this->FpPrint( 'To: '        .  $this->to );    if ( $this->cc != undef && $this->cc != '' ) {  $this->FpPrint( 'Cc: ' . $this->cc );  }  if ( $this->bcc != undef && $this->bcc != '' ) {  $this->FpPrint( 'Bcc: ' . $this->bcc );  }      reset( $this->headers );  while( list( $header_name, $header_value ) = each( $this->headers ) ) {  $this->FpPrint( $header_name .  ': ' . $header_value );  }      $this->FpPrint( 'MIME-Version: 1.0' );    if ( count( $this->attatchments ) > 0 ) {    $this->mime_boundary    =  '0-' . microtime() . '-912837412-' . time() . '=:4553';    $this->mime_boundary = str_replace( ' ', '', $this->mime_boundary );    $this->FpPrint(  'Content-Type: multipart/mixed; BOUNDARY="' .  $this->mime_boundary . '"'  );      $this->FpPrint(  ' This message is in MIME format. The first part should be ' . $this->new_line .  ' readable text, while the remaining parts are likely' . $this->new_line .  ' unreadable without MIME-aware tools. Send mail to' . $this->new_line .  ' mime@docserver.cac.washington.edu for more info.' . $this->new_line  );    $this->FpPrint( '--' . $this->mime_boundary );  $this->FpPrint( 'Content-Type: text/plain; charset=' . $this->charset );  $this->FpPrint( '' );    } else {  $this->FpPrint( 'Content-Type: text/plain; charset=' . $this->charset );  }    $this->FpPrint( '' );    }    Function Write_MessageBody() {    $this->FpPrint( $this->message_body );      if ( count( $this->attatchments ) > 0 ) {    $this->FpPrint( '' );    $mime_util = new MimeObject();      for( $x = 0; $x < count( $this->attatchments ); $x++ ) {  $current_file = $this->attatchments[ $x ];    if ( file_exists( $current_file ) ) {  $fh = fopen( $current_file, 'r' ) ;  $file_contents = fread( $fh, filesize( $current_file ) );  fclose( $fh );    $this->FpPrint( '--' . $this->mime_boundary );    $cur_file = $current_file;  if ( $this->attatchments_filename_override[ $current_file ] != '' ) {  $cur_file = $this->attatchments_filename_override[ $current_file ];  }    $this->FpPrint(  'Content-Type: ' .  $mime_util->GetType( $cur_file ) . ';' .  'name="' . basename( $cur_file ) . '"'  );    $this->FpPrint( 'Content-Transfer-Encoding: base64' );      $this->FpPrint(  'Content-Description: ' .  $this->attatchments_comments[ $current_file ]  );    $this->FpPrint( '' );      $this->FpPrint( chunk_split( base64_encode( $file_contents ) ), 0 );    }    }    }    }    Function SMTP_ErrorCheck( $line ) {    list( $error_number, $message )  = split( ' ', $line );    switch( $error_number ) {  case 211:  case 214:  case 220:  case 221:  case 250:  case 251:  case 354:  return 1;  break;    case 421:  case 450:  case 451:  case 452:  case 500:  case 501:  case 502:  case 503:  case 504:  case 550:  case 551:  case 552:  case 553:  case 554:  return 0;  break;    default:  return 0;  break;    }    }    Function SMTP_ErrorTrap() {  $temp_line = $this->net_obj->ReadLine();  $this->debug->Message( 'RECV: ' . $temp_line );  if ( ! $this->SMTP_ErrorCheck( $temp_line ) ) {  return 0;  }  return 1;  }      Function SendUsingSMTP() {    $this->net_obj->server = $this->smtp_server;  $this->net_obj->port   = $this->smtp_port;    $this->net_obj->Connect();    if ( $this->net_obj->connected == 0 ) {  return 0;  }    $mail_from = $this->StripMailAddressBare( $this->from );    list( $username, $domain ) = split( '@', $mail_from );    $mail_to_arr   = Array();  $mail_cc_arr   = Array();  $mail_bcc_arr  = Array();    $mail_to_arr   = $this->ExplodeAddressList( $this->to );  $mail_cc_arr   = $this->ExplodeAddressList( $this->cc );  $mail_bcc_arr  = $this->ExplodeAddressList( $this->bcc );      if ( ! $this->SMTP_ErrorTrap() ) { return 0; }      $this->FpPrint( 'HELO ' . $domain );      if ( ! $this->SMTP_ErrorTrap() ) { return 0; }      $this->FpPrint( 'MAIL FROM<' . $mail_from . '>' );      if ( ! $this->SMTP_ErrorTrap() ) { return 0; }      for( $i = 0; $i < count( $mail_to_arr ); $i++ ) {    $this->debug->Message( $mail_to_arr[ $i ] );  $this->FpPrint(  'RCPT TO:<' .  $this->StripMailAddressBare( $mail_to_arr[ $i ] ) .  '>'  );    if ( ! $this->SMTP_ErrorTrap() ) { return 0; }  }      for( $i = 0; $i < count( $mail_cc_arr ); $i++ ) {    $this->debug->Message( $mail_cc_arr[ $i ] );  $this->FpPrint(  'RCPT TO:<' .  $this->StripMailAddressBare( $mail_cc_arr[ $i ] ) .  '>'  );    if ( ! $this->SMTP_ErrorTrap() ) { return 0; }  }      for( $i = 0; $i < count( $mail_bcc_arr ); $i++ ) {    $this->debug->Message( $mail_bcc_arr[ $i ] );  $this->FpPrint(  'RCPT TO:<' .  $this->StripMailAddressBare( $mail_bcc_arr[ $i ] ) .  '>'  );    if ( ! $this->SMTP_ErrorTrap() ) { return 0; }  }    $this->FpPrint( 'DATA' );      if ( ! $this->SMTP_ErrorTrap() ) { return 0; }    $this->Write_RFC822_Headers( $this->net_obj->connection_handle );    $this->Write_MessageBody( $this->net_obj->connection_handle );    $this->FpPrint( '.' );      if ( ! $this->SMTP_ErrorTrap() ) { return 0; }    $this->FpPrint( 'QUIT' );          $this->net_obj->Disconnect();    return 1;    }    Function SendUsingSendmail() {  $this->fp = 0;  $sendmail_command = Array(  $this->sendmail_command,  '-i'  );    if ( $this->from != '' ) {    $mail_from = $this->StripMailAddressBare( $this->from );    $sendmail_command[] = '-i -f "' . $mail_from . '"';    }    $sendmail_command[] = '"' . $this->to . '"';    $this->fp = popen( join( ' ', $sendmail_command ), 'w');      if ( $this->fp == 0 ) { return 0; }    $this->Write_RFC822_Headers();    $this->Write_MessageBody();    pclose( $this->fp );    return 1;    }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  121. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/MailFolder.object" ] != 1 ) {
  122. /* ../prometheus-library/objects/Mail/MailFolder.object */
  123. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/MailFolder.object" ]  = 1;
  124. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/Mail/MailFolder.object";
  125. ?><?php  class MailFolder extends BaseObject {    var $count;  var $recent;  var $new;    var $folder;    var $pop3;  var $imap;    var $pop3_obj;  var $imap_obj;    Function MailFolder( $folder = 'INBOX' ) {    $this->folder        = $folder;    $this->pop3          = 0;  $this->imap          = 0;    $this->pop3_obj      = new MailPop3();  $this->imap_obj      = new MailImap();    $this->count         = 0;  $this->recent        = 0;  $this->new           = 0;    }    Function CopySettings( $src_obj ) {  $this->folder           = $src_obj->folder;  $this->pop3             = $src_obj->pop3;  $this->imap             = $src_obj->imap;  $this->pop3_obj         = $src_obj->pop3_obj;  $this->imap_obj         = $src_obj->imap_obj;  if ( $this->imap == 1 ) {  $this->imap_obj->CopySettings( $src_obj );  }  if ( $this->pop3 == 1 ) {  }  }    Function GetStats() {  if ( $this->pop3 ) {  }  if ( $this->imap ) {  $this->imap_obj->folder = $this->folder;  $ret_vals = $this->imap_obj->Folder_GetStats();  if ( $ret_vals[ 0 ] == 0 ) {    return $ret_vals;  } else {  $this->count      = $ret_vals[ 1 ];  $this->recent     = $ret_vals[ 2 ];  $this->new        = $ret_vals[ 3 ];  return Array( true );  }  }  }    Function GetMessageHeader( $message_num ) {  if ( $this->imap ) {  $this->imap_obj->folder = $this->folder;  return $this->imap_obj->Message_GetHeader( $message_num );  }  }    Function GetMessageBody( $message_num ) {  if ( $this->imap ) {  $this->imap_obj->folder = $this->folder;  return $this->imap_obj->Message_GetBody( $message_num );  }  }    Function GetMessageBodySection( $message_num, $section_num ) {  if ( $this->imap ) {  $this->imap_obj->folder = $this->folder;  return $this->imap_obj->Message_GetBodySection(  $message_num, $section_num  );  }  }    Function GetMessageStructure( $message_num ) {  if ( $this->imap ) {  $this->imap_obj->folder = $this->folder;  return $this->imap_obj->Message_Structure( $message_num );  }  }    Function DeleteMessage( $message_num ) {  if ( $this->imap ) {  $this->imap_obj->folder = $this->folder;  return $this->imap_obj->Message_Delete( $message_num );  }  }    Function UnDeleteMessage( $message_num ) {  if ( $this->imap ) {  $this->imap_obj->folder = $this->folder;  return $this->imap_obj->Message_UnDelete( $message_num );  }  }    Function ExpungeDeletedMessages() {  if ( $this->imap ) {  $this->imap_obj->folder = $this->folder;  return $this->imap_obj->Message_ExpungeDeleted();  }  }    /*  SORTARRIVAL  SORTFROM  SORTSIZE  SORTSUBJECT  */  Function Sort( $sort_order = SORTARRIVAL, $reverse_order = 0 ) {  if ( $this->imap ) {  $this->imap_obj->folder = $this->folder;  return $this->imap_obj->Folder_Sort( $sort_order, $reverse_order );  }  }    Function MoveMessage( $to_folder, $message_id ) {  $this->imap_obj->CopySettings( $this );  $this->pop3_obj->CopySettings( $this );  if ( $this->imap == 1 ) {  return $this->imap_obj->MoveMessage( $to_folder, $message_id );  } else {    return 0;  }  return 0;  }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  126. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/MailImap.object" ] != 1 ) {
  127. /* ../prometheus-library/objects/Mail/MailImap.object */
  128. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/MailImap.object" ]  = 1;
  129. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/Mail/MailImap.object";
  130. ?><?php  class MailImap extends BaseObject {    var $user_name;  var $password;  var $server;  var $port;    var $connection_string;    var $folder;    var $debug;    Function MailImap(  $user_name = '', $password = '', $server = '', $port = '') {    $this->BaseObject( 'MailImap' );    $this->user_name = '';  $this->password  = '';  $this->server    = '';  $this->port      = '';    if ( $user_name != '' ) {  $this->user_name = $user_name;  }  if ( $password != '' ) {  $this->password = $password;  }  if ( $server != '' ) {  $this->server = $server;  } else {  $this->server = 'localhost';  }    if ( $port != '' ) {  $this->port = $port;  } else {  $this->port = 143;  }  $this->connection_stream = '';  $this->connection_string = '';  $this->connected         = 0;    $this->folder = '';    $this->debug = new Debug();  $this->debug->prefix = 'MailImap';  $this->debug->Off();    }    Function CopySettings( $src_obj ) {  $this->server        = $src_obj->server;  $this->port          = $src_obj->port;  $this->user_name     = $src_obj->user_name;  $this->password      = $src_obj->password;  $this->folder        = $src_obj->folder;  }    Function DebugPrintSettings() {  $this->debug->Message( 'Server     : ' . $this->server );  $this->debug->Message( 'Port       : ' . $this->port );  $this->debug->Message( 'User Name  : ' . $this->user_name );  $this->debug->Message( 'Password   : ' . $this->password );  $this->debug->Message( 'Folder     : ' . $this->folder );  $this->debug->Message( 'Connected  : ' . $this->connected );  }    Function Connect( $folder = '' ) {  if ( $folder != '' ) {  $this->folder = $folder;  }    if ( $this->port == '' ) {  $this->port = 143;  }    if ( $this->server == '' ) {  $this->server = 'localhost';  }    if ( $this->connected == 0 ) {    $this->connected = false;    $server = $this->server;    if ( $this->server == 'localhost' ) {  $server = '127.0.0.1';  }    $this->connection_string  =  '{' . $server . ':' . $this->port . '}';  $this->connection_stream =  @imap_open(  $this->connection_string . $this->folder,  $this->user_name,  $this->password  );  $this->DebugPrintSettings();  }      $this->connected = @imap_ping( $this->connection_stream );    if ( $this->connected ) {  return Array( true );  } else {  return Array( false, 'Invalid connection.' );  }    }    Function Disconnect() {  if ( $this->connected ) {  @imap_close( $this->connection_stream );  }  $this->connected = 0;  return Array( true );  }    Function ListFolders() {      $ret_vals = $this->Connect();  if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    $t_mailboxes = Array();    $t_mailboxes = imap_listsubscribed(  $this->connection_stream,  $this->connection_string,  '*'  );      /*  $t_mailboxes = imap_listmailbox(  $this->connection_stream,  $this->connection_string,  '*'  );  */    if ( $t_mailboxes == 0 ) {  return Array();  }    $mailboxes = Array();  for( $i = 0; $i < count( $t_mailboxes ); $i++ ) {  $mailboxes[] = @imap_utf7_decode( $t_mailboxes[ $i ] );  }    return $mailboxes;    }    Function CreateFolder( $folder ) {    $ret_vals = $this->Connect();  if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    return @imap_createmailbox(  $this->connection_stream,  $this->connection_string . @imap_utf7_encode( $folder )  );    }    Function RemoveFolder( $folder ) {    $ret_vals = $this->Connect();  if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    $this->UnSubscribeFolder( $folder );    return imap_deletemailbox(  $this->connection_stream,  $this->connection_string . @imap_utf7_encode( $folder )  );  }    Function SubscribeToFolder( $folder ) {    $ret_vals = $this->Connect();    if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    return @imap_subscribe(  $this->connection_stream,  $this->connection_string . @imap_utf7_encode( $folder )  );    }    Function UnSubscribeFolder( $folder ) {  $ret_vals = $this->Connect();    if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    return imap_unsubscribe(  $this->connection_stream,  $this->connection_string . @imap_utf7_encode( $folder )  );    }    Function MoveMessage( $folder, $message_id ) {    $ret_vals = $this->Connect();    if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    return @imap_mail_move(  $this->connection_stream,  $message_id,  @imap_utf7_encode( $folder )  );    }    Function Folder_GetStats() {    $ret_vals = $this->Connect();  if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    $count      = @imap_num_msg( $this->connection_stream );  $recent     = @imap_num_recent( $this->connection_stream );  $new        = count(  @imap_search( $this->connection_stream, 'UNSEEN', SE_UID )  );    return Array( true, $count, $recent, $new );    }    Function Folder_Sort(  $sort_order = SORTARRIVAL,  $reverse    = 0 ) {    $ret_vals = $this->Connect();  if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    $sorted_message_ids = Array();  $sorted_message_ids = @imap_sort(  $this->connection_stream,  $sort_order,  $reverse,  SE_UID  );  return $sorted_message_ids;  }    Function Message_GetHeader( $message_num ) {    $ret_vals = $this->Connect();    if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    $header = @imap_header(  $this->connection_stream,  @imap_msgno( $this->connection_stream, $message_num )  );  return Array( true, $header );    }    Function Message_GetBody( $message_num ) {    $ret_vals = $this->Connect();    if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    $body = @imap_body(  $this->connection_stream,  @imap_msgno( $this->connection_stream, $message_num )  );  return Array( true, $body );      }    Function Message_GetBodySection( $message_num, $section_num ) {  $ret_vals = $this->Connect();    if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    return Array( true,  @imap_fetchbody(  $this->connection_stream,  $message_num,  $section_num,  FT_UID  )  );  }    Function Message_Structure( $message_num ) {    $ret_vals = $this->Connect();    if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    return  @imap_fetchstructure(  $this->connection_stream,  @imap_msgno( $this->connection_stream, $message_num )    );    }    Function Message_Delete( $message_num ) {    $ret_vals = $this->Connect();    if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    return @imap_delete(  $this->connection_stream,  @imap_msgno( $this->connection_stream, $message_num )  );    }    Function Message_UnDelete( $message_num ) {    $ret_vals = $this->Connect();    if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    return @imap_undelete(  $this->connection_stream,  @imap_msgno( $this->connection_stream, $message_num )  );    }    Function Message_ExpungeDeleted() {    $ret_vals = $this->Connect();    if ( $ret_vals[ 0 ] != 1 ) {  return Array( false, 'Unable to connect' );  }    return @imap_expunge( $this->connection_stream );    }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  131. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/MailPop3.object" ] != 1 ) {
  132. /* ../prometheus-library/objects/Mail/MailPop3.object */
  133. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/MailPop3.object" ]  = 1;
  134. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/Mail/MailPop3.object";
  135. ?><?php  class MailPop3 extends BaseObject {    var $user_name;  var $password;  var $server;  var $port;    var $connection_string;  var $connected;    Function MailPop3( $user_name = '', $password = '', $server = '', $port = '' ) {  $this->user_name = '';  $this->password  = '';  $this->server    = '';  $this->port      = '';    if ( $user_name != '' ) {  $this->user_name = $user_name;  }  if ( $password != '' ) {  $this->password = $password;  }  if ( $server != '' ) {  $this->server = $server;  }  if ( $port != '' ) {  $this->port = $port;  }  $this->connection_string = '';  $this->connected         = 0;  }    Function CopySettings() {  }    Function Connect() {  if ( $this->server_port == '' ) {  $this->server_port = 110;  }  }      }  ?><?php } /* End if file is autoloaded */ ?><?php
  136. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/Mail.object" ] != 1 ) {
  137. /* ../prometheus-library/objects/Mail/Mail.object */
  138. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/Mail/Mail.object" ]  = 1;
  139. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/Mail/Mail.object";
  140. ?><?php    class Mail extends BaseObject {    var $server;  var $port;  var $user_name;  var $password;    var $pop3;  var $imap;    var $imap_obj;  var $pop3_obj;    var $folder;    Function Mail() {    $this->BaseObject( 'Mail' );    $this->server           = 'localhost';  $this->server_port      = 143;  $this->user_name        = '';  $this->password         = '';    $this->pop3             = 0;  $this->imap             = 0;    $this->imap_obj         = new MailImap();  $this->pop3_obj         = new MailPop3();    $this->folder           = '';    }    Function Connect() {    if ( $this->imap == true ) {  $this->imap_obj->CopySettings( $this );  return $this->imap_obj->Connect();  }    if ( $this->pop3 == true ) {  $this->pop3_obj->CopySettings( $this );  return $this->pop3_obj->Connect();  }    }    Function Disconnect() {  if ( $this->imap == true ) {  $this->imap_obj->CopySettings( $this );  return $this->Disconnect();  }  if ( $this->pop3 == true ) {  $this->pop3_obj->CopySettings( $this );  return $this->Disconnect();  }  }    Function Open() {  return $this->Connect();  }    Function Close() {  return $this->Disconnect();  }    Function GetFolder( $folder ) {    $this->folder = $folder;  $this->imap_obj->CopySettings( $this );  $this->pop3_obj->CopySettings( $this );    $temp_obj            = new MailFolder();  $temp_obj->CopySettings( $this );    return Array( true, $temp_obj );  }    Function ListFolders() {  $this->imap_obj->CopySettings( $this );  $this->pop3_obj->CopySettings( $this );    if ( $this->imap == 1 ) {  return $this->imap_obj->ListFolders();  } else {    return Array();  }    return Array();    }    Function CreateFolder( $folder ) {  $this->imap_obj->CopySettings( $this );  $this->pop3_obj->CopySettings( $this );  if ( $this->imap == 1 ) {  return $this->imap_obj->CreateFolder( $folder );  } else {    return 0;  }  return 0;  }    Function RemoveFolder( $folder ) {    $this->imap_obj->CopySettings( $this );  $this->pop3_obj->CopySettings( $this );    if ( $this->imap == 1 ) {  return $this->imap_obj->RemoveFolder( $folder );  } else {    return 0;  }    return 0;  }    Function SubscribeToFolder( $folder ) {  $this->imap_obj->CopySettings( $this );  $this->pop3_obj->CopySettings( $this );  if ( $this->imap == 1 ) {  return $this->imap_obj->SubscribeToFolder( $folder );  } else {    return 0;  }  return 0;  }    Function UnSubscribeFromFolder( $folder ) {  }    Function GetBareFolderNameList( $list ) {  $t_list = Array();  for( $i = 0; $i < count( $list ); $i++ ) {  $t_list[] = $this->GetBareFolderName( $list[ $i ] );  }  return $t_list;  }    Function GetBareFolderName( $folder_name ) {    if ( ereg( '^{(.*)}(.*)', $folder_name, $regs ) ) {  return $regs[ 2 ];  }    return $folder_name;  }      }    ?><?php } /* End if file is autoloaded */ ?><?php
  141. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/User/UserManagement.object" ] != 1 ) {
  142. /* ../prometheus-library/objects/User/UserManagement.object */
  143. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/User/UserManagement.object" ]  = 1;
  144. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/User/UserManagement.object";
  145. ?><?php  class UserManagement extends BaseObject {  var $user_db;  var $autocreate_user;    Function UserManagement( $user_db = '' ) {  $this->BaseObject( 'UserManagement' );    if ( is_object( $user_db ) ) {  $this->user_db             = $user_db;  } else {  $this->user_db             = new User_Db();  }    $this->autocreate_user     = false;    }    Function Get( $user_obj ) {    $this->user_db->autocreate_user = $this->autocreate_user;    return $this->user_db->Get( $user_obj );    }    Function Add( $user_obj ) {    $this->user_db->autocreate_user = $this->autocreate_user;    $ret_vals = $this->user_db->Get( $user_obj );    if ( $ret_vals[ 0 ] == true ) {      return Array( false, 'User with that name already!' );    }    $ret_vals = $this->user_db->Add( $user_obj );    if ( $ret_vals[ 0 ] == true ) {  return Array( true, 'User added to the system.', $ret_vals[1] );  }    return Array( false, 'User failed to add to the system.' );  }    Function Modify( $orig_user_obj, $user_obj ) {    $this->user_db->autocreate_user = $this->autocreate_user;    $ret_vals = $this->user_db->Get( $orig_user_obj );    if ( $ret_vals[ 0 ] == true ) {    $orig_user_obj = $ret_vals[ 1 ];    $user_obj->user_id = $orig_user_obj->user_id;    $ret_vals = $this->user_db->Modify(  $user_obj  );    if ( $ret_vals[ 0 ] == true ) {    return Array( true, 'User sucessfully edited.' );    }    return Array( false, 'Failed to perform edit.' );    } else {    return Array( false, 'User does not exist in the database.' );    }    }    Function Delete( $user_obj ) {    $this->user_db->autocreate_user = $this->autocreate_user;    $ret_vals = $this->user_db->Get( $user_obj );    if ( $ret_vals[ 0 ] == true ) {      $t_obj = $ret_vals[ 1 ] ;    $ret_vals = $this->user_db->Delete( $user_obj );    if ( $ret_vals[ 0 ] == true ) {    return Array( true, 'User sucessfully deleted.' );    }    return Array( false, 'Unable to delete user.' );    }    return Array( false, 'User does not exist in the database.' );  }    Function ListAll( $like = '', $limit = '') {    return $this->user_db->ListAll( $like, $limit );    }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  146. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/AdminPrivileges/UserAdminPrivilegesManagement.object" ] != 1 ) {
  147. /* ../prometheus-library/objects/AdminPrivileges/UserAdminPrivilegesManagement.object */
  148. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/AdminPrivileges/UserAdminPrivilegesManagement.object" ]  = 1;
  149. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/AdminPrivileges/UserAdminPrivilegesManagement.object";
  150. ?><?php    class UserAdminPrivilegesManagement extends BaseObject {  var $admin_db;    Function UserAdminPrivilegesManagement( $admin_db = '' ) {  $this->BaseObject( 'UserAdminPrivilegesManagement' );    if ( is_object( $admin_db ) ) {  $this->admin_db               = $admin_db;  } else {  $this->admin_db               = new AdminPrivileges_Db();  }    }    Function ListAll() {  return $this->admin_db->ListAll();  }    Function Add( $new_privilege ) {  return $this->admin_db->Add( $new_privilege );  }    Function Delete( $user_id ) {  return $this->admin_db->Delete( $user_id );  }    Function Get( $user_id ) {  return $this->admin_db->Get( $user_id );  }    Function Modify( $user_id, $new_privileges ) {  return $this->admin_db->Modify( $user_id, $new_privileges );  }  }    ?><?php } /* End if file is autoloaded */ ?><?php
  151. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/CustomerInformation/CustomerAddress.object" ] != 1 ) {
  152. /* ../prometheus-library/objects/CustomerInformation/CustomerAddress.object */
  153. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/CustomerInformation/CustomerAddress.object" ]  = 1;
  154. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/CustomerInformation/CustomerAddress.object";
  155. ?><?php    class CustomerAddress extends BaseObject {    var $address_id;  var $user_id;  var $address_name;  var $address;  var $city;  var $state;  var $zip;  var $country;  var $mailing_address;  var $last_update_by;  var $last_update;    Function CustomerAddress() {  $this->BaseObject( 'CustomerAddress' );  $this->address_id       = -1;  $this->user_id          = -1;  $this->address_name     = '';  $this->address          = '';  $this->city             = '';  $this->state            = '';  $this->zip              = '';  $this->country          = '';  $this->mailing_address  = 0;  $this->last_update_by   = -1;  $this->last_update      = 'NEVER';  }    }    ?><?php } /* End if file is autoloaded */ ?><?php
  156. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerAddress_Db.object" ] != 1 ) {
  157. /* ../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerAddress_Db.object */
  158. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerAddress_Db.object" ]  = 1;
  159. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerAddress_Db.object";
  160. ?><?php  class Mysql_CustomerAddress_Db extends BaseObject {    var $debug;  var $customer_db;    Function Mysql_CustomerAddress_Db( $db_config ) {  $this->BaseObject( 'Mysql_CustomerAddress_Db' );    $this->customer_db = new Mysql_Db();    if ( is_object( $db_config ) ) {  $this->customer_db->db = $db_config;  }    $this->debug            = new Debug();  $this->debug->prefix    = 'Mysql_Db::Mysql_CustomerAddress';  $this->debug->On();  $this->customer_db->debug->On();    }    Function InitDbConnection() {    /*  Make sure the database handle is available  ( if not try to open it )  */  $returns = Array();    if ( $this->customer_db->connection_init == false) {  $returns = $this->customer_db->CreateConnection();  }    if ( $this->customer_db->connection_init == false ) {  return array( false, 'Database not connected', $returns );  }    return array( true );  }      Function Add( $address_obj ) {        $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $insert_address = $this->customer_db->PrepareSql(  $sql_util->InsertStatement(  'address_table',  Array(  'user_id'         => $address_obj->user_id,  'address_name'    => $address_obj->address_name,  'address'         => $address_obj->address,  'city'            => $address_obj->city,  'state'           => $address_obj->state,  'zip'             => $address_obj->zip,  'country'         => $address_obj->country,  'mailing_address' => $address_obj->mailing_address,  'last_update_by'  => $address_obj->last_update_by,  'last_update'     => $address_obj->last_update  )  )  );    list( $ret_val, $reason ) = $insert_address->Exec();    if ( ! $ret_val ) {  return Array( false, 'Insert to table failed.' );  } else {  return Array( true );  }    }    Function ListAll( $user_id )    {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $get_addresses = $this->customer_db->PrepareSql(  $sql_util->SelectStatement(  Array( 'address_table' ),  Array(  'address_id',  'user_id',           'address_name',  'address',           'city',  'state',             'zip',  'country',           'mailing_address',  'last_update_by',    'last_update'  ),  'user_id = ' . $user_id  )  );    $t_array = Array();    while( list(  $address_id,  $user_id,           $address_name,  $address,           $city,  $state,             $zip,  $country,           $mailing_address,  $last_update_by,    $last_update  ) = $get_addresses->FetchRow() ) {  $t_obj = new CustomerAddress();  $t_obj->address_id      = $address_id;  $t_obj->user_id         = $user_id;  $t_obj->address_name    = $address_name;  $t_obj->address         = $address;  $t_obj->city            = $city;  $t_obj->state           = $state;  $t_obj->zip             = $zip;  $t_obj->country         = $country;  $t_obj->mailing_address = $mailing_address;  $t_obj->last_update_by  = $last_update_by;  $t_obj->last_update     = $last_update;    $t_array[] = $t_obj;  }    return $t_array;    }    Function Get( $address_id )    {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $get_addresses = $this->customer_db->PrepareSql(  $sql_util->SelectStatement(  Array( 'address_table' ),  Array(  'address_id',  'user_id',           'address_name',  'address',           'city',  'state',             'zip',  'country',           'mailing_address',  'last_update_by',    'last_update'  ),  'address_id = ' . $address_id  )  );    $t_array = Array();    list( $address_id,   $user_id,           $address_name,  $address,      $city,              $state,  $zip,          $country,           $mailing_address,  $last_update_by,    $last_update  ) = $get_addresses->FetchRow();    $t_obj = new CustomerAddress();  $t_obj->address_id      = $address_id;  $t_obj->user_id         = $user_id;  $t_obj->address_name    = $address_name;  $t_obj->address         = $address;  $t_obj->city            = $city;  $t_obj->state           = $state;  $t_obj->zip             = $zip;  $t_obj->country         = $country;  $t_obj->mailing_address = $mailing_address;  $t_obj->last_update_by  = $last_update_by;  $t_obj->last_update     = $last_update;    return $t_obj;    }    Function Delete( $address_id ) {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();        if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $delete_domain = $this->customer_db->PrepareSql(  $sql_util->DeleteStatement(  'address_table',  'address_id = ' . $address_id  )  );    list( $ret_val, $reason ) = $delete_domain->Exec();    if ( ! $ret_val ) {  return Array( false, 'Delete of address failed.' );  } else {  return Array( true );  }    }    Function Modify( $address_obj ) {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $update_domain = $this->customer_db->PrepareSql(  $sql_util->UpdateStatement(  'address_table',  Array(  'user_id'               => $address_obj->user_id,  'address_name'          => $address_obj->address_name,  'address'               => $address_obj->address,  'city'                  => $address_obj->city,  'state'                 => $address_obj->state,  'zip'                   => $address_obj->zip,  'country'               => $address_obj->country,  'mailing_address'       => $address_obj->mailing_address,  'last_update_by'        => $address_obj->last_update_by,  'last_update'           => $address_obj->last_update  ),  'address_id = ' . $address_obj->address_id  )  );    list( $ret_val, $reason ) = $update_domain->Exec();    if ( ! $ret_val ) {  return Array( false, 'Update of domain failed.' );  } else {  return Array( true );  }      }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  161. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/CustomerInformation/CustomerPhoneNumber.object" ] != 1 ) {
  162. /* ../prometheus-library/objects/CustomerInformation/CustomerPhoneNumber.object */
  163. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/objects/CustomerInformation/CustomerPhoneNumber.object" ]  = 1;
  164. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/objects/CustomerInformation/CustomerPhoneNumber.object";
  165. ?><?php  class CustomerPhoneNumber extends BaseObject {    var $phone_num_id;  var $user_id;  var $phone_number_name;  var $phone_number;  var $phone_number_notes;  var $contact_number;    Function CustomerPhoneNumber() {  $this->BaseObject( 'CustomerPhoneNumber' );    $this->phone_num_id        = -1;  $this->user_id             = -1;  $this->phone_number_name   = '';  $this->phone_number        = '';  $this->phone_number_notes  = '';  $this->contact_number      = 0;    }    }    ?><?php } /* End if file is autoloaded */ ?><?php
  166. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerPhoneNumber_Db.object" ] != 1 ) {
  167. /* ../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerPhoneNumber_Db.object */
  168. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerPhoneNumber_Db.object" ]  = 1;
  169. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerPhoneNumber_Db.object";
  170. ?><?php  class Mysql_CustomerPhoneNumber_Db extends BaseObject {    var $debug;  var $customer_db;    Function Mysql_CustomerPhoneNumber_Db( $db_config ) {  $this->BaseObject( 'Mysql_CustomerPhoneNumber_Db' );    $this->customer_db = new Mysql_Db();    if ( is_object( $db_config ) ) {  $this->customer_db->db = $db_config;  }    $this->debug            = new Debug();  $this->debug->prefix    = 'Mysql_Db::Mysql_CustomerPhoneNumber';  $this->debug->On();  $this->customer_db->debug->On();    }    Function InitDbConnection() {    /*  Make sure the database handle is available  ( if not try to open it )  */  $returns = Array();    if ( $this->customer_db->connection_init == false) {  $returns = $this->customer_db->CreateConnection();  }    if ( $this->customer_db->connection_init == false ) {  return array( false, 'Database not connected', $returns );  }    return array( true );  }      Function Add( $phone_obj ) {        $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $insert_phone = $this->customer_db->PrepareSql(  $sql_util->InsertStatement(  'phone_num_table',  Array(  'user_id'               => $phone_obj->user_id,  'phone_number_name'     => $phone_obj->phone_number_name,  'phone_number'          => $phone_obj->phone_number,  'phone_number_notes'    => $phone_obj->phone_number_notes,  'contact_number'        => $phone_obj->contact_number  )  )  );    list( $ret_val, $reason ) = $insert_phone->Exec();    if ( ! $ret_val ) {  return Array( false, 'Insert to table failed.' );  } else {  return Array( true );  }    }    Function ListAll( $user_id )    {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $get_phones = $this->customer_db->PrepareSql(  $sql_util->SelectStatement(  Array( 'phone_num_table' ),  Array(  'phone_num_id',               'user_id',  'phone_number_name',          'phone_number',  'phone_number_notes',         'contact_number'  ),  'user_id = ' . $user_id  )  );    $t_array = Array();    while( list(  $phone_num_id,               $user_id,  $phone_number_name,          $phone_number,  $phone_number_notes,         $contact_number  ) = $get_phones->FetchRow() ) {  $t_obj = new CustomerPhoneNumber();  $t_obj->phone_num_id       = $phone_num_id;  $t_obj->user_id            = $user_id;  $t_obj->phone_number_name  = $phone_number_name;  $t_obj->phone_number       = $phone_number;  $t_obj->phone_number_notes = $phone_number_notes;  $t_obj->contact_number     = $contact_number;    $t_array[] = $t_obj;  }    return $t_array;    }    Function Get( $phone_id )    {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $get_phones = $this->customer_db->PrepareSql(  $sql_util->SelectStatement(  Array( 'phone_num_table' ),  Array(  'phone_num_id',               'user_id',  'phone_number_name',          'phone_number',  'phone_number_notes',         'contact_number'  ),  'phone_num_id = ' . $phone_id  )  );    $t_array = Array();    list( $phone_num_id,               $user_id,  $phone_number_name,          $phone_number,  $phone_number_notes,         $contact_number  ) = $get_phones->FetchRow();    $t_obj = new CustomerPhoneNumber();  $t_obj->phone_num_id       = $phone_num_id;  $t_obj->user_id            = $user_id;  $t_obj->phone_number_name  = $phone_number_name;  $t_obj->phone_number       = $phone_number;  $t_obj->phone_number_notes = $phone_number_notes;  $t_obj->contact_number     = $contact_number;    return $t_obj;    }    Function Delete( $phone_id ) {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();    if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $delete_phone = $this->customer_db->PrepareSql(  $sql_util->DeleteStatement(  'phone_num_table',  'phone_num_id = ' . $phone_id  )  );    list( $ret_val, $reason ) = $delete_phone->Exec();    if ( ! $ret_val ) {  return Array( false, 'Delete of phone failed.' );  } else {  return Array( true );  }    }    Function Modify( $phone_obj ) {      $this->debug->Message( 'Init connection' );  list( $ret_val, $reason ) = $this->InitDbConnection();      if ( $ret_val == false ) {  $this->debug->Message( 'connect failed' );  return array( $ret_val, $reason );  }    $sql_util = new SqlUtil();      $update_domain = $this->customer_db->PrepareSql(  $sql_util->UpdateStatement(  'phone_num_table',  Array(  'user_id'               => $phone_obj->user_id,  'phone_number_name'     => $phone_obj->phone_number_name,  'phone_number'          => $phone_obj->phone_number,  'phone_number_notes'    => $phone_obj->phone_number_notes,  'contact_number'        => $phone_obj->contact_number  ),  'phone_num_id = ' . $phone_obj->phone_num_id  )  );    list( $ret_val, $reason ) = $update_domain->Exec();    if ( ! $ret_val ) {  return Array( false, 'Update of phone failed.' );  } else {  return Array( true );  }      }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  171. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerInformation_Db.object" ] != 1 ) {
  172. /* ../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerInformation_Db.object */
  173. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerInformation_Db.object" ]  = 1;
  174. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/db/CustomerInformation_Db/Mysql_CustomerInformation_Db.object";
  175. ?><?php    class Mysql_CustomerInformation_Db extends BaseObject {    var $address;  var $phone;    Function Mysql_CustomerInformation_Db( $db_config = '' ) {    $this->BaseObject( 'Mysql_CustomerInformation_Db' );      $this->address =  new Mysql_CustomerAddress_Db( $db_config );  $this->phone   =  new Mysql_CustomerPhoneNumber_Db( $db_config );    $this->debug            = new Debug();  $this->debug->prefix    = 'Mysql_Db::Mysql_CustomerInformation';  $this->debug->On();    }    }  ?><?php } /* End if file is autoloaded */ ?><?php
  176. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/CustomerInformation_Db/Dummy_CustomerInformation_Db.object" ] != 1 ) {
  177. /* ../prometheus-library/db/CustomerInformation_Db/Dummy_CustomerInformation_Db.object */
  178. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/CustomerInformation_Db/Dummy_CustomerInformation_Db.object" ]  = 1;
  179. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/db/CustomerInformation_Db/Dummy_CustomerInformation_Db.object";
  180. ?><?php    class Dummy_CustomerInformation_Db extends BaseObject {    Function Dummy_CustomerInformation_Db( $db_config = '' ) {  $this->BaseObject( 'Dummy_CustomerInformation_Db' );  }    }    ?><?php } /* End if file is autoloaded */ ?><?php
  181. if ( $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/CustomerInformation_Db/CustomerInformation_Db.object" ] != 1 ) {
  182. /* ../prometheus-library/db/CustomerInformation_Db/CustomerInformation_Db.object */
  183. $PHP_AUTO_LOADED_FILES[ "../prometheus-library/db/CustomerInformation_Db/CustomerInformation_Db.object" ]  = 1;
  184. $PHP_AUTO_LOADED_FILES_ORDER[]                  = "../prometheus-library/db/CustomerInformation_Db/CustomerInformation_Db.object";
  185. ?><?php  class CustomerInformation_Db extends BaseObject {    Function CustomerInformation_Db() {  $this->BaseObject( 'CustomerInformation_Db' );  }    Function Db( $driver = '', $db_config = '' ) {    $driver = strtolower( $driver );    switch( $driver ) {    case 'mysql':  return new Mysql_CustomerInformation_Db( $db_config );    default:  return new Dummy_CustomerInformation_Db( $db_config );  }    }    }  ?><?php } /* End if file is autoloaded */ ?>