Commit fe2fe9df authored by Kasper Skårhøj's avatar Kasper Skårhøj
Browse files

Done various changes.


git-svn-id: https://svn.typo3.org/TYPO3v4/Core/trunk@75 709f56b5-9817-0410-a4d7-c38de5d9e867
parent e3a8046a
Fixed all:
- Click menu does not work in task-center/weblist
- admin-only flag in TYPO3_CONF_VARS so only administrators can log in/be authenticated.
- Click menu does not work in Opera.
- BUG: Row-highlighting for both Page and Folder trees are not stable enough.
- BUG: when editing records from Web>View the palette will not show properly in the topframe!
- BUG: Email forms wizard: "Checked: " for checkboxes does not work!
- BUG: File>List , list-frame: Click menu does NOT work in Mozilla! cannot find the bug!
- Convert selecting of filemounts from GROUP selector to a selectorbox.
- Option: Frameset modules without the "border" frame and therefore adjustable freely.
Changed all usage of t3lib_div::GPvar('SET') to t3lib_div::GPvar('SET',1) (stripping slashes) where its used to set MOD_SETTINGS for backend modules.
2003-12-16 Robert Lemke <rl@robertlemke.de>
* Added and changed some features related to the replacement of default page module by a custom one (templavoila). See t3lib_positionmap, t3lib_tsfebeuserauth, alt_shortcut, alt_clickmenu
......
......@@ -3,13 +3,6 @@ TODO LIST
*****************
General:
- BUG: Row-highlighting for both Page and Folder trees are not stable enough.
- BUG: when editing records from Web>View the palette will not show properly in the topframe!
- BUG: Email forms wizard: "Checked: " for checkboxes does not work!
- BUG: CSM disappears too fast in MSIE4 (does not register the width of layer?)
- BUG: is_executable on windows does not exist/work/make sense.
- BUG: "if (count($fieldArr)) -> t3lib_page.php, ln. 270"
- BUG: File>List , list-frame: Click menu does NOT work in Mozilla! cannot find the bug!
- BUG: (Not) using "rawurlencode" in links (breaks when spaces/special chars are in either dirname or filename):
- cImage... (see Rene Fritz report)
- RTE images break
......@@ -18,11 +11,10 @@ General:
- thumbnails display break.
- attachment of records break.
- CHECK: header links in content elements?
- CHECK: What is the number of supported page levels? 20 or 100?
- CHECK: possible XSS problem with alt_mod_frameset.php taking parameters for scripts to display in frames.
- Convert selecting of filemounts from GROUP selector to a selectorbox.
- Option: Turn of "onBlur" in backend (Message-ID: <001801c2a28c$bb020c70$963afea9@bla8kdvxpl8glk>)
- Option: Frameset modules without the "border" frame and therefore adjustable freely.
- Feature: "admin" can click a button which wipes out all record-lockings. (Message-Id: <200301281752.23246.mundaun@gmx.ch>)
- Feature: Controlling access to function menu modules as well (thus we could have a user-module inside ?Template? which could edit the constants field)
- Feature: Web >plugins -> to be a main module where people can place cmodules for their extension.
......@@ -158,7 +150,6 @@ TCEforms:
- DONE?: Support for label for main palette: (Rene: Message-Id: <200210011646.10346.r.fritz@colorcube.de>)
Charset:
- checking (for XML) if there is "character data" in a string?
TCEforms/RTE API:
......@@ -188,22 +179,12 @@ Wizards:
Interface:
- Icons (see Bugs/Additions folder)
- Showing in "frameset-modules" which submodule you are currently inside. And ability to change submodule in the rightmost frame anyways - maybe as a panel in top of the pages (must be cached so all submodules must not be loaded each time...)? (Message-ID: <3ADE655892793D499E2FBF623045AF4B54E9A4@dbwdfx2f.wdf.sap-ag.de>)
- Make a "NavFrame adjustment bar" which allows people to click on an images under the navigation bar of "Frameset modules" and set the width of it (permanently). (Message-ID: <3ADE655892793D499E2FBF623045AF4B54EA0D@dbwdfx2f.wdf.sap-ag.de>)
- Review the template/stylesheet interface. Document it -> Skinning API. (also how to substitute icons from gfx/ etc.)
- Ability to create another Main/sub module structure in the backend (Daniel H: Message-ID: <BAB9A920.E95D%daniel@typo3.com>)
- Change order, level, title, icon.
- Use User TSconfig... and allow someone to create an extension to visually create a TSconfig output
- See DHs mail: Message-ID: <mailman.1060763871.6396.typo3-metadev@lists.netfielders.de>
- Links could be going directly to the function menus inside modules as well!
Login:
- admin-only flag in TYPO3_CONF_VARS so only administrators can log in/be authenticated.
- New login form. (see mailbox)
Context Sensitive Menus (CSM):
- Click menu does not work in task-center/weblist
- Click menu does not work in Opera.
Context Sensitive Help (CSH):
- Add multimedia?
......
......@@ -547,19 +547,21 @@ class t3lib_BEfunc {
function getExcludeFields() {
global $TCA;
// All TCA keys:
$tc_keys = array_keys($TCA);
$theExcludeArray = Array();
while (list(,$table)=each($tc_keys)) {
$tc_keys = array_keys($TCA);
foreach($tc_keys as $table) {
// Load table
t3lib_div::loadTCA($table);
// All field names configured:
$f_keys = array_keys($TCA[$table]['columns']);
while (list(,$field)=each($f_keys)) {
if ($TCA[$table]['columns'][$field]['exclude']) {
// Get Human Readable names of fields and table:
$Fname=$GLOBALS['LANG']->sl($TCA[$table]['ctrl']['title']).': '.$GLOBALS['LANG']->sl($TCA[$table]['columns'][$field]['label']);
// add entry:
$theExcludeArray[] = Array($Fname , $table.':'.$field);
if (is_array($TCA[$table]['columns'])) {
$f_keys = array_keys($TCA[$table]['columns']);
foreach($f_keys as $field) {
if ($TCA[$table]['columns'][$field]['exclude']) {
// Get Human Readable names of fields and table:
$Fname=$GLOBALS['LANG']->sl($TCA[$table]['ctrl']['title']).': '.$GLOBALS['LANG']->sl($TCA[$table]['columns'][$field]['label']);
// add entry:
$theExcludeArray[] = Array($Fname , $table.':'.$field);
}
}
}
}
......
......@@ -136,6 +136,7 @@ class t3lib_beUserAuth extends t3lib_userAuthGroup {
'edit_docModuleUpload' => '1',
'disableCMlayers' => 0,
'navFrameWidth' => '', // Default is 245 pixels
'navFrameResizable' => 0,
);
......@@ -189,8 +190,13 @@ class t3lib_beUserAuth extends t3lib_userAuthGroup {
} else { // ...and if that's the case, call these functions
$this->fetchGroupData(); // The groups are fetched and ready for permission checking in this initialization. Tables.php must be read before this because stuff like the modules has impact in this
if ($this->checkLockToIP()) {
$this->backendSetUC(); // Setting the UC array. It's needed with fetchGroupData first, due to default/overriding of values.
$this->emailAtLogin(); // email at login - if option set.
if (!$GLOBALS['TYPO3_CONF_VARS']['BE']['adminOnly'] || $this->isAdmin()) {
$this->backendSetUC(); // Setting the UC array. It's needed with fetchGroupData first, due to default/overriding of values.
$this->emailAtLogin(); // email at login - if option set.
} else {
t3lib_BEfunc::typo3PrintError ('Login-error','TYPO3 is in maintenance mode at the moment. Only administrators are allowed access.',0);
exit;
}
} else {
t3lib_BEfunc::typo3PrintError ('Login-error','IP locking prevented you from being authorized. Can\'t proceed, sorry.',0);
exit;
......
......@@ -701,8 +701,8 @@ class t3lib_clipboard {
// Message:
$conf='confirm('.$GLOBALS['LANG']->JScharCode(sprintf(
$msg,
$selRecTitle,
$thisRecTitle
t3lib_div::fixed_lgd($selRecTitle,30),
t3lib_div::fixed_lgd($thisRecTitle,30)
)).')';
return $conf;
}
......
......@@ -1510,9 +1510,10 @@ class t3lib_div {
*
* @param array Array with attribute key/value pairs, eg. "bgcolor"=>"red", "border"=>0
* @param boolean If set the resulting attribute list will have a) all attributes in lowercase (and duplicates weeded out, first entry taking precedence) and b) all values htmlspecialchar()'ed. It is recommended to use this switch!
* @param boolean If true, don't check if values are blank. Default is to omit attributes with blank values.
* @return string Imploded attributes, eg. 'bgcolor="red" border="0"'
*/
function implodeParams($arr,$xhtmlSafe=0) {
function implodeParams($arr,$xhtmlSafe=FALSE,$dontOmitBlankAttribs=FALSE) {
if (is_array($arr)) {
if ($xhtmlSafe) {
$newArr=array();
......@@ -1523,7 +1524,7 @@ class t3lib_div {
}
$list = array();
foreach($arr as $p => $v) {
if (strcmp($v,'')) {$list[]=$p.'="'.$v.'"';}
if (strcmp($v,'') || $dontOmitBlankAttribs) {$list[]=$p.'="'.$v.'"';}
}
return implode(' ',$list);
}
......
......@@ -845,7 +845,9 @@ top.goToModule("file_list");
*/
function writeLog($action,$error,$details_nr,$details,$data) {
$type=2; // Type value for tce_file.php
$GLOBALS['BE_USER']->writelog($type,$action,$error,$details_nr,$details,$data);
if (is_object($GLOBALS['BE_USER'])) {
$GLOBALS['BE_USER']->writelog($type,$action,$error,$details_nr,$details,$data);
}
}
}
......
......@@ -220,7 +220,7 @@ class t3lib_extobjbase {
*/
function handleExternalFunctionValue() {
// Must clean first to make sure the correct key is set...
$this->pObj->MOD_SETTINGS = t3lib_BEfunc::getModuleData($this->pObj->MOD_MENU, t3lib_div::GPvar('SET'), $this->pObj->MCONF['name']);
$this->pObj->MOD_SETTINGS = t3lib_BEfunc::getModuleData($this->pObj->MOD_MENU, t3lib_div::GPvar('SET',1), $this->pObj->MCONF['name']);
if ($this->function_key) {
$this->extClassConf = $this->pObj->getExternalItemConfig($this->pObj->MCONF['name'],$this->function_key,$this->pObj->MOD_SETTINGS[$this->function_key]);
if (is_array($this->extClassConf) && $this->extClassConf['path']) {
......@@ -253,7 +253,7 @@ class t3lib_extobjbase {
$this->extObj->init($this->pObj,$this->extClassConf);
// Re-write:
$this->pObj->MOD_SETTINGS = t3lib_BEfunc::getModuleData($this->pObj->MOD_MENU, t3lib_div::GPvar('SET'), $this->pObj->MCONF['name']);
$this->pObj->MOD_SETTINGS = t3lib_BEfunc::getModuleData($this->pObj->MOD_MENU, t3lib_div::GPvar('SET',1), $this->pObj->MCONF['name']);
}
}
......
......@@ -98,7 +98,7 @@ class t3lib_fullsearch {
function form() {
$out='
Search Word:<BR>
<input type="text" name="SET[sword]" value="'.$GLOBALS["SOBE"]->MOD_SETTINGS["sword"].'"'.$GLOBALS["TBE_TEMPLATE"]->formWidth(20).'><input type="submit" name="submit" value="Search All Records">
<input type="text" name="SET[sword]" value="'.htmlspecialchars($GLOBALS["SOBE"]->MOD_SETTINGS["sword"]).'"'.$GLOBALS["TBE_TEMPLATE"]->formWidth(20).'><input type="submit" name="submit" value="Search All Records">
';
return $out;
......@@ -532,7 +532,7 @@ class t3lib_fullsearch {
*/
function search() {
global $TCA;
$SET = t3lib_div::GPvar("SET");
$SET = t3lib_div::GPvar("SET",1);
$swords = $SET["sword"];
// $GLOBALS["HTTP_POST_VARS"]["SET"]["sword"]
$limit=200;
......
......@@ -1401,16 +1401,20 @@ Number of files at a time:
".$this->check_mail("get_form"),1);
} else {
list($prg) = explode(" ",ini_get("sendmail_path"));
if (!@is_executable($prg)) {
$this->message($ext, "Sendmail program not found or not executable?","
<i>sendmail_path=".ini_get("sendmail_path")."</i>
This may be critical to TYPO3's use of the mail() function. Please be sure that the mail() function in your php-installation works!
".$this->check_mail("get_form"),1);
if (TYPO3_OS=='WIN') {
$this->message($ext, "Sendmail program not searched for on Windows","",1);
} else {
$this->message($ext, "Sendmail OK","
<i>sendmail_path=".ini_get("sendmail_path")."</i>
You may check the mail() function by entering your emailaddress here:
".$this->check_mail("get_form"),-1);
if (!@is_executable($prg)) {
$this->message($ext, "Sendmail program not found or not executable?","
<i>sendmail_path=".ini_get("sendmail_path")."</i>
This may be critical to TYPO3's use of the mail() function. Please be sure that the mail() function in your php-installation works!
".$this->check_mail("get_form"),1);
} else {
$this->message($ext, "Sendmail OK","
<i>sendmail_path=".ini_get("sendmail_path")."</i>
You may check the mail() function by entering your emailaddress here:
".$this->check_mail("get_form"),-1);
}
}
}
......
......@@ -464,58 +464,63 @@ class t3lib_parsehtml {
$tagName = strtolower($tagParts[0]);
if (isset($tags[$tagName])) {
if (is_array($tags[$tagName])) { // If there is processing to do for the tag:
// Override attributes
if (strcmp($tags[$tagName]['overrideAttribs'],'')) {
$tagParts[1]=$tags[$tagName]['overrideAttribs'];
}
// Allowed tags
if (strcmp($tags[$tagName]['allowedAttribs'],'')) {
if (!strcmp($tags[$tagName]['allowedAttribs'],'0')) { // No attribs allowed
$tagParts[1]='';
} elseif (trim($tagParts[1])) {
$tagAttrib = $this->get_tag_attributes($tagParts[1]);
$tagParts[1]='';
$newTagAttrib = array();
$tList = t3lib_div::trimExplode(',',strtolower($tags[$tagName]['allowedAttribs']),1);
while(list(,$allowTag)=each($tList)) {
if (isset($tagAttrib[0][$allowTag])) $newTagAttrib[$allowTag]=$tagAttrib[0][$allowTag];
if (!$endTag) { // If NOT an endtag, do attribute processing (added dec. 2003)
// Override attributes
if (strcmp($tags[$tagName]['overrideAttribs'],'')) {
$tagParts[1]=$tags[$tagName]['overrideAttribs'];
}
// Allowed tags
if (strcmp($tags[$tagName]['allowedAttribs'],'')) {
if (!strcmp($tags[$tagName]['allowedAttribs'],'0')) { // No attribs allowed
$tagParts[1]='';
} elseif (trim($tagParts[1])) {
$tagAttrib = $this->get_tag_attributes($tagParts[1]);
$tagParts[1]='';
$newTagAttrib = array();
$tList = t3lib_div::trimExplode(',',strtolower($tags[$tagName]['allowedAttribs']),1);
while(list(,$allowTag)=each($tList)) {
if (isset($tagAttrib[0][$allowTag])) $newTagAttrib[$allowTag]=$tagAttrib[0][$allowTag];
}
$tagParts[1]=$this->compileTagAttribs($newTagAttrib,$tagAttrib[1]);
}
$tagParts[1]=$this->compileTagAttribs($newTagAttrib,$tagAttrib[1]);
}
}
// Fixed attrib values
if (is_array($tags[$tagName]['fixAttrib'])) {
$tagAttrib = $this->get_tag_attributes($tagParts[1]);
$tagParts[1]='';
reset($tags[$tagName]['fixAttrib']);
while(list($attr,$params)=each($tags[$tagName]['fixAttrib'])) {
if (strcmp($params['default'],'') && !isset($tagAttrib[0][$attr])) $tagAttrib[0][$attr]=$params['default'];
if ($params['always'] || isset($tagAttrib[0][$attr])) {
if ($params['trim']) {$tagAttrib[0][$attr]=trim($tagAttrib[0][$attr]);}
if ($params['intval']) {$tagAttrib[0][$attr]=intval($tagAttrib[0][$attr]);}
if ($params['lower']) {$tagAttrib[0][$attr]=strtolower($tagAttrib[0][$attr]);}
if ($params['upper']) {$tagAttrib[0][$attr]=strtoupper($tagAttrib[0][$attr]);}
if ($params['range']) {
if (isset($params['range'][1])) {
$tagAttrib[0][$attr]=t3lib_div::intInRange($tagAttrib[0][$attr],intval($params['range'][0]),intval($params['range'][1]));
} else {
$tagAttrib[0][$attr]=t3lib_div::intInRange($tagAttrib[0][$attr],intval($params['range'][0]));
// Fixed attrib values
if (is_array($tags[$tagName]['fixAttrib'])) {
$tagAttrib = $this->get_tag_attributes($tagParts[1]);
$tagParts[1]='';
reset($tags[$tagName]['fixAttrib']);
while(list($attr,$params)=each($tags[$tagName]['fixAttrib'])) {
if (strcmp($params['default'],'') && !isset($tagAttrib[0][$attr])) $tagAttrib[0][$attr]=$params['default'];
if ($params['always'] || isset($tagAttrib[0][$attr])) {
if ($params['trim']) {$tagAttrib[0][$attr]=trim($tagAttrib[0][$attr]);}
if ($params['intval']) {$tagAttrib[0][$attr]=intval($tagAttrib[0][$attr]);}
if ($params['lower']) {$tagAttrib[0][$attr]=strtolower($tagAttrib[0][$attr]);}
if ($params['upper']) {$tagAttrib[0][$attr]=strtoupper($tagAttrib[0][$attr]);}
if ($params['range']) {
if (isset($params['range'][1])) {
$tagAttrib[0][$attr]=t3lib_div::intInRange($tagAttrib[0][$attr],intval($params['range'][0]),intval($params['range'][1]));
} else {
$tagAttrib[0][$attr]=t3lib_div::intInRange($tagAttrib[0][$attr],intval($params['range'][0]));
}
}
if (is_array($params['list'])) {
if (!in_array($this->caseShift($tagAttrib[0][$attr],$params['casesensitiveComp']),$this->caseShift($params['list'],$params['casesensitiveComp'],$tagName))) $tagAttrib[0][$attr]=$params['list'][0];
}
if (($params['removeIfFalse'] && $params['removeIfFalse']!='blank' && !$tagAttrib[0][$attr]) || ($params['removeIfFalse']=='blank' && !strcmp($tagAttrib[0][$attr],''))) {
unset($tagAttrib[0][$attr]);
}
if (strcmp($params['removeIfEquals'],'') && !strcmp($this->caseShift($tagAttrib[0][$attr],$params['casesensitiveComp']),$this->caseShift($params['removeIfEquals'],$params['casesensitiveComp']))) {
unset($tagAttrib[0][$attr]);
}
}
if (is_array($params['list'])) {
if (!in_array($this->caseShift($tagAttrib[0][$attr],$params['casesensitiveComp']),$this->caseShift($params['list'],$params['casesensitiveComp'],$tagName))) $tagAttrib[0][$attr]=$params['list'][0];
}
if (($params['removeIfFalse'] && $params['removeIfFalse']!='blank' && !$tagAttrib[0][$attr]) || ($params['removeIfFalse']=='blank' && !strcmp($tagAttrib[0][$attr],''))) {
unset($tagAttrib[0][$attr]);
}
if (strcmp($params['removeIfEquals'],'') && !strcmp($this->caseShift($tagAttrib[0][$attr],$params['casesensitiveComp']),$this->caseShift($params['removeIfEquals'],$params['casesensitiveComp']))) {
unset($tagAttrib[0][$attr]);
}
}
$tagParts[1]=$this->compileTagAttribs($tagAttrib[0],$tagAttrib[1]);
}
$tagParts[1]=$this->compileTagAttribs($tagAttrib[0],$tagAttrib[1]);
} else { // If endTag, remove any possible attributes:
$tagParts[1]='';
}
// Protecting the tag by converting < and > to &lt; and &gt; ??
......@@ -1153,8 +1158,8 @@ class t3lib_parsehtml {
$value = $newTag;
}
}
return $value;
return $value;
}
/**
......
......@@ -271,7 +271,7 @@ class t3lib_parsehtml_proc extends t3lib_parsehtml {
if (is_array($entry_HTMLparser)) {
$value = $this->HTMLcleaner($value,$entry_HTMLparser[0],$entry_HTMLparser[1],$entry_HTMLparser[2],$entry_HTMLparser[3]);
}
// Traverse modes:
foreach($modes as $cmd) {
// ->DB
......@@ -405,7 +405,6 @@ class t3lib_parsehtml_proc extends t3lib_parsehtml {
$absRef = $siteUrl.$this->rteImageStorageDir().'RTEmagicC_'.$filename.'.'.$pI['extension'];
$attribArray['src']=$absRef;
if (!isset($attribArray['alt'])) $attribArray['alt']='';
$params = t3lib_div::implodeParams($attribArray,1);
$imgSplit[$k]='<img '.$params.' />';
}
......@@ -445,7 +444,6 @@ class t3lib_parsehtml_proc extends t3lib_parsehtml {
$attribArray['width']=$imgI[0];
$attribArray['height']=$imgI[1];
if (!$attribArray['border']) $attribArray['border']=0;
if (!isset($attribArray['alt'])) $attribArray['alt']='';
$params = t3lib_div::implodeParams($attribArray,1);
$imgSplit[$k]='<img '.$params.' />';
}
......@@ -460,8 +458,8 @@ class t3lib_parsehtml_proc extends t3lib_parsehtml {
$absRef = trim($attribArray['src']);
if (t3lib_div::isFirstPartOfStr($absRef,$siteUrl)) {
$attribArray['src'] = $this->relBackPath.substr($absRef,strlen($siteUrl));
if (!isset($attribArray['alt'])) $attribArray['alt']='image'; // Must have value, otherwise the attribute is stripped by implodeParams()
$imgSplit[$k]='<img '.t3lib_div::implodeParams($attribArray,1).' />';
if (!isset($attribArray['alt'])) $attribArray['alt']=''; // Must have alt-attribute for XHTML compliance.
$imgSplit[$k]='<img '.t3lib_div::implodeParams($attribArray,1,1).' />';
}
}
}
......@@ -1054,7 +1052,7 @@ class t3lib_parsehtml_proc extends t3lib_parsehtml {
}
/**
* This resolves the $value into parts based on <div></div>-sections and <P>-sections and <BR>-tags. These are returned as lines separated by chr(10).
* This resolves the $value into parts based on <div></div>-sections and <p>-sections and <br />-tags. These are returned as lines separated by chr(10).
* This point is to resolve the HTML-code returned from RTE into ordinary lines so it's 'human-readable'
* The function ->setDivTags does the opposite.
* This function processes content to go into the database.
......@@ -1110,7 +1108,7 @@ class t3lib_parsehtml_proc extends t3lib_parsehtml {
// Get first tag, attributes etc:
$fTag = $this->getFirstTag($divSplit[$k]);
$tagName=$this->getFirstTagName($divSplit[$k]);
$tagName=strtolower($this->getFirstTagName($divSplit[$k]));
$attribs=$this->get_tag_attributes($fTag);
// Keep attributes (lowercase)
......
......@@ -129,14 +129,15 @@ class t3lib_recordList {
<td nowrap="nowrap"'.$tdParams.'>';
if (!$h) {
$out.='<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/ol/halfline.gif','width="18" height="8"').' alt="" />';
# $out.='<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/ol/halfline.gif','width="18" height="8"').' alt="" />';
$out.='<img src="clear.gif" width="1" height="8" alt="" />';
} else {
for ($a=0;$a<$h;$a++) {
if (!$a) {
$out.= $altLine ? $altLine : '<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/ol/line.gif','width="18" height="16"').' alt="" />';
# $out.= $altLine ? $altLine : '<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/ol/line.gif','width="18" height="16"').' alt="" />';
if ($icon) $out.= $icon;
} else {
$out.= $altLine ? $altLine :'<br /><img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/ol/line.gif','width="18" height="16"').' alt="" />';
# $out.= $altLine ? $altLine :'<br /><img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/ol/line.gif','width="18" height="16"').' alt="" />';
}
}
}
......
......@@ -270,7 +270,7 @@ class t3lib_SCbase {
$this->MOD_MENU['function'] = t3lib_BEfunc::unsetMenuItems($this->modTSconfig['properties'],$this->MOD_MENU['function'],'menu.function');
// CLEANSE 'function' SETTINGS
$this->MOD_SETTINGS = t3lib_BEfunc::getModuleData($this->MOD_MENU, t3lib_div::GPvar('SET'), $this->MCONF['name'], $this->modMenu_type, $this->modMenu_dontValidateList, $this->modMenu_setDefaultList);
$this->MOD_SETTINGS = t3lib_BEfunc::getModuleData($this->MOD_MENU, t3lib_div::GPvar('SET',1), $this->MCONF['name'], $this->modMenu_type, $this->modMenu_dontValidateList, $this->modMenu_setDefaultList);
}
/**
......@@ -338,7 +338,7 @@ class t3lib_SCbase {
$this->extObj = t3lib_div::makeInstance($this->extClassConf['name']);
$this->extObj->init($this,$this->extClassConf);
// Re-write:
$this->MOD_SETTINGS = t3lib_BEfunc::getModuleData($this->MOD_MENU, t3lib_div::GPvar('SET'), $this->MCONF['name']);
$this->MOD_SETTINGS = t3lib_BEfunc::getModuleData($this->MOD_MENU, t3lib_div::GPvar('SET',1), $this->MCONF['name']);
}
}
......
......@@ -763,7 +763,13 @@ class t3lib_stdGraphic {
*/
function addToMap($cords,$conf) {
$JS = $conf['noBlur'] ? '' : ' onfocus="blurLink(this);"';
$this->map.='<area shape="poly" coords="'.implode($cords,',').'" href="'.htmlspecialchars($conf['url']).'" target="'.$conf['target'].'"'.$JS.' />';
$this->map.='<area'.
' shape="poly"'.
' coords="'.implode($cords,',').'"'.
' href="'.htmlspecialchars($conf['url']).'"'.
($conf['target'] ? ' target="'.$conf['target'].'"' : '').
$JS.
' alt="" />';
}
/**
......
......@@ -530,7 +530,7 @@ class t3lib_TCEforms {
$palFields = trim($palFields);
if ($TCA[$table]['columns'][$theField]) {
$parts = t3lib_div::trimExplode(';',$types_fieldConfig[$theField]['origString']);
$sField= $this->getSingleField($table,$theField,$row,$parts[1],0,$parts[3],$parts[2]);
$sField= $this->getSingleField($table,$theField,$row,$parts[1],0,$parts[3],0); // Don't sent palette pointer - there are no options anyways for a field-list.
$out.= $sField;
} elseif($theField=='--div--') {
$out.=$this->getDivider();
......@@ -847,7 +847,7 @@ class t3lib_TCEforms {
// Setting default "click-checkbox" values for eval types "date" and "datetime":
$nextMidNight = mktime(0,0,0)+1*3600*24;
$checkSetValue = in_array('date',$evalList) ? $nextMidNight : '';
$checkSetValue = in_array('datetime',$evalList) ? $nextMidNight+12*3600 : $checkSetValue;
$checkSetValue = in_array('datetime',$evalList) ? time() : $checkSetValue;
$cOnClick = 'typo3FormFieldGet('.$paramsList.',1,\''.$checkSetValue.'\');'.implode('',$PA['fieldChangeFunc']);
$item.='<input type="checkbox" name="'.$PA['itemFormElName'].'_cb" onclick="'.htmlspecialchars($cOnClick).'" />';
......
......@@ -201,7 +201,7 @@ class t3lib_timeTrack {
end($this->currentHashPointer);
$k = current($this->currentHashPointer);
$this->tsStackLog[$k]['message'][] = $this->wrapIcon[$num].$this->wrapError[$num][0].$content.$this->wrapError[$num][1];
$this->tsStackLog[$k]['message'][] = $this->wrapIcon[$num].$this->wrapError[$num][0].htmlspecialchars($content).$this->wrapError[$num][1];
}
/**
......@@ -393,7 +393,7 @@ class t3lib_timeTrack {
if ($flag_messages && is_array($data['message'])) {
reset($data['message']);
while(list(,$v)=each($data['message'])) {
$msgArr[]=nl2br(htmlspecialchars($v));
$msgArr[]=nl2br($v);
}
}
if ($flag_queries && is_array($data['selectQuery'])) {
......
......@@ -935,12 +935,12 @@ class t3lib_tsparser_ext extends t3lib_TStemplate {
$iFile = t3lib_div::getFileAbsFileName($imgConf);
if ($iFile) {
$f = substr($iFile,strlen(PATH_site));
$tFile="../".$GLOBALS["BACK_PATH"].$f;
$tFile=$GLOBALS["BACK_PATH"]."../".$f;
}
} else {
$f = "uploads/tf/".$this->extractFromResources($this->setup["resources"],$imgConf);
$iFile=PATH_site.$f;
$tFile="../".$GLOBALS["BACK_PATH"].$f;
$tFile=$GLOBALS["BACK_PATH"]."../".$f;
}
$imageInfo=@getImagesize($iFile);
return '<img src="'.$tFile.'" '.$imageInfo[3].'>';
......
......@@ -1218,7 +1218,7 @@ class t3lib_TStemplate {
// Setting ID/alias:
if (!$script) {$script = $GLOBALS['TSFE']->config['mainScript'];}
if ($page['alias']) {
$LD['url']=$script.'?'.$page['alias'];
$LD['url']=$script.'?id='.$page['alias'];
} else {
$LD['url']=$script.'?id='.$page['uid'];
}
......
......@@ -903,7 +903,7 @@ This is a dump of the failures:
';
while($testRows=mysql_fetch_assoc($res)) {
$theData = unserialize($testRows['log_data']);
$email_body.=date($GLOBALS['TYPO3_CONF_VARS']['SYS']['ddmmyy'].' H:i',$testRows['tstamp']).': '.sprintf($testRows['details'],''.$theData[0],''.$theData[1],''.$theData[2]);
$email_body.=date($GLOBALS['TYPO3_CONF_VARS']['SYS']['ddmmyy'].' H:i',$testRows['tstamp']).': '.@sprintf($testRows['details'],''.$theData[0],''.$theData[1],''.$theData[2]);
$email_body.=chr(10);
}
mail( $email,
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment