dr|z3d
thanks for the screenshot for the advanced config zzz, I had a vague idea it'd look something like that
dr|z3d
I think there might be scope to take that further and use the result as a template for all textarea configs, not that we have that many.. susimail and susidns being the other notables.
dr|z3d
basic idea: for both normal and advanced modes, we separate the configs as per your commit.
dr|z3d
instead of a list, however, we use a table to display the values, keeping the sections the same.
dr|z3d
we add an additional column to reset value to default where applicable, maybe.
dr|z3d
and here's the kicker.. for advanced mode, we add the contenteditable="true" tag so the values can be edited in situ, with an additional add new key input at the bottom.
zzz
and /configlogging. I don't know, a long time ago I tried making all the log overrides a table with dropdowns and delete boxes, it was a huge fugly mess
zzz
maybe some css smooshing would have helped, maybe not
dr|z3d
configlogging is doing ok as is I think
dr|z3d
that's definitely a specialist option, whereas advanced configs, editable or not, have a wider scope.
dr|z3d
that said, the menu + a table could work.
dr|z3d
possibility of a multi-select dropdown there.
dr|z3d
a table just to display the active logging classes, that is, + a multiselect dropdown.
dr|z3d
anywhere there's a textarea with configs, configreseed, configupdate also.. with a coherent table display, could work.
dr|z3d
ok, let's see what advanced config looks like in a table...
dr|z3d
if (!adv) {
dr|z3d
if ( _hideKeys.contains(key) ||
dr|z3d
key.startsWith("i2cp.auth.") ||
dr|z3d
key.startsWith(PROP_AUTH_PFX))
dr|z3d
continue;
dr|z3d
String type = key;
dr|z3d
int dot = key.indexOf('.');
dr|z3d
if (dot > 0)
dr|z3d
type = type.substring(0, dot);
dr|z3d
if (!type.equals(lastType)) {
dr|z3d
if (lastType != null)
dr|z3d
buf.append("</table>\n");
dr|z3d
lastType = type;
dr|z3d
String dtype = _headers.get(type);
dr|z3d
if (dtype == null)
dr|z3d
dtype = type;
dr|z3d
buf.append("<tr><th colspan=2>").append(_t(dtype)).append("</th><tr>\n");
dr|z3d
} else {
dr|z3d
buf.append("<tr><td>");
dr|z3d
}
dr|z3d
}
dr|z3d
String name = DataHelper.escapeHTML(key);
dr|z3d
String val = DataHelper.escapeHTML(e.getValue());
dr|z3d
buf.append(name).append('</td><td>').append(val).append("</td></tr>");
dr|z3d
of course we need to add a <table> tag there, but still.
dr|z3d
actually, no need for the table tag there, we can just repurpose the table in the jsp.
T3s|4
dr|z3d: for the first time, iirc, under -8+, after checking for updates, now seeing in the side panel under Update Status 'No new news available from dn3XXXXXXXXXXXXXXXXX....' and that text is not select-able or copy-able
dr|z3d
that's a zzz innovation, T3s|4, the news notification. as for selecting the text, that's by design.
T3s|4
gotcha
dr|z3d
if you click outside the main section and navbar to make sure the scope is global on the page, do a ctrl+a and you'll see much of the console isn't selectable.
T3s|4
right-tee-O!
dr|z3d
if you want selectable text, alt+v in firefox, navigate down to page style -> no style.
T3s|4
TIL about alt-v; thx dr|z3d :)
dr|z3d
well that was strange, couldn't compile my mods to the /configadvanced presentation earlier, java kept bombing, now it's fine.
dr|z3d
couple of minor observations re the configadvanced presentation, zzz.
dr|z3d
you've renamed some of the headers, so you probably want to sort by the aliased named, otherwise System Tray looks weird, appearing right at the top.
dr|z3d
also, for sections that contain no entries, (for me that's System Tray and homehelper right now), would be a good idea to hide those.
dr|z3d
otherwise, I like the idea, makes things a little less overwhelming, potentially, for new users.
dr|z3d
I've got it playing nice in a table now, next stage is to collapse the headers with a javascript toggler.
snex
html has no-js collapsible elements
dr|z3d
it does, html5 at least.
dr|z3d
but not for a single <table>
zzz
thx for the review; my code will not show empty sections, dunno about yours
dr|z3d
haven't messed with your code sufficiently for it to function much differently. probably the discrepancy is due to defaults.
dr|z3d
defaults relating to desktopgui, for example.
zzz
yes the groups are not alphabetical, and it will be worse if translated, but there won't be empty groups in my code
dr|z3d
ok :)
dr|z3d
there won't be any empty groups in mine, either, once I'm done with it. homehelper is a non-event for new users, hiding that, and then doing a length check on the type before adding a heading, hopefully that'll remove any empty sections.
dr|z3d
with the table and contentEditable tags on the tds, seems like it could work quite nicely as an alternative to the textarea method.
zzz
you can sort by translated group at about 5x the effort
dr|z3d
not worth it, then, just sort by alias instead?
zzz
same effort
dr|z3d
ok, forget it then. bigger fish to fry.
dr|z3d
I think I'll just hide the desktopgui section altogether since it's disabled by default in + anyways, problem fixed.
zzz
for english anyway