Welcome Guest, Not a member yet? Register   Sign In
MPTtree, Hieararchical trees in a database table
#41

[eluser]m4rw3r[/eluser]
It should not cause any problems (by problems I mean damage to the tree), but they write lock the table when they are moving and such, so that may be a small performance loss (if you have a lot of people making writes at the same time).
#42

[eluser]yami[/eluser]
Had an idea for an additional function: update_node_byid():

Code:
function update_node_byid($id,$data){
        if(!$this->get_node_byid($id))return false;
        $data = $this->sanitize_data($data);
        // Make the update
        $this->db->where($this->id_col,$id);
        $this->db->update($this->tree_table,$data);
        return true;
    }

Just for the case when different people working on the same table, to avoid conflicts when lft-values change between loading and saving.
#43

[eluser]m4rw3r[/eluser]
The IgnitedRecord behaviour already uses the ID when saving a node, and I will add that functionality to MPTtree when I start to redesign/refactor/whatever it.

Thanks for the feedback!
#44

[eluser]adrian westlake[/eluser]
I get this error when trying to run the wiki controller:

Code:
A PHP Error was encountered

Severity: Notice

Message: Undefined variable: new_node

Filename: controllers/wiki.php

Line Number: 43
#45

[eluser]m4rw3r[/eluser]
It was a long time ago I looked at that source, but it seems like you should add this before the line that gives you the error:
Code:
$new_node =& $this->pages->new_ORM();
#46

[eluser]louis w[/eluser]
Any idea about performance stats using this?
Wondering the amount of memory/processing it will save.

It worries me a bit that all the left and right properties have to get recalculated whenever you add or remove a node from the tree.

Do you have a timeframe for v2? I am developing a project i think this might really benefit from and don't want to implement v1 if the newer version is coming out soon.
#47

[eluser]m4rw3r[/eluser]
I haven't really started on v2, but I have made up a few plans for new features.

IgnitedRecord v 0.2.0 is taking up most of my time.
#48

[eluser]a.somervell[/eluser]
Errr... where'd CIBase go?

I've got MPTtree showing me a tree of my categories in my table but no add/remove buttons or functionality and nowhere to reference what i'm seeing against a demo Sad
#49

[eluser]m4rw3r[/eluser]
I'm not at my computer for the moment, but when I come home I'll upload the latest (the one which was hosted on CIBase) here.

I don't know when I will resume development of MPTtree, IgnitedRecord + School + Work are occupying much of my time.
#50

[eluser]BDT[/eluser]
M4rw3r!

I don't know this is real 'bug' but i found one error in mpttree model.

In line 1341 on function move_node($lft,$nlft) you have this:
Quote:$ret = array($nlft,$ret[$this->left_col]);
but in line 1338 ...select($this->right_col);
where you select only right_col not left_col.

The CI db query is (in my system):
Quote:SELECT `NavigTreeRight` FROM (`NavigTree`) WHERE `NavigTreeLeft` = '2'
This
Quote:$ret = array($nlft,$ret[$this->left_col])
drop error message while NavigTreeLeft (left_col) index not found.

When I modified
Quote:$ret = array($nlft,$ret[$this->left_col])
to
Quote:
$ret = array($nlft,$ret[$this->right_col])
Ci not drop error message.


I like it on a granny independently because of this your class! Very-very useful!! (my work facilitates it)

Sorry my bad english, I'm from Hungary and i not write english in perfect but i can read and understand it. Smile

Best regards
BDT - www.bdteam.hu




Theme © iAndrew 2016 - Forum software by © MyBB