Project

General

Profile

Bug #16806 » 4690_v2.diff

Administrator Admin, 2009-01-01 19:04

View differences:

typo3/sysext/cms/tbl_tt_content.php (working copy)
'config' => Array (
'type' => 'select',
'items' => Array (
Array('1', 0),
Array('1', 1),
Array('2', 2),
Array('3', 3),
Array('4', 4),
......
Array('7', 7),
Array('8', 8)
),
'default' => 0
'default' => 1
)
),
'imagecaption' => Array (
......
);
?>
?>
typo3/sysext/install/ext_localconf.php (working copy)
// add outsourced system extensions since TYPO3 4.3
$TYPO3_CONF_VARS['SC_OPTIONS']['ext/install']['update']['installSystemExtensions'] = 'tx_coreupdates_installsysexts';
// change tt_content.imagecols=0 to 1 for proper display in TCEforms since TYPO3 4.3
$TYPO3_CONF_VARS['SC_OPTIONS']['ext/install']['update']['changeImagecolsValue'] = 'tx_coreupdates_imagecols';
?>
typo3/sysext/install/mod/class.tx_install.php (working copy)
require_once(t3lib_extMgm::extPath('install').'updates/class.tx_coreupdates_notinmenu.php');
require_once(t3lib_extMgm::extPath('install').'updates/class.tx_coreupdates_mergeadvanced.php');
require_once(t3lib_extMgm::extPath('install').'updates/class.tx_coreupdates_installsysexts.php');
require_once(t3lib_extMgm::extPath('install').'updates/class.tx_coreupdates_imagescols.php');
/**
* Install Tool module
*
typo3/sysext/install/updates/class.tx_coreupdates_imagescols.php (revision 0)
<?php
/***************************************************************
* Copyright notice
*
* (c) 2008 Steffen Kamper <info@sk-typo3.de>
* All rights reserved
*
* This script is part of the TYPO3 project. The TYPO3 project is
* free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* The GNU General Public License can be found at
* http://www.gnu.org/copyleft/gpl.html.
* A copy is found in the textfile GPL.txt and important notices to the license
* from the author is found in LICENSE.txt distributed with these scripts.
*
*
* This script is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/
/**
* Contains the update class for merging advanced and normal pagetype.
*
* @author Steffen Kamper <info@sk-typo3.de>
* @version
*/
class tx_coreupdates_imagecols {
var $versionNumber; // version number coming from t3lib_div::int_from_ver()
/**
* parent object
*
* @var tx_install
*/
var $pObj;
var $userInput; // user input
/**
* Checks if an update is needed
*
* @param string &$description: The description for the update
* @return boolean whether an update is needed (true) or not (false)
*/
public function checkForUpdate(&$description) {
$result = false;
$description = 'Sets tt_content.imagecols = 1 to all entries having "0". This is needed to have a valid value for imagecols.';
if ($this->versionNumber >= 4003000) {
$res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('uid', 'tt_content', 'CTYPE IN (\'textpic\', \'image\') AND imagecols=0', '', '', '1');
if($GLOBALS['TYPO3_DB']->sql_num_rows($res)) {
$result = true;
}
$GLOBALS['TYPO3_DB']->sql_free_result($res);
}
return $result;
}
/**
* Performs the database update. Changes the doktype from 2 (advanced) to 1 (standard)
*
* @param array &$dbQueries: queries done in this update
* @param mixed &$customMessages: custom messages
* @return boolean whether it worked (true) or not (false)
*/
public function performUpdate(&$dbQueries, &$customMessages) {
$result = false;
if($this->versionNumber >= 4003000) {
$updateArray = array(
'imagecols' => 1,
);
$res = $GLOBALS['TYPO3_DB']->exec_UPDATEquery('tt_content', 'CTYPE IN (\'textpic\', \'image\') AND imagecols=0', $updateArray);
$dbQueries[] = str_replace(chr(10), ' ', $GLOBALS['TYPO3_DB']->debug_lastBuiltQuery);
if ($GLOBALS['TYPO3_DB']->sql_error()) {
$customMessages = 'SQL-ERROR: ' . htmlspecialchars($GLOBALS['TYPO3_DB']->sql_error());
} else {
$result = true;
}
}
return $result;
}
}
?>
(2-2/2)