Skip to content

Commit

Permalink
for tag
Browse files Browse the repository at this point in the history
  • Loading branch information
breuerfelix committed May 21, 2019
1 parent cd00c6b commit cabd0fb
Show file tree
Hide file tree
Showing 11 changed files with 234 additions and 128 deletions.
2 changes: 2 additions & 0 deletions app/controller/controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ type Categorie struct {
// GeneralData struct
type GeneralData struct {
models.User
UserID string
Filename string
LoggedIn bool
NewPublicRegisters int
Expand Down Expand Up @@ -65,6 +66,7 @@ func initGeneralData(data *GeneralData) {
// fake user data
data.User.Name = "Max Mustermann"
data.User.Date = "24.12.2018"
data.UserID = "c2abd60d207e8b04baae4b2a50000801"

// init categories
nature := Categorie{}
Expand Down
49 changes: 48 additions & 1 deletion app/controller/editRegister.go
Original file line number Diff line number Diff line change
@@ -1,8 +1,55 @@
package controller

import "net/http"
import (
"fmt"
"net/http"

"github.com/breuerfelix/BrainTrain/app/models"
)

// EditRegister controller
func EditRegister(r *http.Request, data *GeneralData, pageData *PageData) {
data.Filename = "edit-register"
queryValues := r.URL.Query()
val, ok := queryValues["register"]

if !ok {
panic("missing register in url !")
}

registerID := val[0]
register := models.NewRegister()
register.ID = registerID
register.GetByID()

if register.User != data.UserID {
panic("not allowed !! this is not your register!")
}

allCards, _ := models.DB.QueryJSON(fmt.Sprintf(`{
"selector": {
"type": {
"$eq": "card"
},
"register_id": {
"$eq": "%s"
}
}
}`, register.ID))

(*pageData)["amountCards"] = len(allCards)
(*pageData)["cards"] = allCards
(*pageData)["register"] = register
(*pageData)["card"] = nil
// TODO calculate
(*pageData)["progress"] = 30

if len(allCards) > 0 {
(*pageData)["card"] = allCards[0]
}

// if user wants a specific
if val, ok := queryValues["card"]; ok {
(*pageData)["card"] = val
}
}
76 changes: 75 additions & 1 deletion app/controller/learnRegister.go
Original file line number Diff line number Diff line change
@@ -1,8 +1,82 @@
package controller

import "net/http"
import (
"fmt"
"net/http"

"github.com/breuerfelix/BrainTrain/app/models"
)

// LearnRegister controller
func LearnRegister(r *http.Request, data *GeneralData, pageData *PageData) {
data.Filename = "learn-register"
queryValues := r.URL.Query()
val, ok := queryValues["register"]

if !ok {
panic("missing register in url !")
}

registerID := val[0]
register := models.NewRegister()
register.ID = registerID
register.GetByID()

if register.User != data.UserID {
panic("not allowed !! this is not your register!")
}

allCards, _ := models.DB.QueryJSON(fmt.Sprintf(`{
"selector": {
"type": {
"$eq": "card"
},
"register_id": {
"$eq": "%s"
}
}
}`, register.ID))

cardsZero := 0
cardsOne := 0
cardsTwo := 0
cardsThree := 0
cardsFour := 0

for _, card := range allCards {
switch card["progress"] {
case 0.0:
cardsZero++
case 1.0:
cardsOne++
case 2.0:
cardsTwo++
case 3.0:
cardsThree++
case 4.0:
cardsFour++
}
}

(*pageData)["cardsZero"] = cardsZero
(*pageData)["cardsOne"] = cardsOne
(*pageData)["cardsTwo"] = cardsTwo
(*pageData)["cardsThree"] = cardsThree
(*pageData)["cardsFour"] = cardsFour

(*pageData)["amountCards"] = len(allCards)
(*pageData)["cards"] = allCards
(*pageData)["register"] = register
(*pageData)["card"] = nil
// TODO calculate
(*pageData)["progress"] = 30

if len(allCards) > 0 {
(*pageData)["card"] = allCards[0]
}

// if user wants a specific
if val, ok := queryValues["card"]; ok {
(*pageData)["card"] = val
}
}
9 changes: 1 addition & 8 deletions app/controller/privateRegisters.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,6 @@ import (
func PrivateRegisters(r *http.Request, data *GeneralData, pageData *PageData) {
data.Filename = "private-registers"

// TODO remove, hard coded user id
// get from jwt via general data
userID := "c2abd60d207e8b04baae4b2a50000801"

// needs to query "user hase used but is public somehow" too
allPrivateRegisters, err := models.DB.QueryJSON(fmt.Sprintf(`{
"selector": {
Expand All @@ -25,9 +21,7 @@ func PrivateRegisters(r *http.Request, data *GeneralData, pageData *PageData) {
"$eq": "%s"
}
}
}`, data.Name))

print(len(allPrivateRegisters))
}`, data.UserID))

if err != nil {
panic(err)
Expand All @@ -52,5 +46,4 @@ func PrivateRegisters(r *http.Request, data *GeneralData, pageData *PageData) {

// append to template data
(*pageData)["registers"] = &allPrivateRegisters
(*pageData)["currentUserID"] = userID
}
49 changes: 48 additions & 1 deletion app/controller/viewRegister.go
Original file line number Diff line number Diff line change
@@ -1,8 +1,55 @@
package controller

import "net/http"
import (
"fmt"
"net/http"

"github.com/breuerfelix/BrainTrain/app/models"
)

// ViewRegister controller
func ViewRegister(r *http.Request, data *GeneralData, pageData *PageData) {
data.Filename = "view-register"
queryValues := r.URL.Query()
val, ok := queryValues["register"]

if !ok {
panic("missing register in url !")
}

registerID := val[0]
register := models.NewRegister()
register.ID = registerID
register.GetByID()

if register.User != data.UserID {
panic("not allowed !! this is not your register!")
}

allCards, _ := models.DB.QueryJSON(fmt.Sprintf(`{
"selector": {
"type": {
"$eq": "card"
},
"register_id": {
"$eq": "%s"
}
}
}`, register.ID))

(*pageData)["amountCards"] = len(allCards)
(*pageData)["cards"] = allCards
(*pageData)["register"] = register
(*pageData)["card"] = nil
// TODO calculate
(*pageData)["progress"] = 30

if len(allCards) > 0 {
(*pageData)["card"] = allCards[0]
}

// if user wants a specific
if val, ok := queryValues["card"]; ok {
(*pageData)["card"] = val
}
}
2 changes: 2 additions & 0 deletions app/models/index.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ func init() {

// Entity is the base database item struct
type Entity struct {
ID string `json:"_id"`
Rev string `json:"_rev"`
Type string `json:"type"`
couchdb.Document
}
Expand Down
56 changes: 9 additions & 47 deletions templates/edit-register.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -14,88 +14,50 @@
Name
</div>
<div class="ov-subtitle">
Geometrie
{{.register.Title}}
</div>
</div>
<div class="col-xs">
<div class="ov-title">
Kategorie
</div>
<div class="ov-subtitle">
Naturwissenschaften > Mathematik
{{.register.Category}} > {{.register.SubCategory}}
</div>
</div>
<div class="col-xs">
<div class="ov-title">
Fortschritt
</div>
<div class="ov-subtitle">
0 %
{{.progress}} %
</div>
</div>
<div class="col-xs center">
<a href="#" class="button success-button">Bearbeiten</a>
</div>
<div class="col-xs center">
<div class="hexagon hexagon-cards hexagon-cards-text">
<p>23</p>
<p>{{.amountCards}}</p>
<p class="super-small-text">Karten</p>
</div>
</div>
</div>
</div>

<div class="col-xs-12 col-md-4 col-lg-3 cards">
{{range $i, $card := .cards}}
<div class="box">
<div class="card-pos"># 1</div>
<div class="card-title">Titel der Karte</div>
<div class="buttons">
<a href="#" class="button success-button card-btn">Bearbeiten</a>
<a href="#" class="button danger-button card-btn">
<img src="/static/images/icons/delete.svg" width="17px">
</a>
</div>
</div>
<div class="box">
<div class="card-pos"># 2</div>
<div class="card-title">Titel der Karte</div>
<div class="buttons">
<a href="#" class="button success-button card-btn">Bearbeiten</a>
<a href="#" class="button danger-button card-btn">
<img src="/static/images/icons/delete.svg" width="17px">
</a>
</div>
</div>
<div class="box">
<div class="card-pos"># 3</div>
<div class="card-title">Titel der Karte</div>
<div class="buttons">
<a href="#" class="button success-button card-btn">Bearbeiten</a>
<a href="#" class="button danger-button card-btn">
<img src="/static/images/icons/delete.svg" width="17px">
</a>
</div>
</div>
<div class="box">
<div class="card-pos"># 5</div>
<div class="card-title">Titel der Karte</div>
<div class="buttons">
<a href="#" class="button success-button card-btn">Bearbeiten</a>
<a href="#" class="button danger-button card-btn">
<img src="/static/images/icons/delete.svg" width="17px">
</a>
</div>
</div>
<div class="box">
<div class="card-pos"># 4</div>
<div class="card-title">Titel der Karte</div>
<div class="card-pos"># {{$i}}</div>
<div class="card-title">{{$card.title}}</div>
<div class="buttons">
<a href="#" class="button success-button card-btn">Bearbeiten</a>
<a href="#" class="button danger-button card-btn">
<img src="/static/images/icons/delete.svg" width="17px">
</a>
</div>
</div>
{{end}}
</div>

<div class="col-xs-12 col-md-1 col-lg-1"></div>
Expand All @@ -121,7 +83,7 @@
<textarea type="text" rows="6"></textarea>
</div>
<div class="col-xs-12 col-button center">
<a href="/view-register" class="button">Speichern</a>
<a href="/view-register?register={{.register.ID}}" class="button">Speichern</a>
<a href="/view-register" class="button danger-button">Abbrechen</a>
</div>
</div>
Expand Down
Loading

0 comments on commit cabd0fb

Please sign in to comment.