SC_mod_tools_em_index Class Reference

Inheritance diagram for SC_mod_tools_em_index:

Inheritance graph
[legend]
Collaboration diagram for SC_mod_tools_em_index:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 init ()
 handleExternalFunctionValue ($MM_key='function', $MS_value=NULL)
 menuConfig ()
 main ()
 printContent ()
 extensionList_loaded ()
 extensionList_installed ()
 extensionList_import ()
 browseLinks ()
 alterSettings ()
 translationHandling ()
 updateTranslation ($extKey, $lang, $mirrorURL)
 installTranslationsForExtension ($extKey, $mirrorURL)
 unzip ($file, $path)
 importExtInfo ($extKey, $version='')
 fetchMetaData ($metaType)
 getMirrorURL ()
 installExtension ($extKey, $version=null, $mode=EM_INSTALL_VERSION_MIN)
 refreshGlobalExtList ()
 importExtFromRep ($extKey, $version, $loc, $uploadFlag=0, $dontDelete=0, $directInput='')
 showExtDetails ($extKey)
 requestInstallExtensions ($extList)
 updatesForm ($extKey, $extInfo, $notSilent=0, $script='', $addFields='')
 extDumpTables ($extKey, $extInfo)
 getFileListOfExtension ($extKey, $conf)
 extDelete ($extKey, $extInfo)
 extUpdateEMCONF ($extKey, $extInfo)
 extBackup ($extKey, $extInfo)
 extBackup_dumpDataTablesLine ($tablesArray, $extKey)
 extInformationArray ($extKey, $extInfo, $remote=0)
 extInformationArray_dbReq ($techInfo, $tableHeader=0)
 extInformationArray_dbInst ($dbInst, $current)
 getRepositoryUploadForm ($extKey, $extInfo)
 extensionListRowHeader ($trAttrib, $cells, $import=0)
 extensionListRow ($extKey, $extInfo, $cells, $bgColorClass='', $inst_list=array(), $import=0, $altLinkUrl='')
 wrapEmail ($str, $email)
 helpCol ($key)
 labelInfo ($str)
 extensionTitleIconHeader ($extKey, $extInfo, $align='top')
 removeButton ()
 installButton ()
 noImportMsg ()
 depToString ($dep, $type='depends')
 stringToDep ($dep)
 getInstalledExtensions ()
 getInstExtList ($path, &$list, &$cat, $type)
 fixEMCONF ($emConf)
 splitVersionRange ($ver)
 prepareImportExtList ($unsetProc=false)
 setCat (&$cat, $listArrayPart, $extKey)
 makeDetailedExtensionAnalysis ($extKey, $extInfo, $validity=0)
 getClassIndexLocallangFiles ($absPath, $table_class_prefix, $extKey)
 modConfFileAnalysis ($confFilePath)
 serverExtensionMD5Array ($extKey, $conf)
 findMD5ArrayDiff ($current, $past)
 createDirsInPath ($dirs, $extDirPath)
 removeExtDirectory ($removePath, $removeContentOnly=0)
 clearAndMakeExtensionDir ($importedData, $type, $dontDelete=0)
 removeCacheFiles ()
 extractDirsFromFileList ($files)
 getExtPath ($extKey, $type)
 writeTYPO3_MOD_PATH ($confFilePath, $type, $mP)
 writeNewExtensionList ($newExtList)
 writeTsStyleConfig ($extKey, $arr)
 updateLocalEM_CONF ($extKey, $extInfo)
 construct_ext_emconf_file ($extKey, $EM_CONF)
 arrayToCode ($array, $level=0)
 makeUploadArray ($extKey, $conf)
 getSerializedLocalLang ($file, $content)
 addExtToList ($extKey, $instExtInfo)
 checkDependencies ($extKey, $conf, $instExtInfo)
 removeExtFromList ($extKey, $instExtInfo)
 removeRequiredExtFromListArr ($listArr)
 managesPriorities ($listArr, $instExtInfo)
 checkClearCache ($extInfo)
 checkUploadFolder ($extKey, $extInfo)
 checkDBupdates ($extKey, $extInfo, $infoOnly=0)
 forceDBupdates ($extKey, $extInfo)
 tsStyleConfigForm ($extKey, $extInfo, $output=0, $script='', $addFields='')
 dumpTableAndFieldStructure ($arr)
 dumpStaticTables ($tableList)
 dumpHeader ()
 dumpTableHeader ($table, $fieldKeyInfo, $dropTableIfExists=0)
 dumpTableContent ($table, $fieldStructure)
 getTableAndFieldStructure ($parts)
 uploadExtensionToTER ($em)
 listOrderTitle ($listOrder, $key)
 makeVersion ($v, $mode)
 renderVersion ($v, $raise='')
 ulFolder ($extKey)
 importAtAll ()
 importAsType ($type, $lockType='')
 deleteAsType ($type)
 versionDifference ($v1, $v2, $div=1)
 first_in_array ($str, $array, $caseInsensitive=FALSE)
 includeEMCONF ($path, $_EXTKEY)
 searchExtension ($extKey, $row)
 checkForUpdates ()
 showExtensionsToUpdate ()

