init
This commit is contained in:
parent
68fa1e0fa9
commit
073bf775db
3
go.mod
Normal file
3
go.mod
Normal file
@ -0,0 +1,3 @@
|
||||
module git.schreifuchs.ch/aspergerli/Webchance
|
||||
|
||||
go 1.22.7
|
47
main.go
Normal file
47
main.go
Normal file
@ -0,0 +1,47 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"math/rand"
|
||||
"net/http"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
var winners []string = make([]string, 0, 20)
|
||||
|
||||
func main() {
|
||||
http.HandleFunc("/random", randomNumber)
|
||||
http.Handle("/", http.FileServer(http.Dir("./static")))
|
||||
http.ListenAndServe(":8080", nil)
|
||||
}
|
||||
func randomNumber(w http.ResponseWriter, r *http.Request) {
|
||||
chance, err := strconv.Atoi(r.URL.Query().Get("chance"))
|
||||
if err != nil {
|
||||
w.WriteHeader(400)
|
||||
return
|
||||
}
|
||||
multiplicator, err := strconv.Atoi(r.URL.Query().Get("multiplicator"))
|
||||
if err != nil {
|
||||
w.WriteHeader(400)
|
||||
return
|
||||
}
|
||||
won := randomize(chance, multiplicator)
|
||||
winners = append(winners, "mi name")
|
||||
fmt.Fprint(w, won)
|
||||
}
|
||||
func randomize(chance int, mult int) bool {
|
||||
r := rand.Intn(chance * mult)
|
||||
if r == 0 {
|
||||
if chance == 10 && mult == 1 {
|
||||
return false
|
||||
} else {
|
||||
return true
|
||||
}
|
||||
} else {
|
||||
if chance == 10 && mult == 1 {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
}
|
||||
}
|
14
static/app.js
Normal file
14
static/app.js
Normal file
@ -0,0 +1,14 @@
|
||||
|
||||
async function getData() {
|
||||
const chance = document.getElementById("Chance").value
|
||||
const mult = document.getElementById("Multiplicator").value
|
||||
const url = "/random?chance="+chance+"&multiplicator="+mult;
|
||||
try {
|
||||
const response = await fetch(url);
|
||||
const content = await response.text()
|
||||
|
||||
document.getElementById("won").innerText=content
|
||||
} catch (error) {
|
||||
console.error(error.message);
|
||||
}
|
||||
}
|
53
static/index.html
Normal file
53
static/index.html
Normal file
@ -0,0 +1,53 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<title>Page Title</title>
|
||||
<script type = "text/javascript" src="app.js"></script>
|
||||
|
||||
</head>
|
||||
<style>
|
||||
body {
|
||||
background-color: rgba(131, 143, 197, 0.986);
|
||||
}
|
||||
.labelcontainer {
|
||||
display: flex;
|
||||
}
|
||||
label {
|
||||
display: block;
|
||||
color: rgb(28, 17, 85);
|
||||
min-width: 20rem;
|
||||
font-size: 1.5rem;
|
||||
}
|
||||
input {
|
||||
width: 10rem;
|
||||
}
|
||||
|
||||
</style>
|
||||
<body>
|
||||
<script> </script>
|
||||
<h1>Das ist die webseite von Gian</h1>
|
||||
<p>This is a paragraph.</p>
|
||||
|
||||
<p id="won"></p>
|
||||
<div class="labelcontainer">
|
||||
<label>Chance</label>
|
||||
<input type="number" id="Chance" name="Chance" min="10">
|
||||
|
||||
</div>
|
||||
<div class="labelcontainer">
|
||||
<label>Multiplicator</label>
|
||||
<input type="number" id="Multiplicator" name="Multiplicator" min="1" max="3">
|
||||
|
||||
</div>
|
||||
<div class="labelcontainer">
|
||||
<label>name</label>
|
||||
<input type="text">
|
||||
</div>
|
||||
<div>
|
||||
<input type="button" onclick="getData()" value="Generate">
|
||||
</div>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
Loading…
Reference in New Issue
Block a user