t3lib_install Class Reference

Inheritance diagram for t3lib_install:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 t3lib_install ()
 setValueInLocalconfFile (&$line_array, $variable, $value, $quoteValue=TRUE)
 writeToLocalconf_control ($inlines='', $absFullPath='')
 checkForBadString ($string)
 slashValueForSingleDashes ($value)
 getFieldDefinitions_fileContent ($fileContent)
 getFieldDefinitions_sqlContent_parseTypes (&$total)
 getCollationForCharset ($charset)
 getFieldDefinitions_database ()
 getDatabaseExtra ($FDsrc, $FDcomp, $onlyTableList='', $ignoreNotNullWhenComparing=true)
 getUpdateSuggestions ($diffArr, $keyList='extra, diff')
 assembleFieldDefinition ($row)
 getStatementArray ($sqlcode, $removeNonSQL=0, $query_regex='')
 getCreateTables ($statements, $insertCountFlag=0)
 getTableInsertStatements ($statements, $table)
 performUpdateQueries ($arr, $keyArr)
 getListOfTables ()
 generateUpdateDatabaseForm_checkboxes ($arr, $label, $checked=1, $iconDis=0, $currentValue=array(), $cVfullMsg=0)
 getFieldDefinitions_sqlContent ($fileContent)

Public Attributes

 $updateIdentity = ''
 $deletedPrefixKey = 'zzz_deleted_'
 $dbUpdateCheckboxPrefix = 'TYPO3_INSTALL[database_update]'
 $localconf_addLinesOnly = 0
 $localconf_editPointToken = 'INSTALL SCRIPT EDIT POINT TOKEN - all lines after this points may be changed by the install script!'
 $allowUpdateLocalConf = 0
 $backPath = '../'
 $multiplySize = 1
 $character_sets = array()
 $setLocalconf = 0
 $messages = array()
 $touchedLine = 0

Detailed Description

Definition at line 82 of file class.t3lib_install.php.


Member Function Documentation

t3lib_install::assembleFieldDefinition ( row  ) 

Converts a result row with field information into the SQL field definition string

Parameters:
array MySQL result row
Returns:
string Field definition

Definition at line 808 of file class.t3lib_install.php.

References $row.

Referenced by getFieldDefinitions_database().

t3lib_install::checkForBadString ( string  ) 

Checking for linebreaks in the string

Parameters:
string String to test
Returns:
boolean Returns TRUE if string is OK
See also:
setValueInLocalconfFile()

Definition at line 292 of file class.t3lib_install.php.

Referenced by tx_install::generateConfigForm(), and setValueInLocalconfFile().

t3lib_install::generateUpdateDatabaseForm_checkboxes ( arr,
label,
checked = 1,
iconDis = 0,
currentValue = array(),
cVfullMsg = 0 
)

Creates a table which checkboxes for updating database.

Parameters:
array Array of statements (key / value pairs where key is used for the checkboxes)
string Label for the table.
boolean If set, then checkboxes are set by default.
boolean If set, then icons are shown.
array Array of "current values" for each key/value pair in $arr. Shown if given.
boolean If set, will show the prefix "Current value" if $currentValue is given.
Returns:
string HTML table with checkboxes for update. Must be wrapped in a form.

Reimplemented in tx_install.

Definition at line 981 of file class.t3lib_install.php.

References $content, and $key.

t3lib_install::getCollationForCharset ( charset  ) 

Look up the default collation for specified character set based on "SHOW CHARACTER SET" output

Parameters:
string Character set
Returns:
string Corresponding default collation

Definition at line 502 of file class.t3lib_install.php.

References $GLOBALS.

Referenced by getFieldDefinitions_fileContent().

t3lib_install::getCreateTables ( statements,
insertCountFlag = 0 
)

Returns tables to create and how many records in each

Parameters:
array Array of SQL statements to analyse.
boolean If set, will count number of INSERT INTO statements following that table definition
Returns:
array Array with table definitions in index 0 and count in index 1

Definition at line 877 of file class.t3lib_install.php.

Referenced by tx_install::checkTheDatabase().

t3lib_install::getDatabaseExtra ( FDsrc,
FDcomp,
onlyTableList = '',
ignoreNotNullWhenComparing = true 
)

Compares two arrays with field information and returns information about fields that are MISSING and fields that have CHANGED. FDsrc and FDcomp can be switched if you want the list of stuff to remove rather than update.

