Browse Source

scripts/check_site.lua: enable in_site()/in_domain() checks

Matthias Schiffer 6 years ago
parent
commit
8cb0388416
1 changed files with 21 additions and 13 deletions
  1. 21 13
      scripts/check_site.lua

+ 21 - 13
scripts/check_site.lua

@@ -63,19 +63,6 @@ local function merge(a, b)
 end
 
 
-function in_site(var)
-	return var
-end
-
-function in_domain(var)
-	return var
-end
-
-function this_domain()
-	return domain_code
-end
-
-
 local function path_to_string(path)
 	return table.concat(path, '/')
 end
@@ -118,6 +105,27 @@ local function var_error(path, val, msg)
 end
 
 
+function in_site(path)
+	if has_domains and loadpath(nil, domain, unpack(path)) ~= nil then
+		exit_error(domain_src(), '%s is allowed in site configuration only', path_to_string(path))
+	end
+
+	return path
+end
+
+function in_domain(path)
+	if has_domains and loadpath(nil, site, unpack(path)) ~= nil then
+		exit_error(site_src(), '%s is allowed in domain configuration only', path_to_string(path))
+	end
+
+	return path
+end
+
+function this_domain()
+	return domain_code
+end
+
+
 function extend(path, c)
 	if not path then return nil end