From 6643ae5a045e10c1d99b3562b5b0534ce0d5db98 Mon Sep 17 00:00:00 2001 From: Youngbin Han Date: Tue, 9 Jan 2024 18:18:52 +0900 Subject: [PATCH] Setup blog --- .github/workflows/deploy.yml | 58 +++++++ .gitignore | 18 +++ archetypes/post.md | 18 +++ config.yaml | 65 ++++++++ content/contribute/index.md | 25 +++ content/post/welcome/index.md | 22 +++ content/tags/_index.md | 4 + go.mod | 3 + static/CNAME | 1 + static/img/committee-logo.svg | 106 +++++++++++++ static/img/favicon/android-chrome-192x192.png | Bin 0 -> 15700 bytes static/img/favicon/android-chrome-512x512.png | Bin 0 -> 58315 bytes static/img/favicon/apple-touch-icon.png | Bin 0 -> 13962 bytes static/img/favicon/favicon-16x16.png | Bin 0 -> 704 bytes static/img/favicon/favicon-32x32.png | Bin 0 -> 1608 bytes static/img/favicon/favicon.ico | Bin 0 -> 15406 bytes static/img/logo.svg | 149 ++++++++++++++++++ static/img/ubuntu_platforms.svg | 64 ++++++++ themes/ubuntu-blog-hugo/LICENSE | 20 +++ themes/ubuntu-blog-hugo/archetypes/default.md | 2 + .../ubuntu-blog-hugo/assets/sass/theme.scss | 62 ++++++++ themes/ubuntu-blog-hugo/go.mod | 3 + themes/ubuntu-blog-hugo/i18n/en.toml | 26 +++ themes/ubuntu-blog-hugo/layouts/404.html | 0 .../layouts/_default/baseof.html | 12 ++ .../layouts/_default/list.html | 52 ++++++ .../layouts/_default/single.html | 32 ++++ themes/ubuntu-blog-hugo/layouts/index.html | 51 ++++++ .../layouts/partials/discourse.html | 18 +++ .../layouts/partials/disqus.html | 20 +++ .../layouts/partials/footer.html | 28 ++++ .../layouts/partials/head.html | 26 +++ .../layouts/partials/header.html | 80 ++++++++++ .../layouts/partials/pagination.html | 60 +++++++ .../layouts/partials/scripts.html | 29 ++++ .../layouts/partials/sponsors.html | 31 ++++ .../ubuntu-blog-hugo/layouts/post/single.html | 104 ++++++++++++ .../layouts/shortcodes/button.html | 10 ++ .../layouts/shortcodes/info.html | 6 + .../layouts/shortcodes/timedisplay.html | 1 + .../ubuntu-blog-hugo/layouts/tags/terms.html | 43 +++++ themes/ubuntu-blog-hugo/package-lock.json | 27 ++++ themes/ubuntu-blog-hugo/package.json | 11 ++ themes/ubuntu-blog-hugo/static/js/slide.js | 0 .../ubuntu-blog-hugo/static/js/timedisplay.js | 21 +++ themes/ubuntu-blog-hugo/static/js/ubuntukr.js | 140 ++++++++++++++++ themes/ubuntu-blog-hugo/theme.toml | 26 +++ 47 files changed, 1474 insertions(+) create mode 100644 .github/workflows/deploy.yml create mode 100644 .gitignore create mode 100644 archetypes/post.md create mode 100644 config.yaml create mode 100644 content/contribute/index.md create mode 100644 content/post/welcome/index.md create mode 100644 content/tags/_index.md create mode 100644 go.mod create mode 100644 static/CNAME create mode 100644 static/img/committee-logo.svg create mode 100644 static/img/favicon/android-chrome-192x192.png create mode 100644 static/img/favicon/android-chrome-512x512.png create mode 100644 static/img/favicon/apple-touch-icon.png create mode 100644 static/img/favicon/favicon-16x16.png create mode 100644 static/img/favicon/favicon-32x32.png create mode 100644 static/img/favicon/favicon.ico create mode 100644 static/img/logo.svg create mode 100644 static/img/ubuntu_platforms.svg create mode 100644 themes/ubuntu-blog-hugo/LICENSE create mode 100644 themes/ubuntu-blog-hugo/archetypes/default.md create mode 100644 themes/ubuntu-blog-hugo/assets/sass/theme.scss create mode 100644 themes/ubuntu-blog-hugo/go.mod create mode 100644 themes/ubuntu-blog-hugo/i18n/en.toml create mode 100644 themes/ubuntu-blog-hugo/layouts/404.html create mode 100644 themes/ubuntu-blog-hugo/layouts/_default/baseof.html create mode 100644 themes/ubuntu-blog-hugo/layouts/_default/list.html create mode 100644 themes/ubuntu-blog-hugo/layouts/_default/single.html create mode 100644 themes/ubuntu-blog-hugo/layouts/index.html create mode 100644 themes/ubuntu-blog-hugo/layouts/partials/discourse.html create mode 100644 themes/ubuntu-blog-hugo/layouts/partials/disqus.html create mode 100644 themes/ubuntu-blog-hugo/layouts/partials/footer.html create mode 100644 themes/ubuntu-blog-hugo/layouts/partials/head.html create mode 100644 themes/ubuntu-blog-hugo/layouts/partials/header.html create mode 100644 themes/ubuntu-blog-hugo/layouts/partials/pagination.html create mode 100644 themes/ubuntu-blog-hugo/layouts/partials/scripts.html create mode 100644 themes/ubuntu-blog-hugo/layouts/partials/sponsors.html create mode 100644 themes/ubuntu-blog-hugo/layouts/post/single.html create mode 100644 themes/ubuntu-blog-hugo/layouts/shortcodes/button.html create mode 100644 themes/ubuntu-blog-hugo/layouts/shortcodes/info.html create mode 100644 themes/ubuntu-blog-hugo/layouts/shortcodes/timedisplay.html create mode 100644 themes/ubuntu-blog-hugo/layouts/tags/terms.html create mode 100644 themes/ubuntu-blog-hugo/package-lock.json create mode 100644 themes/ubuntu-blog-hugo/package.json create mode 100644 themes/ubuntu-blog-hugo/static/js/slide.js create mode 100644 themes/ubuntu-blog-hugo/static/js/timedisplay.js create mode 100644 themes/ubuntu-blog-hugo/static/js/ubuntukr.js create mode 100644 themes/ubuntu-blog-hugo/theme.toml diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..3b9fa6f --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,58 @@ +name: Deploy Website + +on: + push: + branches: [ main ] + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + # The type of runner that the job will run on + runs-on: ubuntu-latest + # Check out latest commit + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v2 + name: Checkout src repo + with: + path: src + ref: main + + - uses: actions/setup-go@v2 + with: + go-version: '^1.21.5' # The Go version to download (if necessary) and use. + + - name: Install hugo + working-directory: src + run: | + sudo snap install hugo + - name: Build website with hugo + working-directory: src + run: | + hugo mod get + cd themes/ubuntu-blog-hugo && npm i && cd ../../ + hugo + # Checkout destination branch + - uses: actions/checkout@v2 + name: Checkout dest repo + with: + path: dest + fetch-depth: 0 + ref: gh-pages + + # Commit and push changes + - name: Copy website built from src/public + working-directory: dest + run: | + rm -rf * + yes | cp -rf ../src/public/* . + # Commit and push changes + - name: Commit website updates + working-directory: dest + run: | + git config --global user.name github-actions + git config --global user.email github-actions@github.com + git add . + git diff-index --quiet HEAD || git commit -m "Deploy website updates with GitHub Actions: ${GITHUB_SHA}" + git push origin gh-pages \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..28b95ef --- /dev/null +++ b/.gitignore @@ -0,0 +1,18 @@ +# Hugo default output directory +/public + +resources +*.lock + +## OS Files +# Windows +Thumbs.db +ehthumbs.db +Desktop.ini +$RECYCLE.BIN/ + +# OSX +.DS_Store + +# NPM +node_modules \ No newline at end of file diff --git a/archetypes/post.md b/archetypes/post.md new file mode 100644 index 0000000..0d0ab5e --- /dev/null +++ b/archetypes/post.md @@ -0,0 +1,18 @@ +--- +date: {{ .Date }} +title: "Title" +tags: + - tag1 + - tag2 +authors: + - name: # Name + bio: # Short descriptoin about you + email: example@example.com # Email + launchpad: hello # Launchpad Username + github: hello # GitHub Username + profile: profile.jpg # Profile image URL +image: cover.png # Post cover image URL +draft: false # Is this post draft? +--- + +Contents here... \ No newline at end of file diff --git a/config.yaml b/config.yaml new file mode 100644 index 0000000..05bb8be --- /dev/null +++ b/config.yaml @@ -0,0 +1,65 @@ +baseURL: 'https://blog.ubuntu-kr.org' +languageCode: en +title: 'UbuCon Asia Blog' +theme: "ubuntu-blog-hugo" +buildFuture: true +paginate: 5 +outputs: + home: + - html + - rss + section: + - html + - rss + taxonomy: + - html + - rss + term: + - html +params: + shortTitle: Blog + contact: contact@ubucon.asia + facebook: ubuconasia + twitter: UbuConAsia + github: ubucon-asia + launchpad: ubucon-asia + youtube: https://www.youtube.com/@UbuConAsia + source_repo: https://github.com/ubucon-asia/blog.ubucon.asia + discourse: https://discourse.ubuntu.org/ +defaultContentLanguage: en +languages: + en: + languageName: English + title: UbuCon Asia Blog + weight: 2 + params: + shortTitle: Blog + description: >- + Latest news from UbuCon Asia Committee + copyright: >- + © 2021-Present UbuCon Asia Committee + Except where otherwise noted, Website source code licensed under MIT, Contents licensed under CC BY-SA 4.0. + Ubuntu and Canonical are registered trademarks of Canonical Ltd. + main_slide: + label: About the community + link: about + menu: + main: + - identifier: tags + name: Tags + weight: 2 + url: /tags + - identifier: subscribe + name: Subscribe(RSS) + weight: 3 + url: /index.xml + - identifier: contribute + name: Contributing to this blog + weight: 4 + url: /contribute + link: + - identifier: home + name: Homepage + weight: 1 + url: https://www.ubucon.asia + diff --git a/content/contribute/index.md b/content/contribute/index.md new file mode 100644 index 0000000..3dda785 --- /dev/null +++ b/content/contribute/index.md @@ -0,0 +1,25 @@ +--- +title: "Contributing to this blog" +--- +If you are organizer or person who contributes to UbuCon Asia, You can contribute your own posting to this blog. + +# For organizers +First, You must be a member of [`ubucon-asia`](https://github.com/ubucon-asia) organization on GitHub. You will also need read and write acccess to [`ubucon-asia/blog.ubucon.asia`](https://github.com/ubucon-asia/blog.ubucon.asia) repository. If you don't have yet, Ask may other organizers for that. + +After gaining all access you need, Clone [`ubucon-asia/blog.ubucon.asia`](https://github.com/ubucon-asia/blog.ubucon.asia) repository to your machine, And get started with writting post with steps that can be found on this [`README.md`](https://github.com/ubucon-asia/blog.ubucon.asia/blob/main/README.md). We recommend you to use dedicated branch for writing new post. + +For organizers, You don't need and review process. To publish your post, Commit post files to `main` branch then push to remote repository. Normally, It takes about 5~10 minutes to automatically publish your new post with GitHub Actions. + +# If you are not organizer +Fork our blog repository ([`ubucon-asia/blog.ubucon.asia`](https://github.com/ubucon-asia/blog.ubucon.asia)), and then clone it to your machine. And get started with writting post with steps that can be found on this [`README.md`](https://github.com/ubucon-asia/blog.ubucon.asia/blob/main/README.md). + +If you're done with writing post, Commit post files to `main` branch then push to your forked repository. Then, Submit [Pull Request](https://github.com/ubucon-asia/blog.ubucon.asia/compare) to review and publish. Our organizers will check and review your post. If your contribution has no problem, Your Pull Request will be accepted and your post will be published. + +# Not familiar with Git/GitHub? +Please send us copy of your post and your information(name, profile photo, email address and more) to us [via Email.](mailto:contact@ubucon.asia) + +# Things to note when writing post +- Content should be something related with Ubuntu or Ubuntu Korea Community. If your post has nothing to do with these, It will be rejected or deleted. +- Content must be compliant with [Ubuntu Code of Conduct](https://ubuntu.com/community/code-of-conduct) +- Do not push draft to `main` branch. If you're organizer, It is recommended to work on dedicated branch. +- Do not write post to advertise or promote sales of service, business or products \ No newline at end of file diff --git a/content/post/welcome/index.md b/content/post/welcome/index.md new file mode 100644 index 0000000..14922f6 --- /dev/null +++ b/content/post/welcome/index.md @@ -0,0 +1,22 @@ +--- +date: 2023-11-01T17:00:00+09:00 +title: "Welcome to UbuCon Asia Blog" +tags: + - ubucon +forum_username: sukso96100 +authors: + - name: Youngbin Han + bio: Organizer - UbuCon Asia & Ubuntu Korean LoCo + email: ybhan@ubuntu.com + launchpad: ybhan + github: sukso96100 + profile: https://avatars2.githubusercontent.com/u/1916739?s=460&v=4 +# image: groupphoto.jpg # 커버 이미지 URL +draft: false # 글 초안 여부 +--- + +Welcome to the UbuCon Asia Blog! This new blog will be providing latest news from the UbuCon Asia team. +There's been seperate news page on event of each years, Now rather then that. Every notices and updates will be published through this blog first. + +If you would like to keep updated with latest news from UbuCon Asia, Make sure to subscribe to our blog RSS feed. +Or you can also follow us on social media! - We plan to audo-post updates from blog in near future. \ No newline at end of file diff --git a/content/tags/_index.md b/content/tags/_index.md new file mode 100644 index 0000000..7237057 --- /dev/null +++ b/content/tags/_index.md @@ -0,0 +1,4 @@ +--- +title: Tags +description: Filter posts by tags +--- \ No newline at end of file diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..5adde28 --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module ubuntukr-blog + +go 1.18.1 diff --git a/static/CNAME b/static/CNAME new file mode 100644 index 0000000..76df819 --- /dev/null +++ b/static/CNAME @@ -0,0 +1 @@ +blog.ubucon.asia \ No newline at end of file diff --git a/static/img/committee-logo.svg b/static/img/committee-logo.svg new file mode 100644 index 0000000..1678d16 --- /dev/null +++ b/static/img/committee-logo.svg @@ -0,0 +1,106 @@ + + + + diff --git a/static/img/favicon/android-chrome-192x192.png b/static/img/favicon/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..263a46650fa0c083a9f4778a7656b01de3311906 GIT binary patch literal 15700 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

