01: /**********************************************************************************
02: * $URL: https://source.sakaiproject.org/svn/syllabus/tags/sakai_2-4-1/syllabus-app/src/java/org/sakaiproject/jsf/syllabus/SyllabusShowAreaRender.java $
03: * $Id: SyllabusShowAreaRender.java 8802 2006-05-03 15:06:26Z cwen@iupui.edu $
04: ***********************************************************************************
05: *
06: * Copyright (c) 2003, 2004, 2005, 2006 The Sakai Foundation.
07: *
08: * Licensed under the Educational Community License, Version 1.0 (the "License");
09: * you may not use this file except in compliance with the License.
10: * You may obtain a copy of the License at
11: *
12: * http://www.opensource.org/licenses/ecl1.php
13: *
14: * Unless required by applicable law or agreed to in writing, software
15: * distributed under the License is distributed on an "AS IS" BASIS,
16: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17: * See the License for the specific language governing permissions and
18: * limitations under the License.
19: *
20: **********************************************************************************/package org.sakaiproject.jsf.syllabus;
21:
22: import java.io.IOException;
23:
24: import javax.faces.component.UIComponent;
25: import javax.faces.context.FacesContext;
26: import javax.faces.context.ResponseWriter;
27: import javax.faces.render.Renderer;
28:
29: public class SyllabusShowAreaRender extends Renderer {
30: public boolean supportsComponentType(UIComponent component) {
31: return (component instanceof org.sakaiproject.jsf.syllabus.SyllabusShowAreaComponent);
32: }
33:
34: public void encodeBegin(FacesContext context, UIComponent component)
35: throws IOException {
36: ResponseWriter writer = context.getResponseWriter();
37:
38: String value = (String) component.getAttributes().get("value");
39:
40: if ((value != null) && (!value.equals(""))) {
41: int pos;
42: // while ((pos = value.indexOf('?')) != -1){
43: // value = value.substring(0,pos) + " " + value.substring(pos+1);
44: // }
45: // writer.write("<div>");
46: value = value.replaceAll("<strong>", "<b>");
47: value = value.replaceAll("</strong>", "</b>");
48: // writer.write("<table width=\"100%\"><tbody><tr><td>");
49: /* int blocks = value.length() % 200 ;
50: for (int i=0; i<blocks; i++)
51: {
52: writer.write(value.substring(i*200, ((i+1)*200-1)));
53: writer.flush();
54: }
55: writer.write(value.substring(blocks*200, (value.length()-1)));
56: writer.flush();
57: */
58: value = value.replaceAll("<a title=",
59: "<a target=\"_new\" title=");
60: value = value
61: .replaceAll("<a href=",
62: "<a title=\"Open a new window\" target=\"_new\" href=");
63: writer.write(value);
64:
65: // writer.write("</td></tr></tbody></table>");
66: // writer.write("</div>");
67: }
68: }
69:
70: public void encodeEnd(FacesContext context, UIComponent component)
71: throws IOException {
72: ResponseWriter writer = context.getResponseWriter();
73:
74: String value = (String) component.getAttributes().get("value");
75:
76: if ((value != null) && (!value.equals(""))) {
77: }
78: }
79: }
|