Prześlij pliki do 'trening-planer'

This commit is contained in:
Karolina Słonka 2019-01-20 10:32:43 +00:00
parent c1a7128d10
commit d0dd90d75e
3 changed files with 580 additions and 211 deletions

View File

@ -20,7 +20,13 @@ type Plan struct{
Ciezar int
Opis string
data_t string
}
type Plan_rodzaj struct{
Plan []Plan
Rodzaj_treningu string
}
type Cwiczenie struct{
Opis string
Rodzaj string
@ -55,6 +61,11 @@ type Uzytkownicy struct {
Login string
Haslo string
}
type Wymiary struct{
Wymiar int
Nazwa string
Data string
}
type Cookie struct {
Name string
@ -73,6 +84,8 @@ type Uzytkownicy struct {
var tmpl2 = template.Must(template.ParseGlob("planowanieTreningu.html"))
var tmpl3 = template.Must(template.ParseGlob("cwiczenie.html"))
var tmpl4 = template.Must(template.ParseGlob("wyniki.html"))
var tmpl5 = template.Must(template.ParseGlob("wymiary.html"))
var tmpl = template.Must(template.ParseGlob("koszyk.html"))
//deklaracja tmpl-KONIEC
@ -126,18 +139,9 @@ panic(err.Error())
}
defer db.Close()
rows, err := db.Query("select nazwa from baza.cwiczenie")
emp := Plan{}
res := []Plan{}
for rows.Next() {
var nazwa string
err = rows.Scan(&nazwa)
if err != nil {
panic(err.Error())
}
emp.Nazwa = nazwa
res = append(res, emp)
}
@ -147,9 +151,9 @@ emp.Nazwa = nazwa
//dodawanie rodzaju treningu oraz co ile powiekszać cieżar-POCZATEK
var co_ile_ciezar string
co_ile_ciezar="k"
co_ile_ciezar = r.FormValue("co_ile_ciezar")
co_ile_ciezar := r.FormValue("co_ile_ciezar")
ciezar_dodaj := r.FormValue("ciezar_dodaj")
co_ile_powtorzenie := r.FormValue("co_ile_powtorzenie")
powtorzenie_dodaj := r.FormValue("powtorzenie_dodaj")
@ -159,12 +163,18 @@ fmt.Println(ciezar_dodaj)
fmt.Println(powtorzenie_dodaj)
fmt.Println(co_ile_powtorzenie)
fmt.Println(rodzaj_treningu)
if co_ile_ciezar!="" || ciezar_dodaj!="" || powtorzenie_dodaj!="" || co_ile_powtorzenie!="" {
rows, err := db.Query("INSERT INTO baza.zmiany (ciezar_dodaj, powtorzenie_dodaj, co_ile_ciezar, co_ile_powtorzenie, id_uzytkownik, rodzaj_treningu) VALUES (?, ?, ?, ?,?, ?)", ciezar_dodaj, powtorzenie_dodaj, co_ile_ciezar, co_ile_powtorzenie, getCookie(w,r), rodzaj_treningu)
if err != nil {panic(err.Error())}
defer rows.Close()
// if co_ile_ciezar!="" || ciezar_dodaj!="" || powtorzenie_dodaj!="" || co_ile_powtorzenie!="" {
// fmt.Println("pred")
}
// rows4, err := db.Query("INSERT INTO baza.zmiany (ciezar_dodaj, powtorzenie_dodaj, co_ile_ciezar, co_ile_powtorzenie, id_uzytkownik, rodzaj_treningu) VALUES (8, 8, 7, 5,5, 'ASB')")
// fmt.Println("poo")
// if err != nil {
// panic(err.Error())
// }
// defer rows4.Close()
// }
Powtorzenia := r.FormValue("Powtorzenia")
@ -175,19 +185,13 @@ fmt.Println(Nazwa)
fmt.Println(Serie)
fmt.Println(Ciezar)
fmt.Println(Powtorzenia)
db, err := sql.Open("mysql", "finley:password@tcp(127.0.0.1:3306)/baza")
if err != nil {
panic(err.Error())
}
defer db.Close()
fmt.Println(Nazwa)
rows1, err:= db.Query("SELECT COUNT(*) FROM baza.trening_cel as a, baza.cwiczenie as b WHERE a.id_cwiczenie=b.id_cwiczenie and b.nazwa=? and a.id_uzytkownik=?", Nazwa, getCookie(w,r))
var liczba string
if err != nil {panic(err.Error())}
for rows1.Next() {
err = rows1.Scan(&liczba)
}
@ -199,6 +203,11 @@ if liczba=="0"{
rows, err := db.Query("SELECT id_cwiczenie FROM baza.cwiczenie WHERE nazwa=?", Nazwa)
if err != nil {panic(err.Error())}
for rows.Next() {
emp := CwiczenieTabela{}
var id_cwiczenie int
@ -219,7 +228,70 @@ panic(err.Error())
fmt.Println("to ćwiczenie już dodałeś")
}
}
tmpl2.ExecuteTemplate(w, "Index", res)
rows, err := db.Query("select rodzaj_treningu from baza.zmiany where id_uzytkownik=?", getCookie(w,r))
for rows.Next() {
var rodzaj_treningu string
err = rows.Scan(&rodzaj_treningu)
if err != nil { panic(err.Error()) }
if rodzaj_treningu=="FWB" {
rows2, err := db.Query("select nazwa from baza.cwiczenie")
emp2 := Plan{}
res2 := []Plan{}
for rows2.Next() {
var nazwa string
err = rows2.Scan(&nazwa)
if err != nil {
panic(err.Error())
}
emp2.Nazwa = nazwa
res2 = append(res2, emp2)
}
tmpl2.ExecuteTemplate(w, "Index", res2)
}else if rodzaj_treningu=="ASB" {
rows2, err := db.Query("select nazwa from baza.cwiczenie where rodzaj='brzuch'")
emp2 := Plan{}
res2 := []Plan{}
for rows2.Next() {
var nazwa string
err = rows2.Scan(&nazwa)
if err != nil {
panic(err.Error())
}
emp2.Nazwa = nazwa
res2 = append(res2, emp2)
}
tmpl2.ExecuteTemplate(w, "Index", res2)
}else{
rows2, err := db.Query("select nazwa from baza.cwiczenie")
emp2 := Plan{}
res2 := []Plan{}
for rows2.Next() {
var nazwa string
err = rows2.Scan(&nazwa)
if err != nil {
panic(err.Error())
}
emp2.Nazwa = nazwa
res2 = append(res2, emp2)
}
tmpl2.ExecuteTemplate(w, "Index", res2)
}
}
}}
@ -249,12 +321,15 @@ Ciezar := r.FormValue("Ciezar")
Serie := r.FormValue("Serie")
Nazwa := r.FormValue("Nazwa")
Akcja := r.FormValue("Akcja")
fmt.Println(Akcja)
fmt.Println(Ciezar)
currentTime := time.Now()
data_t:= currentTime.Format("2006-01-02")
if Akcja=="usuntrening"{
rows, err := db.Query("delete from baza.zmiany where id_uzytkownik=?",getCookie(w,r))
if err != nil {panic(err.Error())}
defer rows.Close()
}
//sprawdzanie czy dodano juz dzisiaj to cwiczenie-POCZATEK
rows1, err := db.Query("SELECT COUNT(*) FROM baza.trening_rzeczywisty as a, baza.cwiczenie as b WHERE a.id_cwiczenia=b.id_cwiczenie and b.nazwa=? and a.id_uzytkownik=? and a.data_t=?", Nazwa,getCookie(w,r), data_t)
@ -266,9 +341,10 @@ err = rows1.Scan(&liczba)
}
rows, err := db.Query("SELECT id_cwiczenie FROM baza.cwiczenie WHERE nazwa=?", Nazwa)
rows, err := db.Query("SELECT id_cwiczenie FROM baza.cwiczenie WHERE nazwa like ?", Nazwa)
if err != nil {panic(err.Error())}
defer rows.Close()
for rows.Next() {
emp := CwiczenieTabela{}
var id_cwiczenie int
@ -276,29 +352,29 @@ err = rows.Scan(&id_cwiczenie)
emp.Id_cwiczenie = id_cwiczenie
if Akcja=="usun"{
fmt.Println("klik ut")
rows, err := db.Query("DELETE FROM baza.trening_cel where id_cwiczenie=? and id_uzytkownik=?", id_cwiczenie, getCookie(w,r))
if err != nil {panic(err.Error())}
defer rows.Close()
}
if Akcja=="zatwierdz" && liczba=="0"{
rows2, err := db.Query("DELETE FROM baza.trening_rzeczywisty where id_cwiczenia=? and id_uzytkownik=?", id_cwiczenie, getCookie(w,r))
if err != nil {panic(err.Error())}
defer rows2.Close()
}else if Akcja=="zatwierdz" && liczba=="0"{
fmt.Println("klik zat")
rows, err := db.Query("INSERT INTO trening_rzeczywisty (id_cwiczenia, id_uzytkownik, powtorzenia, ciezar,serie, data_t) VALUES (?, ?, ?, ?, ?, ? )", id_cwiczenie,getCookie(w,r), Powtorzenia, Ciezar, Serie, data_t)
if err != nil {panic(err.Error())}
defer rows.Close()
}else{
fmt.Println("klik kkkat")
p := Plan{Opis: "zakładka"}
t, _ := template.ParseFiles("komunikat.html")
t.Execute(w, p)
fmt.Println("to ćwiczenie już dodałeś")
//sprawdzanie czy dodano juz dzisiaj to cwiczenie-KONIEC
}
//sprawdzanie metody POST - KONIEC
}
}}
}
@ -337,6 +413,14 @@ if err != nil {panic(err.Error())}
//sprawdzanie czy dodac ciezar lub powtorzenie-POCZATEK
fmt.Println("co_ile_powtorzenie")
fmt.Println(liczba_treningow)
fmt.Println(co_ile_ciezar)
fmt.Println(co_ile_powtorzenie)
if liczba_treningow==0{
liczba_treningow=liczba_treningow+1
}
if liczba_treningow%co_ile_ciezar==0 || liczba_treningow%co_ile_powtorzenie==0{
ciezar=ciezar+ciezar_dodaj
powtorzenia=powtorzenia+powtorzenie_dodaj
@ -352,12 +436,27 @@ fmt.Println(rows3)
}
rows2, err := db.Query("SELECT rodzaj_treningu FROM zmiany where id_uzytkownik like ?", getCookie(w,r))
if err != nil {panic(err.Error())}
emp2 := Plan_rodzaj{}
res2 := []Plan_rodzaj{}
for rows2.Next() {
var rodzaj_treningu string
err = rows2.Scan(&rodzaj_treningu)
if err != nil {panic(err.Error())}
emp2.Rodzaj_treningu = rodzaj_treningu
rows, err := db.Query("SELECT N.serie, N.powtorzenia, P.nazwa, N.ciezar FROM trening_cel AS N, cwiczenie AS P WHERE P.id_cwiczenie = N.id_cwiczenie and id_uzytkownik like ?", getCookie(w,r))
if err != nil {panic(err.Error())}
emp := Plan{}
res := []Plan{}
for rows.Next() {
var serie int
var powtorzenia int
var nazwa string
@ -371,7 +470,10 @@ emp.Nazwa = nazwa
emp.Ciezar = ciezar
res = append(res, emp)
}
tmpl.ExecuteTemplate(w, "Index", res)
emp2.Plan=res
res2 = append(res2, emp2)
}
tmpl.ExecuteTemplate(w, "Index", res2)
}
//autoryzacja-KONIEC
}
@ -514,42 +616,43 @@ func wynikiHandler(w http.ResponseWriter, r *http.Request) {
panic(err.Error())
}
defer db.Close()
var Ilosc_cwiczen int
rows4, err := db.Query("SELECT COUNT(*) from baza.trening_cel where id_uzytkownik=?",getCookie(w,r))
if err != nil {
panic(err.Error())
}
for rows4.Next() {
err = rows4.Scan(&Ilosc_cwiczen)
if err != nil {
panic(err.Error())
}
}
fmt.Println(Ilosc_cwiczen)
for i := 1; i < Ilosc_cwiczen+1; i++ {
rows, err := db.Query("SELECT C.nazwa FROM baza.trening_cel AS N, baza.trening_rzeczywisty AS P, baza.cwiczenie AS C WHERE N.id = ? and C.id_cwiczenie = P.id_cwiczenia and C.id_cwiczenie = N.id_cwiczenie",i)
if err != nil {
panic(err.Error())
}
// var Ilosc_cwiczen int
// rows4, err := db.Query("SELECT COUNT(*) from baza.trening_cel where id_uzytkownik=?",getCookie(w,r))
// if err != nil {
// panic(err.Error())
// }
// for rows4.Next() {
// err = rows4.Scan(&Ilosc_cwiczen)
// if err != nil {
// panic(err.Error())
// }
// }
// fmt.Println(Ilosc_cwiczen)
// for i := 1; i < Ilosc_cwiczen+1; i++ {
// rows, err := db.Query("SELECT C.nazwa FROM baza.trening_cel AS N, baza.trening_rzeczywisty AS P, baza.cwiczenie AS C WHERE N.id = ? and C.id_cwiczenie = P.id_cwiczenia and C.id_cwiczenie = N.id_cwiczenie",i)
rows, err := db.Query("SELECT C.nazwa FROM baza.trening_cel AS N, baza.cwiczenie AS C WHERE id_uzytkownik=? and C.id_cwiczenie = N.id_cwiczenie",getCookie(w,r))
if err != nil {panic(err.Error())}
var i int
i=0
emp := ww{}
res := []ww{}
for rows.Next() {
fmt.Println("ciezar_cel")
var nazwa string
err = rows.Scan(&nazwa)
if err != nil {
panic(err.Error())
}
if err != nil {panic(err.Error())}
emp.Nazwa=nazwa
fmt.Println(nazwa)
i++
emp.NumerCwiczenia=i
fmt.Println(emp.NumerCwiczenia)
fmt.Println("gegeg")
rows2, err := db.Query("SELECT P.ciezar, N.ciezar, P.data_t FROM baza.trening_cel AS N, baza.trening_rzeczywisty AS P, baza.cwiczenie AS C WHERE N.id = ? and C.id_cwiczenie = P.id_cwiczenia and C.id_cwiczenie = N.id_cwiczenie",i)
rows2, err := db.Query("SELECT P.ciezar, N.ciezar, P.data_t FROM baza.trening_cel AS N, baza.trening_rzeczywisty AS P, baza.cwiczenie AS C WHERE C.nazwa = ? and C.id_cwiczenie = P.id_cwiczenia and C.id_cwiczenie = N.id_cwiczenie", nazwa)
if err != nil {
panic(err.Error())
}
if err != nil {panic(err.Error())}
emp2 := Wyniki{}
res2 := []Wyniki{}
for rows2.Next() {
@ -558,6 +661,8 @@ for rows2.Next() {
var data_t string
err = rows2.Scan(&ciezar_rzecz, &ciezar_cel, &data_t)
fmt.Println("ciezar_cel")
fmt.Println("ciezar_cel")
if err != nil {
panic(err.Error())
}
@ -569,12 +674,13 @@ for rows2.Next() {
emp.Wyniki=res2
}
res = append(res, emp)
}
fmt.Println(res)
tmpl4.ExecuteTemplate(w, "Index", res)
}
}
// }
}
@ -687,6 +793,91 @@ func start(w http.ResponseWriter, r *http.Request) {
}
func wymiary(w http.ResponseWriter, r *http.Request) {
db, err := sql.Open("mysql", "finley:password@tcp(127.0.0.1:3306)/baza")
if err != nil {
panic(err.Error())
}
defer db.Close()
if getCookie(w,r)=="brak" {
p := Plan{Opis: "zakładka"}
t, _ := template.ParseFiles("brakdostepu.html")
t.Execute(w, p)
}else{
if r.Method == "POST" {
talia := r.FormValue("talia")
biodra := r.FormValue("biodra")
waga := r.FormValue("waga")
currentTime := time.Now()
data:= currentTime.Format("2006-01-02")
insert, err := db.Query("INSERT INTO baza.wymiary ( id_uzytkownik, wymiar, nazwa, data) VALUES ( ?,?,'talia',?)",getCookie(w,r), talia, data)
if err != nil { panic(err.Error()) }
defer insert.Close()
insert2, err := db.Query("INSERT INTO baza.wymiary ( id_uzytkownik, wymiar, nazwa, data) VALUES ( ?,?,'biodra',?)",getCookie(w,r), biodra,data)
if err != nil { panic(err.Error()) }
defer insert2.Close()
insert3, err := db.Query("INSERT INTO baza.wymiary ( id_uzytkownik, wymiar, nazwa, data) VALUES ( ?,?,'waga',?)",getCookie(w,r), waga, data)
if err != nil { panic(err.Error()) }
defer insert3.Close()
rows2, err := db.Query("SELECT wymiar, nazwa, data from wymiary where nazwa='waga' and id_uzytkownik=?",getCookie(w,r))
if err != nil {panic(err.Error())}
emp2 := Wymiary{}
res2 := []Wymiary{}
for rows2.Next() {
var wymiar int
var nazwa string
var data string
err = rows2.Scan(&wymiar, &nazwa, &data)
if err != nil {
panic(err.Error())
}
emp2.Wymiar = wymiar
emp2.Nazwa = nazwa
emp2.Data = data
res2 = append(res2, emp2)
}
tmpl5.ExecuteTemplate(w, "Index", res2)
///
}else{
rows2, err := db.Query("SELECT wymiar, nazwa, data from wymiary where nazwa='waga' and id_uzytkownik=?",getCookie(w,r))
if err != nil {panic(err.Error())}
emp2 := Wymiary{}
res2 := []Wymiary{}
for rows2.Next() {
var wymiar int
var nazwa string
var data string
err = rows2.Scan(&wymiar, &nazwa, &data)
if err != nil {
panic(err.Error())
}
emp2.Wymiar = wymiar
emp2.Nazwa = nazwa
emp2.Data = data
res2= append(res2, emp2)
}
tmpl5.ExecuteTemplate(w, "Index", res2)
fmt.Println(res2)
}
}
}
func main() {
db, err := sql.Open("mysql", "finley:password@tcp(127.0.0.1:3306)/baza")
@ -733,6 +924,7 @@ func main() {
http.HandleFunc("/wyniki/", wynikiHandler)
http.HandleFunc("/dodajcwiczenie/", dodaj_cwiczenieHandler)
http.HandleFunc("/rejestracja/", rejestracja)
http.HandleFunc("/wymiary/", wymiary)
http.HandleFunc("/start/", start)
http.ListenAndServe(":8099", nil)

177
trening-planer/wymiary.html Normal file
View File

@ -0,0 +1,177 @@
{{ define "Index" }}
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Wymiary</title><link rel="Shortcut icon" href="img/logo2.jpg" />
<link type="text/css" href="/static/css/bootstrap.min.css" rel="stylesheet">
<link rel="Stylesheet" type="text/css" href="/static/css_moje/style_moje.css" />
<link href="http://fonts.googleapis.com/css?family=Roboto:400,700,400italic,500italic&subset=latin,latin-ext" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.4.0/Chart.min.js">
<script>
function placeOrder1(form) {
if( validateZIPCode(form["talia"], form["talia_help"]) && validateZIPCode(form["biodra"], form["biodra_help"]) &&validateZIPCode(form["waga"], form["waga_help"])) {
form.submit()}
else {
alert("Przykro mi, ale podane informacje nie s¹ prawid³owe.");
}
}
function placeOrder2(form) {
if( validateZIPCode(form["Ciezar"], form["Ciezar_help"]) ) {
form.submit()}
else {
alert("Przykro mi, ale podane informacje nie s¹ prawid³owe.");
}
}
function sprawdzanieFormularza(inputField){
var regex=/\d/;
if(regex.test(inputField.value)){
alert("Podaj cyfry");
}
}
function validateZIPCode(inputField, helpText) {
// Najpierw sprawdzamy, czy d³ugoœæ pola jest ró¿na od 5
// Teraz sprawdzamy, czy w polu wpisano liczbê
if (isNaN(inputField.value)) {
// Dane nie s¹ prawid³owe, wyœwietlamy zatem komunikat o b³êdzie
if (helpText != null)
helpText.innerHTML = "Proszê wpisaæ same cyfry.";
return false;
}
else {
// Dane s¹ w porz¹dku, usuwamy komunikat o b³êdzi
if (helpText != null)
helpText.innerHTML = "";
return true;
}
}
</script>
</head>
<body>
<div class="container">
<div class="row">
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed"
data-toggle="collapse"
data-target="#mainmenu"
aria-expanded="false">
<span class="sr-only">Przełącznik nawigacji</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="collapse navbar-collapse navbar-right mainmenu" id="mainmenu">
<ul class="nav navbar-nav">
<li><a class="nav-link" href="/planer/">Zaplanuj nowy trening</a></li>
<li><a class="nav-link" href="/wypisz/">Twoj trening</a></li>
<li><a class="btn btn-default" href="/wyniki/">Wyniki</a></li>
<li><a class="nav-link" href="/dodajcwiczenie/">Dodaj ćwiczenie</a></li>
<li><a class="nav-link" href="/wymiary/">Wymiary</a></li>
<li> <form action="/logowanie" method="GET"> <button class="btn btn-default" style="height: 50px" value="brak" name="cookies" >Wyloguj</button></form></li>
</ul>
</div>
</div>
</nav>
</div><br>
<br><br>
<br>
<div class="container">
<div class="row">
<div class="col-xs-12">
<div class="table-responsive">
<table class="table table-hover">
<tbody>
<tr>
<form action="/wymiary/" method="POST">
<!-- <td><input type="text" class="form-control" id="talia" name="talia" placeholder="wymiary w talii" style="width: 180px" >
</td>
<td><input type="text" class="form-control" id="biodra" name="biodra" placeholder="wymiary bioder" style="width: 180px"></td> -->
<td><input type="text" class="form-control" id="waga" name="waga" placeholder="waga" style="width: 180px"> <button type="submit" class="btn btn-default">Wprowadź dane</button></td>
</form>
</tr>
</tbody>
</table>
</div>
<canvas id=" {{range.}}{{.Nazwa}}{{end}}" width="400" height="150"></canvas>
<script>
var ctx = document.getElementById(" {{range.}}{{.Nazwa}}{{end}}");
var myChart = new Chart(ctx, {
type: 'line',
data: {
labels: [
{{range.}}{{.Data}},{{end}}
],
datasets: [{
label: 'Twoje wyniki',
data: [
{{range.}}{{.Wymiar}},{{end}}
],
backgroundColor: [
'rgba(255, 99, 132, 0.2)',
],
borderColor: [
'rgba(255,99,132,1)',
],
borderWidth: 1
},
]},
options: {
scales: {
yAxes: [{
ticks: {
beginAtZero:true
}
}]
}
}
});
</script></div>
</div>
</div>
<div class="container footer">
<div class="row">
<div class="col-xs-12">
<p>Wszystkie prawa zastrzeżone. <strong>mój</strong>produkt &copy; 2015<br>
<small>kontakt@mojprodukt.pl</small>
</p>
</div>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
</body>
</html>
{{end}}

View File

@ -1,166 +1,166 @@
{{ define "Index" }}
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Rejestracja</title><link rel="Shortcut icon" href="img/logo2.jpg" />
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet">
<link rel="Stylesheet" type="text/css" href="/static/css_moje/style_moje.css" />
<link href="http://fonts.googleapis.com/css?family=Roboto:400,700,400italic,500italic&subset=latin,latin-ext" rel="stylesheet">
<style>
body {
font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
}</style>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.4.0/Chart.min.js">
function placeOrder2(form) {
if( validateZIPCode(form["Serie"], form["Serie_help"]) && validateZIPCode(form["Powtorzenia"], form["Powtorzenia_help"]) &&validateZIPCode(form["Ciezar"], form["Ciezar_help"]) ) {
form.submit()}
else {
alert("Przykro mi, ale podane informacje nie s¹ prawid³owe.");
}
}
function sprawdzanieFormularza(inputField){
var regex=/\d/;
if(regex.test(inputField.value)){
alert("Podaj cyfry");
}
}
function validateZIPCode(inputField, helpText) {
// Najpierw sprawdzamy, czy d³ugoœæ pola jest ró¿na od 5
// Teraz sprawdzamy, czy w polu wpisano liczbê
if (isNaN(inputField.value)) {
// Dane nie s¹ prawid³owe, wyœwietlamy zatem komunikat o b³êdzie
if (helpText != null)
helpText.innerHTML = "Proszê wpisaæ same cyfry.";
return false;
}
else {
// Dane s¹ w porz¹dku, usuwamy komunikat o b³êdzi
if (helpText != null)
helpText.innerHTML = "";
return true;
}
}</script>
</head>
<body>
{{ define "Index" }}
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<div class="row">
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed"
data-toggle="collapse"
data-target="#mainmenu"
aria-expanded="false">
<span class="sr-only">Przełącznik nawigacji</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="collapse navbar-collapse navbar-left mainmenu" style="margin-top: 15px;">Witaj</div>
<div class="collapse navbar-collapse navbar-right mainmenu" id="mainmenu">
<title>Rejestracja</title><link rel="Shortcut icon" href="img/logo2.jpg" />
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet">
<link rel="Stylesheet" type="text/css" href="/static/css_moje/style_moje.css" />
<link href="http://fonts.googleapis.com/css?family=Roboto:400,700,400italic,500italic&subset=latin,latin-ext" rel="stylesheet">
<style>
body {
font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
}</style>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.4.0/Chart.min.js">
function placeOrder2(form) {
if( validateZIPCode(form["Serie"], form["Serie_help"]) && validateZIPCode(form["Powtorzenia"], form["Powtorzenia_help"]) &&validateZIPCode(form["Ciezar"], form["Ciezar_help"]) ) {
form.submit()}
else {
alert("Przykro mi, ale podane informacje nie s¹ prawid³owe.");
}
}
function sprawdzanieFormularza(inputField){
var regex=/\d/;
if(regex.test(inputField.value)){
alert("Podaj cyfry");
}
}
function validateZIPCode(inputField, helpText) {
// Najpierw sprawdzamy, czy d³ugoœæ pola jest ró¿na od 5
// Teraz sprawdzamy, czy w polu wpisano liczbê
if (isNaN(inputField.value)) {
// Dane nie s¹ prawid³owe, wyœwietlamy zatem komunikat o b³êdzie
if (helpText != null)
helpText.innerHTML = "Proszê wpisaæ same cyfry.";
return false;
}
else {
// Dane s¹ w porz¹dku, usuwamy komunikat o b³êdzi
if (helpText != null)
helpText.innerHTML = "";
return true;
}
}</script>
</head>
<body>
<div class="row">
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed"
data-toggle="collapse"
data-target="#mainmenu"
aria-expanded="false">
<span class="sr-only">Przełącznik nawigacji</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="collapse navbar-collapse navbar-left mainmenu" style="margin-top: 15px;">Witaj</div>
<div class="collapse navbar-collapse navbar-right mainmenu" id="mainmenu">
<ul class="nav navbar-nav">
<li><a class="nav-link" href="/logowanie">Logowanie</a></li>
<li><a class="nav-link" href="/planer/">Zaplanuj nowy trening</a></li>
<li><a class="nav-link" href="/wypisz/">Twoj trening</a></li>
<li><a class="btn btn-default" href="/wyniki/">Wyniki</a></li>
<li><a class="nav-link" href="/dodajcwiczenie/">Dodaj ćwiczenie</a></li>
<li><a class="nav-link" href="/dodajcwiczenie/">Ustawienia</a></li>
<li><a class="nav-link" href="/wymiary/">Wymiary</a></li>
<li> <form action="/logowanie" method="GET"> <button class="btn btn-default" style="height: 50px" value="brak" name="cookies" >Wyloguj</button></form></li>
</ul>
</div>
</div>
</nav>
</div>
</div>
</nav>
</div>
<div class="container" style="margin-top:100px;">
<div class="row">
<div class="container" style="margin-top:100px;">
<div class="row">
<div class="rejestracja col-lg-12 text-center">
<span style="font-size: 18px">{{range.}}{{.Nazwa}}{{end}}<br><br>
</span>
<canvas id="{{range.}}{{.NumerCwiczenia}}{{end}}" width="400" height="150"></canvas>
<script>
var ctx = document.getElementById("{{range.}}{{.NumerCwiczenia}}{{end}}");
var myChart = new Chart(ctx, {
type: 'line',
data: {
labels: [{{range.}}
{{range .Wyniki}}
{{.Data_t}},
{{end}} {{end}} ],
datasets: [{
label: 'Twoje wyniki',
data: [
{{range.}}
<div class="rejestracja col-lg-12 text-center">
{{range.}}
<span style="font-size: 18px">{{.Nazwa}}<br><br>
</span>
<canvas id="{{.NumerCwiczenia}}" width="400" height="150"></canvas>
<script>
var ctx = document.getElementById("{{.NumerCwiczenia}}");
var myChart = new Chart(ctx, {
type: 'line',
data: {
labels: [
{{range .Wyniki}}
{{.Data_t}},
{{end}}
],
datasets: [{
label: 'Waga',
data: [
{{range .Wyniki}}
{{.Ciezar_rzecz}},
{{end}} {{end}}
],
backgroundColor: [
'rgba(255, 99, 132, 0.2)',
],
borderColor: [
'rgba(255,99,132,1)',
{{end}}
],
backgroundColor: [
'rgba(255, 99, 132, 0.2)',
],
borderColor: [
'rgba(255,99,132,1)',
],
borderWidth: 1
},
{
label: 'Twój cel',
],
borderWidth: 1
},
{
label: 'Twój cel',
data: [{{range.}}
{{range .Wyniki}}
data: [ {{range .Wyniki}}
{{.Ciezar_cel}},
{{end}} {{end}}
],
backgroundColor: [
'rgba(65, 99, 132, 0.2)',
],
borderColor: [
'rgba(65,99,132,1)',
{{end}}
],
backgroundColor: [
'rgba(65, 99, 132, 0.2)',
],
borderColor: [
'rgba(65,99,132,1)',
],
borderWidth: 1
}]},
options: {
scales: {
yAxes: [{
ticks: {
beginAtZero:true
}
}]
],
borderWidth: 1
}]},
options: {
scales: {
yAxes: [{
ticks: {
beginAtZero:true
}
}]
}
}
}
});
</script>
});
</script>
{{end}}
</div> </div>
</div> </div>
<div class="collapse navbar-collapse navbar-right form-horizontal"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
</body>
</html>
{{end}}
<div class="collapse navbar-collapse navbar-right form-horizontal"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
</body>
</html>
{{end}}