vOg)~3q1x`X*?@r+VfT+yQG zSE7T%muU~^XhV=i5GS7@SuCi*LaM&v)_no>u{)^_>{8RzFUNEAnzr|uoVM%Jgn1cJ zt$zl9vbYFW-<)7W5H)+!B*N*swFs7y~y{DuvPC19X)%P9`v3jCUi} zxn5i9T@PdabT$K$ScR{`qRU`|gNA$jH&t!K66`FErs>zv9Liji+!4)B=%ykRH@n;6 z^lvq!aR&rB-CaH76w&<#{7Sx7M7&V{(6Rn{Lb~8^VA=-xMoAbSJ0Kfw4CPh)-d?HV(w;3BtOTj+(4Rw zz4MOX^ZLeP5xuo5=*y*Vh8kpd4Fb8Cn>Q)VP0#z9v5AQQuK5rBG63{mUw*Uh?VnUf zAy&-V?^P`S`D|J*ffQ6&e+Y--Y`~DQoOkgZ;b`C~?%2C$%9dNI_L7fmPFall3c<#x zY<TX>KBX|>LA8Ur``Fu#zXjg~RA-w&y&06v;m1O(ljfH!PK3*>lmb4T)~ zpJs)^VZTB(lgp{d& zu{A%B8zNIN2RJ|F^Nw9bt^@{~qKpqCvq3f=U&tv$!Njd(N`BX0IIZxtr;k|cBjJ`l zg{MzGM|480fy_%B3>o-uUwh#jYUvxHb$Ab-laBtJXJy_d`u6$d9nt6%-i(ZRxjsP( zl4`>UVt=RA{`expLMZ0`;yAaN@8j9M?Ml)YN2TdmTB#ptYE`B8xp&C21m!GK5@yN% zBmlBnC$qD%^xSAw?eSy^P>60CMCqODq;aMU#Q!8`*~nVHohFCw3(`!+EO9Z6&R8%e z3p@*)pKEBo=*h;-8-wrmHKuv_aaKwho;uJzgApoy_d3017+Vk8_+iCk$$I1ZGh7T#s$~MSUQ}NbS3d+$ug1V&WAv>odR< zaDRJX{vdbqH;3WXI-47lj0ooE;+F&abeeVy=(Ld4!D8nbJTB~yhqvdK_e$udvfdgz z7Kcr{(|-*5l54@bNZq-wpZj+OS#ncIi3;6BJS!AQCOimBQeL&d4js|R3aQMr0IXY& zg}ELSk@3j*6c-iw9jLLT_vMJEcv*VuF8Vub3CCpvL;j9ug!h_pkeJ#ZBgjwP@0#kz z7R}4QTKpMek)>_0pE6~89cP@ty9EB<@dX<4*k(xv~5 zndGBPww&L&s{x^Lhv~nS$M)7FV`f?WnrG4p2sF#qeRhI`H{u*AhxvVl0$&%24SYe%g*VlOCAlY zV8AgbDR)R~riM@%ZqbX@mS}`9CEYv6B#p!=O$Jp(5BKS?J1_i|W(6@P%YznYQ3@3OK|njT-54sAV~83brM!YVEsy%h_z!_SetdTIC`+E7kDxC1;upnBmV zk=j#QASf<%K}OFDfc^CD-G>Z9^3fV6NjlIcz@^vo6nlgkvz(;yGJLY0XbyyKwh}V= z&WiPNpH*a>(Pq1Dw}B$+Xfbu*VeVUejQb3d{yj+{J^#%+)8g19`;f9EUM9)U{0p33 zh$E?*4~b|TCT>gy?WHOVJ7Iiy;bnL`hbg-C_+%`E8dZQcRD<4Hh8$SRywf_hdcVoR zGwx2_^@O2!Z*`gjp}&Z~zXJeloWGNKVcZ}puX^N)Bgx9P{xZ~_6jGP&l=W&x>O6?k zH2;;ncT~CRisZ}R(8iZJl7I3VpxgOqIt+0jOd4TssGp|QDxy4mUt{|z<^j@pIay_K z3#Q+=xunM)H)lhe<-N&VZl$R+%yQwd8tk{Nb1V)1feNh(^$45!e=Lc3R+XH;rH(Mu z1=KumbgX6;ff6^WJ7X4a@KcCk>S{nh9l><1BSx)Tivfbm%{16|wts9r3Qh-kC2C>pF+?GPS~jrU^v7V$?i?@W45b)C~Q-Rg7W>(m%(L%*p)VP z@4pm^$s*bIR~i_yekU&8mzG$H*V2^fjO2XPVl9fPfQ9A&4*pm=f(GbiEURfcTkS{J_KVW&FV`5vnPzca*(G@x=u|a>4cC^iM>>#tJ6vz2 zhGQR(RZg04und#Rn^uS?5iW!e_qyLyy$?0}UA^TQTykSYe8FCyZ9hGx!W3wes|06N zX&_M7&*Hjftwn0}5*AP26%l*Nf-dtLS$>fILP~lBT1Faa8y3z0lYUQ(zs|vv{=DNr znpp%4FM(&9HQ(AvB!uQ@hpBm+(3*Hjf+P$=viuwY2}=mbpx_ z+TQYg*X~kmtD0(QN8W@WW6v6Y!GI+^0lm94{Qz zY^*n*LsD8sS0j)U`PvIKsil#X8P)`8JS!Z}E;~88#NhHUU61 zA1pstd15{7I~oSq!+^N0(TTFwgZ*PF=@zUk zI6|#L#vPbM_-{$Z^+=y_RsVwJX72FZIdIyvZvB-k?h%=?AVsuWDYV4KKC|$h0$~$Y zQC!6ZS60gN+C3+2CecE<8KC|v#Wpe!DOVx!xMIeWb%K+F+qb^$uv>zAT{51Dh3JWg z`Xe#*-36keUT$DrI^1pN=h4}WCz=sh-;=}+F2l3BWc+S)25LgE_c! zcd(L959*Uc(;e4#EM~YJO<&MmP%><6m3EPR#T3Iuv+@|%%mupUCt7x@wxdk-)`;U^W=u8qX z&a_V;nzwyl385?=JowWDQPT_QjV^^JWs`3NW#pGDkuy^Un+Gz~^5z>16e?b>=9beX z<s1xvmEJ*rh`;&;GWFSAu(K<8%GJS|BW4@&1f^OZH{jm(c(!ax) z@#9nWBJDMhYJTxs+B@W%!j-2Uoiwv&@U{}%FQRP2{Y&K_io9c>0r7RKV-d#q|5$+a z`%Bd7XQgiv|F?PC#ot*2?5BzfBM|G4?gfR%%K_LEV~M}or)jC1P_fx4Egt-@RrwcK zSG-1#D&7?#p4Zecs{@-6!&SnSRuz`pQ}O1eO38RxgxBxae?hDx?{9_0VaNlatdI-$ypOboLKHI>-8NP<6q%!Q!M*a&HCU^$kBz zy1H)LR*EX~+=N~Af*uZJHFX{6BO(;m?08%whe{#{jdF6&uqXPHSb^v_qBz=QtEt?{ zi~Hxu^^55{;u#rI_l)W2YngDT?2Bd?Q#3n4Gm#Qf@y+Rb(cuvMRfMJ#OCxnk;n@z2 z;gNrtP~yJ0{jaMCE|Ndq661uo`M z-9)M?_YkwuKM8Wo(2uYG{q_0Qc0m#6s0#BL7@NHGnVe!q-~7&0!rxsls^uv@a+KC2aijmUDK{axT5ZAxZ2dka%tQ zmyYicg)ISvE4zEQcx;YIwYA|Ub2#LvTR9$4W=vMYRNNGOT~Y z2+nwRfUs;9K>Yj(E^Ey7tG&p%Q465b@s}~Gv3z|KXrl!r;OJB ze&x)dv!G49y%Lrs?0OqpIlmDG>-{^a*9+lfJa;n?Cb8#X)f}4?roa`B4*6%itGb5| z4|)oa<@jTb-`4V8*RZmc^BJHoJfXMxm!!6OSZ@=!Xi7;{f*)dp`uk%sdFXIC`f^1) zJD`q|qpRyF7@712sehpunL9|CTtN$vS+%T79W+y4I{{yYI(q6I@K}JxlKIkIo}Z+Q z%LJW?YI8ALDtG8^;fY<%im1YFO_~Cquy{}LZnh!GjFxeoyY;AOONxAOG^rzNml?C4 zZ<8KIJ^vOZEV+vF()kkV31Qxlc7vQ|T`3-Gtwz(S(dany{W2b-CJyykK|qTnKiWl> zIYjVOE4dV7b=N!|k3#DYFjS}eJVbe7yeaE;EY;z=q77b=wzuB#i-}sOk#qMn+Zlk% z7(7dr?kP&r3WdvzgT+^AebypdqAW+g&U&#((z^M)ch+pb0Q_E5NtgZ~qVA$tyW?5{ z(ZeM9CT)*011rA;XtR1xLu#}_zdzScI#sECG7JX#mP+kybqD>B2>&XB;s4^2qD4`; zFL+8Du7>nzRT6RSx=_Mn!7Z-}E&ED^%RV!PM*x~MD6PWEO=c3BTmk{E=xVIlKnj)M=zR&=~0oiArYxOy`;$II*$16~i4IVgFsW$WkRdz{F-KO9+jL+y){Fsd%1EISeK9YM_4 zZ$SOn9*Iz2`fys#+l z-hEq+rOo!Zen9Pi-6-(YZy^S@F*PH!s)p49etw5^#K8|CK3Y!4>%8`U7Q-8->%10!rmiX)gUJwQL_txL zPz3L^o=$@1Lz|KCrmq&B8TGd?Wb}e*>0xn^6?W84kXtXu#93lM+z6L*B#UR{HMu5L zJ)63fFhuD#5}pHqUcX$O#Hv~j&Ni-W76AaByY`1*ko+@;WWsd1L_g6qS%_fa_>c^I zgns}lQC7)q&^0zM19n`*M^kG_uenV2-L7-}9

bmhBoY>Hz*1CM1hKfgcJhT9=As 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 z z+U{79`TMkXuiP7CO=Bdq^?eI;+?VC^)%fx(tDcG?YuIq&e&Iu zksfkmB`r394x6&f89gh}sm?u0(PyzbpSJB#^wKWaK1_l}@5n?RzN`DrXR&HoleZo! zlve6Vf8niEjI)S~625mQF1@nZ2`3X*4ggoRO3p=Ik!|&^YlUEtS)Lr-^;zAa$x3Ze zX~gx)m1P4tgt~cuLjSvo{e-GqCIQ^)8IAY-IX-h6Gg|NJ>Z07QS*R9)6|7J4F3Te(OR{XrJ^)pCRCl7l@x{?R;vkw&^wF(}x4o4P! zpIg834KJ)9a$fj3J95&O!yK{;gt+vz3sy}s48%}465a}_{99o2h%2l1K0AjC+k6BmzHf$c#!`3 zsvig)zYkX)o|_a?Ehd1@IlTm+{&BscLtIel6{knKvlb0QW}z?>o)kFs5Zw$<_m!Cw z4rZ>@2KZqx4!`?3NS2;Bc43d^k>bKx2dID0W}Rjmb%qevt+E@_~vZkHTdH5ZNtO_JfCXRWr#$IAo6li z;5j>Gioi0}wt$}xEDC%V($d%Nt7}W*2zsxw4&ZU}U%Z6agB9)cI!3h*hu+4Q4Q0RS z%vf3(T=c#QZXIR=!*x5?iM%yv#Hd##qS_+CThhlnO&j6DcWW<{H z8QDOhX2NUxp-iZ6;alHF;n}Go0RX0aRYTR#TEkE-TJX=nZw#8!d~9R`InPhlitqOP zI?3n$H++^$vf1%bA9sOus9@^$B{bDQJf`VmdDpbW2*zb<_W7xlnRu{wzBD5SL}!9S zRn6OKU4lkjP%lT~D|C7Mppv4^PE%Rg#V;P?%IAmsJr@=Uruw^rW@w?HF3FIP!V8 zHnoSBPr;vfG0b}ZnT2BsRSe0~Rio4kC+%D~Fq8|_bB_jCGlFF-kRj7TfI4^4{1E!%6VgipyRN6Kd|7r3ubj~SjuOlKeH2`b%xmMdb> zc%9PWxVj7?fa8OL?D*%s;gigJQv7MJ;SD;-j6fu%%8brcM`{m&qzn6G3$hs`Kd^27 zMeNV#)a(WH-EnlP+gzPJ5CRAHzHIUoY)e5nzePE6AU|c}=4{um%(zt_ zT0+vxuJ`wevSuDNf0_jumZN1Oqd2HfN5MC;dAI6^wp8TLF%y0xr`ovmD8F|zXR1K+ zwRpec$CMl&90Prg3eELUYE6(tV<0gbLeNGJTBE<$FA3a`!#iDR>m zI_xqwwepL%E`3~Fy{d~y9m*-pAnGRDH5p7w^A_{H2tu>MU4YL)=5PGdHM?lEM$21+#vmN2#zwv(iId;$6OiH6xy=!sb+klOabt7^~!aPGBskve|9o$!~g&Q literal 0 HcmV?d00001 diff --git a/static/img/favicon/apple-touch-icon.png b/static/img/favicon/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..45d949bacae6cc631995b18624dd50830499463b GIT binary patch literal 13962 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 literal 0 HcmV?d00001 diff --git a/static/img/favicon/favicon-16x16.png b/static/img/favicon/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..c0237cb2c60d37bd5fab5e29114ff56ca881e039 GIT binary patch literal 704 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 + + +image/svg+xml \ No newline at end of file diff --git a/static/img/ubuntu_platforms.svg b/static/img/ubuntu_platforms.svg new file mode 100644 index 0000000..b9f0811 --- /dev/null +++ b/static/img/ubuntu_platforms.svg @@ -0,0 +1,64 @@ + + + +Created with Fabric.js 4.6.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/LICENSE b/themes/ubuntu-blog-hugo/LICENSE new file mode 100644 index 0000000..e4483e2 --- /dev/null +++ b/themes/ubuntu-blog-hugo/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2021 YOUR_NAME_HERE + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/themes/ubuntu-blog-hugo/archetypes/default.md b/themes/ubuntu-blog-hugo/archetypes/default.md new file mode 100644 index 0000000..ac36e06 --- /dev/null +++ b/themes/ubuntu-blog-hugo/archetypes/default.md @@ -0,0 +1,2 @@ ++++ ++++ diff --git a/themes/ubuntu-blog-hugo/assets/sass/theme.scss b/themes/ubuntu-blog-hugo/assets/sass/theme.scss new file mode 100644 index 0000000..c3057df --- /dev/null +++ b/themes/ubuntu-blog-hugo/assets/sass/theme.scss @@ -0,0 +1,62 @@ +// Import the framework +@import 'vanilla-framework/scss/vanilla'; + +// Include all of Vanilla Framework +@include vanilla; + +// Icons +@include vf-p-icon-begin-downloading; +@include vf-p-icon-machines; +@include vf-p-icon-switcher-dashboard; +@include vf-p-icon-exposed; +@include vf-p-icon-user-group; +@include vf-p-icon-topic; +@include vf-p-icon-comments; +@include vf-p-icon-highlight-off; + + +.p-navigation__dropdown-item { + color: white !important; +} + +section { + padding-left : 1em; + padding-right: 1em; +} + +.main-strip .right-section { + animation-duration: 1s; + animation-name : slidein-rtl; +} + + + +.main-strip .left-section { + animation-duration: 1s; + animation-name : slidein-ltr; +} + + +@keyframes slidein-rtl { + from { + transform: translateX(50px); + opacity : 0; + } + + to { + transform: translateX(0); + opacity : 1; + } +} + +@keyframes slidein-ltr { + from { + transform: translateX(-50px); + opacity : 0; + } + + to { + transform: translateX(0); + opacity : 1; + } +} \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/go.mod b/themes/ubuntu-blog-hugo/go.mod new file mode 100644 index 0000000..73672f9 --- /dev/null +++ b/themes/ubuntu-blog-hugo/go.mod @@ -0,0 +1,3 @@ +module ubuntu-kr-theme + +go 1.17 diff --git a/themes/ubuntu-blog-hugo/i18n/en.toml b/themes/ubuntu-blog-hugo/i18n/en.toml new file mode 100644 index 0000000..1dde2ba --- /dev/null +++ b/themes/ubuntu-blog-hugo/i18n/en.toml @@ -0,0 +1,26 @@ +[next] +other = "Next" +[prev] +other = "Previous" + +[forums] +other = "Forums" +[fb_groups] +other = "Facebook Groups" +[wiki] +other = "Wiki" +[tutorials] +other = "Tutorials" +[chat] +other = "Chat" +[mailing_list] +other = "Mailing List" +[group_studies_projects] +other = "Group studies/Projects" +[translate_ubuntu] +other = "Translate Ubuntu" + +[footer_contact] +other = "Contact with Organizers (Email)" +[footer_src_repo] +other = "Source code on GitHub" \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/404.html b/themes/ubuntu-blog-hugo/layouts/404.html new file mode 100644 index 0000000..e69de29 diff --git a/themes/ubuntu-blog-hugo/layouts/_default/baseof.html b/themes/ubuntu-blog-hugo/layouts/_default/baseof.html new file mode 100644 index 0000000..c2f5a46 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/_default/baseof.html @@ -0,0 +1,12 @@ + + + {{- partial "head.html" . -}} + + {{- partial "header.html" . -}} +

+ {{- block "main" . }}{{- end }} +
+ {{- partial "footer.html" . -}} + {{- partial "scripts.html" . -}} + + diff --git a/themes/ubuntu-blog-hugo/layouts/_default/list.html b/themes/ubuntu-blog-hugo/layouts/_default/list.html new file mode 100644 index 0000000..8e6a8f6 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/_default/list.html @@ -0,0 +1,52 @@ +{{ define "body_class" }} tag-template {{ end }} +{{ define "main" }} + +{{ $allPages := .Site.Pages }} +{{ range .Site.Home.Translations }} +{{ $allPages = $allPages | lang.Merge .Site.Pages }} +{{ end }} + +{{ $regularPages := .Site.RegularPages }} +{{ range .Site.Home.Translations }} +{{ $regularPages = $regularPages | lang.Merge .Site.RegularPages }} +{{ end }} + +
+
+
+
+

{{.Title}}

+

{{.Params.description}}

+
+
+
+
+
+
+
+ {{ $pages := .Paginator.Pages }} + {{ range .Site.Home.Translations }} + {{ $pages = $pages | lang.Merge .Paginator.Pages }} + {{ end }} + + {{ range where $pages "Section" "post" }} +
+

{{.Title}}

+
    + {{range .Params.authors}} +
  • + {{.name}} +
  • + {{end}} +
+

{{.Date.Format "2006-01-02T15:04:05-07:00"}}

+

{{.Summary}}

+
+ {{ end }} + {{- partial "pagination.html" . -}} +
+
+
+
+
+{{ end }} \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/_default/single.html b/themes/ubuntu-blog-hugo/layouts/_default/single.html new file mode 100644 index 0000000..c625602 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/_default/single.html @@ -0,0 +1,32 @@ +{{ define "main" }} + + +
+
+
+ {{if .Params.image}} +
+
+

{{.Title}}

+

{{.Params.description}}

+
+
+ {{else}} +
+

{{.Title}}

+

{{.Params.description}}

+
+ {{end}} +
+
+
+
+ {{ .Content }} +
+
+ +
+{{ end }} \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/index.html b/themes/ubuntu-blog-hugo/layouts/index.html new file mode 100644 index 0000000..33d4269 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/index.html @@ -0,0 +1,51 @@ +{{ define "main" }} + +{{ $allPages := .Site.Pages }} +{{ range .Site.Home.Translations }} +{{ $allPages = $allPages | lang.Merge .Site.Pages }} +{{ end }} + +{{ $regularPages := .Site.RegularPages }} +{{ range .Site.Home.Translations }} +{{ $regularPages = $regularPages | lang.Merge .Site.RegularPages }} +{{ end }} + +
+
+
+
+

{{.Site.Title}}

+

{{.Site.Params.description}}

+
+
+
+
+
+
+
+ {{ $pages := .Paginator.Pages }} + {{ range .Site.Home.Translations }} + {{ $pages = $pages | lang.Merge .Paginator.Pages }} + {{ end }} + + {{ range where $pages "Section" "post" }} +
+

{{.Title}}

+
    + {{range .Params.authors}} +
  • + {{.name}} +
  • + {{end}} +
+

{{.Date.Format "2006-01-02T15:04:05-07:00"}}

+

{{.Summary}}

+
+ {{ end }} + {{- partial "pagination.html" . -}} +
+
+
+
+
+{{ end }} \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/partials/discourse.html b/themes/ubuntu-blog-hugo/layouts/partials/discourse.html new file mode 100644 index 0000000..2f52db4 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/partials/discourse.html @@ -0,0 +1,18 @@ +
+{{with .Params.forum_username }} + +{{end}} + + \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/partials/disqus.html b/themes/ubuntu-blog-hugo/layouts/partials/disqus.html new file mode 100644 index 0000000..28c86e5 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/partials/disqus.html @@ -0,0 +1,20 @@ +
+ + +comments powered by Disqus diff --git a/themes/ubuntu-blog-hugo/layouts/partials/footer.html b/themes/ubuntu-blog-hugo/layouts/partials/footer.html new file mode 100644 index 0000000..3563763 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/partials/footer.html @@ -0,0 +1,28 @@ +
+
+
+

{{.Site.Title}}

+ +

{{.Site.Params.copyright}}

+ {{ i18n "footer_src_repo" }} +
+
\ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/partials/head.html b/themes/ubuntu-blog-hugo/layouts/partials/head.html new file mode 100644 index 0000000..0b038ad --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/partials/head.html @@ -0,0 +1,26 @@ + + + + + + + + + + {{- $options := (dict "includePaths" (slice "node_modules") "transpiler" "dartsass") -}} + {{ $style := resources.Get "sass/theme.scss" | resources.ToCSS $options | resources.Minify | resources.Fingerprint }} + {{ .Title }} | {{ .Site.Title }} + + + + + + + + + + + + + + \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/partials/header.html b/themes/ubuntu-blog-hugo/layouts/partials/header.html new file mode 100644 index 0000000..e016e6a --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/partials/header.html @@ -0,0 +1,80 @@ + diff --git a/themes/ubuntu-blog-hugo/layouts/partials/pagination.html b/themes/ubuntu-blog-hugo/layouts/partials/pagination.html new file mode 100644 index 0000000..0c72e95 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/partials/pagination.html @@ -0,0 +1,60 @@ +{{ $pag := $.Paginator }} +{{ if gt $pag.TotalPages 1 -}} + +{{ end }} \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/partials/scripts.html b/themes/ubuntu-blog-hugo/layouts/partials/scripts.html new file mode 100644 index 0000000..1d8e5d9 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/partials/scripts.html @@ -0,0 +1,29 @@ + + + + +{{ template "_internal/google_analytics.html" . }} \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/partials/sponsors.html b/themes/ubuntu-blog-hugo/layouts/partials/sponsors.html new file mode 100644 index 0000000..aae8eaf --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/partials/sponsors.html @@ -0,0 +1,31 @@ +{{ $allPages := .Site.Pages }} +{{ range .Site.Home.Translations }} +{{ $allPages = $allPages | lang.Merge .Site.Pages }} +{{ end }} + +{{ $regularPages := .Site.RegularPages }} +{{ range .Site.Home.Translations }} +{{ $regularPages = $regularPages | lang.Merge .Site.RegularPages }} +{{ end }} + +
+
+
+

후원사

+

+ 다양한 회사, 기관, 단체에서 우분투 한국 커뮤니티를 여러 방법으로 후원하여, 더 활발한 활동을 할 수 있도록 돕고 있습니다. +

+ +
+
+ {{ $sponsors := (where $regularPages "Section" "sponsors") }} + {{ range $sponsors }} + + {{ end }} +
+
+
+
+
\ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/post/single.html b/themes/ubuntu-blog-hugo/layouts/post/single.html new file mode 100644 index 0000000..4296fc1 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/post/single.html @@ -0,0 +1,104 @@ +{{ define "main" }} + + +
+
+
+ {{if .Params.image}} +
+
+

{{.Title}}

+
    + {{range .Params.authors}} +
  • + {{.name}} +
  • + {{end}} +
+

{{.Date.Format "2006-01-02T15:04:05-07:00"}}

+

{{.Params.description}}

+ {{range .Params.tags}} + +
+ {{.}} +
+
+ {{end}} +
+
+ {{else}} +
+

{{.Title}}

+
    + {{range .Params.authors}} +
  • + {{.name}} +
  • + {{end}} +
+

{{.Date.Format "2006-01-02T15:04:05-07:00"}}

+

{{.Params.description}}

+ {{range .Params.tags}} + +
+ {{.}} +
+
+ {{end}} +
+ {{end}} +
+
+
+
+ {{ .Content }} +
+
+
+
+ {{range .Params.authors}} +
+
+ +
+

+ {{.name}} +

+

{{.bio}}

+
    + {{with .email}}
  • Email
  • {{end}} + {{with .launchpad}}
  • Launchpad
  • {{end}} + {{with .github}}
  • GitHub
  • {{end}} +
+
+
+ {{end}} +
+ {{ partial "discourse.html" . }} +
+ +
+
+
+
+ +
+
+
+{{ end }} \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/shortcodes/button.html b/themes/ubuntu-blog-hugo/layouts/shortcodes/button.html new file mode 100644 index 0000000..5d89d13 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/shortcodes/button.html @@ -0,0 +1,10 @@ + + + diff --git a/themes/ubuntu-blog-hugo/layouts/shortcodes/info.html b/themes/ubuntu-blog-hugo/layouts/shortcodes/info.html new file mode 100644 index 0000000..885331c --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/shortcodes/info.html @@ -0,0 +1,6 @@ +
+
+
{{.Get "title"}}
+

{{.Get "content"}}

+
+
\ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/shortcodes/timedisplay.html b/themes/ubuntu-blog-hugo/layouts/shortcodes/timedisplay.html new file mode 100644 index 0000000..e42daed --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/shortcodes/timedisplay.html @@ -0,0 +1 @@ +{{ .Get "datetime" }} \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/layouts/tags/terms.html b/themes/ubuntu-blog-hugo/layouts/tags/terms.html new file mode 100644 index 0000000..92370c7 --- /dev/null +++ b/themes/ubuntu-blog-hugo/layouts/tags/terms.html @@ -0,0 +1,43 @@ +{{ define "main" }} + +{{ $allPages := .Site.Pages }} +{{ range .Site.Home.Translations }} +{{ $allPages = $allPages | lang.Merge .Site.Pages }} +{{ end }} + +{{ $regularPages := .Site.RegularPages }} +{{ range .Site.Home.Translations }} +{{ $regularPages = $regularPages | lang.Merge .Site.RegularPages }} +{{ end }} + +
+
+
+
+

{{.Title}}

+

{{.Params.description}}

+
+
+
+
+
+
+
+ {{ $tags := $.Site.Taxonomies.tags.ByCount }} + {{ $v2 := where $tags "Term" "not in" (slice "hugo" "tags" "rss") }} + {{ range $v2 }} + {{ if .Term }} + {{ $tagURL := printf "tags/%s" .Term | relURL }} + +
+ {{ .Term }}{{ .Count }} +
+
+ {{ end }} + {{ end }} +
+
+
+
+
+{{ end }} \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/package-lock.json b/themes/ubuntu-blog-hugo/package-lock.json new file mode 100644 index 0000000..659d49c --- /dev/null +++ b/themes/ubuntu-blog-hugo/package-lock.json @@ -0,0 +1,27 @@ +{ + "name": "ubuntu-blog-hugo", + "version": "0.1.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "ubuntu-blog-hugo", + "version": "0.1.0", + "dependencies": { + "vanilla-framework": "^4.5.1" + } + }, + "node_modules/vanilla-framework": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/vanilla-framework/-/vanilla-framework-4.5.1.tgz", + "integrity": "sha512-vF7GGZsXcQZnM2522Q2am08to/iM2K+EhsfYPuYsiHvp2kRGxY/rJ8tcjbKftNY859qOqT8yJg0PE+sVmKI5zg==" + } + }, + "dependencies": { + "vanilla-framework": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/vanilla-framework/-/vanilla-framework-4.5.1.tgz", + "integrity": "sha512-vF7GGZsXcQZnM2522Q2am08to/iM2K+EhsfYPuYsiHvp2kRGxY/rJ8tcjbKftNY859qOqT8yJg0PE+sVmKI5zg==" + } + } +} diff --git a/themes/ubuntu-blog-hugo/package.json b/themes/ubuntu-blog-hugo/package.json new file mode 100644 index 0000000..1c02381 --- /dev/null +++ b/themes/ubuntu-blog-hugo/package.json @@ -0,0 +1,11 @@ +{ + "comments": { + "dependencies": {}, + "devDependencies": {} + }, + "dependencies": { + "vanilla-framework": "^4.5.1" + }, + "name": "ubuntu-blog-hugo", + "version": "0.1.0" +} diff --git a/themes/ubuntu-blog-hugo/static/js/slide.js b/themes/ubuntu-blog-hugo/static/js/slide.js new file mode 100644 index 0000000..e69de29 diff --git a/themes/ubuntu-blog-hugo/static/js/timedisplay.js b/themes/ubuntu-blog-hugo/static/js/timedisplay.js new file mode 100644 index 0000000..5b9fb81 --- /dev/null +++ b/themes/ubuntu-blog-hugo/static/js/timedisplay.js @@ -0,0 +1,21 @@ +window.addEventListener('load', ()=>{ + let elements = document.getElementsByClassName("timedisplay"); + for (let element of elements) { + let display = element.getAttribute("display"); + let timeSource = element.innerHTML; + let date = new Date(timeSource); + if (date instanceof Date && !isNaN(date)){ + switch(display){ + case "date": + element.innerHTML = date.toLocaleDateString(); + break; + case "time": + element.innerHTML = date.toLocaleTimeString(); + break; + default: + element.innerHTML = date.toLocaleString(); + break; + } + } + } +}) \ No newline at end of file diff --git a/themes/ubuntu-blog-hugo/static/js/ubuntukr.js b/themes/ubuntu-blog-hugo/static/js/ubuntukr.js new file mode 100644 index 0000000..08d93c0 --- /dev/null +++ b/themes/ubuntu-blog-hugo/static/js/ubuntukr.js @@ -0,0 +1,140 @@ +function toggleDropdown(toggle, open) { + var parentElement = toggle.parentNode; + var dropdown = document.getElementById(toggle.getAttribute('aria-controls')); + dropdown.setAttribute('aria-hidden', !open); + + if (open) { + parentElement.classList.add('is-active'); + } else { + parentElement.classList.remove('is-active'); + } + } + + function closeAllDropdowns(toggles) { + toggles.forEach(function (toggle) { + toggleDropdown(toggle, false); + }); + } + + function handleClickOutside(toggles, containerClass) { + document.addEventListener('click', function (event) { + var target = event.target; + + if (target.closest) { + if (!target.closest(containerClass)) { + closeAllDropdowns(toggles); + } + } else if (target.msMatchesSelector) { + // IE friendly `Element.closest` equivalent + // as in https://developer.mozilla.org/en-US/docs/Web/API/Element/closest + do { + if (target.msMatchesSelector(containerClass)) { + return; + } + target = target.parentElement || target.parentNode; + } while (target !== null && target.nodeType === 1); + + closeAllDropdowns(toggles); + } + }); + } + + function initNavDropdowns(containerClass) { + var toggles = [].slice.call(document.querySelectorAll(containerClass + ' [aria-controls]')); + + handleClickOutside(toggles, containerClass); + + toggles.forEach(function (toggle) { + toggle.addEventListener('click', function (e) { + e.preventDefault(); + + closeAllDropdowns(toggles); + toggleDropdown(toggle, true); + }); + }); + } + + initNavDropdowns('.p-navigation__item--dropdown-toggle') + + /** + Toggles the necessary aria- attributes' values on the menus + and handles to show or hide them. + @param {HTMLElement} element The menu link or button. + @param {Boolean} show Whether to show or hide the menu. + @param {Number} top Top offset in pixels where to show the menu. +*/ +function toggleMenu(element, show, top) { + var target = document.getElementById(element.getAttribute('aria-controls')); + + if (target) { + element.setAttribute('aria-expanded', show); + target.setAttribute('aria-hidden', !show); + + if (typeof top !== 'undefined') { + target.style.top = top + 'px'; + } + + if (show) { + target.focus(); + } + } +} + +/** + Attaches event listeners for the menu toggle open and close click events. + @param {HTMLElement} menuToggle The menu container element. +*/ +function setupContextualMenu(menuToggle) { + menuToggle.addEventListener('click', function (event) { + event.preventDefault(); + var menuAlreadyOpen = menuToggle.getAttribute('aria-expanded') === 'true'; + + var top = menuToggle.offsetHeight; + // for inline elements leave some space between text and menu + if (window.getComputedStyle(menuToggle).display === 'inline') { + top += 5; + } + + toggleMenu(menuToggle, !menuAlreadyOpen, top); + }); +} + +/** + Attaches event listeners for all the menu toggles in the document and + listeners to handle close when clicking outside the menu or using ESC key. + @param {String} contextualMenuToggleSelector The CSS selector matching menu toggle elements. +*/ +function setupAllContextualMenus(contextualMenuToggleSelector) { + // Setup all menu toggles on the page. + var toggles = document.querySelectorAll(contextualMenuToggleSelector); + + for (var i = 0, l = toggles.length; i < l; i++) { + setupContextualMenu(toggles[i]); + } + + // Add handler for clicking outside the menu. + document.addEventListener('click', function (event) { + for (var i = 0, l = toggles.length; i < l; i++) { + var toggle = toggles[i]; + var contextualMenu = document.getElementById(toggle.getAttribute('aria-controls')); + var clickOutside = !(toggle.contains(event.target) || contextualMenu.contains(event.target)); + + if (clickOutside) { + toggleMenu(toggle, false); + } + } + }); + + // Add handler for closing menus using ESC key. + document.addEventListener('keydown', function (e) { + e = e || window.event; + + if (e.keyCode === 27) { + for (var i = 0, l = toggles.length; i < l; i++) { + toggleMenu(toggles[i], false); + } + } + }); +} + +setupAllContextualMenus('.p-contextual-menu__toggle'); diff --git a/themes/ubuntu-blog-hugo/theme.toml b/themes/ubuntu-blog-hugo/theme.toml new file mode 100644 index 0000000..926555b --- /dev/null +++ b/themes/ubuntu-blog-hugo/theme.toml @@ -0,0 +1,26 @@ +# theme.toml template for a Hugo theme +# See https://github.com/gohugoio/hugoThemes#themetoml for an example + +name = "ubuntu-blog-hugo" +license = "MIT" +licenselink = "https://github.com/yourname/yourtheme/blob/master/LICENSE" +description = "" +homepage = "http://example.com/" +tags = [] +features = [] +min_version = "0.41.0" + +[author] + name = "" + homepage = "" + +# If porting an existing theme +[original] + name = "" + homepage = "" + repo = "" + +[module] + [[module.mounts]] + source = "node_modules" + target = "assets/node_modules" \ No newline at end of file