On Nov 22, 2010, at 1:03 PM, Anca Luca wrote:
Hi devs,
** short story: **
for XE-722 we'd need to implement the main and spaces dashboards separately
** long story: **
currently we're using the Main.Dashboard page to include in various
contexts to create a dashboard (global or space level). Namely, it is
used in Main.WebHome (to create the global dashboard) and in all the
*.WebHome pages to create the space dashboards.
With the implementation of the dashboard macro, now there is a simpler
(and better) way to create dashboards, but with a restriction, they
should not be generated by a velocity script (because something which is
generated programatically cannot be wysiwyg edited).
Why is there velocity script around the dashboard macro?
Because of this,
the Main.Dashboard cannot be used anymore as is (since it needs velocity
to differentiate between space or global dashboard).
Note that this is a wysiwyg limitation that we need to fix over time anyway.
** options: **
1) have the dashboard macro directly in the Main.WebHome and not in an
included document.
I don't like this too much. We need a Main.Dashboard page IMO since users will want to
customize their home page I think and still have a link to the Dashboard page in the quick
links menu for example.
Let's say I'm 0 on this.
The bad part is that when a translation is edited,
it's only that translation which sees the changes, but this is an issue
in general
I don't get this part. This is true whether you have an {{include}} or a {{dashboard}}
macro.
I need more info about my questions above to answer the points below.
Thanks
-Vincent
2) for the space dashboards, there are 3
possibilities:
a) leave it all in the Main.Dashboard document to be included in all
space dashboards ('backwards compatible')
b) leave it all in a document to be included but rename it to
Main.SpaceDashboard (to be semantic)
c) remove any document for this purpose, and write the dashboard macro
call directly in the space webhome, since now it should be a lot easier
to do that and also to customize it (7-8 lines of code but no wysiwyg,
yet), potentially create a template provider for this.
Note that a) and b) require a way for the recent activity and tagcloud
macros to realize that it's the current space they need to use as the
scope, without actually passing the space because that would mean
velocity scripting, again. This is not necessarily a bad thing, though.
Besides overcoming this, c) has also the advantage that the dashboard
will be in the document itself, and not included (I don't have yet a
straightforward solution for wysiwyg editing included dashboards). The
drawback of c) is that it will be impossible to customize all the space
dashboard at once, you'd need to develop a bit to provide that capability.
I'd +1 for 1) and I'd choose 2c).
WDYT?
Thanks a lot,
Anca