var ssCmdResult = StructNew(); var commandArgs = StructNew(); commandArgs['Target'] = "subsite"; commandArgs['method'] = "delete"; commandArgs['args'] = StructNew(); commandArgs['args'].subsiteID = arguments.csSubsiteID; try { // Returns Void variables.apiRemote.runCmdApi(commandStruct=commandArgs,authCommand=true); ssCmdResult["CMDSTATUS"] = true; ssCmdResult["CMDRESULTS"] = true; } catch ( any e ) { ssCmdResult["CMDSTATUS"] = false; if ( StructKeyExists(e,"Reason") AND StructKeyExists(e['Reason'],"subsiteID") ) ssCmdResult["CMDRESULTS"] = e['Reason']['subsiteID']; else if ( StructKeyExists(e,"message") ) ssCmdResult["CMDRESULTS"] = e.message; else ssCmdResult["CMDRESULTS"] = e; } return ssCmdResult; var ssResult = {}; // Use the CS Command API var ssComponent = server.CommonSpot.api.getObject('subsite'); var ssCmdResults = ''; var ssParentPath = ''; var ssPath = ''; ssResult["SUBSITEID"] = 0; ssResult["SUBSITEPATH"] = ''; ssResult["CMDSTATUS"] = false; ssResult["CMDRESULTS"] = ''; if ( LEN(TRIM(arguments.language)) EQ 0 OR !StructKeyExists(Application.LanguageNames,arguments.language) ) arguments.language = "English"; if ( IsNumeric(arguments.parentSubsiteIDOrURL) ) { ssParentPath = application.ADF.csData.getSubsiteURLbySubsiteID(subsiteID=arguments.parentSubsiteIDOrURL); // If we return a parent subsite path, build the subsite path if ( LEN(TRIM(ssParentPath)) ) ssPath = ssParentPath & subsiteName & '/'; } try { // Returns the newly create SubsiteID ssCmdResults = ssComponent.create(subsiteIDOrURL=arguments.parentSubsiteIDOrURL, subsiteName=arguments.subsiteName, language=arguments.language, description=arguments.description, displayName=arguments.displayName); if ( IsNumeric(ssCmdResults) AND ssCmdResults GT 0 ) { // Check the return status has a LENGTH ssResult["CMDSTATUS"] = true; ssResult["CMDRESULTS"] = 'Subsite created successfully!'; ssResult["SUBSITEID"] = ssCmdResults; ssResult["SUBSITEPATH"] = application.ADF.csData.getSubsiteURLbySubsiteID(subsiteID=ssCmdResults); } else { ssResult["CMDSTATUS"] = false; ssResult["CMDRESULTS"] = 'Failed to create subsite.'; ssResult["SUBSITEPATH"] = ssPath; } } catch ( any ex ) { ssResult["CMDSTATUS"] = false; ssResult["SUBSITEPATH"] = ssPath; if ( StructKeyExists(ex,"Message") AND LEN(TRIM(ex.Message)) ) { ssResult["CMDRESULTS"] = ex.Message; } else { ssResult["CMDRESULTS"] = 'Failed to create subsite. Check Logs.'; ssResult["CFCATCH"] = ex; } // Log the error message application.ADF.utils.logAppend(msg=ex,logFile="APISubsite_Errors.html",label=ssResult["CMDRESULTS"]); } return ssResult; var ssResult = {}; var ssCmdResult = {}; var commandArgs = {}; var ssParentPath = ''; var ssPath = ''; ssResult["SUBSITEID"] = 0; ssResult["SUBSITEPATH"] = ''; ssResult["CMDSTATUS"] = false; ssResult["CMDRESULTS"] = ''; if ( LEN(TRIM(arguments.language)) EQ 0 OR !StructKeyExists(Application.LanguageNames,arguments.language) ) arguments.language = "English"; if ( IsNumeric(arguments.parentSubsiteIDOrURL) ) { ssParentPath = application.ADF.csData.getSubsiteURLbySubsiteID(subsiteID=arguments.parentSubsiteIDOrURL); // If we return a subsite path if ( LEN(TRIM(ssParentPath)) ) ssPath = ssParentPath & subsiteName & '/'; } commandArgs['Target'] = "subsite"; commandArgs['method'] = "create"; commandArgs['args'] = {}; commandArgs['args'].subsiteIDOrURL = arguments.parentSubsiteIDOrURL; commandArgs['args'].subsiteName = arguments.subsiteName; commandArgs['args'].language = arguments.language; commandArgs['args'].description = arguments.description; commandArgs['args'].displayName = arguments.displayName; //WriteDump(commandArgs); try { // Returns Void ssCmdResult = variables.apiRemote.runCmdApi(commandStruct=commandArgs,authCommand=false); //WriteDump(var=ssCmdResult,label='ssCmdResult'); if ( StructKeyExists(ssCmdResult,"ERRORMSG") AND LEN(TRIM(ssCmdResult.ERRORMSG)) ) ssResult["CMDRESULTS"] = ssCmdResult.ERRORMSG; else if ( StructKeyExists(ssCmdResult,"STATUS") AND StructKeyExists(ssCmdResult.STATUS,"TEXT") AND LEN(TRIM(ssCmdResult.STATUS.TEXT)) ) ssResult["CMDRESULTS"] = ssCmdResult.STATUS.TEXT; else { ssResult["CMDSTATUS"] = true; ssResult["CMDRESULTS"] = true; ssResult["SUBSITEPATH"] = ssPath; ssResult["SUBSITEID"] = application.ADF.csData.getSubsiteID(subsiteUrl=ssPath); if ( !IsNumeric(ssResult["SUBSITEID"]) OR ssResult["SUBSITEID"] LTE 0 ) { ssResult["CMDSTATUS"] = false; ssResult["CMDRESULTS"] = 'Failed to create subsite. Check Logs.'; } } } catch ( any ex ) { ssResult["CMDSTATUS"] = false; ssResult["SUBSITEPATH"] = ssPath; if ( StructKeyExists(ex,"message") ) ssResult["CMDRESULTS"] = ex.message; else ssResult["CMDRESULTS"] = 'Failed to create subsite. Check Logs.'; ssResult["CFCATCH"] = ex; // Log the error message application.ADF.utils.logAppend(msg=ex,logFile="APISubsite_Errors.html",label=ssResult["CMDRESULTS"]); } return ssResult;