Source for file install.php

Documentation is available at install.php

  1. <?php
  2. /**
  3.  * Installation Script
  4.  * 
  5.  * This script updates the Archon database to either begin
  6.  * using the Subjects Package
  7.  * 
  8.  * @package Archon
  9.  * @author Kyle Fox
  10.  */
  11.  
  12. isset($_ARCHONor die();
  13.  
  14. $objSubjectsPackage new Package();
  15. $objSubjectsPackage->APRCode 'subjects';
  16. $objSubjectsPackage->DBVersion '2.10';
  17. $objSubjectsPackage->dbStore();
  18.  
  19. @define('PACKAGE_SUBJECTS'$objSubjectsPackage->IDfalse);
  20.  
  21. // Ready go for install scripts
  22. if(get_class($_ARCHON->db== 'MySQLDatabase' && file_exists("packages/subjects/install/install-mysql.sql.gz"))
  23. {
  24.     $arrQueries $arrQueries gzfile("packages/subjects/install/install-mysql.sql.gz");
  25. }
  26. else if(get_class($_ARCHON->db== 'MSSQLDatabase' && file_exists("packages/subjects/install/install-mssql.sql.gz"))
  27. {
  28.     $arrQueries $arrQueries gzfile("packages/subjects/install/install-mssql.sql.gz");
  29. }
  30.  
  31. if(file_exists("packages/subjects/install/install.sql.gz"))
  32. {
  33.     $arrQueries !empty($arrQueriesarray_merge($arrQueriesgzfile("packages/subjects/install/install.sql.gz")) gzfile("packages/subjects/install/install.sql.gz");
  34. }
  35.  
  36. $arrQueries str_replace("\\n""\r\n"$arrQueries);
  37. $arrQueries preg_replace('/#([\w]+)#/e''$1'$arrQueries);
  38.  
  39. if(!empty($arrQueries))
  40. {
  41.     ob_start();
  42.     foreach($arrQueries as $linequery)
  43.     {
  44.         if(encoding_substr($linequery02!= "--")
  45.         {
  46.             $query .= $linequery;
  47.             if(encoding_substr(trim($linequery)-11== ';' || encoding_substr(trim($linequery)-21== ';')
  48.             {
  49.                 $_ARCHON->db->query($query);
  50.                 $query '';
  51.             }
  52.         }
  53.     }
  54.     ob_end_clean();
  55. }
  56.  
  57. // Set default usergroup permissions
  58. $currentSecurity $_ARCHON->Security->Disabled;
  59. $_ARCHON->Security->Disabled true;
  60.  
  61. $UsergroupID $_ARCHON->getUsergroupIDFromName('Users');
  62. if($UsergroupID)
  63. {
  64.     $objUsergroup New Usergroup($UsergroupID);
  65.     
  66.     $arrPermissions array('subjectsources' => 0'subjecttypes' => 0);
  67.     foreach($arrPermissions as $Script => $Permissions)
  68.     {
  69.         $ModuleID $_ARCHON->getModuleIDFromScript($Script);
  70.         $objUsergroup->dbSetPermissions($ModuleID$Permissions);
  71.     }
  72. }
  73.  
  74. $_ARCHON->Security->Disabled $currentSecurity;
  75.  
  76. $objSubjectsPackage->dbEnable();
  77. ?>

Documentation generated on Wed, 05 Mar 2008 16:46:40 -0600 by phpDocumentor 1.3.1