Go back to previous page when saving settings
This commit is contained in:
		
							parent
							
								
									ed327bac24
								
							
						
					
					
						commit
						3f7ccb5525
					
				
					 2 changed files with 10 additions and 3 deletions
				
			
		| 
						 | 
				
			
			@ -90,7 +90,7 @@ routes:
 | 
			
		|||
    var prefs = cookiePrefs()
 | 
			
		||||
    genUpdatePrefs()
 | 
			
		||||
    setCookie("preferences", $prefs.id, daysForward(360), httpOnly=true, secure=cfg.useHttps)
 | 
			
		||||
    redirect("/")
 | 
			
		||||
    redirect(decodeUrl(@"referer"))
 | 
			
		||||
 | 
			
		||||
  post "/resetprefs":
 | 
			
		||||
    var prefs = cookiePrefs()
 | 
			
		||||
| 
						 | 
				
			
			@ -99,7 +99,12 @@ routes:
 | 
			
		|||
    redirect("/settings")
 | 
			
		||||
 | 
			
		||||
  get "/settings":
 | 
			
		||||
    resp renderMain(renderPreferences(cookiePrefs()), cfg.title, "Preferences")
 | 
			
		||||
    let refUri = request.headers.getOrDefault("Referer").parseUri()
 | 
			
		||||
    var path =
 | 
			
		||||
      if refUri.path.len > 0 and "/settings" notin refUri.path: refUri.path
 | 
			
		||||
      else: "/"
 | 
			
		||||
    if refUri.query.len > 0: path &= &"?{refUri.query}"
 | 
			
		||||
    resp renderMain(renderPreferences(cookiePrefs(), path), cfg.title, "Preferences")
 | 
			
		||||
 | 
			
		||||
  get "/@name/?":
 | 
			
		||||
    cond '.' notin @"name"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -51,10 +51,12 @@ macro renderPrefs*(): untyped =
 | 
			
		|||
 | 
			
		||||
      result[2].add stmt
 | 
			
		||||
 | 
			
		||||
proc renderPreferences*(prefs: Prefs): VNode =
 | 
			
		||||
proc renderPreferences*(prefs: Prefs; path: string): VNode =
 | 
			
		||||
  buildHtml(tdiv(class="preferences-container")):
 | 
			
		||||
    fieldset(class="preferences"):
 | 
			
		||||
      form(`method`="post", action="saveprefs"):
 | 
			
		||||
        verbatim "<input name=\"referer\" style=\"display: none\" value=\"$1\"/>" % path
 | 
			
		||||
 | 
			
		||||
        renderPrefs()
 | 
			
		||||
 | 
			
		||||
        button(`type`="submit", class="pref-submit"):
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue