Results 1 to 2 of 2

Thread: View > 25 accounts per page in Admin Console

  1. #1
    Laird is offline Intermediate Member
    Join Date
    Jul 2007
    Rep Power

    Default View > 25 accounts per page in Admin Console

    Is there a way to view > 25 accounts per page in the ZCS Admin Console?
    Last edited by Laird; 07-12-2010 at 09:41 AM.

  2. #2
    mmorse's Avatar
    mmorse is offline Moderator
    Join Date
    May 2006
    Rep Power


    The short n' simple answer is that the admin console doesn't have a lot of the AJAX optimizations that the web-client has.
    Even the items in the side tree only displaying a certain amount is by design, it has to be limited to something, otherwise the UI becomes unwieldy and the performance becomes poor.

    I checked into splitting up/just using Bug 7411 - allow display of greater than 100 (or arbitrary number) items per page (title, description & component conflict) for user-side material & for admin console stuff using Bug 15539 - admin console : number of items displayed per page but in essence we're always looking to increase the max we can display wherever we can, so it was marked a dupe again.

    (Personally I'm a fan of the 'user-beware' approach to ignoring performance norms; having an attribute that allows you to increase it to your own liking, however that's prone to hi-values and forgetting that's the cause of your slowness, so per-session dropdowns do a little to alleviate some of that as they're a temporary nature. But it's still a source of negative feelings towards a product when it becomes slow to navigate - though I'm sure you could counter argue and say all these requests in forums & bugzilla to increase it are more anguish then giving a dropdown I'm not dismissing it, but we consider lots of variables about what goes into the product, and when, then most realize. It's very safe to say that the admin console team is always looking to better it.)

    Not your issue but for others because we're on the topic: For mail items web-client side, having a limit helps save memory/IO/CPU/bandwidth cycles. But of course there are certainly situations where you might not care or 100 doesn't begin to affect performance - thus there is an zimbraPrefMailItemsPerPage attribute per cos/account which can actually go higher (though it doesn't add it to the user selectable drop down - it just applies it).
    ---Back to the admin console---

    It won't persist across admin sessions logout/reload, but for instance in the main search bar if you enter:
    $set:domainsrch 1
    Will only show 1 domain in the left tree view.

    } else if (argv[0] && argv[0].toLowerCase() == "domainsrch") { 
            ZaDomain.MAXSEARCHRESULTS = argv[1]; 
            alert("Setting domain search limit to:" + argv[1]); 
        } else if (argv[0] && argv[0].toLowerCase() == "pagesize") { 
            ZaSettings.RESULTSPERPAGE = argv[1]; 
            alert("Setting page size to:" + argv[1]); 
    So I'd look into pagesize & RESULTSPERPAGE - understand you have to update it in more than just BRANCH/ZimbraWebClient/WebRoot/js/zimbraAdmin/config/settings/ZaSettings (ZaSettings.RESULTSPERPAGE) on your machine that get's put into /opt/zimbra/conf/mailboxd/webroot/zimbraAdmin/js/ZimbraAdmin_all.js > ZimbraAdmin_all_.js.zgz - also probably need to clear jetty's work folder after you stop zimbra to have it go into effect on next restart.

    Where it's called:
    grep -R "RESULTSPERPAGE" *
    accounts/controller/ZaAccountListController.js:    var callback = new AjxCallback(this, this.searchCallback, {limit:this.RESULTSPERPAGE,CONS:null,show:doPush});
    accounts/controller/ZaAccountListController.js:            offset:this.RESULTSPERPAGE*(this._currentPageNum-1),
    accounts/controller/ZaAccountListController.js:            limit:this.RESULTSPERPAGE,
    accounts/model/ZaAccount.js:ZaAccount.RESULTSPERPAGE = ZaSettings.RESULTSPERPAGE;
    common/ZaClientCmdHandler.js:        ZaSettings.RESULTSPERPAGE = argv[1];
    common/ZaListViewController.js:    this.RESULTSPERPAGE = ZaSettings.RESULTSPERPAGE; 
    common/ZaListViewController.js:    var s_result_start_n = (this._currentPageNum - 1) * this.RESULTSPERPAGE + 1;
    common/ZaListViewController.js:    var s_result_end_n = this._currentPageNum  * this.RESULTSPERPAGE;
    common/ZaListViewController.js:            var limit = params.limit ? params.limit : this.RESULTSPERPAGE; 
    config/settings/ZaSettings.js:ZaSettings.RESULTSPERPAGE = 25;
    domains/controller/ZaDomainListController.js:    this.RESULTSPERPAGE = ZaDomain.RESULTSPERPAGE; 
    domains/controller/ZaDomainListController.js:    var callback = new AjxCallback(this, this.searchCallback, {limit:ZaDomain.RESULTSPERPAGE,CONS:ZaDomain,show:doPush});
    domains/controller/ZaDomainListController.js:            offset:this.RESULTSPERPAGE*(this._currentPageNum-1),
    domains/controller/ZaDomainListController.js:            limit:this.RESULTSPERPAGE,
    domains/model/ZaDomain.js:ZaDomain.RESULTSPERPAGE = ZaSettings.RESULTSPERPAGE; 
    mta/controller/ZaMTAController.js:                                        pageNum = ev.getDetail("offset")/ZaMTA.RESULTSPERPAGE;
    mta/model/ZaMTA.js:ZaMTA.RESULTSPERPAGE = 25;
    mta/model/ZaMTA.js:    limit = (limit != null) ? limit: ZaMTA.RESULTSPERPAGE;
    mta/view/ZaMTAXFormView.js:    instance.getMailQStatus(qName, instance[qName][ZaMTA.A_selection_cache],currentPage*ZaMTA.RESULTSPERPAGE);
    mta/view/ZaMTAXFormView.js:    instance.getMailQStatus(qName, instance[qName][ZaMTA.A_selection_cache],currentPage*ZaMTA.RESULTSPERPAGE);
    resource/model/ZaResource.js:ZaResource.RESULTSPERPAGE = ZaSettings.RESULTSPERPAGE;
    search/controller/ZaSearchBuilderController.js:            //offset:this.RESULTSPERPAGE*(this._currentPageNum-1),
    search/controller/ZaSearchListController.js:    var callback = new AjxCallback(this, this.searchCallback, {limit:this.RESULTSPERPAGE,CONS:null,show:doPush});
    search/controller/ZaSearchListController.js:            offset:this.RESULTSPERPAGE*(this._currentPageNum-1),
    search/controller/ZaSearchListController.js:            limit:this.RESULTSPERPAGE,
    search/controller/ZaSearchListController.js:    callback = new AjxCallback(this, this.searchCallback, {limit:this.RESULTSPERPAGE,show:true});
    search/controller/ZaSearchListController.js:            callback = new AjxCallback(this, this.searchCallback, {limit:this.RESULTSPERPAGE,show:true});
    search/controller/ZaSearchListController.js:    var callback = new AjxCallback(controller, controller.searchCallback, {limit:controller.RESULTSPERPAGE,show:true, openInSearchTab: true});
    search/controller/ZaSearchListController.js:            offset:this.RESULTSPERPAGE*(this._currentPageNum-1),
    search/controller/ZaSearchListController.js:            limit:this.RESULTSPERPAGE,
    search/model/ZaSearch.js:    var limit = (params.limit != undefined)? params.limit: ZaAccount.RESULTSPERPAGE;
    search/model/ZaSearch.js:    limit = (limit != null)? limit: ZaAccount.RESULTSPERPAGE;
    search/model/ZaSearch.js:    this.limit = (limit != null)? limit: ZaAccount.RESULTSPERPAGE;
    statistics/view/ZaServerMBXStatsPage.js:ZaServerMBXStatsPage.MBX_DISPLAY_LIMIT = ZaSettings.RESULTSPERPAGE;
    Last edited by mmorse; 09-18-2008 at 05:51 AM. Reason: code vs quote brackets

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Replies: 1
    Last Post: 06-10-2008, 06:50 AM
  2. Replies: 2
    Last Post: 05-05-2008, 05:50 PM
  3. Not able to view Admin Console....
    By worldwidenandhu in forum Installation
    Replies: 2
    Last Post: 11-01-2007, 07:47 AM
  4. Replies: 0
    Last Post: 10-08-2007, 02:12 AM
  5. View Mails in Admin Console
    By rajan in forum Administrators
    Replies: 1
    Last Post: 05-06-2007, 11:58 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts