variables.cacheVarName = "ptSocialMediaCache"; variables.tempCacheVarName = "ptSocialMediaCacheTemp"; var varName = variables.cacheVarName; // Reset the ptCalendarCache application Struct variables.socialMediaCacheDAO.createNewCacheSpace(cacheVarName=varName); // Once begin the build process buildSocialMediaCache(); return true; var varName = variables.cacheVarName; var tempVarName = variables.tempCacheVarName; // If Cache Exists use TEMP space to do the rebuild if ( StructKeyExists(application,varName) ) { // 1) Copy the current LIVE cache data to the TEMP cache space // - LIVE (ptSocialMediaCache) is the source and TEMP (ptSocialMediaCacheTemp) is the destination variables.socialMediaCacheDAO.copyFeedDataCache(sourceVarName=varName,destVarName=tempVarName); // Once the current data is copied to the Temp... begin the TEMP rebuild process buildSocialMediaCache(cacheVarName=tempVarName); // 2) After RE-Build is complete // - Copy the TEMP Cache over the LIVE Cache // - TEMP (ptSocialMediaCacheTemp) is the source and LIVE (ptSocialMediaCache) is the destination variables.socialMediaCacheDAO.copyFeedDataCache(sourceVarName=tempVarName,destVarName=varName); // 3) Delete the TEMP Cache data from memory variables.socialMediaCacheDAO.deleteFeedCache(cacheVarName=tempVarName); } else { initBuildSocialMediaCache(); } return true; var dateTimeStamp = Now(); var cacheTypeList = getServiceTypeList(); // 1) Make sure the Application cache struct is in place if ( NOT StructKeyExists(application,arguments.cacheVarName) ) variables.socialMediaCacheDAO.createNewCacheSpace(cacheVarName=arguments.cacheVarName); // 2) Build the Facebook Feed Cache if ( ListFindNoCase(cacheTypeList,"facebook") ) buildFacebookFeedCache(cacheVarName=arguments.cacheVarName); // 3) Build the Twitter Cache if ( ListFindNoCase(cacheTypeList,"twitter") ) buildTwitterFeedCache(cacheVarName=arguments.cacheVarName); // 4) Build the Twitter Cache if ( ListFindNoCase(cacheTypeList,"youtube") ) buildYouTubeFeedCache(cacheVarName=arguments.cacheVarName); // 5) Build the WordPress Cache if ( ListFindNoCase(cacheTypeList,"wordpress") ) buildWordPressFeedCache(cacheVarName=arguments.cacheVarName); // 6) Set the date/time stamps for the ptCalendarCache build variables.socialMediaCacheDAO.writeCacheTimeStamp(cacheVarName=arguments.cacheVarName); ; // 7) Update the server cache status variables for the cfthread processing. server.ADF.ptSocialMedia.cacheThreadStatus = "completed"; server.ADF.ptSocialMedia.cacheThreadEnd = now(); return true; var retStruct = StructNew(); var smFeedData = StructNew(); var feedArray = ArrayNew(1); var smServiceType = "facebook"; var smItm=1; var smFeedID = ""; var smfeedCriteria = ""; var smPostExcludeList = ""; var smRenderLimit = 10; // TODO: Get from config // Get the Active Facebook pages from the element var smSelectedItems = variables.facebookPagesDAO.getFacebookPagesActive(); //application.ptSocialMedia.utils.doDump(smSelectedItems,"smSelectedItems",0); // Loop over the Active Facebook pages and build a feed array for each for ( smItm=1; smItm LTE ArrayLen(smSelectedItems); smItm=smItm+1 ) { smFeedID = smSelectedItems[smItm].values.uniqueID; // Social media Page or Account to get smfeedCriteria = smSelectedItems[smItm].values.fbPageLink; smPostExcludeList = ""; // Get the PostIDs of excluded posts if ( StructKeyExists(smSelectedItems[smItm].values,"postExcludeList") ) smPostExcludeList = smSelectedItems[smItm].values.postExcludeList; // Build Facebook Feed Data feedArray = variables.facebookFeedsService.buildFacebookFeedData(smFeedID,smfeedCriteria,smRenderLimit,smPostExcludeList,arguments.showFeedDump); //application.ptSocialMedia.utils.doDump(feedArray,"feedArray",0); // Add the Feed Array to the final smFeedData struct with the smFeedID as the struct Key if ( ArrayLen(feedArray) ) { smFeedData[smFeedID] = feedArray; } else { // If a Feed Array is NOT built check the CACHE to see if an Array exists for this smFeedID // - the application.ptSocialMediaCache struct exists checks are done in the Cache DAO functions feedArray = variables.socialMediaCacheDAO.getFacebookFeedData(feedID=smFeedID); // Still only the feed struct if a data array has a length if ( ArrayLen(feedArray) ) smFeedData[smFeedID] = feedArray; } } //application.ptSocialMedia.utils.doDump(smFeedData,"smFeedData",0); // set cache for the service feeds retStruct.status = variables.socialMediaCacheDAO.updateServiceFeedDataCache(serviceType=smServiceType,serviceFeedData=smFeedData,cacheVarName=arguments.cacheVarName); return retStruct; var retStruct = StructNew(); var smFeedData = StructNew(); var feedArray = ArrayNew(1); var smServiceType = "twitter"; var smItm=1; var smFeedID = ""; var smfeedCriteria = ""; var smFeedType = ""; var smPostExcludeList = ""; var smRenderLimit = 10; // TODO: Get from config // Get the Active Twitter accounts and keywords from the element var smSelectedItems = variables.twitterAccountsKeywordsDAO.getTwitterAccountsKeywordsActive(); //application.ptSocialMedia.utils.doDump(smSelectedItems,"smSelectedItems",0); // Loop over the items and build a feed array for each for ( smItm=1; smItm LTE ArrayLen(smSelectedItems); smItm=smItm+1 ) { smFeedID = smSelectedItems[smItm].values.uniqueID; // Social media Page or Account to get smfeedCriteria = smSelectedItems[smItm].values.twitterAccountKeyword; smFeedType = smSelectedItems[smItm].values.type; smPostExcludeList = ""; // Get the PostIDs of excluded posts if ( StructKeyExists(smSelectedItems[smItm].values,"postExcludeList") ) smPostExcludeList = smSelectedItems[smItm].values.postExcludeList; // Build Twitter Feed Data feedArray = variables.twitterFeedsService.buildTwitterFeedData(smFeedID,smfeedCriteria,smFeedType,smRenderLimit,smPostExcludeList,arguments.showFeedDump); //application.ptSocialMedia.utils.doDump(feedArray,"feedArray",0); // Add the Feed Array to the final smFeedData struct with the smFeedID as the struct Key if ( ArrayLen(feedArray) ) { smFeedData[smFeedID] = feedArray; } else { // If a Feed Array is NOT built check the CACHE to see if an Array exists for this smFeedID // - application.ptSocialMediaCache check are done in the Cache DAO functions feedArray = variables.socialMediaCacheDAO.getFacebookFeedData(feedID=smFeedID); // Still only the feed struct if a data array has a length if ( ArrayLen(feedArray) ) smFeedData[smFeedID] = feedArray; } } //application.ptSocialMedia.utils.doDump(smFeedData,"smFeedData",0); // set cache for the service feeds retStruct.status = variables.socialMediaCacheDAO.updateServiceFeedDataCache(serviceType=smServiceType,serviceFeedData=smFeedData,cacheVarName=arguments.cacheVarName); return retStruct; var retStruct = StructNew(); var smFeedData = StructNew(); var feedArray = ArrayNew(1); var smServiceType = "wordpress"; var smItm=1; var smFeedID = ""; var smfeedCriteria = ""; var smPostExcludeList = ""; var smfeedImage = ""; var smfeedImageData = Structnew(); var smMaxWords = 50; // TODO: Blog Post max words... add this to the config element or the wordpress blog element var smRenderLimit = 10; // TODO: Get from config // Get the Active WordPress Blogs from the element var smSelectedItems = variables.wordPressBlogsDAO.getWordPressBlogsActive(); //application.ptSocialMedia.utils.doDump(smSelectedItems,"smSelectedItems",0); // Loop over the items and build a feed array for each for ( smItm=1; smItm LTE ArrayLen(smSelectedItems); smItm=smItm+1 ) { smFeedID = smSelectedItems[smItm].values.uniqueID; // Social media Page or Account to get smfeedCriteria = smSelectedItems[smItm].values.blogLink; smfeedImage = ""; smPostExcludeList = ""; // Get the PostIDs of excluded posts if ( StructKeyExists(smSelectedItems[smItm].values,"postExcludeList") ) smPostExcludeList = smSelectedItems[smItm].values.postExcludeList; // CP Image Data Exists Get Image URL if ( StructKeyExists(smSelectedItems[smItm].values,"blogImage") AND ListFirst(smSelectedItems[smItm].values.blogImage,":") EQ "CPIMAGE" ) { smfeedImageData = Application.ptSocialMedia.csData.decipherCPIMAGE(smSelectedItems[smItm].values.blogImage); if ( StructKeyExists(smfeedImageData,"ResolvedURL") AND StructKeyExists(smfeedImageData.ResolvedURL,"ServerRelative") AND LEN(TRIM(smfeedImageData.ResolvedURL.ServerRelative)) ) smfeedImage = smfeedImageData.ResolvedURL.ServerRelative; } // Build WordPress Feed Data feedArray = variables.wordPressFeedsService.buildWordPressFeedData(smFeedID,smfeedCriteria,smRenderLimit,smMaxWords,smfeedImage,smPostExcludeList,arguments.showFeedDump); //application.ptSocialMedia.utils.doDump(feedArray,"feedArray",0); // Add the Feed Array to the final smFeedData struct with the smFeedID as the struct Key if ( ArrayLen(feedArray) ) { smFeedData[smFeedID] = feedArray; } else { // If a Feed Array is NOT built check the CACHE to see if an Array exists for this smFeedID // - application.ptSocialMediaCache check are done in the Cache DAO functions feedArray = variables.socialMediaCacheDAO.getFacebookFeedData(feedID=smFeedID); // Still only the feed struct if a data array has a length if ( ArrayLen(feedArray) ) smFeedData[smFeedID] = feedArray; } } //application.ptSocialMedia.utils.doDump(smFeedData,"smFeedData",0); // set cache for the service feeds retStruct.status = variables.socialMediaCacheDAO.updateServiceFeedDataCache(serviceType=smServiceType,serviceFeedData=smFeedData,cacheVarName=arguments.cacheVarName); return retStruct; var retStruct = StructNew(); var smFeedData = StructNew(); var feedArray = ArrayNew(1); var smServiceType = "youtube"; var smItm=1; var smFeedID = ""; var smfeedCriteria = ""; var smPostExcludeList = ""; var smRenderLimit = 10; // TODO: Get from config // Get the Active YouTube Channels from the element var smSelectedItems = variables.youTubeChannelsDAO.getYouTubeChannelsActive(); //application.ptSocialMedia.utils.doDump(smSelectedItems,"smSelectedItems",0); // Loop over the items and build a feed array for each for ( smItm=1; smItm LTE ArrayLen(smSelectedItems); smItm=smItm+1 ) { smFeedID = smSelectedItems[smItm].values.uniqueID; // Social media Page or Account to get smfeedCriteria = smSelectedItems[smItm].values.channelUsername; smPostExcludeList = ""; // Get the PostIDs of excluded posts if ( StructKeyExists(smSelectedItems[smItm].values,"postExcludeList") ) smPostExcludeList = smSelectedItems[smItm].values.postExcludeList; // Build YouTube Feed Data feedArray = variables.youTubeFeedsService.buildYouTubeFeedData(smFeedID,smfeedCriteria,smRenderLimit,smPostExcludeList,arguments.showFeedDump); //application.ptSocialMedia.utils.doDump(feedArray,"feedArray",0); // Add the Feed Array to the final smFeedData struct with the smFeedID as the struct Key if ( ArrayLen(feedArray) ) { smFeedData[smFeedID] = feedArray; } else { // If a Feed Array is NOT built check the CACHE to see if an Array exists for this smFeedID // - application.ptSocialMediaCache check are done in the Cache DAO functions feedArray = variables.socialMediaCacheDAO.getFacebookFeedData(feedID=smFeedID); // Still only the feed struct if a data array has a length if ( ArrayLen(feedArray) ) smFeedData[smFeedID] = feedArray; } } //application.ptSocialMedia.utils.doDump(smFeedData,"smFeedData",0); // set cache for the service feeds retStruct.status = variables.socialMediaCacheDAO.updateServiceFeedDataCache(serviceType=smServiceType,serviceFeedData=smFeedData,cacheVarName=arguments.cacheVarName); return retStruct; var varName = variables.cacheVarName; var tempVarName = variables.tempCacheVarName; // Delete FEED Cache Data variables.socialMediaCacheDAO.deleteFeedCache(cacheVarName=varName); // delete the TEMP FEED Cache Data variables.socialMediaCacheDAO.deleteFeedCache(cacheVarName=tempVarName); // Delete rebuild Cache Data Scheduled Task variables.socialMediaScheduledTasksDAO.deleteCacheRebuildScheduledTask(); return true; // Initialize the variables var retHTML = ""; var feedCacheState = getFeedCacheState(); application.ptSocialMedia.scripts.loadJQuery(); application.ptSocialMedia.scripts.loadADFLightbox();
Creating Scheduled Task... Service Feed Cache is NOT enabled!
Scheduled Task can NOT be created.
// Initialize the variables var retHTML = ""; var feedCacheState = getFeedCacheState(); application.ptSocialMedia.scripts.loadJQuery(); application.ptSocialMedia.scripts.loadADFLightbox();
Rebuilding Feed Cache...
Please Wait! The cache rebuild may take a few minutes.
Service Feed Cache is NOT enabled!
Feed Cache can not be built.
// Initialize the variables var retHTML = ""; var feedCacheState = getFeedCacheState(); var varName = variables.cacheVarName; application.ptSocialMedia.scripts.loadJQuery(); application.ptSocialMedia.scripts.loadADFLightbox(); //ptSocialMediaCache Variable Dump if ( feedCacheState AND StructKeyExists(application,varName) ) application.ptSocialMedia.utils.doDump(application[varName],"Social Media Feed Cache",0); else WriteOutput("
Social Media Feed Cache is not Available
");