feat: added active cards
This commit is contained in:
parent
4347f9632c
commit
774fa4efb1
@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
<input id="search-input" name="{{ .SearchInputName }}" type="text" class="grid-item" class="search" placeholder="{{ .SearchPlaceholder }}" autocomplete="off" />
|
<input id="search-input" name="{{ .SearchInputName }}" type="text" class="grid-item" class="search" placeholder="{{ .SearchPlaceholder }}" autocomplete="off" />
|
||||||
|
|
||||||
|
{{ if eq .ActiveCard "stores" }}
|
||||||
<div class="cards" id="stores">
|
<div class="cards" id="stores">
|
||||||
{{range $Store := .Stores }}
|
{{range $Store := .Stores }}
|
||||||
<a target="_blank" href="{{ $Store.Url }}" class="card">
|
<a target="_blank" href="{{ $Store.Url }}" class="card">
|
||||||
@ -23,7 +24,9 @@
|
|||||||
</a>
|
</a>
|
||||||
{{- end }}
|
{{- end }}
|
||||||
</div>
|
</div>
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ if eq .ActiveCard "listings" }}
|
||||||
<div class="cards" id="listings">
|
<div class="cards" id="listings">
|
||||||
{{range $Listing := .Listings }}
|
{{range $Listing := .Listings }}
|
||||||
<a target="_blank" href="{{ $Listing.Url }}" class="card {{ if $Listing.InStock }}in-stock{{ end }}">
|
<a target="_blank" href="{{ $Listing.Url }}" class="card {{ if $Listing.InStock }}in-stock{{ end }}">
|
||||||
@ -32,6 +35,7 @@
|
|||||||
</a>
|
</a>
|
||||||
{{- end }}
|
{{- end }}
|
||||||
</div>
|
</div>
|
||||||
|
{{ end }}
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
@ -13,6 +13,14 @@ import (
|
|||||||
"github.com/pelletier/go-toml"
|
"github.com/pelletier/go-toml"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ActiveCard string
|
||||||
|
|
||||||
|
const (
|
||||||
|
DiyHrtStores ActiveCard = "stores"
|
||||||
|
DiyHrtListings ActiveCard = "listings"
|
||||||
|
Websites ActiveCard = "websites"
|
||||||
|
)
|
||||||
|
|
||||||
type ServerConfig struct {
|
type ServerConfig struct {
|
||||||
Port int
|
Port int
|
||||||
}
|
}
|
||||||
@ -31,14 +39,18 @@ type TemplateConfig struct {
|
|||||||
|
|
||||||
Listings []diyhrt.Listing
|
Listings []diyhrt.Listing
|
||||||
Stores []diyhrt.Store
|
Stores []diyhrt.Store
|
||||||
|
|
||||||
|
ActiveCard ActiveCard
|
||||||
|
|
||||||
|
Websites []Website
|
||||||
}
|
}
|
||||||
|
|
||||||
type Config struct{
|
type Config struct {
|
||||||
Server ServerConfig
|
Server ServerConfig
|
||||||
Template TemplateConfig
|
Template TemplateConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewConfig() Config{
|
func NewConfig() Config {
|
||||||
return Config{
|
return Config{
|
||||||
Server: ServerConfig{
|
Server: ServerConfig{
|
||||||
Port: 5500,
|
Port: 5500,
|
||||||
@ -60,6 +72,8 @@ func NewConfig() Config{
|
|||||||
SearchFormAction: "https://duckduckgo.com/",
|
SearchFormAction: "https://duckduckgo.com/",
|
||||||
SearchInputName: "q",
|
SearchInputName: "q",
|
||||||
|
|
||||||
|
ActiveCard: DiyHrtListings,
|
||||||
|
|
||||||
StoreFilter: diyhrt.StoreFilter{
|
StoreFilter: diyhrt.StoreFilter{
|
||||||
Limit: 0,
|
Limit: 0,
|
||||||
IncludeIds: []int{7},
|
IncludeIds: []int{7},
|
||||||
@ -68,6 +82,10 @@ func NewConfig() Config{
|
|||||||
ListingFilter: diyhrt.ListingFilter{
|
ListingFilter: diyhrt.ListingFilter{
|
||||||
FromStores: []int{7},
|
FromStores: []int{7},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
Websites: []Website{
|
||||||
|
{Url: "https://gitea.elara.ws/Hazel/transfem-startpage", Name: "Transfem Startpage", ImageUrl: "https://gitea.elara.ws/assets/img/logo.svg"},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -83,7 +101,6 @@ func (rc *TemplateConfig) LoadDiyHrt(listings []diyhrt.Listing) {
|
|||||||
rc.Stores = rc.StoreFilter.Filter(slices.Collect(maps.Values(existingStores)))
|
rc.Stores = rc.StoreFilter.Filter(slices.Collect(maps.Values(existingStores)))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
func (rc *Config) ScanForConfigFile(profile string) error {
|
func (rc *Config) ScanForConfigFile(profile string) error {
|
||||||
profileFile := profile + ".toml"
|
profileFile := profile + ".toml"
|
||||||
|
|
||||||
|
7
internal/rendering/website_cards.go
Normal file
7
internal/rendering/website_cards.go
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
package rendering
|
||||||
|
|
||||||
|
type Website struct {
|
||||||
|
Url string
|
||||||
|
Name string
|
||||||
|
ImageUrl string
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user