From 3ee2ed36bd81f7f097aebf946983a732d6d27665 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Fri, 28 Sep 2018 17:15:44 -0400 Subject: config webserv_url_doc_root, domain & path --- org/default_regex.org | 1 + org/meta_conf_make_meta.org | 16 ++++++++-------- 2 files changed, 9 insertions(+), 8 deletions(-) (limited to 'org') diff --git a/org/default_regex.org b/org/default_regex.org index 6fbe87b..7f0c724 100644 --- a/org/default_regex.org +++ b/org/default_regex.org @@ -257,6 +257,7 @@ static note_ref = ctRegex!(`^\S+?noteref_( #+name: meta_rgx #+BEGIN_SRC d +static webserv_url_doc_root = ctRegex!(`(?P(?Phttps?:\/\/[^ /]+)\/(?P\S*))`, "mg"); static smid_inline_url_generic = ctRegex!(`(?:^|[}(\[ ])(?:(?:https?|git):\/\/|¤?\.\.\/|¤?\.\/|¤|#)[a-zA-Z0-9_#]`, "mg"); static smid_inline_url = ctRegex!(`((?:(?:https?|git):\/\/|¤?\.\.\/|¤?\.\/|¤|#)[a-zA-Z0-9_]\S*)`, "mg"); static smid_inline_link_naked_url = ctRegex!(`(?P
^|[ ])(?P(?:(?:https?|git):\/\/|¤?\.\.\/|¤?\.\/|¤)\S+?)(?P[.,;:?!'"]?(?:[ ]|$))`, "mg"); // issue with #link #32
diff --git a/org/meta_conf_make_meta.org b/org/meta_conf_make_meta.org
index fcae4bb..0a6074b 100644
--- a/org/meta_conf_make_meta.org
+++ b/org/meta_conf_make_meta.org
@@ -213,8 +213,9 @@ struct ConfCompositeMakeInit {
 #+name: meta_defaults_template_structs
 #+BEGIN_SRC d
 struct ConfCompositeSiteLocal {
-  string webserv_url_root;
-  string webserv_path;
+  string webserv_url_doc_root;
+  string webserv_url_domain;
+  string webserv_url_doc_path;
   string webserv_images;
   string webserv_cgi;
   string webserv_cgi_host;
@@ -651,12 +652,11 @@ if ("webserv" in _json.object) {
   if ("url_root" in _json.object["webserv"]
     && (_json.object["webserv"]["url_root"].type().to!string == "STRING")
   ) {
-    _struct_composite.conf.webserv_url_root = _json.object["webserv"]["url_root"].str;
-  }
-  if ("path" in _json.object["webserv"]
-    && (_json.object["webserv"]["path"].type().to!string == "STRING")
-  ) {
-    _struct_composite.conf.webserv_path = _json.object["webserv"]["path"].str;
+    _struct_composite.conf.webserv_url_doc_root = _json.object["webserv"]["url_root"].str;
+    if (auto m = _struct_composite.conf.webserv_url_doc_root.match(_rgx.webserv_url_doc_root)) {
+      _struct_composite.conf.webserv_url_domain = m.captures[2].to!string;
+      _struct_composite.conf.webserv_url_doc_path = m.captures[3].to!string;
+    }
   }
   if ("images" in _json.object["webserv"]
     && (_json.object["webserv"]["images"].type().to!string == "STRING")
-- 
cgit v1.2.3