From eb44d00725d6e43f856457d380d852296c0a24ef Mon Sep 17 00:00:00 2001 From: emerson Date: Sun, 4 Aug 2024 21:52:05 -0300 Subject: [PATCH] Novo AliceClash em progresso --- _includes/Pages/aulas.html | 27 + _includes/Pages/autores.html | 26 + _includes/Pages/index.html | 36 ++ _includes/SideBar.html | 70 ++- _includes/formularios/envAula.html | 60 +-- _layouts/default.html | 21 +- assets/css/stylesheet.css | 763 ++++++++++++++++++----------- assets/images/AliceClassIcon.png | Bin 0 -> 14657 bytes assets/images/_background.svg | 1 + assets/images/background.svg | 1 + aulas.md | 37 +- autores.md | 29 +- dashboard.html | 6 + dashboard.php | 9 + index.html | 39 +- 15 files changed, 652 insertions(+), 473 deletions(-) create mode 100644 _includes/Pages/aulas.html create mode 100644 _includes/Pages/autores.html create mode 100644 _includes/Pages/index.html create mode 100644 assets/images/AliceClassIcon.png create mode 100644 assets/images/_background.svg create mode 100644 assets/images/background.svg create mode 100644 dashboard.html create mode 100644 dashboard.php diff --git a/_includes/Pages/aulas.html b/_includes/Pages/aulas.html new file mode 100644 index 0000000..b3326c7 --- /dev/null +++ b/_includes/Pages/aulas.html @@ -0,0 +1,27 @@ +
+
+

Aulas

+ Criar aula +
+
+ {% assign aulas = site.aulas | sort: 'date' | reverse %} + {% assign max_aulas = 3 %} + + {% for aula in aulas %} + {% assign nome = aula.name | replace: ".md","" %} +
+
+
+ +
+
+ +
+

{{ aula.title }}

+

{{ aula.description }}

+
+
+ + {% endfor %} +
+
\ No newline at end of file diff --git a/_includes/Pages/autores.html b/_includes/Pages/autores.html new file mode 100644 index 0000000..cf7102d --- /dev/null +++ b/_includes/Pages/autores.html @@ -0,0 +1,26 @@ +
+
+

Autores

+ Criar aula +
+
+ {% assign autores = site.autores %} + + {% for autor in autores %} + {% assign nome = autor.name | replace: ".md","" %} +
+
+
+ +
+
+ +
+

{{ autor.title }}

+

{{ autor.content }}

+
+
+ + {% endfor %} +
+
\ No newline at end of file diff --git a/_includes/Pages/index.html b/_includes/Pages/index.html new file mode 100644 index 0000000..0c25b80 --- /dev/null +++ b/_includes/Pages/index.html @@ -0,0 +1,36 @@ +
+ + +
+
+

Ultimas aulas

+
+ +
+ {% assign aulas = site.aulas | sort: 'date' | reverse %} + {% assign max_aulas = 3 %} + {% assign count = 0 %} + + {% for aula in aulas %} + {% if count < max_aulas %} + {% assign nome = aula.name | replace: ".md","" %} +
+
+
+ +
+
+ +
+

{{ aula.title }}

+

{{ aula.description }}

