Disable video player based on subscription

This commit is contained in:
2021-10-18 16:08:45 +02:00
parent c0a45ed818
commit fc8a9fe9d1
7 changed files with 99 additions and 69 deletions

View File

@@ -46,13 +46,8 @@ func (vd *viewerData) adType(files []pixelapi.ListFile) {
}
var avgSize int64
var nudity = false
for _, v := range files {
avgSize += v.Size
if strings.HasPrefix(v.MimeType, "video/") {
nudity = true
}
}
avgSize /= int64(len(files))
@@ -98,41 +93,21 @@ func (vd *viewerData) adType(files []pixelapi.ListFile) {
// or 1 we need to give it n=2. We can use this function to make other
// splits like 1/3 1/4, etc
if nudity {
// Brave and a-ads don't care about nudity. I'm not sure about ads.plus
switch i := rand.Intn(10); i {
case 0, 1:
vd.AdBannerType = brave
case 2, 3, 4, 5, 6:
vd.AdBannerType = adsPlus
case 7:
vd.AdBannerType = publisherrest1
case 8:
vd.AdBannerType = publisherrest2
case 9:
vd.AdBannerType = publisherrest3
default:
panic(fmt.Errorf("random number generator returned unrecognised number: %d", i))
}
} else {
// PixFuture does not allow nudity, so that's what we'll show on all
// files which are safe
switch i := rand.Intn(10); i {
case 0, 1:
vd.AdBannerType = brave
case 2, 3:
vd.AdBannerType = adsPlus
case 4, 5, 6:
vd.AdBannerType = pixFuture
case 7:
vd.AdBannerType = publisherrest1
case 8:
vd.AdBannerType = publisherrest2
case 9:
vd.AdBannerType = publisherrest3
default:
panic(fmt.Errorf("random number generator returned unrecognised number: %d", i))
}
switch i := rand.Intn(10); i {
case 0:
vd.AdBannerType = brave
case 1, 2, 3:
vd.AdBannerType = adsPlus
case 4, 5, 6:
vd.AdBannerType = pixFuture
case 7:
vd.AdBannerType = publisherrest1
case 8:
vd.AdBannerType = publisherrest2
case 9:
vd.AdBannerType = publisherrest3
default:
panic(fmt.Errorf("random number generator returned unrecognised number: %d", i))
}
}

View File

@@ -140,6 +140,7 @@ func (tm *TemplateManager) ParseTemplates(silent bool) {
"div": tm.div,
"formatData": tm.formatData,
"formatSC": tm.formatSC,
"noescape": tm.noEscape,
})
// Parse dynamic templates
@@ -295,6 +296,9 @@ func (tm *TemplateManager) formatSC(amt float64) string {
}
return fmtSize(amt/1e-24, "H")
}
func (tm *TemplateManager) noEscape(t string) template.HTML {
return template.HTML(t)
}
func detectInt(i interface{}) int {
switch v := i.(type) {