Merge branch 'hugo-toha:main' into main
This commit is contained in:
commit
4aca409662
78 changed files with 2705 additions and 1189 deletions
4
.github/workflows/autoprefixer.yml
vendored
4
.github/workflows/autoprefixer.yml
vendored
|
@ -17,11 +17,11 @@ jobs:
|
||||||
|
|
||||||
- name: Run autoprefixer
|
- name: Run autoprefixer
|
||||||
run: |
|
run: |
|
||||||
npm install postcss-cli autoprefixer --save-dev
|
npm install postcss postcss-cli autoprefixer --save-dev
|
||||||
npm run autoprefixer
|
npm run autoprefixer
|
||||||
|
|
||||||
- name: Create Pull Request
|
- name: Create Pull Request
|
||||||
uses: peter-evans/create-pull-request@v3.9.1
|
uses: peter-evans/create-pull-request@v3.10.0
|
||||||
with:
|
with:
|
||||||
branch: autoprefixer
|
branch: autoprefixer
|
||||||
branch-suffix: timestamp
|
branch-suffix: timestamp
|
||||||
|
|
71
.github/workflows/codeql-analysis.yml
vendored
Normal file
71
.github/workflows/codeql-analysis.yml
vendored
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
# For most projects, this workflow file will not need changing; you simply need
|
||||||
|
# to commit it to your repository.
|
||||||
|
#
|
||||||
|
# You may wish to alter this file to override the set of languages analyzed,
|
||||||
|
# or to provide custom queries or build logic.
|
||||||
|
#
|
||||||
|
# ******** NOTE ********
|
||||||
|
# We have attempted to detect the languages in your repository. Please check
|
||||||
|
# the `language` matrix defined below to confirm you have the correct set of
|
||||||
|
# supported CodeQL languages.
|
||||||
|
#
|
||||||
|
name: "CodeQL"
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ main ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ main ]
|
||||||
|
schedule:
|
||||||
|
- cron: '19 16 * * 2'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
analyze:
|
||||||
|
name: Analyze
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
actions: read
|
||||||
|
contents: read
|
||||||
|
security-events: write
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
language: [ 'javascript' ]
|
||||||
|
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
|
||||||
|
# Learn more:
|
||||||
|
# https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# Initializes the CodeQL tools for scanning.
|
||||||
|
- name: Initialize CodeQL
|
||||||
|
uses: github/codeql-action/init@v1
|
||||||
|
with:
|
||||||
|
languages: ${{ matrix.language }}
|
||||||
|
# If you wish to specify custom queries, you can do so here or in a config file.
|
||||||
|
# By default, queries listed here will override any specified in a config file.
|
||||||
|
# Prefix the list here with "+" to use these queries and those in the config file.
|
||||||
|
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
||||||
|
|
||||||
|
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||||||
|
# If this step fails, then you should remove it and run the build manually (see below)
|
||||||
|
- name: Autobuild
|
||||||
|
uses: github/codeql-action/autobuild@v1
|
||||||
|
|
||||||
|
# ℹ️ Command-line programs to run using the OS shell.
|
||||||
|
# 📚 https://git.io/JvXDl
|
||||||
|
|
||||||
|
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
|
||||||
|
# and modify them (or add more) to build your code if your project
|
||||||
|
# uses a compiled language
|
||||||
|
|
||||||
|
#- run: |
|
||||||
|
# make bootstrap
|
||||||
|
# make release
|
||||||
|
|
||||||
|
- name: Perform CodeQL Analysis
|
||||||
|
uses: github/codeql-action/analyze@v1
|
2
.github/workflows/md-link-checker.yml
vendored
2
.github/workflows/md-link-checker.yml
vendored
|
@ -10,4 +10,4 @@ jobs:
|
||||||
# checkout to latest commit
|
# checkout to latest commit
|
||||||
- uses: actions/checkout@master
|
- uses: actions/checkout@master
|
||||||
# run markdown linter
|
# run markdown linter
|
||||||
- uses: gaurav-nelson/github-action-markdown-link-check@v1
|
- uses: gaurav-nelson/github-action-markdown-link-check@1.0.12
|
||||||
|
|
10
README.md
10
README.md
|
@ -137,10 +137,16 @@ params:
|
||||||
# specify whether you want to show Table of Contents in reading page
|
# specify whether you want to show Table of Contents in reading page
|
||||||
enableTOC: true
|
enableTOC: true
|
||||||
|
|
||||||
# Provide newsletter configuration. This feature hasn't been implemented yet.
|
# Provide newsletter configuration.
|
||||||
# Currently, you can just hide it from the footer.
|
# This feature has been implemented for Mailchimp only for now.
|
||||||
|
# You can also hide it from the footer.
|
||||||
newsletter:
|
newsletter:
|
||||||
|
# specify whether you want to display the newsletter form
|
||||||
enable: true
|
enable: true
|
||||||
|
# specify which newsletter provider you want to use
|
||||||
|
provider: mailchimp
|
||||||
|
# specify the target URL for the subscription form
|
||||||
|
mailchimpURL: https://github.us1.list-manage.com/subscribe/post?u=19de52a4603135aae97163fd8&id=094a24c76e
|
||||||
```
|
```
|
||||||
|
|
||||||
Don't forget to update `title`, `baseURL`, and `gitRepo` fields with your own information. To know about more available configuration options, please visit [here](https://toha-guides.netlify.app/posts/configuration/site-parameters/).
|
Don't forget to update `title`, `baseURL`, and `gitRepo` fields with your own information. To know about more available configuration options, please visit [here](https://toha-guides.netlify.app/posts/configuration/site-parameters/).
|
||||||
|
|
54
content/notes/search.bn.md
Normal file
54
content/notes/search.bn.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "অনুসন্ধানের ফলাফল"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/notes/search.cn.md
Normal file
54
content/notes/search.cn.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/notes/search.de.md
Normal file
54
content/notes/search.de.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/notes/search.es.md
Normal file
54
content/notes/search.es.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Resultados de Búsqueda"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
Este archivo existe únicamente para responder a la URL /search con la plantilla de diseño `search` relacionada.
|
||||||
|
|
||||||
|
No se muestra ningún contenido aquí, todo el contenido se basa en la plantilla layouts/page/search.html
|
||||||
|
|
||||||
|
Establecer una prioridad muy baja en el mapa del sitio le dirá a los motores de búsqueda que éste no es un contenido importante.
|
||||||
|
|
||||||
|
Esta implementación utiliza Fusejs, jquery y mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Configuración inicial
|
||||||
|
|
||||||
|
La búsqueda depende del tipo de contenido de salida adicional de JSON en config.toml
|
||||||
|
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Búsqueda de archivos adicionales
|
||||||
|
|
||||||
|
Para buscar campos adicionales definidos en el front matter, debes añadirlo en 2 lugares.
|
||||||
|
|
||||||
|
### Editar layouts/_default/index.JSON
|
||||||
|
Esto expone los valores en /index.json: por ejemplo, para agregar `categories`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Editar las opciones de fuse.js para buscar
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/notes/search.fr.md
Normal file
54
content/notes/search.fr.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/notes/search.hi.md
Normal file
54
content/notes/search.hi.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/notes/search.id.md
Normal file
54
content/notes/search.id.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/notes/search.it.md
Normal file
54
content/notes/search.it.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/notes/search.jp.md
Normal file
54
content/notes/search.jp.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/notes/search.ko.md
Normal file
54
content/notes/search.ko.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/notes/search.ru.md
Normal file
54
content/notes/search.ru.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/notes/search.vn.md
Normal file
54
content/notes/search.vn.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.bn.md
Normal file
54
content/posts/search.bn.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "অনুসন্ধানের ফলাফল"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.cn.md
Normal file
54
content/posts/search.cn.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.de.md
Normal file
54
content/posts/search.de.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.es.md
Normal file
54
content/posts/search.es.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Resultados de Búsqueda"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
Este archivo existe únicamente para responder a la URL /search con la plantilla de diseño `search` relacionada.
|
||||||
|
|
||||||
|
No se muestra ningún contenido aquí, todo el contenido se basa en la plantilla layouts/page/search.html
|
||||||
|
|
||||||
|
Establecer una prioridad muy baja en el mapa del sitio le dirá a los motores de búsqueda que éste no es un contenido importante.
|
||||||
|
|
||||||
|
Esta implementación utiliza Fusejs, jquery y mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Configuración inicial
|
||||||
|
|
||||||
|
La búsqueda depende del tipo de contenido de salida adicional de JSON en config.toml
|
||||||
|
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Búsqueda de archivos adicionales
|
||||||
|
|
||||||
|
Para buscar campos adicionales definidos en el front matter, debes añadirlo en 2 lugares.
|
||||||
|
|
||||||
|
### Editar layouts/_default/index.JSON
|
||||||
|
Esto expone los valores en /index.json: por ejemplo, para agregar `categories`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Editar las opciones de fuse.js para buscar
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.fr.md
Normal file
54
content/posts/search.fr.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.hi.md
Normal file
54
content/posts/search.hi.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.id.md
Normal file
54
content/posts/search.id.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.it.md
Normal file
54
content/posts/search.it.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.jp.md
Normal file
54
content/posts/search.jp.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.ko.md
Normal file
54
content/posts/search.ko.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.ru.md
Normal file
54
content/posts/search.ru.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
54
content/posts/search.vn.md
Normal file
54
content/posts/search.vn.md
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
---
|
||||||
|
title: "Search Results"
|
||||||
|
date: 2010-06-08T08:06:25+06:00
|
||||||
|
weight: 999999
|
||||||
|
sitemap:
|
||||||
|
priority : 0.1
|
||||||
|
layout: "search"
|
||||||
|
url: search
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
This file exists solely to respond to /search URL with the related `search` layout template.
|
||||||
|
|
||||||
|
No content shown here is rendered, all content is based in the template layouts/page/search.html
|
||||||
|
|
||||||
|
Setting a very low sitemap priority will tell search engines this is not important content.
|
||||||
|
|
||||||
|
This implementation uses Fusejs, jquery and mark.js
|
||||||
|
|
||||||
|
|
||||||
|
## Initial setup
|
||||||
|
|
||||||
|
Search depends on additional output content type of JSON in config.toml
|
||||||
|
\```
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "JSON"]
|
||||||
|
\```
|
||||||
|
|
||||||
|
## Searching additional fileds
|
||||||
|
|
||||||
|
To search additional fields defined in front matter, you must add it in 2 places.
|
||||||
|
|
||||||
|
### Edit layouts/_default/index.JSON
|
||||||
|
This exposes the values in /index.json
|
||||||
|
i.e. add `category`
|
||||||
|
\```
|
||||||
|
...
|
||||||
|
"contents":{{ .Content | plainify | jsonify }}
|
||||||
|
{{ if .Params.tags }},
|
||||||
|
"tags":{{ .Params.tags | jsonify }}{{end}},
|
||||||
|
"categories" : {{ .Params.categories | jsonify }},
|
||||||
|
...
|
||||||
|
\```
|
||||||
|
|
||||||
|
### Edit fuse.js options to Search
|
||||||
|
`static/js/search.js`
|
||||||
|
\```
|
||||||
|
keys: [
|
||||||
|
"title",
|
||||||
|
"contents",
|
||||||
|
"tags",
|
||||||
|
"categories"
|
||||||
|
]
|
||||||
|
\```
|
|
@ -106,3 +106,6 @@ other = "সার্টিফিকেট দেখুন"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "নোট সমূহ"
|
other = "নোট সমূহ"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "দায় বিজ্ঞপ্তি"
|
||||||
|
|
|
@ -109,3 +109,6 @@ other = "查看证书"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "笔记"
|
other = "笔记"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "责任通知"
|
||||||
|
|
67
i18n/de.toml
67
i18n/de.toml
|
@ -1,6 +1,6 @@
|
||||||
# More documentation here: https://github.com/nicksnyder/go-i18n
|
# More documentation here: https://github.com/nicksnyder/go-i18n
|
||||||
[home]
|
[home]
|
||||||
other = "Startseite"
|
other = "Home"
|
||||||
|
|
||||||
[posts]
|
[posts]
|
||||||
other = "Beiträge"
|
other = "Beiträge"
|
||||||
|
@ -18,7 +18,7 @@ other = "Mein Lebenslauf"
|
||||||
other = "Navigation"
|
other = "Navigation"
|
||||||
|
|
||||||
[contact_me]
|
[contact_me]
|
||||||
other = "Kontakt aufnehmen"
|
other = "Kontaktiere mich:"
|
||||||
|
|
||||||
[email]
|
[email]
|
||||||
other = "E-Mail"
|
other = "E-Mail"
|
||||||
|
@ -30,10 +30,10 @@ other = "Telefon"
|
||||||
other = "Mit dem Newsletter auf dem neuesten Stand bleiben"
|
other = "Mit dem Newsletter auf dem neuesten Stand bleiben"
|
||||||
|
|
||||||
[newsletter_input_placeholder]
|
[newsletter_input_placeholder]
|
||||||
other = "E-Mail-Adresse eingeben"
|
other = "E-Mail Adresse eingeben"
|
||||||
|
|
||||||
[newsletter_warning]
|
[newsletter_warning]
|
||||||
other = "Wir werden Ihre E-Mail-Adresse nicht an Dritte weitergeben."
|
other = "Wir geben deine E-Mail Adresse nicht an Dritte weiter."
|
||||||
|
|
||||||
[submit]
|
[submit]
|
||||||
other = "Absenden"
|
other = "Absenden"
|
||||||
|
@ -51,61 +51,64 @@ other = "Nächste"
|
||||||
other = "Diese Seite verbessern"
|
other = "Diese Seite verbessern"
|
||||||
|
|
||||||
[out_of]
|
[out_of]
|
||||||
other = "van de"
|
other = "aus"
|
||||||
|
|
||||||
[publications]
|
[publications]
|
||||||
other = "Publicaties"
|
other = "Publikationen"
|
||||||
|
|
||||||
[taken_courses]
|
[taken_courses]
|
||||||
other = "Cursussen gevolgd"
|
other = "Belegte Kurse"
|
||||||
|
|
||||||
[course_name]
|
[course_name]
|
||||||
other = "Cursus naam"
|
other = "Kursname"
|
||||||
|
|
||||||
[total_credit]
|
[total_credit]
|
||||||
other = "Totaal krediet"
|
other = "Gesamtguthaben"
|
||||||
|
|
||||||
[obtained_credit]
|
[obtained_credit]
|
||||||
other = "Krediet verkregen"
|
other = "Erhaltenes Guthaben"
|
||||||
|
|
||||||
[extracurricular_activities]
|
[extracurricular_activities]
|
||||||
other = "Buitenschoolse activiteiten"
|
other = "Außerschulische Aktivitäten"
|
||||||
|
|
||||||
[show_more]
|
[show_more]
|
||||||
other = "Bekijk meer"
|
other = "Mehr anzeigen"
|
||||||
|
|
||||||
[show_less]
|
[show_less]
|
||||||
other = "Laat minder zien"
|
other = "Weniger anzeigen"
|
||||||
|
|
||||||
# [responsibilities]
|
[responsibilities]
|
||||||
# other = "Responsibilities:"
|
other = "Verantwortlichkeiten:"
|
||||||
|
|
||||||
# [present]
|
[present]
|
||||||
# other = "Present"
|
other = "heute"
|
||||||
|
|
||||||
# [comments_javascript]
|
[comments_javascript]
|
||||||
# other = "Please enable JavaScript to view the"
|
other = "Bitte aktiviere JavaScript um die Kommentare zu sehen"
|
||||||
|
|
||||||
# [comments_by]
|
[comments_by]
|
||||||
# other = "comments powered by"
|
other = "Kommentare Unterstützt von"
|
||||||
|
|
||||||
# [read]
|
[read]
|
||||||
# other = "Read"
|
other = "Lesen"
|
||||||
|
|
||||||
# [project_star]
|
[project_star]
|
||||||
# other = "Star"
|
other = "Star"
|
||||||
|
|
||||||
# [project_details]
|
[project_details]
|
||||||
# other = "Details"
|
other = "Details"
|
||||||
|
|
||||||
# [err_404]
|
[err_404]
|
||||||
# other = "The page you are looking for is not there yet."
|
other = "Die Seite nach der Seite ist noch nicht vorhanden."
|
||||||
|
|
||||||
[more]
|
[more]
|
||||||
other = "Meer"
|
other = "Mehr"
|
||||||
|
|
||||||
[view_certificate]
|
[view_certificate]
|
||||||
other = "Bekijk certificaat"
|
other = "Zertifikat ansehen"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "Opmerkingen"
|
other = "Notizen"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "Haftungshinweis"
|
||||||
|
|
|
@ -109,3 +109,6 @@ other = "View Certificate"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "Notes"
|
other = "Notes"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "Liability Notice"
|
||||||
|
|
|
@ -109,3 +109,6 @@ other = "Ver Certificado"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "Notas"
|
other = "Notas"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "Aviso de responsabilidad"
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
other = "Accueil"
|
other = "Accueil"
|
||||||
|
|
||||||
[posts]
|
[posts]
|
||||||
other = "Des postes"
|
other = "Articles"
|
||||||
|
|
||||||
[toc_heading]
|
[toc_heading]
|
||||||
other = "Table des matières"
|
other = "Table des matières"
|
||||||
|
@ -89,8 +89,8 @@ other = "Montrer moins"
|
||||||
# [comments_by]
|
# [comments_by]
|
||||||
# other = "comments powered by"
|
# other = "comments powered by"
|
||||||
|
|
||||||
# [read]
|
[read]
|
||||||
# other = "Read"
|
other = "Lire"
|
||||||
|
|
||||||
# [project_star]
|
# [project_star]
|
||||||
# other = "Star"
|
# other = "Star"
|
||||||
|
@ -109,3 +109,6 @@ other = "Afficher le certificat"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "Remarques"
|
other = "Remarques"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "Avis de responsabilité"
|
||||||
|
|
|
@ -109,3 +109,6 @@ other = "प्रमाणपत्र देखें"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "टिप्पणियाँ"
|
other = "टिप्पणियाँ"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "दायित्व सूचना"
|
||||||
|
|
|
@ -109,3 +109,6 @@ other = "Lihat Sertifikat"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "Catatan"
|
other = "Catatan"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "Pemberitahuan Kewajiban"
|
||||||
|
|
|
@ -109,3 +109,6 @@ other = "Féach ar an Teastas"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "Appunti"
|
other = "Appunti"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "Avviso di responsabilità"
|
||||||
|
|
|
@ -106,3 +106,6 @@ other = "ビューの証明書"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "ノート"
|
other = "ノート"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "責任通知"
|
||||||
|
|
|
@ -109,3 +109,6 @@ other = "인증서보기"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "메모"
|
other = "메모"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "책임 고지"
|
||||||
|
|
113
i18n/nl.toml
Normal file
113
i18n/nl.toml
Normal file
|
@ -0,0 +1,113 @@
|
||||||
|
[home]
|
||||||
|
other = "Startseite"
|
||||||
|
|
||||||
|
[posts]
|
||||||
|
other = "Beiträge"
|
||||||
|
|
||||||
|
[toc_heading]
|
||||||
|
other = "Inhaltsverzeichnis"
|
||||||
|
|
||||||
|
[at]
|
||||||
|
other = "bei"
|
||||||
|
|
||||||
|
[resume]
|
||||||
|
other = "Mein Lebenslauf"
|
||||||
|
|
||||||
|
[navigation]
|
||||||
|
other = "Navigation"
|
||||||
|
|
||||||
|
[contact_me]
|
||||||
|
other = "Kontakt aufnehmen"
|
||||||
|
|
||||||
|
[email]
|
||||||
|
other = "E-Mail"
|
||||||
|
|
||||||
|
[phone]
|
||||||
|
other = "Telefon"
|
||||||
|
|
||||||
|
[newsletter_text]
|
||||||
|
other = "Mit dem Newsletter auf dem neuesten Stand bleiben"
|
||||||
|
|
||||||
|
[newsletter_input_placeholder]
|
||||||
|
other = "E-Mail-Adresse eingeben"
|
||||||
|
|
||||||
|
[newsletter_warning]
|
||||||
|
other = "Wir werden Ihre E-Mail-Adresse nicht an Dritte weitergeben."
|
||||||
|
|
||||||
|
[submit]
|
||||||
|
other = "Absenden"
|
||||||
|
|
||||||
|
[hugoAttributionText]
|
||||||
|
other = "Unterstützt von"
|
||||||
|
|
||||||
|
[prev]
|
||||||
|
other = "Vorherige"
|
||||||
|
|
||||||
|
[next]
|
||||||
|
other = "Nächste"
|
||||||
|
|
||||||
|
[improve_this_page]
|
||||||
|
other = "Diese Seite verbessern"
|
||||||
|
|
||||||
|
[out_of]
|
||||||
|
other = "van de"
|
||||||
|
|
||||||
|
[publications]
|
||||||
|
other = "Publicaties"
|
||||||
|
|
||||||
|
[taken_courses]
|
||||||
|
other = "Cursussen gevolgd"
|
||||||
|
|
||||||
|
[course_name]
|
||||||
|
other = "Cursus naam"
|
||||||
|
|
||||||
|
[total_credit]
|
||||||
|
other = "Totaal krediet"
|
||||||
|
|
||||||
|
[obtained_credit]
|
||||||
|
other = "Krediet verkregen"
|
||||||
|
|
||||||
|
[extracurricular_activities]
|
||||||
|
other = "Buitenschoolse activiteiten"
|
||||||
|
|
||||||
|
[show_more]
|
||||||
|
other = "Bekijk meer"
|
||||||
|
|
||||||
|
[show_less]
|
||||||
|
other = "Laat minder zien"
|
||||||
|
|
||||||
|
# [responsibilities]
|
||||||
|
# other = "Responsibilities:"
|
||||||
|
|
||||||
|
# [present]
|
||||||
|
# other = "Present"
|
||||||
|
|
||||||
|
# [comments_javascript]
|
||||||
|
# other = "Please enable JavaScript to view the"
|
||||||
|
|
||||||
|
# [comments_by]
|
||||||
|
# other = "comments powered by"
|
||||||
|
|
||||||
|
# [read]
|
||||||
|
# other = "Read"
|
||||||
|
|
||||||
|
# [project_star]
|
||||||
|
# other = "Star"
|
||||||
|
|
||||||
|
# [project_details]
|
||||||
|
# other = "Details"
|
||||||
|
|
||||||
|
# [err_404]
|
||||||
|
# other = "The page you are looking for is not there yet."
|
||||||
|
|
||||||
|
[more]
|
||||||
|
other = "Meer"
|
||||||
|
|
||||||
|
[view_certificate]
|
||||||
|
other = "Bekijk certificaat"
|
||||||
|
|
||||||
|
[notes]
|
||||||
|
other = "Opmerkingen"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "Haftungshinweis"
|
|
@ -109,3 +109,6 @@ other = "Просмотреть сертификат"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "Ноты"
|
other = "Ноты"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "Уведомление об ответственности"
|
||||||
|
|
|
@ -109,3 +109,6 @@ other = "Xem chứng chỉ"
|
||||||
|
|
||||||
[notes]
|
[notes]
|
||||||
other = "Ghi chú"
|
other = "Ghi chú"
|
||||||
|
|
||||||
|
[disclaimer_text]
|
||||||
|
other = "Thông báo trách nhiệm"
|
||||||
|
|
|
@ -4,13 +4,14 @@
|
||||||
<title>{{ .Page.Title }}</title>
|
<title>{{ .Page.Title }}</title>
|
||||||
<!------ ADD COMMON HEADERS -------->
|
<!------ ADD COMMON HEADERS -------->
|
||||||
{{- partial "header.html" . -}}
|
{{- partial "header.html" . -}}
|
||||||
|
{{ template "_internal/opengraph.html" . }}
|
||||||
|
|
||||||
<!------ ADD PAGE SPECIFIC HEADERS ------->
|
<!------ ADD PAGE SPECIFIC HEADERS ------->
|
||||||
{{ block "header" . }} {{ end }}
|
{{ block "header" . }} {{ end }}
|
||||||
|
|
||||||
<!-- ADD GOOGLE ANALYTICS IF ENABLED -->
|
<!-- ADD GOOGLE ANALYTICS IF ENABLED -->
|
||||||
{{ if site.GoogleAnalytics }}
|
{{ if site.GoogleAnalytics }}
|
||||||
{{ template "_internal/google_analytics_async.html" . }}
|
{{ template "_internal/google_analytics.html" . }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
{{ define "header" }}
|
{{ define "header" }}
|
||||||
<link rel="stylesheet" href="{{ "/css/layouts/list.css" | relURL }}">
|
<link rel="stylesheet" href="{{ "/css/layouts/list.css" | relURL }}">
|
||||||
<link rel="stylesheet" href="{{ "/css/navigators/sidebar.css" | relURL}}">
|
<link rel="stylesheet" href="{{ "/css/navigators/sidebar.css" | relURL}}">
|
||||||
|
<!--================= custom style overrides =========================-->
|
||||||
|
<link rel="stylesheet" href="{{ "/css/style.css" | relURL }}"/>
|
||||||
|
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{ define "navbar" }}
|
{{ define "navbar" }}
|
||||||
|
@ -16,7 +19,7 @@
|
||||||
<section class="sidebar-section" id="sidebar-section">
|
<section class="sidebar-section" id="sidebar-section">
|
||||||
<div class="sidebar-holder">
|
<div class="sidebar-holder">
|
||||||
<div class="sidebar" id="sidebar">
|
<div class="sidebar" id="sidebar">
|
||||||
<form class="mx-auto" method="get" action="{{ "search" | absURL }}">
|
<form class="mx-auto" method="get" action="{{ "search" | relLangURL }}">
|
||||||
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
|
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
|
||||||
</form>
|
</form>
|
||||||
<div class="sidebar-tree">
|
<div class="sidebar-tree">
|
||||||
|
@ -36,7 +39,8 @@
|
||||||
<section class="content-section" id="content-section">
|
<section class="content-section" id="content-section">
|
||||||
<div class="content container-fluid" id="content">
|
<div class="content container-fluid" id="content">
|
||||||
<div class="container-fluid post-card-holder" id="post-card-holder">
|
<div class="container-fluid post-card-holder" id="post-card-holder">
|
||||||
{{ $paginator := .Paginate .RegularPagesRecursive 12 }}
|
{{ $posts := where .RegularPagesRecursive "Layout" "!=" "search" }}
|
||||||
|
{{ $paginator := .Paginate $posts 12 }}
|
||||||
{{ range $paginator.Pages }}
|
{{ range $paginator.Pages }}
|
||||||
{{ if .Layout }}
|
{{ if .Layout }}
|
||||||
{{/* ignore the search.md file*/}}
|
{{/* ignore the search.md file*/}}
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
{{ define "header" }}
|
{{ define "header" }}
|
||||||
<link rel="stylesheet" href="{{ "/css/layouts/list.css" | relURL }}">
|
<link rel="stylesheet" href="{{ "/css/layouts/list.css" | relURL }}">
|
||||||
<link rel="stylesheet" href="{{ "/css/navigators/sidebar.css" | relURL}}">
|
<link rel="stylesheet" href="{{ "/css/navigators/sidebar.css" | relURL}}">
|
||||||
|
<!--================= custom style overrides =========================-->
|
||||||
|
<link rel="stylesheet" href="{{ "/css/style.css" | relURL }}"/>
|
||||||
|
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{ define "navbar" }}
|
{{ define "navbar" }}
|
||||||
|
@ -16,7 +19,7 @@
|
||||||
<section class="sidebar-section" id="sidebar-section">
|
<section class="sidebar-section" id="sidebar-section">
|
||||||
<div class="sidebar-holder">
|
<div class="sidebar-holder">
|
||||||
<div class="sidebar" id="sidebar">
|
<div class="sidebar" id="sidebar">
|
||||||
<form class="mx-auto" method="get" action="{{ "search" | absURL }}">
|
<form class="mx-auto" method="get" action="{{ "search" | relLangURL }}">
|
||||||
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
|
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
|
||||||
</form>
|
</form>
|
||||||
<div class="sidebar-tree">
|
<div class="sidebar-tree">
|
||||||
|
|
|
@ -6,6 +6,9 @@
|
||||||
/>
|
/>
|
||||||
<link rel="stylesheet" href="{{ "/css/layouts/single.css" | relURL }}"/>
|
<link rel="stylesheet" href="{{ "/css/layouts/single.css" | relURL }}"/>
|
||||||
<link rel="stylesheet" href="{{ "/css/navigators/sidebar.css" | relURL }}">
|
<link rel="stylesheet" href="{{ "/css/navigators/sidebar.css" | relURL }}">
|
||||||
|
<!--================= custom style overrides =========================-->
|
||||||
|
<link rel="stylesheet" href="{{ "/css/style.css" | relURL }}"/>
|
||||||
|
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{ define "navbar" }}
|
{{ define "navbar" }}
|
||||||
|
@ -16,7 +19,7 @@
|
||||||
<section class="sidebar-section" id="sidebar-section">
|
<section class="sidebar-section" id="sidebar-section">
|
||||||
<div class="sidebar-holder">
|
<div class="sidebar-holder">
|
||||||
<div class="sidebar" id="sidebar">
|
<div class="sidebar" id="sidebar">
|
||||||
<form class="mx-auto" method="get" action="{{ "search" | absURL }}">
|
<form class="mx-auto" method="get" action="{{ "search" | relLangURL }}">
|
||||||
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
|
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
|
||||||
</form>
|
</form>
|
||||||
<div class="sidebar-tree">
|
<div class="sidebar-tree">
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
|
|
||||||
<!-- import common headers -->
|
<!-- import common headers -->
|
||||||
{{- partial "header.html" . -}}
|
{{- partial "header.html" . -}}
|
||||||
|
{{- partial "opengraph.html" . -}}
|
||||||
|
|
||||||
<!-- import index page specific headers -->
|
<!-- import index page specific headers -->
|
||||||
<link rel="stylesheet" href="{{ "/css/sections/home.css" | relURL }}"/>
|
<link rel="stylesheet" href="{{ "/css/sections/home.css" | relURL }}"/>
|
||||||
|
@ -25,9 +26,12 @@
|
||||||
<link rel="stylesheet" href="{{ "/css/sections/achievements.css" | relURL }}"/>
|
<link rel="stylesheet" href="{{ "/css/sections/achievements.css" | relURL }}"/>
|
||||||
<link rel="stylesheet" href="{{ "/css/sections/accomplishments.css" | relURL }}"/>
|
<link rel="stylesheet" href="{{ "/css/sections/accomplishments.css" | relURL }}"/>
|
||||||
|
|
||||||
|
<!--================= custom style overrides =========================-->
|
||||||
|
<link rel="stylesheet" href="{{ "/css/style.css" | relURL }}"/>
|
||||||
|
|
||||||
<!-- Add Google Analytics if enabled in configuration -->
|
<!-- Add Google Analytics if enabled in configuration -->
|
||||||
{{ if site.GoogleAnalytics }}
|
{{ if site.GoogleAnalytics }}
|
||||||
{{ template "_internal/google_analytics_async.html" . }}
|
{{ template "_internal/google_analytics.html" . }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</head>
|
</head>
|
||||||
<body data-spy="scroll" data-target="#top-navbar" data-offset="100">
|
<body data-spy="scroll" data-target="#top-navbar" data-offset="100">
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
<section class="sidebar-section" id="sidebar-section">
|
<section class="sidebar-section" id="sidebar-section">
|
||||||
<div class="sidebar-holder">
|
<div class="sidebar-holder">
|
||||||
<div class="sidebar" id="sidebar">
|
<div class="sidebar" id="sidebar">
|
||||||
<form class="mx-auto" method="get" action="{{ "search" | absURL }}">
|
<form class="mx-auto" method="get" action="{{ "search" | relLangURL }}">
|
||||||
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
|
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
|
||||||
</form>
|
</form>
|
||||||
<div class="sidebar-tree">
|
<div class="sidebar-tree">
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
<section class="sidebar-section" id="sidebar-section">
|
<section class="sidebar-section" id="sidebar-section">
|
||||||
<div class="sidebar-holder">
|
<div class="sidebar-holder">
|
||||||
<div class="sidebar" id="sidebar">
|
<div class="sidebar" id="sidebar">
|
||||||
<form class="mx-auto" method="get" action="{{ "search" | absURL }}">
|
<form class="mx-auto" method="get" action="{{ "search" | relLangURL }}">
|
||||||
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
|
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
|
||||||
</form>
|
</form>
|
||||||
<div class="sidebar-tree">
|
<div class="sidebar-tree">
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
{{ $logoImage:= resources.Get .logo}}
|
{{ $logoImage:= resources.Get .logo}}
|
||||||
{{ if $logoImage }}
|
{{ if $logoImage }}
|
||||||
{{ $logoImage := $logoImage.Fit "24x24" }}
|
{{ $logoImage = $logoImage.Fit "24x24" }}
|
||||||
|
|
||||||
<img class="card-img-xs" src="{{ $logoImage.RelPermalink }}" alt="{{ .name }}" />
|
<img class="card-img-xs" src="{{ $logoImage.RelPermalink }}" alt="{{ .name }}" />
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
{{/* svg don't support "Fit" operation */}}
|
{{/* svg don't support "Fit" operation */}}
|
||||||
{{ if ne $logoImage.MediaType.SubType "svg" }}
|
{{ if ne $logoImage.MediaType.SubType "svg" }}
|
||||||
{{ $logoImage := $logoImage.Fit "24x24" }}
|
{{ $logoImage = $logoImage.Fit "24x24" }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
<img class="card-img-xs" src="{{ $logoImage.RelPermalink }}" alt="{{ .name }}" />
|
<img class="card-img-xs" src="{{ $logoImage.RelPermalink }}" alt="{{ .name }}" />
|
||||||
|
|
|
@ -4,10 +4,15 @@
|
||||||
{{ $contactMeEnabled := site.Params.footer.contactMe.enable | default true }}
|
{{ $contactMeEnabled := site.Params.footer.contactMe.enable | default true }}
|
||||||
{{ $newsletterEnabled := site.Params.footer.newsletter.enable | default true }}
|
{{ $newsletterEnabled := site.Params.footer.newsletter.enable | default true }}
|
||||||
{{ $credentialsEnabled := site.Params.footer.credentials.enable | default true }}
|
{{ $credentialsEnabled := site.Params.footer.credentials.enable | default true }}
|
||||||
|
{{ $disclaimerEnabled := site.Params.footer.disclaimer.enable | default false }}
|
||||||
|
|
||||||
{{/* Keep backward compatibility for the newsletter function */}}
|
{{/* Keep backward compatibility for the newsletter function */}}
|
||||||
{{ if site.Params.newsletter.enable }}
|
{{ if site.Params.newsletter }}
|
||||||
{{ $newsletterEnabled = true }}
|
{{ if site.Params.newsletter.enable }}
|
||||||
|
{{ $newsletterEnabled = true }}
|
||||||
|
{{ else }}
|
||||||
|
{{ $newsletterEnabled = false }}
|
||||||
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{ if $footerEnabled }}
|
{{ if $footerEnabled }}
|
||||||
|
@ -29,6 +34,13 @@
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{ $disclaimer := "" }}
|
||||||
|
{{ $siteConfig := (index site.Data site.Language.Lang).site }}
|
||||||
|
{{ if $siteConfig.disclaimer }}
|
||||||
|
{{ $disclaimer = $siteConfig.disclaimer }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
{{/* footer logos */}}
|
{{/* footer logos */}}
|
||||||
{{ $themeLogo := "/images/theme-logo.png" }}
|
{{ $themeLogo := "/images/theme-logo.png" }}
|
||||||
{{ $hugoLogo := "/images/hugo-logo.svg" }}
|
{{ $hugoLogo := "/images/hugo-logo.svg" }}
|
||||||
|
@ -79,29 +91,55 @@
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
<!-------------- Newsletter --------------->
|
||||||
{{ if $newsletterEnabled }}
|
{{ if $newsletterEnabled }}
|
||||||
<div class="col-md-4 col-sm-12">
|
{{ $provider := site.Params.footer.newsletter.provider }}
|
||||||
<!-- <h5>Newsletter</h5> -->
|
<div class="col-md-4 col-sm-12">
|
||||||
<p>{{ i18n "newsletter_text" }}</p>
|
<p>{{ i18n "newsletter_text" }}</p>
|
||||||
<form>
|
{{ if and (eq $provider "mailchimp") site.Params.footer.newsletter.mailchimpURL }} <!-- mailchimp -->
|
||||||
<div class="form-group">
|
<form
|
||||||
<input
|
action="{{ site.Params.footer.newsletter.mailchimpURL }}"
|
||||||
type="email"
|
method="post"
|
||||||
class="form-control"
|
id="mc-embedded-subscribe-form"
|
||||||
id="exampleInputEmail1"
|
name="mc-embedded-subscribe-form"
|
||||||
aria-describedby="emailHelp"
|
class="validate"
|
||||||
placeholder="{{ i18n "newsletter_input_placeholder" }}"
|
target="_blank"
|
||||||
/>
|
novalidate >
|
||||||
<small id="emailHelp" class="form-text text-muted"
|
<div class="form-group">
|
||||||
>{{ i18n "newsletter_warning" }}</small
|
<input
|
||||||
>
|
type="email"
|
||||||
</div>
|
class="form-control"
|
||||||
<button type="submit" class="btn btn-info">{{ i18n "submit" }}</button>
|
id="mce-EMAIL"
|
||||||
</form>
|
name="EMAIL"
|
||||||
</div>
|
aria-describedby="emailHelp"
|
||||||
|
placeholder="{{ i18n "newsletter_input_placeholder" }}"
|
||||||
|
/>
|
||||||
|
<small id="emailHelp" class="form-text text-muted"
|
||||||
|
>{{ i18n "newsletter_warning" }}</small
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
<button type="submit" class="btn btn-info">{{ i18n "submit" }}</button>
|
||||||
|
</form>
|
||||||
|
{{ else }}
|
||||||
|
<!-- a dummy form -->
|
||||||
|
<form>
|
||||||
|
<div class="form-group">
|
||||||
|
<input type="email" class="form-control" id="exampleInputEmail1" aria-describedby="emailHelp" placeholder="{{ i18n "newsletter_input_placeholder" }}"/>
|
||||||
|
<small id="emailHelp" class="form-text text-muted">{{ i18n "newsletter_warning" }}</small>
|
||||||
|
</div>
|
||||||
|
<button type="submit" class="btn btn-info">{{ i18n "submit" }}</button>
|
||||||
|
</form>
|
||||||
|
{{ end }}
|
||||||
|
</div>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
{{ if and $disclaimerEnabled $disclaimer}}
|
||||||
|
<hr />
|
||||||
|
<div class="container">
|
||||||
|
<p id="disclaimer"><strong>{{ i18n "disclaimer_text" }}:</strong> {{ $disclaimer }}</p>
|
||||||
|
</div>
|
||||||
|
{{ end }}
|
||||||
{{ if $credentialsEnabled }}
|
{{ if $credentialsEnabled }}
|
||||||
<hr />
|
<hr />
|
||||||
<div class="container">
|
<div class="container">
|
||||||
|
|
|
@ -1,18 +1,3 @@
|
||||||
{{/* default favicon */}}
|
|
||||||
{{ $favicon := "/images/favicon.png" }}
|
|
||||||
|
|
||||||
{{/* if favicon is provided in the config, then use that */}}
|
|
||||||
{{ if site.Params.logo.favicon }}
|
|
||||||
{{ $favicon = site.Params.logo.favicon }}
|
|
||||||
{{ end }}
|
|
||||||
|
|
||||||
{{/* resize the favicon. don't resize svg because it is not supported */}}
|
|
||||||
{{ $favicon := resources.Get $favicon }}
|
|
||||||
{{ if and $favicon (ne $favicon.MediaType.SubType "svg") }}
|
|
||||||
{{ $favicon = $favicon.Resize "42x" }}
|
|
||||||
{{ end }}
|
|
||||||
{{ $favicon = $favicon.RelPermalink}}
|
|
||||||
|
|
||||||
<meta charset="UTF-8" />
|
<meta charset="UTF-8" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
|
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
|
||||||
|
@ -20,7 +5,6 @@
|
||||||
<!-- ============ import common css ========== -->
|
<!-- ============ import common css ========== -->
|
||||||
<link rel="stylesheet" href="{{ "/css/bootstrap.min.css" | relURL }}"/>
|
<link rel="stylesheet" href="{{ "/css/bootstrap.min.css" | relURL }}"/>
|
||||||
<link rel="stylesheet" href="{{ "/css/layouts/main.css" | relURL }}"/>
|
<link rel="stylesheet" href="{{ "/css/layouts/main.css" | relURL }}"/>
|
||||||
<link rel="stylesheet" href="{{ "/css/style.css" | relURL }}"/>
|
|
||||||
<link rel="stylesheet" href="{{ "/css/navigators/navbar.css" | relURL }}"/>
|
<link rel="stylesheet" href="{{ "/css/navigators/navbar.css" | relURL }}"/>
|
||||||
<link rel="stylesheet" href="{{ "/css/plyr.css" | relURL }}"/>
|
<link rel="stylesheet" href="{{ "/css/plyr.css" | relURL }}"/>
|
||||||
<link rel="stylesheet" href="{{ "/css/flag-icon.min.css" | relURL }}"/>
|
<link rel="stylesheet" href="{{ "/css/flag-icon.min.css" | relURL }}"/>
|
||||||
|
@ -30,7 +14,16 @@
|
||||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/css/all.min.css" />
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/css/all.min.css" />
|
||||||
|
|
||||||
<!--================= fab-icon =========================-->
|
<!--================= fab-icon =========================-->
|
||||||
<link rel="icon" type="image/png" href="{{ $favicon }}" />
|
{{/* add favicon only if the site author has provided the the favicon */}}
|
||||||
|
{{ if site.Params.logo.favicon }}
|
||||||
|
{{ $favicon := site.Params.logo.favicon }}
|
||||||
|
|
||||||
<!--================= custom style overrides =========================-->
|
{{/* resize the favicon. don't resize svg because it is not supported */}}
|
||||||
<link rel="stylesheet" href="{{ "/css/style.css" | relURL }}"/>
|
{{ $favicon = resources.Get $favicon }}
|
||||||
|
{{ if and $favicon (ne $favicon.MediaType.SubType "svg") }}
|
||||||
|
{{ $favicon = $favicon.Resize "42x" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ $favicon = $favicon.RelPermalink}}
|
||||||
|
|
||||||
|
<link rel="icon" type="image/png" href="{{ $favicon }}" />
|
||||||
|
{{end}}
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
|
{{/* if there is no custom flag provided, we define the flag with the country code */}}
|
||||||
{{ $languageCode:= .Lang }}
|
{{ $languageCode:= .Lang }}
|
||||||
{{/* by default the language code and the country code are same */}}
|
{{/* by default the language code and the country code are same */}}
|
||||||
{{ $countryCode:= $languageCode }}
|
{{ $countryCode:= $languageCode }}
|
||||||
|
|
||||||
{{/* language code and country code are not same for some countries. we need to fix them. */}}
|
{{/* language code and country code are not same for some countries. we need to fix them. */}}
|
||||||
{{ if eq $languageCode "en" }}
|
{{ if eq $languageCode "en" }}
|
||||||
{{ $countryCode = "gb" }}
|
{{ $countryCode = "gb" }}
|
||||||
{{ else if eq $languageCode "bn" }}
|
{{ else if eq $languageCode "bn" }}
|
||||||
|
@ -11,5 +12,13 @@
|
||||||
{{ $countryCode = "in" }}
|
{{ $countryCode = "in" }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
|
||||||
|
{{/* if the user specify a country code for a language via "params.flagOverwrites" field, then use it. */}}
|
||||||
|
{{ range site.Params.flagOverwrites }}
|
||||||
|
{{ if eq $languageCode .languageCode }}
|
||||||
|
{{ $countryCode = .countryCode }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
{{/* return the country code */}}
|
{{/* return the country code */}}
|
||||||
{{ return $countryCode }}
|
{{ return $countryCode }}
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
{{/* apply image processing. don't use "Fit" in svg because its not supported */}}
|
{{/* apply image processing. don't use "Fit" in svg because its not supported */}}
|
||||||
{{ $authorImage:= resources.Get $authorImage}}
|
{{ $authorImage:= resources.Get $authorImage}}
|
||||||
{{ if and $authorImage (ne $authorImage.MediaType.SubType "svg") }}
|
{{ if and $authorImage (ne $authorImage.MediaType.SubType "svg") }}
|
||||||
{{ $authorImage := $authorImage.Fit "120x120" }}
|
{{ $authorImage = $authorImage.Fit "120x120" }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{/* return the author image link */}}
|
{{/* return the author image link */}}
|
||||||
|
|
10
layouts/partials/helpers/get-pages.html
Normal file
10
layouts/partials/helpers/get-pages.html
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{{ $pages:= slice}}
|
||||||
|
{{ range . }}
|
||||||
|
{{ if .HasChildren }}
|
||||||
|
{{ $nestedPages:=partial "helpers/get-pages.html" .Children }}
|
||||||
|
{{ $pages = $pages | append $nestedPages }}
|
||||||
|
{{ else }}
|
||||||
|
{{ $pages = $pages | append .Page }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ return $pages}}
|
35
layouts/partials/misc/badge.html
Normal file
35
layouts/partials/misc/badge.html
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
<div class="col-6 col-lg-4 p-2">
|
||||||
|
{{ if eq .type "certification" }}
|
||||||
|
{{/* Verifiable certificate badge from https://www.credly.com */}}
|
||||||
|
<div class="">
|
||||||
|
<a href="{{ .url }}" target="_blank" >
|
||||||
|
<img src="{{ .badge }}" alt="{{ .name }}" />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
{{ else if eq .type "soft-skill-indicator" }}
|
||||||
|
{{/* Circular bar indicating the level of expertise in a skill */}}
|
||||||
|
{{ $predefinedColor:= true}}
|
||||||
|
{{ if hasPrefix .color "#"}}
|
||||||
|
{{ $predefinedColor = false }}
|
||||||
|
{{ end }}
|
||||||
|
<div class="circular-progress {{if $predefinedColor}}{{ .color }}{{end}}">
|
||||||
|
<span class="circular-progress-left">
|
||||||
|
<span
|
||||||
|
class="circular-progress-bar circular-progress-percentage-{{ .percentage }}"
|
||||||
|
{{ if not $predefinedColor }}
|
||||||
|
style="border-color: {{.color}};"
|
||||||
|
{{ end }}
|
||||||
|
></span>
|
||||||
|
</span>
|
||||||
|
<span class="circular-progress-right">
|
||||||
|
<span
|
||||||
|
class="circular-progress-bar"
|
||||||
|
{{ if not $predefinedColor }}
|
||||||
|
style="border-color: {{.color}};"
|
||||||
|
{{ end }}
|
||||||
|
></span>
|
||||||
|
</span>
|
||||||
|
<div class="circular-progress-value">{{ .name }}</div>
|
||||||
|
</div>
|
||||||
|
{{ end }}
|
||||||
|
</div>
|
|
@ -1,3 +1,4 @@
|
||||||
|
{{/* TODO: Delete this file in version v4+ */}}
|
||||||
<div class="col-6 col-lg-4 p-2">
|
<div class="col-6 col-lg-4 p-2">
|
||||||
{{ $predefinedColor:= true}}
|
{{ $predefinedColor:= true}}
|
||||||
{{ if hasPrefix .color "#"}}
|
{{ if hasPrefix .color "#"}}
|
||||||
|
|
|
@ -5,14 +5,14 @@
|
||||||
|
|
||||||
<div class="dropdown languageSelector">
|
<div class="dropdown languageSelector">
|
||||||
<a class="btn dropdown-toggle" href="#" id="languageSelector" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
<a class="btn dropdown-toggle" href="#" id="languageSelector" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
{{ $countryCode := partial "helpers/country-code.html" .Language }}
|
{{ $countryCode := partial "helpers/country-code.html" . }}
|
||||||
<img class="flag" src="https://www.countryflags.io/{{ $countryCode }}/flat/16.png" alt="{{ $countryCode }}">
|
<img class="flag" src="https://www.countryflags.io/{{ $countryCode }}/flat/16.png" alt="{{ $countryCode }}">
|
||||||
{{ site.Language.LanguageName }}
|
{{ site.Language.LanguageName }}
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-menu" aria-labelledby="languageSelector">
|
<div class="dropdown-menu" aria-labelledby="languageSelector">
|
||||||
{{ range .Translations }}
|
{{ range .Translations }}
|
||||||
<a class="dropdown-item nav-link languages-item" href="{{ path.Join "/" (cond (eq .Language.Lang "en") "" .Language.Lang) $pageURL }}">
|
<a class="dropdown-item nav-link languages-item" href="{{ path.Join "/" (cond (eq .Language.Lang "en") "" .Language.Lang) $pageURL }}">
|
||||||
{{ $countryCode := partial "helpers/country-code.html" .Language }}
|
{{ $countryCode := partial "helpers/country-code.html" . }}
|
||||||
<img class="flag" src="https://www.countryflags.io/{{ $countryCode }}/flat/24.png" alt="{{ $countryCode }}">
|
<img class="flag" src="https://www.countryflags.io/{{ $countryCode }}/flat/24.png" alt="{{ $countryCode }}">
|
||||||
{{ .Language.LanguageName }}
|
{{ .Language.LanguageName }}
|
||||||
</a>
|
</a>
|
||||||
|
|
|
@ -5,14 +5,14 @@
|
||||||
|
|
||||||
<li class="nav-item dropdown">
|
<li class="nav-item dropdown">
|
||||||
<a class="nav-link dropdown-toggle" href="#" id="languageSelector" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
<a class="nav-link dropdown-toggle" href="#" id="languageSelector" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
{{ $countryCode := partial "helpers/country-code.html" .Language }}
|
{{ $countryCode := partial "helpers/country-code.html" . }}
|
||||||
<span class="flag-icon flag-icon-{{$countryCode}}"></span>
|
<span class="flag-icon flag-icon-{{$countryCode}}"></span>
|
||||||
{{ site.Language.LanguageName }}
|
{{ site.Language.LanguageName }}
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-menu" aria-labelledby="languageSelector">
|
<div class="dropdown-menu" aria-labelledby="languageSelector">
|
||||||
{{ range .Translations }}
|
{{ range .Translations }}
|
||||||
<a class="dropdown-item nav-link languages-item" href="{{ path.Join "/" (cond (eq .Language.Lang "en") "" .Language.Lang) $pageURL }}">
|
<a class="dropdown-item nav-link languages-item" href="{{ path.Join "/" (cond (eq .Language.Lang "en") "" .Language.Lang) $pageURL }}">
|
||||||
{{ $countryCode := partial "helpers/country-code.html" .Language }}
|
{{ $countryCode := partial "helpers/country-code.html" . }}
|
||||||
<span class="flag-icon flag-icon-{{$countryCode}}"></span>
|
<span class="flag-icon flag-icon-{{$countryCode}}"></span>
|
||||||
{{ .Language.LanguageName }}
|
{{ .Language.LanguageName }}
|
||||||
</a>
|
</a>
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
<li class="nav-item dropdown">
|
<li class="nav-item dropdown">
|
||||||
<a class="nav-link dropdown-toggle" href="#" id="languageSelector" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
<a class="nav-link dropdown-toggle" href="#" id="languageSelector" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
{{ $countryCode := partial "helpers/country-code.html" .Language }}
|
{{ $countryCode := partial "helpers/country-code.html" . }}
|
||||||
<span class="flag-icon flag-icon-{{$countryCode}}"></span>
|
<span class="flag-icon flag-icon-{{$countryCode}}"></span>
|
||||||
{{ site.Language.LanguageName }}
|
{{ site.Language.LanguageName }}
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-menu" aria-labelledby="languageSelector">
|
<div class="dropdown-menu" aria-labelledby="languageSelector">
|
||||||
{{ range site.Home.AllTranslations }}
|
{{ range site.Home.AllTranslations }}
|
||||||
<a class="dropdown-item nav-link languages-item" href="{{ .RelPermalink }}">
|
<a class="dropdown-item nav-link languages-item" href="{{ .RelPermalink }}">
|
||||||
{{ $countryCode := partial "helpers/country-code.html" .Language }}
|
{{ $countryCode := partial "helpers/country-code.html" . }}
|
||||||
<span class="flag-icon flag-icon-{{$countryCode}}"></span>
|
<span class="flag-icon flag-icon-{{$countryCode}}"></span>
|
||||||
{{ .Language.LanguageName }}
|
{{ .Language.LanguageName }}
|
||||||
</a>
|
</a>
|
||||||
|
|
|
@ -1,28 +1,31 @@
|
||||||
{{/* default logos */}}
|
{{/* by default, don't use any logo */}}
|
||||||
{{ $mainLogo := "/images/main-logo.png" }}
|
{{ $mainLogo := "" }}
|
||||||
{{ $invertedLogo := "/images/inverted-logo.png" }}
|
{{ $invertedLogo := "" }}
|
||||||
|
|
||||||
{{/* if custom logo has been provided in the config file, then use them */}}
|
{{/* if custom logo has been provided, use them */}}
|
||||||
{{ if site.Params.logo.main }}
|
{{ if site.Params.logo.main }}
|
||||||
{{ $mainLogo = site.Params.logo.main }}
|
{{ $mainLogo = site.Params.logo.main }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{ if site.Params.logo.inverted }}
|
{{ if site.Params.logo.inverted }}
|
||||||
{{ $invertedLogo = site.Params.logo.inverted }}
|
{{ $invertedLogo = site.Params.logo.inverted }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{/* resize the logos. don't resize svg because it is not supported */}}
|
{{/* resize the logos. don't resize svg because it is not supported */}}
|
||||||
{{ $mainLogo := resources.Get $mainLogo}}
|
{{ if $mainLogo }}
|
||||||
{{ if and $mainLogo (ne $mainLogo.MediaType.SubType "svg") }}
|
{{ $mainLogo = resources.Get $mainLogo}}
|
||||||
{{ $mainLogo = $mainLogo.Resize "42x" }}
|
{{ if and $mainLogo (ne $mainLogo.MediaType.SubType "svg") }}
|
||||||
|
{{ $mainLogo = $mainLogo.Resize "42x" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ $mainLogo = $mainLogo.RelPermalink}}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ $mainLogo = $mainLogo.RelPermalink}}
|
|
||||||
|
|
||||||
{{ $invertedLogo := resources.Get $invertedLogo}}
|
{{ if $invertedLogo }}
|
||||||
{{ if and $invertedLogo (ne $invertedLogo.MediaType.SubType "svg") }}
|
{{ $invertedLogo = resources.Get $invertedLogo}}
|
||||||
{{ $invertedLogo = $invertedLogo.Resize "42x" }}
|
{{ if and $invertedLogo (ne $invertedLogo.MediaType.SubType "svg")}}
|
||||||
|
{{ $invertedLogo = $invertedLogo.Resize "42x" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ $invertedLogo = $invertedLogo.RelPermalink}}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ $invertedLogo = $invertedLogo.RelPermalink}}
|
|
||||||
|
|
||||||
<nav class="navbar navbar-expand-xl top-navbar final-navbar shadow">
|
<nav class="navbar navbar-expand-xl top-navbar final-navbar shadow">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
|
@ -30,7 +33,9 @@
|
||||||
<span class="navbar-toggler-icon"></span>
|
<span class="navbar-toggler-icon"></span>
|
||||||
</button>
|
</button>
|
||||||
<a class="navbar-brand" href="{{ site.BaseURL | relLangURL }}">
|
<a class="navbar-brand" href="{{ site.BaseURL | relLangURL }}">
|
||||||
<img src="{{ $mainLogo }}" alt="Logo">
|
{{ if $mainLogo }}
|
||||||
|
<img src="{{ $mainLogo }}" alt="Logo">
|
||||||
|
{{ end }}
|
||||||
{{- site.Title -}}
|
{{- site.Title -}}
|
||||||
</a>
|
</a>
|
||||||
<button class="navbar-toggler navbar-light" id="toc-toggler" type="button" onclick="toggleTOC()">
|
<button class="navbar-toggler navbar-light" id="toc-toggler" type="button" onclick="toggleTOC()">
|
||||||
|
@ -46,6 +51,10 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- Store the logo information in a hidden img for the JS -->
|
<!-- Store the logo information in a hidden img for the JS -->
|
||||||
<img src="{{ $mainLogo }}" class="d-none" id="main-logo" alt="Logo">
|
{{ if $mainLogo }}
|
||||||
<img src="{{ $invertedLogo }}" class="d-none" id="inverted-logo" alt="Inverted Logo">
|
<img src="{{ $mainLogo }}" class="d-none" id="main-logo" alt="Logo">
|
||||||
|
{{ end }}
|
||||||
|
{{ if $invertedLogo }}
|
||||||
|
<img src="{{ $invertedLogo }}" class="d-none" id="inverted-logo" alt="Inverted Logo">
|
||||||
|
{{ end }}
|
||||||
</nav>
|
</nav>
|
||||||
|
|
|
@ -7,11 +7,11 @@
|
||||||
{{ $blogEnabled = true }}
|
{{ $blogEnabled = true }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{/* default logos */}}
|
{{/* by default, don't use any logo */}}
|
||||||
{{ $mainLogo := "/images/main-logo.png" }}
|
{{ $mainLogo := "" }}
|
||||||
{{ $invertedLogo := "/images/inverted-logo.png" }}
|
{{ $invertedLogo := "" }}
|
||||||
|
|
||||||
{{/* if custom logo is used, them */}}
|
{{/* if custom logo has been provided, use them */}}
|
||||||
{{ if site.Params.logo.main }}
|
{{ if site.Params.logo.main }}
|
||||||
{{ $mainLogo = site.Params.logo.main }}
|
{{ $mainLogo = site.Params.logo.main }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
@ -20,17 +20,21 @@
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{/* resize the logos. don't resize svg because it is not supported */}}
|
{{/* resize the logos. don't resize svg because it is not supported */}}
|
||||||
{{ $mainLogo := resources.Get $mainLogo}}
|
{{ if $mainLogo }}
|
||||||
{{ if and $mainLogo (ne $mainLogo.MediaType.SubType "svg") }}
|
{{ $mainLogo = resources.Get $mainLogo}}
|
||||||
{{ $mainLogo = $mainLogo.Resize "42x" }}
|
{{ if and $mainLogo (ne $mainLogo.MediaType.SubType "svg") }}
|
||||||
|
{{ $mainLogo = $mainLogo.Resize "42x" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ $mainLogo = $mainLogo.RelPermalink}}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ $mainLogo = $mainLogo.RelPermalink}}
|
|
||||||
|
|
||||||
{{ $invertedLogo := resources.Get $invertedLogo}}
|
{{ if $invertedLogo }}
|
||||||
{{ if and $invertedLogo (ne $invertedLogo.MediaType.SubType "svg")}}
|
{{ $invertedLogo = resources.Get $invertedLogo}}
|
||||||
{{ $invertedLogo = $invertedLogo.Resize "42x" }}
|
{{ if and $invertedLogo (ne $invertedLogo.MediaType.SubType "svg")}}
|
||||||
|
{{ $invertedLogo = $invertedLogo.Resize "42x" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ $invertedLogo = $invertedLogo.RelPermalink}}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ $invertedLogo = $invertedLogo.RelPermalink}}
|
|
||||||
|
|
||||||
{{ $customMenus := site.Params.customMenus }}
|
{{ $customMenus := site.Params.customMenus }}
|
||||||
{{ if (index site.Data site.Language.Lang).site.customMenus }}
|
{{ if (index site.Data site.Language.Lang).site.customMenus }}
|
||||||
|
@ -45,7 +49,9 @@
|
||||||
<nav class="navbar navbar-expand-xl top-navbar initial-navbar" id="top-navbar">
|
<nav class="navbar navbar-expand-xl top-navbar initial-navbar" id="top-navbar">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<a class="navbar-brand" href="{{ site.BaseURL | relLangURL }}">
|
<a class="navbar-brand" href="{{ site.BaseURL | relLangURL }}">
|
||||||
<img src="{{ $invertedLogo }}" id="logo" alt="Logo">
|
{{ if $invertedLogo }}
|
||||||
|
<img src="{{ $invertedLogo }}" id="logo" alt="Logo">
|
||||||
|
{{ end }}
|
||||||
{{- site.Title -}}
|
{{- site.Title -}}
|
||||||
</a>
|
</a>
|
||||||
<button
|
<button
|
||||||
|
@ -119,6 +125,10 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- Store the logo information in a hidden img for the JS -->
|
<!-- Store the logo information in a hidden img for the JS -->
|
||||||
<img src="{{ $mainLogo }}" class="d-none" id="main-logo" alt="Logo">
|
{{ if $mainLogo }}
|
||||||
<img src="{{ $invertedLogo }}" class="d-none" id="inverted-logo" alt="Inverted Logo">
|
<img src="{{ $mainLogo }}" class="d-none" id="main-logo" alt="Logo">
|
||||||
|
{{ end }}
|
||||||
|
{{ if $invertedLogo }}
|
||||||
|
<img src="{{ $invertedLogo }}" class="d-none" id="inverted-logo" alt="Inverted Logo">
|
||||||
|
{{ end }}
|
||||||
</nav>
|
</nav>
|
||||||
|
|
|
@ -1,33 +1,39 @@
|
||||||
|
{{ $curPage := . }}
|
||||||
|
{{ $prevPage := "" }}
|
||||||
|
{{ $nextPage := "" }}
|
||||||
|
|
||||||
|
<!-- List all the pages. It uses the sidebar menu to discover the page order. -->
|
||||||
|
{{ $pages := partial "helpers/get-pages.html" site.Menus.sidebar }}
|
||||||
|
|
||||||
|
<!-- Now, find the current page index in the pages list. Then, find previous page and next page. -->
|
||||||
|
{{ $idx := 0 }}
|
||||||
|
{{ range $pages }}
|
||||||
|
{{ if eq .RelPermalink $curPage.RelPermalink }}
|
||||||
|
{{ $prevPage = index $pages (sub $idx 1) }}
|
||||||
|
{{ $nextPage = index $pages (add $idx 1) }}
|
||||||
|
{{ end }}
|
||||||
|
{{ $idx = add $idx 1 }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
<div class="row next-prev-navigator">
|
<div class="row next-prev-navigator">
|
||||||
{{ $currentPage := . }}
|
{{ if $prevPage }}
|
||||||
{{ range (where site.RegularPages.ByDate "Type" "in" site.Params.mainSections )}}
|
<div class="col-md-6 previous-article">
|
||||||
{{ if eq .RelPermalink $currentPage.RelPermalink }}
|
<a href="{{ $prevPage.RelPermalink }}" title="{{ $prevPage.Title }}" class="btn btn-outline-info">
|
||||||
{{ if .Next }}
|
<div><i class="fas fa-chevron-circle-left"></i> {{ i18n "prev" }}</div>
|
||||||
{{ if (in site.Params.mainSections .Next.Type) }}
|
<div class="next-prev-text">{{ $prevPage.Title }}</div>
|
||||||
<div class="col-md-6 previous-article">
|
</a>
|
||||||
<a href="{{.Next.RelPermalink}}" title="{{ .Next.Title }}" class="btn btn-outline-info">
|
</div>
|
||||||
<div><i class="fas fa-chevron-circle-left"></i> {{ i18n "prev" }}</div>
|
{{ end }}
|
||||||
<div class="next-prev-text">{{ .Next.Title }}</div>
|
{{ if $nextPage }}
|
||||||
|
{{ $columnWidth:="col-md-12" }}
|
||||||
|
{{ if $prevPage }}
|
||||||
|
{{ $columnWidth = "col-md-6" }}
|
||||||
|
{{ end}}
|
||||||
|
<div class="{{ $columnWidth }} next-article">
|
||||||
|
<a href="{{ $nextPage.RelPermalink }}" title="{{ $nextPage.Title }}" class="btn btn-outline-info">
|
||||||
|
<div>{{ i18n "next" }} <i class="fas fa-chevron-circle-right"></i></div>
|
||||||
|
<div class="next-prev-text">{{ $nextPage.Title }}</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{{ end }}
|
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ if .Prev }}
|
|
||||||
{{ if (in site.Params.mainSections .Prev.Type) }}
|
|
||||||
{{ $columnWidth:="col-md-12" }}
|
|
||||||
{{ if .Next }}
|
|
||||||
{{ if (in site.Params.mainSections .Next.Type) }}
|
|
||||||
{{ $columnWidth = "col-md-6" }}
|
|
||||||
{{ end }}
|
|
||||||
{{ end}}
|
|
||||||
<div class="{{ $columnWidth }} next-article">
|
|
||||||
<a href="{{ .Prev.RelPermalink }}" title="{{ .Prev.Title }}" class="btn btn-outline-info">
|
|
||||||
<div>{{ i18n "next" }} <i class="fas fa-chevron-circle-right"></i></div>
|
|
||||||
<div class="next-prev-text">{{ .Prev.Title }}</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
{{ end }}
|
|
||||||
{{ end }}
|
|
||||||
{{ end }}
|
|
||||||
{{ end }}
|
|
||||||
</div>
|
</div>
|
||||||
|
|
12
layouts/partials/opengraph.html
Normal file
12
layouts/partials/opengraph.html
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
{{ $title := (index site.Data site.Language.Lang).site.openGraph.title | default site.Title }}
|
||||||
|
{{ $type := (index site.Data site.Language.Lang).site.openGraph.type | default "website" }}
|
||||||
|
{{ $description := (index site.Data site.Language.Lang).site.openGraph.description | default (index site.Data site.Language.Lang).site.description }}
|
||||||
|
{{ $image := (index site.Data site.Language.Lang).site.openGraph.image | default (index site.Data site.Language.Lang).author.image }}
|
||||||
|
{{ $url := (index site.Data site.Language.Lang).site.openGraph.url | default site.BaseURL }}
|
||||||
|
|
||||||
|
<!-- ============ open graph tags ========== -->
|
||||||
|
<meta property="og:title" content="{{ $title }}"/>
|
||||||
|
<meta property="og:type" content="{{ $type }}"/>
|
||||||
|
<meta property="og:description" content="{{ $description }}"/>
|
||||||
|
<meta property="og:image" content="{{ $image | absURL }}">
|
||||||
|
<meta property="og:url" content="{{ $url }}">
|
|
@ -48,6 +48,11 @@
|
||||||
<!-- soft skills circular-progressbar -->
|
<!-- soft skills circular-progressbar -->
|
||||||
<div class="col-sm-6 pt-5 pl-md-4 pl-sm-3 pt-sm-0">
|
<div class="col-sm-6 pt-5 pl-md-4 pl-sm-3 pt-sm-0">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
{{ range .badges }}
|
||||||
|
{{ partial "misc/badge.html" . }}
|
||||||
|
{{ end }}
|
||||||
|
<!-- TODO: Remove this part in version v4+ -->
|
||||||
|
<!-- Keep backward compatibility with old configuration -->
|
||||||
{{ range .softSkills }}
|
{{ range .softSkills }}
|
||||||
{{ partial "misc/soft-skills.html" . }}
|
{{ partial "misc/soft-skills.html" . }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
{{ $authorImage = $author.image }}
|
{{ $authorImage = $author.image }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ $authorImage := resources.Get $authorImage }}
|
{{ $authorImage := resources.Get $authorImage }}
|
||||||
{{ $authorImage := $authorImage.Fit "148x148" }}
|
{{ $authorImage = $authorImage.Fit "148x148" }}
|
||||||
|
|
||||||
{{/* get file that matches the filename as specified as src="" in shortcode */}}
|
{{/* get file that matches the filename as specified as src="" in shortcode */}}
|
||||||
{{ $src := resources.Get $backgroundImage }}
|
{{ $src := resources.Get $backgroundImage }}
|
||||||
|
@ -110,6 +110,9 @@
|
||||||
alt="Author Image"
|
alt="Author Image"
|
||||||
/>
|
/>
|
||||||
<h1 class="greeting"> {{ $author.greeting }} {{ $name }}</h1>
|
<h1 class="greeting"> {{ $author.greeting }} {{ $name }}</h1>
|
||||||
|
{{ if $author.subtitle }}
|
||||||
|
<h2 class="greeting-subtitle">{{ $author.subtitle }}</h2>
|
||||||
|
{{ end }}
|
||||||
<div class="typing-carousel">
|
<div class="typing-carousel">
|
||||||
<span id="ityped" class="ityped"></span>
|
<span id="ityped" class="ityped"></span>
|
||||||
<span class="ityped-cursor"></span>
|
<span class="ityped-cursor"></span>
|
||||||
|
|
1796
package-lock.json
generated
1796
package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
@ -17,7 +17,8 @@
|
||||||
},
|
},
|
||||||
"homepage": "https://github.com/hossainemruz/toha#readme",
|
"homepage": "https://github.com/hossainemruz/toha#readme",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"autoprefixer": "^9.8.6",
|
"autoprefixer": "^10.2.6",
|
||||||
"postcss-cli": "^7.1.2"
|
"postcss": "^8.3.4",
|
||||||
|
"postcss-cli": "^8.3.1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -170,7 +170,7 @@ img.right {
|
||||||
|
|
||||||
.flag-icon {
|
.flag-icon {
|
||||||
width: 16px !important;
|
width: 16px !important;
|
||||||
margin-top: 5px;
|
margin-top: 3px;
|
||||||
margin-right: 3px;
|
margin-right: 3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -339,6 +339,14 @@ mark {
|
||||||
background-color: #e5e9f2;
|
background-color: #e5e9f2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.footer #disclaimer{
|
||||||
|
color: #8392a5 !important;
|
||||||
|
text-align: justify;
|
||||||
|
}
|
||||||
|
.footer #disclaimer>strong{
|
||||||
|
color: #c0ccda!important;
|
||||||
|
}
|
||||||
|
|
||||||
.footer #theme {
|
.footer #theme {
|
||||||
color: #c0ccda;
|
color: #c0ccda;
|
||||||
}
|
}
|
||||||
|
@ -424,16 +432,29 @@ mark {
|
||||||
code {
|
code {
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-size: 2.2rem;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* iPhoneX, iPhone 6,7,8 */
|
/* iPhoneX, iPhone 6,7,8 */
|
||||||
@media only screen and (max-width: 375px) {
|
@media only screen and (max-width: 375px) {
|
||||||
|
h1 {
|
||||||
|
font-size: 2rem;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Galaxy S5, Moto G4 */
|
/* Galaxy S5, Moto G4 */
|
||||||
@media only screen and (max-width: 360px) {
|
@media only screen and (max-width: 360px) {
|
||||||
|
h1 {
|
||||||
|
font-size: 1.8rem;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* iPhone 5 or before */
|
/* iPhone 5 or before */
|
||||||
@media only screen and (max-width: 320px) {
|
@media only screen and (max-width: 320px) {
|
||||||
|
h1 {
|
||||||
|
font-size: 1.5rem;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,6 @@ body {
|
||||||
}
|
}
|
||||||
|
|
||||||
.toc-holder {
|
.toc-holder {
|
||||||
position: -webkit-sticky;
|
|
||||||
position: sticky;
|
position: sticky;
|
||||||
top: 4.5rem;
|
top: 4.5rem;
|
||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
|
|
|
@ -8,7 +8,6 @@
|
||||||
|
|
||||||
.sidebar-holder {
|
.sidebar-holder {
|
||||||
top: 2.5rem;
|
top: 2.5rem;
|
||||||
position: -webkit-sticky;
|
|
||||||
position: sticky;
|
position: sticky;
|
||||||
background-color: #f9fafc;
|
background-color: #f9fafc;
|
||||||
height: 100vh;
|
height: 100vh;
|
||||||
|
@ -192,7 +191,6 @@ a.focused {
|
||||||
transition: all ease-out 0.3s;
|
transition: all ease-out 0.3s;
|
||||||
}
|
}
|
||||||
.sidebar-holder {
|
.sidebar-holder {
|
||||||
position: -webkit-sticky;
|
|
||||||
position: sticky;
|
position: sticky;
|
||||||
top: 2.5rem;
|
top: 2.5rem;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
@ -222,7 +220,6 @@ a.focused {
|
||||||
transition: all ease-out 0.3s;
|
transition: all ease-out 0.3s;
|
||||||
}
|
}
|
||||||
.sidebar-holder {
|
.sidebar-holder {
|
||||||
position: -webkit-sticky;
|
|
||||||
position: sticky;
|
position: sticky;
|
||||||
top: 2.5rem;
|
top: 2.5rem;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
|
@ -496,11 +496,24 @@
|
||||||
.about-section.container {
|
.about-section.container {
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.circular-progress {
|
||||||
|
width: 135px;
|
||||||
|
height: 135px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Small devices (landscape phones, 576px and up) */
|
/* Small devices (landscape phones, 576px and up) */
|
||||||
|
|
||||||
@media only screen and (max-width: 576px) {
|
@media only screen and (max-width: 576px) {
|
||||||
|
.circular-progress {
|
||||||
|
width: 150px;
|
||||||
|
height: 150px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.circular-progress .circular-progress-value {
|
||||||
|
font-size: 1rem;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* iPhoneX, iPhone 6,7,8 */
|
/* iPhoneX, iPhone 6,7,8 */
|
||||||
|
@ -513,4 +526,12 @@
|
||||||
|
|
||||||
/* iPhone 5 or before */
|
/* iPhone 5 or before */
|
||||||
@media only screen and (max-width: 320px) {
|
@media only screen and (max-width: 320px) {
|
||||||
|
.col-6 {
|
||||||
|
flex: auto;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.social-link {
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,7 +45,7 @@
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.home .greeting {
|
.home .greeting, .home .greeting-subtitle {
|
||||||
color: #f9fafc;
|
color: #f9fafc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
.skills-section .card {
|
.skills-section .card {
|
||||||
margin-top: 0.5rem;
|
margin-top: 0.5rem;
|
||||||
margin-bottom: 0.5rem;
|
margin-bottom: 0.5rem;
|
||||||
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.skills-section .card .card-body {
|
.skills-section .card .card-body {
|
||||||
|
@ -57,7 +58,7 @@
|
||||||
padding-right: 0;
|
padding-right: 0;
|
||||||
}
|
}
|
||||||
.skills-section .container {
|
.skills-section .container {
|
||||||
max-width: 100%;
|
max-width: 95%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -63,28 +63,6 @@ var projectCards;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// ==================== Adjust height of the skills card =============
|
|
||||||
function adjustSkillCardsHeight() {
|
|
||||||
if (!isMobile) { // no need to adjust height for mobile devices
|
|
||||||
// primary skills
|
|
||||||
var skillCards = document.getElementById("primary-skills");
|
|
||||||
if (skillCards != null) {
|
|
||||||
var cardElems = skillCards.getElementsByClassName("card");
|
|
||||||
var maxHeight = 0;
|
|
||||||
for (let i = 0; i < cardElems.length; i++) {
|
|
||||||
if (cardElems.item(i).clientHeight > maxHeight) {
|
|
||||||
maxHeight = cardElems.item(i).clientHeight;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
for (let i = 0; i < cardElems.length; i++) {
|
|
||||||
cardElems.item(i).setAttribute("style", "min-height: " + maxHeight + "px;");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$(window).on("load", function () {
|
|
||||||
adjustSkillCardsHeight();
|
|
||||||
});
|
|
||||||
|
|
||||||
// ================== Project cards =====================
|
// ================== Project cards =====================
|
||||||
// Add click action on project category selector buttons
|
// Add click action on project category selector buttons
|
||||||
|
@ -331,13 +309,13 @@ var projectCards;
|
||||||
this.parentElement.classList.toggle("col-sm-12");
|
this.parentElement.classList.toggle("col-sm-12");
|
||||||
if (this.children["SmallImage"].hasAttribute("active")) {
|
if (this.children["SmallImage"].hasAttribute("active")) {
|
||||||
let mainLogo = this.children["LargeImage"].getAttribute("Style");
|
let mainLogo = this.children["LargeImage"].getAttribute("Style");
|
||||||
this.children["LargeImage"].setAttribute("active",true);
|
this.children["LargeImage"].setAttribute("active", true);
|
||||||
this.children["SmallImage"].removeAttribute("active");
|
this.children["SmallImage"].removeAttribute("active");
|
||||||
|
|
||||||
this.setAttribute("Style", mainLogo);
|
this.setAttribute("Style", mainLogo);
|
||||||
} else {
|
} else {
|
||||||
let mainLogo = this.children["SmallImage"].getAttribute("Style");
|
let mainLogo = this.children["SmallImage"].getAttribute("Style");
|
||||||
this.children["SmallImage"].setAttribute("active",true);
|
this.children["SmallImage"].setAttribute("active", true);
|
||||||
this.children["LargeImage"].removeAttribute("active");
|
this.children["LargeImage"].removeAttribute("active");
|
||||||
this.setAttribute("Style", mainLogo);
|
this.setAttribute("Style", mainLogo);
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,8 +16,12 @@
|
||||||
$('#navbar-toggler').addClass('navbar-light');
|
$('#navbar-toggler').addClass('navbar-light');
|
||||||
|
|
||||||
// get the main logo from hidden img tag
|
// get the main logo from hidden img tag
|
||||||
let mainLogo = document.getElementById("main-logo").getAttribute("src");
|
let mainLogo = document.getElementById("main-logo")
|
||||||
$('#logo').attr("src", mainLogo);
|
if (mainLogo !== null) {
|
||||||
|
let logoURL = mainLogo.getAttribute("src");
|
||||||
|
$('#logo').attr("src", logoURL);
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$('#top-navbar').removeClass('final-navbar shadow');
|
$('#top-navbar').removeClass('final-navbar shadow');
|
||||||
$('#top-navbar').addClass('initial-navbar');
|
$('#top-navbar').addClass('initial-navbar');
|
||||||
|
@ -26,8 +30,11 @@
|
||||||
$('#navbar-toggler').addClass('navbar-dark');
|
$('#navbar-toggler').addClass('navbar-dark');
|
||||||
|
|
||||||
// get the inverted logo from hidden img tag
|
// get the inverted logo from hidden img tag
|
||||||
let invertedLogo = document.getElementById("inverted-logo").getAttribute("src");
|
let invertedLogo = document.getElementById("inverted-logo")
|
||||||
$('#logo').attr("src", invertedLogo);
|
if (invertedLogo !== null) {
|
||||||
|
let logoURL = invertedLogo.getAttribute("src");
|
||||||
|
$('#logo').attr("src", logoURL);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@ if(searchQuery){
|
||||||
|
|
||||||
|
|
||||||
function executeSearch(searchQuery){
|
function executeSearch(searchQuery){
|
||||||
$.getJSON( "/index.json", function( data ) {
|
$.getJSON( window.location.href.split("/search/")[0] + "/index.json", function( data ) {
|
||||||
var pages = data;
|
var pages = data;
|
||||||
var fuse = new Fuse(pages, fuseOptions);
|
var fuse = new Fuse(pages, fuseOptions);
|
||||||
var result = fuse.search(searchQuery);
|
var result = fuse.search(searchQuery);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue