/samples/scalate-sample/src/main/webapp/ssp/sampleTag.ssp

http://github.com/scalate/scalate · Unknown · 36 lines · 28 code · 8 blank · 0 comment · 0 complexity · 9fa582179e974dce1db947b9d95b88d3 MD5 · raw file

  1. <%--
  2. Copyright (C) 2009-2011 the original author or authors.
  3. See the notice.md file distributed with this work for additional
  4. information regarding copyright ownership.
  5. Licensed under the Apache License, Version 2.0 (the "License");
  6. you may not use this file except in compliance with the License.
  7. You may obtain a copy of the License at
  8. http://www.apache.org/licenses/LICENSE-2.0
  9. Unless required by applicable law or agreed to in writing, software
  10. distributed under the License is distributed on an "AS IS" BASIS,
  11. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. See the License for the specific language governing permissions and
  13. limitations under the License.
  14. --%>
  15. <h1>Sample Tag</h1>
  16. <p>
  17. This page demonstrates a kinda pseudo custom tag in SSP.
  18. Notice how the method we invoke, <b>MyTags.someLayoutWithImportedCapture</b> just takes a function
  19. which when invoked returns Unit.
  20. To be able to capture the output of the body, the implementation uses the imported <b>RenderContext.capture</b> method
  21. </p>
  22. <%
  23. import org.fusesource.scalate.sample.MyTags._
  24. val name = "James"
  25. %>
  26. <%= someLayoutWithImportedCapture { %>
  27. hey ${name} this is some body text!
  28. <% } %>