Site Specific Login Data Capture, Form Fields:, Site ID(dropdown - active sites on our list), Username, Password, email address, Author First Name, Author Last Name, Date Entered, Date Updated, POST LAUNCH: iFrame of site, test credentials, display to user, does not allow multiple records for the same site+user - allows update. Do not store old values
Store user ID + site ID + credentials in site_specific table, DB Fields:, Site ID, Username, Password, email address, Author First Name, Author Last Name, Date Entered, Date Updated
Site_Specific_Archival table, DB Fields:, Site ID, Username, Password, email address, Author First Name, Author Last Name, Date Entered, Date Updated, Date Archived
Fires when button pressed on site specific login form, Gather all values as variables, Connect to site, display in iFrame on form, Pass variables to site
Fires during distribution process, Get Credentials, Get $userid, Get $siteid, Seek $userid + $siteid in site_specific table, found: save credentials in variables, ALTERNATE CHOICE: store 1 or 0 in queue table, indicating where to get credentials during distribution (Faster? requires 2 lookups, so probably not) (Reliability? less data being written to and from, so maybe), Faster? requires 2 lookups so probably not, Reliability? Less data being written to and from, so maybe, not found: Seek account credentials in pen names table, found: save credentials in variables, ALTERNATE CHOICE: store 1 or 0 in queue table, indicating where to get credentials during distribution (Faster? requires 2 lookups, so probably not) (Reliability? less data being written to and from, so maybe), Faster? requires 2 lookups so probably not, Reliability? Less data being written to and from, so maybe, not found: BUG: How did this article get queued?
Fires based on Cron Job, Cleanup SiteSpecific table, Reason: keep this table as small as possible to minimize seek time, $SSLog_Plans() is arrayof plans allowing site specific login, $userplans() is array of users in the site_specific table and their current plans, Eliminate users with plans that do not match $SSLog_Plans(), Identify users in site_specific tablenot in $userplans(), Archive site_specific data into site_specific_archive with archival date, Multiple email warnings, Your subscription has lapsed. You have xx days to reactivate your account before all of your site specific records are erased and cannot be restored.
Fires based on Cron Job, Cleanup SiteSpecificArchival table, Run Delete Query on all records where archival date is greater than 40 days ago
Insta Correct is only for issues we can identify for certain - Author can still reject., Allow author to bypass correction, flag for review
Insta Prompt is for uncertain "you might wanna check" values. Author can reject., Allow author to bypass correction, flag for review
ErrorText = specific comment from the Reviewer Comments table
assign $Content = text passed
assign $ErrorID as the Review Comments ID
Insta-Prompt, Specific Issues, Title too Short or not descriptive Enough, $Content = title data, $ErrorID =195, $wordcount = Count words in $Content, use same code as wordcount module in AM Insta-edit, set $MinWords = 4, If $wordcount <$MinWords, get error text, If $wordcount >=$MinWords, Byline in Title
Insta-Correct, Specific Issues, Title Not in Title Case, Decorative Lines in Title, Multiple Punctuation
Store old and new values, until accepted by Author. Discard old., Author Accepts, Discard old value, Move to next, Author Rejects: Discard new value, Discard new value, warning message, Flag article for Reviewers
Post-Submission Form, One Moment Please... reviewing this article now... (animation), Formatting issues, Grammar issues, etc (see"am_problem_type" table), Display error list, All errors must be cleared or rejected before moving to Human_Edit
Reviewers - make a note of "false positives"
Launch Values, True/False
Modules, Runs when new sites join list requesting all articles, Calculate which articles to distribute, $Plans()= array of all plans where Constant Distribution = True, $CurSubs()= array of all current subscribers in $Plans(), $ConstDist() = array of all articles belonging to $CurSubs() where start_date before now() and end_date after now(), Run "Queue" function for all articles in $ConstDist()
Interfaces, Joomla Menu, Runs when user clicks to "Submit Article", if $remarts>0, send to submission form, if $remarts<= 0, send to article limit upgrade invitation page, DYA Features (Joomla Admin), Time Parameter, add dropdown list to DYA Features page, next to articles value
modules, Calculate remaining articles, $days = Value of time parameter from account description, $articles = value of articles allowed from account description, $datenow = value of today's date (system), Calculate $startdate =$datenow-$days, $articlesubs = Count articles submitted between $startdate and datenow (from articles table), Calculate $remarts = $articles-$articlesubs, Returns $remarts as integer
Data, Time Parameter, Store time parameter in account description in DB
Possible Values, Launch, For Launch, 1 or 2 or 3, no unlimited, Interfaces, Submission Form/Edit form, If $CatCount = 3, show all 3 category entry boxes, If $CatCount = 2, hide category entry box 3, If $CatCount = 1, hide category entry box 2, Ensure Category 2 and Category 3 are not required fields at validation, Modules, runs when user clicks "Submit Article", $UserID = get user id, $PlanID=get subscription plan, $CatCount = (db lookup) Categories allowed in DYA Features for the $PlanID, Data, Store Category values as part of article submission, Post-Launch, any number, or unlimited
Launch Value, true/false
Interfaces, Submission Form, Author enters article information, Author selects "Versions" on a field by field basis - check boxes on the form, yes/no, CBText Fields, Title, Description, Article, Plain Text AA, HTML AA, Keywords, Submit Article button pressed, Article saved to Db, Insta-Stuff, Fail: cycle til pass, Pass:, Any "Do You want versions?" boxes = TRUE, if VersionDeterminator = True then trigger ContentBossCredFind(), if VersionDeterminator = False then display upgrade form, ContentBoss information gathering Form, Fields, ContentBoss Username, ContentBoss Password, Remember for future use?, Reviewer Form, Display Versionable Text Source (ContentBoss;Modified;Author), CBText Fields, Title, Description, Article, Plain Text AA, HTML AA, Keywords, Article Edit Form, Version Form, Fields, CBText Fields, Title, Description, Article, Plain Text AA, HTML AA, Keywords, Button, See a Sample, Runs SpinNewVersion() and opens pop up with sample., Submit For Review, Run Insta-stuff, Insta-Stuff, Fail: cycle til pass, Pass: Next_touch="Human_Edit", Submit and Hold, Next_Touch="Author_Incomplete"
Module, VersionDeterminator() = (db lookup) Versions allowed in DYA Features for $PlanID, Triggered when submission form loads, $PlanID=get subscription plan, $UserID = get user id, db lookup $Versions = true/false, ContentBossCredFind(), DBLookup: Credentials in system?, No, Display Form, Collect User's ContentBoss Creds, Write Creds to Db, Yes, Run module provided by CB, Get CBVersionables(), Triggered by CB Module, Write originalCBtexts to CBText fields in article table, Display original CBtext, Process Versionable Text from ContentBoss and display on (???)form, Determine Versionable Text Source, Compare submitted text to stored Versionable Text (Each Field), if same, Source = ContentBoss, if different, Source = Modified ContentBoss, if no stored Versionable Text, Source = Author, SpinNewVersion(), CB provided code
Data, Store VersionableText from ContentBoss in db, CBText Columns, Title, Description, Article, Plain Text AA, HTML AA, Keywords, Store Versionable Text source in article record, Versionable Text columns, Title, Description, Article, Plain Text AA, HTML AA, Keywords, store CB Creds from ContentBossCredFind()
store password in plain text for sending to dist sites