Compare commits
2 Commits
62a91653c3
...
7bf6ffd417
Author | SHA1 | Date |
---|---|---|
Matthieu Lamalle | 7bf6ffd417 | |
Matthieu Lamalle | d53fd64121 |
|
@ -1,2 +1,3 @@
|
||||||
foods.db
|
foods.db
|
||||||
server.conf
|
server.conf
|
||||||
|
server
|
|
@ -4,5 +4,4 @@ FOODOLES
|
||||||
Projet Go de vote pour choisir ce qu'on mange au déjeuner
|
Projet Go de vote pour choisir ce qu'on mange au déjeuner
|
||||||
|
|
||||||
TODO :
|
TODO :
|
||||||
Afficher une liste de restaurants locaux répondant au vote du jour
|
Afficher une liste de restaurants locaux répondant au vote du jour
|
||||||
Afficher le résultat du vote
|
|
|
@ -11,7 +11,7 @@ import (
|
||||||
// LogIn auth the client
|
// LogIn auth the client
|
||||||
func LogIn(username string, password string) (ok bool, user map[string]string) {
|
func LogIn(username string, password string) (ok bool, user map[string]string) {
|
||||||
|
|
||||||
var configFile = "../server.conf"
|
var configFile = "server.conf"
|
||||||
var conf *config.Config
|
var conf *config.Config
|
||||||
var conferr error
|
var conferr error
|
||||||
conf, conferr = config.NewFromFile(configFile)
|
conf, conferr = config.NewFromFile(configFile)
|
||||||
|
@ -30,6 +30,7 @@ func LogIn(username string, password string) (ok bool, user map[string]string) {
|
||||||
GroupFilter: "(memberUid=%s)",
|
GroupFilter: "(memberUid=%s)",
|
||||||
Attributes: conf.LDAP.Attributes,
|
Attributes: conf.LDAP.Attributes,
|
||||||
}
|
}
|
||||||
|
log.Print(ldapclient)
|
||||||
defer ldapclient.Close()
|
defer ldapclient.Close()
|
||||||
|
|
||||||
ok, user, err := ldapclient.Authenticate(username, password)
|
ok, user, err := ldapclient.Authenticate(username, password)
|
||||||
|
|
19
server.go
19
server.go
|
@ -1,6 +1,7 @@
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"cadoles/foodoles/auth"
|
||||||
"cadoles/foodoles/bdd"
|
"cadoles/foodoles/bdd"
|
||||||
"cadoles/foodoles/config"
|
"cadoles/foodoles/config"
|
||||||
"cadoles/foodoles/foodlist"
|
"cadoles/foodoles/foodlist"
|
||||||
|
@ -51,12 +52,14 @@ func main() {
|
||||||
|
|
||||||
// ServerHTTP is the entry point to all requests
|
// ServerHTTP is the entry point to all requests
|
||||||
func (u *User) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
func (u *User) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||||
|
|
||||||
if err := r.ParseForm(); err != nil {
|
if err := r.ParseForm(); err != nil {
|
||||||
log.Printf("ParseForm() err: %v", err)
|
log.Printf("ParseForm() err: %v", err)
|
||||||
} else {
|
} else {
|
||||||
u.Auth(r.FormValue("user"), r.FormValue("password"))
|
u.Auth(r.FormValue("user"), r.FormValue("password"))
|
||||||
}
|
}
|
||||||
if u.Name == "" {
|
if u.Name == "" {
|
||||||
|
|
||||||
LogInPage(w, r)
|
LogInPage(w, r)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -77,14 +80,14 @@ func (u *User) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||||
|
|
||||||
// Auth is the login page for user
|
// Auth is the login page for user
|
||||||
func (u *User) Auth(user string, pass string) bool {
|
func (u *User) Auth(user string, pass string) bool {
|
||||||
// auth, _ := auth.LogIn(user, pass)
|
auth, _ := auth.LogIn(user, pass)
|
||||||
// if auth {
|
if auth {
|
||||||
// u.Name = user
|
u.Name = user
|
||||||
// u.Password = pass
|
u.Password = pass
|
||||||
// }
|
}
|
||||||
u.Name = "mlamalle"
|
// auth := true
|
||||||
u.Password = "password"
|
// u.Name = "mlamalle"
|
||||||
var auth = true
|
// u.Password = "pass"
|
||||||
return auth
|
return auth
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
|
||||||
<title>Foodoles written in Go</title>
|
<title>Foodoles written in Go</title>
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.2.13/semantic.min.css">
|
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.2.13/semantic.min.css">
|
||||||
<script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.2.13/semantic.min.js"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.2.13/semantic.min.js"></script>
|
||||||
<style type="text/css"> h2 { margin: 2em 0em; } .ui.container { padding-top: 5em; padding-bottom: 5em; } </style>
|
<style type="text/css">body { font-family: arial } h2 { margin: 2em 0em; } .ui.container { padding-top: 5em; padding-bottom: 5em; } </style>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
function vote(option){$.post( "/", {option}, ( data ) => { $('.modal').modal('show');});}
|
function vote(option){$.post( "/", {option}, ( data ) => { $('.modal').modal('show');});}
|
||||||
function reload(){document.location.reload(true);}
|
function reload(){document.location.reload(true);}
|
||||||
|
@ -16,9 +16,9 @@
|
||||||
<div class="ui container">
|
<div class="ui container">
|
||||||
<h1 class="ui header">Foodoles - {{.Foods.Date}}</h1><br/>
|
<h1 class="ui header">Foodoles - {{.Foods.Date}}</h1><br/>
|
||||||
<h2 class="ui header">Pick Your Preferred Lunch's Food For Today</h2><br/>
|
<h2 class="ui header">Pick Your Preferred Lunch's Food For Today</h2><br/>
|
||||||
<div class="ui compact menu">
|
<div class="ui ">
|
||||||
{{ range .Foods.Foods }}
|
{{ range .Foods.Foods }}
|
||||||
<a onclick="vote('{{ .Title }}')" class="ui item label massive">
|
<a onclick="vote('{{ .Title }}')" class="ui label massive" data-tooltip="{{ .Title }}" data-variation="basic" data-position="bottom left">
|
||||||
{{$cur := .Title}}
|
{{$cur := .Title}}
|
||||||
{{ .Icon }}
|
{{ .Icon }}
|
||||||
{{ range $.Votes.Votes }}
|
{{ range $.Votes.Votes }}
|
||||||
|
|
Loading…
Reference in New Issue