#categoryFilterList#
/**
* Case-insensitive function for removing duplicate entries in a list.
* Based on dedupe by Raymond Camden
*
* @param list List to be modified.
* @return Returns a list.
* @author Jeff Howden (jeff@members.evolt.org)
* @version 1, March 21, 2002
*/
function ListDeleteDuplicatesNoCase(list)
{
var i = 1;
var delimiter = ',';
var returnValue = '';
if(ArrayLen(arguments) GTE 2)
delimiter = arguments[2];
list = ListToArray(list, delimiter);
for(i = 1; i LTE ArrayLen(list); i = i + 1)
if(NOT ListFindNoCase(returnValue, list[i], delimiter))
returnValue = ListAppend(returnValue, list[i], delimiter);
return returnValue;
}
/**
* Deletes a var from a query string.
* Idea for multiple args from Michael Stephenson (michael.stephenson@adtran.com)
*
* @param variable A variable, or a list of variables, to delete from the query string.
* @param qs Query string to modify. Defaults to CGI.QUERY_STRING.
* @return Returns a string.
* @author Nathan Dintenfass (nathan@changemedia.com)
* @version 1.1, February 24, 2002
*/
function queryStringDeleteVar(variable){
//var to hold the final string
var string = "";
//vars for use in the loop, so we don't have to evaluate lists and arrays more than once
var ii = 1;
var thisVar = "";
var thisIndex = "";
var array = "";
//if there is a second argument, use that as the query string, otherwise default to cgi.query_string
var qs = cgi.query_string;
if(arrayLen(arguments) GT 1)
qs = arguments[2];
//put the query string into an array for easier looping
array = listToArray(qs,"&");
//now, loop over the array and rebuild the string
for(ii = 1; ii lte arrayLen(array); ii = ii + 1){
thisIndex = array[ii];
thisVar = listFirst(thisIndex,"=");
//if this is the var, edit it to the value, otherwise, just append
if(not listFind(variable,thisVar))
string = listAppend(string,thisIndex,"&");
}
//return the string
return string;
}
]]>
>
]]>
]]>
]]>
]]>
generateMenu( objectMenu, 0 );
generateMenu( moveMenu , 1 );
function objectCopy( obj )
{
var newObj = new Object();
newObj.x = obj.x;
newObj.y = obj.y;
newObj.ctrlKey = obj.ctrlKey;
return newObj;
}
function beginMainMenu( id )
{
return "
';
}
function menuItemSeperator()
{
return "";
}
function popupMenu( id )
{
hideSubMenus();
var data = eval(id.toLowerCase()+"Menu");
for( var menuItemId in data )
{
if( menuItemId != 'menuInfo' )
{
var o = data[ menuItemId ];
var menuOptionEnabledDiv = document.getElementById( menuItemId+"Item" );
var menuOptionDisabledDiv = document.getElementById( menuItemId+"_disabled" );
if( eval(o.jsvalidate)>0 )
{
// make vis
menuOptionEnabledDiv.style.display = "block";
menuOptionDisabledDiv.style.display = "none";
}
else
{
// make invis
menuOptionEnabledDiv.style.display = "none";
menuOptionDisabledDiv.style.display = "block";
}
}
}
var menuObject = document.getElementById(id+"Menu");
var boundingRect = myGetBoundingRect(document.getElementById(id+"Item"));
menuObject.style.left=boundingRect.right+document.body.scrollLeft-4;
menuObject.style.top=boundingRect.top+document.body.scrollTop;
menuObject.style.visibility="visible";
divOnScreen( id+"Menu" );
}
function popupObjectMenu(e)
{
// do normal context menu if shift key is down
if ( e.shiftKey ) return;
// cancel the normal context menu
e.returnValue = false;
// run through the object menu and run enabled/disabled checks
var data = objectMenu;
for( var menuItemId in data )
{
//alert(menuItemId);
if( menuItemId != 'menuInfo' )
{
var o = data[ menuItemId ];
var menuOptionEnabledDiv = document.getElementById( menuItemId+"Item" );
var menuOptionDisabledDiv = document.getElementById( menuItemId+"_disabled" );
if( eval(o.jsvalidate)>0 )
{
// make vis
menuOptionEnabledDiv.style.display = "block";
menuOptionDisabledDiv.style.display = "none";
}
else
{
// make invis
menuOptionEnabledDiv.style.display = "none";
menuOptionDisabledDiv.style.display = "block";
}
}
}
// set the title
var title = getObjectTitle( lastSelectedId );
if( title.length > 16 ) title=title.substr( 0, 15 )+"...";
document.getElementById( "ObjectMenu_header" ).innerHTML = title;
var objectMenuDiv = document.getElementById( "ObjectMenu" );
var rightedge=ie5? document.body.clientWidth-event.clientX : window.innerWidth-e.clientX
var bottomedge=ie5? document.body.clientHeight-event.clientY : window.innerHeight-e.clientY
//if the horizontal distance isn't enough to accomodate the width of the context menu
if (rightedge document.body.clientHeight )
{
var st = theDiv.style;
st.top = parseInt( st.top ) - (boundingRect.bottom - document.body.clientHeight);
}
if( boundingRect.right > document.body.clientWidth )
{
var st = theDiv.style;
st.left = parseInt( st.left ) - (boundingRect.right - document.body.clientWidth);
}
}
}
function myGetBoundingRect( theDiv )
{
var boundingRect = new Object();
boundingRect['left'] = -document.body.scrollLeft;
boundingRect['top'] = -document.body.scrollTop;
boundingRect['right'] = theDiv.offsetWidth-document.body.scrollLeft;
boundingRect['bottom'] = theDiv.offsetHeight-document.body.scrollTop;
while( theDiv )
{
boundingRect['left'] += theDiv.offsetLeft;
boundingRect['top'] += theDiv.offsetTop;
boundingRect['right'] += theDiv.offsetLeft;
boundingRect['bottom'] += theDiv.offsetTop;
theDiv=theDiv.offsetParent;
}
return boundingRect;
}
function fpo( el ) { el.style.backgroundColor='#menuOnColor#'; }
function fpf( el ) { el.style.backgroundColor='#menuOffColor#'; }
function flutter( el, action )
{
flutterState=-1;
flutterLength=8;
flutterSpeed=60;
flutterElement=el;
flutterAction=action;
flutterTimeout();
}
function flutterTimeout()
{
flutterLength--;
flutterState=-flutterState;
if( flutterLength==0 )
{
documentClick();
setTimeout("flutterDoAction()", 20 );
}
else
{
if( flutterState==-1 ) flutterElement.style.backgroundColor='#menuFlutterOnColor#';
else flutterElement.style.backgroundColor='#menuFlutterOffColor#';
setTimeout("flutterTimeout()", flutterSpeed);
}
}
function flutterDoAction() { eval( flutterAction ); }
function documentClick()
{
var objectMenuDiv = document.getElementById( "ObjectMenu" );
if(objectMenuDiv)
objectMenuDiv.style.visibility = "hidden";
hideSubMenus();
return true;
}
function hideSubMenus()
{
for( var item in objectMenu )
{
var temp = objectMenu[item].submenu;
if( temp )
{
var theMenuDiv = document.getElementById( temp+"Menu" );
if( theMenuDiv ) theMenuDiv.style.visibility = "hidden";
}
}
}
function showEditTabs (tabType, objectid, activeTab)
{
var elList, i;
var curList, newList;
// Set current active link to non active
elList = parent.document.getElementsByTagName("A");
for (i = 0; i < elList.length; i++)
// Check if the id contains the tabtype and make tab visible
if (elList[i].id)
{
if (elList[i].id.indexOf(tabType)!= -1)
{
elList[i].style.visibility = 'visible';
elList[i].style.zindex = 1;
// break href into 2 bits, one the file and one the object parameter
newList = new Array();
curList = elList[i].href.split("=");
elList[i].href = curList[0] + "=" + objectid;
// set tab to active
if(elList[i].href.indexOf(activeTab)!=-1)
{
elList[i].className = "activesubtab";}
else {
elList[i].className = "subtab";
}
}
}
}
document.body.onclick = documentClick;
]]>
instance = structnew();
//Set PRoperties
setDictionary(arguments.dictionary);
setName(arguments.name);
//return instance.
return this;
if ( keyExists(arguments.key) ){
return structFind( getDictionary(), arguments.key );
}
else
return "";
var dictionary = getDictionary();
dictionary[arguments.key] = arguments.value;
structClear(getDictionary());
]]>
instance = StructNew();
instance.static.uuid = "A0608BEC-0AEB-B46A-0E1E1EC5F3CE7C9C";
var iterator = arguments.loadPaths.iterator();
var file = 0;
var classLoader = 0;
var networkClassLoaderClass = 0;
var networkClassLoaderProxy = 0;
initUseJavaProxyCFC();
if(arguments.loadColdFusionClassPath)
{
//arguments.parentClassLoader = createObject("java", "java.lang.Thread").currentThread().getContextClassLoader();
//can't use above, as doesn't work in some... things
arguments.parentClassLoader = getPageContext().getClass().getClassLoader();
//arguments.parentClassLoader = createObject("java", "java.lang.ClassLoader").getSystemClassLoader();
//can't use the above, it doesn't have the CF stuff in it.
}
ensureNetworkClassLoaderOnServerScope();
//classLoader = createObject("java", "com.compoundtheory.classloader0.NetworkClassLoader").init();
networkClassLoaderClass = getServerURLClassLoader().loadClass("com.compoundtheory.classloader.NetworkClassLoader");
networkClassLoaderProxy = createJavaProxy(networkClassLoaderClass);
if(isObject(arguments.parentClassLoader))
{
classLoader = networkClassLoaderProxy.init(arguments.parentClassLoader);
}
else
{
classLoader = networkClassLoaderProxy.init();
}
while(iterator.hasNext())
{
file = createObject("java", "java.io.File").init(iterator.next());
if(NOT file.exists())
{
throw("PathNotFoundException", "The path you have specified could not be found", file.getAbsolutePath() & " does not exist");
}
classLoader.addUrl(file.toURL());
}
//pass in the system loader
setURLClassLoader(classLoader);
return this;
var class = getURLClassLoader().loadClass(arguments.className);
return createJavaProxy(class);
var Class = createObject("java", "java.lang.Class");
var Array = createObject("java", "java.lang.reflect.Array");
var jars = queryJars();
var iterator = jars.iterator();
var file = 0;
var urls = Array.newInstance(Class.forName("java.net.URL"), ArrayLen(jars));
var counter = 0;
var urlClassLoader = 0;
var key = instance.static.uuid & "." & getVersion();
//server scope uuid
//we have it already? escape.
if(StructKeyExists(server, key))
{
return;
}
while(iterator.hasNext())
{
Array.set(urls, counter, createObject("java", "java.io.File").init(iterator.next()).toURL());
counter = counter + 1;
}
urlClassLoader = createObject("java", "java.net.URLClassLoader").init(urls);
//put it on the server scope
server[key] = urlClassLoader;
if(getUseJavaProxyCFC())
{
return createObject("component", "JavaProxy")._init(arguments.class);
}
return createObject("java", "coldfusion.runtime.java.JavaProxy").init(arguments.class);
setUseJavaProxyCFC(false);
try
{
createObject("java", "coldfusion.runtime.java.JavaProxy");
}
catch(Object exc)
{
setUseJavaProxyCFC(true);
}
var qJars = 0;
//the path to my jar library
var path = getDirectoryFromPath(getMetaData(this).path) & "lib/";
var jarList = "";
var aJars = ArrayNew(1);
var libName = 0;
libName = ListGetAt(name, 1, "-");
//let's not use the lib's that have the same name, but a lower datestamp
if(NOT ListFind(jarList, libName))
{
ArrayAppend(aJars, path & "/" & name);
jarList = ListAppend(jarList, libName);
}
]]>
]]>
]]>
]]>
]]>
]]>
if( this.PERSIST_FRAMEWORK ){
structDelete(application,"cbController");
}
var handlerResults = "";
var requestContext = "";
//Setup the request Context with setup FORM/URL variables set in the unit test.
setupRequest();
//TEST EVENT EXECUTION
handlerResults = getController().runEvent(event=eventhandler,private=arguments.private);
//Return the correct event context.
requestContext = getRequestContext();
//If we have results save
if ( isDefined("handlerResults") ){
requestContext.setValue("cbox_handler_results", handlerResults);
}
return requestContext;
return getController().getInterceptorService().getInterceptor(arguments.interceptorClass);
]]>
/* Convert special characters so they do not get interpreted literally; italicize and boldface */
data = REReplaceNoCase(data, '&([[:alpha:]]{2,});', '\ufffdstrong\ufffd\ufffdem\ufffd&\1;\ufffd/em\ufffd\ufffd/strong\ufffd', 'ALL');
/* Convert many standalone (not within quotes) numbers to blue, ie. myValue = 0 */
data = REReplaceNoCase(data, "(gt|lt|eq|is|,|\(|\))([[:space:]]?[0-9]{1,})", "\1\ufffdspan style='color: ##0000ff'\ufffd\2\ufffd/span\ufffd", "ALL");
/* Convert normal tags to navy blue */
data = REReplaceNoCase(data, "<(/?)((!d|b|c(e|i|od|om)|d|e|f(r|o)|h|i|k|l|m|n|o|p|q|r|s|t(e|i|t)|u|v|w|x)[^>]*)>", "\ufffdspan style='color: ##000080'\ufffd<\1\2>\ufffd/span\ufffd", "ALL");
/* Convert all table-related tags to teal */
data = REReplaceNoCase(data, "<(/?)(t(a|r|d|b|f|h)([^>]*)|c(ap|ol)([^>]*))>", "\ufffdspan style='color: ##008080'\ufffd<\1\2>\ufffd/span\ufffd", "ALL");
/* Convert all form-related tags to orange */
data = REReplaceNoCase(data, "<(/?)((bu|f(i|or)|i(n|s)|l(a|e)|se|op|te)([^>]*))>", "\ufffdspan style='color: ##ff8000'\ufffd<\1\2>\ufffd/span\ufffd", "ALL");
/* Convert all tags starting with 'a' to green, since the others aren't used much and we get a speed gain */
data = REReplaceNoCase(data, "<(/?)(a[^>]*)>", "\ufffdspan style='color: ##008000'\ufffd<\1\2>\ufffd/span\ufffd", "ALL");
/* Convert all image and style tags to purple */
data = REReplaceNoCase(data, "<(/?)((im[^>]*)|(sty[^>]*))>", "\ufffdspan style='color: ##800080'\ufffd<\1\2>\ufffd/span\ufffd", "ALL");
/* Convert all ColdFusion, SCRIPT and WDDX tags to maroon */
data = REReplaceNoCase(data, "<(/?)((cf[^>]*)|(sc[^>]*)|(wddx[^>]*))>", "\ufffdspan style='color: ##800000'\ufffd<\1\2>\ufffd/span\ufffd", "ALL");
/* Convert all inline "//" comments to gray (revised) */
data = REReplaceNoCase(data, "([^:/]\/{2,2})([^[:cntrl:]]+)($|[[:cntrl:]])", "\ufffdspan style='color: ##808080'\ufffd\ufffdem\ufffd\1\2\ufffd/em\ufffd\ufffd/span\ufffd", "ALL");
/* Convert all multi-line script comments to gray */
data = REReplaceNoCase(data, "(\/\*[^\*]*\*\/)", "\ufffdspan style='color: ##808080'\ufffd\ufffdem\ufffd\1\ufffd/em\ufffd\ufffd/span\ufffd", "ALL");
/* Convert all HTML and ColdFusion comments to gray */
/* The next 10 lines of code can be replaced with the commented-out line following them, if you do care whether HTML and CFML
comments contain colored markup. */
while(NOT EOF) {
Match = REFindNoCase("", data, BOF, True);
if (Match.pos[1]) {
Orig = Mid(data, Match.pos[1], Match.len[1]);
Chunk = REReplaceNoCase(Orig, "\ufffd(/?[^\ufffd]*)\ufffd", "", "ALL");
BOF = ((Match.pos[1] + Len(Chunk)) + 38); // 38 is the length of the SPAN tags in the next line
data = Replace(data, Orig, "\ufffdspan style='color: ##808080'\ufffd\ufffdem\ufffd#Chunk#\ufffd/em\ufffd\ufffd/span\ufffd");
} else EOF = 1;
}
/* Convert all quoted values to blue */
data = REReplaceNoCase(data, """([^""]*)""", "\ufffdspan style=""color: ##0000ff""\ufffd""\1""\ufffd/span\ufffd", "all");
/* Convert left containers to their ASCII equivalent */
data = REReplaceNoCase(data, "<", "<", "ALL");
/* Convert right containers to their ASCII equivalent */
data = REReplaceNoCase(data, ">", ">", "ALL");
/* Revert all pseudo-containers back to their real values to be interpreted literally (revised) */
data = REReplaceNoCase(data, "\ufffd([^\ufffd]*)\ufffd", "<\1>", "ALL");
/* ***New Feature*** Convert all FILE and UNC paths to active links (i.e, file:///, \\server\, c:\myfile.cfm) */
data = REReplaceNoCase(data, "(((file:///)|([a-z]:\\)|(\\\\[[:alpha:]]))+(\.?[[:alnum:]\/=^@*|:~`+$%?_##& -])+)", "\1", "ALL");
/* Convert all URLs to active links (revised) */
data = REReplaceNoCase(data, "([[:alnum:]]*://[[:alnum:]\@-]*(\.[[:alnum:]][[:alnum:]-]*[[:alnum:]]\.)?[[:alnum:]]{2,}(\.?[[:alnum:]\/=^@*|:~`+$%?_##&-])+)", "\1", "ALL");
/* Convert all email addresses to active mailto's (revised) */
data = REReplaceNoCase(data, "(([[:alnum:]][[:alnum:]_.-]*)?[[:alnum:]]@[[:alnum:]][[:alnum:].-]*\.[[:alpha:]]{2,})", "\1", "ALL");
" & data & "
" />
]]>
var classLoader = createObject("java", "java.lang.ClassLoader").getSystemClassLoader();
var objectClass = classLoader.loadClass("java.lang.Object");
_setArray(createObject("java", "java.lang.reflect.Array"));
_setClassMethod(objectClass.getMethod("getClass", JavaCast("null", 0)));
_setObjectClass(objectClass);
_setClass(arguments.class);
_setModifier(createObject("java", "java.lang.reflect.Modifier"));
_setStaticFields();
_initMethodCollection();
return this;
var constructor = 0;
var instance = 0;
//make sure we only ever have one instance
if(_hasClassInstance())
{
return _getClassInstance();
}
constructor = _resolveMethodByParams("Constructor", _getClass().getConstructors(), arguments);
instance = constructor.newInstance(_buildArgumentArray(arguments));
_setClassInstance(instance);
return _getClassInstance();
var method = _findMethod(arguments.missingMethodName, arguments.missingMethodArguments);
if(_getModifier().isStatic(method.getModifiers()))
{
return method.invoke(JavaCast("null", 0), _buildArgumentArray(arguments.missingMethodArguments));
}
else
{
if(NOT _hasClassInstance())
{
//run the default constructor, just like in normal CF, if there is no instance
init();
}
return method.invoke(_getClassInstance(), _buildArgumentArray(arguments.missingMethodArguments));
}
var fields = _getClass().getFields();
var counter = 1;
var len = ArrayLen(fields);
var field = 0;
for(; counter <= len; counter++)
{
field = fields[counter];
if(_getModifier().isStatic(field.getModifiers()))
{
this[field.getName()] = field.get(JavaCast("null", 0));
}
}
var len = StructCount(arguments);
var objArray = _getArray().newInstance(_getObjectClass(), len);
var counter = 1;
var obj = 0;
for(; counter <= len; counter++)
{
obj = arguments[counter];
_getArray().set(objArray, counter - 1, obj);
}
return objArray;
var decision = 0;
if(StructKeyExists(_getMethodCollection(), arguments.methodName))
{
decision = StructFind(_getMethodCollection(), arguments.methodName);
//if there is only one option, try it, it's only going to throw a runtime exception if it doesn't work.
if(ArrayLen(decision) == 1)
{
return decision[1];
}
else
{
return _resolveMethodByParams(arguments.methodName, decision, arguments.methodArgs);
}
}
throw("JavaProxy.MethodNotFoundException", "Could not find the designated method", "Could not find the method '#arguments.methodName#' in the class #_getClass().getName()#");
var decisionLen = ArrayLen(arguments.decision);
var method = 0;
var counter = 1;
var argLen = ArrayLen(arguments.methodArgs);
var paremeters = 0;
]]>
]]>
#CreateHtml()#
// display the html editor or a plain textarea?
if( isCompatible() )
return getHtmlEditor();
else
return getTextArea();
var sAgent = lCase( cgi.HTTP_USER_AGENT );
var stResult = "";
var sBrowserVersion = "";
// do not check if argument "checkBrowser" is false
if( not this.checkBrowser )
return true;
return FCKeditor_IsCompatibleBrowser();
if( Find( "%", this.width ) gt 0)
sWidthCSS = this.width;
else
sWidthCSS = this.width & "px";
if( Find( "%", this.width ) gt 0)
sHeightCSS = this.height;
else
sHeightCSS = this.height & "px";
result = "" & chr(13) & chr(10);
// try to fix the basePath, if ending slash is missing
if( len( this.basePath) and right( this.basePath, 1 ) is not "/" )
this.basePath = this.basePath & "/";
// construct the url
sURL = this.basePath & "editor/fckeditor.html?InstanceName=" & this.instanceName;
// append toolbarset name to the url
if( len( this.toolbarSet ) )
sURL = sURL & "&Toolbar=" & this.toolbarSet;
result = result & "" & chr(13) & chr(10);
result = result & "" & chr(13) & chr(10);
result = result & "" & chr(13) & chr(10);
/**
* CFML doesn't store casesensitive names for structure keys, but the configuration names must be casesensitive for js.
* So we need to find out the correct case for the configuration keys.
* We "fix" this by comparing the caseless configuration keys to a list of all available configuration options in the correct case.
* changed 20041206 hk@lwd.de (improvements are welcome!)
*/
lConfigKeys = lConfigKeys & "CustomConfigurationsPath,EditorAreaCSS,ToolbarComboPreviewCSS,DocType";
lConfigKeys = lConfigKeys & ",BaseHref,FullPage,Debug,AllowQueryStringDebug,SkinPath";
lConfigKeys = lConfigKeys & ",PreloadImages,PluginsPath,AutoDetectLanguage,DefaultLanguage,ContentLangDirection";
lConfigKeys = lConfigKeys & ",ProcessHTMLEntities,IncludeLatinEntities,IncludeGreekEntities,ProcessNumericEntities,AdditionalNumericEntities";
lConfigKeys = lConfigKeys & ",FillEmptyBlocks,FormatSource,FormatOutput,FormatIndentator";
lConfigKeys = lConfigKeys & ",StartupFocus,ForcePasteAsPlainText,AutoDetectPasteFromWord,ForceSimpleAmpersand";
lConfigKeys = lConfigKeys & ",TabSpaces,ShowBorders,SourcePopup,ToolbarStartExpanded,ToolbarCanCollapse";
lConfigKeys = lConfigKeys & ",IgnoreEmptyParagraphValue,FloatingPanelsZIndex,TemplateReplaceAll,TemplateReplaceCheckbox";
lConfigKeys = lConfigKeys & ",ToolbarLocation,ToolbarSets,EnterMode,ShiftEnterMode,Keystrokes";
lConfigKeys = lConfigKeys & ",ContextMenu,BrowserContextMenuOnCtrl,FontColors,FontNames,FontSizes";
lConfigKeys = lConfigKeys & ",FontFormats,StylesXmlPath,TemplatesXmlPath,SpellChecker,IeSpellDownloadUrl";
lConfigKeys = lConfigKeys & ",SpellerPagesServerScript,FirefoxSpellChecker,MaxUndoLevels,DisableObjectResizing,DisableFFTableHandles";
lConfigKeys = lConfigKeys & ",LinkDlgHideTarget,LinkDlgHideAdvanced,ImageDlgHideLink,ImageDlgHideAdvanced,FlashDlgHideAdvanced";
lConfigKeys = lConfigKeys & ",ProtectedTags,BodyId,BodyClass,DefaultLinkTarget,CleanWordKeepsStructure";
lConfigKeys = lConfigKeys & ",LinkBrowser,LinkBrowserURL,LinkBrowserWindowWidth,LinkBrowserWindowHeight,ImageBrowser";
lConfigKeys = lConfigKeys & ",ImageBrowserURL,ImageBrowserWindowWidth,ImageBrowserWindowHeight,FlashBrowser,FlashBrowserURL";
lConfigKeys = lConfigKeys & ",FlashBrowserWindowWidth,FlashBrowserWindowHeight,LinkUpload,LinkUploadURL,LinkUploadWindowWidth";
lConfigKeys = lConfigKeys & ",LinkUploadWindowHeight,LinkUploadAllowedExtensions,LinkUploadDeniedExtensions,ImageUpload,ImageUploadURL";
lConfigKeys = lConfigKeys & ",ImageUploadAllowedExtensions,ImageUploadDeniedExtensions,FlashUpload,FlashUploadURL,FlashUploadAllowedExtensions";
lConfigKeys = lConfigKeys & ",FlashUploadDeniedExtensions,SmileyPath,SmileyImages,SmileyColumns,SmileyWindowWidth,SmileyWindowHeight";
]]>
#Request.userBean.getFname()# #Request.userBean.getlname()# [#application.rbFactory.getKeyValue(session.rb,'user.back')#]
There are no comments yet...Kick things off by filling out the form below.
Leave a Comment
There was a problem: