× This forum has been locked. Please submit new Feature Requests on GitHub: github.com/Jensen-Technologies/component-creator-issues/issues

Nested Sets

9 anos 10 meses atrás #666 por Yonder Media
Nested Sets foi criado por Yonder Media
Having used Component Creator quite extensively, one of the things I find myself having to make over and over again, are nested set models.  For instance, Nested Sets are used in Joomla's native Category component, allowing n-tiered nesting of categories associated with other categories.

In the Table class, this requires changing it from JTable to JTableNested, and including code in the prepareTable function of the model class (an example is shown below:)
protected function prepareTable($table)
{
       jimport('joomla.filter.output');
       $db = JFactory::getDbo();

       // Specify where to insert the new node.
       $parent = @$table->parent_id;
       if (!empty($parent))
       {
           $table->setLocation($parent, 'last-child');
       }
       else
       {
           $rootId = $table->getRootId();
           if ($rootId === false)
           {

               $db = JFactory::getDbo();
               $sql = 'INSERT INTO #__yomo_ussd_article_category'
                   . ' SET parent_id = 0'
                   . ', lft = 0'
                   . ', rgt = 1'
                   . ', level = 0'
                   . ', title = '.$db->quote('root')
                   . ', alias = '.$db->quote('root')
                   . ', access = 1'
                   . ', path = '.$db->quote('')
               ;
               $db->setQuery($sql);
               $db->query();

               $parent = $db->insertid();
               $table->setLocation($parent, 'last-child');
           }
           else
           {
               $table->setLocation($rootId, 'last-child');
           }

       }

       # Check that the node data is valid.
       $table->check();

       # Store the node in the database table.
       $table->store();
}

Additionally, then, this requires changes to the View classes and markup output, to correctly show entries as being nested within each other.  For this, I've borrowed code from Joomla's Category Component to achieve this.

Whilst I can get this all to work, it would be a really cool feature to have this built-in to Component Creator!

Por favor Acessar ou Registrar para participar da conversa.

9 anos 9 meses atrás #667 por RIP Graphics
Respondido por RIP Graphics no tópico Nested Sets
+1

Por favor Acessar ou Registrar para participar da conversa.

9 anos 9 meses atrás #700 por Pete
Respondido por Pete no tópico Nested Sets
+1

Por favor Acessar ou Registrar para participar da conversa.

9 anos 8 meses atrás #771 por Søren Beck Jensen
Respondido por Søren Beck Jensen no tópico Nested Sets
Please note that this relates only to nested sets of custom tables. You can always use the Joomla Category field and create as many nested categories you would like.

Thanks to Brian Teeman for pointing this out.

Søren Beck Jensen
Founder, Component-Creator.com

Por favor Acessar ou Registrar para participar da conversa.

9 anos 5 meses atrás #876 por Ilya Protasov
Respondido por Ilya Protasov no tópico Nested Sets
+1

Por favor Acessar ou Registrar para participar da conversa.

9 anos 5 meses atrás #883 por Jesper
Respondido por Jesper no tópico Nested Sets
+1 as i sit and could use this right now for something i have to build

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.055 segundos
Powered by Fórum Kunena

We use cookies so that you can place orders and we can provide a better service. You can control the use of cookies at the individual browser level. If you reject cookies, you may still use our website, but your ability to use some features or areas of our website may be limited.