diff --git a/public/css/custom-style.scss b/localhost.local/public/css/custom-style.scss similarity index 94% rename from public/css/custom-style.scss rename to localhost.local/public/css/custom-style.scss index 5200f0b..f866829 100644 --- a/public/css/custom-style.scss +++ b/localhost.local/public/css/custom-style.scss @@ -6,6 +6,7 @@ $label-color: #7cd2ff; $secondary-btn-color: #f1f1f1; // Define nav bar colours. +$body-bg: #ffffff; $navbar-color: $body-bg; $navbar-border-color-dark: $body-bg; $navbar-primary-color: #e80080; \ No newline at end of file diff --git a/localhost.local/public/images/logo.png b/localhost.local/public/images/logo.png new file mode 100644 index 0000000..4ac52b7 Binary files /dev/null and b/localhost.local/public/images/logo.png differ diff --git a/nimforum.nimble b/nimforum.nimble index 7bb36a0..a24424e 100644 --- a/nimforum.nimble +++ b/nimforum.nimble @@ -33,7 +33,7 @@ task runbackend, "Runs the forum backend": exec "./src/forum" task frontend, "Builds the necessary JS frontend (with CSS)": - exec "nimble c -r src/frontend/buildcss" + exec "nimble c -r src/buildcss" exec "nimble js -d:release src/frontend/forum.nim" mkDir "public/js" cpFile "src/frontend/nimcache/forum.js", "public/js/forum.js" diff --git a/public/css/nimforum.scss b/public/css/nimforum.scss index e77ea5f..45a345d 100644 --- a/public/css/nimforum.scss +++ b/public/css/nimforum.scss @@ -1,8 +1,8 @@ +@import "custom-style"; + // Import full Spectre source code @import "spectre/src/spectre"; -@import "custom-style"; - // Global styles. // - TODO: Make these non-global. .btn, .form-input { diff --git a/public/images/logo.png b/public/images/logo.png deleted file mode 100644 index 4ac52b7..0000000 Binary files a/public/images/logo.png and /dev/null differ diff --git a/public/images/logo.png b/public/images/logo.png new file mode 120000 index 0000000..b3d7ee4 --- /dev/null +++ b/public/images/logo.png @@ -0,0 +1 @@ +/Users/dom/projects/nimforum/forum.nim-lang.org/public/images/logo.png \ No newline at end of file diff --git a/src/buildcss.nim b/src/buildcss.nim new file mode 100644 index 0000000..551956a --- /dev/null +++ b/src/buildcss.nim @@ -0,0 +1,35 @@ +import os, strutils + +import sass + +import utils + +proc buildCSS*(config: Config) = + let publicLoc = "public" + var includePaths: seq[string] = @[] + # Check for a styles override. + var hostname = config.hostname + if not existsDir(hostname): + hostname = "localhost.local" + + let dir = getCurrentDir() / hostname / "public" + includePaths.add(dir / "css") + createDir(publicLoc / "images") + let logo = publicLoc / "images" / "logo.png" + removeFile(logo) + createSymlink( + dir / "images" / "logo.png", + logo + ) + + let cssLoc = publicLoc / "css" + sass.compileFile( + cssLoc / "nimforum.scss", + cssLoc / "nimforum.css", + includePaths=includePaths + ) + +when isMainModule: + let config = loadConfig() + buildCSS(config) + echo("CSS Built successfully") \ No newline at end of file diff --git a/src/forum.nim b/src/forum.nim index b7b191f..50aa5e1 100644 --- a/src/forum.nim +++ b/src/forum.nim @@ -14,9 +14,7 @@ import import cgi except setCookie import options -import sass - -import auth, email, utils +import auth, email, utils, buildcss import frontend/threadlist except User import frontend/[ @@ -245,9 +243,7 @@ proc initialise() = isFTSAvailable = db.getAllRows(sql("SELECT name FROM sqlite_master WHERE " & "type='table' AND name='post_fts'")).len == 1 - let cssLoc = "public" / "css" - if not existsFile(cssLoc / "nimforum.css"): - sass.compileFile(cssLoc / "nimforum.scss", cssLoc / "nimforum.css") + buildCSS(config) # Read karax.html and set its properties. karaxHtml = readFile("public/karax.html") % diff --git a/src/frontend/buildcss.nim b/src/frontend/buildcss.nim deleted file mode 100644 index bba4c7f..0000000 --- a/src/frontend/buildcss.nim +++ /dev/null @@ -1,9 +0,0 @@ -import sass, os - -when isMainModule: - compileFile( - getCurrentDir() / "public" / "css" / "nimforum.scss", - getCurrentDir() / "public" / "css" / "nimforum.css" - ) - - echo("Compiled CSS") \ No newline at end of file diff --git a/src/forum.nim.cfg b/src/nim.cfg similarity index 100% rename from src/forum.nim.cfg rename to src/nim.cfg