insanehong 2015-02-11
CodeBrowser: Fix render for markdown files
@caca57b94b84f9e5051535faa0aa5469697b318f
app/assets/stylesheets/less/_page.less
--- app/assets/stylesheets/less/_page.less
+++ app/assets/stylesheets/less/_page.less
@@ -4147,6 +4147,11 @@
         border-top: none;
         font-size: 14px;
         padding: 25px;
+
+        p {
+            margin: 15px 0;
+            text-align: left;
+        }
     }
 
     /** list **/
app/utils/TemplateHelper.scala
--- app/utils/TemplateHelper.scala
+++ app/utils/TemplateHelper.scala
@@ -2,6 +2,7 @@
 
 import play.mvc.Call
 import org.joda.time.DateTimeConstants
+import org.apache.commons.io.FilenameUtils
 import play.i18n.Messages
 import controllers.routes
 import controllers.UserApp
@@ -543,4 +544,13 @@
         <a href="%s">%d</a>
       </span> """.format(strong, icon, link, count))
   }
+
+  def isMarkdownExtension(path: String):Boolean = {
+    var ext = FilenameUtils.getExtension(path).toLowerCase()
+    var markdownExtenstions = List("markdown", "mdown", "mkdn", "mkd", "md", "mdwn")
+
+    markdownExtenstions.contains(ext)
+
+  }
+
 }
app/views/code/partial_view_file.scala.html
--- app/views/code/partial_view_file.scala.html
+++ app/views/code/partial_view_file.scala.html
@@ -23,6 +23,7 @@
 @import utils.TemplateHelper._
 @import utils.TemplateHelper.CodeBrowser._
 @import java.net.URLEncoder
+@import utils.Markdown
 
 @defining(path.substring(path.lastIndexOf("/") + 1)) { fileName =>
 @defining(getFileRev(project.vcs, files)) { revId=>
@@ -97,8 +98,16 @@
           </p>
         }
         case _ => {
+          @if(isMarkdownExtension(path)) {
+          <div id="codeVal" class="markdown-wrap codebrowser-markdown">
+            @if(files.get("data") != null){
+            @Html(Markdown.render(fieldText(files, "data"), project))
+            }
+          </div>
+          } else {
           <div id="codeVal" class="hidden">@if(files.get("data") != null){@fieldText(files, "data")}</div>
           <pre id="showCode" class="code-wrap" data-mimeType="@files.get("mimeType")"></pre>
+          }
         }
       }
     }
@@ -108,5 +117,4 @@
 }
 }
 }
-@common.markdown(project)
 <script type="text/javascript" src="@routes.Assets.at("javascripts/lib/ace/ace.js")"></script>
Add a comment
List