Hi everyone,

Current situation
=============

Right now we have 2 mechanisms in place:
- hidden docs. These is done deep at the storage level and hidden docs  
don't appear in any HQL queries. This is
- $blacklistedSpaces in xwikivars.vm which is used (or not!, that's  
the problem) in some wiki pages (AllDocs, Search, Dashboard, etc)

Need
====

We have a need for blacklisted/hidden docs and spaces. This is  
different than rights. This is just for presentation purpose.

The need I see is:
- guest and simple users should not see blacklisted/hidden docs and  
spaces
- advanced users and admin should see them

(Note: I'm not sure we have a need to blacklist docs/spaces for  
everyone including admins as it's currently done for hidden docs)

Issues
=====

1) In lots of spaces we don't exclude blacklisted spaces since at  
every location you have to add specific code to do the exclude.
2) Hidden docs  are a problem since there are cases we want to see  
them all (like when creating a new wiki and you need to copy a  
template wiki containing hidden docs)

Proposal
=======

* I believe we need to remove the filtering at the storage level. That  
level should return all docs matching the queries
* We modify the default XWiki.searchDocument APIs so that they filter  
on hidden docs and blacklisted spaces (using the velocity  
$blacklistedSpaces variable). This would be changed later on when we  
implement the new model and introduce the notion of space. When this  
happen we'll be able to have hidden metadata to the Space object.
* We add a new XWiki.searchDocument API that doesn't do any filtering

WDYT?

Thanks
-Vincent

_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to