Closed (fixed)
Project:
MySite
Version:
master
Component:
User interface
Priority:
Normal
Category:
Feature request
Assigned:
Reporter:
Created:
20 May 2007 at 12:44 UTC
Updated:
13 Jan 2008 at 20:33 UTC
Jump to comment: Most recent file
Could it be possible to add multiple pages ala netvibes tabs ?
| Comment | File | Size | Author |
|---|---|---|---|
| #7 | mysite_pages.module_0.txt | 5.61 KB | agentrickard |
| #6 | mysite_pages.info.txt | 141 bytes | agentrickard |
| #5 | mysite_pages.module.txt | 5.9 KB | agentrickard |
Comments
Comment #1
agentrickardNot right at the moment. This is part of a next-gen of feature requests. Here are the issues, which I am documenting here in case anyone wants to tackle them....
- The {mysite} table, which stores MySite user data and the {mysite_data} table, which stores the actual information for each item in your collection, both assume a one-to-one relationship between the User's UID (user id) and the data being stored.
- The UID column in both tables must be numeric, and must be a User's ID number.
- Permissions to edit or modify MySite content are attached to that single UID.
I mention the above because I think mutiple pages are similar to the request to have group MySite pages (tied to OG groups).
Adding an ability to have multiple tabbed-pages also reminds me of the concept of being able to create fuller HTML MySpace-style pages within MySite.
This is also related to a request to have access control settings for MySite content. I think all three issues are great features for the next release.
In order to make the current system work with multi-tabbed collections, we'd need a few things.
1) A concept of "page" in the {mysite_data} table.
2) A {mysite_page} table to store page information. Simple setup:
- mpid (INT), an internal identifer
- oid (INT), the MySite owner id (see #3, below).
- page_id (INT), the id # of this page, used for linking to the {mysite_data} table. Using this instead of mpid in the {mysite_data} table prevents us from needing an entry in the {mysite_page} table in order to save content.
- title (VARCHAR-80), the title of the page/tab.
- access (?), access rules for this page, if any?
3) Additions to {mysite} table
- owner (INT), the external USER ID or GROUP ID of the owner (this would replace the current UID)
- owner_type (string), the accunt type of the owner (likely 'user' as default or 'group')
- oid (INT, autoincrement), a new MySite owner ID value to use in MySite table instead of UID.
4) Additions to the {mysite_data} table.
- oid (INT), the ID of the owner (this would replace the current UID)
- page_id (INT), the MySite page id (from {mysite_page}, default would be 0.
5) A menu handler that is "page" sensitive.
6) Changes to the UI that let users define new pages and assign content items to those pages. This item is not a trivial task. When someone ads content, which page does it go to?
7) Probably a change to the variable settings that control how many elements can be added to a MySite page.
This is a ton of work, but probably in a good direction.
All that said, I/we really need to get 5.x.2 released before tackling any of this.
Comment #2
agentrickardThis is the foundation of the 5.x.3 series, in active development.
See http://drupal.org/node/170687 for more details.
Comment #3
agentrickardI just started working on this on my local machine. Here's the first pass at the revised database schema
Comment #4
agentrickardThe real issue here is that I'm going to have to rewrite the entire menu hook.
Arg.
Comment #5
agentrickardAttached is the first pass at creating the new menu structure. It doesn't work right yet.
Comment #6
agentrickardInfo file for testing the above.
Comment #7
agentrickardI think this handles the menu the way it should.
Comment #8
agentrickardI committed the first batch of changes to HEAD today. This puts most of the new menu structure in place, but breaks the module.
So be warned, HEAD is unstable.
Comment #9
summit commentedHi Ken,
Subcribing to this also.
greetings,
Martijn
Comment #10
agentrickardJust committed the new schema to HEAD. Now to exploit it in code.
Note that the schema I committed is slightly different from that listed above.
Comment #11
agentrickardWorking version of this feature has been committed to HEAD. Testers appreciated.
Comment #12
mityok commentedI've made a clean 5.5 Drupal installation, installed the HEAD revision of MySite module. No other contributed modules installed.
I've opened MySite page for admin user and opened the "Settings" link (/mysite/1/edit/0). Module started an endless redirect.
After that I'm getting following error messages in my /admin page :
warning: key() [function.key]: Passed variable is not an array or object in
.......drupal.loc\www\sites\all\modules\mysite\mysite.module on line 923.
Looks like bug to me.
Comment #13
agentrickardVery likely, I never said the code was stable.
Comment #14
MatBoy commentedOn a 5.5 install I see the following error in the php-logs when I visit the MySite part when logged in as a user:
PHP Fatal error: Call to undefined function db_queryd()in /var/www/html/drupal/modules/mysite/mysite.module on line 366
Comment #15
agentrickardYes. That's a debug notice that requires the Devel module. Not surprising.
Comment #16
agentrickardNew commits today. Code should be more stable now.
Comment #17
MatBoy commentedI knew about the fact that it could be a bug :) But do I need more HEAD packages ? I thought the system was letting me know this after I installed the HEAD version... seemed to be quite OK all.
OK, great this is good news about the latest release.
Where to get these packages the best ? I now download the HEAD version here:
http://ftp.drupal.org/files/projects/
Or should I get a Dev version somewhere (form your site maybe ?)
Keep up the good work :)
Comment #18
agentrickardI just rolled a 5.x.3-beta1 release to make testing easier.
Open new bugs as new issues, please.
http://drupal.org/node/204753
Comment #19
agentrickardComment #20
(not verified) commentedAutomatically closed -- issue fixed for two weeks with no activity.