Public Attributes

 $versionDiffFactor = 1
 $systemInstall = 0
 $requiredExt = ''
 $maxUploadSize = 31457280
 $kbMax = 500
 $doPrintContent = true
 $listingLimit = 500
 $listingLimitAuthor = 250
 $defaultCategories
 $categories
 $states
 $stateColors
 $typeLabels
 $typeDescr
 $typePaths = Array()
 $typeBackPaths = Array()
 $typeRelPaths
 $detailCols
 $fe_user
 $privacyNotice = 'When you interact with the online repository, server information may be sent and stored in the repository for statistics.'
 $securityHint = '<strong>Found a security problem? Please get in touch with us!</strong><br />If you think you have found a security issue in TYPO3 or an extension, please contact the <a href="http://typo3.org/teams/security/" target="_blank">TYPO3 security team</a>! Thank you!'
 $editTextExtensions = 'html,htm,txt,css,tmpl,inc,php,sql,conf,cnf,pl,pm,sh,xml,ChangeLog'
 $nameSpaceExceptions = 'beuser_tracking,design_components,impexp,static_file_edit,cms,freesite,quickhelp,classic_welcome,indexed_search,sys_action,sys_workflows,sys_todos,sys_messages,direct_mail,sys_stat,tt_address,tt_board,tt_calender,tt_guest,tt_links,tt_news,tt_poll,tt_rating,tt_products,setup,taskcenter,tsconfig_help,context_help,sys_note,tstemplate,lowlevel,install,belog,beuser,phpmyadmin,aboutmodules,imagelist,setup,taskcenter,sys_notepad,viewpage,adodb'
 $MCONF = array()
 $MOD_MENU = array()
 $MOD_SETTINGS = array()
 $doc
 $content
 $inst_keys = array()
 $gzcompress = 0
 $terConnection
 $xmlhandler
 $JScode
 $CMD = array()
 $listRemote
 $lookUpStr

Protected Member Functions

 getFuncMenu ()
 getButtons ()

Detailed Description

Definition at line 195 of file class.em_index.php.


Member Function Documentation

SC_mod_tools_em_index::addExtToList ( extKey,
instExtInfo 
)

Adds extension to extension list and returns new list. If -1 is returned, an error happend. Checks dependencies etc.

Parameters:
string Extension key
array Extension information array - information about installed extensions
Returns:
string New list of installed extensions or -1 if error
See also:
showExtDetails()

Definition at line 4176 of file class.em_index.php.

SC_mod_tools_em_index::alterSettings (  ) 

Allows changing of settings

Returns:
void

Definition at line 1058 of file class.em_index.php.

References $content.

SC_mod_tools_em_index::arrayToCode ( array,
level = 0 
)

Enter description here...

Parameters:
unknown_type $array
unknown_type $lines
unknown_type $level
Returns:
unknown

Definition at line 4049 of file class.em_index.php.

SC_mod_tools_em_index::browseLinks (  ) 

Generates a link to the next page of extensions

Returns:
void

Definition at line 1035 of file class.em_index.php.

SC_mod_tools_em_index::checkClearCache ( extInfo  ) 

Check if clear-cache should be performed, otherwise show form (for installation of extension) Shown only if the extension has the clearCacheOnLoad flag set.

Parameters:
string Extension key
array Extension information array
Returns:
string HTML output (if form is shown)

Definition at line 4471 of file class.em_index.php.

