var retData = StructNew(); var cmdResultArray = ArrayNew(1); var cmdResult = StructNew(); var apiConfig = variables.api.getAPIConfig(); var preCmdXML = ""; var postCmdXML = ""; var cmdXML = ""; var bodyCmdXML = ""; var cmdCollectionXML = ""; var httpSubsiteURL = ""; var preCmd = StructNew(); var postCmd = StructNew(); var Username = ""; var Password = ""; retData.errorMsg = ""; if ( LEN(TRIM(arguments.forceUsername)) ) userName = arguments.forceUsername; else if ( StructKeyExists(apiConfig,"wsVars") AND StructKeyExists(apiConfig.wsVars,"csuserid") AND LEN(TRIM(apiConfig.wsVars.csuserid)) ) userName = apiConfig.wsVars.csuserid; else arguments.authCommand = false; if ( LEN(TRIM(arguments.forcePassword)) ) password = arguments.forcePassword; else if ( StructKeyExists(apiConfig,"wsVars") AND StructKeyExists(apiConfig.wsVars,"cspassword") AND LEN(TRIM(apiConfig.wsVars.cspassword)) ) password = apiConfig.wsVars.cspassword; else arguments.authCommand = false; if ( IsNumeric(arguments.forceSubsiteID) AND arguments.forceSubsiteID GT 0 AND LEN(TRIM(request.SubsiteCache[arguments.forceSubsiteID].url)) NEQ 0 ) httpSubsiteURL = buildRemoteSubsiteFullURL(subsiteID=arguments.forceSubsiteID); else httpSubsiteURL = buildRemoteSubsiteFullURL(subsiteID=1); if ( arguments.authCommand ) { // Login Command preCmd['Target'] = "Login"; preCmd['Method'] = "doLogin"; preCmd['Args'] = StructNew(); preCmd['Args']['userName'] = Username; preCmd['Args']['password'] = Password; preCmdXML = buildCommandString(preCmd); // Logout Command postCmd['Target'] = "Login"; postCmd['Method'] = "doLogout"; postCmdXML = buildCommandString(postCmd); } // Check if the commands collection is a structure if ( isStruct(arguments.commandStruct) AND StructCount(arguments.commandStruct) GT 0 ) bodyCmdXML = buildCommandString(arguments.commandStruct); else bodyCmdXML = arguments.commandXML; if ( LEN(TRIM(bodyCmdXML)) ) { cmdXML = preCmdXML & bodyCmdXML & postCmdXML; cmdCollectionXML = '' & cmdXML & ''; } if ( isXML(cfhttp.fileContent) ) cmdResultArray = server.Commonspot.UDF.util.deserialize(cfhttp.fileContent); if ( IsArray(cmdResultArray) ) { if ( ArrayLen(cmdResultArray) GTE 2 ) retData = cmdResultArray[2]; } else retData = cmdResultArray; var commandXML = ""; if ( isStruct(arguments.cmdData) AND StructCount(arguments.cmdData) GT 0 ) { commandXML = server.CommonSpot.UDF.Util.serializeBean(cmdData); // Trim off the surrounding "" tags commandXML = MID(commandXML,9,LEN(commandXML)-17); } // Validate if the XML starts with "COMMAND" if ( MID(server.commonspot.UDF.HTML.escape(TRIM(commandXML)),5, 7) NEQ "Command" ) commandXML = '' & commandXML & ''; return commandXML; var apiConfig = variables.api.getAPIConfig(); var retVal = request.site.url; if ( StructKeyExists(apiConfig,"wsVars") AND StructKeyExists(apiConfig.wsVars,"siteURL") AND LEN(TRIM(apiConfig.wsVars.siteURL)) ) retVal = apiConfig.wsVars.siteURL; // Check to make sure the retVal ends in "/" if ( RIGHT(retVal, 1) NEQ "/" ) retVal = retVal & "/"; return retVal; var httpSubsiteURL = getRemoteSiteURL(); var subsiteData = application.ADF.csData.getSubsiteQueryByID(subsiteID=arguments.subsiteID); // Remove the root subsite from the path httpSubsiteURL = Replace(httpSubsiteURL, request.site.CP_URL, ""); // Add the subsite path to the string httpSubsiteURL = httpSubsiteURL & subsiteData.SubSiteURL; return httpSubsiteURL;