Parameters:
array Field definitions, source (from getFieldDefinitions_fileContent())
array Field definitions, comparison. (from getFieldDefinitions_database())
string Table names (in list) which is the ONLY one observed.
boolean If set, this function ignores NOT NULL statements of the SQL file field definition when comparing current field definition from database with field definition from SQL file. This way, NOT NULL statements will be executed when the field is initially created, but the SQL parser will never complain about missing NOT NULL statements afterwards.
Returns:
array Returns an array with 1) all elements from $FDsrc that is not in $FDcomp (in key 'extra') and 2) all elements from $FDsrc that is different from the ones in $FDcomp

Definition at line 605 of file class.t3lib_install.php.

References t3lib_div::inList().

Referenced by tx_install::checkTheDatabase().

t3lib_install::getFieldDefinitions_database (  ) 

Reads the field definitions for the current database

Returns:
array Array with information about table.

Definition at line 525 of file class.t3lib_install.php.

References $GLOBALS, and assembleFieldDefinition().

Referenced by tx_install::checkTheDatabase().

t3lib_install::getFieldDefinitions_fileContent ( fileContent  ) 

Reads the field definitions for the input SQL-file string

Parameters:
string Should be a string read from an SQL-file made with 'mysqldump [database_name] -d'
Returns:
array Array with information about table.

Definition at line 332 of file class.t3lib_install.php.

References $GLOBALS, $key, $value, getCollationForCharset(), getFieldDefinitions_sqlContent_parseTypes(), and t3lib_div::trimExplode().

Referenced by tx_install::checkTheDatabase(), and getFieldDefinitions_sqlContent().

t3lib_install::getFieldDefinitions_sqlContent ( fileContent  ) 

Reads the field definitions for the input SQL-file string

Parameters:
string Should be a string read from an SQL-file made with 'mysqldump [database_name] -d'
Returns:
array Array with information about table.
Deprecated:
since TYPO3 4.2, this function will be removed in TYPO3 4.5, use ->getFieldDefinitions_fileContent() instead!

Definition at line 1050 of file class.t3lib_install.php.

References getFieldDefinitions_fileContent(), and t3lib_div::logDeprecatedFunction().

t3lib_install::getFieldDefinitions_sqlContent_parseTypes ( &$  total  ) 

Multiplies varchars/tinytext fields in size according to $this->multiplySize Useful if you want to use UTF-8 in the database and needs to extend the field sizes in the database so UTF-8 chars are not discarded. For most charsets available as single byte sets, multiplication with 2 should be enough. For chinese, use 3.

Parameters:
array Total array (from getFieldDefinitions_fileContent())
Returns:
void private
See also:
getFieldDefinitions_fileContent()

Definition at line 432 of file class.t3lib_install.php.

References t3lib_div::makeInstance(), and t3lib_div::trimExplode().

Referenced by getFieldDefinitions_fileContent().

t3lib_install::getListOfTables (  ) 

Returns list of tables in the database

Returns:
array List of tables.
See also:
t3lib_db::admin_get_tables()

Definition at line 962 of file class.t3lib_install.php.

References $GLOBALS, $key, and $value.

Referenced by tx_install::checkTheDatabase(), tx_install::cleanupManager(), tx_install::isBasicComplete(), and tx_install::stepOutput().

t3lib_install::getStatementArray ( sqlcode,
removeNonSQL = 0,
query_regex = '' 
)

Returns an array where every entry is a single SQL-statement. Input must be formatted like an ordinary MySQL-dump files.

Parameters:
string The SQL-file content. Provided that 1) every query in the input is ended with ';' and that a line in the file contains only one query or a part of a query.
boolean If set, non-SQL content (like comments and blank lines) is not included in the final output
string Regex to filter SQL lines to include
Returns:
array Array of SQL statements

Definition at line 835 of file class.t3lib_install.php.

Referenced by tx_install::checkTheDatabase().

t3lib_install::getTableInsertStatements ( statements,
table 
)

Extracts all insert statements from $statement array where content is inserted into $table

Parameters:
array Array of SQL statements
string Table name
Returns:
array Array of INSERT INTO statements where table match $table

Definition at line 914 of file class.t3lib_install.php.

Referenced by tx_install::checkTheDatabase().

t3lib_install::getUpdateSuggestions ( diffArr,
keyList = 'extra,
diff'   
)

Returns an array with SQL-statements that is needed to update according to the diff-array

Parameters:
array Array with differences of current and needed DB settings. (from getDatabaseExtra())
string List of fields in diff array to take notice of.
Returns:
array Array of SQL statements (organized in keys depending on type)