References $content, t3lib_div::_POST(), and t3lib_div::makeInstance().

SC_mod_tools_em_index::checkDBupdates ( extKey,
extInfo,
infoOnly = 0 
)

Validates the database according to extension requirements Prints form for changes if any. If none, returns blank. If an update is ordered, empty is returned as well. DBAL compliant (based on Install Tool code)

Parameters:
string Extension key
array Extension information array
boolean If true, returns array with info.
Returns:
mixed If $infoOnly, returns array with information. Otherwise performs update.

Definition at line 4584 of file class.em_index.php.

References $content, $GLOBALS, and t3lib_div::_GP().

SC_mod_tools_em_index::checkDependencies ( extKey,
conf,
instExtInfo 
)

Enter description here...

Parameters:
string $extKey
array $conf
array $instExtInfo
Returns:
array

Definition at line 4207 of file class.em_index.php.

SC_mod_tools_em_index::checkForUpdates (  ) 

Checks if there are newer versions of installed extensions in the TER integrated from the extension "ter_update_check" for TYPO3 4.2 by Christian Welzel

Returns:
nothing

Definition at line 5288 of file class.em_index.php.

References $content, and nbsp.

SC_mod_tools_em_index::checkUploadFolder ( extKey,
extInfo 
)

Check if upload folder / "createDir" directories should be created.

Parameters:
string Extension key
array Extension information array
Returns:
string HTML content.

Definition at line 4498 of file class.em_index.php.

References $content, t3lib_div::_POST(), t3lib_div::mkdir(), t3lib_div::trimExplode(), and t3lib_div::writeFile().

SC_mod_tools_em_index::clearAndMakeExtensionDir ( importedData,
type,
dontDelete = 0 
)

Removes the current extension of $type and creates the base folder for the new one (which is going to be imported)

Parameters:
array Data for imported extension
string Extension installation scope (L,G,S)
boolean If set, nothing will be deleted (neither directory nor files)
Returns:
mixed Returns array on success (with extension directory), otherwise an error string.

Definition at line 3767 of file class.em_index.php.

References $res, and t3lib_div::mkdir().

SC_mod_tools_em_index::construct_ext_emconf_file ( extKey,
EM_CONF 
)

Compiles the ext_emconf.php file

Parameters:
string Extension key
array EM_CONF array
Returns:
string PHP file content, ready to write to ext_emconf.php file

Definition at line 4017 of file class.em_index.php.

SC_mod_tools_em_index::createDirsInPath ( dirs,
extDirPath 
)

Creates directories in $extDirPath

Parameters:
array Array of directories to create relative to extDirPath, eg. "blabla", "blabla/blabla" etc...
string Absolute path to directory.
Returns:
mixed Returns false on success or an error string

Definition at line 3686 of file class.em_index.php.

References t3lib_div::mkdir_deep().

SC_mod_tools_em_index::deleteAsType ( type  ) 

Returns true if extensions in scope, $type, can be deleted (or installed for that sake)

Parameters:
string Scope: "G" or "L"
Returns:
boolean True if possible.

Definition at line 5202 of file class.em_index.php.

References $GLOBALS.

SC_mod_tools_em_index::depToString ( dep,
type = 'depends' 
)

Checks whether the passed dependency is TER2-style (array) and returns a single string for displaying the dependencies.

It leaves out all version numbers and the "php" and "typo3" dependencies, as they are implicit and of no interest without the version number.

Parameters:
mixed $dep Either a string or an array listing dependencies.
string $type The dependency type to list if $dep is an array
Returns:
string A simple dependency list for display

Definition at line 3060 of file class.em_index.php.

SC_mod_tools_em_index::dumpHeader (  ) 

Header comments of the SQL dump file

Returns:
string Table header

Definition at line 4904 of file class.em_index.php.

SC_mod_tools_em_index::dumpStaticTables ( tableList  ) 

Dump content for static tables

Parameters:
string Comma list of tables from which to dump content
Returns:
string Returns the content
See also:
dumpTableAndFieldStructure()

Definition at line 4875 of file class.em_index.php.

References t3lib_div::trimExplode().

SC_mod_tools_em_index::dumpTableAndFieldStructure ( arr  ) 

Makes a dump of the tables/fields definitions for an extension

