diff --git a/assets/css/reset.css b/assets/css/reset.css new file mode 100644 index 0000000..b42a2a2 --- /dev/null +++ b/assets/css/reset.css @@ -0,0 +1,129 @@ +/* http://meyerweb.com/eric/tools/css/reset/ + v2.0 | 20110126 + License: none (public domain) +*/ + +html, +body, +div, +span, +applet, +object, +iframe, +h1, +h2, +h3, +h4, +h5, +h6, +p, +blockquote, +pre, +a, +abbr, +acronym, +address, +big, +cite, +code, +del, +dfn, +em, +img, +ins, +kbd, +q, +s, +samp, +small, +strike, +strong, +sub, +sup, +tt, +var, +b, +u, +i, +center, +dl, +dt, +dd, +ol, +ul, +li, +fieldset, +form, +label, +legend, +table, +caption, +tbody, +tfoot, +thead, +tr, +th, +td, +article, +aside, +canvas, +details, +embed, +figure, +figcaption, +footer, +header, +hgroup, +menu, +nav, +output, +ruby, +section, +summary, +time, +mark, +audio, +video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +/* HTML5 display-role reset for older browsers */ +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +menu, +nav, +section { + display: block; +} +body { + line-height: 1; +} +ol, +ul { + list-style: none; +} +blockquote, +q { + quotes: none; +} +blockquote:before, +blockquote:after, +q:before, +q:after { + content: ""; + content: none; +} +table { + border-collapse: collapse; + border-spacing: 0; +} diff --git a/assets/css/style.css b/assets/css/style.css new file mode 100644 index 0000000..e02ab1b --- /dev/null +++ b/assets/css/style.css @@ -0,0 +1,870 @@ +* { + box-sizing: border-box; + --primary-color: #ed1c24; + --content-width: 1422px; + --gutter: 30px; + --collumn: 91px; +} + +html { + font-size: 62.5%; + font-family: "Arial", sans-serif; +} + +.main-content { + width: --content-width; + max-width: var(--content-width); + margin: 0 auto; + border-left: 24px transparent solid; + border-right: 24px transparent solid; +} + +h2 { + font-size: 3.6rem; +} + +h3 { + font-size: 2.4rem; + padding-top: 48px; + padding-bottom: 16px; +} + +a { + text-decoration: none; + color: black; +} + +nav .body { + width: 100%; + display: flex; + align-items: center; + justify-content: center; + margin-top: 12px; +} + +nav ul { + display: flex; + margin-left: 60px; + gap: 3em; +} + +nav ul li { + display: flex; + align-items: center; + justify-content: center; +} + +nav a { + vertical-align: middle; + font-size: 1.8rem; + color: black; + font-weight: 700; + opacity: 0.87; +} + +nav a.focus { + color: var(--primary-color); +} + +nav a:after { + content: ""; + width: 18px; + height: 18px; + vertical-align: middle; + display: inline-block; + background: url(/assets/img/arrow_drop_down.svg); + background-size: contain; + background-repeat: no-repeat; + opacity: 0.5; +} + +.ulti .breadcrumb { + width: 100%; + height: 32px; + border-bottom: 1px #ccc solid; + overflow-x: auto; + scrollbar-width: none; +} + +.ulti li { + opacity: 80%; + display: flex; + align-items: center; +} + +.ulti li:not(:first-child)::before { + content: "\\"; + margin-right: 8px; + font-size: 1.6rem; +} + +.ulti a { + font-size: 1.6rem; + white-space: nowrap; +} + +.header .body { + margin-top: 28px; + display: flex; + flex-wrap: wrap; +} + +.header .section1 { + width: 23.41%; +} + +.header .section2 { + width: 76.59%; + /* max-width: calc(1422px - 333px); */ + border-left: 1px #ccc solid; + font-size: 1rem; +} + +.header .search { + margin-top: 4.8em; + margin-left: 3.2em; + display: flex; + align-items: center; + width: 100%; + width: calc(100% - 6.4em); + height: 7.2em; + border-radius: 2px; + background: var(--primary-color); +} + +.header .search-box { + position: relative; + display: flex; + align-items: center; + margin-left: 12px; + margin-right: 12px; + width: 60em; + height: 48px; + border-radius: 2px; + background: white; +} + +.header .search-box span { + margin-left: 3.2em; + font-size: 1.6rem; + opacity: 60%; +} + +.header .search-box .material-symbols-outlined { + position: absolute; + right: 0.4em; +} + +.header .intro { + max-width: 665px; + margin: 32px auto 0; + border-left: 32px transparent solid; + border-right: 32px transparent solid; +} + +.header h1 { + font-weight: 700; + font-size: 4.8rem; +} + +.header .intro .address { + display: block; + margin-top: 2em; + line-height: 1.5; + font-size: 1.6rem; +} + +.header .intro .button { + display: inline-block; + margin-top: 32px; +} + +.header .notification { + font-size: 1rem; + border-radius: 4px; + display: flex; + align-items: center; + gap: 1.2em; + margin-top: 3.2em; + /* height: 16em; */ + padding: 3.2em 0; + border: 1px #ccc solid; + padding-right: 3.2em; + box-shadow: -3px 0px 0px 0px var(--primary-color); +} + +.header .notification-info span { + display: block; +} +.header .notification-heading { + font-size: 1.8rem; + line-height: 1.5; + margin-bottom: 0.66em; +} + +.notification-text { + font-size: 1.6rem; + line-height: 1.3; +} + +.header .section1 ul li { + font-size: 1.6rem; + line-height: 1.5; + margin-left: 1em; + padding: 24px 0; + border-bottom: 1px #ccc solid; +} + +.header .section1 ul li a:hover { + color: var(--primary-color); +} + +table { + display: block; + width: 100%; + margin-bottom: 96px; + overflow-x: auto; +} + +table tr { + display: flex; + gap: 24px; + margin-bottom: 24px; + border-bottom: 1px #ccc solid; +} + +table td { + width: 144px; + height: 76px; + border-radius: 4; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + gap: 8px; +} + +table td:not(:first-child) { + border-left: 4px #ccc solid; + background: rgba(35, 35, 35, 0.1); +} + +table td:first-child { + border-left: 4px #ffc5c7 solid; + background: var(--primary-color); +} + +table td:first-child span { + color: #fff1f2; +} + +table td:not(:first-child):hover { + background: rgba(204, 204, 204, 0.6); +} + +/* table td.mandatory { + opacity: 0.6; +} + +table td.compulsory { + opacity: 0.65; +} + +table td.base { + opacity: 0.7; +} + +table td.specialized { + opacity: 1; +} */ + +table td span { + display: block; + font-size: 1.6rem; + text-align: center; + color: black; + font-weight: 700; +} + +table td span + span { + font-weight: 400; + opacity: 0.87; +} + +/**/ + +.introduce { + display: block; + margin-top: 184px; + font-size: 1rem; + background: #ccc; +} + +.introduce .carousel { + position: relative; + width: 100%; +} + +.introduce .intro-list { + display: grid; + grid-template-columns: repeat(2, 100%); + overflow-x: auto; + scrollbar-width: none; + scroll-behavior: none; +} + +.introduce .slide-btn { + z-index: 4; + position: absolute; + width: 4.8em; + height: 4.8em; + color: white; + background: black; + border-radius: 50%; + border: none; + outline: none; + padding: 0; + /* cursor: pointer; */ + top: 50%; + transform: translatey(-50%); +} + +.introduce .slide-btn span { + font-size: 2.4rem; + line-height: 1.33; + text-align: center; +} + +.introduce .slide-btn#prev-btn { + left: 1.2em; +} + +.introduce .slide-btn#next-btn { + right: 1.2em; +} + +.introduce ul { + width: 100%; + height: 100%; +} + +.introduce ul li { + display: block; + width: 100%; + height: inherit; +} + +.introduce .card { + position: relative; + width: 100%; + height: 100%; + max-width: 1089px; + max-height: 625px; + font-size: 1rem; + overflow: hidden; +} + +/* .introduce li:nth-child(1) .card { + background: url(/assets/img/ptit-3.jpg); + background-size: cover; + background-repeat: no-repeat; +} + +.introduce li:nth-child(2) .card { + background: url(/assets/img/ptit-4.jpg); + background-size: cover; + background-repeat: no-repeat; +} */ + +.introduce .card img { + height: 100%; +} + +.introduce .card-heading { + z-index: 1; + top: 60%; + left: 7%; + position: absolute; + display: block; + /* width: 400px; + padding: 16px 24px; */ + width: 16.6em; + padding: 0.67em 1em; + font-size: 2.4rem; + font-weight: 700; + color: white; + background-color: var(--primary-color); + border: 2px #ff0000 solid; + border-radius: 8px; +} + +.introduce .card-info { + /* width: 600px; */ + /* padding: 16px; */ + width: 33.3em; + padding: 0.9em; + position: absolute; + top: 72%; + left: 5%; + font-size: 1.8rem; + line-height: 1.25; + color: white; + background: rgba(0, 0, 0, 0.8); +} + +.statictic { + display: flex; + align-self: center; + justify-content: center; + width: 100%; + margin-top: 9.6em; + gap: 8em; +} +.statictic span { + display: block; +} + +.statictic span.icon { + color: var(--primary-color); + font-size: 6rem; + cursor: default; +} +.statictic span.number { + font-size: 4rem; + font-weight: 700; + color: var(--primary-color); + margin-bottom: 0.2em; +} + +.statictic span.desc { + font-size: 1.6rem; + color: black; + opacity: 0.87; +} + +.statictic .count, +.statictic .contributor { + display: flex; + align-items: center; + gap: 1.2em; + font-size: 1rem; +} + +.cta { + display: flex; + flex-direction: column; + align-items: center; + gap: 1.6em; + margin-top: 9.6em; + padding-bottom: 9.6em; +} + +.cta .quote { + font-size: 3.6rem; + text-align: center; + word-wrap: break-word; + font-weight: 700; + color: var(--primary-color); +} + +.cta .message { + font-size: 1.8rem; + text-align: center; + word-wrap: break-word; + max-width: 44.4em; + line-height: 1.5; +} + +.footer .main-content { + border-top: 1px #ccc solid; + padding-top: 56px; +} + +.footer .map { + display: flex; + flex-wrap: wrap; + gap: 20px; +} + +.footer .map .menu, +.footer .map .search, +.footer .map .help { + width: 300px !important; +} + +.footer .map .header { + font-size: 1.8rem; + font-weight: 700; +} + +.footer .map a { + font-size: 1.8rem; + line-height: 1.5; + color: var(--primary-color); +} + +.footer .map ul { + margin-top: 12px; + display: flex; + flex-direction: column; + gap: 12px; +} + +.footer .map > div:not(:first-child) { + padding: 36px 18px; + width: 20%; +} + +.footer .map > div:not(:first-child) { + border-left: 1px #ccc solid; +} + +.footer .map .search-box { + margin-top: 36px; + width: calc(23.41% - 28px - 20px); + display: flex; + align-items: center; + height: 48px; + margin-right: 28px; + border-radius: 4px; + border: 1px #ccc solid; +} + +.footer .search-box span { + font-size: 1.8rem; +} + +.footer .search-box .icon { + font-size: 2.2rem; + margin-right: 16px; + margin-left: auto; +} + +.footer .search-box .hint { + margin-left: 16px; +} + +.footer .connect { + margin-top: 48px; + border-top: 1px #ccc solid; + display: flex; + align-items: center; + justify-content: space-between; +} + +.footer .connect .icon { + font-size: 1.8rem; + color: var(--primary-color); +} + +.footer .copyright { + display: flex; + align-items: center; + margin-top: 16px; + margin-bottom: 48px; + gap: 4px; +} + +.footer .copyright i { + font-size: 1.8rem; +} +.footer .copyright span { + font-size: 1.8rem; +} + +.view-doc { + position: fixed; + top: 0; + left: 0; + width: 100vw; + height: 100vh; + background: rgba(0, 0, 0, 0.5); + transform: scale(0); +} + +.view-doc.active { + transform: scale(1); +} + +.view-doc.active .content { + transform: translate(-50%, -50%) scale(1); +} + +.view-doc .content { + position: fixed; + top: 50vh; + left: 50vw; + transform: translate(-50%, -50%) scale(0); + transition: transform 800ms ease; + width: 60%; + /* max-width: 789px; */ + /* background: #eeeeee; */ + background: white; + height: 540px; + /* border-radius: 4px; */ +} + +.view-imgbook { + margin-left: 20px; + width: 100px; + padding: 28px 0; + height: fit-content; +} + +.view-imgbook img { + width: 100%; +} + +.view-document { + position: relative; + display: flex; + align-items: center; + gap: 48px; + margin-top: 40px; + margin-left: auto; + margin-right: auto; + height: 201px; + width: calc(100% - 184px); + background: #e4e5e5ad; + border-bottom: 3px #ccc solid; +} + +.view-info { + display: flex; + flex-direction: column; +} + +.view-title { + font-size: 2rem; + font-weight: 700; + padding-bottom: 16px; +} + +.view-number { + font-size: 16px; + opacity: 0.87; +} + +.view-btn { + display: flex; + align-items: center; + gap: 8px; + width: fit-content; + text-align: center; + color: #a41016; + font-size: 1.6rem; + padding: 4px 8px; + /* background-color: var(--primary-color); */ + border: 2px #a41016 solid; + border-radius: 4px; + cursor: pointer; +} + +.view-available-document { + margin-top: 32px; + /* margin-left: 92px; */ + margin-left: auto; + margin-right: auto; + width: calc(100% - 192px); +} + +.view-available-document span { + display: block; + padding-bottom: 24px; + font-size: 1.8rem; + opacity: 0.6; +} + +.view-available-document .list { + display: flex; + flex-wrap: wrap; + width: 100%; +} + +.view-available-document .list li:not(:last-child) { + margin-right: 80px; +} + +.view-available-document .list img { + width: 48px; +} + +.view-available-document .list li > div { + display: flex; + flex-direction: column; + gap: 8px; + align-items: center; + justify-content: center; +} + +.view-available-document .list li > div > span { + font-size: 1.6rem; + opacity: 0.87; +} + +.view-close-btn { + display: flex; + align-items: center; + justify-content: center; + width: 48px; + height: 48px; + color: rgba(0, 0, 0, 0.87); + position: absolute; + z-index: 1; + right: 12px; + top: 12px; + background: none; + border: none; + cursor: pointer; +} + +.view-close-btn span { + font-weight: 700; + font-size: 3.8rem; + opacity: 0.6; +} + +.view-close-btn:hover { + border-radius: 2px; + background: rgba(0, 0, 0, 0.1); +} + +@media screen and (max-width: 1300px) { + .card-heading { + display: none !important; + } + .card-info { + display: none; + } +} + +@media screen and (max-width: 1000px) { + nav ul { + gap: 1.5em; + } +} + +@media screen and (max-width: 940px) { + nav ul { + display: none; + } + + .header .section1 { + width: 100%; + } + + .header .section2 .search { + margin-top: 20px; + } + + .header .section1 .title { + margin-bottom: 8px; + } + + .header .section1 .title { + border-left: 2px var(--primary-color) solid; + border-right: none !important; + } + + .header .section1 ul { + margin-left: 1em; + } + + .header .section1 ul li { + display: inline-block; + font-size: 1.4rem; + margin-left: 4px; + margin-bottom: 8px; + padding: 4px 8px; + background: #eeeeee; + border-radius: 4px; + border-bottom: 1px #ccc solid; + } + + .header .section1 ul li:hover { + background: #ed1c24; + } + + .header .section1 ul li:hover a { + color: white; + } + + .header .section2 { + border: none; + width: 100%; + } + + .header .search-box { + width: calc(100% - 24px); + } + + .footer .map .search-box { + width: 100%; + margin-right: 0; + } + + .statictic { + gap: 4em; + } + + .view-document { + justify-content: center; + } + + .view-available-document, + .view-document { + width: calc(100% - 96px); + } + + .view-document .view-imgbook { + display: none; + } + + .view-available-document .list li { + margin-right: 0 !important; + } + + .view-available-document .list { + justify-content: space-between; + gap: 8px; + } + + .view-available-document .list span { + display: none; + } + + .view-title { + font-size: 1.8rem; + } +} + +@media screen and (max-width: 768px) { + .header .section2 .search { + width: 100%; + margin-left: 0; + margin-right: 0; + } + + .slide-btn { + display: none; + } + + .statictic { + gap: 2em; + } + + .statictic .number { + font-size: 3rem !important; + } + + .view-doc .content { + width: 80% !important; + } +} + +@media screen and (max-width: 480px) { + .view-available-document, + .view-document { + width: calc(100% - 64px); + } +} diff --git a/assets/img/arrow_drop_down.svg b/assets/img/arrow_drop_down.svg new file mode 100644 index 0000000..d6d6a21 --- /dev/null +++ b/assets/img/arrow_drop_down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/available-icon1.svg b/assets/img/available-icon1.svg new file mode 100644 index 0000000..161a888 --- /dev/null +++ b/assets/img/available-icon1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/available-icon2.svg b/assets/img/available-icon2.svg new file mode 100644 index 0000000..55f4586 --- /dev/null +++ b/assets/img/available-icon2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/available-icon3.svg b/assets/img/available-icon3.svg new file mode 100644 index 0000000..1653eb5 --- /dev/null +++ b/assets/img/available-icon3.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/available-icon4.svg b/assets/img/available-icon4.svg new file mode 100644 index 0000000..e8af7ba --- /dev/null +++ b/assets/img/available-icon4.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/bg.jpg b/assets/img/bg.jpg new file mode 100644 index 0000000..848d640 Binary files /dev/null and b/assets/img/bg.jpg differ diff --git a/assets/img/bg2.jpg b/assets/img/bg2.jpg new file mode 100644 index 0000000..42f6e3c Binary files /dev/null and b/assets/img/bg2.jpg differ diff --git a/assets/img/book.svg b/assets/img/book.svg new file mode 100644 index 0000000..202c0da --- /dev/null +++ b/assets/img/book.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/cntt.jpg b/assets/img/cntt.jpg new file mode 100644 index 0000000..e7bd4b0 Binary files /dev/null and b/assets/img/cntt.jpg differ diff --git a/assets/img/icon-tc.svg b/assets/img/icon-tc.svg new file mode 100644 index 0000000..ad08856 --- /dev/null +++ b/assets/img/icon-tc.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/icon.svg b/assets/img/icon.svg new file mode 100644 index 0000000..3c3dce3 --- /dev/null +++ b/assets/img/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/logo-1.svg b/assets/img/logo-1.svg new file mode 100644 index 0000000..7c89858 --- /dev/null +++ b/assets/img/logo-1.svg @@ -0,0 +1 @@ +PTITLIBRARY \ No newline at end of file diff --git a/assets/img/logo-2.svg b/assets/img/logo-2.svg new file mode 100644 index 0000000..3ca89d5 --- /dev/null +++ b/assets/img/logo-2.svg @@ -0,0 +1 @@ +PTITLIBRARY \ No newline at end of file diff --git a/assets/img/logo-3.svg b/assets/img/logo-3.svg new file mode 100644 index 0000000..a270a9c --- /dev/null +++ b/assets/img/logo-3.svg @@ -0,0 +1 @@ +PTITLIBRARY \ No newline at end of file diff --git a/assets/img/logo-4.svg b/assets/img/logo-4.svg new file mode 100644 index 0000000..585181a --- /dev/null +++ b/assets/img/logo-4.svg @@ -0,0 +1 @@ +PTITLIBRARY \ No newline at end of file diff --git a/assets/img/logo.svg b/assets/img/logo.svg new file mode 100644 index 0000000..0ddf2cc --- /dev/null +++ b/assets/img/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/ptit-2.png b/assets/img/ptit-2.png new file mode 100644 index 0000000..aead2ca Binary files /dev/null and b/assets/img/ptit-2.png differ diff --git a/assets/img/ptit-3.jpg b/assets/img/ptit-3.jpg new file mode 100644 index 0000000..6e00f6c Binary files /dev/null and b/assets/img/ptit-3.jpg differ diff --git a/assets/img/ptit-4.jpg b/assets/img/ptit-4.jpg new file mode 100644 index 0000000..e7bd4b0 Binary files /dev/null and b/assets/img/ptit-4.jpg differ diff --git a/assets/img/ptit.png b/assets/img/ptit.png new file mode 100644 index 0000000..00b3cdc Binary files /dev/null and b/assets/img/ptit.png differ diff --git a/assets/js/script.js b/assets/js/script.js new file mode 100644 index 0000000..200ac36 --- /dev/null +++ b/assets/js/script.js @@ -0,0 +1,115 @@ +const initSlider = () => { + const imageList = document.querySelector(".introduce .intro-list"); + const slideButtons = document.querySelectorAll(".introduce .slide-btn"); + const scrollbarThumb = document.querySelector( + ".introduce .scrollbar-thumb" + ); + const maxScrollLeft = imageList.scrollWidth - imageList.clientWidth; + + slideButtons.forEach((button) => { + button.addEventListener("click", () => { + const direction = button.id === "prev-btn" ? -1 : 1; + const scrollAmount = imageList.clientWidth * direction; + console.log(scrollAmount); + imageList.scrollBy({ left: scrollAmount, behavior: "smooth" }); + }); + }); + + imageList.addEventListener("scroll", () => { + // updateScrollThumbPosition(); + const scrollPosition = imageList.scrollLeft; + const thumbPosition = + (scrollPosition / maxScrollLeft) * + (imageList.clientWidth - scrollbarThumb.offsetWidth); + console.log("${thumbPosition}px"); + scrollbarThumb.style.left = `${thumbPosition}px`; + }); +}; + +window.addEventListener("load", initSlider); + +var navbar = document.querySelector("nav"); + +console.log(window.innerWidth + " " + window.innerHeight); + +// carousel + +window.addEventListener("resize", function () { + var carousel = document.querySelector(".introduce ul"); + var width_carousel = carousel.clientWidth; + var height_carousel = width_carousel * 0.573921; + carousel.style.height = height_carousel + "px"; +}); + +window.addEventListener("resize", function () { + var item = document.querySelector(".header .search"); + console.log(item.clientWidth); +}); + +var listSubject = document.querySelectorAll("td"); +console.log("len" + listSubject.length); +for (var i = 0; i < listSubject.length; i++) { + var tableData = listSubject[i]; + + var a = document.createElement("a"); + var div = document.createElement("div"); + + a.href = "#!"; + a.style.width = "100%"; + a.style.height = "100%"; + div.innerHTML = tableData.innerHTML; + + tableData.innerHTML = ""; + a.appendChild(div); + tableData.appendChild(a); + + div.style.display = "flex"; + div.style.flexDirection = "column"; + div.style.alignItems = "center"; + div.style.justifyContent = "center"; + div.style.gap = "8px"; + + a.style.display = "flex"; + a.style.alignItems = "center"; + a.style.justifyContent = "center"; +} + +var viewDoc = document.querySelector(".view-doc"); +var viewDocLink = document.querySelector(".view-doc a"); +var aElements = document.querySelectorAll("td a"); +aElements.forEach((a) => { + a.addEventListener("click", function () { + viewDoc.setAttribute("class", "view-doc active"); + viewDocLink.href = "#!"; + var spanElement = a.querySelector("div > span"); + var name = spanElement.innerHTML; + console.log("name = " + name); + $.ajax({ + url: "data.json", + dataType: "json", + success: function (dataObject) { + dataObject.MonHocChung.forEach((monhoc) => { + if (name === monhoc.name) { + console.log(monhoc.link); + viewDocLink.href = monhoc.link; + viewDocLink.target = "_blank"; + } + }); + + dataObject.CongNgheThongTin.forEach((monhoc) => { + if (name === monhoc.name) { + console.log(monhoc.link); + viewDocLink.href = monhoc.link; + viewDocLink.target = "_blank"; + } + }); + }, + }); + }); +}); + +var viewCloseBtn = document.querySelector(".view-close-btn"); + +viewCloseBtn.addEventListener("click", function () { + viewDoc.setAttribute("class", "view-doc"); +}); diff --git a/cntt.html b/cntt.html new file mode 100644 index 0000000..363f8ce --- /dev/null +++ b/cntt.html @@ -0,0 +1,447 @@ + + + + + + Document + + + + + + + + + +
+
+ +
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Học kỳ 1(11 TC) + Triết học Mác-Lênin(3 TC) + + Tin học cơ sở 1 (2 TC) + + Giải tích 1 (3 TC) + + Đại số(3 TC) +
Học kỳ 2(19 TC) + Kinh tế chính trị Mác-Lênin (2 TC) + + Tiếng Anh (Course 1) (4 TC) + + Tin học cơ sở 2 (2 TC) + + Giải tích 2 (3 TC) + + Pháp luật đại cương (2 TC) + + Vật lý ứng dụng (4 TC) + + Kỹ thuật số (2 TC) +
Học kỳ 3(17 TC) + Chủ nghĩa xã hội khoa học (2 TC) + + Tiếng Anh (Course 2) (4 TC) + + Ngôn ngữ lập trình C++ (3 TC) + + Toán rời rạc 1(3 TC) + + Xử lý tín hiệu số (2 TC) + + Xác suất thống kê (3 TC) +
Học kỳ 4(18 TC) + Tư tưởng Hồ Chí Minh (2 TC) + + Tiếng Anh (Course 3) (4 TC) + + Kiến trúc máy tính (3 TC) + + Toán rời rạc 2 (3 TC) + + Cấu trúc dữ liệu và giải thuật (3 TC) + + Lý thuyết thông tin (3 TC) +
Học kỳ 5(19 TC) + Lịch sử Đảng cộng sản VN (2 TC) + + Tiếng Anh (Course 3 Plus) (4 TC) + + Hệ điều hành(3 TC) + + Lập trình hướng đối tượng (3 TC) + + Cơ sở dữ liệu (3 TC) + + Mạng máy tính (3 TC) + + Lập trình Python (3 TC) +
Học kỳ 6(19 TC) + Nhập môn công nghệ phần mềm (3 TC) + + Nhập môn trí tuệ nhân tạo (3 TC) + + An toàn và bảo mật HTTT (3 TC) + + Lâp trình Web (3 TC) + + Cơ sở dữ liệu phân tán (3 TC) + + Thực tập cơ sở (4 TC) +
Học kỳ 7(18 TC) + QLDA phần mềm (3 TC) + + IoT và ứng dụng (3 TC) + + Phân tích và thiết kế HTTT (3 TC) + + Xử lý ảnh (3 TC) + + Học phần tự chọn (6 TC) +
Học kỳ 8(17 TC) + Thiết kế mạng máy tính (3 TC) + + Đánh giá hiệu năng mạng (3 TC) + + An ninh mạng(3 TC) + + Học phần tự chọn (3 TC) + + Phương pháp luận nghiên cứu khoa học (2 TC) +
Học kỳ 9(12 TC) + Thực tập và tốt nghiệp (12 TC) +
+
+
+
+ + + +
+
+ +
+
+ +
+
+ Tư tưởng Hồ Chí Minh +
3 TC
+ + plagiarism View Document +
+
+
+ Tài Liệu Tổng Hợp Được +
    +
  • +
    + + Giáo Trình +
    +
  • +
  • + + Bài Giảng +
  • +
  • + + Ngân Hàng +
  • +
  • + + Đề Thi +
  • +
+
+
+
+ + + + + + diff --git a/data.json b/data.json new file mode 100644 index 0000000..24e01af --- /dev/null +++ b/data.json @@ -0,0 +1,18 @@ +{ + "MonHocChung": [ + { + "name": "Triết học Mác-Lênin", + "link": "https://drive.google.com/drive/u/0/folders/1lbRtvAtHlGYV0JxU0i8-0ivR18KkNmIr" + } + ], + "CongNgheThongTin": [ + { + "name": "Kỹ thuật số", + "link": "https://drive.google.com/drive/u/0/folders/1lbRtvAtHlGYV0JxU0i8-0ivR18KkNmIr" + }, + { + "name": "Học kỳ 4", + "link": "https://drive.google.com/drive/u/0/folders/1lbRtvAtHlGYV0JxU0i8-0ivR18KkNmIr" + } + ] +} diff --git a/index.html b/index.html new file mode 100644 index 0000000..aa36e97 --- /dev/null +++ b/index.html @@ -0,0 +1,393 @@ + + + + + + + + + PTIT Library + + + + + + + + + +
+
+ +
+
+
+
+
+ +
+ + +
+

PTIT Library

+ + Địa chỉ: Km10, Đường Nguyễn Trãi, Q.Hà Đông, Hà + Nội, Hanoi, Vietnam + + + Contact + + +
+ + Info + +
+ 💢 𝐓𝐇𝐔̛ 𝐕𝐈𝐄̣̂𝐍 𝐏𝐓𝐈𝐓 𝐓𝐇𝐎̂𝐍𝐆 𝐁𝐀́𝐎 💢 + Sau bao nhiêu ngày chờ đợi, cuối cùng + Thư viện đã mở cửa buổi tối rồi các bạn + ơi, hãy nhanh chân chọn cho mình vị trí + ngồi phù hợp và ôn bài thật chăm chỉ nhé + 💓 Chúc các bạn có một mùa thi thật + thành công và ý nghĩa +
+
+
+ + + +
+ +
+ +
+
+ + upload_file + +
+ 100+Tài liệu đã tải lên +
+
+
+ + diversity_2 + +
+ 1 + Người đã tham gia đóng góp +
+
+
+ +
+ “Ptiters are united by a share + purpose.” + Hãy cùng nhau chia sẻ và đóng góp tài liệu học + tập để tạo nên một cộng đồng học tập mạnh mẽ + hơn. Mỗi sự chia sẻ nhỏ của bạn sẽ giúp ích rất + nhiều cho những khóa sau này + + Give to the Library + +
+
+
+
+
+ + + + + + +