Add terms of use page and system theme detection script

Seto Elkahfi committed Jul 12, 2025 at 11:35 UTC 33f1516c3158d3922319b04ae10caf0a082f1c88
2 files changed +104
src/content/posts/terms-of-use.md new
+81
@@ -0,0 +1,81 @@
1 +---
2 +title: Terms of Use
3 +pubDate: '2025-07-12'
4 +---
5 +
6 +# Ketentuan Penggunaan PepakBasaJawa
7 +
8 +*Terakhir diperbarui: 12 Juli 2023*
9 +
10 +## 1. Penerimaan Ketentuan
11 +
12 +Dengan mengakses dan menggunakan situs web PepakBasaJawa ("Situs"), Anda menyetujui untuk terikat oleh Ketentuan Penggunaan ini. Jika Anda tidak menyetujui ketentuan ini, Anda tidak diperkenankan menggunakan Situs ini.
13 +
14 +## 2. Perubahan Ketentuan
15 +
16 +PepakBasaJawa berhak untuk mengubah Ketentuan Penggunaan ini kapan saja. Perubahan akan segera berlaku setelah diposting di Situs. Penggunaan Situs secara berkelanjutan oleh Anda setelah perubahan tersebut merupakan persetujuan Anda terhadap perubahan tersebut.
17 +
18 +## 3. Penggunaan Situs
19 +
20 +### 3.1 Izin Penggunaan
21 +Anda diizinkan untuk mengakses dan menggunakan Situs ini hanya untuk tujuan pembelajaran bahasa Jawa dan tujuan non-komersial lainnya yang sah.
22 +
23 +### 3.2 Larangan
24 +Anda dilarang untuk:
25 +- Menggunakan Situs dengan cara yang melanggar hukum atau peraturan yang berlaku
26 +- Menggunakan Situs untuk mengirim iklan atau materi promosi yang tidak diminta
27 +- Mengganggu keamanan atau fungsionalitas Situs
28 +- Mengumpulkan informasi pengguna tanpa izin
29 +- Menggunakan konten Situs untuk tujuan komersial tanpa izin tertulis dari PepakBasaJawa
30 +
31 +## 4. Kekayaan Intelektual
32 +
33 +### 4.1 Hak Cipta
34 +Semua konten yang tersedia di Situs ini, termasuk tetapi tidak terbatas pada teks, grafik, logo, ikon, gambar, klip audio, unduhan digital, dan kompilasi data, adalah milik PepakBasaJawa atau pemberi lisensinya dan dilindungi oleh hukum hak cipta Indonesia dan internasional.
35 +
36 +### 4.2 Lisensi Penggunaan
37 +PepakBasaJawa memberikan Anda lisensi terbatas, non-eksklusif, tidak dapat dialihkan, dan dapat dibatalkan untuk mengakses dan menggunakan konten Situs untuk tujuan pribadi dan non-komersial. Anda tidak boleh mereproduksi, mendistribusikan, memodifikasi, atau membuat karya turunan dari konten Situs tanpa izin tertulis dari PepakBasaJawa.
38 +
39 +## 5. Tautan ke Situs Lain
40 +
41 +Situs ini mungkin berisi tautan ke situs web pihak ketiga. Tautan ini disediakan hanya untuk kenyamanan Anda. PepakBasaJawa tidak mendukung atau bertanggung jawab atas konten, produk, layanan, atau kebijakan privasi situs web pihak ketiga tersebut.
42 +
43 +## 6. Penafian Jaminan
44 +
45 +### 6.1 Layanan "Sebagaimana Adanya"
46 +Situs ini disediakan dengan basis "sebagaimana adanya" dan "sebagaimana tersedia" tanpa jaminan apa pun, baik tersurat maupun tersirat.
47 +
48 +### 6.2 Tidak Ada Jaminan
49 +PepakBasaJawa tidak menjamin bahwa Situs akan bebas dari kesalahan, tidak terganggu, bebas dari virus atau komponen berbahaya lainnya, atau bahwa kerusakan pada sistem komputer Anda tidak akan terjadi dari penggunaan Situs.
50 +
51 +## 7. Batasan Tanggung Jawab
52 +
53 +PepakBasaJawa tidak bertanggung jawab atas kerugian langsung, tidak langsung, insidental, konsekuensial, atau khusus yang timbul dari atau terkait dengan penggunaan atau ketidakmampuan menggunakan Situs ini.
54 +
55 +## 8. Ganti Rugi
56 +
57 +Anda setuju untuk mengganti rugi dan membebaskan PepakBasaJawa, afiliasinya, dan masing-masing direktur, petugas, karyawan, dan agennya dari dan terhadap klaim, tuntutan, kewajiban, kerusakan, kerugian, dan pengeluaran apa pun yang timbul dari penggunaan Situs oleh Anda atau pelanggaran Ketentuan Penggunaan ini.
58 +
59 +## 9. Hukum yang Berlaku
60 +
61 +Ketentuan Penggunaan ini diatur oleh dan ditafsirkan sesuai dengan hukum Republik Indonesia. Setiap sengketa yang timbul dari atau sehubungan dengan Ketentuan Penggunaan ini akan diselesaikan melalui musyawarah atau melalui forum hukum yang berwenang di Indonesia.
62 +
63 +## 10. Keterpisahan
64 +
65 +Jika ada ketentuan dalam Ketentuan Penggunaan ini yang dianggap tidak sah, tidak berlaku, atau tidak dapat dilaksanakan oleh pengadilan yang berwenang, ketentuan tersebut akan dipisahkan dan ketentuan lainnya akan tetap berlaku sepenuhnya.
66 +
67 +## 11. Penghentian
68 +
69 +PepakBasaJawa berhak, atas kebijakannya sendiri, untuk menghentikan akses Anda ke Situs kapan saja dan untuk alasan apa pun tanpa pemberitahuan.
70 +
71 +## 12. Hubungi Kami
72 +
73 +Jika Anda memiliki pertanyaan tentang Ketentuan Penggunaan ini, silakan hubungi kami di:
74 +
75 +Email: [info@pepakbasajawa.com](mailto:info@pepakbasajawa.com)
76 +
77 +Situs web: [https://pepakbasajawa.5mb.app/](https://pepakbasajawa.5mb.app/)
78 +
79 +---
80 +
81 +*Dengan menggunakan PepakBasaJawa, Anda mengakui bahwa Anda telah membaca, memahami, dan menyetujui Ketentuan Penggunaan ini.*
src/layouts/BaseLayout.astro
+23
@@ -21,6 +21,29 @@ const language = SITE.language || 'en-US'
21 >
22 <head>
23 <slot name="head" />
24 + <script is:inline>
25 + // Initialize theme based on system preference
26 + function initTheme() {
27 + const htmlElement = document.documentElement
28 + const isDark = window.matchMedia('(prefers-color-scheme: dark)').matches
29 +
30 + // Remove any existing theme classes
31 + htmlElement.classList.remove('light', 'dark')
32 +
33 + // Apply the appropriate theme class
34 + htmlElement.classList.add(isDark ? 'dark' : 'light')
35 + }
36 +
37 + // Run on initial load
38 + initTheme()
39 +
40 + // Listen for system theme changes
41 + window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', function (e) {
42 + const htmlElement = document.documentElement
43 + htmlElement.classList.remove('light', 'dark')
44 + htmlElement.classList.add(e.matches ? 'dark' : 'light')
45 + })
46 + </script>
47 </head>
48 <body
49 data-centered={SITE.centeredLayout}