Parameters:
array Array with table => field/key definition arrays in
Returns:
string SQL for the table definitions
See also:
dumpStaticTables()

Definition at line 4850 of file class.em_index.php.

SC_mod_tools_em_index::dumpTableContent ( table,
fieldStructure 
)

Dump table content Is DBAL compliant, but the dump format is written as MySQL standard. If the INSERT statements should be imported in a DBMS using other quoting than MySQL they must first be translated. t3lib_sqlengine can parse these queries correctly and translate them somehow.

Parameters:
string Table name
array Field structure
Returns:
string SQL Content of dump (INSERT statements)

Definition at line 4963 of file class.em_index.php.

References $GLOBALS, $lines, and $row.

SC_mod_tools_em_index::dumpTableHeader ( table,
fieldKeyInfo,
dropTableIfExists = 0 
)

Dump CREATE TABLE definition

Parameters:
string Table name
array Field and key information (as provided from Install Tool class!)
boolean If true, add "DROP TABLE IF EXISTS"
Returns:
string Table definition SQL

Definition at line 4921 of file class.em_index.php.

References $lines.

SC_mod_tools_em_index::extBackup ( extKey,
extInfo 
)

Download extension as file / make backup

Parameters:
string Extension key
array Extension information array
Returns:
string HTML content

Definition at line 2543 of file class.em_index.php.

References $content, $lines, and exit.

SC_mod_tools_em_index::extBackup_dumpDataTablesLine ( tablesArray,
extKey 
)

Link to dump of database tables

Parameters:
string Extension key
array Extension information array
Returns:
string HTML

Definition at line 2590 of file class.em_index.php.

References $GLOBALS, $res, $row, and nbsp.

SC_mod_tools_em_index::extDelete ( extKey,
extInfo 
)

Delete extension from the file system

Parameters:
string Extension key
array Extension info array
Returns:
string Returns message string about the status of the operation

Definition at line 2492 of file class.em_index.php.

References $content, $res, t3lib_div::inList(), and t3lib_extMgm::isLoaded().

SC_mod_tools_em_index::extDumpTables ( extKey,
extInfo 
)

Creates view for dumping static tables and table/fields structures...

Parameters:
string Extension key
array Extension information array
Returns:
void

Definition at line 2371 of file class.em_index.php.

References t3lib_div::formatSize(), and t3lib_div::writeFile().

SC_mod_tools_em_index::extensionList_import (  ) 

Listing remote extensions from online repository

Returns:
void

Definition at line 846 of file class.em_index.php.

References $content, $GLOBALS, $lines, and t3lib_div::_GP().

SC_mod_tools_em_index::extensionList_installed (  ) 

Listing of available (installed) extensions

Returns:
void

Definition at line 773 of file class.em_index.php.

SC_mod_tools_em_index::extensionList_loaded (  ) 

Listing of loaded (installed) extensions

Returns:
void

Definition at line 718 of file class.em_index.php.

References $content, $GLOBALS, and $lines.

SC_mod_tools_em_index::extensionListRow ( extKey,
extInfo,
cells,
bgColorClass = '',
inst_list = array(),
import = 0,
altLinkUrl = '' 
)

Prints a row with data for the various extension listings

Parameters:
string Extension key
array Extension information array
array Preset table cells, eg. install/uninstall icons.
string 

tag class

Parameters:
array Array with installed extension keys (as keys)
boolean If set, the list is coming from remote server.
string Alternative link URL
Returns:
string HTML

content

Definition at line 2852 of file class.em_index.php.

References $GLOBALS, t3lib_div::fixed_lgd(), t3lib_div::inList(), t3lib_extMgm::isLoaded(), more, nbsp, t3lib_div::trimExplode(), and t3lib_div::view_array().

SC_mod_tools_em_index::extensionListRowHeader ( trAttrib,
cells,
import = 0 
)

Prints the header row for the various listings

Parameters:
string Attributes for the

tag

Parameters:
array Preset cells in the beginning of the row. Typically a blank cell with a clear-gif
boolean If set, the list is coming from remote server.
Returns:
string HTML

table row

Definition at line 2791 of file class.em_index.php.

SC_mod_tools_em_index::extensionTitleIconHeader ( extKey,
extInfo,
align = 'top' 
)

Returns a header for an extensions including icon if any

