Changeset aae801ef


Ignore:
Timestamp:
Mar 20, 2015 4:51:34 PM (6 years ago)
Author:
zzz <zzz@…>
Branches:
master
Children:
dd4c62b
Parents:
e02d4443
Message:

sort config tabs

File:
1 edited

Legend:

Unmodified
Added
Removed
  • apps/routerconsole/java/src/net/i2p/router/web/ConfigNavHelper.java

    re02d4443 raae801ef  
    22
    33import java.io.IOException;
     4import java.text.Collator;
     5import java.util.ArrayList;
     6import java.util.Collections;
     7import java.util.Comparator;
     8import java.util.List;
     9import java.util.Locale;
    410
    511/**
     
    2228                                           _x("Reseeding"), _x("Advanced") };
    2329
     30    private static class Tab {
     31        public final String page, title;
     32        public Tab(String p, String t) {
     33            page = p; title = t;
     34        }
     35    }
     36
     37    private class TabComparator implements Comparator<Tab> {
     38         private static final long serialVersionUID = 1L;
     39         private final Collator coll;
     40
     41         public TabComparator() {
     42             super();
     43             coll = Collator.getInstance(new Locale(Messages.getLanguage(_context)));
     44         }
     45
     46         public int compare(Tab l, Tab r) {
     47             return coll.compare(l.title, r.title);
     48        }
     49    }
     50
    2451    /**
    2552     *  @param graphical false for text-mode browsers
     
    3259        if (!span)
    3360            buf.append("<center>");
     61        List<Tab> tabs = new ArrayList<Tab>(pages.length);
    3462        for (int i = 0; i < pages.length; i++) {
    35             String page = "config" + pages[i];
     63            tabs.add(new Tab(pages[i], _(titles[i])));
     64        }
     65        Collections.sort(tabs, new TabComparator());
     66        for (int i = 0; i < tabs.size(); i++) {
     67            String page = "config" + tabs.get(i).page;
    3668            if (requestURI.endsWith(page) || requestURI.endsWith(page + ".jsp")) {
    3769                // we are there
    3870                if (span)
    3971                    buf.append("<span class=\"tab2\">");
    40                 buf.append(_(titles[i]));
     72                buf.append(tabs.get(i).title);
    4173            } else {
    4274                // we are not there, make a link
    4375                if (span)
    4476                    buf.append("<span class=\"tab\">");
    45                 buf.append("<a href=\"").append(page).append("\">").append(_(titles[i])).append("</a>");
     77                buf.append("<a href=\"").append(page).append("\">").append(tabs.get(i).title).append("</a>");
    4678            }
    4779            if (span)
Note: See TracChangeset for help on using the changeset viewer.