Changeset 1327

Show
Ignore:
Timestamp:
12/03/07 19:04:49 (9 months ago)
Author:
rho
Message:

New installation script

  • Make writable elgg dirroot
  • Make writable "data" directory
  • Go to browser

Signed-off: Rolando Espinoza La Fuente <rho@prosoftpeople.com>

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • devel/_elggadmin/lib.php

    r1271 r1327  
    4747                // Load Elgg configuration 
    4848                global $CFG, $messages; 
    49                 require_once($ADMINCFG->admin->elggdir . "config-dist.php"); 
     49                require_once($ADMINCFG->admin->elggdir . "config-defaults.php"); 
    5050                 
    5151                elggadmin_config_check_values(); 
     
    6363                by the server. If that's the case, we'll give you a copy of the config.php file, and you'll need to upload it 
    6464                to your installation directory by hand.</p> 
    65                 <p>Of course, if you like to get your hands dirty, you can also set these values by copying config-dist.php to config.php 
     65                <p>Of course, if you like to get your hands dirty, you can also set these values by copying config-defaults.php to config.php 
    6666                in your Elgg installation folder and editing it by hand in your text editor of choice.</p> 
    6767                 
     
    385385         
    386386    // Generates a string containing all the configuration options 
    387     // (Essentially a filled-in version of config-dist.php) 
     387    // (Essentially a filled-in version of config-defaults.php) 
    388388        function elggadmin_configstring() { 
    389389             
  • devel/config-dist.php

    r1018 r1327  
    11<?php 
    22// ELGG system configuration parameters. 
    3  
    4 // System constants: set values as necessary 
    5 // Supply your values within the second set of speech marks in the pair 
    6 // i.e., define("system constant name", "your value"); 
    7  
    8 // Name of the site (eg Elgg, Apcala, University of Bogton's Social Network, etc) 
    9  
    10     $CFG->sitename = 'My Elgg site'; 
    11  
    12 // A tagline for your site (eg 'Social network for Bogton') 
    13  
    14     $CFG->tagline = 'A social networking site'; 
     3// You could override default values here, to see all available 
     4// options see config-defaults.php 
     5// Note: some values are override by the values stored in database 
     6// through admin manager 
    157 
    168// External URL to the site (eg http://elgg.bogton.edu/) 
    17 // NB: **MUST** have a final slash at the end 
    189 
    19     $CFG->wwwroot = 'http://'; 
     10   $CFG->wwwroot = "http://"; // **MUST** have a final slash at the end 
    2011 
    21 // Physical path to the files (eg /home/elggserver/httpdocs/) 
    22 // NB: **MUST** have a final slash at the end 
     12// Database configuration 
    2313 
    24     $CFG->dirroot = ''; 
     14    $CFG->dbtype = "mysql"; 
     15    $CFG->dbhost = "localhost"; 
    2516 
    26 // Email address of the system (eg elgg-admin@bogton.edu) 
     17    $CFG->dbuser = "elgg"; 
     18    $CFG->dbpass = ""; 
    2719 
    28     $CFG->sysadminemail = ''; 
     20    $CFG->dbname = "elgg"; 
     21    $CFG->prefix = "elgg_"; 
    2922 
    30 // Account 1, with username news, is initially administrator. This 
    31 // will be its initial password - UPON INSTALLATION, YOU SHOULD LOG 
    32 // IN AS NEWS AND CHANGE THE PASSWORD IMMEDIATELY. 
     23    $CFG->sysadminemail = ""; 
    3324 
    34     $CFG->newsinitialpassword = ''; 
    35      
    36 // Country code to set language to if you have gettext installed 
    37 // To include new languages, save their compiled .mo gettext 
    38 // file into languages/country code/LC_MESSAGES/ 
    39 // (the file within this folder must be called elgg.mo) 
    40 // See https://launchpad.net/elgg/trunk/+pots/elgg for more 
    41 // translations. 
    42  
    43     $CFG->defaultlocale = 'en_GB'; 
    44  
    45 // The following should be set to false if you don't want the 
    46 // general public to be able to register accounts with your 
    47 // Elgg site. 
    48  
    49     $CFG->publicreg = true; 
    50      
    51 // The following should be set to false if you don't want users 
    52 // to be able to invite new users into the system. 
    53  
    54     $CFG->publicinvite = true; 
    55  
    56 // Set this to a positive number to cap the number of users in your 
    57 // installation, for example if you're testing and only have a certain number 
    58 // of resources available to you. 
    59  
    60     $CFG->maxusers = 0; 
    61  
    62 // Set this to 1 to enable a walled garden - i.e., if you're not logged in, 
    63 // all you can see is the login page. 
    64  
    65     $CFG->walledgarden = 0; 
    66  
    67 // If the following string is non-blank, it must be present within 
    68 // the domains of email addresses of people signing up. For example,  
    69 // if you set it to yourinstitution.edu, a user with the email address 
    70 // foo@bar.yourinstitution.edu will be able to sign up. 
    71 // This rule will hold true for both public registrations and invitations 
    72 // from within the system (if either are enabled). 
    73  
    74     $CFG->emailfilter = ""; 
    75      
    76 // The following sets the default access level within the Elgg 
    77 // site. Possible values include: 
    78 //        PUBLIC        :: available to everyone 
    79 //        LOGGED_IN    :: available to logged in users only 
    80 //        PRIVATE        :: available to the user only 
    81  
    82     $CFG->default_access = "LOGGED_IN"; 
    83  
    84 // Set the following to true to force users to log in before they can post comments, overriding per-user option 
    85 // Handy sledgehammer-to-crack-a-nut to protect against comment spam. 
    86     $CFG->disable_publiccomments = false; 
    87      
    88 // dataroot. this is where uploaded files will go (and sessions for now) 
    89 // This should be OUTSIDE your wwwroot. 
    90 // NB: **MUST** have a final slash at the end 
    91  
    92     $CFG->dataroot = ''; 
    93  
    94 // You may change these values to something else but you must ensure that 
    95 // the user the web server process runs as is able to read and write under 
    96 // these permissions. 
    97 //$CFG->directorypermissions = 0777; 
    98 //$CFG->filepermissions = 0666; 
    99  
    100     $CFG->dbtype = 'mysql'; // for now 
    101     $CFG->dbhost = 'localhost'; 
    102     $CFG->dbuser = ''; 
    103     $CFG->dbpass = ''; 
    104     $CFG->dbname = ''; 
    105     $CFG->dbpersist = false; 
    106  
    107 // The following will assume all your database tables have this value at the start  
    108 // of their names. If you're upgrading from an earlier version of Elgg, you might  
    109 // need to set this to $CFG->prefix = ''; 
    110  
    111     $CFG->prefix = 'elgg'; 
    112  
    113 // performance and debugging 
    114 // Uncomment this to get sql errors sent to the webserver error log. 
    115 // $CFG->dblogerror = true; 
    116  
    117 // verbosity of PHP error message logging. 
    118 // set this to 2047 to get adodb error handling. 
    119  
    120     //$CFG->debug = 0; // don't log *any* error messages. previously this was the (unhelpful) default. 
    121     $CFG->debug = 7; // only basic errors. for production systems. equivalent to php (E_ERROR | E_WARNING | E_PARSE). 
    122     //$CFG->debug = 2047; // errors and notices. for development systems/debugging. equivalent to php E_ALL. 
    123  
    124 // Number of days to keep incoming RSS feed entries for before deleting them. 
    125 // A value of 0 disables automatic deletion. 
    126  
    127     $CFG->rsspostsmaxage = 0; 
    128  
    129 // Set this to 'admin' to only allow administrators to create new communities. 
    130 // You can set this to other user flags if you're told to by a plugin. 
    131  
    132     $CFG->community_create_flag = ""; 
    133      
    134 // Username and password for the admin panel at /_elggadmin/ 
    135 // To use the admin panel, these can't be left blank! 
    136  
    137     $CFG->adminuser = ""; 
    138     $CFG->adminpassword = ""; 
    139  
    140 // 
    141 //   Capture performance profiling data 
    142 //   define('ELGG_PERF'  , true); 
    143 // 
    144 //   Capture additional data from DB 
    145 //   define('ELGG_PERFDB'  , true); 
    146 // 
    147 //   Print to log (for passive profiling of production servers) 
    148 //   define('ELGG_PERFTOLOG'  , true); 
    149 // 
    150 //   Print to footer (works with the default theme) 
    151 //   define('ELGG_PERFTOFOOT', true); 
    152 // 
    153 // EMAIL HANDLING 
    154 // $CFG->smtphosts= ''; // empty (sendmail), qmail (qmail) or hosts 
    155 // $CFG->smtpuser = ''; // if using smtphosts, optional smtpuser & smtppass 
    156 // $CFG->smtppass = '';  
    157 // $CFG->noreplyaddress = ''; // this will default to noreply@hostname (from wwwroot) 
    158  
    159 // CLAMAV HANDLING 
    160 //$CFG->runclamonupload = true; 
    161 //$CFG->quarantinedir = '/somewhere/the/webserver/can/write/to'; 
    162 //$CFG->clamfailureonupload = 'actlikevirus'; // OR 'donothing'; 
    163 //$CFG->pathtoclam = '/usr/bin/clamscan'; // OR '/usr/bin/clamdscan'; 
    164  
    165 // TEMPLATES HANDLING 
    166 //$CFG->disable_usertemplates = true;  // users can only choose from available templates 
    167 //$CFG->disable_templatechanging = true; // users can't change their template at all 
    168 //Templates root defaults to /mod/template/templates; if you change this, you will need 
    169 //to move or copy /mod/template/templates/Default_Template/ to the new location 
    170 //$CFG->templatesroot = '/some/path/'; // use on-disk templates instead of DB templates  
    171  
    172 //Template file handing is not currently recommended. 
    173 //$CFG->templatestore = 'db';          // 'db' (default) or 'files' (requires $CFG->templatesroot to be set) 
    174  
    175 // PROFILE LOCATION 
    176 //\$CFG->profilelocation = '$PARSEDCFG->templatelocation'; 
    177  
    178 // set up some LMS hosts. 
    179 // -------------------------------------------------- 
    180 // This array is KEYED on installid - the lms clients should identify themselves with this installid 
    181 // Token is required and should be shared with the lms client. 
    182 // Baseurl is required and will be used to link back to the lms. 
    183 // Name is optional and will be used to display a user friendly name.  The institution name is a good choice. 
    184 //      If this is not given, installid will be used instead. 
    185 // Confirmurl is optional (pings back confirmation of requests for signup and authentication.) 
    186 //      Moodle's confirm url is http://yourmoodlehost.com/blocks/eportfolio/confirm.php 
    187 //      But not all lms systems will implement this necessarily. 
    188 // Network address is optional (performs further checking on requests from the lms) & can be three different formats: 
    189 //      A full exact address like 192.168.0.1 
    190 //      A partial address like 192.168 
    191 //      CIDR notation, such as 231.54.211.0/20  
    192 // 
    193 // $CFG->lmshosts = array('installid' => array('token' => 'sharedsecret', 'networkaddress' => 'xxx.xxx.xxx.xxx','confirmurl' => 'http://thelms.com/something.php', 'baseurl' => 'http://thelms.com', 'name' => 'Something Friendly')); 
    194 // 
    195 // Note that if you are going to allow file transfers between your lms and elgg using scp 
    196 // you will need to obtain the .pub part of an ssh key that the lms has been set up to use,  
    197 // and add it to the ~/.ssh/authorized_keys file for the user on this machine they need to connect to,  
    198 // and provide the lms with the username for that user.  
    199 // This user needs write access to {$CFG->dataroot}lms/incoming/ as that is where the incoming files will end up. 
    200  
    201  
    202 // For SSL feed *reading* support, Snoopy needs to know where the curl executable is. 
    203 // To disable, or if curl is not available (e.g. on Windows), set to false 
    204 //$CFG->curlpath = "/usr/bin/curl"; 
    205 $CFG->curlpath = false; 
    206  
    207 // Whether to prevent users from changing their passwords. 
    208 // For use with an external authentication system that doesn't look at the elgg user's password. 
    209 // You'll probably want to disable registration and invites too. 
    210 $CFG->disable_passwordchanging = false; 
    211  
    212 // Some other $CFG variables found in codebase. 
    213 // They may or may not be config options. Some are just used for holding global data. 
    214  
    215 // $CFG->admin 
    216 // $CFG->allowobjectembed // boolean - whether to allow <object> and <embed> tags through input-cleaning 
    217 // $CFG->auth // string - which auth plugin to use 
    218 // $CFG->cachetext 
    219 // $CFG->currenttextiscacheable 
    220 // $CFG->dbsessions 
    221 // $CFG->detect_unchecked_vars 
    222 // $CFG->filterall 
    223 // $CFG->framename 
    224 // $CFG->handlebounces // in commented-out code 
    225 // $CFG->ignoresesskey // in commented-out code 
    226 // $CFG->logsql 
    227 // $CFG->maxbytes 
    228 // $CFG->openid_comments_allowed 
    229 // $CFG->opentogoogle 
    230 // $CFG->pathtodu 
    231 // $CFG->perfdebug 
    232 // $CFG->pixpath 
    233 // $CFG->plugins->editor 
    234 // $CFG->plugins->tinymce 
    235 // $CFG->release 
    236 // $CFG->respectsessionsettings 
    237 // $CFG->secureforms 
    238 // $CFG->session_error_counter 
    239 // $CFG->sessioncookie 
    240 // $CFG->sessiontimeout 
    241 // $CFG->templatedir 
    242 // $CFG->tracksessionip 
    243 // $CFG->unzip 
    244 // $CFG->userlocale 
    245 // $CFG->version 
    246 // $CFG->zip 
     25// Settings for initial administrator, only used at installation time 
     26    $CFG->newsinitialusername = "news"; 
     27    $CFG->newsinitialpassword = ""; 
    24728 
    24829?> 
  • devel/includes.php

    r1301 r1327  
    55    // All installation specific parameters should be in a file  
    66    // that is not part of the standard distribution. 
    7         if (!file_exists(dirname(__FILE__)."/config.php")) { 
     7        //TODO: disabled this message, go directly to installer 
     8        if (false && !file_exists(dirname(__FILE__)."/config.php")) { 
    89            $message = <<< END 
    910<html> 
     
    3031            die($message); 
    3132        } 
    32         require_once(dirname(__FILE__)."/config.php"); 
     33 
     34    // Default config values 
     35        require_once(dirname(__FILE__).'/config-defaults.php'); 
     36    // override config values 
     37        if (is_readable(dirname(__FILE__).'/config.php')) { 
     38            require_once(dirname(__FILE__)."/config.php"); 
     39        } 
     40 
     41    // Check if should go to install 
     42        if (empty($CFG->dbuser) || empty($CFG->dbpass)) { 
     43            header('Location: install.php'); 
     44            exit(); 
     45        } 
    3346 
    3447    // Check for .htaccess 
  • devel/lib/dbsetup.php

    r1026 r1327  
    5555                //execute_sql("update ".$CFG->prefix."users set email = ". $db->qstr($CFG->sysadminemail) ." where username = 'news'"); 
    5656                set_field('users', 'email', $CFG->sysadminemail, 'username', 'news'); 
     57 
     58                // change initial administrator if it's set 
     59                /* 
     60                if (!empty($CFG->newsinitialusername)) { 
     61                    set_field('users', 'name', 'Administrator', 'username', 'news'); 
     62                    set_field('users', 'username', $CFG->newsinitialusername, 'username', 'news'); 
     63                } 
     64                 */ 
     65 
    5766            } else { 
    5867                $db->debug = false;