Parameters:
string Extension key
array Extension information array
string align-attribute value (for tag)
Returns:
string HTML; Extension title and image.

Definition at line 3014 of file class.em_index.php.

References t3lib_div::fixed_lgd().

SC_mod_tools_em_index::extInformationArray ( extKey,
extInfo,
remote = 0 
)

Prints a table with extension information in it.

Parameters:
string Extension key
array Extension information array
boolean If set, the information array shows information for a remote extension in TER, not a local one.
Returns:
string HTML content.

Definition at line 2618 of file class.em_index.php.

References $GLOBALS, $lines, t3lib_div::inList(), t3lib_extMgm::isLoaded(), more, nbsp, and t3lib_div::view_array().

SC_mod_tools_em_index::extInformationArray_dbInst ( dbInst,
current 
)

Double install warning.

Parameters:
string Double-install string, eg. "LG" etc.
string Current scope, eg. "L" or "G" or "S"
Returns:
string Message

Definition at line 2713 of file class.em_index.php.

References $GLOBALS.

SC_mod_tools_em_index::extInformationArray_dbReq ( techInfo,
tableHeader = 0 
)

Returns HTML with information about database requirements

Parameters:
array Technical information array
boolean Table header displayed
Returns:
string HTML content.

Definition at line 2700 of file class.em_index.php.

SC_mod_tools_em_index::extractDirsFromFileList ( files  ) 

Extracts the directories in the $files array

Parameters:
array Array of files / directories
Returns:
array Array of directories from the input array.

Definition at line 3831 of file class.em_index.php.

SC_mod_tools_em_index::extUpdateEMCONF ( extKey,
extInfo 
)

Update extension EM_CONF...

Parameters:
string Extension key
array Extension information array
Returns:
string HTML content.

Definition at line 2523 of file class.em_index.php.

References $content.

SC_mod_tools_em_index::fetchMetaData ( metaType  ) 

Fetches metadata and stores it to the corresponding place. This includes the mirror list, extension XML files.

Parameters:
string Type of data to fetch: (mirrors)
boolean If true the method doesn't produce any output
Returns:
void

Definition at line 1550 of file class.em_index.php.

References $content, $TYPO3_CONF_VARS, t3lib_BEfunc::getModuleData(), t3lib_div::getURL(), t3lib_div::tempnam(), t3lib_div::unlink_tempfile(), and t3lib_div::writeFile().

SC_mod_tools_em_index::findMD5ArrayDiff ( current,
past 
)

Compares two arrays with MD5-hash values for analysis of which files has changed.

Parameters:
array Current values
array Past values
Returns:
array Affected files

Definition at line 3654 of file class.em_index.php.

SC_mod_tools_em_index::first_in_array ( str,
array,
caseInsensitive = FALSE 
)

Returns true if the $str is found as the first part of a string in $array

Parameters:
string String to test with.
array Input array
boolean If set, the test is case insensitive
Returns:
boolean True if found.

Definition at line 5235 of file class.em_index.php.

References t3lib_div::isFirstPartOfStr().

SC_mod_tools_em_index::fixEMCONF ( emConf  ) 

Fixes an old style ext_emconf.php array by adding constraints if needed and removing deprecated keys

Parameters:
array $emConf
Returns:
array

Definition at line 3167 of file class.em_index.php.

SC_mod_tools_em_index::forceDBupdates ( extKey,
extInfo 
)

Updates the database according to extension requirements DBAL compliant (based on Install Tool code)

Parameters:
string Extension key
array Extension information array
Returns:
void

Definition at line 4682 of file class.em_index.php.

References $GLOBALS.

SC_mod_tools_em_index::getButtons (  )  [protected]

Create the panel of buttons for submitting the form or otherwise perform operations.

Returns:
array all available buttons as an assoc. array

Definition at line 678 of file class.em_index.php.

References $GLOBALS, t3lib_div::_GP(), and t3lib_iconWorks::skinImg().

SC_mod_tools_em_index::getClassIndexLocallangFiles ( absPath,
table_class_prefix,
extKey 
)

Analyses the php-scripts of an available extension on server

Parameters:
string Absolute path to extension
string Prefix for tables/classes.
string Extension key
Returns:
array Information array.
See also:
makeDetailedExtensionAnalysis()

