FSN#35474 Tweede aanzet BBCodes ondersteuning in textarea
svn path=/Website/trunk/; revision=28280
This commit is contained in:
@@ -434,7 +434,7 @@ var urlMail = "../shared/queuemail.asp?pcode=ORDMAI&defemail_key=" + defemail_ke
|
||||
Title: L("lcl_contract")
|
||||
};
|
||||
ROFIELDTR("fld", L("lcl_contract"), mld_opdr.contract_naam, params); // Contract naam
|
||||
ROTEXTAREATR("fldtxt", L("lcl_mld_opdr_description"), mld_opdr.opdr_omschr, {suppressEmpty: true});
|
||||
ROTEXTAREATR("fldtxt", L("lcl_mld_opdr_description"), mld_opdr.opdr_omschr, {suppressEmpty: true, mldlink: true});
|
||||
|
||||
var showtime = (1==1); //mld_uitvoertijd_eenheid == "U";
|
||||
ROFIELDTR(showtime? "flddatetime" : "flddate",
|
||||
@@ -457,7 +457,7 @@ var urlMail = "../shared/queuemail.asp?pcode=ORDMAI&defemail_key=" + defemail_ke
|
||||
suppressEmpty: true
|
||||
});
|
||||
ROFIELDTR("flddatetime", L("lcl_opdr_plandate"), mld_opdr.mld_opdr_plandatum != null ? toDateTimeString(mld_opdr.mld_opdr_plandatum):null, {suppressEmpty: true}); // Geplande datum
|
||||
ROTEXTAREATR('fldtxt', L("lcl_mld_inf_Opmerking"), mld_opdr.opdr_opmerking, {suppressEmpty: true}); // Afhandeling
|
||||
ROTEXTAREATR('fldtxt', L("lcl_mld_inf_Opmerking"), mld_opdr.opdr_opmerking, {suppressEmpty: true, mldlink: true}); // Afhandeling
|
||||
BLOCK_END();
|
||||
|
||||
BLOCK_START("opdrMelding", L("lcl_opdr_info") + " " +(prefix||"") + mld_opdr.mld_key + "/" + mld_opdr.volgnr, true);
|
||||
@@ -469,7 +469,7 @@ var urlMail = "../shared/queuemail.asp?pcode=ORDMAI&defemail_key=" + defemail_ke
|
||||
|
||||
if (mld_opdr.opdr_status == 2)
|
||||
{ // Opdracht Niet akkoord
|
||||
ROTEXTAREATR('fldtxt', L("lcl_mld_inf_opmerking_fiat"), mld_opdr.mld_opdr_opmerking_fiat, {suppressEmpty: true}); // Afhandeling, reden niet akkoord
|
||||
ROTEXTAREATR('fldtxt', L("lcl_mld_inf_opmerking_fiat"), mld_opdr.mld_opdr_opmerking_fiat, {suppressEmpty: true, mldlink: true}); // Afhandeling, reden niet akkoord
|
||||
}
|
||||
|
||||
var fiat_key = mld_opdr.mld_opdr_fiat_user; // Laatste fiatteur die gefiatteerd heeft
|
||||
|
||||
@@ -726,24 +726,41 @@ safe = {
|
||||
{
|
||||
return Server.HTMLEncode(safe.nvl(waarde));
|
||||
},
|
||||
// Bijvoorbeeld <div>< % =safe.fclthtml(omschr)% ></div>
|
||||
// Bijvoorbeeld <div class='fclthtml'>< % =safe.fclthtml(omschr)% ></div>
|
||||
// We ondersteunen bb-codes die 1-op-1 naar html zijn om te zetten
|
||||
fclthtml: function (waarde, mldlink)
|
||||
{
|
||||
var safepairs = "b,i,th,td,tr,table,xmp".split(",");
|
||||
var safehtml = safe.html(waarde);
|
||||
var safepairs = "h1,h2,h3,h4,h5,h6,b,i,u,em,strong,small,big,th,td,tr,table,xmp".split(",");
|
||||
var safehtml = safe.html(waarde); // Let op: vervangt *alle* \n door <br>. Dat gaan we deels later nog terugdraaien
|
||||
// We hebben het wel *nodig* omdat .* niet over meerdere regels werkt (hoewel dat
|
||||
// weer oplosbaar schijnt te zijn met [\s\S])
|
||||
for (var i = 0; i < safepairs.length; i++)
|
||||
{
|
||||
var code = safepairs[i];
|
||||
var strre = "\\[" + code + "\\](.*?)\\[\\/" + code + "\\]"; // De ? maakt de .* lazy (ipv greedy)
|
||||
var strnew = "<" + code + ">$1</" + code + ">"; // de [\s\S] ipv. een punt matcht ook over newlines
|
||||
var strre = "\\[{0}\\](.*?)\\[\\/{0}\\]".format(code); // De ? maakt de .* lazy (ipv greedy)
|
||||
var strnew = "<" + code + ">$1</" + code + ">";
|
||||
var re = new RegExp(strre, "g");
|
||||
var safehtml = safehtml.replace(re, strnew);
|
||||
}
|
||||
if (mldlink)
|
||||
var safehtml = safe.mldlinkhtml(safehtml);
|
||||
|
||||
// Nu de <br>'s binnen <pre> terugzetten
|
||||
// Nu de <br>'s binnen de tabel terugzetten. Let op dat ze *binnen* <td>'s weer wel moeten blijven
|
||||
// TODO: Kan dit beter?
|
||||
if (safehtml.indexOf("<table>") > -1)
|
||||
{
|
||||
var tablepairs = "th,td,tr,table".split(",");
|
||||
for (var i = 0; i < tablepairs.length; i++)
|
||||
{
|
||||
var code = tablepairs[i];
|
||||
var re = new RegExp("<{0}>(\r<br>)+".format(code), "g");
|
||||
var safehtml = safehtml.replace(re, "<" + code + ">");
|
||||
var re = new RegExp("</{0}>(\r<br>)+".format(code), "g");
|
||||
var safehtml = safehtml.replace(re, "</" + code + ">");
|
||||
}
|
||||
}
|
||||
|
||||
// Nu alle <br>'s binnen <pre> terugzetten
|
||||
var matches = safehtml.match(/<xmp(?:.*?)>(?:.*?)<\/xmp>/g);
|
||||
if (matches)
|
||||
{
|
||||
|
||||
@@ -283,7 +283,7 @@ function ROTEXTAREATR(pclass, plabel, pvalue, params)
|
||||
|
||||
%><tr <%=params.trclass?"class='"+params.trclass+"'":""%>>
|
||||
<%if (plabel) {%><td class="label"><label><%=plabel? plabel + ":" : ""%></label></td><% } %>
|
||||
<td <%=(params.tdhtml_ta? " " + params.tdhtml_ta : "")%>><div class="readonly <%=pclass%>"<%=(params.html? " " + params.html + " " : "")%><%=params && params.id? ' id=\"' + params.id + '\"' : ''%>><%=safe.fclthtml(pvalue, params.mldlink)%></div></td></tr><%
|
||||
<td <%=(params.tdhtml_ta? " " + params.tdhtml_ta : "")%>><div class="readonly fclthtml <%=pclass%>"<%=(params.html? " " + params.html + " " : "")%><%=params && params.id? ' id=\"' + params.id + '\"' : ''%>><%=safe.fclthtml(pvalue, params.mldlink)%></div></td></tr><%
|
||||
}
|
||||
|
||||
// params.html wordt er ook tussen geplakt (onclick bijvoorbeeld)
|
||||
|
||||
@@ -16,6 +16,7 @@ function STR2Stream(xmlstr, xslfile, Stream, params)
|
||||
var xsldoc = new ActiveXObject("Msxml2.FreeThreadedDOMDocument.6.0");
|
||||
var xslproc;
|
||||
xsldoc.async = false;
|
||||
xsldoc.setProperty("AllowXsltScript", true);
|
||||
xsldoc.load(xslfile);
|
||||
|
||||
if (xsldoc.parseError.errorCode != 0)
|
||||
|
||||
@@ -53,6 +53,7 @@ function SafeLoadFileXSL(xslPath)
|
||||
{
|
||||
var iXsl = new ActiveXObject("Msxml2.FreeThreadedDOMDocument.6.0"); // Moet FreeThreaded voor XSLTemplate
|
||||
iXsl.async = false;
|
||||
xsldoc.setProperty("AllowXsltScript", true);
|
||||
iXsl.load(custabspath + "/" + xslPath);
|
||||
TestAndRaiseAnXMLError("Error loading file " + xslPath, iXsl);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user