http://localhost:3001/default.htm#!/license

RAVEN READINESS TODO

NOTE: SAAS stuff will be a later on thing, these changes are just enough to be able to sell it and support the license key infrastructure
no need to do anything fancy with UI, just the bare minimum for now as I will be building a nice vuetify UI down the road after release

CHANGES

FOR TRIALS:
=-=-=-=-=-

Trial key is 45 days time limited and has everything enabled, i.e. fullest possible feature set so we don't need to add any particular products or anything

Put trials in their own tables not in regular customers
"TrialRequest"
    id integer PRIMARY key
    dbid text
    company name text
    contact name text
    notes (for us) text
    email address text
    email validated bool
    requested timestamp
    processed timestamp
    status enum 0=notset, 1=approved, 2=rejected
    rejectreason text
    KEY as generated text, null if nothing
    key fetched timestamp

Add minimal barebones ui for this under main top menu beside customers "Trials"   
   Display list of trialrequests sorted by most requested timestamp desc
   open record to edit form which has all fields
    has PROCESS button which triggers process of status
    events triggered upon PROCESS BUTTON, NOT ON SAVE ALONE
   Upon PROCESS
     timestamp record processed
    if approved   
        generate standard key with all features for 45 days
        email approval
    if rejected send reject message with reason if exists

routes:
    Add request trial route
    update license check route to check trials for dbid and key fetched timstamp empty and return trial key
    


FOR SALES:
=-=-=-=-=-

SITE UI AND TABLE    
    ADD LEGACY_V7 as a bool, set all to true (V8 is the default going forward and assumed to be true)
    ADD DBID as text (and ui)

LICENSE TABLE
    Add DBID as text to table for v8 keys    

PURCHASE TABLE
    Add quantity to purchase and default to 1

LicenseView UI
    Add dbid as field readonly
    
License UI
    modify with tabs for v8 and v7 version
    just stub in basic with no options for now or whatever the absolute required will be
    for v8 the key is stored in the table same as v7 but with dbid and different format (obvs)
    Add an option to generate a revocation key for non-payment
        click on a button to generate a revocation key
            rf will set all prior keys to fetched for that dbid
            rf will generate a new key for dbid with regto set to UNLICENSED_TOKEN
            rf will set LicenseExpiration to yesterday
            rf will set MaintenanceExpiration yesterday
        RAVEN will fetch it and install it and they will be unlicensed
      

route:
    rvfcontroller checks license table and trial table, looks for unfetched key
        checks license first for unfetched and matching dbid 
        checks trial second for unfetched and matching dbid
    
        


API
Add email verification route with code (called by RAVEN)
    emails us when it's verified as a notification that a trial is ready to send