Definition at line 3531 of file class.em_index.php.

References $lines, $TYPO3_CONF_VARS, t3lib_div::getAllFilesAndFoldersInPath(), t3lib_div::isFirstPartOfStr(), and t3lib_div::removePrefixPathFromList().

SC_mod_tools_em_index::getExtPath ( extKey,
type 
)

Returns the absolute path where the extension $extKey is installed (based on 'type' (SGL))

Parameters:
string Extension key
string Install scope type: L, G, S
Returns:
string Returns the absolute path to the install scope given by input $type variable. It is checked if the path is a directory. Slash is appended.

Definition at line 3857 of file class.em_index.php.

SC_mod_tools_em_index::getFileListOfExtension ( extKey,
conf 
)

Returns file-listing of an extension

Parameters:
string Extension key
array Extension information array
Returns:
string HTML table.

Definition at line 2438 of file class.em_index.php.

References $content, $lines, t3lib_div::getAllFilesAndFoldersInPath(), t3lib_div::inList(), nbsp, and t3lib_div::split_fileref().

SC_mod_tools_em_index::getFuncMenu (  )  [protected]

Create the function menu

Returns:
string HTML of the function menu

Definition at line 663 of file class.em_index.php.

References t3lib_div::_GP(), and t3lib_BEfunc::getFuncMenu().

SC_mod_tools_em_index::getInstalledExtensions (  ) 

Returns the list of available (installed) extensions

Returns:
array Array with two arrays, list array (all extensions with info) and category index
See also:
getInstExtList()

Definition at line 3109 of file class.em_index.php.

SC_mod_tools_em_index::getInstExtList ( path,
&$  list,
&$  cat,
type 
)

Gathers all extensions in $path

Parameters:
string Absolute path to local, global or system extensions
array Array with information for each extension key found. Notice: passed by reference
array Categories index: Contains extension titles grouped by various criteria.
string Path-type: L, G or S
Returns:
void "Returns" content by reference private
See also:
getInstalledExtensions()

Definition at line 3136 of file class.em_index.php.

References t3lib_div::get_dirs(), and t3lib_div::getFilesInDir().

SC_mod_tools_em_index::getMirrorURL (  ) 

Returns the base URL for the slected or a random mirror.

Returns:
string The URL for the selected or a random mirror

Definition at line 1610 of file class.em_index.php.

SC_mod_tools_em_index::getRepositoryUploadForm ( extKey,
extInfo 
)

Prints the upload form for extensions

Parameters:
string Extension key
array Extension information array
Returns:
string HTML content.

Definition at line 2732 of file class.em_index.php.

References $content, $GLOBALS, and nbsp.

SC_mod_tools_em_index::getSerializedLocalLang ( file,
content 
)

Include a locallang file and return the $LOCAL_LANG array serialized.

Parameters:
string Absolute path to locallang file to include.
string Old content of a locallang file (keeping the header content)
Returns:
array Array with header/content as key 0/1
See also:
makeUploadArray()

Definition at line 4140 of file class.em_index.php.

SC_mod_tools_em_index::getTableAndFieldStructure ( parts  ) 

Gets the table and field structure from database. Which fields and which tables are determined from the ext_tables.sql file

Parameters:
string Array with table.field values
Returns:
array Array of tables and fields splitted.

Definition at line 4998 of file class.em_index.php.

SC_mod_tools_em_index::handleExternalFunctionValue ( MM_key = 'function',
MS_value = NULL 
)

This function is a copy of the same function in t3lib_SCbase with one modification: In contrast to t3lib_SCbase::handleExternalFunctionValue() this function merges the $this->extClassConf array instead of overwriting it. That was necessary for including the Kickstarter as a submodule into the 'singleDetails' selectorbox as well as in the main 'function' selectorbox.

Parameters:
string Mod-setting array key
string Mod setting value, overriding the one in the key
Returns:
void
See also:
t3lib_SCbase::handleExternalFunctionValue()

Reimplemented from t3lib_SCbase.

Definition at line 455 of file class.em_index.php.

SC_mod_tools_em_index::helpCol ( key  ) 

Returns help text if applicable.

Parameters:
string Help text key
Returns:
string HTML table cell

Definition at line 2981 of file class.em_index.php.

References $GLOBALS, $key