+
+
+ {% endif %} + {% endfor %} +
+
+
\ No newline at end of file diff --git a/_includes/SideBar.html b/_includes/SideBar.html index aec9d5d..85cc100 100755 --- a/_includes/SideBar.html +++ b/_includes/SideBar.html @@ -1,60 +1,76 @@ - - - + \ No newline at end of file diff --git a/_layouts/default.html b/_layouts/default.html index 859fd14..8f98a1d 100755 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -4,7 +4,7 @@ - + {% if page.styles %}{{ page.styles }}{% endif %} @@ -14,24 +14,13 @@ </head> <body> - <div class="is-flex is-flex-direction-row is-full-width"> - <div class="is-flex"> + <div class="main-content"> + <div class="page-sidebar"> {% include SideBar.html %} </div> - <div class="is-flex"> - <div class="is-flex-grow-5 is-flex is-flex-direction-column"> - {% include TopBar.html %} - <main class=""> - {{ content }} - </main> - - - - </div> + <div class="page-content"> + {{content}} </div> </div> - <footer> - <!-- Conteúdo do rodapé --> - </footer> </body> </html> \ No newline at end of file diff --git a/assets/css/stylesheet.css b/assets/css/stylesheet.css index 0ffbbd6..f5bb4fd 100755 --- a/assets/css/stylesheet.css +++ b/assets/css/stylesheet.css @@ -1,316 +1,495 @@ -/* Vai ficar um pouco bagunçado, mas por enquanto. */ +/* ================================================================================================================================== */ +/* Variables */ +:root { + /* Paleta de cors */ + --midnight-blue: #0B1A33; + --cornflower-blue: #4B90F8; + --goldenrod: #D6A419; + --caribbean-green: #00C6BE; + --deep-ruby: #623A40; + --ivory: #F1F1E6; + --alice-blue: #F4F9FF; + --charcoal-blue: #35405D; + --slate-gray: #616B8B; + --light-slate-gray: #909ABB; + --periwinkle: #2d2e31; -/* COLORS */ -.blue-text{ - color: #0b1a33; -} -.blue-background{ - background-color: #0b1a33; -} -/* DEFAULT-CSS */ -h1{ - font-family: 'Roboto', sans-serif; - font-size: 32pt; /* Tamanho da fonte */ -} -h2 { - font-family: 'Roboto', sans-serif; - font-size: 1.5em; /* Tamanho da fonte */ - color: #333; /* Cor do texto */ + /* Informaçoes da paleta de cores */ + --primary-color: var(--midnight-blue); + --secondary-color: var(--cornflower-blue); + --tertiary-color: var(--periwinkle); + --gradient-backfround: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(75,144,248,1) 19%, rgba(97,157,246,1) 85%, rgba(241,241,230,0) 100%); + --accent-color: var(--goldenrod); + --background-color: var(--charcoal-blue); + --text-color: var( --alice-blue); + --secondary-text-color: var(--slate-gray); + --border-color: var(--deep-ruby); + --highlight-color: var(--caribbean-green); + --error-color: var(--slate-gray); + --success-color: var(--light-slate-gray); + --warning-color: var(--periwinkle); + --info-color: var(--ivory); + + --font-family: 'Roboto', sans-serif; + --heading-color: var(--alice-blue); + --heading-margin: 0 0 20px; } -h3 { - font-family: 'Roboto', sans-serif; - color: #333; /* Cor do texto */ +/* ================================================================================================================================== */ +/* Reset and Base Styles */ +*, +*::before, +*::after { + box-sizing: border-box; + margin: 0; + padding: 0; + /* background-color: var(--background-color); */ +} +/* ================================================================================================================================== */ +/* Body */ +body { + /* background-color: var(--background-color); */ + color: var(--heading-color); + background-color: var(--background-color); + scroll-behavior: smooth; } -.is-full-width{ +/* ================================================================================================================================== */ +/* Estilos básicos para todos os cabeçalhos */ +h1, h2, h3, h4, h5, h6 { + font-family: var(--font-family); + color: var(--heading-color); +} +/* ================================================================================================================================== */ +/* CSS do Layout Default da pagina _layout/default.html */ + +.main-content{ width: 100%; + + display: flex; + flex-direction: row; + + padding: 30px 25px; } -.is-full{ + +.page-sidebar{ + width: 100px; + flex-grow: 1; + margin: 0 25px; +} +.page-content{ + width: 100px; + + background-color: var(--tertiary-color); + flex-grow: 10; + margin: 0 25px; + border-radius: 30px; + + box-shadow: -10px 5px 15px var(--primary-color); +} + +/* ================================================================================================================================== */ +/* SideBar _include/SideBar.html */ +.SideBar{ + display: flex; + flex-direction: column; + height: 90vh; + position: fixed; + +} + +.SideBar .top-sidebar{ + flex-grow: 1; + display: flex; + align-items: end; + justify-content: start; +} +.SideBar aside{ + flex-grow: 6; + +} + +.SideBar .button-sidebar{ + flex-grow: 1; + display: flex; + align-items: end; + justify-content: start; +} + +.SideBar .image{ + width: 90%; + height: auto; + margin: 30px 0px; +} + +.menu{ + color: var(--text-color); +} + +.menu li{ + list-style: none; + font-family: var(--font-family); + + padding: 15px 10px; + +} +.menu li:hover{ + /* background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(75,144,248,1) 19%, rgba(97,157,246,1) 85%, rgba(241,241,230,0) 100%); */ + padding: 15px 15px; + cursor: pointer; +} + +.menu a{ + color: var(--text-color); + text-decoration: none; +} + +.menu a:hover{ + color: var(--secondary-text-color); +} + +/* --- */ +.button-sidebar li{ + list-style: none; + font-family: var(--font-family); + + padding: 15px 10px; + +} + +.button-sidebar li a{ + color: var(--text-color); + text-decoration: none; +} + +/* ================================================================================================================================== */ +/* CSS do index da pagina _content/Pages/index.html */ + +.home-content { + width: 100%; + + border-radius: 30px 30px 0px 0; +} + +.home-content .banner{ + height: 500px; + width: 100%; + background: url('/assets/images/background.svg') ; + background-size: cover; + background-position: center; + border-radius: 30px; + + padding: 0 25px; + + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; +} + +.lasted{ + display: flex; + flex-direction: column; + + padding: 0 35px; + border-radius: 30px; +} + +.lasted .title-section{ + height: 80px; + width: 100%; + + margin: 25px 0; + + display: flex; + align-items: center; + justify-content: center; +} + +.lasted .title{ + font-weight: 300; + +} + +.lasted .content-box{ + width: 100%; + + margin: 25px 0; + + display: flex; + align-items: center; + justify-content: center; + +} + +.lasted .content-box .box{ + height: 500px; + width: 400px; + + display: flex; + flex-direction: column; + background-color: var(--background-color); + box-shadow: -10px 5px 5px var(--primary-color); + + margin: 0 25px; +} + +.box .box-top{ + display: flex; + background-color: #623A40; + flex-grow: 1; +} + +.box .box-top figure img{ width: 100%; height: 100%; } -/* Body */ -body { - transition: background-image 1s; - background-size: cover; -} - -/* SIDEBAR-CSS */ -@media only screen and (min-width: 720px) { - .SideBar { - /* background-color: black; */ - height: 100%; - width: 200px; - z-index: 1000; - /* overflow: hidden; */ - padding-top: 10px; - } -} -@media screen and (max-width: 1080px) { - .SideBar { - /* background-color: black; */ - height: 100%; - width: 70px; - z-index: 1000; - overflow: hidden; - padding-top: 40px; - } - .menu-txt{ - display: none; - } -} -.menu{ - margin-top: 20px; - } -.top-sidebar { - /* height: 10px; */ - width: 70%; -} -.item-menu:hover { - background-color: #b4f2ff; -} -.active { - background-color: #5ce1f4; -} -.background { - background-color: #0b1a33; -} -.logo{ - width: 50%; - /* margin-top: 80px; */ -} -p { - word-wrap: break-word; /* Força a quebra de palavras para evitar esticar o item além do contêiner */ -} - -/* TOPBAR-CSS */ - -@media only screen and (min-width: 720px) { - nav{ - height: 100px; - /* width: 101rem; */ - background-color: #0b1a33; - } -} -@media screen and (max-width: 1080px) { - nav{ - height: 100px; - /* width: 101rem; */ - background-color: #0b1a33; -} -} -input{ - width: 300px; - /* height: 40px; */ - background-color: #0b1a33; - border-color: #5ce1f4; - color: #fff; - font-family: 'Roboto', sans-serif; - -} -input::placeholder{ - color: #fff; - font-family: 'Roboto', sans-serif; - -} -.nav-item h5 a{ - color: #fff; -} -.LinkName{ - color: #5ce1f4 !important; -} -.visible{ - display: none; -} -.usuario{ - color: #fff; - font-family: 'Roboto', sans-serif; -} - - -.card-container { - display: flex; - flex-wrap: wrap; - gap: 10px; /* Espaçamento entre os cards */ -} - -/* HOME-CSS */ - -.about-image{ - /* height: 500px; */ -} -.home-title{ - font-weight: bold; - font-size: 40pt; - /* width: 80%; */ -} - -.home-text { - display: block; - text-align: center; /* Opcional: centraliza o texto */ - text-align: start; -} -.home-image{ - width: auto; - height: auto; -} -.home-text p{ - font-size: 30pt; -} - -/* Aulas CSS */ - -/* .card-container { - display: flex; - flex-wrap: wrap; - flex-direction: row; - gap: 20px; - justify-content: flex-start; -} - -.column { - margin-bottom: 20px; -} */ - - -/* AUTORES-CSS */ - -.author-img{ - width: 30%; - height: auto; -} -.author-info{ - color: #fff; -} - -.author-title{ - font-weight: bold; - padding-left: 30px; -} - -.author-container{ - background-color: #333; - padding: 25px; -} - -.user-title{ - color: #5ce1f4; -} - -.user-details{ - color: #5ce1f4; -} - -/* AULAS-CSS */ - -.detals-aula{ - -} - -.aula-title{ - font-weight: bold; - padding-left: 30px; - background-color: #333; - color: #fff; -} -.aula-name{ - font-size: 12pt; - padding-left: 35px; - color: #5ce1f4; - - text-align: start; -} -.aula-video{ - width: 95%; -} -.content-aula{ - padding-left: 45px; - width: 100%; - background-color: #333; - color: #fff; -} - -.content-aula > * { - width: 95%; -} - -/* CURSOS */ - -.disable{ - display: none; -} -.title-Background{ - background-color: #333; - color: #fff; -} -.video-curso video{ - width: 100%; - height: auto; -} - -/* CHAT */ -.chat-background{ - background-color: #333; -} -.chat-container { - width: 40%; - margin: 20px auto; +.box .box-info{ display: flex; flex-direction: column; - height: 70vh; + flex-grow: 1; + + + margin: 15px; } -/* .chat-line{ + +.box .box-info h1{ + width: 100%; + + margin: 25px 0; + font-size: 24px; +} + +.box .box-info p{ + font-size: 18px; +} + +/* ================================================================================================================================== */ +/* CSS da pagina Aulas localizada em _content/Pages/index.html */ + +.aulas-content{ + width: 100%; + + padding: 15px; +} +.aulas-content .title-content{ width: 100%; - height: 10px; - border-radius: 10px; -} */ -.message { - max-width: auto; - margin: 10px; - padding: 10px; - border-radius: 10px; display: flex; - position: relative; + flex-direction: row; + padding: 15px; +} + +.aulas-content .title-content > :nth-child(1){ + flex-grow: 5; /* Este elemento crescerá 5 partes */ +} +.aulas-content .title-content > :nth-child(1){ + flex-grow: 2; /* Este elemento crescerá 5 partes */ } -.received { - background-color: #f0f0f0; +.aulas-content .title-content .button{ + font-family: var(--font-family); + font-weight: 500; + + display: inline-block; + font-weight: 400; + text-align: center; + vertical-align: middle; + cursor: pointer; + user-select: none; + background-color: var(--success-color); /* Cor de fundo padrão (Bulma: primary color) */ + border: 1px solid transparent; + border-radius: 4px; + color: #fff; /* Cor do texto */ + padding: 0.5rem 1rem; /* Espaçamento interno */ + font-size: 1rem; + line-height: 1.5; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +.aulas-content .content{ + display: flex; + flex-direction: row; + + justify-content: center; + align-items: center; + + width: 100%; + flex-wrap: wrap; + /* height: 100px; */ +} + +.aulas-content .content .box{ + height: 500px; + width: 400px; + + display: flex; + flex-direction: column; + background-color: var(--background-color); + box-shadow: -5px 5px 15px var(--primary-color); + + margin: 25px 25px; +} + +/* ================================================================================================================================== */ +/* CSS da pagina autores localizada em _content/Pages/autores.html */ + +.autores-content{ + width: 100%; + + padding: 15px; +} +.autores-content .title-content{ + width: 100%; + display: flex; + flex-direction: row; + padding: 15px; +} + +.autores-content .title-content > :nth-child(1){ + flex-grow: 5; /* Este elemento crescerá 5 partes */ +} +.autores-content .title-content > :nth-child(1){ + flex-grow: 2; /* Este elemento crescerá 5 partes */ +} + +.autores-content .title-content .button{ + font-family: var(--font-family); + font-weight: 500; + + display: inline-block; + font-weight: 400; + text-align: center; + vertical-align: middle; + cursor: pointer; + user-select: none; + background-color: var(--success-color); /* Cor de fundo padrão (Bulma: primary color) */ + border: 1px solid transparent; + border-radius: 4px; + color: #fff; /* Cor do texto */ + padding: 0.5rem 1rem; /* Espaçamento interno */ + font-size: 1rem; + line-height: 1.5; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} + +.autores-content .content{ + display: flex; + flex-direction: row; + + justify-content: center; + align-items: center; + + width: 100%; + flex-wrap: wrap; + /* height: 100px; */ +} + +.autores-content .content .box{ + height: 600px; + width: 400px; + + display: flex; + flex-direction: column; + background-color: var(--background-color); + box-shadow: -5px 5px 15px var(--primary-color); + + margin: 25px 25px; +} + + +/* ================================================================================================================================== */ +/* CSS da pagina autores localizada em _includes/formularios/envAula.html */ + +.envArquivo h1{ + font-family: var(--font-family); + margin: 30px ; +} + +.envArquivo{ + display: flex; + align-items: start; justify-content: start; - align-self: flex-start; - /* float: left; */ + flex-direction: column; + margin: 0 30px; } -.received-name{ - font-size: 6pt; - color: #0b1a33; - font-weight: bold; - text-shadow: -1px -1px 0 #fff, - 1px -1px 0 #fff, - -1px 1px 0 #fff, - 1px 1px 0 #fff; /* Sombra do texto */ +/* +.envArquivo .field{ + height: 30%; + width: 100%; - position: absolute; - bottom: 0; - top: -5px; -} -.sent { - background-color: #dcf8c6; - justify-content: end; - align-self: flex-end; - /* float: right; */ + margin: 0 30px; } -.sent-name{ - font-size: 6pt; - color: #0b1a33; - font-weight: bold; - text-shadow: -1px -1px 0 #fff, - 1px -1px 0 #fff, - -1px 1px 0 #fff, - 1px 1px 0 #fff; /* Sombra do texto */ +.envArquivo .field .label{ + font-family: var(--font-family); + font-weight: 400; +} +.envArquivo .field .input { + height: 30px; + width: 200px; - position: absolute; - bottom: 0; - top: -5px; -} \ No newline at end of file + border-radius: 10px; +} + +.envArquivo .field-row{ + display: flex; + flex-direction: row; + +} */ + + +.input.input { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + display: block; + width: 100%; + height: 2.5em; + padding: 0.5em 0.75em; + font-size: 1em; + line-height: 1.5; + color: #363636; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #dbdbdb; + border-radius: 4px; + box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1); + transition: border-color 0.2s ease, box-shadow 0.2s ease; + } + + /* Placeholder */ + input.input::placeholder { + color: #b5b5b5; + } + + /* Focus */ + input.input:focus { + border-color: #3273dc; + box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); + outline: none; + } + + /* Modificações personalizadas */ + input.input.custom { + border-radius: 8px; /* Arredondar mais os cantos */ + border-color: #ff3860; /* Cor de borda personalizada */ + background-color: #f9f9f9; /* Cor de fundo personalizada */ + } + + input.input.custom:focus { + border-color: #ff79b0; + box-shadow: 0 0 0 0.125em rgba(255, 56, 96, 0.25); + } + + /* Estados de erro */ + input.input.custom.is-danger { + border-color: #ff3860; + box-shadow: 0 0 0 0.125em rgba(255, 56, 96, 0.25); + } + + /* Estados de sucesso */ + input.input.custom.is-success { + border-color: #23d160; + box-shadow: 0 0 0 0.125em rgba(35, 209, 96, 0.25); + } diff --git a/assets/images/AliceClassIcon.png b/assets/images/AliceClassIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..fdfd376160207ee8cf6f5dd197f85985d32dfcdd GIT binary patch literal 14657 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 literal 0 HcmV?d00001 diff --git a/assets/images/_background.svg b/assets/images/_background.svg new file mode 100644 index 0000000..0f31e1e --- /dev/null +++ b/assets/images/_background.svg @@ -0,0 +1 @@ +<svg id="visual" viewBox="0 0 900 600" width="900" height="600" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1"><defs><filter id="blur1" x="-10%" y="-10%" width="120%" height="120%"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"></feBlend><feGaussianBlur stdDeviation="161" result="effect1_foregroundBlur"></feGaussianBlur></filter></defs><rect width="900" height="600" fill="#0B1A33"></rect><g filter="url(#blur1)"><circle cx="744" cy="298" fill="#00C6BE" r="357"></circle><circle cx="844" cy="26" fill="#0B1A33" r="357"></circle><circle cx="51" cy="224" fill="#00C6BE" r="357"></circle><circle cx="495" cy="84" fill="#00C6BE" r="357"></circle><circle cx="233" cy="12" fill="#0B1A33" r="357"></circle><circle cx="371" cy="566" fill="#00C6BE" r="357"></circle></g></svg> \ No newline at end of file diff --git a/assets/images/background.svg b/assets/images/background.svg new file mode 100644 index 0000000..58eac06 --- /dev/null +++ b/assets/images/background.svg @@ -0,0 +1 @@ +<svg id="visual" viewBox="0 0 900 600" width="900" height="600" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1"><defs><filter id="blur1" x="-10%" y="-10%" width="120%" height="120%"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"></feBlend><feGaussianBlur stdDeviation="161" result="effect1_foregroundBlur"></feGaussianBlur></filter></defs><rect width="900" height="600" fill="#4B90F8"></rect><g filter="url(#blur1)"><circle cx="194" cy="271" fill="#0B1A33" r="357"></circle><circle cx="895" cy="29" fill="#4B90F8" r="357"></circle><circle cx="434" cy="572" fill="#0B1A33" r="357"></circle><circle cx="632" cy="511" fill="#0B1A33" r="357"></circle><circle cx="673" cy="300" fill="#4B90F8" r="357"></circle><circle cx="870" cy="414" fill="#0B1A33" r="357"></circle></g></svg> \ No newline at end of file diff --git a/aulas.md b/aulas.md index c16d2df..6eaf4d2 100755 --- a/aulas.md +++ b/aulas.md @@ -2,39 +2,4 @@ layout: default lang: pt --- - -<div class="is-flex is-flex-direction-row mt-6 mx-6 "> - <h1 class="title is-flex-grow-1">Aulas</h1> - <button class="button is-link" id="NovoPodcast">Criar aula</button> -</div> - -<div class="mx-6 mt-6"> - {% assign aulas = site.aulas | sort: 'date' | reverse %} - <div class="columns is-multiline"> - {% for aula in aulas %} - {% assign nome = aula.name | replace: ".md","" %} - <div class="column is-one-third"> - <a href='{{ site.baseurl }}{{ aula.url }}.html' class="card-link"> - <div class="card"> - <div class="card-image"> - <figure class="image is-4by3"> - <img src="{{ site.baseurl }}/assets/thumbs/{{ nome }}.jpg"> - </figure> - </div> - <div class="card-content"> - <div class="content my-2"> - <h1 class="title is-size-4">{{ aula.title }}</h1> - <h3 class="subtitle is-size-6">{{ aula.level }}</h3> - <h3 class="is-size-6">{{ aula.description }}</h3> - <div class="is-flex is-flex-direction-row is-align-items-center "> - <span class="is-size-6 is-flex-grow-4 blue-text">{{ aula.author }}</span> - <span class="is-size-7">{{ aula.date | date: "%d-%m-%y"}}</span> - </div> - </div> - </div> - </div> - </a> - </div> - {% endfor %} - </div> -</div> \ No newline at end of file +{% include Pages/aulas.html %} diff --git a/autores.md b/autores.md index cbac4b5..c479ad4 100755 --- a/autores.md +++ b/autores.md @@ -2,32 +2,5 @@ layout: default lang: pt --- -<div class="is-flex is-flex-direction-row mt-6 mx-6 "> - <h1 class="title is-flex-grow-1">Autores</h1> - <button class="button is-link" id="NovoPodcast">Cadastrar como autor</button> -</div> -<div class="mx-6 mt-6"> - {% assign autores = site.autores | sort: 'name' %} - <div class="columns is-multiline"> - {% for autor in autores %} - {% assign nome = autor.name | replace: ".md","" %} - <div class="column is-one-third"> - <a href='{{ site.baseurl }}{{ autor.url }}.html' class="card-link"> - <div class="card"> - <div class="card-image"> - <figure class="image is-square"> - <img src="{{ site.baseurl }}/autores/{{ nome }}.jpg"> - </figure> - </div> - <div class="card-content"> - <div class="content my-2"> - <h1 class="title is-size-4">{{ nome }}</h1> - </div> - </div> - </div> - </a> - </div> - {% endfor %} - </div> -</div> +{% include Pages/autores.html %} diff --git a/dashboard.html b/dashboard.html new file mode 100644 index 0000000..1f016af --- /dev/null +++ b/dashboard.html @@ -0,0 +1,6 @@ +--- +layout: default +lang: pt +--- + +<iframe src="dashboard.php" frameborder="0" style="width: 100%; height: 100%;"></iframe> \ No newline at end of file diff --git a/dashboard.php b/dashboard.php new file mode 100644 index 0000000..70bc00b --- /dev/null +++ b/dashboard.php @@ -0,0 +1,9 @@ +<?php + // Autenticação básica HTTP para obter o nome de usuário + $username = $_SERVER['PHP_AUTH_USER']; + + // Exibir o nome de usuário + echo '<div class="username">'; + echo 'Usuário: ' . htmlspecialchars($username); + echo '</div>'; +?> \ No newline at end of file diff --git a/index.html b/index.html index 14085f4..d4eae8a 100755 --- a/index.html +++ b/index.html @@ -2,41 +2,4 @@ layout: default --- - - -<div class="is-flex is-flex-direction-row is-justify-content-end px-6" style="height: 80vh;"> - <div class="is-flex is-flex-direction-column"> - <h1 class="home-title">Bem-vindo ao nosso espaço educacional aberto!</h1> - <p class="home-text"> - <br > Aqui você encontrará uma comunidade colaborativa onde o conhecimento é compartilhado livremente. <br > Explore cursos, aulas e materiais educativos criados por diversos colaboradores. Sinta-se à vontade para contribuir, modificar e expandir o aprendizado coletivo. <br> Juntos, vamos construir uma plataforma educacional inclusiva e dinâmica! - </p> - </div> - <!-- <div class="home-image is-flex"> - <img - class="about-image" - src="{{ site.baseurl }}/assets/images/about-image.png" - /> - </div> --> -</div> - -<h1 class="home-title px-6" >Confira nossos cursos</h1> -{% assign cursos = site.cursos | sort: 'date' %} -<ul class="aula px-6"> - {% for curso in cursos %} - {% assign nome = curso.name | replace: ".md","" %} - <li> - <a href='{{ site.baseurl }}{{ curso.url }}.html' > - <div class="card mx-1 my-1"> - <div class="card-content"> - <div class="content my-2"> - <h1 class="title is-size-4">{{ nome }}</h1> - </div> - </div> - </div> - </a> - </li> - {% endfor %} - - - - \ No newline at end of file +{% include Pages/index.html %} \ No newline at end of file