122 lines
3.9 KiB
Plaintext
122 lines
3.9 KiB
Plaintext
Created At: 2026-06-09T02:34:13Z
|
|
Completed At: 2026-06-09T02:34:13Z
|
|
File Path: `file:///c:/laragon/www/fiberid/index.php`
|
|
Total Lines: 506
|
|
Total Bytes: 14974
|
|
Showing lines 1 to 506
|
|
The following code has been modified to include a line number before every line, in the format: <line_number>: <original_line>. Please note that any changes targeting the original code should remove the line number, colon, and leading space.
|
|
1: <!DOCTYPE html>
|
|
2: <html lang="id">
|
|
3: <head>
|
|
4: <meta charset="utf-8">
|
|
5: <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
|
6: <title>Identia Enterprise</title>
|
|
7:
|
|
8: <!-- Use Google Sans or modern font -->
|
|
9: <link href="https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;500;700&display=swap" rel="stylesheet">
|
|
10: <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css">
|
|
11: <link rel="shortcut icon" href="images/myn.png" />
|
|
12:
|
|
13: <style>
|
|
14: :root {
|
|
15: --bg-color: #ffffff;
|
|
16: --text-main: #202124;
|
|
17: --text-muted: #5f6368;
|
|
18: --btn-dark: #4b49ac;
|
|
19: --btn-light: #f8f9fa;
|
|
20: --border: #dadce0;
|
|
21: }
|
|
22:
|
|
23: * {
|
|
24: box-sizing: border-box;
|
|
25: margin: 0;
|
|
26: padding: 0;
|
|
27: }
|
|
28:
|
|
29: body {
|
|
30: font-family: 'Google Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
|
|
31: background-color: var(--bg-color);
|
|
32: color: var(--text-main);
|
|
33: overflow-x: hidden;
|
|
34: min-height: 100vh;
|
|
35: display: flex;
|
|
36: flex-direction: column;
|
|
37: }
|
|
38:
|
|
39: /* Fixed Canvas Background */
|
|
40: #particle-canvas {
|
|
41: position: fixed;
|
|
42: top: 0;
|
|
43: left: 0;
|
|
44: width: 100vw;
|
|
45: height: 100vh;
|
|
46: z-index: -1;
|
|
47: pointer-events: none;
|
|
48: }
|
|
49:
|
|
50: /* Top Navbar matching the screenshot */
|
|
51: .navbar-top {
|
|
52: display: flex;
|
|
53
|
|
<truncated 13806 bytes>
|
|
let c = getColorAtTime(nxScreen * 0.8 + 0.1);
|
|
450:
|
|
451: // Render
|
|
452: if (opacity > 0.05) {
|
|
453: ctx.save();
|
|
454: ctx.strokeStyle = `rgba(${c.r}, ${c.g}, ${c.b}, ${opacity})`;
|
|
455: ctx.lineWidth = thickness;
|
|
456: ctx.lineCap = 'round';
|
|
457:
|
|
458: ctx.beginPath();
|
|
459: ctx.moveTo(screenX1, screenY1);
|
|
460: ctx.lineTo(screenX2, screenY2);
|
|
461: ctx.stroke();
|
|
462: ctx.restore();
|
|
463: }
|
|
464: }
|
|
465: }
|
|
466:
|
|
467: function initParticles() {
|
|
468: particles = [];
|
|
469: const count = width > 800 ? numParticles : Math.floor(numParticles * 0.6);
|
|
470: for (let i = 0; i < count; i++) {
|
|
471: particles.push(new Particle(i, count));
|
|
472: }
|
|
473: }
|
|
474:
|
|
475: window.addEventListener('resize', resizeCanvas);
|
|
476: resizeCanvas();
|
|
477:
|
|
478: function animateParticles(currentTime) {
|
|
479: const elapsed = currentTime / 1000;
|
|
480:
|
|
481: // Hapus bersih layar putih di luar partikel jejak
|
|
482: ctx.fillStyle = '#ffffff';
|
|
483: ctx.fillRect(0, 0, width, height);
|
|
484:
|
|
485: // Render abu statis di background (noise titik-titik kecil seperti debu di referensi)
|
|
486: ctx.fillStyle = 'rgba(200, 200, 200, 0.4)';
|
|
487: for(let i=0; i<30; i++) {
|
|
488: ctx.beginPath();
|
|
489: let nx = (Math.sin(i*123) * width + width) % width;
|
|
490: let ny = (Math.cos(i*321) * height + height) % height;
|
|
491: ctx.arc(nx, ny, 1, 0, Math.PI*2);
|
|
492: ctx.fill();
|
|
493: }
|
|
494:
|
|
495: particles.forEach(p => {
|
|
496: p.draw(elapsed);
|
|
497: });
|
|
498:
|
|
499: requestAnimationFrame(animateParticles);
|
|
500: }
|
|
501:
|
|
502: requestAnimationFrame(animateParticles);
|
|
503: </script>
|
|
504: </body>
|
|
505: </html>
|
|
506:
|
|
The above content shows the entire, complete file contents of the requested file.
|
|
|