78 Commits

Author SHA1 Message Date
安红豆 4e029b7de8 Add utteranc comment plugin (#465)
* add comment plugin utteranc(save message to github issue)

config.yml
    # Enable comment feature. There, should be only one of them.
    comment:
      enable: true
      utteranc:
        repo: ormissia/ormissia.github.io
        issueTerm: title
        theme: github-light

* Update utteranc.html
2021-11-18 23:17:46 +06:00
Emruz Hossain 3cd9c910f7 Find Linked Issues to a PR (#456)
* Find Linked Issues to a PR

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Add issue parser workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Add custom action

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update linked_issues workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-11-04 21:18:58 +00:00
dependabot[bot] a4e30e80a3 Bump peter-evans/create-pull-request from 3.10.1 to 3.11.0 (#460)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 3.10.1 to 3.11.0.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v3.10.1...v3.11.0)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-04 11:04:26 +00:00
dependabot[bot] 5d3f195c00 Bump actions/checkout from 2.3.5 to 2.4.0 (#458)
Bumps [actions/checkout](https://github.com/actions/checkout) from 2.3.5 to 2.4.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2.3.5...v2.4.0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-03 11:09:41 +00:00
Emruz Hossain 8dbe04b95d Add issue parser workflow 2021-11-03 00:09:45 +06:00
Emruz Hossain cac27fc8c4 Fix issue automation workflow 2021-11-02 00:57:38 +06:00
Emruz Hossain b9d6b6612c Update workflow 2021-11-02 00:54:53 +06:00
Emruz Hossain 0d1bd1f9f4 Update Issue Automation (#454)
* Update Issue Automation

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Add connected event

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflows

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-11-02 00:49:36 +06:00
Emruz Hossain b28d8e93cf Add connected event for issues 2021-11-01 23:08:17 +06:00
Emruz Hossain 9c8b6bd59b Update issue automation workflow 2021-11-01 22:45:05 +06:00
Emruz Hossain 0773fe303e Update project automation workflow for PR (#452)
* Update project automation workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-10-29 20:33:40 +00:00
Emruz Hossain 32837a0938 Fix disqus comment not working on new configuration style (#451)
* Fix disqus comment not working on new configuration style

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Fix LOC badge

Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-10-29 16:37:46 +00:00
hossainemruz 8e7e195b91 Fix issue workflow
Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-10-29 05:02:56 +06:00
Emruz Hossain 232e5d2f3a Add project automation workflow (#447)
* Add project automation workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Print project_data.json

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update project automation

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update workflow

Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-10-29 05:00:37 +06:00
github-actions[bot] 2ffc0c7a9c add vendor specific css prefixes (#448)
Co-authored-by: kodiakhq[bot] <kodiakhq[bot]@users.noreply.github.com>
2021-10-28 21:30:02 +06:00
Emily 098179ec1f Add valine comment system support (#446)
* feat: add valine support

* Adjust the comment config

* Adjust the comment config

* Make comment section backward compatible with old config

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

Co-authored-by: hossainemruz <hossainemruz@gmail.com>
2021-10-28 15:11:25 +00:00
Florian ANCEAU ff86f78b4d Fix badge display when name is too long (#445) 2021-10-21 09:18:12 +00:00
github-actions[bot] b5c3713277 add vendor specific css prefixes (#444)
Co-authored-by: kodiakhq[bot] <kodiakhq[bot]@users.noreply.github.com>
2021-10-21 01:12:40 +06:00
Pablo Marcos ad149f4d80 Fixed absLangURL issue with sections in footer (#442)
* Add Blogtrottr as newsletter provider

* Fixed absLangURL issue with sections in footer

Co-authored-by: Pablo Marcos <codebergflamingo@staplehorse.anonaddy.com>
2021-10-20 19:00:17 +00:00
Emruz Hossain 35c6586412 Fix unwanted margin on topbar (#438)
Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-10-18 18:24:28 +00:00
Reyhan 6e41689c06 Fixed section landing position on navigation #154 (#436)
* Fixed alignment issue in tables under education(#233)

* Fixed section landing position on navigation

Co-authored-by: Emruz Hossain <hossainemruz@gmail.com>
2021-10-18 18:16:10 +00:00
dependabot[bot] f779ac4ebb Bump actions/checkout from 2.3.4 to 2.3.5 (#437)
Bumps [actions/checkout](https://github.com/actions/checkout) from 2.3.4 to 2.3.5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2.3.4...v2.3.5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-18 11:04:32 +00:00
Reyhan adf5d52ab3 Fixed alignment issue in tables under education(#233) (#434) 2021-10-12 17:10:04 +00:00
github-actions[bot] ba997ff4c5 Update and run autoprefixer #432
Co-authored-by: kodiakhq[bot] <kodiakhq[bot]@users.noreply.github.com>
2021-10-08 00:04:31 +06:00
Jai Vaidya 7b604b30e5 Added smoother effects to the navbar (#429) 2021-10-07 17:46:16 +00:00
github-actions[bot] 8a8c0ec9fd Update and run autoprefixer (#425)
Co-authored-by: kodiakhq[bot] <kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-09-29 05:55:44 +00:00
BoT 6e849034ac Update Simplified Chinese and Traditional Chinese. (#427)
Signed-off-by: Ray <Chow-Ray@outlook.com>
2021-09-29 05:54:39 +00:00
dependabot[bot] 41b1106703 Bump actions/setup-node from 2.4.0 to 2.4.1 (#424)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.4.0 to 2.4.1.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.4.0...v2.4.1)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-28 11:04:52 +00:00
Emruz Hossain 20ff5ac182 Update plyrjs (#422)
* Update plyr.js

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Update plyr.css

Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-09-24 18:27:56 +00:00
Emruz Hossain 0072234546 Update dependency for security issue (#421)
Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-09-24 17:59:50 +00:00
github-actions[bot] c0480898ed add vendor specific css prefixes (#420)
Co-authored-by: hossainemruz <hossainemruz@users.noreply.github.com>
2021-09-24 23:46:33 +06:00
Pablo Marcos bb01f1a975 Added some social buttons to the "Post" template (#415)
* Added new 'GitForge' param for non-git repos

* Added some (optional) social buttons

* Small fix for hardcoded values

* Update single.html

* Update look & feel for share buttons

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Fix improve-this-page btn alignment when share-buttons disabled

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

Co-authored-by: Pablo Marcos <codebergflamingo@staplehorse.anonaddy.com>
Co-authored-by: hossainemruz <hossainemruz@gmail.com>
2021-09-24 23:40:41 +06:00
Emruz Hossain 069b0aa328 Fix View certificate Italian translation (#418) 2021-09-16 20:56:57 +00:00
Léo GATELLIER 15c17a471b Add some french translations (#417)
Co-authored-by: Léo GATELLIER <git@leogatellier.fr>
2021-09-10 19:07:40 +00:00
github-actions[bot] cf7c11421b add vendor specific css prefixes (#416)
Co-authored-by: kodiakhq[bot] <kodiakhq[bot]@users.noreply.github.com>
2021-09-08 08:10:26 +06:00
Pablo Marcos e8e23ed9a3 Added new 'GitForge' param for non GitHub repos (#403)
* Added new 'GitForge' param for non-git repos

* Solved comments

Co-authored-by: Pablo Marcos <codebergflamingo@staplehorse.anonaddy.com>
Co-authored-by: Emruz Hossain <hossainemruz@gmail.com>
2021-09-07 18:28:31 +00:00
bbarcesaj125 d155f2063b Corrected the word "Details" and another minor capitalization change. (#413)
* Corrected the word "Details" and another minor capitalitzation change.

* Corrected the word "Details" and another minor capitalization change.
2021-09-02 03:22:59 +00:00
Pablo Marcos c68a0e20af Update es.toml (#409)
Updated after asking for permission in a question :p
2021-08-29 11:15:27 +00:00
github-actions[bot] e2b666c6d1 Update and run autoprefixer (#408)
Co-authored-by: kodiakhq[bot] <kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-08-29 09:08:10 +00:00
github-actions[bot] 02c2483c6c Update and run autoprefixer (#407)
Co-authored-by: hossainemruz <hossainemruz@users.noreply.github.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-08-29 09:07:12 +00:00
dependabot[bot] b06326bbe8 Bump peter-evans/create-pull-request from 3.10.0 to 3.10.1 (#401)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 3.10.0 to 3.10.1.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v3.10.0...v3.10.1)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-08-29 09:06:12 +00:00
Pablo Marcos 4803151e93 Add Blogtrottr as newsletter provider (#402)
Co-authored-by: Pablo Marcos <codebergflamingo@staplehorse.anonaddy.com>
2021-08-29 15:05:16 +06:00
Emruz Hossain 3c62edec20 Fix multiple active menu in taxonomy (#397)
Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-08-16 17:24:56 +00:00
James Ray 7b92452e2b taxonomies - added taxonmies support (#396)
* taxonomies -  added taxonmies support

* taxonomies -  add active class

* Update CSS

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Fix tag link for multilingual mode + add translations

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

Co-authored-by: Emruz Hossain <hossainemruz@gmail.com>
2021-08-16 16:28:30 +00:00
donfiguerres 6d98c15136 Configure the number of posts in recent posts (#395)
* Add configuration to number of recent posts.

* Added default value.

Co-authored-by: donfiguerres <donfiguerres@github.com>
2021-08-14 10:00:35 +00:00
James Ray fc3b483697 Allow setting GIFS as author image (#394)
Co-authored-by: Emruz Hossain <hossainemruz@gmail.com>
2021-08-10 02:39:10 +00:00
James Ray 8c7ae86720 education-line (#393) 2021-08-08 16:34:38 +00:00
dependabot[bot] 8f239a0ddc Bump actions/setup-node from 2.3.2 to 2.4.0 (#391)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.3.2 to 2.4.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.3.2...v2.4.0)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-06 11:03:51 +00:00
dependabot[bot] 990cd7a58b Bump actions/setup-node from 2.3.1 to 2.3.2 (#390)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.3.1 to 2.3.2.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.3.1...v2.3.2)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-05 11:03:55 +00:00
dependabot[bot] d868096c3c Bump actions/setup-node from 2.3.0 to 2.3.1 (#389)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.3.0...v2.3.1)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-04 11:04:46 +00:00
github-actions[bot] d36ecdb810 Update and run autoprefixer (#386)
Co-authored-by: hossainemruz <hossainemruz@users.noreply.github.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-07-30 16:59:28 +00:00
github-actions[bot] 1ed12aacdf Update and run autoprefixer (#384)
Co-authored-by: hossainemruz <hossainemruz@users.noreply.github.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-07-30 16:58:38 +00:00
BoT 03edbac376 Add text link support for disclaimer. (#385)
为免责声明添加文本链接支持。
Fix some Chinese translation.
变更disclaimer翻译为“免责声明”。

Signed-off-by: Ray <Chow-Ray@outlook.com>
2021-07-30 22:57:36 +06:00
BoT f56f3dd176 Translate chinese (#383)
* translate_Chinese

* translate_Chinese

* Improve simplified Chinese translation, modify simplified Chinese and traditional Chinese file names

Signed-off-by: Ray <Chow-Ray@outlook.com>

* Improve simplified Chinese translation, modify simplified Chinese and traditional Chinese file names。

Signed-off-by: Ray <Chow-Ray@outlook.com>
2021-07-29 23:35:35 +06:00
dependabot[bot] ccc67a2a02 Bump actions/setup-node from 2.2.0 to 2.3.0 (#378)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.2.0 to 2.3.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.2.0...v2.3.0)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-21 11:04:14 +00:00
jstehn 3b75961f58 Added svg support for project icons (#376)
Co-authored-by: Jack Stehn <jack.stehn@protonmail.com>
2021-07-15 07:53:28 +00:00
github-actions[bot] 6a55617adc add vendor specific css prefixes (#373)
Co-authored-by: kodiakhq[bot] <kodiakhq[bot]@users.noreply.github.com>
2021-07-14 11:35:40 +06:00
HeiTang ffe40b1cba Add zh.toml (#372) 2021-07-13 04:38:05 +00:00
dependabot[bot] 1a5bbe4eeb Bump gaurav-nelson/github-action-markdown-link-check from 1.0.12 to 1.0.13 (#370)
Bumps [gaurav-nelson/github-action-markdown-link-check](https://github.com/gaurav-nelson/github-action-markdown-link-check) from 1.0.12 to 1.0.13.
- [Release notes](https://github.com/gaurav-nelson/github-action-markdown-link-check/releases)
- [Commits](https://github.com/gaurav-nelson/github-action-markdown-link-check/compare/1.0.12...1.0.13)

---
updated-dependencies:
- dependency-name: gaurav-nelson/github-action-markdown-link-check
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-08 11:04:45 +00:00
William Hou 46952f6ab9 Remove about section whitespace when there are no soft skills/badges (#369)
* Remove about section whitespace when there are no soft skills

* Check for badges in conditional
2021-07-04 15:11:12 +06:00
dependabot[bot] 4099f4f1e6 Bump actions/setup-node from 2.1.5 to 2.2.0 (#367)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.1.5 to 2.2.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.1.5...v2.2.0)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-01 18:14:20 +00:00
hossainemruz dd0c46593c Update release-drafter
Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-06-28 00:11:21 +06:00
Emruz Hossain 14ee45e4a0 Fix Google Analytic not showing up for v3 ID (#363)
Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-06-27 18:00:23 +00:00
Jean-Baptiste Le Duigou 091c77360d Make newsletter helper label clear to complaint with GDPR (#357)
* Fix link to email address

See https://github.com/hossainemruz/toha/issues/7

* ✏️  update newsletter helper to be more GDPR compliant

Signed-off-by: jbleduigou <jb.leduigou@gmail.com>

* Add more translations

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

Co-authored-by: Emruz Hossain <hossainemruz@gmail.com>
2021-06-27 23:42:44 +06:00
github-actions[bot] 884bf65e43 add vendor specific css prefixes (#360)
Co-authored-by: hossainemruz <hossainemruz@users.noreply.github.com>
2021-06-21 10:01:51 +06:00
Jean-Baptiste Le Duigou ebe659b12b 358 error next prev page (#359)
* Fix link to email address

See https://github.com/hossainemruz/toha/issues/7

* 🐛 fix bug with next-prev-navigator when no menus

Signed-off-by: jbleduigou <jb.leduigou@gmail.com>

* 🐛 fix overriding issue

Signed-off-by: jbleduigou <jb.leduigou@gmail.com>
2021-06-20 01:12:03 +06:00
github-actions[bot] efa63e7990 Update and run autoprefixer (#355)
Co-authored-by: kodiakhq[bot] <kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-06-16 19:17:08 +00:00
github-actions[bot] de912c08c6 Update and run autoprefixer (#354)
Co-authored-by: hossainemruz <hossainemruz@users.noreply.github.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-06-16 19:16:13 +00:00
Dan Gillis 0b5bde7233 Support Google Analytics v4 (#353)
Per https://github.com/hugo-toha/toha/issues/352 - in order to support Google Analytics v4, _internal/google_analytics.html should be used

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-06-16 19:15:19 +00:00
vlebert 9004e7c423 Add greeting subtitle (#350)
* resize skillcards by CSS instead of JS

* Revert "resize skillcards by CSS instead of JS"

This reverts commit 169e0599e9.

* french translation

* add an optionnal greeting subtitle

Co-authored-by: vlebert <vlebert@tactis.fr>
2021-06-17 01:14:22 +06:00
Emruz Hossain 61e5a34171 Fix Prev/Next navigator was not pointing to the actual prev/next article (#348)
Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-06-06 15:43:34 +00:00
Antonio Hernández 929a78837a Fix horizontal scrollbar (#347)
* Fixed scrollbar problems related to about section.

* Fixed scrollbar problems related to skill section.

* Making h1 fonts a little bit smaller on small devices.

Co-authored-by: Emruz Hossain <hossainemruz@gmail.com>
2021-06-06 15:56:06 +06:00
vlebert 65a429b664 Use CSS to fix Skill cards height instead JS (#342)
* resize skillcards by CSS instead of JS

* Revert "resize skillcards by CSS instead of JS"

This reverts commit 169e0599e9.

* resize skillcards by CSS instead of JS

Co-authored-by: vlebert <vlebert@tactis.fr>
Co-authored-by: Emruz Hossain <hossainemruz@gmail.com>
2021-06-06 00:14:32 +06:00
Kaligule 08a09d5c71 Disable logo by default + add logo only if the user provide it
* Disable logo by default, allow to enable with params.logo.enable

* Don't default logo into theme logo

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* add missing comma

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

* Remove unnecessary changes

Signed-off-by: hossainemruz <hossainemruz@gmail.com>

Co-authored-by: Johannes Lippmann <johannes.lippmann@paessler.com>
Co-authored-by: hossainemruz <hossainemruz@gmail.com>
2021-06-05 23:58:26 +06:00
vlebert 88a0814025 Fix some french translations (#343)
* resize skillcards by CSS instead of JS

* Revert "resize skillcards by CSS instead of JS"

This reverts commit 169e0599e9.

* french translation

Co-authored-by: vlebert <vlebert@tactis.fr>
2021-06-04 10:30:22 +06:00
vlebert 3421c99ebf Fix ressource.Fit not resizing the image properly
Co-authored-by: vlebert <vlebert@tactis.fr>
2021-06-03 16:09:08 +06:00
Kaligule b5fe77f876 Fix typo in comment (#335)
Co-authored-by: Emruz Hossain <hossainemruz@gmail.com>
2021-06-02 17:22:48 +06:00
Emruz Hossain 6f8280a656 Fix importing user CSS (#338)
Signed-off-by: hossainemruz <hossainemruz@gmail.com>
2021-06-01 16:54:45 +00:00
69 changed files with 1662 additions and 829 deletions
+1 -1
View File
@@ -17,7 +17,7 @@ categories:
- 'feature' - 'feature'
- 'enhancement' - 'enhancement'
- title: 'New Translations' - title: 'Translations'
label: 'translation' label: 'translation'
- title: 'Bug Fixes' - title: 'Bug Fixes'
+3 -3
View File
@@ -8,10 +8,10 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout to latest commit - name: Checkout to latest commit
uses: actions/checkout@v2.3.4 uses: actions/checkout@v2.4.0
- name: Setup Node - name: Setup Node
uses: actions/setup-node@v2.1.5 uses: actions/setup-node@v2.4.1
with: with:
node-version: "15.x" node-version: "15.x"
@@ -21,7 +21,7 @@ jobs:
npm run autoprefixer npm run autoprefixer
- name: Create Pull Request - name: Create Pull Request
uses: peter-evans/create-pull-request@v3.10.0 uses: peter-evans/create-pull-request@v3.11.0
with: with:
branch: autoprefixer branch: autoprefixer
branch-suffix: timestamp branch-suffix: timestamp
+1 -1
View File
@@ -39,7 +39,7 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v2 uses: actions/checkout@v2.4.0
# Initializes the CodeQL tools for scanning. # Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL - name: Initialize CodeQL
+2 -2
View File
@@ -8,6 +8,6 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
# checkout to latest commit # checkout to latest commit
- uses: actions/checkout@master - uses: actions/checkout@v2.4.0
# run markdown linter # run markdown linter
- uses: gaurav-nelson/github-action-markdown-link-check@1.0.12 - uses: gaurav-nelson/github-action-markdown-link-check@1.0.13
@@ -0,0 +1,150 @@
name: Project Automation (Issue)
on:
issues:
types:
- opened
- reopened
- closed
- labeled
- unlabeled
jobs:
issue_automation:
runs-on: ubuntu-latest
steps:
- name: Get project data
env:
GITHUB_TOKEN: ${{secrets.PROJECT_AUTOMATION}}
ORGANIZATION: hugo-toha
PROJECT_NUMBER: 4
run: |
gh api graphql --header 'GraphQL-Features: projects_next_graphql' -f query='
query($org: String!, $number: Int!) {
organization(login: $org){
projectNext(number: $number) {
id
fields(first:20) {
nodes {
id
name
settings
}
}
}
}
}' -f org="$ORGANIZATION" -F number=$PROJECT_NUMBER > project_data.json
echo 'PROJECT_ID='$(jq -r '.data.organization.projectNext.id' project_data.json) >> $GITHUB_ENV
# Read the ID of the "Type" field options
echo 'TYPE_ID='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.id' project_data.json) >> $GITHUB_ENV
echo 'PROJECT_ID='$(jq -r '.data.organization.projectNext.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_ID='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_BUG='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.settings | fromjson.options[] | select(.name=="Bug") |.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_FEATURE='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.settings | fromjson.options[] | select(.name=="Feature") |.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_ENHANCEMENT='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.settings | fromjson.options[] | select(.name=="Enhancement") |.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_DOCUMENTATION='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.settings | fromjson.options[] | select(.name=="Documentation") |.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_TRANSLATION='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.settings | fromjson.options[] | select(.name=="Translation") |.id' project_data.json) >> $GITHUB_ENV
# Read the id of the "Status" field options
echo 'STATUS_ID='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") |.id' project_data.json) >> $GITHUB_ENV
echo 'STATUS_TODO='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") |.settings | fromjson.options[] | select(.name=="Todo") |.id' project_data.json) >> $GITHUB_ENV
echo 'STATUS_IN_PROGRESS='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") |.settings | fromjson.options[] | select(.name=="In Progress") |.id' project_data.json) >> $GITHUB_ENV
echo 'STATUS_READY_FOR_REVIEW='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") |.settings | fromjson.options[] | select(.name=="Ready for Review") |.id' project_data.json) >> $GITHUB_ENV
echo 'STATUS_DONE='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") |.settings | fromjson.options[] | select(.name=="Done") |.id' project_data.json) >> $GITHUB_ENV
- name: Add Issue to project
env:
GITHUB_TOKEN: ${{secrets.PROJECT_AUTOMATION}}
ISSUE_ID: ${{ github.event.issue.node_id }}
run: |
item_id="$( gh api graphql -f query='
mutation($project:ID!, $issue:ID!) {
addProjectNextItem(input: {projectId: $project, contentId: $issue}) {
projectNextItem {
id
}
}
}' -f project="$PROJECT_ID" -f issue="$ISSUE_ID" --jq '.data.addProjectNextItem.projectNextItem.id')"
echo 'ITEM_ID='$item_id >> $GITHUB_ENV
- name: Export Labels
env:
ISSUE_DATA: ${{ toJson(github.event.issue) }}
run: |
echo 'LABELS='$(echo "$ISSUE_DATA" | jq -r '[.labels[].name] | join(" ")') >> $GITHUB_ENV
- name: Set "Type" field
env:
GITHUB_TOKEN: ${{secrets.PROJECT_AUTOMATION}}
run: |
# Only execute this step if the Issue contains at least one label
if [ "${#LABELS[@]}" -gt 0 ]; then
# Let by default the type is "Bug"
OPTION_ID=$TYPE_BUG
# If it has "feature" label then set the type to "Feature"
if [[ "${LABELS[*]}" =~ "feature" ]]; then
OPTION_ID=$TYPE_FEATURE
fi
# If it has "enhancement" label then set the type to "Enhancement"
if [[ "${LABELS[*]}" =~ "enhancement" ]]; then
OPTION_ID=$TYPE_ENHANCEMENT
fi
# If it has "documentation" label then set the type to "Documentation"
if [[ "${LABELS[*]}" =~ "documentation" ]]; then
OPTION_ID=$TYPE_DOCUMENTATION
fi
# If it has "translation" label then set the type to "Translation"
if [[ "${LABELS[*]}" =~ "translation" ]]; then
OPTION_ID=$TYPE_TRANSLATION
fi
# Set the "Type" field to appropriate option
gh api graphql -f query='
mutation ($project: ID!, $item: ID!, $field: ID!, $opt_id: ID!) {
updateProjectNextItemField(input: {
projectId: $project
itemId: $item
fieldId: $field
value: $opt_id
}) {
projectNextItem {
id
}
}
}' -f project="$PROJECT_ID" -f item="$ITEM_ID" -f field="$TYPE_ID" -f opt_id="$OPTION_ID" --silent
fi
- name: Set "Status" field
env:
GITHUB_TOKEN: ${{secrets.PROJECT_AUTOMATION}}
run: |
STATE=${{github.event.issue.state}}
echo "State: $STATE"
OPTION_ID=$STATUS_TODO
if [[ "${STATE}" == "closed" ]]
then
OPTION_ID=$STATUS_DONE
fi
gh api graphql -f query='
mutation ($project: ID!, $item: ID!, $field: ID!, $status_id: ID!) {
updateProjectNextItemField(input: {
projectId: $project
itemId: $item
fieldId: $field
value: $status_id
}) {
projectNextItem {
id
}
}
}' -f project="$PROJECT_ID" -f item="$ITEM_ID" -f field="$STATUS_ID" -f status_id="$OPTION_ID" --silent
@@ -0,0 +1,219 @@
name: Project Automation (PR)
on:
pull_request:
types:
- opened
- ready_for_review
- reopened
- review_requested
- closed
- labeled
- unlabeled
- synchronize
jobs:
pr_automation:
runs-on: ubuntu-latest
steps:
- name: Get project data
env:
GITHUB_TOKEN: ${{secrets.PROJECT_AUTOMATION}}
ORGANIZATION: hugo-toha
PROJECT_NUMBER: 4
run: |
gh api graphql --header 'GraphQL-Features: projects_next_graphql' -f query='
query($org: String!, $number: Int!) {
organization(login: $org){
projectNext(number: $number) {
id
fields(first:20) {
nodes {
id
name
settings
}
}
}
}
}' -f org="$ORGANIZATION" -F number=$PROJECT_NUMBER > project_data.json
echo 'PROJECT_ID='$(jq -r '.data.organization.projectNext.id' project_data.json) >> $GITHUB_ENV
# Read the ID of the "Type" field options
echo 'TYPE_ID='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.id' project_data.json) >> $GITHUB_ENV
echo 'PROJECT_ID='$(jq -r '.data.organization.projectNext.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_ID='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_BUG='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.settings | fromjson.options[] | select(.name=="Bug") |.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_FEATURE='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.settings | fromjson.options[] | select(.name=="Feature") |.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_ENHANCEMENT='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.settings | fromjson.options[] | select(.name=="Enhancement") |.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_DOCUMENTATION='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.settings | fromjson.options[] | select(.name=="Documentation") |.id' project_data.json) >> $GITHUB_ENV
echo 'TYPE_TRANSLATION='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Type") |.settings | fromjson.options[] | select(.name=="Translation") |.id' project_data.json) >> $GITHUB_ENV
# Read the id of the "Status" field options
echo 'STATUS_ID='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") |.id' project_data.json) >> $GITHUB_ENV
echo 'STATUS_TODO='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") |.settings | fromjson.options[] | select(.name=="Todo") |.id' project_data.json) >> $GITHUB_ENV
echo 'STATUS_IN_PROGRESS='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") |.settings | fromjson.options[] | select(.name=="In Progress") |.id' project_data.json) >> $GITHUB_ENV
echo 'STATUS_READY_FOR_REVIEW='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") |.settings | fromjson.options[] | select(.name=="Ready for Review") |.id' project_data.json) >> $GITHUB_ENV
echo 'STATUS_DONE='$(jq -r '.data.organization.projectNext.fields.nodes[] | select(.name== "Status") |.settings | fromjson.options[] | select(.name=="Done") |.id' project_data.json) >> $GITHUB_ENV
- name: Add PR to project
env:
GITHUB_TOKEN: ${{secrets.PROJECT_AUTOMATION}}
PR_ID: ${{ github.event.pull_request.node_id }}
run: |
item_id="$( gh api graphql -f query='
mutation($project:ID!, $pr:ID!) {
addProjectNextItem(input: {projectId: $project, contentId: $pr}) {
projectNextItem {
id
}
}
}' -f project="$PROJECT_ID" -f pr="$PR_ID" --jq '.data.addProjectNextItem.projectNextItem.id')"
echo 'ITEM_ID='$item_id >> $GITHUB_ENV
- name: Export Labels
env:
PR_DATA: ${{ toJson(github.event.pull_request) }}
run: |
echo 'LABELS='$(echo "$PR_DATA" | jq -r '[.labels[].name] | join(" ")') >> $GITHUB_ENV
- name: Set "Type" field
env:
GITHUB_TOKEN: ${{secrets.PROJECT_AUTOMATION}}
run: |
# Only execute this step if the PR contains at least one label
if [ "${#LABELS[@]}" -gt 0 ]; then
# Let by default the type is "Bug"
OPTION_ID=$TYPE_BUG
# If it has "feature" label then set the type to "Feature"
if [[ "${LABELS[*]}" =~ "feature" ]]; then
OPTION_ID=$TYPE_FEATURE
fi
# If it has "enhancement" label then set the type to "Enhancement"
if [[ "${LABELS[*]}" =~ "enhancement" ]]; then
OPTION_ID=$TYPE_ENHANCEMENT
fi
# If it has "documentation" label then set the type to "Documentation"
if [[ "${LABELS[*]}" =~ "documentation" ]]; then
OPTION_ID=$TYPE_DOCUMENTATION
fi
# If it has "translation" label then set the type to "Translation"
if [[ "${LABELS[*]}" =~ "translation" ]]; then
OPTION_ID=$TYPE_TRANSLATION
fi
# Set the "Type" field to appropriate option
gh api graphql -f query='
mutation ($project: ID!, $item: ID!, $field: ID!, $opt_id: ID!) {
updateProjectNextItemField(input: {
projectId: $project
itemId: $item
fieldId: $field
value: $opt_id
}) {
projectNextItem {
id
}
}
}' -f project="$PROJECT_ID" -f item="$ITEM_ID" -f field="$TYPE_ID" -f opt_id="$OPTION_ID" --silent
fi
- name: Set "Status" field
env:
GITHUB_TOKEN: ${{secrets.PROJECT_AUTOMATION}}
run: |
MERGED=${{github.event.pull_request.merged}}
STATE=${{github.event.pull_request.state}}
REVIEWERS=${{github.event.pull_request.requested_reviewers}}
DRAFT=${{github.event.pull_request.draft}}
echo "Merged: $MERGED"
echo "State: $STATE"
echo "Draft: $DRAFT"
echo "Reviewer: $REVIEWER"
OPTION_ID=$STATUS_TODO
if [[ ("${MERGED}" == "true") || ("${STATE}" == "closed") ]]
then
OPTION_ID=$STATUS_DONE
elif [[ ${#REVIEWERS[@]} -gt 0 ]]
then
OPTION_ID=$STATUS_READY_FOR_REVIEW
else
OPTION_ID=$STATUS_IN_PROGRESS
fi
# Expose the OPTION_ID so that it can be used in later steps
echo 'PR_STATUS='$OPTION_ID >> $GITHUB_ENV
gh api graphql -f query='
mutation ($project: ID!, $item: ID!, $field: ID!, $status_id: ID!) {
updateProjectNextItemField(input: {
projectId: $project
itemId: $item
fieldId: $field
value: $status_id
}) {
projectNextItem {
id
}
}
}' -f project="$PROJECT_ID" -f item="$ITEM_ID" -f field="$STATUS_ID" -f status_id="$OPTION_ID" --silent
- name: Find Linked Issues
id: linked_issues
uses: hossainemruz/linked-issues@main
with:
pr_url: ${{github.event.pull_request.html_url}}
format: IssueNumber
- name: Update Linked Issues Status
env:
GITHUB_TOKEN: ${{secrets.PROJECT_AUTOMATION}}
run: |
declare -a issues=(${{ steps.linked_issues.outputs.issues }})
# Loop through the every issues and update their Status to same as the PR Status
for i in "${issues[@]}"
do
# Find the Issue ID
ISSUE_ID="$(gh api graphql -f query='
query($owner: String!, $name: String!, $issue_number: Int!) {
repository(owner: $owner, name: $name) {
issue(number: $issue_number) {
id
}
}
}' -f owner="${{github.event.pull_request.head.repo.owner.login}}" -f name="${{github.event.pull_request.head.repo.name}}" -F issue_number=$i --jq='.data.repository.issue.id')"
# Find the id of the Issue at the project board
item_id="$( gh api graphql -f query='
mutation($project:ID!, $pr:ID!) {
addProjectNextItem(input: {projectId: $project, contentId: $pr}) {
projectNextItem {
id
}
}
}' -f project="$PROJECT_ID" -f pr="$ISSUE_ID" --jq '.data.addProjectNextItem.projectNextItem.id')"
# Update the Issue Status
gh api graphql -f query='
mutation ($project: ID!, $item: ID!, $field: ID!, $status_id: ID!) {
updateProjectNextItemField(input: {
projectId: $project
itemId: $item
fieldId: $field
value: $status_id
}) {
projectNextItem {
id
}
}
}' -f project="$PROJECT_ID" -f item="$item_id" -f field="$STATUS_ID" -f status_id="$PR_STATUS" --silent
done
+1 -1
View File
@@ -3,7 +3,7 @@
[![Netlify Status](https://api.netlify.com/api/v1/badges/b1b93b02-f278-440b-ae1b-304e9f4c4ab5/deploy-status)](https://app.netlify.com/sites/toha/deploys) [![Netlify Status](https://api.netlify.com/api/v1/badges/b1b93b02-f278-440b-ae1b-304e9f4c4ab5/deploy-status)](https://app.netlify.com/sites/toha/deploys)
[![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Fhugo-toha%2Ftoha%2Fbadge%3Fref%3Dmain&style=flat)](https://actions-badge.atrox.dev/hugo-toha/toha/goto?ref=main) [![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Fhugo-toha%2Ftoha%2Fbadge%3Fref%3Dmain&style=flat)](https://actions-badge.atrox.dev/hugo-toha/toha/goto?ref=main)
![Repository Size](https://img.shields.io/github/repo-size/hugo-toha/toha) ![Repository Size](https://img.shields.io/github/repo-size/hugo-toha/toha)
![Lines of Codes](https://img.shields.io/tokei/lines/github/hugo-toha/toha) ![Lines of Codes](https://img.shields.io/tokei/lines/github.com/hugo-toha/toha)
![Contributor](https://img.shields.io/github/contributors/hugo-toha/toha) ![Contributor](https://img.shields.io/github/contributors/hugo-toha/toha)
![Latest Release](https://img.shields.io/github/v/release/hugo-toha/toha?include_prereleases) ![Latest Release](https://img.shields.io/github/v/release/hugo-toha/toha?include_prereleases)
![Last Commit](https://img.shields.io/github/last-commit/hugo-toha/toha) ![Last Commit](https://img.shields.io/github/last-commit/hugo-toha/toha)
+10 -1
View File
@@ -8,6 +8,12 @@ other = "পোষ্ট সমূহ"
[toc_heading] [toc_heading]
other = "সুচিপত্র" other = "সুচিপত্র"
[tags]
other = "ট্যাগ সমুহ"
[categories]
other = "বিভাগ সমুহ"
[resume] [resume]
other = "আমার জীবনবৃত্তান্ত" other = "আমার জীবনবৃত্তান্ত"
@@ -30,7 +36,7 @@ other = "ইমেইল নোটিফিকেশান এর মাধ্
other = "ইমেইল প্রবেশ করান" other = "ইমেইল প্রবেশ করান"
[newsletter_warning] [newsletter_warning]
other = "আমরা আপনার ইমেল অন্য কারও সাথে শেয়ার করব না।" other = "আপনার ইমেঠিকানা প্রবেশের মাধমে আপনি এই ওয়েবসাইটের নিউজ লেটার পেতে সম্মত হচ্ছেন।"
[submit] [submit]
other = "জমা দিন" other = "জমা দিন"
@@ -44,6 +50,9 @@ other = "পূর্ববর্তী"
[next] [next]
other = "পরবর্তী" other = "পরবর্তী"
[share_on]
other = "শেয়ার করুন"
[improve_this_page] [improve_this_page]
other = "এই পৃষ্ঠাটি উন্নত করুন" other = "এই পৃষ্ঠাটি উন্নত করুন"
+10 -1
View File
@@ -8,6 +8,12 @@ other = "Beiträge"
[toc_heading] [toc_heading]
other = "Inhaltsverzeichnis" other = "Inhaltsverzeichnis"
[tags]
other = "Stichworte"
[categories]
other = "Kategorien"
[at] [at]
other = "bei" other = "bei"
@@ -33,7 +39,7 @@ other = "Mit dem Newsletter auf dem neuesten Stand bleiben"
other = "E-Mail Adresse eingeben" other = "E-Mail Adresse eingeben"
[newsletter_warning] [newsletter_warning]
other = "Wir geben deine E-Mail Adresse nicht an Dritte weiter." other = "Mit der Eingabe Ihrer E-Mail-Adresse erklären Sie sich damit einverstanden, den Newsletter dieser Website zu erhalten."
[submit] [submit]
other = "Absenden" other = "Absenden"
@@ -47,6 +53,9 @@ other = "Vorherige"
[next] [next]
other = "Nächste" other = "Nächste"
# [share_on]
# other = "Share on"
[improve_this_page] [improve_this_page]
other = "Diese Seite verbessern" other = "Diese Seite verbessern"
+10 -1
View File
@@ -8,6 +8,12 @@ other = "Posts"
[toc_heading] [toc_heading]
other = "Table of Contents" other = "Table of Contents"
[tags]
other = "Tags"
[categories]
other = "Categories"
[at] [at]
other = "at" other = "at"
@@ -33,7 +39,7 @@ other = "Stay up to date with email notification"
other = "Enter email" other = "Enter email"
[newsletter_warning] [newsletter_warning]
other = "We'll never share your email with anyone else." other = "By entering your email address, you agree to receive the newsletter of this website."
[submit] [submit]
other = "Submit" other = "Submit"
@@ -47,6 +53,9 @@ other = "Prev"
[next] [next]
other = "Next" other = "Next"
[share_on]
other = "Share on"
[improve_this_page] [improve_this_page]
other = "Improve this page" other = "Improve this page"
+26 -17
View File
@@ -8,6 +8,12 @@ other = "Posts"
[toc_heading] [toc_heading]
other = "Contenido" other = "Contenido"
[tags]
other = "Etiquetas"
[categories]
other = "Categorías"
[at] [at]
other = "en" other = "en"
@@ -33,7 +39,7 @@ other = "Subscribirse"
other = "Ingrese email" other = "Ingrese email"
[newsletter_warning] [newsletter_warning]
other = "Jamás compartiremos tus datos con alguién mas" other = "Al ingresar su dirección de correo electrónico, acepta recibir el boletín de este sitio web."
[submit] [submit]
other = "Enviar" other = "Enviar"
@@ -47,6 +53,9 @@ other = "Anterior"
[next] [next]
other = "Siguiente" other = "Siguiente"
[share_on]
other = "Compartir en"
[improve_this_page] [improve_this_page]
other = "Mejorar esta página" other = "Mejorar esta página"
@@ -77,29 +86,29 @@ other = "Ver más"
[show_less] [show_less]
other = "Muestra menos" other = "Muestra menos"
# [responsibilities] [responsibilities]
# other = "Responsibilities:" other = "Responsabilidades:"
# [present] [present]
# other = "Present" other = "Presente"
# [comments_javascript] [comments_javascript]
# other = "Please enable JavaScript to view the" other = "Por favor, activa JavaScript para ver el"
# [comments_by] [comments_by]
# other = "comments powered by" other = "comentarios cortesía de"
# [read] [read]
# other = "Read" other = "Leer"
# [project_star] [project_star]
# other = "Star" other = "Favorito"
# [project_details] [project_details]
# other = "Details" other = "Detalles"
# [err_404] [err_404]
# other = "The page you are looking for is not there yet." other = "La página que estás buscando no está aquí (todavía)"
[more] [more]
other = "Más" other = "Más"
+28 -19
View File
@@ -3,16 +3,22 @@
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"
[tags]
other = "Mots clés"
[categories]
other = "Catégories"
[at] [at]
other = "chez" other = "chez"
[resume] [resume]
other = "Mon Curriculum vitæ" other = "Mon Curriculum Vitæ"
[navigation] [navigation]
other = "Navigation" other = "Navigation"
@@ -33,7 +39,7 @@ other = "Restez à jour par e-mail"
other = "Entrez une adresse e-mail" other = "Entrez une adresse e-mail"
[newsletter_warning] [newsletter_warning]
other = "Nous ne partagerons jamais votre courriel avec quelqu'un d'autre." other = "En renseignant votre adresse e-mail, vous acceptez de recevoir la newsletter de ce site."
[submit] [submit]
other = "Envoyer" other = "Envoyer"
@@ -47,6 +53,9 @@ other = "Précédent"
[next] [next]
other = "Suivant" other = "Suivant"
[share_on]
other = "Partager sur"
[improve_this_page] [improve_this_page]
other = "Améliorez cette page" other = "Améliorez cette page"
@@ -57,10 +66,10 @@ other = "sur"
other = "Publications" other = "Publications"
[taken_courses] [taken_courses]
other = "Taken Courses" other = "Cours suivis"
[course_name] [course_name]
other = "Cours suivis" other = "Intitulé du cours"
[total_credit] [total_credit]
other = "Crédit total" other = "Crédit total"
@@ -77,29 +86,29 @@ other = "En savoir plus"
[show_less] [show_less]
other = "Montrer moins" other = "Montrer moins"
# [responsibilities] [responsibilities]
# other = "Responsibilities:" other = "Responsabilitiés :"
# [present] [present]
# other = "Present" other = "Aujourd'hui"
# [comments_javascript] [comments_javascript]
# other = "Please enable JavaScript to view the" other = "Merci d'activer JavaScript pour voir le"
# [comments_by] [comments_by]
# other = "comments powered by" other = "commentaires fournis par"
# [read] [read]
# other = "Read" other = "Lire"
# [project_star] # [project_star]
# other = "Star" # other = "Star"
# [project_details] [project_details]
# other = "Details" other = "Détails"
# [err_404] [err_404]
# other = "The page you are looking for is not there yet." other = "La page que vous recherchez n'est pas disponible."
[more] [more]
other = "Suite" other = "Suite"
+10 -1
View File
@@ -8,6 +8,12 @@ other = "पोस्ट"
[toc_heading] [toc_heading]
other = "विषयसूची" other = "विषयसूची"
[tags]
other = "टैग"
[categories]
other = "श्रेणियाँ"
[at] [at]
other = "अन्य" other = "अन्य"
@@ -33,7 +39,7 @@ other = "ईमेल अधिसूचना से अवगत रहें"
other = "ईमेल दर्ज करें" other = "ईमेल दर्ज करें"
[newsletter_warning] [newsletter_warning]
other = "हम आपके ईमेल को कभी भी किसी और के साथ साझा नहीं करेंगे" other = "अपना ईमेल पता दर्ज करके, आप इस वेबसाइट का न्यूज़लेटर प्राप्त करने के लिए सहमत होते हैं।"
[submit] [submit]
other = "जमा करें" other = "जमा करें"
@@ -47,6 +53,9 @@ other = "पिछला"
[next] [next]
other = "आगे" other = "आगे"
# [share_on]
# other = "Share on"
[improve_this_page] [improve_this_page]
other = "इस पृष्ठ को सुधारें" other = "इस पृष्ठ को सुधारें"
+10 -1
View File
@@ -8,6 +8,12 @@ other = "Artikel"
[toc_heading] [toc_heading]
other = "Daftar Isi" other = "Daftar Isi"
[tags]
other = "Tags"
[categories]
other = "Kategori"
[at] [at]
other = "at" other = "at"
@@ -33,7 +39,7 @@ other = "Ingin selalu update dengan notifikasi email"
other = "Masukkan email" other = "Masukkan email"
[newsletter_warning] [newsletter_warning]
other = "Kami tidak pernah berbagi data email dengan siapapun." other = "Dengan memasukkan alamat email Anda, Anda setuju untuk menerima buletin situs web ini."
[submit] [submit]
other = "Kirim" other = "Kirim"
@@ -47,6 +53,9 @@ other = "Sebelumnya"
[next] [next]
other = "Lanjut" other = "Lanjut"
# [share_on]
# other = "Share on"
[improve_this_page] [improve_this_page]
other = "Perbaiki halaman ini" other = "Perbaiki halaman ini"
+11 -2
View File
@@ -8,6 +8,12 @@ other = "Post"
[toc_heading] [toc_heading]
other = "Contenuti" other = "Contenuti"
[tags]
other = "Tags"
[categories]
other = "Categorie"
[at] [at]
other = "presso" other = "presso"
@@ -33,7 +39,7 @@ other = "Resta aggiornato con la notifica di email"
other = "Inserisci l'email" other = "Inserisci l'email"
[newsletter_warning] [newsletter_warning]
other = "Non condivideremo l'email con altri." other = "Inserendo il tuo indirizzo email, accetti di ricevere la newsletter di questo sito."
[submit] [submit]
other = "Invia" other = "Invia"
@@ -47,6 +53,9 @@ other = "Precedente"
[next] [next]
other = "Successivo" other = "Successivo"
# [share_on]
# other = "Share on"
[improve_this_page] [improve_this_page]
other = "Migliora questa pagina" other = "Migliora questa pagina"
@@ -105,7 +114,7 @@ other = "Mostra meno"
other = "Di più" other = "Di più"
[view_certificate] [view_certificate]
other = "Féach ar an Teastas" other = "Vedi certificato"
[notes] [notes]
other = "Appunti" other = "Appunti"
+10 -1
View File
@@ -8,6 +8,12 @@ other = "記事"
[toc_heading] [toc_heading]
other = "目次" other = "目次"
[tags]
other = "タグ"
[categories]
other = "カテゴリ"
[resume] [resume]
other = "職務経歴書" other = "職務経歴書"
@@ -30,7 +36,7 @@ other = "メールで最新情報を受け取る"
other = "ここにメールアドレスを入力" other = "ここにメールアドレスを入力"
[newsletter_warning] [newsletter_warning]
other = "ご入力いただいたメールアドレスが他人に開示されることは決してございません。" other = "メールアドレスを入力すると、このウェブサイトのニュースレターを受け取ることに同意したことになります。"
[submit] [submit]
other = "登録" other = "登録"
@@ -44,6 +50,9 @@ other = "前"
[next] [next]
other = "次" other = "次"
# [share_on]
# other = "Share on"
[improve_this_page] [improve_this_page]
other = "編集リクエストを送る" other = "編集リクエストを送る"
+10 -1
View File
@@ -8,6 +8,12 @@ other = "게시글"
[toc_heading] [toc_heading]
other = "목차" other = "목차"
[tags]
other = "태그"
[categories]
other = "카테고리"
[at] [at]
other = "at" other = "at"
@@ -33,7 +39,7 @@ other = "이메일 알림으로 최신 상태를 유지해보세요"
other = "이메일을 입력하세요" other = "이메일을 입력하세요"
[newsletter_warning] [newsletter_warning]
other = "이메일을 다른 목적으로 사용하지 않습니다." other = "이메일 주소를 입력하면이 웹 사이트의 뉴스 레터 수신에 동의하는 것입니다."
[submit] [submit]
other = "제출" other = "제출"
@@ -47,6 +53,9 @@ other = "이전"
[next] [next]
other = "다음" other = "다음"
# [share_on]
# other = "Share on"
[improve_this_page] [improve_this_page]
other = "이 페이지를 개선" other = "이 페이지를 개선"
+10 -1
View File
@@ -7,6 +7,12 @@ other = "Beiträge"
[toc_heading] [toc_heading]
other = "Inhaltsverzeichnis" other = "Inhaltsverzeichnis"
[tags]
other = "Tags"
[categories]
other = "Categorieën"
[at] [at]
other = "bei" other = "bei"
@@ -32,7 +38,7 @@ other = "Mit dem Newsletter auf dem neuesten Stand bleiben"
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 = "Door uw e-mailadres in te voeren, gaat u akkoord met het ontvangen van de nieuwsbrief van deze website."
[submit] [submit]
other = "Absenden" other = "Absenden"
@@ -46,6 +52,9 @@ other = "Vorherige"
[next] [next]
other = "Nächste" other = "Nächste"
# [share_on]
# other = "Share on"
[improve_this_page] [improve_this_page]
other = "Diese Seite verbessern" other = "Diese Seite verbessern"
+10 -1
View File
@@ -8,6 +8,12 @@ other = "Посты"
[toc_heading] [toc_heading]
other = "Оглавление" other = "Оглавление"
[tags]
other = "Теги"
[categories]
other = "Категории"
[at] [at]
other = "в" other = "в"
@@ -33,7 +39,7 @@ other = "Подпишитесь на уведомления, чтобы не п
other = "Введите email" other = "Введите email"
[newsletter_warning] [newsletter_warning]
other = "Ваши данные в безопасности" other = "Вводя свой адрес электронной почты, вы соглашаетесь получать информационный бюллетень этого веб-сайта."
[submit] [submit]
other = "Подтвердить" other = "Подтвердить"
@@ -47,6 +53,9 @@ other = "Предыдущий"
[next] [next]
other = "Следующий" other = "Следующий"
# [share_on]
# other = "Share on"
[improve_this_page] [improve_this_page]
other = "Улучшить эту страницу" other = "Улучшить эту страницу"
+10 -1
View File
@@ -8,6 +8,12 @@ other = "Bài viết"
[toc_heading] [toc_heading]
other = "Mục lục" other = "Mục lục"
[tags]
other = "Thẻ"
[categories]
other = "Thể loại"
[at] [at]
other = "tại" other = "tại"
@@ -33,7 +39,7 @@ other = "Nhận email cập nhật thông tin"
other = "Nhập email" other = "Nhập email"
[newsletter_warning] [newsletter_warning]
other = "Chúng tôi sẽ không bao giờ chia sẻ email của bạn." other = "Bằng cách nhập địa chỉ email của bạn, bạn đồng ý nhận bản tin của trang web này."
[submit] [submit]
other = "Gửi" other = "Gửi"
@@ -47,6 +53,9 @@ other = "Trước"
[next] [next]
other = "Tiếp theo" other = "Tiếp theo"
# [share_on]
# other = "Share on"
[improve_this_page] [improve_this_page]
other = "Cải thiện trang này" other = "Cải thiện trang này"
+27 -18
View File
@@ -8,6 +8,12 @@ other = "博文"
[toc_heading] [toc_heading]
other = "目录" other = "目录"
[tags]
other = "标签"
[categories]
other = "类别"
[at] [at]
other = "at" other = "at"
@@ -33,7 +39,7 @@ other = "通过电子邮件接收最新信息"
other = "填入 E-mail" other = "填入 E-mail"
[newsletter_warning] [newsletter_warning]
other = "我们绝不会与任何人共享您的电子邮件。" other = "输入您的电子邮件地址,即表示您同意接收本网站的时事通讯"
[submit] [submit]
other = "提交" other = "提交"
@@ -47,6 +53,9 @@ other = "上一篇"
[next] [next]
other = "下一篇" other = "下一篇"
[share_on]
other = "分享"
[improve_this_page] [improve_this_page]
other = "改善此页面" other = "改善此页面"
@@ -77,29 +86,29 @@ other = "查看更多"
[show_less] [show_less]
other = "显示较少" other = "显示较少"
# [responsibilities] [responsibilities]
# other = "Responsibilities:" other = "职责:"
# [present] [present]
# other = "Present" other = "至今"
# [comments_javascript] [comments_javascript]
# other = "Please enable JavaScript to view the" other = "请启用 JavaScript 以查看"
# [comments_by] [comments_by]
# other = "comments powered by" other = "评论支持 by"
# [read] [read]
# other = "Read" other = "阅读"
# [project_star] [project_star]
# other = "Star" other = "Star"
# [project_details] [project_details]
# other = "Details" other = "详情"
# [err_404] [err_404]
# other = "The page you are looking for is not there yet." other = "您查找的页面已私奔。"
[more] [more]
other = "更多的" other = "更多的"
@@ -111,4 +120,4 @@ other = "查看证书"
other = "笔记" other = "笔记"
[disclaimer_text] [disclaimer_text]
other = "责任通知" other = "免责声明"
+123
View File
@@ -0,0 +1,123 @@
# More documentation here: https://github.com/nicksnyder/go-i18n
[home]
other = "首頁"
[posts]
other = "文章"
[toc_heading]
other = "目錄"
[tags]
other = "标签"
[categories]
other = "类别"
[at]
other = "at"
[resume]
other = "履歷"
[navigation]
other = "導覽列"
[contact_me]
other = "聯絡方式:"
[email]
other = "信箱"
[phone]
other = "電話"
[newsletter_text]
other = "通過電子郵件接收最新消息"
[newsletter_input_placeholder]
other = "在此輸入您的電子郵件地址"
[newsletter_warning]
other = "輸入您的電子郵件地址,即表示您同意接受本網站的最新消息"
[submit]
other = "提交"
[hugoAttributionText]
other = "Powered by"
[prev]
other = "上一篇"
[next]
other = "下一篇"
[share_on]
other = "分享"
[improve_this_page]
other = "改善此頁面"
[out_of]
other = "/"
[publications]
other = "出版"
[taken_courses]
other = "修習課程"
[course_name]
other = "課程名稱"
[total_credit]
other = "總分"
[obtained_credit]
other = "獲得學分"
[extracurricular_activities]
other = "課外活動"
[show_more]
other = "查看更多"
[show_less]
other = "顯示較少"
# [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 = "更多的"
[view_certificate]
other = "查看證書"
[notes]
other = "筆記"
[disclaimer_text]
other = "免責聲明"
+7 -1
View File
@@ -11,7 +11,13 @@
<!-- ADD GOOGLE ANALYTICS IF ENABLED --> <!-- ADD GOOGLE ANALYTICS IF ENABLED -->
{{ if site.GoogleAnalytics }} {{ if site.GoogleAnalytics }}
{{ template "_internal/google_analytics_async.html" . }} <!-- Google Analytics v3 ID -->
{{ if hasPrefix site.GoogleAnalytics "UA-"}}
{{ template "_internal/google_analytics_async.html" . }}
{{ else }}
<!-- Google Analytics v4 ID -->
{{ template "_internal/google_analytics.html" . }}
{{ end }}
{{ end }} {{ end }}
</head> </head>
+3
View 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" }}
+3
View 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" }}
+109 -7
View File
@@ -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" }}
@@ -51,29 +54,128 @@
<div class="title"> <div class="title">
<h1>{{ .Page.Title }}</h1> <h1>{{ .Page.Title }}</h1>
</div> </div>
{{ if site.Params.enableTags }}
<div class="taxonomy-terms">
<ul>
{{ range .Params.tags }}
{{ $url:= printf "tags/%s" . }}
<li class="rounded"><a href="{{ $url | urlize | relLangURL }}" class="btn, btn-sm">{{ . }}</a></li>
{{ end }}
</ul>
</div>
{{ end }}
<div class="post-content" id="post-content"> <div class="post-content" id="post-content">
{{ .Page.Content }} {{ .Page.Content }}
</div> </div>
<!-- Share or Contribute -->
<div class="row pl-3 pr-3">
<!--Social Media Share Buttons-->
<div class="col-md-6 share-buttons">
{{ if site.Params.features.blog.shareButtons }}
<strong>{{ i18n "share_on" }}:</strong>
{{ if site.Params.features.blog.shareButtons.facebook }}
<a class="btn btn-sm facebook-btn" href="https://www.facebook.com/sharer.php?u={{ .Permalink }}" target="_blank">
<i class="fab fa-facebook"></i>
</a>
{{ end }}
{{ if site.Params.features.blog.shareButtons.twitter }}
<a class="btn btn-sm twitter-btn" href="https://twitter.com/share?url={{ .Permalink }}&text={{ .Title }}&via={{- site.Title -}}" target="_blank">
<i class="fab fa-twitter"></i>
</a>
{{ end }}
{{ if site.Params.features.blog.shareButtons.reddit }}
<a class="btn btn-sm reddit-btn" href="https://reddit.com/submit?url={{ .Permalink }}&title={{ .Title }}" target="_blank">
<i class="fab fa-reddit"></i>
</a>
{{ end }}
{{ if site.Params.features.blog.shareButtons.tumblr }}
<a class="btn btn-sm tumblr-btn" href="https://www.tumblr.com/share/link?url={{ .Permalink }}&name={{ .Title }}{{- with .Params.description -}}&description={{- . -}}{{- end -}}" target="_blank">
<i class="fab fa-tumblr"></i>
</a>
{{ end }}
{{ if site.Params.features.blog.shareButtons.pocket }}
<a class="btn btn-sm pocket-btn" href="https://getpocket.com/save?url={{ .Permalink }}&title={{ .Title }}" target="_blank">
<i class="fab fa-get-pocket"></i>
</a>
{{ end }}
{{ if site.Params.features.blog.shareButtons.linkedin }}
<a class="btn btn-sm linkedin-btn" href="https://www.linkedin.com/shareArticle?url={{ .Permalink }}&title={{ .Title }}" target="_blank">
<i class="fab fa-linkedin"></i>
</a>
{{ end }}
{{ if site.Params.features.blog.shareButtons.diaspora }}
<a class="btn btn-sm diaspora-btn" href="https://share.diasporafoundation.org/?title={{ .Title }}&url={{ .Permalink }}" rel="nofollow" target="_blank">
<i class="fab fa-diaspora"></i>
</a>
{{ end }}
{{ if site.Params.features.blog.shareButtons.mastodon }}
<a class="btn btn-sm mastodon-btn" href="https://mastodon.social/share?text={{ .Title }} - {{ .Permalink }}" target="_blank">
<i class="fab fa-mastodon"></i>
</a>
{{ end }}
{{ if site.Params.features.blog.shareButtons.whatsapp }}
<a class="btn btn-sm whatsapp-btn" href="https://api.whatsapp.com/send?text={{ .Title }} {{ .Permalink }}" target="_blank">
<i class="fab fa-whatsapp"></i>
</a>
{{ end }}
{{ if site.Params.features.blog.shareButtons.email }}
<a class="btn btn-sm email-btn" href="mailto:?subject={{ .Title }}&body={{ .Permalink }}" target="_blank">
<i class="fas fa-envelope-open-text"></i>
</a>
{{ end }}
{{ end }}
</div>
<!--- Improve this page button ---> <!--- Improve this page button --->
{{ if site.Params.GitRepo }} {{ if site.Params.GitRepo }}
<div class="btn-improve-page"> {{ if site.Params.GitBranch }}
<a href="{{ site.Params.GitRepo }}/edit/{{ site.Params.GitBranch }}/content/{{ .File.Path }}" title="{{ i18n "improve_this_page" }}" target="_blank" rel="noopener"> {{ .Scratch.Set "GitBranch" site.Params.GitBranch }}
{{ else }}
{{ .Scratch.Set "GitBranch" "main" }}
{{ end }}
<div class="col-md-6 btn-improve-page">
{{ if ( eq site.Params.GitForge "gitlab" ) }}
<a href="{{ site.Params.GitRepo }}/-/edit/{{ .Scratch.Get "GitBranch" }}/{{ .File.Path }}" title="{{ i18n "improve_this_page" }}" target="_blank" rel="noopener">
{{ else if ( eq site.Params.GitForge "gitea" ) }}
<a href="{{ site.Params.GitRepo }}/_edit/{{ .Scratch.Get "GitBranch" }}/content/{{ .File.Path }}" title="{{ i18n "improve_this_page" }}" target="_blank" rel="noopener">
{{ else }} <!--- Make Github-style the default -->
<a href="{{ site.Params.GitRepo }}/edit/{{ .Scratch.Get "GitBranch" }}/content/{{ .File.Path }}" title="{{ i18n "improve_this_page" }}" target="_blank" rel="noopener">
{{ end }}
<i class="fas fa-code-branch"></i> <i class="fas fa-code-branch"></i>
{{ i18n "improve_this_page" }} {{ i18n "improve_this_page" }}
</a> </a>
</div> </div>
{{ end }} {{ end }}
</div>
<!---Next and Previous Navigator -->
<!---Next and Previous Navigator -->
<hr /> <hr />
{{ partial "navigators/next-prev-navigator.html" . }} {{ partial "navigators/next-prev-navigator.html" . }}
<hr /> <hr />
<!-- Add Disqus forum -->
{{ if site.DisqusShortname }} <!----- Add comment support ----->
{{ partial "disqus.html" . }} {{ with site.Params.features.comment }}
{{ if .enable }}
<!-- Add Disqus forum -->
{{ if .disqus.shortName }}
{{ partial "disqus.html" . }}
<!-- Add valine -->
{{ else if .valine }}
{{ partial "valine.html" . }}
<!-- Add utteranc -->
{{ else if .utteranc }}
{{ partial "utteranc.html" . }}
{{ end }}
{{ end }}
{{ end }} {{ end }}
<!-- Keep backward compatibility with old config.yaml -->
{{ if site.DisqusShortname }}
{{ partial "disqus.html" . }}
{{ end }}
</div> </div>
</div> </div>
</div> </div>
+62
View File
@@ -0,0 +1,62 @@
{{ define "header" }}
<link rel="stylesheet" href="{{ "/css/layouts/list.css" | relURL }}">
<link rel="stylesheet" href="{{ "/css/navigators/sidebar.css" | relURL}}">
<!--================= custom style overrides =========================-->
<link rel="stylesheet" href="{{ "/css/style.css" | relURL }}"/>
{{ end }}
{{ define "navbar" }}
{{ partial "navigators/navbar-2.html" . }}
{{ end }}
{{ define "sidebar" }}
{{ $homePage:="#" }}
{{ if site.IsMultiLingual }}
{{ $homePage = (path.Join (cond ( eq .Language.Lang "en") "" .Language.Lang) .Type) }}
{{ end }}
<section class="sidebar-section" id="sidebar-section">
<div class="sidebar-holder">
<div class="sidebar" id="sidebar">
<form class="mx-auto" method="get" action="{{ "search" | relLangURL }}">
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
</form>
<div class="sidebar-tree">
<ul class="tree" id="tree">
<li id="list-heading"><a href="{{ .Type | relLangURL }}" data-filter="all">{{ i18n .Type }}</a></li>
<div class="subtree taxonomy-terms">
{{ $context := . }}
{{ partial "navigators/taxonomies.html" (dict "context" $context "taxo" "categories" "title" ( humanize "categories" ) ) }}
</div>
</ul>
</div>
</div>
</div>
</section>
{{ end }}
{{ define "content" }}
<section class="content-section" id="content-section">
<div class="content container-fluid" id="content">
<div class="container-fluid post-card-holder" id="post-card-holder">
{{ $posts := where .RegularPagesRecursive "Layout" "!=" "search" }}
{{ $paginator := .Paginate $posts 12 }}
{{ range $paginator.Pages }}
{{ if .Layout }}
{{/* ignore the search.md file*/}}
{{ else }}
{{ partial "cards/post.html" . }}
{{ end }}
{{ end }}
</div>
<div class="paginator">
{{ template "_internal/pagination.html" . }}
</div>
</div>
</section>
{{ end }}
{{ define "scripts" }}
<script src="{{ "/js/list.js" | relURL }}"></script>
{{ end }}
+10 -1
View File
@@ -25,10 +25,19 @@
<link rel="stylesheet" href="{{ "/css/sections/recent-posts.css" | relURL }}"/> <link rel="stylesheet" href="{{ "/css/sections/recent-posts.css" | relURL }}"/>
<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" . }} <!-- Google Analytics v3 ID -->
{{ if hasPrefix site.GoogleAnalytics "UA-"}}
{{ template "_internal/google_analytics_async.html" . }}
{{ else }}
<!-- Google Analytics v4 ID -->
{{ template "_internal/google_analytics.html" . }}
{{ end }}
{{ 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">
+4 -1
View File
@@ -11,7 +11,10 @@
{{ $logoImage:= resources.Get .logo}} {{ $logoImage:= resources.Get .logo}}
{{ if $logoImage }} {{ if $logoImage }}
{{ $logoImage := $logoImage.Fit "24x24" }} {{/* svg don't support "Fit" operation */}}
{{ if ne $logoImage.MediaType.SubType "svg" }}
{{ $logoImage = $logoImage.Fit "24x24" }}
{{ end }}
<img class="card-img-xs" src="{{ $logoImage.RelPermalink }}" alt="{{ .name }}" /> <img class="card-img-xs" src="{{ $logoImage.RelPermalink }}" alt="{{ .name }}" />
{{ end }} {{ end }}
+1 -1
View File
@@ -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 }}" />
+6 -1
View File
@@ -1,3 +1,8 @@
{{ $disqusShortName := site.DisqusShortname }}
{{ if site.Params.features.comment.disqus.shortName }}
{{ $disqusShortName = site.Params.features.comment.disqus.shortName }}
{{ end }}
<div id="disqus_thread"></div> <div id="disqus_thread"></div>
<script type="text/javascript"> <script type="text/javascript">
(function () { (function () {
@@ -8,7 +13,7 @@
var dsq = document.createElement("script"); var dsq = document.createElement("script");
dsq.type = "text/javascript"; dsq.type = "text/javascript";
dsq.async = true; dsq.async = true;
var disqus_shortname = "{{ site.DisqusShortname }}"; var disqus_shortname = "{{ $disqusShortName }}";
dsq.src = "//" + disqus_shortname + ".disqus.com/embed.js"; dsq.src = "//" + disqus_shortname + ".disqus.com/embed.js";
( (
document.getElementsByTagName("head")[0] || document.getElementsByTagName("head")[0] ||
+9 -9
View File
@@ -73,7 +73,7 @@
{{ $sectionID = .section.id }} {{ $sectionID = .section.id }}
{{ end }} {{ end }}
<li class="nav-item"> <li class="nav-item">
<a class="smooth-scroll" href="/#{{ $sectionID }}">{{ .section.name }}</a> <a class="smooth-scroll" href="{{ "" | absLangURL }}#{{ $sectionID }}">{{ .section.name }}</a>
</li> </li>
{{ end }} {{ end }}
{{- end }} {{- end }}
@@ -121,13 +121,13 @@
<button type="submit" class="btn btn-info">{{ i18n "submit" }}</button> <button type="submit" class="btn btn-info">{{ i18n "submit" }}</button>
</form> </form>
{{ else }} {{ else }}
<!-- a dummy form --> <form method='post' action='https://blogtrottr.com'>
<form> <div class="form-group">
<div class="form-group"> <input type='email' class="form-control" name='btr_email' placeholder="{{ i18n "newsletter_input_placeholder" }}"/><br />
<input type="email" class="form-control" id="exampleInputEmail1" aria-describedby="emailHelp" placeholder="{{ i18n "newsletter_input_placeholder" }}"/> <input type='hidden' name='btr_url' value='{{ "" | absLangURL }}index.xml' />
<small id="emailHelp" class="form-text text-muted">{{ i18n "newsletter_warning" }}</small> <input type='hidden' name='schedule_type' value='1' />
</div> <small id="emailHelp" class="form-text text-muted">{{ i18n "newsletter_warning" }}</small>
<button type="submit" class="btn btn-info">{{ i18n "submit" }}</button> <button type="submit" class="btn btn-info"> {{ i18n "submit" }} </button>
</form> </form>
{{ end }} {{ end }}
</div> </div>
@@ -137,7 +137,7 @@
{{ if and $disclaimerEnabled $disclaimer}} {{ if and $disclaimerEnabled $disclaimer}}
<hr /> <hr />
<div class="container"> <div class="container">
<p id="disclaimer"><strong>{{ i18n "disclaimer_text" }}:</strong> {{ $disclaimer }}</p> <p id="disclaimer"><strong>{{ i18n "disclaimer_text" }}:</strong> {{ $disclaimer | markdownify }}</p>
</div> </div>
{{ end }} {{ end }}
{{ if $credentialsEnabled }} {{ if $credentialsEnabled }}
+12 -19
View File
@@ -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}}
@@ -18,12 +18,12 @@
{{ end }} {{ end }}
{{ end }} {{ end }}
{{/* apply image processing. don't use "Fit" in svg because its not supported */}} {{/* apply image processing. don't use "Fit" in svg or gif because its not supported */}}
{{ $authorImage:= resources.Get $authorImage}} {{ $authorImage:= resources.Get $authorImage}}
{{ if and $authorImage (ne $authorImage.MediaType.SubType "svg") }}
{{ $authorImage := $authorImage.Fit "120x120" }} {{ if and $authorImage (and (ne $authorImage.MediaType.SubType "svg") ( ne $authorImage.MediaType.SubType "gif")) }}
{{ $authorImage = $authorImage.Fit "120x120" }}
{{ end }} {{ end }}
{{/* return the author image link */}} {{/* return the author image link */}}
{{ return $authorImage.RelPermalink }} {{ return $authorImage.RelPermalink }}
+10
View 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}}
+1 -1
View File
@@ -2,7 +2,7 @@
{{ if eq .type "certification" }} {{ if eq .type "certification" }}
{{/* Verifiable certificate badge from https://www.credly.com */}} {{/* Verifiable certificate badge from https://www.credly.com */}}
<div class=""> <div class="">
<a href="{{ .url }}" target="_blank" > <a href="{{ .url }}" target="_blank" rel="noopener noreferrer">
<img src="{{ .badge }}" alt="{{ .name }}" /> <img src="{{ .badge }}" alt="{{ .name }}" />
</a> </a>
</div> </div>
+25 -16
View File
@@ -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>
+25 -15
View File
@@ -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,43 @@
{{ $curPage := . }}
{{ $prevPage := "" }}
{{ $nextPage := "" }}
<!-- List all the pages. It uses the sidebar menu to discover the page order. -->
{{ $pages := slice }}
{{ if isset site.Menus "sidebar" }}
{{ $pages = partial "helpers/get-pages.html" site.Menus.sidebar }}
{{ end }}
<!-- 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>
@@ -0,0 +1,16 @@
{{ $context := .context }}
{{ $taxo := .taxo }}
{{ $class:= "" }}
{{ if isset $context.Site.Taxonomies ( lower $taxo ) }}
{{ $taxonomy := index $context.Site.Taxonomies ( lower $taxo ) }}
{{ if (gt (len $taxonomy) 0)}}
{{ range $taxonomy }}
{{if eq $context.Title .Page.Title}}
{{ $class = "active" }}
{{else}}
{{$class = ""}}
{{end}}
<li><a class="taxonomy-term {{ $class }}" href="{{ .Page.Permalink }}" data-taxonomy-term="{{ urlize .Page.Title }}"><span class="taxonomy-label">{{ .Page.Title }}</span></a></li>
{{ end }}
{{ end }}
{{ end }}
+2 -1
View File
@@ -11,7 +11,8 @@
<div class="container anchor p-lg-5 about-section" id="{{ $sectionID }}"> <div class="container anchor p-lg-5 about-section" id="{{ $sectionID }}">
<div class="row pt-sm-2 pt-md-4 align-self-center"> <div class="row pt-sm-2 pt-md-4 align-self-center">
<!-- summary --> <!-- summary -->
<div class="col-sm-6"> <!-- takes up full section width if no badges/soft skills are specified -->
{{ if or (.softSkills) (.badges) }} <div class="col-sm-6"> {{ else }} <div class="col-sm-12"> {{ end }}
<h3 class="p-1">{{ $author.name }}</h3> <h3 class="p-1">{{ $author.name }}</h3>
{{ if .designation }} {{ if .designation }}
<h5 class="p-1"> <h5 class="p-1">
@@ -3,9 +3,10 @@
{{ $sectionID = .section.id }} {{ $sectionID = .section.id }}
{{ end }} {{ end }}
<div class="container-fluid anchor pb-5 accomplishments-section" id="{{ $sectionID }}"> <div class="container-fluid anchor pb-5 accomplishments-section">
{{ if not (.section.hideTitle) }} {{ if not (.section.hideTitle) }}
<h1 class="text-center">{{ .section.name }}</h1> <h1 class="text-center">
<span id="{{ $sectionID }}"></span>{{ .section.name }}</h1>
{{ end }} {{ end }}
<div class="container"> <div class="container">
+3 -2
View File
@@ -3,9 +3,10 @@
{{ $sectionID = .section.id }} {{ $sectionID = .section.id }}
{{ end }} {{ end }}
<div class="container-fluid anchor pb-5 achievements-section" id="{{ $sectionID }}"> <div class="container-fluid anchor pb-5 achievements-section">
{{ if not (.section.hideTitle) }} {{ if not (.section.hideTitle) }}
<h1 class="text-center">{{ .section.name }}</h1> <h1 class="text-center">
<span id="{{ $sectionID }}"></span>{{ .section.name }}</h1>
{{ end }} {{ end }}
<div class="container"> <div class="container">
<div class="row" id="gallery"> <div class="row" id="gallery">
+4 -3
View File
@@ -3,9 +3,10 @@
{{ $sectionID = .section.id }} {{ $sectionID = .section.id }}
{{ end }} {{ end }}
<div class="container-fluid anchor pb-5 education-section" id="{{ $sectionID }}"> <div class="container-fluid anchor pb-5 education-section">
{{ if not (.section.hideTitle) }} {{ if not (.section.hideTitle) }}
<h1 class="text-center">{{ .section.name }}</h1> <h1 class="text-center">
<span id="{{ $sectionID }}"></span>{{ .section.name }}</h1>
{{ end }} {{ end }}
<div class="container"> <div class="container">
@@ -59,7 +60,7 @@
{{ $hideScale := .takenCourses.hideScale }} {{ $hideScale := .takenCourses.hideScale }}
<table> <table>
<thead> <thead>
<th>{{ i18n "course_name"}}</th> <th class="course-name-header">{{ i18n "course_name"}}</th>
{{ if not $hideScale }}<th>{{ i18n "total_credit"}}</th>{{ end }} {{ if not $hideScale }}<th>{{ i18n "total_credit"}}</th>{{ end }}
<th>{{ i18n "obtained_credit"}}</th> <th>{{ i18n "obtained_credit"}}</th>
</thead> </thead>
+5 -3
View File
@@ -3,9 +3,11 @@
{{ $sectionID = .section.id }} {{ $sectionID = .section.id }}
{{ end }} {{ end }}
<div class="container-fluid anchor pb-5 experiences-section" id="{{ $sectionID }}"> <div class="container-fluid anchor pb-5 experiences-section">
{{ if not (.section.hideTitle) }} {{ if not (.section.hideTitle) }}
<h1 class="text-center">{{ .section.name }}</h1> <h1 class="text-center">
<span id="{{ $sectionID }}"></span>{{ .section.name }}
</h1>
{{ end }} {{ end }}
<div class="container timeline text-justify"> <div class="container timeline text-justify">
@@ -27,4 +29,4 @@
{{ end }} {{ end }}
{{ end }} {{ end }}
</div> </div>
</div> </div>
+7 -1
View File
@@ -26,8 +26,11 @@
{{ $authorImage = $author.image }} {{ $authorImage = $author.image }}
{{ end }} {{ end }}
{{ $authorImage := resources.Get $authorImage }} {{ $authorImage := resources.Get $authorImage }}
{{ $authorImage := $authorImage.Fit "148x148" }}
{{/* apply image processing. don't use "Fit" in svg or gif because its not supported */}}
{{ if and $authorImage (and (ne $authorImage.MediaType.SubType "svg") ( ne $authorImage.MediaType.SubType "gif")) }}
{{ $authorImage = $authorImage.Fit "148x148" }}
{{ end }}
{{/* 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 +113,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>
+10 -3
View File
@@ -3,13 +3,20 @@
{{ $sectionID = .section.id }} {{ $sectionID = .section.id }}
{{ end }} {{ end }}
<div class="container-fluid anchor pb-5 recent-posts-section" id="{{ $sectionID }}"> {{ $numShow := 3}}
{{ if .section.numShow }}
{{ $numShow = .section.numShow }}
{{ end }}
<div class="container-fluid anchor pb-5 recent-posts-section">
{{ if not (.section.hideTitle) }} {{ if not (.section.hideTitle) }}
<h1 class="text-center">{{ .section.name }}</h1> <h1 class="text-center">
<span id="{{ $sectionID }}"></span>{{ .section.name }}</h1>
{{ end }} {{ end }}
<div class="container"> <div class="container">
<div class="row" id="recent-post-cards"> <div class="row" id="recent-post-cards">
{{ range first 3 (where site.RegularPages.ByDate.Reverse "Type" "in" "posts" )}} {{ range first $numShow (where site.RegularPages.ByDate.Reverse "Type" "in" "posts" )}}
{{ partial "cards/recent-post.html" . }} {{ partial "cards/recent-post.html" . }}
{{ end }} {{ end }}
</div> </div>
+3 -2
View File
@@ -3,9 +3,10 @@
{{ $sectionID = .section.id }} {{ $sectionID = .section.id }}
{{ end }} {{ end }}
<div class="container-fluid anchor pb-5 skills-section" id="{{ $sectionID }}"> <div class="container-fluid anchor pb-5 skills-section">
{{ if not (.section.hideTitle) }} {{ if not (.section.hideTitle) }}
<h1 class="text-center">{{ .section.name }}</h1> <h1 class="text-center">
<span id="{{ $sectionID }}"></span>{{ .section.name }}</h1>
{{ end }} {{ end }}
<div class="container d-flex-block"> <div class="container d-flex-block">
<div class="row" id="primary-skills"> <div class="row" id="primary-skills">
+22
View File
@@ -0,0 +1,22 @@
{{ $repo := site.Params.features.comment.utteranc.repo }}
{{ $issueTerm := site.Params.features.comment.utteranc.issueTerm }}
{{ $theme := site.Params.features.comment.utteranc.theme }}
<div id="utteranc_thread"></div>
<div id="comments" class="comments">
<div id="comments-container"></div>
</div>
<script type="text/javascript">
(function() {
var utterances = document.createElement('script');
utterances.type = 'text/javascript';
utterances.async = true;
utterances.setAttribute('repo','{{ $repo }}')
utterances.setAttribute('issue-term','{{ $issueTerm }}')
utterances.setAttribute('theme','{{ $theme }}')
utterances.crossorigin = 'anonymous';
utterances.src = 'https://utteranc.es/client.js';
document.getElementById('comments-container').appendChild(utterances);
})();
</script>
+17
View File
@@ -0,0 +1,17 @@
<!-- valine -->
<div id="vcomments"></div>
<script src="//cdn1.lncld.net/static/js/3.0.4/av-min.js"></script>
<script src="//unpkg.com/valine/dist/Valine.min.js"></script>
<script type="text/javascript">
new Valine({
el: "#vcomments",
appId: "{{ .valine.appId }}",
appKey: "{{ .valine.appKey }}",
avatar: "{{ .valine.avatar }}",
placeholder: "{{ .valine.placeholder }}",
visitor: "{{ .valine.visitor }}",
lang: "{{ .valine.lang }}",
recordIP: "{{ .valine.recordIP }}",
enableQQ: "{{ .valine.enableQQ }}",
});
</script>
+62
View File
@@ -0,0 +1,62 @@
{{ define "header" }}
<link rel="stylesheet" href="{{ "/css/layouts/list.css" | relURL }}">
<link rel="stylesheet" href="{{ "/css/navigators/sidebar.css" | relURL}}">
<!--================= custom style overrides =========================-->
<link rel="stylesheet" href="{{ "/css/style.css" | relURL }}"/>
{{ end }}
{{ define "navbar" }}
{{ partial "navigators/navbar-2.html" . }}
{{ end }}
{{ define "sidebar" }}
{{ $homePage:="#" }}
{{ if site.IsMultiLingual }}
{{ $homePage = (path.Join (cond ( eq .Language.Lang "en") "" .Language.Lang) .Type) }}
{{ end }}
<section class="sidebar-section" id="sidebar-section">
<div class="sidebar-holder">
<div class="sidebar" id="sidebar">
<form class="mx-auto" method="get" action="{{ "search" | relLangURL }}">
<input type="text" name="keyword" value="" placeholder="Search" data-search="" id="search-box" />
</form>
<div class="sidebar-tree">
<ul class="tree" id="tree">
<li id="list-heading"><a href="{{ .Type | relLangURL }}" data-filter="all">{{ i18n .Type }}</a></li>
<div class="subtree taxonomy-terms">
{{ $context := . }}
{{ partial "navigators/taxonomies.html" (dict "context" $context "taxo" "tags" "title" ( humanize "tags" ) ) }}
</div>
</ul>
</div>
</div>
</div>
</section>
{{ end }}
{{ define "content" }}
<section class="content-section" id="content-section">
<div class="content container-fluid" id="content">
<div class="container-fluid post-card-holder" id="post-card-holder">
{{ $posts := where .RegularPagesRecursive "Layout" "!=" "search" }}
{{ $paginator := .Paginate $posts 12 }}
{{ range $paginator.Pages }}
{{ if .Layout }}
{{/* ignore the search.md file*/}}
{{ else }}
{{ partial "cards/post.html" . }}
{{ end }}
{{ end }}
</div>
<div class="paginator">
{{ template "_internal/pagination.html" . }}
</div>
</div>
</section>
{{ end }}
{{ define "scripts" }}
<script src="{{ "/js/list.js" | relURL }}"></script>
{{ end }}
+298 -587
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -17,8 +17,8 @@
}, },
"homepage": "https://github.com/hossainemruz/toha#readme", "homepage": "https://github.com/hossainemruz/toha#readme",
"devDependencies": { "devDependencies": {
"autoprefixer": "^10.2.6", "autoprefixer": "^10.4.0",
"postcss": "^8.3.0", "postcss": "^8.3.11",
"postcss-cli": "^8.3.1" "postcss-cli": "^8.3.1"
} }
} }
+20 -7
View File
@@ -50,17 +50,17 @@ a:hover {
} }
.btn-dark { .btn-dark {
background-color: #3c4858; background-color: #3c4858!important;
border-color: #3c4858; border-color: #3c4858!important;
color: #e5e9f2; color: #e5e9f2!important;
transition: all 0.3s ease-out; transition: all 0.3s ease-out!important;
} }
.btn-dark:hover, .btn-dark:hover,
.btn-dark:focus { .btn-dark:focus {
background-color: #248aaa; background-color: #248aaa!important;
border-color: #248aaa; border-color: #248aaa!important;
transition: all 0.3s ease-out; transition: all 0.3s ease-out!important;
} }
.btn-outline-info { .btn-outline-info {
@@ -432,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;
}
} }
+77
View File
@@ -37,6 +37,7 @@ body {
} }
.toc-holder { .toc-holder {
position: -webkit-sticky;
position: sticky; position: sticky;
top: 4.5rem; top: 4.5rem;
overflow-x: hidden; overflow-x: hidden;
@@ -205,6 +206,69 @@ h6 {
padding: 10px; padding: 10px;
} }
.share-buttons .btn {
color: #e5e9f2 !important;
transition: all 0.3s ease-out !important;
}
.share-buttons .btn:hover,
.share-buttons .btn:focus {
background-color: #248aaa !important;
border-color: #248aaa !important;
transition: all 0.3s ease-out !important;
}
.share-buttons .facebook-btn {
background-color: #4267b2 !important;
border-color: #4267b2 !important;
}
.share-buttons .twitter-btn {
background-color: #1da1f2 !important;
border-color: #1da1f2 !important;
}
.share-buttons .reddit-btn {
background-color: #ff4500 !important;
border-color: #ff4500 !important;
}
.share-buttons .tumblr-btn {
background-color: #34465d !important;
border-color: #34465d !important;
}
.share-buttons .pocket-btn {
background-color: #ef4056 !important;
border-color: #ef4056 !important;
}
.share-buttons .linkedin-btn {
background-color: #2867b2 !important;
border-color: #2867b2 !important;
}
.share-buttons .diaspora-btn {
background-color: #3c4858 !important;
border-color: #3c4858 !important;
}
.share-buttons .mastodon-btn {
background-color: #2791da !important;
border-color: #2791da !important;
}
.share-buttons .whatsapp-btn {
background-color: #4ac959 !important;
border-color: #4ac959 !important;
}
.share-buttons .email-btn {
background-color: #3c4858 !important;
border-color: #3c4858 !important;
transition: all 0.3s ease-out !important;
}
.btn-improve-page { .btn-improve-page {
text-align: right; text-align: right;
} }
@@ -236,6 +300,19 @@ h6 {
#scroll-to-top.show { #scroll-to-top.show {
visibility: visible; visibility: visible;
} }
.taxonomy-terms {
text-align: center;
}
.taxonomy-terms li {
font-size: 0.8em;
list-style-type: none;
display: inline-block;
background: #248aaa;
}
.taxonomy-terms a {
color: #f9fafc;
}
/* ============= Device specific fixes ======= */ /* ============= Device specific fixes ======= */
+3 -2
View File
@@ -6,8 +6,8 @@
height: 50px; height: 50px;
z-index: 99999; z-index: 99999;
transition: all 0.4s ease-out; transition: all 0.4s ease-out;
margin: 0; margin: 0px;
padding-top: 0.1rem; padding-top: 0.4rem;
text-align: center; text-align: center;
} }
@@ -30,6 +30,7 @@
.initial-navbar li a:hover { .initial-navbar li a:hover {
color: #f9fafc; color: #f9fafc;
transition: all 0.3s ease-out; transition: all 0.3s ease-out;
transform: translateY(-2px);
} }
.navbar-collapse { .navbar-collapse {
+3
View File
@@ -8,6 +8,7 @@
.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;
@@ -191,6 +192,7 @@ 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%;
@@ -220,6 +222,7 @@ 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%;
+1 -1
View File
File diff suppressed because one or more lines are too long
+25 -1
View File
@@ -87,11 +87,14 @@
background: #3c4858; background: #3c4858;
font-size: 1rem; font-size: 1rem;
color: #f9fafc; color: #f9fafc;
line-height: 135px; line-height: initial;
text-align: center; text-align: center;
position: absolute; position: absolute;
top: 5%; top: 5%;
left: 5%; left: 5%;
display: flex;
justify-content: center;
align-items: center;
} }
.circular-progress.blue .circular-progress-bar { .circular-progress.blue .circular-progress-bar {
@@ -496,11 +499,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 +529,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;
}
} }
+6
View File
@@ -1,3 +1,9 @@
.accomplishments-section h1 > span{
margin-top: -55px; /* Size of fixed header */
padding-bottom:55px;
display: block;
}
.accomplishments-section .card { .accomplishments-section .card {
background: #fff; background: #fff;
border-top: 2px solid #248aaa; border-top: 2px solid #248aaa;
+6
View File
@@ -2,6 +2,12 @@
padding-top: 0.5rem; padding-top: 0.5rem;
} }
.achievements-section h1 > span{
margin-top: -55px; /* Size of fixed header */
padding-bottom:55px;
display: block;
}
#gallery .achievement-entry { #gallery .achievement-entry {
cursor: pointer; cursor: pointer;
margin-top: 5px; margin-top: 5px;
+10 -2
View File
@@ -19,6 +19,12 @@
text-align: right; text-align: right;
} }
.education-section h1 > span{
margin-top: -55px; /* Size of fixed header */
padding-bottom:55px;
display: block;
}
.education-section .icon { .education-section .icon {
width: 2rem; width: 2rem;
padding-left: 0; padding-left: 0;
@@ -36,7 +42,7 @@
} }
.education-section .education-info-table tr:first-child .hline { .education-section .education-info-table tr:first-child .hline {
height: 60%; height: 65%;
top: auto; top: auto;
} }
@@ -102,7 +108,9 @@
border: none; border: none;
color: #212529; color: #212529;
} }
.education-section .taken-courses th.course-name-header{
width: 50%;
}
.education-section .taken-courses .hidden-course { .education-section .taken-courses .hidden-course {
display: none; display: none;
transition: all 1s ease-out; transition: all 1s ease-out;
+6
View File
@@ -6,6 +6,12 @@
margin-top: 1.5rem !important; margin-top: 1.5rem !important;
} }
.experiences-section h1 > span{
margin-top: -55px; /* Size of fixed header */
padding-bottom:55px;
display: block;
}
.experiences-section ul { .experiences-section ul {
padding-left: 1rem; padding-left: 1rem;
} }
+1 -1
View File
@@ -45,7 +45,7 @@
margin-bottom: 10px; margin-bottom: 10px;
} }
.home .greeting { .home .greeting, .home .greeting-subtitle {
color: #f9fafc; color: #f9fafc;
} }
+6
View File
@@ -2,6 +2,12 @@
padding-top: 1rem; padding-top: 1rem;
} }
.recent-posts-section h1 > span{
margin-top: -55px; /* Size of fixed header */
padding-bottom:55px;
display: block;
}
.recent-posts-section .card .card-footer span { .recent-posts-section .card .card-footer span {
font-size: 10pt; font-size: 10pt;
color: #6c757d !important; color: #6c757d !important;
+8 -1
View File
@@ -8,6 +8,12 @@
border-bottom: 0.0625rem solid rgba(0, 0, 0, 0.125); border-bottom: 0.0625rem solid rgba(0, 0, 0, 0.125);
} }
.skills-section h1 > span{
margin-top: -55px; /* Size of fixed header */
padding-bottom:55px;
display: block;
}
.skills-section .skill-card-link { .skills-section .skill-card-link {
text-decoration: none; text-decoration: none;
} }
@@ -19,6 +25,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 +64,7 @@
padding-right: 0; padding-right: 0;
} }
.skills-section .container { .skills-section .container {
max-width: 100%; max-width: 95%;
} }
} }
+3 -25
View File
@@ -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,17 +309,17 @@ 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);
} }
if (this.children["caption"] != undefined) { if (this.children["caption"] != undefined) {
this.children["caption"].classList.toggle("hidden"); this.children["caption"].classList.toggle("hidden");
} }
+11 -4
View File
@@ -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);
}
} }
}); });
+1 -1
View File
File diff suppressed because one or more lines are too long