2018-12-18 23:17:57 +01:00
package main
import (
"net/http"
"html/template"
"fmt"
"database/sql"
_ "github.com/go-sql-driver/mysql"
2018-12-31 00:56:25 +01:00
"time"
2019-01-28 21:15:21 +01:00
"strconv"
2019-02-03 23:59:21 +01:00
"strings"
2018-12-18 23:17:57 +01:00
)
2019-01-16 23:47:40 +01:00
type komunikat struct {
Opis string
}
2018-12-18 23:17:57 +01:00
type Plan struct {
Serie int
Powtorzenia int
Nazwa string
Ciezar int
Opis string
2018-12-31 00:56:25 +01:00
data_t string
2019-01-20 11:32:43 +01:00
}
type Plan_rodzaj struct {
Plan [ ] Plan
Rodzaj_treningu string
2018-12-18 23:17:57 +01:00
}
2019-01-20 11:32:43 +01:00
2018-12-18 23:17:57 +01:00
type Cwiczenie struct {
Opis string
Rodzaj string
Nazwa string
Zdjecie string
}
type CwiczenieTabela struct {
Id_cwiczenie int
Nazwa string
2018-12-31 00:56:25 +01:00
}
type Wyniki struct {
Ciezar_rzecz int
Ciezar_cel int
Nazwa string
2019-01-16 23:47:40 +01:00
Data_t string
2018-12-31 00:56:25 +01:00
}
type ww struct {
Wyniki [ ] Wyniki
Nazwa string
NumerCwiczenia int
2019-01-16 23:47:40 +01:00
Ilosc_cwiczen int
2018-12-31 00:56:25 +01:00
}
2019-01-16 23:47:40 +01:00
type Zmiany struct {
co_ile_ciezar int
ciezar_dodaj int
co_ile_powtorzen int
ciezar_powtorzen int
2018-12-18 23:17:57 +01:00
}
2019-01-16 23:47:40 +01:00
type Uzytkownicy struct {
Url string
Login string
Haslo string
2018-12-18 23:17:57 +01:00
}
2019-01-20 11:32:43 +01:00
type Wymiary struct {
2019-02-09 22:12:27 +01:00
Nazwa string
Wymiary_2 [ ] Wymiary_2
}
type Wymiary_2 struct {
Wymiar int
Data string
2019-01-20 11:32:43 +01:00
}
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
type Cookie struct {
Name string
Value int
Path string
Domain string
Expires time . Time
RawExpires string
MaxAge int
Secure bool
HttpOnly bool
Raw string
Unparsed [ ] string
}
//deklaracja tmpl-POCZATEK
2018-12-18 23:17:57 +01:00
var tmpl2 = template . Must ( template . ParseGlob ( "planowanieTreningu.html" ) )
var tmpl3 = template . Must ( template . ParseGlob ( "cwiczenie.html" ) )
2018-12-31 00:56:25 +01:00
var tmpl4 = template . Must ( template . ParseGlob ( "wyniki.html" ) )
2019-01-20 11:32:43 +01:00
var tmpl5 = template . Must ( template . ParseGlob ( "wymiary.html" ) )
2019-01-31 22:31:47 +01:00
var tmpl6 = template . Must ( template . ParseGlob ( "dodajcwiczenie.html" ) )
2019-02-09 22:12:27 +01:00
var tmpl7 = template . Must ( template . ParseGlob ( "wyniki-usun.html" ) )
2019-02-06 23:29:13 +01:00
2019-02-10 20:01:29 +01:00
var tmpl8 = template . Must ( template . ParseGlob ( "planowanieTreningu2.html" ) )
2019-02-09 22:12:27 +01:00
var tmpl = template . Must ( template . ParseGlob ( "Twoj-trening.html" ) )
2019-01-16 23:47:40 +01:00
//deklaracja tmpl-KONIEC
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
//deklaracja funkcji-POCZATEK
2018-12-31 00:56:25 +01:00
func baza ( ) {
2019-01-16 23:47:40 +01:00
db , err := sql . Open ( "mysql" , "finley:password@tcp(127.0.0.1:3306)/baza" )
2018-12-18 23:17:57 +01:00
if err != nil {
2019-01-16 23:47:40 +01:00
panic ( err . Error ( ) )
2018-12-18 23:17:57 +01:00
}
2019-01-16 23:47:40 +01:00
defer db . Close ( )
2018-12-31 00:56:25 +01:00
}
2019-01-16 23:47:40 +01:00
func getCookie ( w http . ResponseWriter , r * http . Request ) string {
var decyzja string
c1 , err := r . Cookie ( "logowanie" )
if err != nil {
decyzja = "brak"
} else {
decyzja = c1 . Value
}
return decyzja
}
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
func setCookie ( w http . ResponseWriter , r * http . Request , id_uzytkownik string ) {
fmt . Println ( "tt" )
expiration := time . Now ( ) . Add ( 2 * time . Hour )
c1 := http . Cookie { Name : "logowanie" , Value : id_uzytkownik , Expires : expiration }
fmt . Println ( c1 )
http . SetCookie ( w , & c1 )
}
//deklaracja funkcji-KONIEC
2018-12-18 23:17:57 +01:00
2019-01-28 21:15:21 +01:00
func IsNumeric ( s string ) bool {
_ , err := strconv . ParseFloat ( s , 64 )
return err == nil
}
2019-02-03 23:59:21 +01:00
func blank ( s string ) bool {
blank := strings . TrimSpace ( s ) == ""
var a bool
if blank {
a = true
} else {
a = false
}
return a
}
2018-12-18 23:17:57 +01:00
func planowanieTreningu ( w http . ResponseWriter , r * http . Request ) {
2019-01-16 23:47:40 +01:00
if getCookie ( w , r ) == "brak" {
p := Plan { Opis : "zakładka" }
t , _ := template . ParseFiles ( "brakdostepu.html" )
t . Execute ( w , p )
} else {
2018-12-18 23:17:57 +01:00
db , err := sql . Open ( "mysql" , "finley:password@tcp(127.0.0.1:3306)/baza" )
2019-02-10 20:01:29 +01:00
if err != nil { panic ( err . Error ( ) ) }
2019-01-16 23:47:40 +01:00
defer db . Close ( )
2018-12-18 23:17:57 +01:00
2019-02-10 20:01:29 +01:00
p := Plan { Opis : "" }
if r . Method == "POST" {
2019-01-20 11:32:43 +01:00
2019-02-10 20:01:29 +01:00
//dodawanie rodzaju treningu oraz co ile powiekszać cieżar-POCZATEK
2019-01-20 11:32:43 +01:00
2018-12-18 23:17:57 +01:00
2019-02-10 20:01:29 +01:00
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" )
rodzaj_treningu := r . FormValue ( "rodzaj_treningu" )
partia := r . FormValue ( "partia" )
cwiczenie_nazwa := r . FormValue ( "cwiczenie_nazwa" )
if co_ile_ciezar != "" || ciezar_dodaj != "" || powtorzenie_dodaj != "" || co_ile_powtorzenie != "" {
2018-12-18 23:17:57 +01:00
2019-02-10 20:01:29 +01:00
var id_cwiczenie int
if cwiczenie_nazwa != "" {
rows22 , err := db . Query ( "SELECT id_cwiczenie from baza.cwiczenie where nazwa=?" , cwiczenie_nazwa )
2018-12-18 23:17:57 +01:00
2019-02-10 20:01:29 +01:00
for rows22 . Next ( ) {
err = rows22 . Scan ( & id_cwiczenie )
if err != nil { panic ( err . Error ( ) ) } }
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
2019-02-10 20:01:29 +01:00
rows3 , err := db . Query ( "UPDATE baza.zmiany SET ciezar_dodaj=?, powtorzenie_dodaj=?, co_ile_ciezar=?, co_ile_powtorzenie=?, rodzaj_treningu=?, id_cwiczenia=? where id_uzytkownik=?" , ciezar_dodaj , powtorzenie_dodaj , co_ile_ciezar , co_ile_powtorzenie , rodzaj_treningu , id_cwiczenie , getCookie ( w , r ) )
if err != nil { panic ( err . Error ( ) ) }
defer rows3 . Close ( )
2019-01-20 11:32:43 +01:00
2019-02-10 20:01:29 +01:00
} else {
2019-01-20 11:32:43 +01:00
2019-02-10 20:01:29 +01:00
rows222 , err := db . Query ( "SELECT id_cwiczenie from baza.cwiczenie where rodzaj=?" , partia )
2019-01-16 23:47:40 +01:00
2019-02-10 20:01:29 +01:00
for rows222 . Next ( ) {
err = rows222 . Scan ( & id_cwiczenie )
if err != nil { panic ( err . Error ( ) ) } }
rows3 , err := db . Query ( "UPDATE baza.zmiany SET ciezar_dodaj=?, powtorzenie_dodaj=?, co_ile_ciezar=?, co_ile_powtorzenie=?, rodzaj_treningu=?, id_cwiczenia=? where id_uzytkownik=?" , ciezar_dodaj , powtorzenie_dodaj , co_ile_ciezar , co_ile_powtorzenie , rodzaj_treningu , id_cwiczenie , getCookie ( w , r ) )
2019-01-20 14:22:29 +01:00
if err != nil { panic ( err . Error ( ) ) }
2019-02-10 20:01:29 +01:00
defer rows3 . Close ( )
}
2019-01-20 11:32:43 +01:00
2019-01-20 14:22:29 +01:00
}
2019-01-16 23:47:40 +01:00
2018-12-18 23:17:57 +01:00
Powtorzenia := r . FormValue ( "Powtorzenia" )
Ciezar := r . FormValue ( "Ciezar" )
Serie := r . FormValue ( "Serie" )
Nazwa := r . FormValue ( "Nazwa" )
2019-02-10 20:01:29 +01:00
2019-01-16 23:47:40 +01:00
2019-01-28 21:15:21 +01:00
if IsNumeric ( Ciezar ) {
2019-01-16 23:47:40 +01:00
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
2019-01-20 11:32:43 +01:00
if err != nil { panic ( err . Error ( ) ) }
2019-02-10 20:01:29 +01:00
for rows1 . Next ( ) { err = rows1 . Scan ( & liczba ) }
2019-01-16 23:47:40 +01:00
if liczba == "0" {
2018-12-18 23:17:57 +01:00
rows , err := db . Query ( "SELECT id_cwiczenie FROM baza.cwiczenie WHERE nazwa=?" , Nazwa )
2019-01-16 23:47:40 +01:00
if err != nil { panic ( err . Error ( ) ) }
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
for rows . Next ( ) {
2018-12-18 23:17:57 +01:00
emp := CwiczenieTabela { }
var id_cwiczenie int
err = rows . Scan ( & id_cwiczenie )
emp . Id_cwiczenie = id_cwiczenie
2019-01-16 23:47:40 +01:00
rows , err := db . Query ( "INSERT INTO trening_cel (id_cwiczenie, id_uzytkownik, powtorzenia, ciezar,serie) VALUES (?, ?, ?, ?, ? )" , id_cwiczenie , getCookie ( w , r ) , Powtorzenia , Ciezar , Serie )
2019-01-28 21:15:21 +01:00
if err != nil { panic ( err . Error ( ) ) }
defer rows . Close ( )
2019-02-10 20:01:29 +01:00
//dodanie do tabeli zmiany
rows2 , err := db . Query ( "INSERT INTO zmiany (ciezar_dodaj, powtorzenie_dodaj, co_ile_ciezar, co_ile_powtorzenie,id_cwiczenia,rodzaj_treningu,id_uzytkownik) VALUES (0, 0, 0, 0, ?, 'FWB',? )" , id_cwiczenie , getCookie ( w , r ) )
if err != nil { panic ( err . Error ( ) ) }
defer rows2 . Close ( )
2019-01-28 21:15:21 +01:00
} } else {
2019-02-10 20:01:29 +01:00
p = Plan { Opis : "To ćwiczenie juz dodano" }
2019-02-09 22:12:27 +01:00
} }
2019-01-28 21:15:21 +01:00
2018-12-18 23:17:57 +01:00
}
2019-02-10 20:01:29 +01:00
// rows, err := db.Query("select rodzaj_treningu from baza.zmiany where id_uzytkownik=? group by rodzaj_treningu", getCookie(w,r))
2019-01-20 11:32:43 +01:00
2019-02-10 20:01:29 +01:00
// for rows.Next() {
// var rodzaj_treningu string
// err = rows.Scan(&rodzaj_treningu)
// if err != nil { panic(err.Error()) }
2019-01-20 11:32:43 +01:00
2019-02-10 20:01:29 +01:00
// if rodzaj_treningu=="FWB" {
2019-01-20 11:32:43 +01:00
2019-01-27 23:42:32 +01:00
rows2 , err := db . Query ( "select nazwa from baza.cwiczenie where (uzytkownik=? or uzytkownik=1)" , getCookie ( w , r ) )
2019-01-20 11:32:43 +01:00
emp2 := Plan { }
res2 := [ ] Plan { }
for rows2 . Next ( ) {
var nazwa string
err = rows2 . Scan ( & nazwa )
2019-02-10 20:01:29 +01:00
if err != nil { panic ( err . Error ( ) ) }
2019-01-20 11:32:43 +01:00
emp2 . Nazwa = nazwa
res2 = append ( res2 , emp2 )
}
tmpl2 . ExecuteTemplate ( w , "Index" , res2 )
2019-02-10 20:01:29 +01:00
t , _ := template . ParseFiles ( "komunikat.html" )
t . Execute ( w , p )
// }else if rodzaj_treningu=="ASB" {
// rows2, err := db.Query("select nazwa from baza.cwiczenie where rodzaj='brzuch' and (uzytkownik=? or uzytkownik=1)",getCookie(w,r))
// 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)
// t, _ := template.ParseFiles("komunikat.html")
// t.Execute(w, p)
2019-01-20 11:32:43 +01:00
2019-02-10 20:01:29 +01:00
// }else{
2019-01-20 11:32:43 +01:00
2019-02-10 20:01:29 +01:00
// rows2, err := db.Query("select nazwa from baza.cwiczenie where (uzytkownik=? or uzytkownik=1)",getCookie(w,r))
// 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)
// t, _ := template.ParseFiles("komunikat.html")
// t.Execute(w, p)
2019-01-20 11:32:43 +01:00
2019-02-10 20:01:29 +01:00
// }
rows21 , err := db . Query ( " SELECT B.rodzaj, B.nazwa from baza.trening_cel as A, baza.cwiczenie as B where A.id_uzytkownik=? and A.id_cwiczenie=B.id_cwiczenie order by B.rodzaj" , getCookie ( w , r ) )
emp21 := Cwiczenie { }
res21 := [ ] Cwiczenie { }
for rows21 . Next ( ) {
var Rodzaj string
var Nazwa string
err = rows21 . Scan ( & Rodzaj , & Nazwa )
if err != nil { panic ( err . Error ( ) ) }
emp21 . Rodzaj = Rodzaj
emp21 . Nazwa = Nazwa
res21 = append ( res21 , emp21 )
2019-01-20 11:32:43 +01:00
}
2019-02-10 20:01:29 +01:00
tmpl8 . ExecuteTemplate ( w , "Index2" , res21 )
2019-01-20 11:32:43 +01:00
2018-12-18 23:17:57 +01:00
2019-02-10 20:01:29 +01:00
//}
2019-01-16 23:47:40 +01:00
} }
2018-12-18 23:17:57 +01:00
2019-02-09 22:12:27 +01:00
func treningHandler ( w http . ResponseWriter , r * http . Request ) {
2019-01-16 23:47:40 +01:00
//otwieranie bazy-POCZATEK
db , err := sql . Open ( "mysql" , "finley:password@tcp(127.0.0.1:3306)/baza" )
if err != nil { panic ( err . Error ( ) ) }
defer db . Close ( )
//otwieranie bazy-KONIEC
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
//autoryzacja-POCZATEK
if getCookie ( w , r ) == "brak" {
p := Plan { Opis : "zakładka" }
t , _ := template . ParseFiles ( "brakdostepu.html" )
t . Execute ( w , p )
} else {
2019-02-10 20:01:29 +01:00
p := Plan { Opis : "" }
2019-01-16 23:47:40 +01:00
//sprawdzanie metody POST - POCZATEK
if r . Method == "POST" {
2018-12-18 23:17:57 +01:00
Powtorzenia := r . FormValue ( "Powtorzenia" )
Ciezar := r . FormValue ( "Ciezar" )
Serie := r . FormValue ( "Serie" )
Nazwa := r . FormValue ( "Nazwa" )
2019-01-16 23:47:40 +01:00
Akcja := r . FormValue ( "Akcja" )
2019-01-20 11:32:43 +01:00
2019-01-16 23:47:40 +01:00
currentTime := time . Now ( )
data_t := currentTime . Format ( "2006-01-02" )
2019-02-10 20:01:29 +01:00
// 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()
// }
2019-01-16 23:47:40 +01:00
//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 )
if err != nil { panic ( err . Error ( ) ) }
defer rows1 . Close ( )
var liczba string
for rows1 . Next ( ) {
err = rows1 . Scan ( & liczba )
}
2018-12-18 23:17:57 +01:00
2019-01-20 11:32:43 +01:00
rows , err := db . Query ( "SELECT id_cwiczenie FROM baza.cwiczenie WHERE nazwa like ?" , Nazwa )
2019-01-16 23:47:40 +01:00
if err != nil { panic ( err . Error ( ) ) }
defer rows . Close ( )
2019-01-20 11:32:43 +01:00
2019-01-16 23:47:40 +01:00
for rows . Next ( ) {
2018-12-18 23:17:57 +01:00
emp := CwiczenieTabela { }
var id_cwiczenie int
err = rows . Scan ( & id_cwiczenie )
emp . Id_cwiczenie = id_cwiczenie
2018-12-31 00:56:25 +01:00
2019-01-16 23:47:40 +01:00
if Akcja == "usun" {
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 ( )
2018-12-18 23:17:57 +01:00
2019-01-20 11:32:43 +01:00
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 ( )
2019-01-16 23:47:40 +01:00
2019-02-10 20:01:29 +01:00
rows3 , err := db . Query ( "DELETE FROM baza.zmiany where id_cwiczenia=? and id_uzytkownik=?" , id_cwiczenie , getCookie ( w , r ) )
if err != nil { panic ( err . Error ( ) ) }
defer rows3 . Close ( )
2019-01-16 23:47:40 +01:00
2019-02-10 20:01:29 +01:00
} else if Akcja == "zatwierdz" && liczba == "0" {
if IsNumeric ( Ciezar ) || IsNumeric ( Powtorzenia ) || IsNumeric ( Serie ) {
//DO PRZEMYŚLENIA
// 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()
//DO PRZEMYŚLENIA-KONIEC
2019-01-20 11:32:43 +01:00
2018-12-18 23:17:57 +01:00
2019-02-10 20:01:29 +01:00
///POWAŻNE ZMIANY
2019-01-16 23:47:40 +01:00
//dodawanie ciezaru lub powtórzenia zależnie od ilości treningów-POCZATEK
2019-02-10 20:01:29 +01:00
rows5 , err := db . Query ( "SELECT id_cwiczenia, ciezar_dodaj, powtorzenie_dodaj, co_ile_ciezar, co_ile_powtorzenie FROM baza.zmiany where id_uzytkownik=?" , getCookie ( w , r ) )
2019-01-16 23:47:40 +01:00
if err != nil { panic ( err . Error ( ) ) }
2019-02-10 20:01:29 +01:00
for rows5 . Next ( ) {
var id_cwiczenia int
2019-01-16 23:47:40 +01:00
var ciezar_dodaj int
var powtorzenie_dodaj int
var co_ile_ciezar int
2019-02-10 20:01:29 +01:00
var co_ile_powtorzenie int
// var ciezar_cel int
// var powtorzenia_cel int
err = rows5 . Scan ( & id_cwiczenia , & ciezar_dodaj , & powtorzenie_dodaj , & co_ile_ciezar , & co_ile_powtorzenie )
2019-01-16 23:47:40 +01:00
if err != nil { panic ( err . Error ( ) ) }
2019-02-10 20:01:29 +01:00
fmt . Println ( id_cwiczenia )
2019-01-16 23:47:40 +01:00
2019-02-10 20:01:29 +01:00
rows1 , err := db . Query ( "SELECT P.nazwa, N.ciezar, N.powtorzenia FROM baza.trening_cel AS N, baza.cwiczenie AS P WHERE P.id_cwiczenie = N.id_cwiczenie and N.id_uzytkownik=? and P.id_cwiczenie=?" , getCookie ( w , r ) , id_cwiczenia )
2019-01-16 23:47:40 +01:00
if err != nil { panic ( err . Error ( ) ) }
for rows1 . Next ( ) {
var nazwa string
var ciezar int
var powtorzenia int
err = rows1 . Scan ( & nazwa , & ciezar , & powtorzenia )
if err != nil { panic ( err . Error ( ) ) }
2019-02-10 20:01:29 +01:00
fmt . Println ( "1" )
2019-01-16 23:47:40 +01:00
rows3 , err := db . Query ( "SELECT COUNT(*) from baza.trening_rzeczywisty as a, baza.cwiczenie as b where b.nazwa=? and a.id_uzytkownik=?" , nazwa , getCookie ( w , r ) )
if err != nil { panic ( err . Error ( ) ) }
for rows3 . Next ( ) {
var liczba_treningow int
err = rows3 . Scan ( & liczba_treningow )
if err != nil { panic ( err . Error ( ) ) }
//sprawdzanie czy dodac ciezar lub powtorzenie-POCZATEK
2019-01-20 11:32:43 +01:00
2019-02-10 20:01:29 +01:00
2019-01-16 23:47:40 +01:00
if liczba_treningow % co_ile_ciezar == 0 || liczba_treningow % co_ile_powtorzenie == 0 {
2019-02-10 20:01:29 +01:00
fmt . Println ( "1" )
2019-01-16 23:47:40 +01:00
ciezar = ciezar + ciezar_dodaj
powtorzenia = powtorzenia + powtorzenie_dodaj
2019-02-10 20:01:29 +01:00
rows , err := db . Query ( "INSERT INTO trening_rzeczywisty (id_cwiczenia, id_uzytkownik, powtorzenia, ciezar,serie, data_t,powtorzenia_cel,ciezar_cel) VALUES (?, ?, ?, ?, ?, ?,?,? )" , id_cwiczenie , getCookie ( w , r ) , Powtorzenia , Ciezar , Serie , data_t , powtorzenia , ciezar )
if err != nil { panic ( err . Error ( ) ) }
defer rows . Close ( )
// rows3, err := db.Query("UPDATE baza.trening_cel as a, baza.cwiczenie as b SET a.ciezar=? WHERE a.id_uzytkownik=? and b.nazwa=? and a.id_cwiczenie=b.id_cwiczenie", ciezar,getCookie(w,r), nazwa)
// if err != nil {panic(err.Error())}
// fmt.Println(rows3)
} else {
fmt . Println ( "2" )
ciezar = 0
powtorzenia = 0
rows , err := db . Query ( "INSERT INTO trening_rzeczywisty (id_cwiczenia, id_uzytkownik, powtorzenia, ciezar,serie, data_t,powtorzenia_cel,ciezar_cel) VALUES (?, ?, ?, ?, ?, ?,?,? )" , id_cwiczenie , getCookie ( w , r ) , Powtorzenia , Ciezar , Serie , data_t , powtorzenia , ciezar )
2019-01-16 23:47:40 +01:00
if err != nil { panic ( err . Error ( ) ) }
2019-02-10 20:01:29 +01:00
defer rows . Close ( )
2019-01-16 23:47:40 +01:00
}
2019-02-10 20:01:29 +01:00
// sprawdzanie czy dodac ciezar lub powtorzenie-KONIEC
2019-01-16 23:47:40 +01:00
}
//dodawanie ciezaru lub powtórzenia zależnie od ilości treningów-KONIEC
}
2019-02-10 20:01:29 +01:00
///POWAŻNE ZMIANY---KONIEC
}
2019-01-16 23:47:40 +01:00
2019-02-10 20:01:29 +01:00
} else {
p = Plan { Opis : "Podane dane muszą być cyframi" }
} } else {
p = Plan { Opis : "Dodano juz dzisiaj to ćwiczenie." }
//sprawdzanie czy dodano juz dzisiaj to cwiczenie-KONIEC
//sprawdzanie metody POST - KONIEC
} }
2019-01-16 23:47:40 +01:00
}
2019-02-10 20:01:29 +01:00
rows2 , err := db . Query ( "SELECT rodzaj_treningu FROM zmiany where id_uzytkownik like ? group by rodzaj_treningu" , getCookie ( w , r ) )
2019-01-20 11:32:43 +01:00
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
2019-01-16 23:47:40 +01:00
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 ( ) {
2019-01-20 11:32:43 +01:00
2019-01-16 23:47:40 +01:00
var serie int
var powtorzenia int
var nazwa string
var ciezar int
err = rows . Scan ( & serie , & powtorzenia , & nazwa , & ciezar )
if err != nil { panic ( err . Error ( ) ) }
emp . Serie = serie
emp . Powtorzenia = powtorzenia
emp . Nazwa = nazwa
emp . Ciezar = ciezar
res = append ( res , emp )
}
2019-01-20 11:32:43 +01:00
emp2 . Plan = res
res2 = append ( res2 , emp2 )
}
tmpl . ExecuteTemplate ( w , "Index" , res2 )
2019-02-10 20:01:29 +01:00
t , _ := template . ParseFiles ( "komunikat.html" )
t . Execute ( w , p )
2019-02-06 23:29:13 +01:00
2019-01-16 23:47:40 +01:00
}
//autoryzacja-KONIEC
}
2019-02-06 23:29:13 +01:00
2019-01-16 23:47:40 +01:00
func logowanieHandler ( w http . ResponseWriter , r * http . Request ) {
db , err := sql . Open ( "mysql" , "finley:password@tcp(127.0.0.1:3306)/baza" )
2018-12-18 23:17:57 +01:00
if err != nil {
2019-01-16 23:47:40 +01:00
panic ( err . Error ( ) )
2018-12-18 23:17:57 +01:00
}
defer db . Close ( )
2019-01-16 23:47:40 +01:00
if r . Method == "GET" {
id_uzytkownik := r . FormValue ( "cookies" )
setCookie ( w , r , id_uzytkownik )
p := Uzytkownicy { Url : "/logowanie" }
t , _ := template . ParseFiles ( "logowanie.html" )
t . Execute ( w , p )
}
if r . Method == "POST" {
Login := r . FormValue ( "Login" )
Haslo := r . FormValue ( "Haslo" )
rows , err := db . Query ( "SELECT COUNT(*) FROM baza.uzytkownicy WHERE login=? and haslo=?" , Login , Haslo )
2019-02-10 20:01:29 +01:00
if err != nil { panic ( err . Error ( ) ) }
2019-01-16 23:47:40 +01:00
for rows . Next ( ) {
var autoryzacja int
err = rows . Scan ( & autoryzacja )
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
if err != nil {
panic ( err . Error ( ) )
}
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
if autoryzacja != 0 {
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
rows , err := db . Query ( "SELECT id_uzytkownik FROM baza.uzytkownicy WHERE login=? and haslo=?" , Login , Haslo )
if err != nil {
panic ( err . Error ( ) )
2018-12-18 23:17:57 +01:00
}
2019-01-16 23:47:40 +01:00
for rows . Next ( ) {
var id_uzytkownik string
err = rows . Scan ( & id_uzytkownik )
if err != nil {
panic ( err . Error ( ) )
}
setCookie ( w , r , id_uzytkownik )
p := Uzytkownicy { Url : "/start" }
t , _ := template . ParseFiles ( "start.html" )
t . Execute ( w , p ) }
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
} else {
p := Uzytkownicy { Url : "/logowanie" }
t , _ := template . ParseFiles ( "logowanie.html" )
t . Execute ( w , p )
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
} }
}
2018-12-18 23:17:57 +01:00
}
2019-01-16 23:47:40 +01:00
func opisCwiczenia ( w http . ResponseWriter , r * http . Request ) {
if getCookie ( w , r ) == "brak" {
p := Plan { Opis : "zakładka" }
t , _ := template . ParseFiles ( "brakdostepu.html" )
t . Execute ( w , p )
} else {
2018-12-18 23:17:57 +01:00
nazwa := r . FormValue ( "Nazwa" )
2019-01-16 23:47:40 +01:00
db , err := sql . Open ( "mysql" , "finley:password@tcp(127.0.0.1:3306)/baza" )
2019-02-10 20:01:29 +01:00
if err != nil { panic ( err . Error ( ) ) }
defer db . Close ( )
2018-12-18 23:17:57 +01:00
2019-02-10 20:01:29 +01:00
rows , err := db . Query ( "SELECT opis, rodzaj, zdjecie FROM baza.cwiczenie where nazwa=?" , nazwa )
if err != nil { panic ( err . Error ( ) ) }
2018-12-18 23:17:57 +01:00
2019-02-10 20:01:29 +01:00
emp := Cwiczenie { }
2018-12-18 23:17:57 +01:00
res := [ ] Cwiczenie { }
for rows . Next ( ) {
var opis string
var rodzaj string
var zdjecie string
err = rows . Scan ( & opis , & rodzaj , & zdjecie )
2019-02-10 20:01:29 +01:00
if err != nil { panic ( err . Error ( ) ) }
2018-12-18 23:17:57 +01:00
emp . Opis = opis
emp . Rodzaj = rodzaj
emp . Zdjecie = zdjecie
emp . Nazwa = nazwa
res = append ( res , emp )
}
tmpl3 . ExecuteTemplate ( w , "Index" , res )
//koniec wyświetlanie trenngu
2019-01-16 23:47:40 +01:00
} }
2018-12-18 23:17:57 +01:00
2018-12-31 00:56:25 +01:00
func wynikiHandler ( w http . ResponseWriter , r * http . Request ) {
2019-01-16 23:47:40 +01:00
if getCookie ( w , r ) == "brak" {
p := Plan { Opis : "zakładka" }
t , _ := template . ParseFiles ( "brakdostepu.html" )
t . Execute ( w , p )
2018-12-31 00:56:25 +01:00
2019-01-16 23:47:40 +01:00
} else {
2019-02-09 22:12:27 +01:00
p := Plan { Opis : "" }
2019-01-16 23:47:40 +01:00
db , err := sql . Open ( "mysql" , "finley:password@tcp(127.0.0.1:3306)/baza" )
2019-02-10 20:01:29 +01:00
if err != nil { panic ( err . Error ( ) ) }
2018-12-31 00:56:25 +01:00
defer db . Close ( )
2019-01-20 11:32:43 +01:00
2019-02-09 22:12:27 +01:00
if r . Method == "POST" {
Nazwa2 := r . FormValue ( "Nazwa" )
data_t2 := r . FormValue ( "Data" )
Ciezar2 := r . FormValue ( "Ciezar" )
Akcja2 := r . FormValue ( "Akcja" )
rows2 , err := db . Query ( "SELECT COUNT(*) FROM baza.trening_rzeczywisty AS A, baza.cwiczenie AS B where B.nazwa=? and A.id_uzytkownik=? and A.data_t=?" , Nazwa2 , getCookie ( w , r ) , data_t2 )
if err != nil { panic ( err . Error ( ) ) }
for rows2 . Next ( ) {
var sprawdzanieBaza int
err = rows2 . Scan ( & sprawdzanieBaza )
if err != nil { panic ( err . Error ( ) ) }
if sprawdzanieBaza != 0 {
if Ciezar2 == "" && Akcja2 == "Usun" {
insert , err := db . Query ( "delete A from baza.trening_rzeczywisty AS A, baza.cwiczenie AS B where B.nazwa=? and A.id_uzytkownik=? and A.data_t=?" , Nazwa2 , getCookie ( w , r ) , data_t2 )
if err != nil { panic ( err . Error ( ) ) }
defer insert . Close ( )
} else if Ciezar2 != "" && Akcja2 == "Edytuj" {
rows3 , err := db . Query ( "UPDATE baza.trening_rzeczywisty AS A, baza.cwiczenie AS B SET A.ciezar=? where B.nazwa=? and A.id_uzytkownik=? and A.data_t=?" , Ciezar2 , Nazwa2 , getCookie ( w , r ) , data_t2 )
if err != nil { panic ( err . Error ( ) ) }
defer rows3 . Close ( )
} else {
p = Plan { Opis : "Upss.. coś poszło nie tak. Przy edycji wyniku wprowadź cięzar natomiast przy usunięciu nie wprowadzaj danej cieżar." }
}
} else {
p = Plan { Opis : "Wynik o takiej dacie oraz nazwie nie istanieje w bazie" }
}
}
}
2019-01-20 11:32:43 +01:00
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
2018-12-31 00:56:25 +01:00
emp := ww { }
res := [ ] ww { }
for rows . Next ( ) {
var nazwa string
err = rows . Scan ( & nazwa )
2019-01-20 11:32:43 +01:00
if err != nil { panic ( err . Error ( ) ) }
2018-12-31 00:56:25 +01:00
emp . Nazwa = nazwa
2019-02-10 20:01:29 +01:00
2019-01-20 11:32:43 +01:00
i ++
2018-12-31 00:56:25 +01:00
emp . NumerCwiczenia = i
2019-02-10 20:01:29 +01:00
2018-12-31 00:56:25 +01:00
2019-02-09 22:12:27 +01:00
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 and P.id_uzytkownik=?" , nazwa , getCookie ( w , r ) )
2018-12-31 00:56:25 +01:00
2019-01-20 11:32:43 +01:00
if err != nil { panic ( err . Error ( ) ) }
2018-12-31 00:56:25 +01:00
emp2 := Wyniki { }
res2 := [ ] Wyniki { }
for rows2 . Next ( ) {
var ciezar_rzecz int
var ciezar_cel int
2019-01-16 23:47:40 +01:00
var data_t string
2018-12-31 00:56:25 +01:00
2019-01-16 23:47:40 +01:00
err = rows2 . Scan ( & ciezar_rzecz , & ciezar_cel , & data_t )
2019-02-10 20:01:29 +01:00
if err != nil { panic ( err . Error ( ) ) }
2018-12-31 00:56:25 +01:00
emp2 . Ciezar_rzecz = ciezar_rzecz
emp2 . Ciezar_cel = ciezar_cel
2019-01-16 23:47:40 +01:00
emp2 . Data_t = data_t
2018-12-31 00:56:25 +01:00
res2 = append ( res2 , emp2 )
}
emp . Wyniki = res2
2019-01-16 23:47:40 +01:00
res = append ( res , emp )
2019-01-20 11:32:43 +01:00
}
2018-12-31 00:56:25 +01:00
tmpl4 . ExecuteTemplate ( w , "Index" , res )
2019-02-09 22:12:27 +01:00
rows4 , err := db . Query ( "SELECT B.nazwa FROM baza.trening_rzeczywisty as A, cwiczenie as B where B.id_cwiczenie=A.id_cwiczenia and A.id_uzytkownik=? GROUP BY A.id_cwiczenia" , getCookie ( w , r ) )
if err != nil { panic ( err . Error ( ) ) }
emp2 := Wyniki { }
res2 := [ ] Wyniki { }
for rows4 . Next ( ) {
var nazwa string
err = rows4 . Scan ( & nazwa )
if err != nil { panic ( err . Error ( ) ) }
emp2 . Nazwa = nazwa
res2 = append ( res2 , emp2 )
}
tmpl7 . ExecuteTemplate ( w , "Index2" , res2 )
t , _ := template . ParseFiles ( "komunikat.html" )
t . Execute ( w , p )
2018-12-31 00:56:25 +01:00
}
2019-01-16 23:47:40 +01:00
2018-12-31 00:56:25 +01:00
}
2019-01-16 23:47:40 +01:00
func dodaj_cwiczenieHandler ( 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 ( )
2018-12-31 00:56:25 +01:00
2019-01-16 23:47:40 +01:00
if getCookie ( w , r ) == "brak" {
p := Plan { Opis : "zakładka" }
t , _ := template . ParseFiles ( "brakdostepu.html" )
2018-12-31 00:56:25 +01:00
t . Execute ( w , p )
2019-01-16 23:47:40 +01:00
} else {
2019-02-10 20:01:29 +01:00
p := Plan { Opis : "" }
2019-01-16 23:47:40 +01:00
2018-12-31 00:56:25 +01:00
if r . Method == "POST" {
Nazwa := r . FormValue ( "Nazwa" )
Rodzaj := r . FormValue ( "Rodzaj" )
Opis := r . FormValue ( "Opis" )
Zdjecie := r . FormValue ( "Zdjecie" )
2019-01-16 23:47:40 +01:00
2019-02-03 23:59:21 +01:00
rows , err := db . Query ( "SELECT COUNT(*) FROM baza.cwiczenie WHERE nazwa=? and uzytkownik=?" , Nazwa , getCookie ( w , r ) )
// if err != nil {panic(err.Error())}
var nazwa int
for rows . Next ( ) {
err = rows . Scan ( & nazwa )
fmt . Println ( err )
fmt . Println ( nazwa )
if blank ( Nazwa ) == false && blank ( Rodzaj ) == false && blank ( Opis ) == false && blank ( Zdjecie ) == false && nazwa == 0 {
insert , err := db . Query ( "INSERT INTO baza.cwiczenie ( opis, rodzaj, nazwa, zdjecie, uzytkownik) VALUES ( ?,?,?,?,? )" , Opis , Rodzaj , Nazwa , Zdjecie , getCookie ( w , r ) )
2019-01-16 23:47:40 +01:00
fmt . Println ( insert )
fmt . Println ( err )
2019-02-03 23:59:21 +01:00
} else {
2019-02-10 20:01:29 +01:00
p = Plan { Opis : "Musisz wypełnić wszystkie pola" }
2019-02-03 23:59:21 +01:00
} }
2019-01-16 23:47:40 +01:00
}
2019-01-31 22:31:47 +01:00
2019-02-10 20:01:29 +01:00
2019-01-31 22:31:47 +01:00
rows2 , err := db . Query ( "select nazwa from baza.cwiczenie where uzytkownik=?" , getCookie ( w , r ) )
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 )
}
tmpl6 . ExecuteTemplate ( w , "Index" , res2 )
2019-02-10 20:01:29 +01:00
t , _ := template . ParseFiles ( "komunikat.html" )
t . Execute ( w , p )
2019-01-16 23:47:40 +01:00
} }
2019-02-03 23:59:21 +01:00
func usun_cwiczenieHandler ( 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" {
NazwaUsun := r . FormValue ( "NazwaUsun" )
insert , err := db . Query ( "delete from baza.cwiczenie where Nazwa=? and uzytkownik=?" , NazwaUsun , getCookie ( w , r ) )
if err != nil { panic ( err . Error ( ) ) }
defer insert . Close ( )
}
rows2 , err := db . Query ( "select nazwa from baza.cwiczenie where uzytkownik=?" , getCookie ( w , r ) )
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 )
}
tmpl6 . ExecuteTemplate ( w , "Index" , res2 )
} }
2019-01-16 23:47:40 +01:00
func rejestracja ( w http . ResponseWriter , r * http . Request ) {
// p := Uzytkownicy{Url: "/start"}
// t, _ := template.ParseFiles("pocz.html")
// t.Execute(w, p)
if r . Method == "POST" {
Login := r . FormValue ( "Login" )
Haslo := r . FormValue ( "Haslo" )
db , err := sql . Open ( "mysql" , "finley:password@tcp(127.0.0.1:3306)/baza" )
if err != nil { panic ( err . Error ( ) ) }
2018-12-31 00:56:25 +01:00
defer db . Close ( )
2019-01-16 23:47:40 +01:00
rows , err := db . Query ( "SELECT COUNT(*) FROM baza.uzytkownicy WHERE login=?" , Login )
var login int
for rows . Next ( ) {
2019-02-10 20:01:29 +01:00
err = rows . Scan ( & login )
}
2018-12-31 00:56:25 +01:00
2019-01-16 23:47:40 +01:00
if login == 0 {
2018-12-31 00:56:25 +01:00
2019-01-20 14:22:29 +01:00
2019-01-16 23:47:40 +01:00
insert , err := db . Query ( "INSERT INTO uzytkownicy (login, haslo) VALUES ( ?,? )" , Login , Haslo )
2018-12-31 00:56:25 +01:00
if err != nil {
panic ( err . Error ( ) )
}
2019-01-16 23:47:40 +01:00
defer insert . Close ( )
2019-01-20 14:22:29 +01:00
rows2 , err := db . Query ( "select id_uzytkownik from uzytkownicy where login=?" , Login )
for rows2 . Next ( ) {
var id int
err = rows2 . Scan ( & id )
if err != nil {
panic ( err . Error ( ) ) }
insert2 , err := db . Query ( "INSERT INTO baza.zmiany (ciezar_dodaj, powtorzenie_dodaj, co_ile_ciezar, co_ile_powtorzenie, id_uzytkownik, rodzaj_treningu) VALUES (0, 0, 0, 0, ?, 'FBW')" , id )
if err != nil {
panic ( err . Error ( ) )
}
defer insert2 . Close ( )
}
2019-01-16 23:47:40 +01:00
p := komunikat { Opis : "" }
t , _ := template . ParseFiles ( "logowanie.html" )
t . Execute ( w , p )
} else {
p := komunikat { Opis : "Ten login jest już zajęty" }
t , _ := template . ParseFiles ( "rejestracja.html" )
t . Execute ( w , p )
2018-12-31 00:56:25 +01:00
}
2019-01-16 23:47:40 +01:00
} else {
p := komunikat { Opis : "" }
t , _ := template . ParseFiles ( "rejestracja.html" )
t . Execute ( w , p )
}
2018-12-31 00:56:25 +01:00
}
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
func start ( w http . ResponseWriter , r * http . Request ) {
p := Uzytkownicy { Url : "/start" }
t , _ := template . ParseFiles ( "start.html" )
t . Execute ( w , p )
}
2019-01-20 11:32:43 +01:00
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 {
2019-02-10 20:01:29 +01:00
p := Plan { Opis : "" }
2019-01-20 11:32:43 +01:00
if r . Method == "POST" {
2019-02-09 22:12:27 +01:00
nazwa := r . FormValue ( "Nazwa" )
wymiar := r . FormValue ( "wymiar" )
Akcja := r . FormValue ( "Akcja" )
DataEdycja := r . FormValue ( "DataEdycja" )
2019-01-20 11:32:43 +01:00
currentTime := time . Now ( )
data := currentTime . Format ( "2006-01-02" )
2019-02-09 22:12:27 +01:00
rows , err := db . Query ( "SELECT COUNT(*) FROM baza.wymiary where nazwa=? and data=? and id_uzytkownik=?" , nazwa , data , getCookie ( w , r ) )
2019-01-20 11:32:43 +01:00
if err != nil { panic ( err . Error ( ) ) }
2019-02-09 22:12:27 +01:00
for rows . Next ( ) {
var istnieje int
err = rows . Scan ( & istnieje )
if err != nil { panic ( err . Error ( ) ) }
if istnieje == 0 && Akcja == "Dodaj" {
insert , err := db . Query ( "INSERT INTO baza.wymiary ( id_uzytkownik, wymiar, nazwa, data) VALUES ( ?,?,?,?)" , getCookie ( w , r ) , wymiar , nazwa , data )
if err != nil { panic ( err . Error ( ) ) }
defer insert . Close ( )
} else if Akcja == "Edytuj" {
UPDATE , err := db . Query ( "UPDATE baza.wymiary set wymiar=? where nazwa=? and data=? and id_uzytkownik=?" , wymiar , nazwa , DataEdycja , getCookie ( w , r ) )
if err != nil { panic ( err . Error ( ) ) }
defer UPDATE . Close ( )
} else if Akcja == "Usun" {
DELETE , err := db . Query ( "DELETE from baza.wymiary where nazwa=? and id_uzytkownik=?" , nazwa , getCookie ( w , r ) )
if err != nil { panic ( err . Error ( ) ) }
defer DELETE . Close ( )
2019-01-20 11:32:43 +01:00
} else {
2019-02-09 22:12:27 +01:00
2019-02-10 20:01:29 +01:00
p = Plan { Opis : "zakładka" }
2019-02-09 22:12:27 +01:00
}
} }
rows , err := db . Query ( "SELECT nazwa from wymiary where id_uzytkownik=? group by nazwa" , getCookie ( w , r ) )
2019-01-20 11:32:43 +01:00
if err != nil { panic ( err . Error ( ) ) }
2019-02-09 22:12:27 +01:00
emp := Wymiary { }
res := [ ] Wymiary { }
for rows . Next ( ) {
var nazwa string
err = rows . Scan ( & nazwa )
if err != nil { panic ( err . Error ( ) ) }
emp . Nazwa = nazwa
rows2 , err := db . Query ( "SELECT wymiar, data from wymiary where nazwa=? and id_uzytkownik=?" , nazwa , getCookie ( w , r ) )
if err != nil { panic ( err . Error ( ) ) }
emp2 := Wymiary_2 { }
res2 := [ ] Wymiary_2 { }
2019-01-20 11:32:43 +01:00
for rows2 . Next ( ) {
var wymiar int
var data string
2019-02-09 22:12:27 +01:00
err = rows2 . Scan ( & wymiar , & data )
if err != nil { panic ( err . Error ( ) ) }
2019-01-20 11:32:43 +01:00
emp2 . Wymiar = wymiar
emp2 . Data = data
res2 = append ( res2 , emp2 )
2019-02-09 22:12:27 +01:00
}
emp . Wymiary_2 = res2
res = append ( res , emp )
2019-01-20 11:32:43 +01:00
}
2019-02-09 22:12:27 +01:00
tmpl5 . ExecuteTemplate ( w , "Index" , res )
2019-02-10 20:01:29 +01:00
t , _ := template . ParseFiles ( "komunikat.html" )
t . Execute ( w , p )
2019-01-20 11:32:43 +01:00
}
}
2019-01-16 23:47:40 +01:00
func main ( ) {
db , err := sql . Open ( "mysql" , "finley:password@tcp(127.0.0.1:3306)/baza" )
2018-12-18 23:17:57 +01:00
if err != nil {
panic ( err . Error ( ) )
}
defer db . Close ( )
/ *
//wpisywanie do bazy
insert , err := db . Query ( "INSERT INTO trening_rzeczywisty VALUES ( 1, 1, 1, 22, 33, 44 )" )
if err != nil {
panic ( err . Error ( ) )
}
defer insert . Close ( )
* /
//wybieranie z bazy
/ * results , err := db . Query ( "SELECT login FROM uzytkownicy" )
if err != nil {
panic ( err . Error ( ) )
}
for results . Next ( ) {
var login string
err = results . Scan ( & login )
if err != nil {
panic ( err . Error ( ) )
}
fmt . Printf ( login )
} * /
/ *
//usuwanie wiersza z bazy
insertq , err := db . Query ( "DELETE FROM uzytkownicy WHERE id_uzytkownik=4" )
if err != nil {
panic ( err . Error ( ) )
}
defer insertq . Close ( )
* /
http . Handle ( "/static/" , http . StripPrefix ( "/static/" , http . FileServer ( http . Dir ( "static" ) ) ) )
2019-02-09 22:12:27 +01:00
http . HandleFunc ( "/trening/" , treningHandler )
2019-02-06 23:29:13 +01:00
// http.HandleFunc("/wypisz_usun/", wypiszHandler_usun)
2019-01-16 23:47:40 +01:00
http . HandleFunc ( "/logowanie" , logowanieHandler )
2018-12-18 23:17:57 +01:00
http . HandleFunc ( "/planer/" , planowanieTreningu )
2018-12-31 00:56:25 +01:00
http . HandleFunc ( "/cwiczenie/" , opisCwiczenia )
http . HandleFunc ( "/wyniki/" , wynikiHandler )
2019-01-16 23:47:40 +01:00
http . HandleFunc ( "/dodajcwiczenie/" , dodaj_cwiczenieHandler )
2019-02-03 23:59:21 +01:00
http . HandleFunc ( "/usuncwiczenie/" , usun_cwiczenieHandler )
2019-01-16 23:47:40 +01:00
http . HandleFunc ( "/rejestracja/" , rejestracja )
2019-01-20 11:32:43 +01:00
http . HandleFunc ( "/wymiary/" , wymiary )
2018-12-18 23:17:57 +01:00
2019-01-16 23:47:40 +01:00
http . HandleFunc ( "/start/" , start )
http . ListenAndServe ( ":8099" , nil )
2018-12-18 23:17:57 +01:00
}