<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>The Secret Massage Chiper</title>
<style>
body{
background-color: black;
color: green;
}
.container {
margin: 50px auto;
padding: 20px;
border: 2px solid green;
max-width: 500px;
}
textarea, input {
width: 100%;
background-color: black;
color: white;
border: 2px solid green;
padding: 10px;
margin-bottom: 15px;
}
</style>
</head>
<body>
<div class="container">
<h1>The Secret Massage Chiper</h1>
<label>Secret Massage:</label>
<textarea name="" id="secretMassage" placeholder="Text Message Here..."></textarea>
<label>Key (Number):</label>
<input type="number" name="" id="key" value="1">
<div class="buttons">
<button>Enkription (hide message)</button>
<button>Deskription (show message)</button>
</div>
<h3>Result:</h3>
<div class="output"></div>
</div>
<script>
function process(isEncrypt) {
const text = document.getElementById('secretMessage').value;
let key = parseInt(document.getElementById('key').value);
let result = "";
if (!isEncrypt) {
key = -key;
}
for (let index = 0; index < text.length; index++) {
const element = text[index];
let charCode = text.charCodeAt(index);
if (charCode >= 65 && charCode <= 90) { //Huruf Kapital
result += String.fromCharCode(
((charCode - 65 + key) % 26 + 26) % 26 + 65
)
} else if (charCode >= 97 && charCode <= 122) { //Huruf Kapitil
result += String.fromCharCode(
((charCode - 97 + key) % 26 + 26) % 26 + 97
)
} else {
result += text[index];
}
}
document.getElementById('result').innerText = result;
};
</script>
</body>
</html>