소스 검색

HUE-1884 [core] Limit number of history documents

Romain Rigaux 11 년 전
부모
커밋
1b9b32d
2개의 변경된 파일12개의 추가작업 그리고 2개의 파일을 삭제
  1. 6 0
      desktop/core/src/desktop/templates/home.mako
  2. 6 2
      desktop/core/src/desktop/views.py

+ 6 - 0
desktop/core/src/desktop/templates/home.mako

@@ -133,6 +133,9 @@ ${ commonheader(_('Welcome Home'), "home", user) | n,unicode }
           % else:
             <li><a href="javascript:void(0)" class="edit-tags" style="line-height:24px"><i class="fa fa-plus-circle"></i> ${_('There are currently no projects. Click here to add one now!')}</a></li>
           % endif
+          <li class="nav-header tag-header">
+            ${_('Shared with me')} <div class="edit-tags" style="display: inline;margin-left: 6px" ><i class="fa fa-tags"></i></div>
+          </li>
         </ul>
       </div>
 
@@ -253,14 +256,17 @@ $(document).ready(function () {
     JSON_USERS_GROUPS = data;
     dropdown = [];
     map = {};
+
     $.each(JSON_USERS_GROUPS.users, function (i, user) {
       map[user.username] = user;
       dropdown.push(user.username);
     });
+
     $.each(JSON_USERS_GROUPS.groups, function (i, group) {
       map[group.name] = group;
       dropdown.push(group.name);
     });
+
     $("#documentShareAdd").typeahead({
       source: function (query, process) {
         process(dropdown);

+ 6 - 2
desktop/core/src/desktop/views.py

@@ -15,8 +15,9 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-import logging
+import itertools
 import json
+import logging
 import os
 import sys
 import tempfile
@@ -50,7 +51,10 @@ LOG = logging.getLogger(__name__)
 
 
 def home(request):
-  docs = Document.objects.get_docs(request.user).order_by('-last_modified')[:1000]
+  docs = itertools.chain(
+      Document.objects.get_docs(request.user).order_by('-last_modified').exclude(tags__tag__in=['history'])[:500],
+      Document.objects.get_docs(request.user).order_by('-last_modified').filter(tags__tag__in=['history'])[:100]
+  )
   tags = DocumentTag.objects.get_tags(user=request.user)
 
   apps = appmanager.get_apps_dict(request.user)