Definition at line 662 of file class.t3lib_install.php.

References $deletedPrefixKey, and $GLOBALS.

Referenced by tx_install::checkTheDatabase().

t3lib_install::performUpdateQueries ( arr,
keyArr 
)

Performs the queries passed from the input array.

Parameters:
array Array of SQL queries to execute.
array Array with keys that must match keys in $arr. Only where a key in this array is set and true will the query be executed (meant to be passed from a form checkbox)
Returns:
mixed Array with error message from database if any occured. Otherwise true if everything was executed successfully.

Definition at line 935 of file class.t3lib_install.php.

References $GLOBALS, $key, and $res.

Referenced by tx_install::checkTheDatabase().

t3lib_install::setValueInLocalconfFile ( &$  line_array,
variable,
value,
quoteValue = TRUE 
)

This functions takes an array with lines from localconf.php, finds a variable and inserts the new value.

Parameters:
array $line_array the localconf.php file exploded into an array by linebreaks. (see writeToLocalconf_control())
string $variable The variable name to find and substitute. This string must match the first part of a trimmed line in the line-array. Matching is done backwards so the last appearing line will be substituted.
string $value Is the value to be insert for the variable
boolean $quoteValue Whether the given value should be quoted before being written
Returns:
void
See also:
writeToLocalconf_control()

Definition at line 133 of file class.t3lib_install.php.

References $typo_db_password, $value, checkForBadString(), and slashValueForSingleDashes().

Referenced by tx_dbal_installtool::executeWriteLocalconf(), and tx_install::generateConfigForm().

t3lib_install::slashValueForSingleDashes ( value  ) 

Replaces ' with \' and \ with \

Parameters:
string Input value
Returns:
string Output value
See also:
setValueInLocalconfFile()

Definition at line 303 of file class.t3lib_install.php.

References $value.

Referenced by setValueInLocalconfFile().

t3lib_install::t3lib_install (  ) 

Constructor function

Returns:
void

Definition at line 108 of file class.t3lib_install.php.

References $GLOBALS.

t3lib_install::writeToLocalconf_control ( inlines = '',
absFullPath = '' 
)

Writes or returns lines from localconf.php

Parameters:
array Array of lines to write back to localconf.php. Possibly
string Absolute path of alternative file to use (Notice: this path is not validated in terms of being inside 'TYPO3 space')
Returns:
mixed If $inlines is not an array it will return an array with the lines from localconf.php. Otherwise it will return a status string, either "continue" (updated) or "nochange" (not updated)
See also:
setValueInLocalconfFile()

Reimplemented in tx_install.

Definition at line 214 of file class.t3lib_install.php.

References $GLOBALS, allowUpdateLocalConf, t3lib_div::sysLog(), and t3lib_div::writeFile().


Member Data Documentation

t3lib_install::$allowUpdateLocalConf = 0

Definition at line 91 of file class.t3lib_install.php.

t3lib_install::$backPath = '../'

Definition at line 92 of file class.t3lib_install.php.

t3lib_install::$character_sets = array()

Definition at line 95 of file class.t3lib_install.php.

t3lib_install::$dbUpdateCheckboxPrefix = 'TYPO3_INSTALL[database_update]'

Definition at line 88 of file class.t3lib_install.php.

t3lib_install::$deletedPrefixKey = 'zzz_deleted_'

Definition at line 87 of file class.t3lib_install.php.

Referenced by getUpdateSuggestions().

t3lib_install::$localconf_addLinesOnly = 0

Definition at line 89 of file class.t3lib_install.php.

t3lib_install::$localconf_editPointToken = 'INSTALL SCRIPT EDIT POINT TOKEN - all lines after this points may be changed by the install script!'

Definition at line 90 of file class.t3lib_install.php.

t3lib_install::$messages = array()

Reimplemented in tx_install.

Definition at line 99 of file class.t3lib_install.php.

t3lib_install::$multiplySize = 1

Definition at line 94 of file class.t3lib_install.php.

t3lib_install::$setLocalconf = 0

Definition at line 98 of file class.t3lib_install.php.

t3lib_install::$touchedLine = 0

Definition at line 100 of file class.t3lib_install.php.

t3lib_install::$updateIdentity = ''

Reimplemented in tx_install.

Definition at line 86 of file class.t3lib_install.php.


The documentation for this class was generated from the following file:
Generated on Sat Jul 24 04:18:32 2010 for TYPO3 API by  doxygen 1.4.7