Recent posts

Advanced mail subscription

The CMS TYPO3 extension repository already offers a few plugins that can...
09 January 2012

Convenient In/Out animation using expressions

We recently had an opportunity to make a set of instructional animations...
16 December 2012

Nginx boost extension

Introduction  The Evo_nginx_boost plugin allows us to cache pages...
14 December 2011

Tags

New extension evo_chained_selector

Evo_chained_selector is BE extension allows you to create relations between records by using "chained selection"

Origins of this associate with implementation we've worked on lately. Website contains expanded legal acts base with the structure as

Legal acts -> article  -> paragraphs & chapters -> section

The editor while creating new record tt_news is able to connect proper paragraph to the new news. We thought over an elastic solution that would allow the editor quickly and effectively create new relations and we decided to develop this new module.

Evo_chained_selector is a mechanism based on ajax which analyzes structure of table indicated in:

zaznacz
  1.  
  2.  $TCA[$table]['field']['config']['params']['table']
  3.  

and checks if selected in first input record possesses children, and if so, adds another input.

Records range in multiple choice field is dynamically limited while entering key word. This way each level can operate on unlimited number of records without causing long loading of record editing form

Integration in own BE modules

Relation is built with TCA type user, where in userFunc key one has to define call to  tx_evochainedselector_client->render function. Table to which we create relation has to have tree structure therefore parentField key should refer to parent_uid filed (in this case table pages: pid)

zaznacz
  1.  
  2. #tca.php
  3. "myfield" => Array (
  4. "exclude" => 1,
  5. "label" => "Select record",
  6. "config" => Array (
  7. "type" => "user",
  8. "userFunc" => "tx_evochainedselector_client->render",
  9. 'params' => array(
  10. 'table' => 'pages',
  11. 'parentField' => 'pid',
  12. 'title' => '###title###',
  13. // title of records in autocomplete form
  14. 'searchFields' => 'title',
  15. // which fields to search
  16. 'limit' => 20,
  17. 'order' => 'title',
  18. 'additionalWhere' => ''
  19. )
  20. )
  21. ),
  22.  

In the database is saved UID of the last selected element in the chain.

Screenshots

evo_chain_selector

Zrzut ekranu 2009-10-29 (godz. 21.10.03)

 

VIDEO

###YOUTUBEVIDEO###

To do

This is th initial version of this extension. Many things can be improved and added.

Waiting for your suggestions and questions.

Files to download:

Gravatar: ktostaki ktostaki, 11.11.2009 08:41
Jak ponad rok temu pytałem czy można takie coś robić w BE to dostałem odpowiedź, że nie bo BE jest cachowany ;). Jeśli utrzymacie takie tępo to za rok zaczniecie robić ciekawe rzeczy po stronie BE powodzenia.
Gravatar: Typo3 Freelancer Typo3 Freelancer, 16.11.2009 11:28
Thank you ... this has me very helped.
Gravatar: Social Media Agentur Social Media Agentur, 17.02.2011 12:24
Thanks, this config have I searched.
Add comment

* - required field