Advertisement
funny_falcon

Untitled

Nov 28th, 2016
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 0.65 KB | None | 0 0
  1. function userrow_to_table(row)
  2.   return {
  3.      user_id = user_id,
  4.      parent_id = user[2],
  5.      tb_left = user[4],
  6.      tb_right = user[5],
  7.      children = {},
  8.   }
  9. end
  10.  
  11. function get_user_with_tree(user_id)
  12.   local userrow = users.index.primary:get(user_id)
  13.   local rootuser = userrow_to_table(userrow)
  14.   local stack = {rootuser}
  15.   while #stack > 0 do
  16.     local user = table.remove(stack)
  17.     local items = users.index.parent_id:select(user.user_id)
  18.     for i, childrow in ipairs(items) do
  19.       local child = userrow_to_table(childrow)
  20.       user.children[i] = child
  21.       table.insert(stack, child)
  22.     end
  23.   end
  24.   return rootuser
  25. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement