Advertisement
Guest User

Untitled

a guest
Feb 17th, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Go 1.78 KB | None | 0 0
  1. package main
  2.  
  3. import (
  4.     "fmt"
  5.     "net/http"
  6.     "net/http/cookiejar"
  7.  
  8.     "fyne.io/fyne"
  9.     "fyne.io/fyne/app"
  10.     "fyne.io/fyne/layout"
  11.     "fyne.io/fyne/widget"
  12. )
  13.  
  14. type State struct {
  15.     app     fyne.App
  16.     client  *http.Client
  17.     loginw  fyne.Window
  18.     mainapp fyne.App
  19.     mainw   fyne.Window
  20. }
  21.  
  22. func main() {
  23.     var state State
  24.     cookieJar, _ := cookiejar.New(nil)
  25.     state.client = &http.Client{
  26.         Jar: cookieJar,
  27.     }
  28.     state.app = app.New()
  29.     loginresult := widget.NewLabel("")
  30.     usrf := widget.NewEntry()
  31.     passf := widget.NewPasswordEntry()
  32.     result := ""
  33.     state.loginw = state.app.NewWindow("Loggboken")
  34.     state.loginw.SetContent(widget.NewVBox(
  35.         usrf,
  36.         passf,
  37.         layout.NewSpacer(),
  38.         widget.NewButton("Logga in", func() {
  39.             u := usrf.Text
  40.             p := passf.Text
  41.             state.login(u, p)
  42.         }),
  43.         widget.NewButton("Avsluta", func() { state.app.Quit() }),
  44.         widget.NewLabel(result),
  45.         loginresult,
  46.     ))
  47.     usrf.SetPlaceHolder("Användarnamn")
  48.     state.loginw.Resize(fyne.Size{
  49.         Width:  300,
  50.         Height: 200,
  51.     })
  52.     state.loginw.CenterOnScreen()
  53.     state.loginw.ShowAndRun()
  54.     state.mainw.ShowAndRun()
  55. }
  56.  
  57. func (s *State) login(u string, p string) {
  58.     logind := "username=" + u + "&password=" + p
  59.     fmt.Println(logind)
  60.     body := POST(s.client, "", logind, "application/x-www-form-urlencoded")
  61.     if body == "student" {
  62.         s.loginw.Close()
  63.         s.mainscreen()
  64.     } else {
  65.         fmt.Println("Fel vid inloggning!")
  66.         return
  67.     }
  68. }
  69.  
  70. func (s *State) mainscreen() {
  71.     fmt.Println("Mainscreen start!")
  72.     s.mainw = s.app.NewWindow("Idag")
  73.     s.mainw.SetContent(widget.NewVBox(
  74.         widget.NewEntry(),
  75.         widget.NewButton("SPARA", func() {}),
  76.         widget.NewButton("Avsluta", func() { s.app.Quit() }),
  77.     ))
  78.     s.mainw.Resize(fyne.Size{
  79.         Width:  500,
  80.         Height: 200,
  81.     })
  82.     s.mainw.CenterOnScreen()
  83.     fmt.Println("Mainscreen END!")
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement