New Database Layout: * - indexed Users - UserID* (autoincrement) - UserName* (varchar, unique) - UserPassword (md5 or other hash) - UserHash (varchar, random generated string used to validate cookie login) - UserEmail (varchar, optional, used only for password retrieval at this point) - UserLevel (integer specifying overall access to site, used to do things like ban and give admin priv) - UserData (text, serialized array containing non-default user prefs) - UserCreated (datetime) - UserModified (datetime) - UserLastSeen* (datetime) Folders - FolderID* (autoincrement) - FolderParent* (integer, 0 default, relates to: FolderID) - FolderUser* (integer, relates to: Users.UserID) - FolderName* (varchar) - FolderInfo (text) - FolderOrder (integer, specifies order when using custom sort) - FolderPublish* (bool or tinyint) - FolderSymbolic (bool or tinyint) - FolderTarget (integer, relates to FolderID, ignored unless FolderSymbolic == true) - FolderData (text, contains serialized array used to store non-global folder settings) - FolderVisits* (integer, incrementing counter) - FolderCreated* (datetime) - FolderModified* (datetime) Items - ItemID* (autoincrement) - ItemFolder* (int, -> Folders.FolderID) - ItemUser* (int, -> Users.UserID) - ItemName* (varchar) - ItemURL (varchar or text, haven't decided) - ItemMeta* (int, -> MetaLinks.MetaID) - ItemInfo (text) - ItemOrder (integer, specifies position when using custom sort) - ItemCreated* (datetime) - ItemModified* (datetime) MetaLinks - MetaID* (autoincrement) - MetaURL* (varchar or text) - MetaName* (varchar, taken from actual target URL