mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-04 05:18:25 +00:00 
			
		
		
		
	Add logic to switch between source/rendered on Markdown (#19356)
Adds a button to switch between the source blob and the rendered markdown.
This commit is contained in:
		@@ -489,9 +489,17 @@ func renderFile(ctx *context.Context, entry *git.TreeEntry, treeLink, rawLink st
 | 
				
			|||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		rd := charset.ToUTF8WithFallbackReader(io.MultiReader(bytes.NewReader(buf), dataRc))
 | 
							rd := charset.ToUTF8WithFallbackReader(io.MultiReader(bytes.NewReader(buf), dataRc))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							shouldRenderSource := ctx.FormString("display") == "source"
 | 
				
			||||||
		readmeExist := markup.IsReadmeFile(blob.Name())
 | 
							readmeExist := markup.IsReadmeFile(blob.Name())
 | 
				
			||||||
		ctx.Data["ReadmeExist"] = readmeExist
 | 
							ctx.Data["ReadmeExist"] = readmeExist
 | 
				
			||||||
		if markupType := markup.Type(blob.Name()); markupType != "" {
 | 
					
 | 
				
			||||||
 | 
							markupType := markup.Type(blob.Name())
 | 
				
			||||||
 | 
							if markupType != "" {
 | 
				
			||||||
 | 
								ctx.Data["HasSourceRenderedToggle"] = true
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							if markupType != "" && !shouldRenderSource {
 | 
				
			||||||
			ctx.Data["IsMarkup"] = true
 | 
								ctx.Data["IsMarkup"] = true
 | 
				
			||||||
			ctx.Data["MarkupType"] = markupType
 | 
								ctx.Data["MarkupType"] = markupType
 | 
				
			||||||
			var result strings.Builder
 | 
								var result strings.Builder
 | 
				
			||||||
@@ -507,7 +515,7 @@ func renderFile(ctx *context.Context, entry *git.TreeEntry, treeLink, rawLink st
 | 
				
			|||||||
				return
 | 
									return
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			ctx.Data["EscapeStatus"], ctx.Data["FileContent"] = charset.EscapeControlString(result.String())
 | 
								ctx.Data["EscapeStatus"], ctx.Data["FileContent"] = charset.EscapeControlString(result.String())
 | 
				
			||||||
		} else if readmeExist {
 | 
							} else if readmeExist && !shouldRenderSource {
 | 
				
			||||||
			buf := &bytes.Buffer{}
 | 
								buf := &bytes.Buffer{}
 | 
				
			||||||
			ctx.Data["IsRenderedHTML"] = true
 | 
								ctx.Data["IsRenderedHTML"] = true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user