[TYPO3-formidable] generating a searchform with single view

Luc Muller l.mul-nospam-ler at ameos.com
Fri Aug 13 08:51:51 CEST 2010


Hi Domi.

Ni try, you were close of it I think.

try this :

	<!-- ###SEARCHLIST### begin-->
			<!-- ###ROWS### begin-->
				<!-- ###ROW### begin-->
					{firstname}			
				<!-- ###ROW### end-->
			<!-- ###ROWS### end-->
	<!-- ###SEARCHLIST### end-->

but not sure that {aupair_list.debug()} will work because lister is 
substitued by the ###SEARCHLIST### and not aupair_list

Some tips.

- when you use templates subparts sur as : ###SEARCHLIST### you'd better 
use your renderlet form as subpart label eg ###aupair_list### this way 
when you look at your template you exactly know which lister represent 
the subpart.
- when using rows like ###ROW### use ###ROW1### this is going to be 
easier if you use multiple rows rendering ###ROW1###,###ROW2###

Hope this will work, as I'm responding without a try :p

Luc =:0)


Le 13/08/2010 08:06, Domi Garms a écrit :
> Good mornig everybody. Im trying now for hours why the LISTER in a
> renderer:TEMPLATE doesnt shows up anymore. I followed the instructions
> of
> http://formidable.typo3.ug/typo3-form-news/news/0012-how-to-use-an-advanced-pager-for-the-listers/back/2.html
> and the following snippets. The searchform is shown correctly, but my
> lister is empty. If I open it with renderer:STANDARD it is working
> correctly...
>
> XML:
> (...)
> 		<renderer:TEMPLATE>
> 			<template>
> 				<path>EXT:dmf_aupairs/ressources/html/aupair_search.html</path>
> 				<subpart>###FORM###</subpart>
> 				<errortag>errors</errortag>
> 			</template>
> 		</renderer:TEMPLATE>
> (...)
>
> 	<elements>
> 		<renderlet:SEARCHFORM name="search_aupair">
> 			<datasource use="aupair_users" />
> 		
> 			<template
> 				path="EXT:dmf_aupairs/ressources/html/aupair_search.html"
> 				subpart="###SEARCHFORM###" />
> 			
> 				
> 			<childs>
> 				<renderlet:LISTBOX name="se_gender" label="We search for:">
> 					<search onfields="fe_users.gender" />
> 					<data>
> 						<defaultvalue first="true" />
> 						<items>
> 							<item caption="ALL" value="" />
> 							<item caption="male" value="0" />
> 							<item caption="female" value="1" />
> 						</items>
> 					</data>
> 				</renderlet:LISTBOX>
> (...)
> 		<renderlet:LISTER name="aupair_list">
> 			<searchform use="search_aupair" />
> 			
> 			<template
> 				path="EXT:dmf_aupairs/ressources/html/aupair_search.html"
> 				subpart="###SEARCHLIST###"
> 				alternateRows="###ROW###" />
> 			<pager>
> 				<template
> 					path="EXT:dmf_aupairs/ressources/html/aupair_search.html"
> 					subpart="###LISTPAGER###" />
> 				<rows perpage="2" />
> 				<window>2</window>
> 			</pager>
> 		
> 			<ifEmpty>
>              	<message>There are no search results</message>
>              </ifEmpty>
> 			<columns>
> 				<column name="firstname" type="renderlet:LINK" listHeader="newtest">
> (...)
> HTML:
>
> <!-- ###FORM### begin-->
> .
> 	<!-- ###SEARCHFORM### begin-->
> 	<div class="searchform_elements">
> 		
> 		<div>{search_aupair.childs.se_country.label}</div>
> 		<span>{search_aupair.childs.se_country.input}</div>
> 		
> 		<div>{search_aupair.childs.se_gender.label}</div>
> 		<div>{search_aupair.childs.se_gender.input}</div>
> 		<div>{search_aupair.childs.se_submit}</div>
> 		
> 	</div>
> 	<!-- ###SEARCHFORM### end-->
> 	
>
> 	<!-- ###SEARCHLIST### begin-->
> 	
> 		{aupair_list.debug()}
> 			<!-- ###ROWS### begin-->
>
> 				<!-- ###ROW### begin-->
> 					
>
> 				<!-- ###ROW### end-->
>
> 			<!-- ###ROWS### end-->
> 			
> 	<!-- ###SEARCHLIST### end-->
>
>
> Thanks for any help!
>
> Greetings,
>
> Domi
>
>
> 2010/8/12 Domi Garms<djgarms at gmail.com>:
>> Sure Im using still the STANDARD renderer, coz not everything is set
>> up...I didnt went that far with formidable, so the template rendering
>> is my next step.
>>
>> Thanks a lot for your help!
>>
>>
>> Greetings
>>
>> domi
>>
>> 2010/8/12 Luc Muller<l.mul-nospam-ler at ameos.com>:
>>> Hmmmm... a think you should have a column type renderlet:IMAGE (
>>> http://formidable.typo3.ug/reference/elements/renderletimage.html ) and
>>> using a template to render your lister.
>>>
>>> This way you can use your standard renderlet:LINK in your template like this
>>> :
>>> {yourlink.tag.begin}{yourimage}{yourlink.tag.end}
>>> another way to achieve the same thing (but you have to be sure that THERE IS
>>> a link for each items
>>> <a href="{yourlink.url}">{yourimage}</a>
>>>
>>> you'll have several clues using in your template yourrenderlet.debug()
>>>
>>> Using those kind of dotted expresion, you'll be able to build things such
>>> (not sure for the syntax)
>>>
>>> {yourlink.tag.begin}<img src="{yourimage.path}" title="{yourlink.label}"
>>> alt="{yourlink.label}" />{yourlink.tag.end}
>>>
>>> Luc
>>>
>>>
>>> Le 12/08/2010 11:38, Domi Garms a écrit :
>>>>
>>>> Hi Luc,
>>>>
>>>> thanks for your code snippet, now its working! But how can I do this
>>>> with a linked Image? Do I have to generate a renderlet:LINK, how is it
>>>> possible that the picture gets rendered? I tried it with a wrap on a
>>>> renderlet:IMAGE but it failed...
>>>>
>>>> Regards,
>>>> Domi
>>>>
>>>>
>>>>
>>>>
>>>> 2010/8/12 Luc Muller<l.mul-nospam-ler at ameos.com>:
>>>>>
>>>>> Well, I think it's kinda the way of doing.
>>>>>
>>>>> some things look strange to me... you're using a type="renderlet:BOX",
>>>>> you
>>>>> should user type="renderlet:LINK", not sure that url is going to work on
>>>>> renderlet:BOX.
>>>>>
>>>>> this is how i make my links in lister.
>>>>>
>>>>> <column name="readmore" type="renderlet:LINK">
>>>>>         <label>LLL:readmore.label</label>
>>>>>         <url>
>>>>>                 <userobj>
>>>>>                         <php><![CDATA[
>>>>>
>>>>>                         $aData = $this->oDataHandler->getListData();
>>>>>                         $typolink['parameter'] =
>>>>> $this->_oParent->conf['piconf.']['registerPageId'];
>>>>>                         $typolink['additionalParams'] =
>>>>> '&tx_myextension_pi2[param]= '.$aData['uid'].'';
>>>>>                         $typolink['useCacheHash'] = '1';
>>>>>                         $typolink['returnLast'] = 'url';
>>>>>                         return
>>>>> $this->_oParent->cObj->typolink('',$typolink);
>>>>>
>>>>>                         ]]></php>
>>>>>                 </userobj>
>>>>>         </url>
>>>>> </column>
>>>>>
>>>>> using this in your template you can use {readmore.debug()} to see all the
>>>>> possibilities to display the link.
>>>>>
>>>>> Notes :
>>>>> - the label is, in this case constant it is issued from a locallang file
>>>>> it
>>>>> should be something like "read more..." but you can use either a userobj
>>>>> to
>>>>> fetch data from the current row
>>>>> - i prefer always using typolink function to build my links
>>>>> - typolink parameter is issued from a typoscript conf
>>>>>
>>>>> Luc
>>>>>
>>>>> Le 12/08/2010 10:27, Domi Garms a écrit :
>>>>>>
>>>>>> Hi Luc,
>>>>>>
>>>>>> Thanks for your reply. Im searching inside of my extension-tables, so
>>>>>> I tried for setting a link with params. The base-url is everytime in
>>>>>> front, is there a cleaner (and better) way for writing the link?
>>>>>>
>>>>>> http://www.testseite.de/test link
>>>>>>
>>>>>> Im sure that renderlet:BOX is wrong...but dont know which element does
>>>>>> the
>>>>>> trick
>>>>>>
>>>>>>                                 <column name="firstname"
>>>>>> type="renderlet:BOX" listHeader="Name">
>>>>>>                                         <url>
>>>>>>                                                 <userobj>
>>>>>>                                                         <php><![CDATA[
>>>>>>                                                         $aRowData =
>>>>>> $this->oDataHandler->_getListData();
>>>>>>                                                         return
>>>>>> t3lib_div::locationHeaderUrl(
>>>>>>
>>>>>>   $this->_oParent->pi_linkTP(
>>>>>>
>>>>>>               $aRowData['firstname'],
>>>>>>
>>>>>>
>>>>>>
>>>>>>   array('tx_dmfaupairs[modus]'=>'1','tx_dmfaupairs[uid]'=>$aRowData['uid'])
>>>>>>
>>>>>>       )
>>>>>>                                                         );
>>>>>>                                                                 ]]></php>
>>>>>>                                                 </userobj>
>>>>>>                                         </html>
>>>>>>                                 </column>
>>>>>>
>>>>>> Greetings
>>>>>>
>>>>>> Domi
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2010/8/12 Luc Muller<l.mul-nospam-ler at ameos.com>:
>>>>>>>
>>>>>>> I'm not sure to get the point.
>>>>>>>
>>>>>>> Let's take this exemple.
>>>>>>>
>>>>>>> You've made a formidable searchform and lister, to find some tt_news
>>>>>>>
>>>>>>> The lister, should build a link as shown there :
>>>>>>> http://formidable.typo3.ug/pastebin/snippet/61.html
>>>>>>> but pointing to the detail Page of your tt_news records.
>>>>>>> (maybe using typolink() instead of pi_getPageLink())
>>>>>>>
>>>>>>> label of your column renderlet:LINK can be the title of the tt_news.
>>>>>>>
>>>>>>> if you're searchform is searching inside records of a table that you
>>>>>>> handle
>>>>>>> fully with formidable. it works the same, but your "detail page" should
>>>>>>> contain a formidable plugin which displays the single item. this can be
>>>>>>> done
>>>>>>> using datahandler:DB and passing the UID of the item as third params in
>>>>>>> the
>>>>>>> 'init()' method of your plugin.
>>>>>>>
>>>>>>> Hope This Helps.
>>>>>>>
>>>>>>> Luc
>>>>>>>
>>>>>>>
>>>>>>> Le 12/08/2010 07:10, Domi Garms a écrit :
>>>>>>>>
>>>>>>>> Good morning,
>>>>>>>>
>>>>>>>> Im not sure how doing  a searchform with a lister and link to the item
>>>>>>>> for a single view. I looked into this two snippets:
>>>>>>>> http://formidable.typo3.ug/pastebin/snippet/65.html
>>>>>>>> http://formidable.typo3.ug/pastebin/snippet/61.html
>>>>>>>>
>>>>>>>> My first thought is, for building a link to a seperate site with a
>>>>>>>> param of the uid inside. Is there a cleaner way or a built in
>>>>>>>> function?
>>>>>>>> My second thought is to create typo3 pages and link to that one.
>>>>>>>>
>>>>>>>> What is the best way to deal with this, any hints are more than
>>>>>>>> welcome!!!
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>>
>>>>>>>> Domi
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> TYPO3-project-formidable mailing list
>>>>>>> TYPO3-project-formidable at lists.typo3.org
>>>>>>>
>>>>>>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-project-formidable
>>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> TYPO3-project-formidable mailing list
>>>>> TYPO3-project-formidable at lists.typo3.org
>>>>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-project-formidable
>>>>>
>>>
>>> _______________________________________________
>>> TYPO3-project-formidable mailing list
>>> TYPO3-project-formidable at lists.typo3.org
>>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-project-formidable
>>>
>> _______________________________________________
>> TYPO3-project-formidable mailing list
>> TYPO3-project-formidable at lists.typo3.org
>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-project-formidable
>>



More information about the TYPO3-project-formidable mailing list