Menentukan Masa Depan Organisasi Siswa yang Lebih Baik.
Portal resmi Organisasi Siswa Intra Sekolah & Bilik Suara Digital SMP Kartika IV-9 Malang. Transparan, akuntabel, dan menjunjung tinggi asas Luber Jurdil.
Wadah Aspirasi, Kreasi, dan Kepemimpinan Siswa.
OSIS SMP Kartika IV-9 Malang merupakan organisasi intra sekolah yang memfasilitasi pengembangan karakter, bakat, serta kepemimpinan peserta didik melalui program-program inovatif dan kolaboratif.
100%
Demokrasi Digital
0
Total DPT Terdaftar
0
Kandidat Paslon
Visi & Misi Kemandirian Siswa
Mewujudkan pengurus OSIS yang berintegritas, berbudaya lingkungan, adaptif terhadap teknologi, serta menjadi teladan kedisiplinan bagi seluruh siswa SMP Kartika IV-9 Malang.
- Penyelenggaraan Pemilihan Ketua OSIS berbasis E-Voting.
- Transparansi program kerja dan publikasi kegiatan siswa.
- Kolaborasi aktif antara Pembina, Pengurus, dan seluruh Siswa.
Pembina & Struktur Pengurus Inti
Dikelola langsung melalui Dashboard Pembina OSIS.
Informasi Penting & Program Kerja
Anggota OSIS Terverifikasi
Daftar pengurus & anggota OSIS yang telah lolos seleksi dan diverifikasi resmi oleh Pembina.
Informasi Seleksi & Pengumuman Tahapan OSIS
Seleksi Administrasi & Wawancara Kepemimpinan
Seluruh calon pengurus OSIS wajib mengikuti tahapan seleksi sesuai jadwal yang ditentukan oleh Pembina OSIS.
Peserta Lolos Tahap Berikutnya & Diterima
Pemilihan Ketua & Wakil Ketua OSIS
Pastikan Anda menggunakan hak pilih sesuai jadwal yang telah ditetapkan oleh Panitia Pemilihan.
Hasil Perolehan Suara
Hasil Perolehan Suara Terkunci
Klik tombol "Tampilkan Hasil Vote" di atas untuk membuka rekapitulasi suara kandidat dengan hitung mundur.
Kandidat Pasangan Calon Ketua & Wakil OSIS
Pelajari visi, misi, dan program kerja masing-masing kandidat sebelum memberikan suara Anda.
Alur & Tata Tertib Pemilihan
Login Kredensial DPT
Masuk menggunakan NISN / Username dan PIN rahasia yang tertera pada Kartu Pemilih Anda.
Coblos Kandidat Pilihan
Tentukan 1 (satu) pasangan calon terbaik di bilik suara digital. Setiap pemilih hanya dapat memilih satu kali.
Enkripsi & Selesai
Suara Anda langsung tersimpan secara anonim dan terenkripsi di database sistem E-Voting.
Tata Tertib Resmi Pemilihan (Sinkron Jadwal Admin)
Informasi Penting & Artikel OSIS
Diterbitkan oleh Admin, Pembina, dan Pengurus OSIS.
Ikhtisar & Statistik
Laporan partisipasi pemilih dan status sistem secara real-time.
TOTAL DPT
0
Pemilih Terdaftar
SUDAH MEMILIH
0
0% Partisipasi
BELUM MEMILIH
0
Suara Tertunda
PASANGAN CALON
0
Kandidat Terverifikasi
Partisipasi Pemilih per Kategori
AKSI CEPAT STATUS PEMILIHAN:
Tahapan Alur Pemilihan (Election Workflow)
Klik salah satu tahapan untuk menandai progres resmi penyelenggaraan pemilihan OSIS.
Semua perubahan akan langsung sinkron ke halaman pemilih dan login.
Kostumisasi QR Code & Bilik Suara Mandiri
Kustomisasi warna, logo di tengah, bingkai, teks judul, simpan pengaturan, atau sembunyikan QR dari halaman publik/login.
BILIK SUARA DIGITAL
Pindai QR Code dengan smartphone untuk memilih mandiri tanpa antre.
https://votingk49.ai.studio
Arahkan kamera smartphone ke kode di atas untuk langsung membuka bilik suara digital.
Logo di Tengah QR Code (Branding)
Sematkan logo sekolah atau logo OSIS di bagian tengah QR. Koreksi error otomatis disetel ke High (30%) agar kode tetap terbaca lancar.
Manajemen Pasangan Calon (Kandidat OSIS)
Tambah, edit, unggah foto ketua & wakil, atur visi misi, ekspor/impor massal, dan tetapkan nomor urut paslon.
Verifikasi Pencalonan Ketua & Wakil OSIS Baru
Manajemen Data Pemilih Tetap (DPT)
Pisahkan dan kelola hak suara Siswa, Dewan Guru, dan Tendik. Dilengkapi import Excel & CSV otomatis dengan deteksi kolom cerdas.
| NAMA PEMILIH | KATEGORI | KELAS / UNIT | JK | ID / USERNAME | PIN / PASSWORD | STATUS VOTING | AKSI |
|---|
Cetak Kartu Pemilih (DPT)
Kredensial bilik suara resmi untuk pemilih (Format 2 Kolom Presisi Siap Cetak / PDF).
Ukuran Kertas Cetak
Format Ukuran Kartu
Filter Cetak Pemilih
Opsi Tampilan Kartu
Manajemen Pengguna: Admin, Pembina & Panitia Pemilihan
Atur siapa saja yang memiliki hak akses login untuk mengelola sistem E-Voting maupun Portal Pengurus OSIS.
Ganti Username & Password Super Admin
Akun Super Admin memiliki kontrol penuh atas seluruh sistem (reset voting, konfigurasi jadwal, database, dan berita acara).
AKUN AKTIF SAAT INI:
User: admin • Pass: ••••••••
Daftar Akun Panitia, Pembina, Pengurus OSIS & Saksi (0)
Setiap akun memiliki hak akses sesuai perannya (Super Admin, Pembina OSIS, Anggota OSIS, Panitia/Saksi).
| NAMA LENGKAP & PERAN | PERAN / HAK AKSES | USERNAME LOGIN | PIN / PASSWORD | STATUS AKUN | AKSI & GANTI PASSWORD |
|---|
Kontrol Publikasi & Keamanan Hasil Suara
Hasil perolehan suara di bawah ini selalu terlihat oleh Admin, namun disembunyikan dari publik sampai Anda membukanya.
Tampilkan Hasil di Portal Pemilih (Setelah Login)
Jika aktif, siswa/guru yang sudah login dapat melihat grafik hasil pemilihan.
Umumkan Hasil di Beranda Umum (Landing Page)
Jika aktif, siapa pun yang membuka website dapat melihat hasil akhir dengan Countdown.
Perolehan Suara Real-Time
Total suara sah masuk: 0 dari 0 DPT (0%)
Rincian Pemilih per Pasangan Calon (Kategori & Nama Pemilih)
Menampilkan distribusi pemilih berdasarkan kategori (Siswa, Dewan Guru, Tendik) dan daftar nama yang memberikan suara pada setiap paslon.
Laporan Resmi & Cetak Berita Acara Pemilihan (BAP)
Dilengkapi Rekapitulasi DPT per Kategori, Akumulasi Suara, Penetapan Paslon Terpilih & Pengesahan Kepala Sekolah.
Manajemen Konten Beranda, Artikel & Informasi Penting
Tambah / Edit Artikel (Akses Penuh Admin)
Tambah / Edit Informasi Penting (Akses Penuh Admin)
Kode Backend `Code.gs` & Panduan Instalasi Database
Gunakan skrip di bawah ini untuk menghubungkan aplikasi ke Google Spreadsheet dan Google Drive secara real-time.
Siapkan Google Sheets
Buat Google Spreadsheet kosong di Google Drive Anda, lalu klik menu Extensions → Apps Script.
Deploy sebagai Web App
Tempelkan kode `Code.gs` di bawah, klik Deploy → New Deployment → Web App. Setel Execute as: Me dan Who has access: Anyone.
Tempel URL `/exec`
Salin Web App URL (berakhiran `/exec`) lalu tempelkan pada menu Pengaturan Sistem dan klik Isi & Sinkronkan ke Sheet.
/**
* BACKEND E-VOTING & PORTAL OSIS (GOOGLE SHEETS + GOOGLE DRIVE)
* Otomatis membuat 6 Tab (CONFIG, CANDIDATES, VOTERS, BALLOTS, COMMITTEES, AUDIT_LOGS)
*/
const DRIVE_FOLDER_NAME = "PORTAL_OSIS_EVOTING_ASSETS";
function onOpen() {
SpreadsheetApp.getUi()
.createMenu("🗳️ E-Voting OSIS")
.addItem("1. Inisialisasi Database (Buat Tab Lengkap)", "setupDatabase")
.addToUi();
}
function setupDatabase() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
["StateSnapshot", "CONFIG", "CANDIDATES", "VOTERS", "BALLOTS", "COMMITTEES", "AUDIT_LOGS"].forEach(name => {
if (!ss.getSheetByName(name)) ss.insertSheet(name);
});
}
function doGet(e) {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName("StateSnapshot") || ss.insertSheet("StateSnapshot");
const raw = sheet.getRange("A1").getValue();
return ContentService.createTextOutput(JSON.stringify({
status: "success",
payload: raw ? JSON.parse(raw) : null
})).setMimeType(ContentService.MimeType.JSON);
}
function doPost(e) {
const postData = JSON.parse(e.postData.contents);
const ss = SpreadsheetApp.getActiveSpreadsheet();
if (postData.action === "syncAllState" && postData.payload) {
const sheet = ss.getSheetByName("StateSnapshot") || ss.insertSheet("StateSnapshot");
sheet.getRange("A1").setValue(JSON.stringify(postData.payload));
sheet.getRange("B1").setValue(new Date());
return ContentService.createTextOutput(JSON.stringify({ status: "success", syncedAt: new Date() }))
.setMimeType(ContentService.MimeType.JSON);
}
return ContentService.createTextOutput(JSON.stringify({ status: "ok" })).setMimeType(ContentService.MimeType.JSON);
}
Audit Trail & Riwayat Log Sistem
Rekam jejak forensik seluruh aktivitas voting, login, pengaturan sekolah, dan perubahan data.
| WAKTU | PERAN & PENGGUNA | AKTIVITAS | DETAIL |
|---|
Pengaturan Sistem, Branding & Manajemen Data
Ubah identitas sekolah, logo login, mode kunci pengembangan (ON/OFF), metode otentikasi pemilih, mode Blogger, backup data, dan reset pemilihan.
Izin Pengembangan Aplikasi
Diizinkan melakukan pengembangan & perubahan konfigurasi.
Identitas Sekolah & Pemilihan
Keamanan, Aturan Akses Pemilih & Mode Halaman Blogger
Jika memilih "Hanya ID", siswa dapat login hanya dengan mengetik NISN tanpa memasukkan PIN.
✓ Sistem siap digunakan secara resmi. Tidak menampilkan label simulasi.
Jika disembunyikan untuk Blogger, tombol navigasi melayang (floating) di bawah layar otomatis aktif.
Integrasi Google Sheets & Google Apps Script Backend
URL TerpasangSimpan seluruh data pemilihan, kandidat paslon, DPT pemilih, dan surat suara secara langsung dan permanen ke Google Spreadsheet Anda.
Pilih Server & Database Utama:
Mode Hybrid (Dual-Sync)
Sinkron ganda otomatis ke Google Sheets dan Server API. Paling aman & direkomendasikan!
Google Spreadsheet
Database cloud murni Google Sheet sekolah via Apps Script. Tanpa biaya sewa server.
Server Lokal / API
Tersimpan di file database server lokal. Cocok untuk jaringan intranet LAN/Wi-Fi sekolah.
▵ Penting: URL wajib berakhiran /exec. Jangan masukkan link spreadsheet langsung (/edit).
✓ Solusi Cepat Jika Google Sheet Masih Kosong:
- Setelah Deploy Pertama: Google Sheet memang masih kosong sampai Anda mengklik tombol hijau "Isi & Sinkronkan Seluruh Data ke Sheet" di atas.
- Menu Khusus di Google Sheets: Buka Google Sheet Anda, refresh halamannya, maka akan muncul menu E-Voting OSIS di bilah atas → pilih 1. Inisialisasi Database (Buat Tab Lengkap).
- Izin Akses Web App: Pastikan pada pengaturan Deploy di Apps Script opsi "Who has access" disetel ke "Anyone" (Siapa saja).
Cadangan & Pemulihan Data (Backup & Restore)
Amankan seluruh data pemilihan (DPT, Paslon, Surat Suara, Log, dan Konfigurasi) sebelum dan sesudah voting.
1. Buat Cadangan Data (Backup)
Unduh seluruh snapshot database dalam satu file JSON terstruktur.
2. Pulihkan dari Cadangan (Restore)
Unggah file cadangan untuk mengembalikan seluruh kondisi sistem ke titik sebelumnya.
Zona Bahaya (Emergency Actions)
Tindakan di bawah ini berdampak besar pada data pemilihan. Lakukan hanya jika terjadi keadaan darurat, simulasi ulang, atau persiapan awal pemilihan baru.
Profil Keanggotaan Saya
Kelola identitas lengkap, agama, kelas, jabatan, dan unggah foto profil Anda ke Google Drive.
Koordinator Pembina
Pembina OSIS
Tulis & Publikasikan Artikel Baru
Artikel dilengkapi identitas pembuat, riwayat revisi, dan foto sampul yang langsung tampil di Landing Page.
Bagikan Informasi Penting & Agenda OSIS
Dilengkapi nama pembuat, jadwal opsional, deskripsi, dan riwayat perubahan.
Kelola Visi, Misi & Program Kerja Pasangan Calon
Anda telah diajukan oleh Pembina OSIS sebagai kandidat. Data yang Anda isi di bawah ini otomatis tersinkronisasi ke menu Pasangan Calon di Dashboard Admin.
Kelola Daftar Kategori Jabatan OSIS
Tambahkan jabatan baru atau hapus kategori jabatan yang ada. Seluruh pilihan penempatan jabatan akan menyesuaikan daftar ini.
Penempatan Jabatan & Struktur Organisasi OSIS
Hanya anggota terverifikasi yang dipilih oleh Pembina di menu ini yang akan tampil di seksi Struktur Organisasi.
Verifikasi & Identitas Pendaftar Calon Anggota OSIS
Pembina dapat memeriksa identitas lengkap pendaftar sebelum menyetujui (Approve) menjadi anggota resmi.
Calonkan Pasangan Ketua & Wakil Ketua OSIS
Pilih anggota terbaik untuk dicalonkan sebagai Pasangan Calon. Usulan ini akan dikirim ke Dashboard Admin untuk diverifikasi masuk ke menu Pasangan Calon.
Direktori Seluruh Anggota OSIS Terverifikasi & Penempatan Jabatan
Pembina dapat langsung mengubah jabatan anggota terverifikasi dan otomatis sinkron ke Struktur Organisasi.
Atur Jadwal, Jenis, Tahapan & Pengumuman Kelolosan Seleksi
Seluruh konfigurasi, detail tahapan kelolosan, dan pengumuman peserta yang diterima resmi otomatis ditampilkan pada Landing Page depan.
Tetapkan Peserta Lolos Tahap Berikutnya (Detail) & Pengumuman Diterima
Atur detail keterangan tahap berikutnya atau tetapkan peserta yang resmi diterima menjadi Pengurus OSIS.
Pemilihan Ketua & Wakil Ketua OSIS
Gunakan hak pilih Anda secara Luber & Jurdil (1 Pemilih = 1 Suara).
Tambah Pasangan Calon Baru
Calon Ketua OSIS
Calon Wakil Ketua OSIS
Tambah Data Pemilih Baru
Daftarkan Pengguna Baru
Judul Artikel
Konfirmasi Tindakan
Apakah Anda yakin ingin melanjutkan tindakan ini?
Terima Kasih Telah Memilih! 🎉
Pilihan Anda telah berhasil direkam secara rahasia, jujur, dan adil di Kotak Suara Digital.
Cari Blog Ini
Laporkan Penyalahgunaan