[TYPO3-formidable] generating a searchform with single view

Domi Garms djgarms at gmail.com
Fri Aug 13 08:06:18 CEST 2010


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