java/nekurak.net-lib/src/cz/frantovo/nekurak/util/Komentare.java
author František Kučera <franta-hg@frantovo.cz>
Tue, 08 Jun 2010 10:42:58 +0200
changeset 131 0d1cba59734b
parent 130 1bbff3f5181f
child 132 1ca0d7fdbe51
permissions -rw-r--r--
XML schéma pro komentáře
franta-hg@130
     1
package cz.frantovo.nekurak.util;
franta-hg@130
     2
franta-hg@130
     3
/**
franta-hg@130
     4
 * Validátor komentářů
franta-hg@130
     5
 * @author fiki
franta-hg@130
     6
 */
franta-hg@130
     7
public class Komentare {
franta-hg@130
     8
franta-hg@130
     9
    /**
franta-hg@130
    10
     * Escapuje XML a doplní XHTML zalomení na konce řádků.
franta-hg@130
    11
     * @param komentar prostý text zadaný uživatelem
franta-hg@130
    12
     * @return XHTML komentář bez kořenového elementu
franta-hg@130
    13
     */
franta-hg@130
    14
    public static String upravProstyText(String komentar) {
franta-hg@130
    15
	komentar = escapujXML(komentar);
franta-hg@130
    16
	return "<p>" + komentar.replaceAll("\n", "<br/>") + "</p>";
franta-hg@130
    17
    }
franta-hg@130
    18
franta-hg@130
    19
    /**
franta-hg@130
    20
     *
franta-hg@130
    21
     * @param komentar vstupní XHTML
franta-hg@130
    22
     * @return XHTML obalené kořenovým elementem
franta-hg@130
    23
     */
franta-hg@130
    24
    public static String obal(String komentar) {
franta-hg@130
    25
	return "<div>" + komentar + "</div>";
franta-hg@130
    26
    }
franta-hg@130
    27
franta-hg@131
    28
    /**
franta-hg@131
    29
     * zkontroluje komentář oproti schématu
franta-hg@131
    30
     * @param komentar
franta-hg@131
    31
     * @return jestli komentář odpovídá
franta-hg@131
    32
     */
franta-hg@131
    33
    public boolean isValidniXHTML(String komentar) {
franta-hg@131
    34
	return false;
franta-hg@131
    35
    }
franta-hg@131
    36
franta-hg@130
    37
    private static String escapujXML(String str) {
franta-hg@130
    38
	return str.replaceAll("&", "&amp;").replaceAll("<", "&lt;").replaceAll(">", "&gt;").replaceAll("\"", "&quot;").replaceAll("'", "&apos;");
franta-hg@130
    39
franta-hg@130
    40
    }
franta-hg@130
    41
}