Site Gallery: Remember last 'Whose photos' preference
This commit is contained in:
parent
f0373285eb
commit
d72f0b1d2d
|
@ -69,6 +69,7 @@ var (
|
|||
SitePreferenceFields = []string{
|
||||
"dm_privacy",
|
||||
"blur_explicit",
|
||||
"site_gallery_default", // default view on site gallery (friends-only or all certified?)
|
||||
}
|
||||
|
||||
// Choices for the Contact Us subject
|
||||
|
|
|
@ -60,6 +60,10 @@ func SiteGallery() http.HandlerFunc {
|
|||
if viewStyle != "full" {
|
||||
viewStyle = "cards"
|
||||
}
|
||||
if who == "" {
|
||||
// They didn't post a "Whose photos" filter, restore it from their last saved default.
|
||||
who = currentUser.GetProfileField("site_gallery_default")
|
||||
}
|
||||
if who != "friends" && who != "everybody" && who != "friends+private" {
|
||||
// Default Who setting should be Friends-only, unless you have no friends.
|
||||
if myFriendCount > 0 {
|
||||
|
@ -69,6 +73,9 @@ func SiteGallery() http.HandlerFunc {
|
|||
}
|
||||
}
|
||||
|
||||
// Store their "Whose photos" filter on their page to default it for next time.
|
||||
currentUser.SetProfileField("site_gallery_default", who)
|
||||
|
||||
// Admin scope warning.
|
||||
if adminView && !currentUser.HasAdminScope(config.ScopePhotoModerator) {
|
||||
session.FlashError(w, r, "Missing admin scope: %s", config.ScopePhotoModerator)
|
||||
|
|
|
@ -224,7 +224,6 @@ func MapLikes(user *User, tableName string, tableIDs []uint64) LikeMap {
|
|||
|
||||
// Does the CURRENT USER like any of these IDs?
|
||||
if likedIDs, err := LikedIDs(user, tableName, tableIDs); err == nil {
|
||||
log.Error("USER LIKES IDS: %+v", likedIDs)
|
||||
for _, id := range likedIDs {
|
||||
if stats, ok := result[id]; ok {
|
||||
stats.UserLikes = true
|
||||
|
|
|
@ -579,6 +579,9 @@ func (u *User) SetProfileField(name, value string) {
|
|||
Name: name,
|
||||
Value: value,
|
||||
})
|
||||
if err := u.Save(); err != nil {
|
||||
log.Error("User(%s).SetProfileField(%s): error saving after append new field: %s", u.Username, name, err)
|
||||
}
|
||||
}
|
||||
|
||||
// GetProfileField returns the value of a profile field or blank string.
|
||||
|
|
Loading…
Reference in New Issue
Block a user