diff --git a/backend/backend/config.go b/backend/backend/config.go new file mode 100644 index 0000000..4604ad8 --- /dev/null +++ b/backend/backend/config.go @@ -0,0 +1,17 @@ +package main + +type Config struct { + //dane do bazy Mysql + mysqlLogin string `json:"id"` // do pobierania z GET + mysqlPassword string `json:"login"` + mysqlHost string `json:"password"` + mysqlDatabase string `json:"userDescription"` + mysqlPort int `json:points` + + //dane do bazy couchdb + couchdbLogin string `json:"id"` // do pobierania z GET + couchdbPassword string `json:"login"` + couchdbHost string `json:"password"` + couchdbDatabase string `json:"userDescription"` + couchdbPort int `json:points` +} diff --git a/backend/backend/connector_couchdb.go b/backend/backend/connector_couchdb.go index 28a8e70..cd0e94b 100644 --- a/backend/backend/connector_couchdb.go +++ b/backend/backend/connector_couchdb.go @@ -28,6 +28,25 @@ func connectCouchdb(url_couchdb string) { return u, err } +func addNewCard(){ + u, err = connectCouchdb("") + client, err := couchdb.NewClient(u) + + db := client.Use("golangCards") + doc := &cardDocument{ + Foo: "bar", + Beep: "bopp", + ID int + isQuestion bool //True karta pytanie, False karta odpowiedź + Blank int //ile kart odpowiedzi na pytanie + Text string // podłoga to luka + } + result, err := db.Post(doc) + if err != nil { + panic(err) + } + +} // start func main() { @@ -55,6 +74,10 @@ func main() { doc := &cardDocument{ Foo: "bar", Beep: "bopp", + ID int + isQuestion bool //True karta pytanie, False karta odpowiedź + Blank int //ile kart odpowiedzi na pytanie + Text string // podłoga to luka } result, err := db.Post(doc) if err != nil { diff --git a/backend/backend/connector_mysql.exe b/backend/backend/connector_mysql.exe new file mode 100644 index 0000000..499644c Binary files /dev/null and b/backend/backend/connector_mysql.exe differ diff --git a/backend/backend/connector_mysql.go b/backend/backend/connector_mysql.go new file mode 100644 index 0000000..d69b8ad --- /dev/null +++ b/backend/backend/connector_mysql.go @@ -0,0 +1,86 @@ +package main + +import ( + "database/sql" + "fmt" + + _ "github.com/go-sql-driver/mysql" +) + +func connectMysql() (*sql.DB, error) { + db, err := sql.Open("mysql", "root:password@tcp(127.0.0.1:3306)/golang_user") + + if err != nil { + panic(err.Error()) + } + return db, nil +} + +// func addUser(login string, password string, userDescription string, points int) { +// //do rejestracji uzytkownika +// // Insert do bazy Mysql Nowego użytkownika + +// db, err = connectMysql() +// if err != nil { +// panic(err.Error()) +// } +// queryInsert := fmt.Sprintf(`INSERT INTO golang_user ( +// login, +// password, +// userDescription, +// points +// )VALUES ( +// %s, +// %s, +// %s, +// %d +// )`, login, password, userDescription, 0) + +// insert, err := db.Query(queryInsert) + +// } + +func getAllUsers() []User { + //pobiera wszystkich uzytkownikow - do wysiwetlenie na front + /* --------------------- users ----------------------- + userId int `json:"id"` // do pobierania z GET + login string `json:"login"` + password string `json:"password"` + userDescription string `json:"userDescription"` + points int `json:points` + */ + allUsers := []User{} + db, err := connectMysql() + + result, err := db.Query("SELECT * FROM users") + if err != nil { + panic(err.Error()) + } + + for result.Next() { + var user User + + err = result.Scan(&user.userId, user.login, user.userDescription, user.points) + if err != nil { + panic(err.Error()) + } + + fmt.Println(user.userId, user.login) + allUsers = append(allUsers, user) + } + + fmt.Println(allUsers) + return allUsers + +} + +func main() { + fmt.Println("Go Mysql Tutorial") + // db, err := connectMysql() + + // // db, err := sql.Open("mysql", "root:password@tcp(127.0.0.1:3306)/golang_user") + // fmt.Println(reflect.TypeOf(db)) + // fmt.Println(reflect.TypeOf(err)) + allUsers := getAllUsers() + fmt.Println(allUsers) +} diff --git a/backend/backend/hardcodedData.go b/backend/backend/hardcodedData.go new file mode 100644 index 0000000..572dfb3 --- /dev/null +++ b/backend/backend/hardcodedData.go @@ -0,0 +1,52 @@ +package main + +//Dane do testow hardkodowane + +//Lista użytkownikow na sztywno +var hardcodedUsers = []User{} + +// Lista kart na sztywno +var hardcodedCards = []Card{ + Card{0, 0, 0, "Adoptowanie dziecka tylko po, by porzucić je w galerii handlowej."}, + Card{1, 0, 0, "Sieroty, które wybuchają gdy ktoś je tylko pokocha."}, + Card{2, 0, 0, "Niekończąca się aktualizacja Windowsa"}, + Card{3, 0, 0, "Bug."}, + Card{4, 0, 0, "Wadliwe testy jednostkowe."}, + Card{5, 0, 0, "Użyszkodnik."}, + Card{6, 0, 0, "Aplikacja kalkulatora zajmująca 5GB."}, + Card{7, 1, 1, "Nie programuję w święta, bo _ się rodzi."}, + Card{8, 1, 1, "3 rzeczy lepsze od seksu. _ _ _"}, + Card{9, 0, 0, "Audyt bezpiezeństwa teleinformatycznego."}, + Card{10, 0, 0, "Testy na produkcji."}, + Card{11, 0, 0, "Pasywno-agresywna notatka o bałaganie w mieszkaniu."}, + Card{12, 0, 0, "Spanko."}, + Card{13, 0, 0, "Granko."}, + Card{14, 0, 0, "Niech żyje zbrodniczy reżim."}, + Card{15, 0, 0, "Kuce z Orła."}, + Card{16, 0, 0, "Wałówka od mamy."}, + Card{17, 0, 0, "10 dni do wypłaty."}, + Card{18, 0, 0, "Bo to zła kobieta była."}, + Card{19, 1, 2, "Rude to _ i _."}, + Card{20, 0, 0, "Tłusty drewnojad."}, + Card{21, 0, 0, "Zupa z paczki o smaku opakowania."}, + Card{22, 0, 0, "Przez twe oczy zielone, zielone _."}, + Card{23, 0, 0, "Naleśnikowa środa."}, + Card{24, 0, 0, "Kończenie dokumentacji o 5 nad ranem."}, + Card{25, 0, 0, "Powtarzanie roku."}, + Card{26, 0, 0, "Warunek."}, + Card{27, 0, 0, "Pralka."}, + Card{28, 0, 0, "Chodzenie po starym rynku w szpilkach."}, + Card{29, 0, 0, "Nieudana migracja bez logów."}, + Card{30, 0, 0, "Nocny dyżur."}, + Card{31, 1, 1, "Kac morderca jest wtedy gdy _."}, + Card{32, 0, 0, "Buka."}, + Card{33, 0, 0, "Nie mogę wyjść, mam _."}, + Card{34, 0, 0, "Cukier."}, + Card{35, 0, 0, "Co?"}, + Card{36, 0, 0, "Chodź, debata jest."}, + Card{37, 0, 0, "Ranga w pubg."}, + Card{38, 0, 0, "Dla Ciebie Pani Sarna."}, + Card{39, 1, 1, "Palenie papierosów powoduje _."}, + Card{40, 0, 0, "Syndrom Sztokholmski."}, + Card{41, 0, 0, "Domyśl się."}, +} diff --git a/backend/backend/models.go b/backend/backend/models.go index 2b102e3..6006733 100644 --- a/backend/backend/models.go +++ b/backend/backend/models.go @@ -1,56 +1,31 @@ package main -// Structura karty +//struktura użytkownika +/* +CREATE TABLE users ( + userId INT NOT NULL AUTO_INCREMENT, + login varchar(50) NOT NULL UNIQUE, + password varchar(30) NOT NULL, + userDescription varchar(300), + points int, + PRIMARY KEY (userId) +); +*/ +type User struct { + userId int `json:"id"` // do pobierania z GET + login string `json:"login"` + password string `json:"password"` + userDescription string `json:"userDescription"` + points int `json:points` +} + +// Structura karty +/* + */ type Card struct { ID int `json:"id" binding:"required"` isQuestion int `json:"typ"` //0 karta pytanie, 1 karta odpowiedź Blank int `json:"puste" binding:"required"` //ile kart odpowiedzi na pytanie Text string `json:"tekst" binding:"required"` // podłoga to luka } - -// Lista card -var cards = []Card{ - Card{0, 0, 0, "Adoptowanie dziecka tylko po, by porzucić je w galerii handlowej."}, - Card{1, 0, 0, "Sieroty, które wybuchają gdy ktoś je tylko pokocha."}, - Card{2, 0, 0, "Niekończąca się aktualizacja Windowsa"}, - Card{3, 0, 0, "Bug."}, - Card{4, 0, 0, "Wadliwe testy jednostkowe."}, - Card{5, 0, 0, "Użyszkodnik."}, - Card{6, 0, 0, "Aplikacja kalkulatora zajmująca 5GB."}, - Card{7, 1, 1, "Nie programuję w święta, bo _ się rodzi."}, - Card{8, 1, 1, "3 rzeczy lepsze od seksu. _ _ _"}, - Card{9, 0, 0, "Audyt bezpiezeństwa teleinformatycznego."}, - Card{10, 0, 0, "Testy na produkcji."}, - Card{11, 0, 0, "Pasywno-agresywna notatka o bałaganie w mieszkaniu."}, - Card{12, 0, 0, "Spanko."}, - Card{13, 0, 0, "Granko."}, - Card{14, 0, 0, "Niech żyje zbrodniczy reżim."}, - Card{15, 0, 0, "Kuce z Orła."}, - Card{16, 0, 0, "Wałówka od mamy."}, - Card{17, 0, 0, "10 dni do wypłaty."}, - Card{18, 0, 0, "Bo to zła kobieta była."}, - Card{19, 1, 2, "Rude to _ i _."}, - Card{20, 0, 0, "Tłusty drewnojad."}, - Card{21, 0, 0, "Zupa z paczki o smaku opakowania."}, - Card{22, 0, 0, "Przez twe oczy zielone, zielone _."}, - Card{23, 0, 0, "Naleśnikowa środa."}, - Card{24, 0, 0, "Kończenie dokumentacji o 5 nad ranem."}, - Card{25, 0, 0, "Powtarzanie roku."}, - Card{26, 0, 0, "Warunek."}, - Card{27, 0, 0, "Pralka."}, - Card{28, 0, 0, "Chodzenie po starym rynku w szpilkach."}, - Card{29, 0, 0, "Nieudana migracja bez logów."}, - Card{30, 0, 0, "Nocny dyżur."}, - Card{31, 1, 1, "Kac morderca jest wtedy gdy _."}, - Card{32, 0, 0, "Buka."}, - Card{33, 0, 0, "Nie mogę wyjść, mam _."}, - Card{34, 0, 0, "Cukier."}, - Card{35, 0, 0, "Co?"}, - Card{36, 0, 0, "Chodź, debata jest."}, - Card{37, 0, 0, "Ranga w pubg."}, - Card{38, 0, 0, "Dla Ciebie Pani Sarna."}, - Card{39, 1, 1, "Palenie papierosów powoduje _."}, - Card{40, 0, 0, "Syndrom Sztokholmski."}, - Card{41, 0, 0, "Domyśl się."}, -}