From 2d0cdf2b2501a0d19726f1d5ba06e4596c77c6b7 Mon Sep 17 00:00:00 2001 Message-Id: <2d0cdf2b2501a0d19726f1d5ba06e4596c77c6b7.1715426929.git.mdw@distorted.org.uk> From: Mark Wooding Date: Sat, 12 Apr 2008 14:57:52 +0100 Subject: [PATCH] Weight support in web UI. A little clunky but works Organization: Straylight/Edgeware From: Richard Kettlewell --- server/dcgi.c | 14 ++++++++++++-- templates/options.labels | 1 + templates/prefs.html | 4 ++++ 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/server/dcgi.c b/server/dcgi.c index 19e25e0..33630fa 100644 --- a/server/dcgi.c +++ b/server/dcgi.c @@ -426,8 +426,18 @@ static void process_prefs(dcgi_state *ds, int numfile) { disorder_unset(ds->g->client, file, "pick_at_random"); else disorder_set(ds->g->client, file, "pick_at_random", "0"); - if((value = numbered_arg("tags", numfile))) - disorder_set(ds->g->client, file, "tags", value); + if((value = numbered_arg("tags", numfile))) { + if(!*value) + disorder_unset(ds->g->client, file, "tags"); + else + disorder_set(ds->g->client, file, "tags", value); + } + if((value = numbered_arg("weight", numfile))) { + if(!*value || !strcmp(value, "90000")) + disorder_unset(ds->g->client, file, "weight"); + else + disorder_set(ds->g->client, file, "weight", value); + } } else if((name = cgi_get("name"))) { /* Raw preferences. Not well supported in the templates at the moment. */ value = cgi_get("value"); diff --git a/templates/options.labels b/templates/options.labels index 82de2d9..55d661a 100644 --- a/templates/options.labels +++ b/templates/options.labels @@ -131,6 +131,7 @@ label prefs.value Value # Legend for prefs controls that don't correspond to a heading label prefs.random "Random play" label prefs.tags "Tags" +label prefs.weight "Weight" # for help page label help.title "DisOrder Help" diff --git a/templates/prefs.html b/templates/prefs.html index 35dc4b6..5e88890 100644 --- a/templates/prefs.html +++ b/templates/prefs.html @@ -56,6 +56,10 @@ USA <td class="prefs_value"><input size=40 type=text name="@index@_tags" value="@pref{@arg{@index@_file}@}{tags}@"></td> </tr> <tr class=even> + <td class="prefs_name">@label:prefs.weight@</td> + <td class="prefs_value"><input size=40 type=text name="@index@_weight" value="@pref{@arg{@index@_file}@}{weight}@"></td> + </tr> + <tr class=odd> <td class="prefs_name">@label:prefs.random@</td> <td class="prefs_value"><input type=checkbox name="@index@_random" value=true -- [mdw]