Fixing regression

This commit is contained in:
Sergey
2017-04-14 13:51:15 -07:00
parent 63ea1906af
commit 95d1a68ebc
2 changed files with 72 additions and 7 deletions

View File

@ -250,16 +250,51 @@ public class VfUnescapeElRule extends AbstractVfRule {
List<ASTArguments> args = expression.findChildrenOfType(ASTArguments.class);
if (!args.isEmpty()) {
switch (id.getImage().toLowerCase()) {
case "$component":
case "$objecttype":
case "$label":
case "$resource":
case "urlfor":
case "$site":
case "$page":
case "$action":
case "casesafeid":
case "begins":
case "contains":
case "len":
case "not":
case "getrecordids":
case "linkto":
case "sqrt":
case "round":
case "mod":
case "log":
case "ln":
case "exp":
case "abs":
case "floor":
case "ceiling":
case "nullvalue":
case "isnumber":
case "isnull":
case "isnew":
case "isblank":
case "isclone":
case "year":
case "month":
case "day":
case "datetimevalue":
case "datevalue":
case "date":
case "now":
case "today":
return true;
default:
}
} else {
// has no arguments
switch (id.getImage().toLowerCase()) {
case "$action":
case "$page":
case "$site":
case "$resource":
case "$label":
case "$objecttype":
case "$component":
case "$remoteaction":
return true;

View File

@ -620,5 +620,35 @@ JSON.parse method evaluates escaped EL to safe JSON
<source-type>vf</source-type>
</test-code>
<test-code>
<description><![CDATA[
$RemoteAction safe call
]]></description>
<expected-problems>0</expected-problems>
<code><![CDATA[
<apex:page>
<script>
var caseId = '{!$RemoteAction.getCaseId}';
</script>
</apex:page>
]]></code>
<source-type>vf</source-type>
</test-code>
<test-code>
<description><![CDATA[
NOW() is a safe call
]]></description>
<expected-problems>0</expected-problems>
<code><![CDATA[
<apex:page>
<script>
var caseId = '{!NOW()}';
</script>
</apex:page>
]]></code>
<source-type>vf</source-type>
</test-code>
</test-data>