Skip to content

Instantly share code, notes, and snippets.

@DewofyourYouth
Last active August 4, 2018 22:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save DewofyourYouth/a6966c001d21915e7132e20cd78254b0 to your computer and use it in GitHub Desktop.
Save DewofyourYouth/a6966c001d21915e7132e20cd78254b0 to your computer and use it in GitHub Desktop.
Gematria Converter

Gematria Converter

Converts integers between 499 to gematria strings.

Part of an app I'm developing to keep track of your progress through Shas.

<div class="container" id="main-container">
<h1>The Gematria Converter (Vanilla JS)</h1>
<input type="number" id="mynum" placeholder="number between 1 - 499" rows="6" cols="45" >
<div id="msg">גמטריא</div>
</div>
var gematriaInts = ["א", "ב", "ג", "ד", "ה", "ו", "ז", "ח", "ט"];
var gematriaTens = ["י", "כ", "ל", "מ", "נ", "ס", "ע", "פ", "צ"];
document.getElementById('mynum').onkeyup = function() { covertToGematria()};
document.getElementById('mynum').onmouseup = function() { covertToGematria()};
function covertToGematria(){
var x = document.getElementById("mynum").value;
console.log(x.length);
var number = parseInt(x);
var numTens = parseInt(x.slice(-2));
var tenString = x.slice(-2);
var num = numTens -1;
if(num < 9){
var gemMsg = gematriaInts[num];
} else {
var tens = Math.floor(numTens/10);
var ones = num - (tens * 10);
oneInt = ones >= 0 ? gematriaInts[ones] : "";
var gemMsg = gematriaTens[tens - 1]; gemMsg += oneInt;
}
var ending = gemMsg.slice(-2);
switch(ending){
case "יה":
gemMsg = "טו" ;
break;
case "יו":
gemMsg = "טז";
}
if(number > 399){
gemMsg = tenString !== "00" ? "ת" + gemMsg : "ת";
} else if(number > 299){
gemMsg = tenString !== "00" ? "ש" + gemMsg : "ש";
}else if(number > 199){
gemMsg = tenString !== "00" ? "ר" + gemMsg : "ר";
} else if(number > 99) {
gemMsg = tenString !== "00" ? "ק" + gemMsg : "ק";
}
if(x === ""){
gemMsg = "גמטריא"
}
document.getElementById('msg').innerHTML = gemMsg;
}
@import url('https://fonts.googleapis.com/css?family=Secular+One&subset=hebrew');
body {
font-family: sans-serif;
}
#main-container {
position: relative;
width: 70%;
margin: 50px auto;
text-align: center;
}
h1 {
font-family: 'Secular One', sans-serif;
}
#mynum {
font-family: sans-serif;
color: green;
font-size: 1.2rem;
padding: 10px;
border-radius: 5px;
border: 2px solid green;
}
#msg {
padding-top: 20px;
font-size: 3rem;
font-weight: 700;
direction: rtl;
font-family: 'Secular One', sans-serif;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment