-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathindex.html
More file actions
56 lines (50 loc) · 2.65 KB
/
Copy pathindex.html
File metadata and controls
56 lines (50 loc) · 2.65 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Crypto Million Dollar Homepage</title>
<!-- Content Security Policy: only allow resources from same origin and safe image sources -->
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; connect-src 'self'; img-src 'self' data: https:; style-src 'self' 'unsafe-inline';">
<link rel="stylesheet" href="./src/styles.css">
</head>
<body>
<header>
<h1>Crypto Million Dollar Homepage</h1>
<div class="stats">Base Price: 0.001 ETH per Pixel</div>
</header>
<div class="trust-card">
<h2>🛡️ Why Trust Us & How to Buy</h2>
<div class="trust-columns">
<div class="trust-column">
<h4>Trust</h4>
<p>Our system is 100% decentralized, non-custodial, and zero-KYC. We do not use third-party payment gateways or processors — transactions go wallet-to-wallet on-chain via the Base network. If a block isn't assigned, our security layers will block database insertion to prevent accidental claims.</p>
</div>
<div class="trust-column">
<h4>How to Buy</h4>
<ol>
<li>Click and drag or tap multiple pixels on the grid to highlight your custom ad size.</li>
<li>Input your image URL and target redirect link.</li>
<li>Confirm the automatically calculated total invoice inside MetaMask.</li>
</ol>
</div>
</div>
</div>
<div id="canvas-container">
<canvas id="gridCanvas" width="1000" height="1000" aria-label="Pixel purchase canvas"></canvas>
</div>
<div class="overlay" id="overlay"></div>
<div class="modal" id="buyModal">
<h3>Buy Pixel Block</h3>
<p id="blockCoords">Selected Pixels: 0</p>
<p class="selection-summary">Selected: <span id="pixelCount">0</span> pixels | Total: <strong id="totalPrice">0 ETH</strong></p>
<p style="margin-top:6px; color:#94a3b8;">Price per pixel: <strong>0.001 ETH</strong></p>
<input type="text" id="imgUrl" placeholder="10x10 Image Link (HTTPS PNG/JPG)" autocomplete="off">
<input type="text" id="linkUrl" placeholder="Your Website Link (https://...)" autocomplete="off">
<button id="payBtn" type="button">Pay with Crypto Wallet</button>
</div>
<div class="toast hidden" id="toast"></div>
<!-- External crypto/db libraries moved to server-side. Client uses a small module only. -->
<script type="module" src="./src/app.js"></script>
</body>
</html>