aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRalph Amissah <ralph.amissah@gmail.com>2020-04-20 13:12:53 -0400
committerRalph Amissah <ralph.amissah@gmail.com>2020-05-20 11:27:26 -0400
commit437e3e7c363a0f876e551609518718bce2c89218 (patch)
treecd59ccaf9ea71908fbb4a0ca49b50e331555487a
parentcgi search form, no date_published breaks regex, initialize to "0000" (diff)
cgi search form title
-rw-r--r--org/meta_conf_make_meta.org12
-rw-r--r--org/out_cgi_search_sqlite.org32
-rw-r--r--org/output_show.org10
-rw-r--r--org/spine.org5
-rw-r--r--src/doc_reform/io_out/cgi_sqlite_search_form.d31
-rw-r--r--src/doc_reform/meta/conf_make_meta_structs.d1
-rw-r--r--src/doc_reform/meta/conf_make_meta_yaml.d10
-rw-r--r--src/doc_reform/meta/metadoc_show_config.d10
-rwxr-xr-xsrc/doc_reform/spine.d5
9 files changed, 86 insertions, 30 deletions
diff --git a/org/meta_conf_make_meta.org b/org/meta_conf_make_meta.org
index d80a270..de0080b 100644
--- a/org/meta_conf_make_meta.org
+++ b/org/meta_conf_make_meta.org
@@ -44,6 +44,7 @@ webserv:
cgi_bin_url: "http://localhost/cgi-bin"
cgi_bin_part: "cgi-bin"
cgi_bin_path: "/usr/lib/cgi-bin"
+ cgi_search_title: "≅ SiSU spine search form"
cgi_search_script: "spine-search"
cgi_search_script_raw_fn_d: "spine_search.d"
cgi_port: ""
@@ -266,6 +267,7 @@ struct ConfCompositeSiteLocal {
string w_srv_cgi_domain; // if not set same as webserv_domain
string w_srv_cgi_bin_part;
string w_srv_cgi_bin_path;
+ string w_srv_cgi_search_title;
string w_srv_cgi_search_script;
string w_srv_cgi_search_script_raw_fn_d;
string w_srv_cgi_port;
@@ -690,6 +692,16 @@ if ("webserv" in _yaml
) {
_struct_composite.conf.w_srv_cgi_bin_path = _yaml["webserv"]["cgi_bin_path"].get!string;
}
+ if (_opt_action.cgi_search_title.length > 0) {
+ _struct_composite.conf.w_srv_cgi_search_title = _opt_action.cgi_search_title;
+ } else if ("cgi_search_title" in _yaml["webserv"]
+ && _yaml["webserv"]["cgi_search_title"].type.string
+ && _yaml["webserv"]["cgi_search_title"].tag.match(rgx.yaml_tag_is_str)
+ ) {
+ _struct_composite.conf.w_srv_cgi_search_title = _yaml["webserv"]["cgi_search_title"].get!string;
+ } else {
+ _struct_composite.conf.w_srv_cgi_search_title = "≅ SiSU spine search form";
+ }
if (_opt_action.cgi_sqlite_search_filename.length > 0) {
_struct_composite.conf.w_srv_cgi_search_script = _opt_action.cgi_sqlite_search_filename;
} else if ("cgi_search_script" in _yaml["webserv"]
diff --git a/org/out_cgi_search_sqlite.org b/org/out_cgi_search_sqlite.org
index 62f456d..32e11ea 100644
--- a/org/out_cgi_search_sqlite.org
+++ b/org/out_cgi_search_sqlite.org
@@ -122,6 +122,9 @@ mixin GenericMain!cgi_function_intro;
get_doc_collection_sub_root(make_and_meta_struct.conf.output_path),
make_and_meta_struct.conf.output_path ~ "/sqlite/",
_sqlite_db_fn,
+ (opt_action.cgi_search_title.empty)
+ ? make_and_meta_struct.conf.w_srv_cgi_search_title
+ : opt_action.cgi_search_title,
(opt_action.css_theme_default) ? "FFFFFF" : "000000",
(opt_action.css_theme_default) ? "000000" : "CCCCCC",
(opt_action.css_theme_default) ? "FFFFFF" : "000000",
@@ -139,6 +142,9 @@ mixin GenericMain!cgi_function_intro;
(opt_action.css_theme_default) ? "FFFFFF" : "777777",
(opt_action.css_theme_default) ? "000000" : "FFFF48",
(opt_action.css_theme_default) ? "FFFF48" : "777748",
+ (opt_action.cgi_search_title.empty)
+ ? make_and_meta_struct.conf.w_srv_cgi_search_title
+ : opt_action.cgi_search_title,
(opt_action.css_theme_default) ? "222222" : "AAAAAA",
_cgi_search_script,
_sqlite_db_fn,
@@ -815,7 +821,7 @@ string show_matched_objects (string fn) {
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>
- ≅ SiSU spine search form
+ %s
</title>
<meta name="sourcefile" content="SiSU.sst">
<link rel="generator" href="sisudoc.org">
@@ -874,6 +880,7 @@ string show_matched_objects (string fn) {
background-color : #%s;
}
p.norm { }
+ p.center { text-align : center; }
p.i1 { padding-left : 1em; }
p.i2 { padding-left : 2em; }
p.i3 { padding-left : 3em; }
@@ -1310,17 +1317,11 @@ string show_matched_objects (string fn) {
<tr><td width="20%%%%">
<table summary="home button / home information" border="0" cellpadding="2" cellspacing="0">
<tr><td align="left">
- <br><a href="http://sisudoc.org/" target="_top">
- <label for="find"><b>≅ SiSU spine</b></label>
- </a>
- <br><a href="http://git.sisudoc.org/" target="_top">
- git
- </a>
+ %s
</td></tr>
</table>
</td>
<td>
- <label for="find">(generated) search form</label>
</td></tr>
</table>
┃");
@@ -1717,7 +1718,11 @@ LIMIT %%s OFFSET %%s
#+NAME: cgi_sqlite_select_statement_0
#+BEGIN_SRC d
(cv.checked_sql)
- ? cgi.write(previous_next ~ "<hr><font size=\"2\" color=\"#666666\">" ~ sql_select.the_body.strip.split("\n ").join(" ").split("\n").join("<br>") ~ "</font>\n")
+ ? cgi.write(previous_next
+ ~ "<hr><font size=\"2\" color=\"#666666\">"
+ ~ sql_select.the_body.strip.split("\n ").join(" ").split("\n").join("<br>")
+ ~ "</font>\n"
+ )
: "";
cgi.write(previous_next);
auto select_query_results = db.execute(sql_select.the_body).cached;
@@ -1819,9 +1824,17 @@ LIMIT %%s OFFSET %%s
#+BEGIN_SRC d
}
cgi.write( previous_next);
+
} else { // offset_not_beyond_limit = false;
cgi.write("select_query_results empty<p>\n");
}
+ cgi.write("<br><p class=\"center\"><a href=\"http://sisudoc.org/\" target=\"_top\">
+<label for=\"find\"><b>≅ SiSU spine</b></label>
+</a> <label for=\"find\">(generated) search form</label>
+<br><a href=\"http://git.sisudoc.org/\" target=\"_top\">
+ git</a>
+</p>
+");
}
sql_search_query;
}
@@ -1899,3 +1912,4 @@ dub --force --compiler=ldc2 && sudo cp -v cgi-bin/spine-search /usr/lib/cgi-bin/
http://localhost/cgi-bin/spine-search?
#+END_SRC
+
diff --git a/org/output_show.org b/org/output_show.org
index 17b361a..e473c92 100644
--- a/org/output_show.org
+++ b/org/output_show.org
@@ -158,7 +158,7 @@ template spineShowSiteConfig() {
#+NAME: meta_metadoc_show_site_config
#+BEGIN_SRC d
writefln(
- "\n%s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n",
+ "\n%s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n",
markup.repeat_character_by_number_provided("-", char_repeat_number),
"- webserv domain name:",
config.conf.w_srv_domain,
@@ -188,6 +188,8 @@ writefln(
config.conf.w_srv_cgi_bin_url,
"- webserv cgi action:",
config.conf.w_srv_cgi_action,
+ "- webserv cgi title:",
+ config.conf.w_srv_cgi_title,
// "- webserv cgi file links:",
// config.conf.w_srv_cgi_file_links,
"- webserv sqlite db:",
@@ -247,7 +249,7 @@ template spineShowConfig() {
#+NAME: meta_metadoc_show_config
#+BEGIN_SRC d
writefln(
- "%s\n\"%s\", %s\n%s\n%s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n",
+ "%s\n\"%s\", %s\n%s\n%s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n",
markup.repeat_character_by_number_provided("-", char_repeat_number),
doc_matters.conf_make_meta.meta.title_full,
doc_matters.conf_make_meta.meta.creator_author,
@@ -273,10 +275,6 @@ writefln(
doc_matters.conf_make_meta.conf.w_srv_cgi_search_script,
"- webserv cgi search script in d:",
doc_matters.conf_make_meta.conf.w_srv_cgi_search_script_raw_fn_d,
- "- webserv cgi port:",
- doc_matters.conf_make_meta.conf.w_srv_cgi_port,
- "- webserv cgi user:",
- doc_matters.conf_make_meta.conf.w_srv_cgi_user,
"- webserv cgi url:",
doc_matters.conf_make_meta.conf.w_srv_cgi_bin_url,
"- webserv cgi action:",
diff --git a/org/spine.org b/org/spine.org
index e5752ca..0f9b7a1 100644
--- a/org/spine.org
+++ b/org/spine.org
@@ -415,6 +415,7 @@ bool[string] opts = [
"workon" : false,
];
string[string] settings = [
+ "cgi-search-title" : "", // config default: "spine-search"
"cgi-sqlite-search-filename" : "", // config default: "spine-search"
"config" : "",
"output" : "",
@@ -492,6 +493,7 @@ auto helpInfo = getopt(args,
"very-verbose", "output to terminal", &opts["very-verbose"],
"workon", "(reserved for some matters under development & testing)", &opts["workon"],
"xhtml", "xhtml output", &opts["xhtml"],
+ "cgi-search-title", "if generating a cgi search form the title to use for it", &settings["cgi-search-title"],
"cgi-sqlite-search-filename", "=[filename] default is spine-search", &settings["cgi-sqlite-search-filename"],
"config", "=/path/to/config/file/including/filename", &settings["config"],
"lang", "=[lang code e.g. =en or =en,es]", &settings["lang"],
@@ -691,6 +693,9 @@ struct OptActions {
@trusted string sqlite_filename() {
return settings["sqlite-db-filename"];
}
+ @trusted string cgi_search_title() {
+ return settings["cgi-search-title"];
+ }
@trusted string cgi_sqlite_search_filename() {
return settings["cgi-sqlite-search-filename"];
}
diff --git a/src/doc_reform/io_out/cgi_sqlite_search_form.d b/src/doc_reform/io_out/cgi_sqlite_search_form.d
index 4a77d48..9c95f7d 100644
--- a/src/doc_reform/io_out/cgi_sqlite_search_form.d
+++ b/src/doc_reform/io_out/cgi_sqlite_search_form.d
@@ -516,7 +516,7 @@ void cgi_function_intro(Cgi cgi) {
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>
- ≅ SiSU spine search form
+ %s
</title>
<meta name="sourcefile" content="SiSU.sst">
<link rel="generator" href="sisudoc.org">
@@ -575,6 +575,7 @@ void cgi_function_intro(Cgi cgi) {
background-color : #%s;
}
p.norm { }
+ p.center { text-align : center; }
p.i1 { padding-left : 1em; }
p.i2 { padding-left : 2em; }
p.i3 { padding-left : 3em; }
@@ -1005,17 +1006,11 @@ void cgi_function_intro(Cgi cgi) {
<tr><td width="20%%%%">
<table summary="home button / home information" border="0" cellpadding="2" cellspacing="0">
<tr><td align="left">
- <br><a href="http://sisudoc.org/" target="_top">
- <label for="find"><b>≅ SiSU spine</b></label>
- </a>
- <br><a href="http://git.sisudoc.org/" target="_top">
- git
- </a>
+ %s
</td></tr>
</table>
</td>
<td>
- <label for="find">(generated) search form</label>
</td></tr>
</table>
┃");
@@ -1342,7 +1337,11 @@ LIMIT %%s OFFSET %%s
cv.sql_match_offset,
);
(cv.checked_sql)
- ? cgi.write(previous_next ~ "<hr><font size=\"2\" color=\"#666666\">" ~ sql_select.the_body.strip.split("\n ").join(" ").split("\n").join("<br>") ~ "</font>\n")
+ ? cgi.write(previous_next
+ ~ "<hr><font size=\"2\" color=\"#666666\">"
+ ~ sql_select.the_body.strip.split("\n ").join(" ").split("\n").join("<br>")
+ ~ "</font>\n"
+ )
: "";
cgi.write(previous_next);
auto select_query_results = db.execute(sql_select.the_body).cached;
@@ -1426,9 +1425,17 @@ LIMIT %%s OFFSET %%s
}
}
cgi.write( previous_next);
+
} else { // offset_not_beyond_limit = false;
cgi.write("select_query_results empty<p>\n");
}
+ cgi.write("<br><p class=\"center\"><a href=\"http://sisudoc.org/\" target=\"_top\">
+<label for=\"find\"><b>≅ SiSU spine</b></label>
+</a> <label for=\"find\">(generated) search form</label>
+<br><a href=\"http://git.sisudoc.org/\" target=\"_top\">
+ git</a>
+</p>
+");
}
sql_search_query;
}
@@ -1447,6 +1454,9 @@ mixin GenericMain!cgi_function_intro;
get_doc_collection_sub_root(make_and_meta_struct.conf.output_path),
make_and_meta_struct.conf.output_path ~ "/sqlite/",
_sqlite_db_fn,
+ (opt_action.cgi_search_title.empty)
+ ? make_and_meta_struct.conf.w_srv_cgi_search_title
+ : opt_action.cgi_search_title,
(opt_action.css_theme_default) ? "FFFFFF" : "000000",
(opt_action.css_theme_default) ? "000000" : "CCCCCC",
(opt_action.css_theme_default) ? "FFFFFF" : "000000",
@@ -1464,6 +1474,9 @@ mixin GenericMain!cgi_function_intro;
(opt_action.css_theme_default) ? "FFFFFF" : "777777",
(opt_action.css_theme_default) ? "000000" : "FFFF48",
(opt_action.css_theme_default) ? "FFFF48" : "777748",
+ (opt_action.cgi_search_title.empty)
+ ? make_and_meta_struct.conf.w_srv_cgi_search_title
+ : opt_action.cgi_search_title,
(opt_action.css_theme_default) ? "222222" : "AAAAAA",
_cgi_search_script,
_sqlite_db_fn,
diff --git a/src/doc_reform/meta/conf_make_meta_structs.d b/src/doc_reform/meta/conf_make_meta_structs.d
index 34b30a3..3c749df 100644
--- a/src/doc_reform/meta/conf_make_meta_structs.d
+++ b/src/doc_reform/meta/conf_make_meta_structs.d
@@ -156,6 +156,7 @@ struct ConfCompositeSiteLocal {
string w_srv_cgi_domain; // if not set same as webserv_domain
string w_srv_cgi_bin_part;
string w_srv_cgi_bin_path;
+ string w_srv_cgi_search_title;
string w_srv_cgi_search_script;
string w_srv_cgi_search_script_raw_fn_d;
string w_srv_cgi_port;
diff --git a/src/doc_reform/meta/conf_make_meta_yaml.d b/src/doc_reform/meta/conf_make_meta_yaml.d
index d6f9e22..9dac231 100644
--- a/src/doc_reform/meta/conf_make_meta_yaml.d
+++ b/src/doc_reform/meta/conf_make_meta_yaml.d
@@ -282,6 +282,16 @@ template contentYAMLtoSpineStruct() {
) {
_struct_composite.conf.w_srv_cgi_bin_path = _yaml["webserv"]["cgi_bin_path"].get!string;
}
+ if (_opt_action.cgi_search_title.length > 0) {
+ _struct_composite.conf.w_srv_cgi_search_title = _opt_action.cgi_search_title;
+ } else if ("cgi_search_title" in _yaml["webserv"]
+ && _yaml["webserv"]["cgi_search_title"].type.string
+ && _yaml["webserv"]["cgi_search_title"].tag.match(rgx.yaml_tag_is_str)
+ ) {
+ _struct_composite.conf.w_srv_cgi_search_title = _yaml["webserv"]["cgi_search_title"].get!string;
+ } else {
+ _struct_composite.conf.w_srv_cgi_search_title = "≅ SiSU spine search form";
+ }
if (_opt_action.cgi_sqlite_search_filename.length > 0) {
_struct_composite.conf.w_srv_cgi_search_script = _opt_action.cgi_sqlite_search_filename;
} else if ("cgi_search_script" in _yaml["webserv"]
diff --git a/src/doc_reform/meta/metadoc_show_config.d b/src/doc_reform/meta/metadoc_show_config.d
index 4c2b976..057d7ba 100644
--- a/src/doc_reform/meta/metadoc_show_config.d
+++ b/src/doc_reform/meta/metadoc_show_config.d
@@ -22,7 +22,7 @@ template spineShowSiteConfig() {
auto char_repeat_number = 66;
if (opt_action.show_config) {
writefln(
- "\n%s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n",
+ "\n%s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n",
markup.repeat_character_by_number_provided("-", char_repeat_number),
"- webserv domain name:",
config.conf.w_srv_domain,
@@ -52,6 +52,8 @@ template spineShowSiteConfig() {
config.conf.w_srv_cgi_bin_url,
"- webserv cgi action:",
config.conf.w_srv_cgi_action,
+ "- webserv cgi title:",
+ config.conf.w_srv_cgi_title,
// "- webserv cgi file links:",
// config.conf.w_srv_cgi_file_links,
"- webserv sqlite db:",
@@ -116,7 +118,7 @@ template spineShowConfig() {
}
if (doc_matters.opt.action.show_config) {
writefln(
- "%s\n\"%s\", %s\n%s\n%s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n",
+ "%s\n\"%s\", %s\n%s\n%s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n%40-s%10-s\n",
markup.repeat_character_by_number_provided("-", char_repeat_number),
doc_matters.conf_make_meta.meta.title_full,
doc_matters.conf_make_meta.meta.creator_author,
@@ -142,10 +144,6 @@ template spineShowConfig() {
doc_matters.conf_make_meta.conf.w_srv_cgi_search_script,
"- webserv cgi search script in d:",
doc_matters.conf_make_meta.conf.w_srv_cgi_search_script_raw_fn_d,
- "- webserv cgi port:",
- doc_matters.conf_make_meta.conf.w_srv_cgi_port,
- "- webserv cgi user:",
- doc_matters.conf_make_meta.conf.w_srv_cgi_user,
"- webserv cgi url:",
doc_matters.conf_make_meta.conf.w_srv_cgi_bin_url,
"- webserv cgi action:",
diff --git a/src/doc_reform/spine.d b/src/doc_reform/spine.d
index 1ddfca1..01b7d8e 100755
--- a/src/doc_reform/spine.d
+++ b/src/doc_reform/spine.d
@@ -173,6 +173,7 @@ string program_name = "spine";
"workon" : false,
];
string[string] settings = [
+ "cgi-search-title" : "", // config default: "spine-search"
"cgi-sqlite-search-filename" : "", // config default: "spine-search"
"config" : "",
"output" : "",
@@ -244,6 +245,7 @@ string program_name = "spine";
"very-verbose", "output to terminal", &opts["very-verbose"],
"workon", "(reserved for some matters under development & testing)", &opts["workon"],
"xhtml", "xhtml output", &opts["xhtml"],
+ "cgi-search-title", "if generating a cgi search form the title to use for it", &settings["cgi-search-title"],
"cgi-sqlite-search-filename", "=[filename] default is spine-search", &settings["cgi-sqlite-search-filename"],
"config", "=/path/to/config/file/including/filename", &settings["config"],
"lang", "=[lang code e.g. =en or =en,es]", &settings["lang"],
@@ -436,6 +438,9 @@ string program_name = "spine";
@trusted string sqlite_filename() {
return settings["sqlite-db-filename"];
}
+ @trusted string cgi_search_title() {
+ return settings["cgi-search-title"];
+ }
@trusted string cgi_sqlite_search_filename() {
return settings["cgi-sqlite-search-filename"];
}