Include public files in the shared namespace.
authorpastith <devnull@localhost>
Mon, 30 Mar 2009 09:47:47 +0000 (09:47 +0000)
committerpastith <devnull@localhost>
Mon, 30 Mar 2009 09:47:47 +0000 (09:47 +0000)
gss/src/gr/ebs/gss/server/ejb/GSSDAOBean.java

index 84def2e..3a7cee3 100644 (file)
@@ -391,10 +391,10 @@ public class GSSDAOBean implements GSSDAO {
        public List<FileHeader> getSharedFilesNotInSharedFolders(Long userId) {
                List<FileHeader> files = manager.createQuery("select distinct f from FileHeader f " +
                                        "LEFT JOIN f.permissions p where f.owner.id=:userId and f.deleted=false " +
-                                       "and (p.group.id != null or p.user.id != f.owner.id) and f.folder.id " +
-                                       "not in(select distinct fo.id from Folder fo LEFT JOIN fo.permissions po " +
-                                       "where fo.owner.id=:userId and fo.deleted=false and (po.group.id != null " +
-                                       "or po.user.id != fo.owner.id))").
+                                       "and (f.readForAll=true or p.group.id != null or p.user.id != f.owner.id)" +
+                                       " and f.folder.id not in (select distinct fo.id from Folder fo LEFT JOIN " +
+                                       "fo.permissions po where fo.owner.id=:userId and fo.deleted=false and " +
+                                       "(po.group.id != null or po.user.id != fo.owner.id))").
                                        setParameter("userId", userId).getResultList();
                return files;
        }