<%- include('partials/sidebar', { activePage: 'packages', company }) %>
<%= t('admin.packages.title', 'Paket Internet') %>
<%= (typeof session !== 'undefined' && session && session.isCashier) ? t('admin.role.cashier', 'Kasir') : t('admin.role.admin', 'Admin') %>
<% if (msg) { %>
<%= msg.text %>
<% } %>
<%= t('admin.packages.isolir_title', 'Profil Isolir') %> — read-only
<%= isolirSource === 'radius' ? 'Sumber: RADIUS' : 'Sumber: MikroTik' %> <% if (isolirSource !== 'radius') { %><%= isolirExists ? 'Ada di MikroTik' : 'Belum ada' %><% } %> <% if (isolirSource !== 'radius') { %> Kelola di PPPoE Profiles<% } %> RADIUS Settings
<% if (isolirSource === 'radius') { %>
<%= radiusIsolir.action %>
<%= radiusIsolir.rateLimit %>
<%= radiusIsolir.pool %>
<%= radiusIsolir.ipPoolEnabled ? (radiusIsolir.ipPoolStart + ' – ' + radiusIsolir.ipPoolEnd) : 'nonaktif' %>
<%- t('admin.pkg.radius_hint','Mode RADIUS — nilai di atas dibaca dari pengaturan RADIUS. Untuk mengubah, buka RADIUS Settings (tombol di atas).') %>
<% } else { %>
<%= isolirProfileName %>
<%= isolirExists ? (isolirLiveRl || '-') : '—' %>
<%= isolirExists ? (isolirLiveLocal || '-') : '—' %>
<%= isolirExists ? (isolirLiveRemote || '-') : '—' %>
<%- t('admin.pkg.mt_hint','Mode MikroTik — nilai di atas dibaca dari profil PPP di router. Untuk mengubah, edit di MikroTik → PPPoE Profiles.') %>
<% } %>
<%= t('admin.packages.list', 'Daftar Paket') %> (<%= packages.length %>)
<% if (typeof routers !== 'undefined' && routers && routers.length > 0) { %> <% } %>
<% if (packages.length===0) { %> <% } %> <% packages.forEach((p,i)=>{ %> <% }) %>
# <%= t('admin.packages.table.name', 'Nama Paket') %> <%= t('admin.packages.table.price_month', 'Harga / Bulan') %> <%= t('admin.pkg.th_promo','Promo / Prorata') %> <%= t('admin.packages.table.speed', 'Kecepatan') %> <%= t('admin.packages.table.description', 'Deskripsi') %> <%= t('admin.packages.table.isolir', 'Profil Isolir') %> <%= t('admin.packages.table.customers', 'Pelanggan') %> <%= t('admin.packages.table.status', 'Status') %> <%= t('common.actions', 'Aksi') %>
<%= t('admin.packages.empty', 'Belum ada paket. Tambah paket pertama!') %>
<%= i+1 %>
<%= p.name %>
<% if (p.billing_type === 'prepaid') { %> Prabayar (<%= p.duration_days || 30 %> Hari) <% } else { %> Pascabayar <% } %>
Rp <%= p.price.toLocaleString('id-ID') %> <% if (p.use_ppn) { %>
+ PPN <%= p.ppn_percentage %>%<% } %> <% if (p.use_uso) { %>
+ USO <%= p.uso_percentage %>%<% } %>
<% if (p.promo_cycles > 0 && p.promo_price != null && p.promo_price !== '') { %> Promo Rp <%= Number(p.promo_price).toLocaleString('id-ID') %> × <%= p.promo_cycles %> bln <% } else { %>—<% } %> <% if (p.prorate_first_invoice) { %>
Prorata 1×<% } %>
<% if (p.speed_down) { %>
<%= (p.speed_down/1000).toFixed(0) %> Mbps <% if (p.speed_down_upto && p.speed_down_upto > p.speed_down) { %> UpTo <%= (p.speed_down_upto/1000).toFixed(0) %>M <% } %>
<%= (p.speed_up/1000).toFixed(0) %> Mbps <% if (p.speed_up_upto && p.speed_up_upto > p.speed_up) { %> UpTo <%= (p.speed_up_upto/1000).toFixed(0) %>M <% } %>
<% if (p.rate_limit) { %>
<%= p.rate_limit %>
<% } %> <% } else { %>-<% } %>
<%= p.description||'-' %> <% if (p.isolir_profile) { %> <%= p.isolir_profile %><% } else { %>—<% } %> <%= p.customer_count %> <%= t('admin.packages.customers_suffix', 'pelanggan') %> <% if(p.is_active){%><%= t('common.active', 'Aktif') %><%}else{%><%= t('common.inactive', 'Nonaktif') %><%}%>
<%= t('admin.packages.add', 'Tambah Paket') %>
<% if (typeof profileMode !== 'undefined' && profileMode === 'radius-attributes') { %> <%- t('admin.pkg.mode_radius_hint','Mode RADIUS: rate-limit & IP dari atribut RADIUS — profil PPP MikroTik tidak dibuat otomatis.') %> <% } else { %> Profil PPP MikroTik akan dibuat/diperbarui otomatis dari speed paket<% if (typeof profileMode !== 'undefined' && profileMode === 'radius-profile') { %> (mode RADIUS pakai profil MikroTik)<% } %>. <% } %>
<%- t('admin.pkg.ratelimit_hint','Rate-limit asli (MikroTik & RADIUS):') %> - — format rx/tx (+ burst: rx/tx rxB/txB rxT/txT time). Nilai sama dipakai untuk profil MikroTik dan atribut RADIUS.
Fitur Kecepatan UpTo / Max Rate (Opsional)
<%- t('admin.pkg.upto_hint','Bila diisi, paket akan tampil sebagai: 10 Mbps (Up to 20 Mbps) di invoice & portal pelanggan.') %>
<%= t('admin.pkg.promo_prorata','Promo & prorata tagihan') %>
Pengaturan Pajak & Regulasi (PPN & USO)
IP Pool & Profil MikroTik (comment: "manage by cloud")
<%- t('admin.pkg.profile_hint2','Profil PPP + IP pool dibuat/diperbarui otomatis ke MikroTik (mode MikroTik / RADIUS profil). Pada mode RADIUS-atribut, IP & rate-limit dari RADIUS.') %>
Aktifkan Jam Kalong

Aktifkan FUP
<%= t('admin.packages.edit', 'Edit Paket') %>
Fitur Kecepatan UpTo / Max Rate (Opsional)
<%- t('admin.pkg.upto_hint','Bila diisi, paket akan tampil sebagai: 10 Mbps (Up to 20 Mbps) di invoice & portal pelanggan.') %>
<%= t('admin.pkg.promo_prorata','Promo & prorata tagihan') %>
Pengaturan Pajak & Regulasi (PPN & USO)
IP Pool & Profil MikroTik (comment: "manage by cloud")
<%- t('admin.pkg.profile_hint2','Profil PPP + IP pool dibuat/diperbarui otomatis ke MikroTik (mode MikroTik / RADIUS profil). Pada mode RADIUS-atribut, IP & rate-limit dari RADIUS.') %>
Aktifkan Jam Kalong
<%= t('admin.pkg.kalong_hint','Centang untuk mengatur (kolom terbuka otomatis bila paket ini memakai Jam Kalong).') %>
Aktifkan FUP
<%= t('admin.pkg.fup_hint','Centang untuk mengatur (kolom terbuka otomatis bila paket ini memakai FUP).') %>