Do not request Read permission for public repo

Closes #882
This commit is contained in:
Vsevolod Strukchinsky 2015-02-20 12:05:39 +05:00
parent e9e4b64500
commit 83e03c1257

View file

@ -1,6 +1,7 @@
package handler package handler
import ( import (
"database/sql"
"log" "log"
"net/http" "net/http"
"strconv" "strconv"
@ -65,14 +66,15 @@ func WsUser(c web.C, w http.ResponseWriter, r *http.Request) {
break break
} }
// user must have read access to the repository role, permerr := datastore.GetPerm(ctx, user, work.Repo)
// in order to pass this message along if permerr != nil && permerr != sql.ErrNoRows {
if role, err := datastore.GetPerm(ctx, user, work.Repo); err != nil || role.Read == false { // for debugging
if err != nil { log.Printf("WS: Error getting permissions for repository %s. Error: %s\n", work.Repo.Name, permerr)
log.Printf("WS: Error getting permissions for repository %s. Error: %s\n", work.Repo.Name, err)
} else {
log.Printf("WS: No read access for repository %s\n", work.Repo.Name)
} }
// user must have read access to private the repository
// in order to pass this message along
if work.Repo.Private == true && role.Read == false {
break break
} }