Hi.
I'm trying to build a new admin interface for my cms, in a single screen.
I was thinking to have a tree-view on the left side of that screen,
something like
+Site-Name
+ UserGroups and Users (node-type section)
+ Administrators (node-type usergroup)
- administrator (node-type user)
+ Editors (node-type usergroup)
- Joe
+ Regular users
- guest
+ Site main pages (node-type section)
- frontpage (node-type article)
- contactpage
Then on the right side of the screen, i'd have pieces of HTML+JS
("weblets") provide a "form service" to display/edit properties of
different node-types.
Since i have to store access-rights for the different nodes, i have
created a sql table that holds my tree, like:
CREATE TABLE master_admin_tree (
/* tn == tree node */
tn_id integer,
tn_language_id integer,
tn_parent_id integer,
tn_path longtext,
tn_level_order integer,
tn_label varchar(250),
tn_description longtext,
tn_type_id integer,
tn_value_int integer,
tn_value_vc varchar(250),
tn_value_text longtext,
/* stores many values in JSON format */
tn_flags_int integer,
tn_flags_text longtext,
tn_owner_user_id integer,
tn_owner_group_id integer,
resource_rights_id integer,
PRIMARY KEY (tn_id, tn_language_id)
);
The problem is that i'd rather not store all user-groups and users in
this table.
Users and groups are stored in their own tables, just 2 flat list tables
without tree-structure.
I wonder if it would get too complicated to load the users and groups
from their own tables, format them to be tree-nodes in
master_admin_tree, put them in the tree and work with them.
I can't fully envision the problems that might arise with a dynamic
loading approach like this, but i do know it would be a bitch to put a
tree-node in master_admin_tree that loads up the desired groups-list
(that's doable), but then to load the users in those groups as nodes
under each group.
Should i just go for redundant data in master_admin_tree and on creation
of a user also put a tree record in master_admin_tree?
Or is there a way to load,store and manage tree-nodes that represent
records in other flat-list tables?
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php