[TYPO3-english] One more condition problem

Reinhard Führicht rf at typoheads.at
Mon Sep 7 15:29:39 CEST 2009


Which version tt_news are you using?

I had a look at the code of my local installation, which is version 3.0.0
There it says on about line 340 of the plugin class:

$singlePid = $this->pi_getFFvalue($this->cObj->data['pi_flexform'], 
'PIDitemDisplay', 's_misc');
$this->config['singlePid'] = $singlePid ? $singlePid : 
intval($this->cObj->stdWrap($this->conf['singlePid'], 
$this->conf['singlePid.']));
if (! $this->config['singlePid']) {
   $this->errors[] = 'No singlePid defined';
}

This seems to perform stdWrap on the singlePid if it isn't set in 
Flexform. Have you set the singlePid in Flexform or do you use an older 
version which doesn't perform stdWrap?

Reinhard

Pero Matic schrieb:
> JoH,
> 
> Thank you for kind explanation. I have tried all solutions you mentioned:
> 
> isInList.data = register:newsCategoryUid
> 
> isInList.dataWrap = register:newsCategoryUid
> 
> isInList.cObject = TEXT
> isInList.cObject.value = {register:newsCategoryUid}
> isInList.cObject.insertData = 1
> 
> isInList.data = GPvar:tx_ttnews|cat
> 
> but none of them works :-(
> 
> It would be easier if I could debug things somehow (like to see what value 
> is in isInList.data) but i suppose i can't do that. Do you have some advice 
> how to check that register? Thx!
> 
> 
> "JoH asenau" <info at cybercraft.de> wrote in message 
> news:mailman.1.1252326811.607.typo3-english at lists.netfielders.de...
>>>> I still think the  isInList.dataWrap = {register:newsCategoryUid}
>>>> should work ok, but try this
>>>> isInList.data = register:newsCategoryUid
>>>> isInList.insertData = 1
>> insertData is superflouus here. It's only necessary if you are _not_ using
>> dataWrap or data but a simple value i.e.
>>
>> blah.value = This {register:newsCategoryUid} is something to be inserted
>> blah.insertData = 1
>>
>> basically it does the same dataWrap would do, but you can combine more
>> different elements before actually inserting the data.
>>
>> blah = COA
>> blah {
>>    10 = TEXT
>>    10.value = This {register:newsCategoryUid} is something to be inserted
>>    20 = TEXT
>>    20.value = This {register:whatever} is something else to be inserted
>>    stdWrap.insertData = 1
>> }
>>
>>>> Or if that doesn't work then try:
>>>> isInList.stdWrap.data = register:newsCategoryUid
>>>> isInList.stdWrap.insertData = 1
>> see above
>>
>>> I tried all sorts of combinations you mention but no luck. However
>>> i'll play with it and hope something will work. Thank you both for
>>> help!
>> Regardless of the type you are using, the following syntax is definitely
>> correct:
>>
>> isInList.data = register:newsCategoryUid
>>
>> isInList.dataWrap = register:newsCategoryUid
>>
>> isInList.cObject = TEXT
>> isInList.cObject.value = {register:newsCategoryUid}
>> isInList.cObject.insertData = 1
>>
>> If it is still not working, this simply means that you have to check, if
>> your register contains data at all - and _no_ it doesn't matter if you can
>> use it in another section of your template or not ;-)  - before you can 
>> use
>> it with your condition.
>>
>> Since the register will be filled by a plugin of tt_news, it seems to be
>> quite unlikely that it could be filled already while rendering the 
>> template
>> of the page itself. Usually content will be rendered _after_ the page
>> element making the register unavailable for your condition.
>>
>> So I guess you have to try another source to get the information about the
>> selected news category.
>>
>> isInList.data = GPvar:tx_ttnews|cat
>>
>> should IMHO do the job.
>>
>> HTH
>>
>> Joey
>>
>> -- 
>> Wenn man keine Ahnung hat: Einfach mal Fresse halten!
>> (If you have no clues: simply shut your gob sometimes!)
>> Dieter Nuhr, German comedian
>> Xing: http://contact.cybercraft.de
>> Twitter: http://twitter.com/bunnyfield
>> TYPO3 cookbook (2nd edition): http://www.typo3experts.com
>> TYPO3 workshops: http://workshops.eqony.com
>>
>>
> 
> 


More information about the TYPO3-english mailing list