Internalize previously external libraries and stylesheets
Signed-off-by: Knut Ahlers <knut@ahlers.me>
This commit is contained in:
parent
1aa968299a
commit
49e7633ca5
5 changed files with 38997 additions and 92 deletions
5
.gitignore
vendored
5
.gitignore
vendored
|
@ -1,2 +1,5 @@
|
|||
ots
|
||||
frontend/css
|
||||
frontend/js
|
||||
frontend/locale/*.untranslated.json
|
||||
frontend/webfonts
|
||||
ots
|
||||
|
|
35
Makefile
35
Makefile
|
@ -1,4 +1,14 @@
|
|||
generate: l10n
|
||||
VER_BOOTSTRAP=4.0.0
|
||||
VER_BOOTSWATCH=4.1.1
|
||||
VER_FONTAWESOME=5.0.12
|
||||
VER_GIBBERISH_AES=1.0.0
|
||||
VER_JQUERY=3.3.1
|
||||
VER_POPPER=1.14.1
|
||||
|
||||
|
||||
default: generate
|
||||
|
||||
generate: l10n download_libs
|
||||
docker run --rm -ti -v $(CURDIR):$(CURDIR) -w $(CURDIR) node \
|
||||
bash -c "npm install -g coffeescript && coffee -c frontend/application.coffee && chown -R $(shell id -u) frontend"
|
||||
go generate
|
||||
|
@ -9,3 +19,26 @@ l10n:
|
|||
publish:
|
||||
curl -sSLo golang.sh https://raw.githubusercontent.com/Luzifer/github-publish/master/golang.sh
|
||||
bash golang.sh
|
||||
|
||||
# -- Download / refresh external libraries --
|
||||
|
||||
clean_libs:
|
||||
rm -rf frontend/css frontend/webfonts frontend/js
|
||||
|
||||
download_libs: clean_libs fontawesome libs_js libs_css
|
||||
|
||||
fontawesome:
|
||||
curl -sSfL https://github.com/FortAwesome/Font-Awesome/archive/$(VER_FONTAWESOME).tar.gz | \
|
||||
tar -C frontend -xz --strip-components=2 --wildcards '*/web-fonts-with-css/css' '*/web-fonts-with-css/webfonts'
|
||||
|
||||
libs_css:
|
||||
mkdir -p frontend/css
|
||||
curl -sSfLo frontend/css/bootstrap.min.css "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/$(VER_BOOTSTRAP)/css/bootstrap.min.css"
|
||||
curl -sSfLo frontend/css/bootswatch.min.css "https://cdnjs.cloudflare.com/ajax/libs/bootswatch/$(VER_BOOTSWATCH)/flatly/bootstrap.min.css"
|
||||
|
||||
libs_js:
|
||||
mkdir -p frontend/js
|
||||
curl -sSfLo frontend/js/jquery.min.js "https://cdnjs.cloudflare.com/ajax/libs/jquery/$(VER_JQUERY)/jquery.min.js"
|
||||
curl -sSfLo frontend/js/bootstrap.min.js "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/$(VER_BOOTSTRAP)/js/bootstrap.min.js"
|
||||
curl -sSfLo frontend/js/popper.min.js "https://cdnjs.cloudflare.com/ajax/libs/popper.js/$(VER_POPPER)/popper.min.js"
|
||||
curl -sSfLo frontend/js/gibberish-aes.min.js "https://cdnjs.cloudflare.com/ajax/libs/gibberish-aes/$(VER_GIBBERISH_AES)/gibberish-aes.min.js"
|
||||
|
|
|
@ -6,14 +6,9 @@
|
|||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
|
||||
<!-- Bootstrap -->
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0/css/bootstrap.min.css"
|
||||
integrity="sha256-LA89z+k9fjgMKQ/kq4OO2Mrf8VltYml/VES+Rg0fh20=" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootswatch/4.1.1/flatly/bootstrap.min.css"
|
||||
integrity="sha256-Aq7aBPqZwiUM2fHchlRaVD7RFsEBto+K77fvREGjnHU=" crossorigin="anonymous" />
|
||||
|
||||
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.12/css/all.css"
|
||||
integrity="sha384-G0fIWCsCzJIMAVNQPfjH08cyYaUtMwjJwqiRKxxE/rx96Uroj1BtIQ6MLJuheaO9" crossorigin="anonymous">
|
||||
<link rel="stylesheet" href="/css/bootstrap.min.css" />
|
||||
<link rel="stylesheet" href="/css/bootswatch.min.css" />
|
||||
<link rel="stylesheet" href="/css/fontawesome-all.min.css" />
|
||||
|
||||
<title>OTS - One Time Secrets</title>
|
||||
|
||||
|
@ -127,16 +122,10 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"
|
||||
integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.1/popper.min.js"
|
||||
integrity="sha256-ST2MecrXrJaAsqmfpk9XRQITlDoyMmUtgKBEndDisSc=" crossorigin="anonymous"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0/js/bootstrap.min.js"
|
||||
integrity="sha256-5+02zu5UULQkO7w1GIr6vftCgMfFdZcAHeDtFnKZsBs=" crossorigin="anonymous"></script>
|
||||
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/gibberish-aes/1.0.0/gibberish-aes.min.js"
|
||||
integrity="sha256-H9B/XRDijNiF3agVjtiz1ILVi3csEdGz9YBg5TjWouM=" crossorigin="anonymous"></script>
|
||||
|
||||
<script src="/js/jquery.min.js"></script>
|
||||
<script src="/js/popper.min.js"></script>
|
||||
<script src="/js/bootstrap.min.js"></script>
|
||||
<script src="/js/gibberish-aes.min.js"></script>
|
||||
<script src="application.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
6
main.go
6
main.go
|
@ -75,6 +75,12 @@ func assetDelivery(res http.ResponseWriter, r *http.Request) {
|
|||
|
||||
res.Header().Set("Content-Type", mime.TypeByExtension(ext))
|
||||
|
||||
if assetName != "/index.html" {
|
||||
// Do not use template engine on other files than index.html
|
||||
res.Write(assetData)
|
||||
return
|
||||
}
|
||||
|
||||
tpl, err := template.New(assetName).Funcs(getTFuncMap(r)).Parse(string(assetData))
|
||||
|
||||
if err != nil {
|
||||
|
|
Loading…
Reference in a new issue