@@ -64,22 +64,26 @@ func (p *pagesHandler) HandleHomePage(w http.ResponseWriter, r *http.Request) {
64
64
}
65
65
66
66
if handlers .IsNoLayoutPage (r ) {
67
+ w .Header ().Set ("HX-Title" , "Home" )
68
+ w .Header ().Set ("HX-Push-Url" , "/" )
67
69
pages .Index (recentPlays ).Render (r .Context (), w )
68
70
return
69
71
}
70
- layouts .Default (pages .Index (recentPlays )).Render (r .Context (), w )
72
+ layouts .Default ("Home" , pages .Index (recentPlays )).Render (r .Context (), w )
71
73
}
72
74
73
75
func (p * pagesHandler ) HandleAboutPage (w http.ResponseWriter , r * http.Request ) {
74
76
if handlers .IsNoLayoutPage (r ) {
77
+ w .Header ().Set ("HX-Title" , "About" )
78
+ w .Header ().Set ("HX-Push-Url" , "/about" )
75
79
pages .About ().Render (r .Context (), w )
76
80
return
77
81
}
78
- layouts .Default (pages .About ()).Render (r .Context (), w )
82
+ layouts .Default ("About" , pages .About ()).Render (r .Context (), w )
79
83
}
80
84
81
85
func (p * pagesHandler ) HandleLoginPage (w http.ResponseWriter , r * http.Request ) {
82
- layouts .Raw (pages .Login ()).Render (r .Context (), w )
86
+ layouts .Raw ("Login" , pages .Login ()).Render (r .Context (), w )
83
87
}
84
88
85
89
func (p * pagesHandler ) HandlePlaylistsPage (w http.ResponseWriter , r * http.Request ) {
@@ -95,10 +99,12 @@ func (p *pagesHandler) HandlePlaylistsPage(w http.ResponseWriter, r *http.Reques
95
99
}
96
100
97
101
if handlers .IsNoLayoutPage (r ) {
102
+ w .Header ().Set ("HX-Title" , "Playlists" )
103
+ w .Header ().Set ("HX-Push-Url" , "/playlists" )
98
104
pages .Playlists (playlists ).Render (r .Context (), w )
99
105
return
100
106
}
101
- layouts .Default (pages .Playlists (playlists )).Render (r .Context (), w )
107
+ layouts .Default ("Playlists" , pages .Playlists (playlists )).Render (r .Context (), w )
102
108
}
103
109
104
110
func (p * pagesHandler ) HandleSinglePlaylistPage (w http.ResponseWriter , r * http.Request ) {
@@ -130,14 +136,16 @@ func (p *pagesHandler) HandleSinglePlaylistPage(w http.ResponseWriter, r *http.R
130
136
ctx := context .WithValue (r .Context (), handlers .PlaylistPermission , permission )
131
137
132
138
if handlers .IsNoLayoutPage (r ) {
139
+ w .Header ().Set ("HX-Title" , playlist .Title )
140
+ w .Header ().Set ("HX-Push-Url" , "/playlist/" + playlist .PublicId )
133
141
pages .Playlist (playlist ).Render (ctx , w )
134
142
return
135
143
}
136
- layouts .Default (pages .Playlist (playlist )).Render (ctx , w )
144
+ layouts .Default (playlist . Title , pages .Playlist (playlist )).Render (ctx , w )
137
145
}
138
146
139
147
func (p * pagesHandler ) HandlePrivacyPage (w http.ResponseWriter , r * http.Request ) {
140
- layouts .Default (pages .Privacy ()).Render (r .Context (), w )
148
+ layouts .Default ("Privacy" , pages .Privacy ()).Render (r .Context (), w )
141
149
}
142
150
143
151
func (p * pagesHandler ) HandleProfilePage (w http.ResponseWriter , r * http.Request ) {
@@ -158,10 +166,12 @@ func (p *pagesHandler) HandleProfilePage(w http.ResponseWriter, r *http.Request)
158
166
Username : dbProfile .Username ,
159
167
}
160
168
if handlers .IsNoLayoutPage (r ) {
169
+ w .Header ().Set ("HX-Title" , "Profile" )
170
+ w .Header ().Set ("HX-Push-Url" , "/profile" )
161
171
pages .Profile (profile ).Render (r .Context (), w )
162
172
return
163
173
}
164
- layouts .Default (pages .Profile (profile )).Render (r .Context (), w )
174
+ layouts .Default ("Profile" , pages .Profile (profile )).Render (r .Context (), w )
165
175
}
166
176
167
177
func (p * pagesHandler ) HandleSearchResultsPage (w http.ResponseWriter , r * http.Request ) {
@@ -187,12 +197,14 @@ func (p *pagesHandler) HandleSearchResultsPage(w http.ResponseWriter, r *http.Re
187
197
}
188
198
189
199
if handlers .IsNoLayoutPage (r ) {
200
+ w .Header ().Set ("HX-Title" , "Results for " + query )
201
+ w .Header ().Set ("HX-Push-Url" , "/search?query=" + query )
190
202
pages .SearchResults (results , playlists , songsInPlaylists ).Render (r .Context (), w )
191
203
return
192
204
}
193
- layouts .Default (pages .SearchResults (results , playlists , songsInPlaylists )).Render (r .Context (), w )
205
+ layouts .Default ("Results for " + query , pages .SearchResults (results , playlists , songsInPlaylists )).Render (r .Context (), w )
194
206
}
195
207
196
208
func (p * pagesHandler ) HandleSignupPage (w http.ResponseWriter , r * http.Request ) {
197
- layouts .Raw (pages .Signup ()).Render (r .Context (), w )
209
+ layouts .Raw ("Sign up" , pages .Signup ()).Render (r .Context (), w )
198
210
}
0 commit comments