Refactor: Modularize object definitions and migrate event-related objects to V3 CRUD.

This commit is contained in:
Scott Idem
2026-01-02 17:53:35 -05:00
parent 2f24a5588b
commit bd2739eb13
11 changed files with 1072 additions and 776 deletions

View File

@@ -0,0 +1,137 @@
import requests
import json
# Configuration
BASE_URL = "https://dev-api.oneskyit.com/v3/crud"
# Valid account id_random provided by user
ACCOUNT_ID = "nqOzejLCDXM"
headers = {
"X-Account-ID": ACCOUNT_ID,
"Content-Type": "application/json"
}
def test_search(obj_type, query, description):
"""
Helper to run a search test and print results.
"""
print(f"--- Testing: {description} ---")
url = f"{BASE_URL}/{obj_type}/search"
try:
response = requests.post(url, headers=headers, json=query)
print(f"Status Code: {response.status_code}")
data = response.json()
# Check if the result is a list or single object
result_data = data.get('data')
if isinstance(result_data, list):
print(f"Result Count: {len(result_data)}")
if len(result_data) > 0:
# Print first item as example
print(f"First Item Example: {json.dumps(result_data[0], indent=2)[:200]}...")
else:
print(f"Result Type: {type(result_data)}")
print(f"Result Data: {json.dumps(result_data, indent=2)}")
if response.status_code != 200:
print(f"Meta Details: {json.dumps(data.get('meta', {}), indent=2)}")
except requests.exceptions.ConnectionError:
print(f"Error: Could not connect to {BASE_URL}. Is the API running?")
except Exception as e:
print(f"Error during test: {e}")
print("-" * 40 + "\n")
if __name__ == "__main__":
print(f"Starting Aether V3 Search Tests against {BASE_URL}\n")
# 1. Simple Equality
# Tests 'eq' operator on 'journal'
query_eq = {
"and": [
{"field": "enable", "op": "eq", "value": True}
]
}
test_search("journal", query_eq, "Simple Equality (enable=True)")
# 2. LIKE search
# Tests 'like' operator with wildcards on 'name' field (corrected from 'title')
# Using '%' to catch any journals with names
query_like = {
"and": [
{"field": "name", "op": "like", "value": "%"}
]
}
test_search("journal", query_like, "LIKE search (name LIKE '%')")
# 3. Numeric Comparison
# Tests 'gt' (Greater Than) operator
query_gt = {
"and": [
{"field": "id", "op": "gt", "value": 0}
]
}
test_search("journal", query_gt, "Numeric Comparison (internal id > 0)")
# 4. Complex Nested Logic (AND + OR)
# Tests recursive grouping: (enable=True) AND (name LIKE % % OR summary IS NOT NULL)
query_nested = {
"and": [
{"field": "enable", "op": "eq", "value": True},
{
"or": [
{"field": "name", "op": "like", "value": "%Journal%"},
{"field": "summary", "op": "is_not_null"}
]
}
]
}
test_search("journal", query_nested, "Nested Logic (AND + OR group)")
# 5. IN List
# Tests 'in' operator with a list of values
# Based on previous results, we know id 1 exists for journal
query_in = {
"and": [
{"field": "journal_id", "op": "in", "value": [1, 2, 3]}
]
}
test_search("journal_entry", query_in, "IN List search (journal_entry with journal_id in [1,2,3])")
# 6. NULL Check
# Tests 'is_null' operator
query_null = {
"and": [
{"field": "notes", "op": "is_null"}
]
}
test_search("site", query_null, "Null Check (notes is NULL)")
# 7. Event Search
query_event = {
"and": [
{"field": "enable", "op": "eq", "value": True},
{"field": "name", "op": "like", "value": "%"}
]
}
test_search("event", query_event, "Event Search (enable=True and has name)")
# 8. Event Badge Search
query_badge = {
"and": [
{"field": "event_id", "op": "gt", "value": 0}
]
}
test_search("event_badge", query_badge, "Event Badge Search (event_id > 0)")
# 9. Event Location Search
query_location = {
"and": [
{"field": "name", "op": "like", "value": "%"}
]
}
test_search("event_location", query_location, "Event Location Search (has name)")
print("Tests Complete.")

View File

@@ -1,7 +1,12 @@
"""
This file centralizes the object type definitions for the Aether API.
It merges definitions from modular files in app/object_definitions/ to support
both V2 (legacy) and V3 CRUD operations.
"""
# Restore blanket imports for legacy compatibility (V1 and V2 rely on these)
from app.models.response_models import *
from app.models.api_crud_models import *
from app.models.account_models import *
from app.models.account_cfg_models import *
from app.models.activity_log_models import *
@@ -54,782 +59,26 @@ from app.models.sponsorship_cfg_models import *
from app.models.sponsorship_models import *
from app.models.user_models import *
from app.models.user_role_models import *
from app.models.e_stripe_models import *
# Modularized definitions
from app.object_definitions.core import core_obj_li
from app.object_definitions.events import event_obj_li
from app.object_definitions.journals import journal_obj_li
from app.object_definitions.orders import order_obj_li
from app.object_definitions.cms import cms_obj_li
from app.object_definitions.lookups import lu_obj_li
from app.object_definitions.membership import membership_obj_li
from app.object_definitions.other import other_obj_li
# Merge all modular definitions into the main registry
obj_type_kv_li = {
'activity_log': {
'tbl': 'activity_log',
'tbl_default': 'v_activity_log',
'tbl_update': 'activity_log',
'mdl': Activity_Log_Base,
'mdl_default': Activity_Log_Base,
'mdl_in': Activity_Log_Base,
'mdl_out': Activity_Log_Base,
# Legacy V2 keys:
'table_name': 'v_activity_log',
'tbl_name_update': 'activity_log',
'base_name': Activity_Log_Base,
},
'sponsorship': {
'tbl': 'sponsorship',
'tbl_default': 'v_sponsorship',
'tbl_update': 'sponsorship',
'mdl': Sponsorship_Base,
'mdl_default': Sponsorship_Base,
'mdl_in': Sponsorship_Base,
'mdl_out': Sponsorship_Base,
# Legacy V2 keys:
'table_name': 'v_sponsorship',
'tbl_name_update': 'sponsorship',
'base_name': Sponsorship_Base,
'exp_default': [
'sponsorship_id_random',
# 'account_id_random', 'sponsorship_cfg_id_random',
'name', 'description', 'website_url',
# 'logo_li_json', 'media_li_json',
# 'social_li_json', 'address_li_json', 'contact_li_json',
# 'other',
'level_num', 'level_str',
# 'amount', 'paid',
'agree',
# 'selected_option_li_json', 'questions_li_json',
'guest_li_json',
# 'staff_notes',
'comments',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
# 'poc__full_name', 'poc__email', 'poc__phone_mobile',
# 'address__mailing',
# 'logo__primary', 'logo__light', 'logo__dark',
# 'questions__accommodations', 'questions__accommodations_text',
# 'questions__public_recognition', 'questions__social_email', 'questions__dedicated_promos', 'questions__table_exhibit', 'questions__table_power', 'questions__plenary_session', 'questions__plenary_opening', 'questions__virtual_session',
# 'social__facebook', 'social__twitter', 'social__instagram', 'social__linkedin', 'social__org',
# 'organization_json', 'person_json', 'group_li_json', 'poc_json',
# 'sponsorship_cfg_id_random', 'sponsorship_cfg_name', , 'account_name',
# 'contact__full_name', 'contact__email', 'contact__phone',
# 'contact__1', 'contact__2', 'contact__3',
# 'guest__title',
# 'guest__dietary', 'guest__full_name', 'guest__comments', 'guest__given_name', , 'guest__ada', 'guest__family_name', 'guest__affiliations',
# 'guest__1', 'guest__2', 'guest__3', 'guest__4', 'guest__5', 'guest__6', 'guest__7', 'guest__8',
],
},
'sponsorship_cfg': {
'tbl': 'sponsorship_cfg',
'tbl_default': 'v_sponsorship_cfg',
'tbl_update': 'sponsorship_cfg',
'mdl': Sponsorship_Cfg_Base,
'mdl_default': Sponsorship_Cfg_Base,
# 'mdl_in': None,
# 'mdl_out': None
# Legacy V2 keys:
'table_name': 'v_sponsorship_cfg',
'tbl_name_update': 'sponsorship_cfg',
'base_name': Sponsorship_Cfg_Base,
},
# Updated 2024-08-14
'event': {
'tbl': 'event',
'tbl_default': 'v_event',
'tbl_alt': 'v_event_w_file_count',
'mdl': Event_Base,
'mdl_default': Event_Base,
'mdl_alt': Event_Meeting_Flat_Base,
# Legacy V2 keys:
'table_name': 'v_event',
'table_name_alt': 'v_event_w_file_count',
'tbl_name_update': 'event',
'base_name': Event_Base,
'base_name_alt': Event_Meeting_Flat_Base,
'exp_default': [
'event_id_random',
# 'external_person_id',
'conference', 'type',
'name', 'description',
# 'format', 'timezone', 'recurring', 'recurring_pattern', 'recurring_start_time', 'recurring_end_time', 'recurring_text',
# 'weekday_sunday', 'weekday_monday', 'weekday_tuesday', 'weekday_wednesday', 'weekday_thursday', 'weekday_friday', 'weekday_saturday',
# location_address_json,
'location_text', 'physical', 'virtual',
'attend_url', 'attend_url_text', 'attend_url_passcode', 'attend_phone', 'attend_phone_passcode', 'attend_text',
# attend_json,
'contact_1_id', 'contact_2_id',
# contact_li_json,
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
# default_qry_str,
],
'exp_idaa': [
'event_id_random',
'external_person_id', # IDAA Novi ID
'conference', 'type',
'name', 'description',
'format', 'timezone', 'recurring', 'recurring_pattern', 'recurring_start_time', 'recurring_end_time', 'recurring_text',
'weekday_sunday', 'weekday_monday', 'weekday_tuesday', 'weekday_wednesday', 'weekday_thursday', 'weekday_friday', 'weekday_saturday',
# location_address_json,
'location_text', 'physical', 'virtual',
'attend_url', 'attend_url_passcode', 'attend_phone', 'attend_phone_passcode', 'attend_text',
# attend_json,
'contact_1_id', 'contact_2_id',
# contact_li_json,
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
# default_qry_str,
],
},
'event_badge': {
'tbl': 'event_badge',
'tbl_default': 'v_event_badge',
'tbl_alt': 'v_event_badge_only',
'tbl_update': 'event_badge',
'mdl': Event_Badge_Base,
'mdl_default': Event_Badge_Basic_Base,
# 'mdl_alt': Event_Badge_Basic_Base
# Legacy V2 keys:
'table_name': 'v_event_badge',
'table_name_alt': 'v_event_badge_only',
'tbl_name_update': 'event_badge',
'base_name': Event_Badge_Basic_Base,
},
'event_badge_template': {
'tbl': 'event_badge_template',
'tbl_default': 'v_event_badge_template',
'tbl_update': 'event_badge_template',
'mdl': Event_Badge_Template_Base,
'mdl_default': Event_Badge_Template_Base,
# 'mdl_in': Event_Badge_Template_In_Base,
# 'mdl_out': Event_Badge_Template_Out_Base
# Legacy V2 keys:
'table_name': 'v_event_badge_template',
'tbl_name_update': 'event_badge_template',
'base_name': Event_Badge_Template_Base,
},
# Updated 2024-08-14
'event_device': {
'tbl': 'event_device',
'tbl_default': 'v_event_device',
'tbl_alt': 'v_event_device',
'mdl': Event_Device_Base,
'mdl_default': Event_Device_Base,
# Legacy V2 keys:
'table_name': 'v_event_device',
'tbl_name_update': 'event_device',
'base_name': Event_Device_Base,
},
# Updated 2024-08-14
'event_file': {
'tbl': 'event_file',
'tbl_default': 'v_event_file_simple', # 'v_event_file' or 'v_event_file_simple'
'tbl_alt': 'v_event_file', # or 'v_event_file_detail'
'mdl': Event_File_Base,
'mdl_default': Event_File_Base,
# Legacy V2 keys:
'table_name': 'v_event_file_simple',
'table_name_alt': 'v_event_file',
'tbl_name_update': 'event_file',
'base_name': Event_File_Base,
}, # Should this eventually be changed to event_hosted_file
# Updated 2024-08-14
'event_location': {
'tbl': 'event_location',
'tbl_default': 'v_event_location',
'tbl_alt': 'v_event_location_w_file_count',
'mdl': Event_Location_Base,
'mdl_default': Event_Location_Base,
# Legacy V2 keys:
'table_name': 'v_event_location',
'table_name_alt': 'v_event_location_w_file_count',
'tbl_name_update': 'event_location',
'base_name': Event_Location_Base,
},
# Updated 2024-08-14
'event_presentation': {
'tbl': 'event_presentation',
'tbl_default': 'v_event_presentation',
'tbl_alt': 'v_event_presentation_w_file_count',
'mdl': Event_Presentation_Base,
'mdl_default': Event_Presentation_Base,
# Legacy V2 keys:
'table_name': 'v_event_presentation',
'table_name_alt': 'v_event_presentation_w_file_count',
'tbl_name_update': 'event_presentation',
'base_name': Event_Presentation_Base,
},
# Updated 2024-08-14
'event_presenter': {
'tbl': 'event_presenter',
'tbl_default': 'v_event_presenter',
'tbl_alt': 'v_event_presenter_w_file_count',
'tbl_update': 'event_presenter',
'mdl': Event_Presenter_Base,
'mdl_default': Event_Presenter_Base,
'mdl_in': Event_Presenter_Base,
'mdl_out': Event_Presenter_Out_Base,
# Legacy V2 keys:
'table_name': 'v_event_presenter',
'table_name_alt': 'v_event_presenter_w_file_count',
'tbl_name_update': 'event_presenter',
'base_name': Event_Presenter_Base,
'exp_default': [
'event_presenter_id_random',
# 'account_id_random',
'title_names', 'given_name', 'middle_name', 'family_name', 'designations',
'professional_title', 'full_name',
'affiliations',
'email', 'biography',
# 'image_li_json', 'social_li_json',
'agree',
'comments',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
# Updated 2024-08-14
'event_session': {
'tbl': 'event_session',
'tbl_default': 'v_event_session',
'tbl_alt': 'v_event_session_w_file_count',
'tbl_name_update': 'event_session',
'mdl': Event_Session_Base,
'mdl_default': Event_Session_Base,
'exclude_for_db': {'poc_person_id', 'file_count', 'internal_use_count', 'enable_from', 'enable_to', 'event_name', 'event_start_datetime', 'event_end_datetime', 'event_location_name', 'event_track_name', 'event_abstract_list', 'event_badge_list', 'event_device_list', 'event_file_list', 'event_file_internal_use_list', 'event_location', 'event_location_list', 'event_person_list', 'event_presenter_cat', 'event_presentation_list', 'event_presenter_list', 'event_track', 'poc_event_person'},
# Legacy V2 keys:
'table_name': 'v_event_session',
'tbl_name_update': 'event_session',
'base_name': Event_Session_Base,
},
# Updated 2024-09-27
'archive': {
'tbl': 'archive',
'tbl_default': 'v_archive',
'tbl_update': 'archive',
'mdl': Archive_Base,
'mdl_default': Archive_Base,
'mdl_in': Archive_Base,
'mdl_out': Archive_Base,
# Legacy V2 keys:
'table_name': 'v_archive',
'tbl_name_update': 'archive',
'base_name': Archive_Base,
'exp_default': [
'archive_id_random',
'account_id_random',
'archive_type_id_random',
'name', 'description',
'content_html', 'content_json',
'url', 'url_text',
'hosted_file_id_random',
'file_path',
'filename', 'file_extension',
'original_datetime', 'original_timezone', 'original_location', 'original_address_id',
'original_url', 'original_url_text',
'meta_data', 'access_key',
'sort_by', 'sort_by_desc',
'enable', 'enable_from', 'enable_to',
'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
# Updated 2024-09-27
'archive_content': {
'tbl': 'archive_content',
'tbl_default': 'v_archive_content',
'tbl_update': 'archive_content',
'mdl': Archive_Content_Base,
'mdl_default': Archive_Content_Base,
'mdl_in': Archive_Content_Base,
'mdl_out': Archive_Content_Base,
# Legacy V2 keys:
'table_name': 'v_archive_content',
'tbl_name_update': 'archive_content',
'base_name': Archive_Content_Base,
'exp_default': [
'archive_content_id_random',
'archive_id_random',
'archive_content_type_id_random',
'lu_media_type_id_random',
'name', 'description',
'content_html', 'content_json',
'content_url', 'content_url_text',
'hosted_file_id_random',
'file_path',
'filename', 'file_extension',
'original_datetime', 'original_timezone', 'original_location', 'original_address_id',
'original_url', 'original_url_text',
'meta_data', 'access_key',
'enable_for_public',
'enable', 'enable_from', 'enable_to',
'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
# Updated 2025-01-07
'hosted_file': {
'tbl': 'hosted_file',
'tbl_default': 'v_hosted_file',
'tbl_update': 'hosted_file',
'mdl': Hosted_File_Base,
'mdl_default': Hosted_File_Base,
'mdl_in': Hosted_File_Base,
'mdl_out': Hosted_File_Base,
# Legacy V2 keys:
'table_name': 'v_hosted_file',
'tbl_name_update': 'hosted_file',
'base_name': Hosted_File_Base,
'exp_default': [
'hosted_file_id_random',
'hash_sha256',
'account_id_random',
'title', 'description',
'filename', 'extension',
'content_type'
'enable'
'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
# Updated 2025-03-16
'journal': {
'tbl': 'journal',
'tbl_default': 'v_journal',
'tbl_update': 'journal',
'mdl': Journal_Base,
'mdl_default': Journal_Base,
'mdl_in': Journal_Base,
'mdl_out': Journal_Base,
# Legacy V2 keys:
'table_name': 'v_journal',
'tbl_name_update': 'journal',
'base_name': Journal_Base,
'exp_default': [
'journal_id_random',
# 'account_id_random',
'title', 'description',
# 'enable', 'hide', 'priority', 'sort', 'group', 'notes',
# 'created_on', 'updated_on',
],
},
# Updated 2025-03-16
'journal_entry': {
'tbl': 'journal_entry',
'tbl_default': 'v_journal_entry',
'tbl_update': 'journal_entry',
'mdl': Journal_Entry_Base,
'mdl_default': Journal_Entry_Base,
'mdl_in': Journal_Entry_Base,
'mdl_out': Journal_Entry_Base,
# Legacy V2 keys:
'table_name': 'v_journal_entry',
'tbl_name_update': 'journal_entry',
'base_name': Journal_Entry_Base,
'exp_default': [
'journal_entry_id_random',
# 'account_id_random', 'journal_id_random',
# 'title', 'content',
# 'enable', 'hide', 'priority', 'sort', 'group', 'notes',
# 'created_on', 'updated_on',
],
},
# Updated 2024-09-27
'post': {
'tbl': 'post',
'tbl_default': 'v_post',
'tbl_alt': 'v_post_detail',
'tbl_update': 'post',
'mdl': Post_Base,
'mdl_default': Post_Base,
'mdl_in': Post_Base,
'mdl_out': Post_Base,
# Legacy V2 keys:
'table_name': 'v_post',
'table_name_alt': 'v_post_detail',
'tbl_name_update': 'post',
'base_name': Post_Base,
'exp_default': [
'post_id_random',
'account_id_random',
'title', 'content',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
# Updated 2024-09-27
'post_comment': {
'tbl': 'post_comment',
'tbl_default': 'v_post_comment',
'tbl_alt': 'v_post_comment_detail',
'tbl_update': 'post_comment',
'mdl': Post_Comment_Base,
'mdl_default': Post_Comment_Base,
'mdl_in': Post_Comment_Base,
'mdl_out': Post_Comment_Base,
# Legacy V2 keys:
'table_name': 'v_post_comment',
'table_name_alt': 'v_post_comment_detail',
'tbl_name_update': 'post_comment',
'base_name': Post_Comment_Base,
'exp_default': [
'post_comment_id_random',
'account_id_random', 'post_id_random',
'content',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
'account': {
'tbl': 'account',
'tbl_default': 'account',
'tbl_update': 'account',
'mdl': Account_Base,
'mdl_default': Account_Base,
'mdl_in': Account_Base,
'mdl_out': Account_Base,
# Legacy V2 keys:
'table_name': 'account',
'tbl_name_update': 'account',
'base_name': Account_Base,
},
'account_cfg': {
'tbl': 'account_cfg',
'tbl_default': 'v_account_cfg',
'tbl_update': 'account_cfg',
'mdl': Account_Cfg_Base,
'mdl_default': Account_Cfg_Base,
'mdl_in': Account_Cfg_Base,
'mdl_out': Account_Cfg_Base,
# Legacy V2 keys:
'table_name': 'v_account_cfg',
'tbl_name_update': 'account_cfg',
'base_name': Account_Cfg_Base,
},
'address': {
'tbl': 'address',
'tbl_default': 'v_address',
'tbl_update': 'address',
'mdl': Address_Base,
'mdl_default': Address_Base,
'mdl_in': Address_Base,
'mdl_out': Address_Base,
# Legacy V2 keys:
'table_name': 'v_address',
'tbl_name_update': 'address',
'base_name': Address_Base,
},
'contact': {
'tbl': 'contact',
'tbl_default': 'v_contact',
'tbl_update': 'contact',
'mdl': Contact_Base,
'mdl_default': Contact_Base,
'mdl_in': Contact_Base,
'mdl_out': Contact_Base,
# Legacy V2 keys:
'table_name': 'v_contact',
'tbl_name_update': 'contact',
'base_name': Contact_Base,
},
'data_store': {
'tbl': 'data_store',
'tbl_default': 'v_data_store',
'tbl_update': 'data_store',
'mdl': Data_Store_Base,
'mdl_default': Data_Store_Base,
'mdl_in': Data_Store_Base,
'mdl_out': Data_Store_Base,
# Legacy V2 keys:
'table_name': 'v_data_store',
'tbl_name_update': 'data_store',
'base_name': Data_Store_Base,
},
'organization': {
'tbl': 'organization',
'tbl_default': 'v_organization',
'tbl_update': 'organization',
'mdl': Organization_Base,
'mdl_default': Organization_Base,
'mdl_in': Organization_Base,
'mdl_out': Organization_Base,
# Legacy V2 keys:
'table_name': 'v_organization',
'tbl_name_update': 'organization',
'base_name': Organization_Base,
},
'page': {
'tbl': 'page',
'tbl_default': 'page',
'tbl_update': 'page',
'mdl': Page_Base,
'mdl_default': Page_Base,
'mdl_in': Page_Base,
'mdl_out': Page_Base,
# Legacy V2 keys:
'table_name': 'page',
'tbl_name_update': 'page',
'base_name': Page_Base,
},
'site': {
'tbl': 'site',
'tbl_default': 'site',
'tbl_update': 'site',
'mdl': Site_Base,
'mdl_default': Site_Base,
'mdl_in': Site_Base,
'mdl_out': Site_Base,
# Legacy V2 keys:
'table_name': 'site',
'tbl_name_update': 'site',
'base_name': Site_Base,
},
'site_domain': {
'tbl': 'site_domain',
'tbl_default': 'v_site_domain',
'tbl_alt': 'v_site_domain_fqdn_id',
'tbl_update': 'site_domain',
'mdl': Site_Domain_Base,
'mdl_default': Site_Domain_Base,
'mdl_alt': Site_Domain_FQDN_ID_Base,
'mdl_in': Site_Domain_Base,
'mdl_out': Site_Domain_Base,
# Legacy V2 keys:
'table_name': 'v_site_domain',
'table_name_alt': 'v_site_domain_fqdn_id',
'tbl_name_update': 'site_domain',
'base_name': Site_Domain_Base,
'base_name_alt': Site_Domain_FQDN_ID_Base,
},
'order': {
'tbl': 'order',
'tbl_default': 'v_order',
'tbl_update': 'order',
'mdl': Order_Base,
'mdl_default': Order_Base,
'mdl_in': Order_DB_Base,
'mdl_out': Order_Base,
# Legacy V2 keys:
'table_name': 'v_order',
'tbl_name_update': 'order',
'base_name': Order_Base,
},
'order_line': {
'tbl': 'order_line',
'tbl_default': 'v_order_line',
'tbl_update': 'order_line',
'mdl': Order_Line_Base,
'mdl_default': Order_Line_Base,
'mdl_in': Order_Line_Base,
'mdl_out': Order_Line_Base,
# Legacy V2 keys:
'table_name': 'v_order_line',
'tbl_name_update': 'order_line',
'base_name': Order_Line_Base,
},
# Include the lookup lists.
# Updated 2025-01-13
'lu_country': {
'tbl': 'lu_country',
'tbl_default': 'v_lu_country',
'tbl_alt': None,
'tbl_update': 'lu_country',
'mdl': None,
'mdl_default': None,
'mdl_in': None,
'mdl_out': None,
# Legacy V2 keys:
'table_name': 'v_lu_country',
'tbl_name_update': 'lu_country',
'base_name': None,
},
# Updated 2025-01-13
'lu_country_subdivision': {
'tbl': 'lu_country_subdivision',
'tbl_default': 'v_lu_country_subdivision',
'tbl_alt': None,
'tbl_update': 'lu_country_subdivision',
'mdl': None,
'mdl_default': None,
'mdl_in': None,
'mdl_out': None,
# Legacy V2 keys:
'table_name': 'v_lu_country_subdivision',
'tbl_name_update': 'lu_country_subdivision',
'base_name': None,
},
# Updated 2025-01-13
'lu_time_zone': {
'tbl': 'lu_time_zone',
'tbl_default': 'v_lu_time_zone',
'tbl_alt': 'v_lu_time_zone_cust',
'tbl_update': 'lu_time_zone',
'mdl': None,
'mdl_default': None,
'mdl_in': None,
'mdl_out': None,
# Legacy V2 keys:
'table_name': 'v_lu_time_zone',
'tbl_name_update': 'lu_time_zone',
'base_name': None,
},
# Updated 2025-04-04
'person': {
'tbl': 'v_person',
'tbl_default': 'v_person',
'tbl_alt': 'v_person',
'tbl_update': 'person',
'mdl': Person_Base,
'mdl_default': Person_Base,
'mdl_in': Person_Base, # For input
'mdl_out': Person_Base, # For output
# Legacy V2 keys:
'table_name': 'v_person',
'tbl_name_update': 'person',
'base_name': Person_Base,
'exp_default': [
'person_id_random',
'given_name', 'middle_name', 'family_name', 'full_name',
'primary_email',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
# Updated 2025-04-04
'user': {
'tbl': 'v_user',
'tbl_default': 'v_user',
'tbl_alt': 'v_user',
'tbl_update': 'user',
'mdl': User_Base,
'mdl_default': User_Base,
'mdl_in': User_New_Base, # For input when creating a new user
'mdl_out': User_Out_Base, # For output
# Legacy V2 keys:
'table_name': 'v_user',
'tbl_name_update': 'user',
'base_name': User_Base,
'exp_default': [
'user_id_random',
'account_id_random', # Foreign key to account
'username', 'name', 'email',
# Passwords should not be exported.
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
**core_obj_li,
**event_obj_li,
**journal_obj_li,
**order_obj_li,
**cms_obj_li,
**lu_obj_li,
**membership_obj_li,
**other_obj_li,
}
# WARNING: These must be updated soon!
# New 2024-04-23
# obj_type_kv_li['example_template'] = {'tbl': 'example_template', 'tbl_default': 'v_example_template', 'tbl_update': 'example_template', 'mdl': Example_Template_Base, 'mdl_in': Example_Template_In_Base, 'mdl_out': Example_Template_Out_Base }
# obj_type_kv_li['sponsorship'] = {'tbl': 'sponsorship', 'tbl_default': 'v_sponsorship', 'tbl_update': 'sponsorship', 'mdl': Sponsorship_Base, 'mdl_in': None, 'mdl_out': None }
# obj_type_kv_li['sponsorship_cfg'] = {'table_name': 'v_sponsorship_cfg', 'tbl_name_update': 'sponsorship_cfg', 'base_name': Sponsorship_Cfg_Base}
# ### Need to update everything below this line! ###
# ### Core module objects
# obj_type_kv_li['account'] = {'table_name': 'account', 'tbl_name_update': 'account', 'base_name': Account_Base}
# obj_type_kv_li['account_cfg'] = {'table_name': 'v_account_cfg', 'tbl_name_update': 'account_cfg', 'base_name': Account_Cfg_Base} # NOTE check view name: *_detail?
# obj_type_kv_li['address'] = {'table_name': 'v_address', 'tbl_name_update': 'address', 'base_name': Address_Base}
# obj_type_kv_li['contact'] = {'table_name': 'v_contact', 'tbl_name_update': 'contact', 'base_name': Contact_Base}
# obj_type_kv_li['data_store'] = {'table_name': 'v_data_store', 'tbl_name_update': 'data_store', 'base_name': Data_Store_Base}
obj_type_kv_li['log_client_viewing'] = {'table_name': 'log_client_viewing', 'tbl_name_update': 'log_client_viewing', 'base_name': Log_Client_Viewing_Base}
# obj_type_kv_li['order'] = {'table_name': 'v_order', 'tbl_name_update': 'order', 'base_name': Order_Base}
obj_type_kv_li['order_cart'] = {'table_name': 'v_order_cart', 'tbl_name_update': 'order_cart', 'base_name': Order_Cart_Base}
obj_type_kv_li['order_cart_line'] = {'table_name': 'v_order_cart_line', 'tbl_name_update': 'order_cart_line', 'base_name': Order_Cart_Line_Base}
# obj_type_kv_li['order_line'] = {'table_name': 'v_order_line', 'tbl_name_update': 'order_line', 'base_name': Order_Line_Base}
#obj_type_kv_li['order_transaction'] = {'table_name': 'order_transaction', 'tbl_name_update': 'order_transaction', 'base_name': Order_Transaction_Base}
# obj_type_kv_li['organization'] = {'table_name': 'v_organization', 'tbl_name_update': 'organization', 'base_name': Organization_Base}
# obj_type_kv_li['page'] = {'table_name': 'page', 'tbl_name_update': 'page', 'base_name': Page_Base}
# obj_type_kv_li['site'] = {'table_name': 'site', 'tbl_name_update': 'site', 'base_name': Site_Base}
# obj_type_kv_li['site_domain'] = {'table_name': 'v_site_domain', 'table_name_alt': 'v_site_domain_fqdn_id', 'tbl_name_update': 'site_domain', 'base_name': Site_Domain_Base, 'base_name_alt': Site_Domain_FQDN_ID_Base} # NOTE check view name: *_detail?
obj_type_kv_li['user_role'] = {'table_name': 'v_user_role', 'tbl_name_update': 'user_role', 'base_name': User_Role_Base} # NOTE check view name: *_detail?
# ### Common shared lookup objects
# obj_type_kv_li['lu_country'] = {'table_name': 'lu_country', 'tbl_name_update': 'lu_country', 'base_name': None}
# obj_type_kv_li['lu_country_subdivision'] = {'table_name': 'lu_country_subdivision', 'tbl_name_update': 'lu_country_subdivision', 'base_name': None}
#obj_type_kv_li['lu_education_degree'] = {'table_name': 'lu_education_degree', 'tbl_name_update': 'lu_education_degree', 'base_name': Lu_Education_Degree_Base}
#obj_type_kv_li['lu_education_level'] = {'table_name': 'lu_education_level', 'tbl_name_update': 'lu_education_level', 'base_name': Lu_Education_Level_Base}
#obj_type_kv_li['lu_ethnicity'] = {'table_name': 'lu_ethnicity', 'tbl_name_update': 'lu_ethnicity', 'base_name': Lu_Ethnicity_Base}
#obj_type_kv_li['lu_file_purpose'] = {'table_name': 'lu_file_purpose', 'tbl_name_update': 'lu_file_purpose', 'base_name': Lu_File_Purpose_Base}
#obj_type_kv_li['lu_gender'] = {'table_name': 'lu_gender', 'tbl_name_update': 'lu_gender', 'base_name': Lu_Gender_Base}
#obj_type_kv_li['lu_html_color'] = {'table_name': 'lu_html_color', 'tbl_name_update': 'lu_html_color', 'base_name': Lu_Html_Color_Base}
#obj_type_kv_li['lu_media_type'] = {'table_name': 'lu_media_type', 'tbl_name_update': 'lu_media_type', 'base_name': Lu_Media_Type_Base}
#obj_type_kv_li['lu_membership_status'] = {'table_name': 'lu_membership_status', 'tbl_name_update': 'lu_membership_status', 'base_name': Lu_Membership_Status_Base}
#obj_type_kv_li['lu_membership_type'] = {'table_name': 'lu_membership_type', 'tbl_name_update': 'lu_membership_type', 'base_name': Lu_Membership_Type_Base}
#obj_type_kv_li['lu_order_status'] = {'table_name': 'lu_order_status', 'tbl_name_update': 'lu_order_status', 'base_name': Lu_Order_Status_Base}
#obj_type_kv_li['lu_post_topic'] = {'table_name': 'lu_post_topic', 'tbl_name_update': 'lu_post_topic', 'base_name': Lu_Post_Topic_Base}
#obj_type_kv_li['lu_product_type'] = {'table_name': 'lu_product_type', 'tbl_name_update': 'lu_product_type', 'base_name': Lu_Product_Type_Base}
#obj_type_kv_li['lu_pronoun'] = {'table_name': 'lu_pronoun', 'tbl_name_update': 'lu_pronoun', 'base_name': Lu_Pronoun_Base}
#obj_type_kv_li['lu_race'] = {'table_name': 'lu_race', 'tbl_name_update': 'lu_race', 'base_name': Lu_Race_Base}
# obj_type_kv_li['lu_time_zone'] = {'table_name': 'v_lu_time_zone', 'tbl_name_update': 'lu_time_zone', 'base_name': None}
#obj_type_kv_li['lu_user_role'] = {'table_name': 'lu_user_role', 'tbl_name_update': 'lu_user_role', 'base_name': Lu_User_Role_Base}
#obj_type_kv_li['lu_user_status'] = {'table_name': 'lu_user_status', 'tbl_name_update': 'lu_user_status', 'base_name': Lu_User_Status_Base}
# ### Additional module objects
# ARCHIVE MOVED UP
# obj_type_kv_li['archive'] = {'table_name': 'v_archive', 'table_name_alt': 'v_archive_w_content_count', 'tbl_name_update': 'archive', 'base_name': Archive_Base}
# ARCHIVE CONTENT MOVED UP
# obj_type_kv_li['archive_content'] = {'table_name': 'v_archive_content', 'tbl_name_update': 'archive_content', 'base_name': Archive_Content_Base}
obj_type_kv_li['cont_edu_cert'] = {'table_name': 'v_cont_edu_cert', 'tbl_name_update': 'cont_edu_cert', 'base_name': Cont_Edu_Cert_Base}
obj_type_kv_li['cont_edu_cert_person'] = {'table_name': 'v_cont_edu_cert_person', 'tbl_name_update': 'cont_edu_cert_person', 'base_name': Cont_Edu_Cert_Person_Base}
# EVENT MOVED UP
# EVENT DEVICE MOVED UP
# EVENT LOCATION MOVED UP
# EVENT PRESENTER MOVED UP
# EVENT SESSION MOVED UP
obj_type_kv_li['event_abstract'] = {'table_name': 'v_event_abstract', 'tbl_name_update': 'event_abstract', 'base_name': Event_Abstract_In}
# obj_type_kv_li['event_badge'] = {'table_name': 'v_event_badge', 'table_name_alt': 'v_event_badge_only', 'tbl_name_update': 'event_badge', 'base_name': Event_Badge_Base, 'base_name_alt': Event_Badge_Basic_Base}
#obj_type_kv_li['event_badge_log'] = {'table_name': 'event_badge_log', 'tbl_name_update': 'event_badge_log', 'base_name': Event_Badge_Log_Base}
#obj_type_kv_li['event_badge_template'] = {'table_name': 'event_badge_template', 'tbl_name_update': 'event_badge_template', 'base_name': Event_Badge_Template_Base}
obj_type_kv_li['event_exhibit'] = {'table_name': 'v_event_exhibit', 'tbl_name_update': 'event_exhibit', 'base_name': Event_Exhibit_Base} # NOTE check view name: *_detail?
obj_type_kv_li['event_exhibit_tracking'] = {'table_name': 'v_event_exhibit_tracking', 'tbl_name_update': 'event_exhibit_tracking', 'base_name': Event_Exhibit_Tracking_Base}
# NOTE: Using v_event_file_simple instead of v_event_file because of linking with for_type and for_id versus event_id, event_session_id, event_presenter_id, etc. 2022-08-19
# NOTE: This will not pull in linked to details like a session name, presentation time, or presenter name.
obj_type_kv_li['event_person'] = {'table_name': 'v_event_person', 'tbl_name_update': 'event_person', 'base_name': Event_Person_Base}
obj_type_kv_li['event_person_tracking'] = {'table_name': 'v_event_person_tracking', 'tbl_name_update': 'event_person_tracking', 'base_name': Event_Person_Tracking_Base}
# obj_type_kv_li['event_presenter'] = {'table_name': 'v_event_presenter', 'table_name_alt': 'v_event_presenter_w_file_count', 'tbl_name_update': 'event_presenter', 'base_name': Event_Presenter_Base}
obj_type_kv_li['event_registration'] = {'table_name': 'v_event_registration', 'tbl_name_update': 'event_registration', 'base_name': Event_Registration_Base}
obj_type_kv_li['event_track'] = {'table_name': 'v_event_track', 'tbl_name_update': 'event_track', 'base_name': Event_Track_Base}
obj_type_kv_li['grant'] = {'table_name': 'v_grant', 'tbl_name_update': 'grant', 'base_name': Grant_Base}
# obj_type_kv_li['journal'] = {'table_name': 'v_journal', 'tbl_name_update': 'journal', 'base_name': Journal_Base}
# obj_type_kv_li['journal_entry'] = {'table_name': 'v_journal_entry', 'tbl_name_update': 'journal_entry', 'base_name': Journal_Entry_Base}
#obj_type_kv_li['log'] = {'table_name': 'log', 'tbl_name_update': 'log', 'base_name': Log_Base} #'v_log'
obj_type_kv_li['membership_cfg'] = {'table_name': 'v_membership_cfg', 'tbl_name_update': 'membership_cfg', 'base_name': Membership_Cfg_Base}
obj_type_kv_li['membership_group'] = {'table_name': 'v_membership_group', 'tbl_name_update': 'membership_group', 'base_name': Membership_Group_Base}
obj_type_kv_li['membership_person_group'] = {'table_name': 'v_membership_person_group', 'tbl_name_update': 'membership_person_group', 'base_name': Membership_Person_Group_Base}
obj_type_kv_li['membership_person'] = {'table_name': 'v_membership_person', 'tbl_name_update': 'membership_person', 'base_name': Membership_Person_Base}
obj_type_kv_li['membership_person_profile'] = {'table_name': 'v_membership_person_profile', 'tbl_name_update': 'membership_person_profile', 'base_name': Membership_Person_Profile_Base}
obj_type_kv_li['membership_type'] = {'table_name': 'v_membership_type', 'tbl_name_update': 'membership_type', 'base_name': Membership_Type_Base}
obj_type_kv_li['membership_person_type'] = {'table_name': 'v_membership_person_type', 'tbl_name_update': 'membership_person_type', 'base_name': Membership_Person_Type_Base}
#obj_type_kv_li['message'] = {'table_name': 'message', 'tbl_name_update': 'message', 'base_name': Message_Base} #'v_message'
# POST MOVED UP
# obj_type_kv_li['post'] = {'table_name': 'v_post', 'tbl_name_update': 'post', 'base_name': Post_Base} # NOTE check view name: *_detail?
# POST COMMENT MOVED UP
# obj_type_kv_li['post_comment'] = {'table_name': 'v_post_comment', 'tbl_name_update': 'post_comment', 'base_name': Post_Comment_Base} # NOTE check view name: *_detail?
obj_type_kv_li['product'] = {'table_name': 'v_product', 'tbl_name_update': 'product', 'base_name': Product_Base}
#obj_type_kv_li['stripe_customer'] = {'table_name': 'stripe_customer', 'tbl_name_update': 'stripe_customer', 'base_name': Stripe_Customer_Base}
obj_type_kv_li['stripe_log'] = {'table_name': 'stripe_log', 'tbl_name_update': 'stripe_log', 'base_name': Stripe_Log_Base_In}
# obj_type_kv_li['c_idda_membership_person_profile'] = {'table_name': 'c_idda_membership_person_profile', 'base_name': C_Idda_membership_person_profile_Base}
# obj_type_kv_li['c_osit_demo_membership_person_profile'] = {'table_name': 'c_osit_demo_membership_person_profile', 'base_name': C_Osit_Demo_membership_person_profile_Base}

View File

View File

@@ -0,0 +1,93 @@
from app.models.page_models import *
from app.models.post_models import *
from app.models.post_comment_models import *
from app.models.site_models import *
from app.models.site_domain_models import *
cms_obj_li = {
'page': {
'tbl': 'page',
'tbl_default': 'page',
'tbl_update': 'page',
'mdl': Page_Base,
'mdl_default': Page_Base,
'mdl_in': Page_Base,
'mdl_out': Page_Base,
# Legacy V2 keys:
'table_name': 'page',
'tbl_name_update': 'page',
'base_name': Page_Base,
},
'post': {
'tbl': 'post',
'tbl_default': 'v_post',
'tbl_alt': 'v_post_detail',
'tbl_update': 'post',
'mdl': Post_Base,
'mdl_default': Post_Base,
'mdl_in': Post_Base,
'mdl_out': Post_Base,
# Legacy V2 keys:
'table_name': 'v_post',
'table_name_alt': 'v_post_detail',
'tbl_name_update': 'post',
'base_name': Post_Base,
'exp_default': [
'post_id_random',
'account_id_random',
'title', 'content',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
'post_comment': {
'tbl': 'post_comment',
'tbl_default': 'v_post_comment',
'tbl_alt': 'v_post_comment_detail',
'tbl_update': 'post_comment',
'mdl': Post_Comment_Base,
'mdl_default': Post_Comment_Base,
'mdl_in': Post_Comment_Base,
'mdl_out': Post_Comment_Base,
# Legacy V2 keys:
'table_name': 'v_post_comment',
'table_name_alt': 'v_post_comment_detail',
'tbl_name_update': 'post_comment',
'base_name': Post_Comment_Base,
'exp_default': [
'post_comment_id_random',
'account_id_random', 'post_id_random',
'content',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
'site': {
'tbl': 'site',
'tbl_default': 'site',
'tbl_update': 'site',
'mdl': Site_Base,
'mdl_default': Site_Base,
'mdl_in': Site_Base,
'mdl_out': Site_Base,
# Legacy V2 keys:
'table_name': 'site',
'tbl_name_update': 'site',
'base_name': Site_Base,
},
'site_domain': {
'tbl': 'site_domain',
'tbl_default': 'v_site_domain',
'tbl_alt': 'v_site_domain_fqdn_id',
'tbl_update': 'site_domain',
'mdl': Site_Domain_Base,
'mdl_default': Site_Domain_Base,
'mdl_alt': Site_Domain_FQDN_ID_Base,
'mdl_in': Site_Domain_Base,
'mdl_out': Site_Domain_Base,
# Legacy V2 keys:
'table_name': 'v_site_domain',
'table_name_alt': 'v_site_domain_fqdn_id',
'tbl_name_update': 'site_domain',
'base_name': Site_Domain_Base,
'base_name_alt': Site_Domain_FQDN_ID_Base,
},
}

View File

@@ -0,0 +1,159 @@
from app.models.account_models import *
from app.models.account_cfg_models import *
from app.models.activity_log_models import *
from app.models.address_models import *
from app.models.contact_models import *
from app.models.data_store_models import *
from app.models.organization_models import *
from app.models.person_models import *
from app.models.user_models import *
from app.models.user_role_models import *
from app.models.log_client_viewing_models import Log_Client_Viewing_Base
core_obj_li = {
'activity_log': {
'tbl': 'activity_log',
'tbl_default': 'v_activity_log',
'tbl_update': 'activity_log',
'mdl': Activity_Log_Base,
'mdl_default': Activity_Log_Base,
'mdl_in': Activity_Log_Base,
'mdl_out': Activity_Log_Base,
# Legacy V2 keys:
'table_name': 'v_activity_log',
'tbl_name_update': 'activity_log',
'base_name': Activity_Log_Base,
},
'account': {
'tbl': 'account',
'tbl_default': 'account',
'tbl_update': 'account',
'mdl': Account_Base,
'mdl_default': Account_Base,
'mdl_in': Account_Base,
'mdl_out': Account_Base,
# Legacy V2 keys:
'table_name': 'account',
'tbl_name_update': 'account',
'base_name': Account_Base,
},
'account_cfg': {
'tbl': 'account_cfg',
'tbl_default': 'v_account_cfg',
'tbl_update': 'account_cfg',
'mdl': Account_Cfg_Base,
'mdl_default': Account_Cfg_Base,
'mdl_in': Account_Cfg_Base,
'mdl_out': Account_Cfg_Base,
# Legacy V2 keys:
'table_name': 'v_account_cfg',
'tbl_name_update': 'account_cfg',
'base_name': Account_Cfg_Base,
},
'address': {
'tbl': 'address',
'tbl_default': 'v_address',
'tbl_update': 'address',
'mdl': Address_Base,
'mdl_default': Address_Base,
'mdl_in': Address_Base,
'mdl_out': Address_Base,
# Legacy V2 keys:
'table_name': 'v_address',
'tbl_name_update': 'address',
'base_name': Address_Base,
},
'contact': {
'tbl': 'contact',
'tbl_default': 'v_contact',
'tbl_update': 'contact',
'mdl': Contact_Base,
'mdl_default': Contact_Base,
'mdl_in': Contact_Base,
'mdl_out': Contact_Base,
# Legacy V2 keys:
'table_name': 'v_contact',
'tbl_name_update': 'contact',
'base_name': Contact_Base,
},
'data_store': {
'tbl': 'data_store',
'tbl_default': 'v_data_store',
'tbl_update': 'data_store',
'mdl': Data_Store_Base,
'mdl_default': Data_Store_Base,
'mdl_in': Data_Store_Base,
'mdl_out': Data_Store_Base,
# Legacy V2 keys:
'table_name': 'v_data_store',
'tbl_name_update': 'data_store',
'base_name': Data_Store_Base,
},
'organization': {
'tbl': 'organization',
'tbl_default': 'v_organization',
'tbl_update': 'organization',
'mdl': Organization_Base,
'mdl_default': Organization_Base,
'mdl_in': Organization_Base,
'mdl_out': Organization_Base,
# Legacy V2 keys:
'table_name': 'v_organization',
'tbl_name_update': 'organization',
'base_name': Organization_Base,
},
'person': {
'tbl': 'v_person',
'tbl_default': 'v_person',
'tbl_alt': 'v_person',
'tbl_update': 'person',
'mdl': Person_Base,
'mdl_default': Person_Base,
'mdl_in': Person_Base,
'mdl_out': Person_Base,
# Legacy V2 keys:
'table_name': 'v_person',
'tbl_name_update': 'person',
'base_name': Person_Base,
'exp_default': [
'person_id_random',
'given_name', 'middle_name', 'family_name', 'full_name',
'primary_email',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
'user': {
'tbl': 'v_user',
'tbl_default': 'v_user',
'tbl_alt': 'v_user',
'tbl_update': 'user',
'mdl': User_Base,
'mdl_default': User_Base,
'mdl_in': User_New_Base,
'mdl_out': User_Out_Base,
# Legacy V2 keys:
'table_name': 'v_user',
'tbl_name_update': 'user',
'base_name': User_Base,
'exp_default': [
'user_id_random',
'account_id_random',
'username', 'name', 'email',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
'user_role': {
'mdl': User_Role_Base,
# Legacy V2 keys:
'table_name': 'v_user_role',
'tbl_name_update': 'user_role',
'base_name': User_Role_Base,
},
'log_client_viewing': {
'mdl': Log_Client_Viewing_Base,
# Legacy V2 keys:
'table_name': 'log_client_viewing',
'tbl_name_update': 'log_client_viewing',
'base_name': Log_Client_Viewing_Base,
},
}

View File

@@ -0,0 +1,267 @@
from app.models.event_models import *
from app.models.event_abstract_models import *
from app.models.event_badge_models import *
from app.models.event_badge_template_models import *
from app.models.event_device_models import *
from app.models.event_exhibit_models import *
from app.models.event_exhibit_tracking_models import *
from app.models.event_file_models import *
from app.models.event_location_models import *
from app.models.event_person_models import *
from app.models.event_person_tracking_models import *
from app.models.event_presentation_models import *
from app.models.event_presenter_models import *
from app.models.event_registration_models import *
from app.models.event_session_models import *
from app.models.event_track_models import *
event_obj_li = {
'event': {
'tbl': 'event',
'tbl_default': 'v_event',
'tbl_alt': 'v_event_w_file_count',
'tbl_update': 'event',
'mdl': Event_Base,
'mdl_default': Event_Base,
'mdl_alt': Event_Meeting_Flat_Base,
'mdl_in': Event_Base,
'mdl_out': Event_Base,
# Legacy V2 keys:
'table_name': 'v_event',
'table_name_alt': 'v_event_w_file_count',
'tbl_name_update': 'event',
'base_name': Event_Base,
'base_name_alt': Event_Meeting_Flat_Base,
'exp_default': [
'event_id_random',
'conference', 'type',
'name', 'description',
'location_text', 'physical', 'virtual',
'attend_url', 'attend_url_text', 'attend_url_passcode', 'attend_phone', 'attend_phone_passcode', 'attend_text',
'contact_1_id', 'contact_2_id',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
'exp_idaa': [
'event_id_random',
'external_person_id', # IDAA Novi ID
'conference', 'type',
'name', 'description',
'format', 'timezone', 'recurring', 'recurring_pattern', 'recurring_start_time', 'recurring_end_time', 'recurring_text',
'weekday_sunday', 'weekday_monday', 'weekday_tuesday', 'weekday_wednesday', 'weekday_thursday', 'weekday_friday', 'weekday_saturday',
'location_text', 'physical', 'virtual',
'attend_url', 'attend_url_passcode', 'attend_phone', 'attend_phone_passcode', 'attend_text',
'contact_1_id', 'contact_2_id',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
'event_abstract': {
'tbl': 'event_abstract',
'tbl_default': 'v_event_abstract',
'tbl_update': 'event_abstract',
'mdl': Event_Abstract_In,
'mdl_default': Event_Abstract_In,
'mdl_in': Event_Abstract_In,
'mdl_out': Event_Abstract_In,
# Legacy V2 keys:
'table_name': 'v_event_abstract',
'tbl_name_update': 'event_abstract',
'base_name': Event_Abstract_In,
},
'event_badge': {
'tbl': 'event_badge',
'tbl_default': 'v_event_badge',
'tbl_alt': 'v_event_badge_only',
'tbl_update': 'event_badge',
'mdl': Event_Badge_Base,
'mdl_default': Event_Badge_Basic_Base,
# Legacy V2 keys:
'table_name': 'v_event_badge',
'table_name_alt': 'v_event_badge_only',
'tbl_name_update': 'event_badge',
'base_name': Event_Badge_Basic_Base,
},
'event_badge_template': {
'tbl': 'event_badge_template',
'tbl_default': 'v_event_badge_template',
'tbl_update': 'event_badge_template',
'mdl': Event_Badge_Template_Base,
'mdl_default': Event_Badge_Template_Base,
'mdl_in': Event_Badge_Template_Base,
'mdl_out': Event_Badge_Template_Base,
# Legacy V2 keys:
'table_name': 'v_event_badge_template',
'tbl_name_update': 'event_badge_template',
'base_name': Event_Badge_Template_Base,
},
'event_device': {
'tbl': 'event_device',
'tbl_default': 'v_event_device',
'tbl_alt': 'v_event_device',
'tbl_update': 'event_device',
'mdl': Event_Device_Base,
'mdl_default': Event_Device_Base,
'mdl_in': Event_Device_Base,
'mdl_out': Event_Device_Base,
# Legacy V2 keys:
'table_name': 'v_event_device',
'tbl_name_update': 'event_device',
'base_name': Event_Device_Base,
},
'event_exhibit': {
'tbl': 'event_exhibit',
'tbl_default': 'v_event_exhibit',
'tbl_update': 'event_exhibit',
'mdl': Event_Exhibit_Base,
'mdl_default': Event_Exhibit_Base,
'mdl_in': Event_Exhibit_Base,
'mdl_out': Event_Exhibit_Base,
# Legacy V2 keys:
'table_name': 'v_event_exhibit',
'tbl_name_update': 'event_exhibit',
'base_name': Event_Exhibit_Base,
},
'event_exhibit_tracking': {
'tbl': 'event_exhibit_tracking',
'tbl_default': 'v_event_exhibit_tracking',
'tbl_update': 'event_exhibit_tracking',
'mdl': Event_Exhibit_Tracking_Base,
'mdl_default': Event_Exhibit_Tracking_Base,
# Legacy V2 keys:
'table_name': 'v_event_exhibit_tracking',
'tbl_name_update': 'event_exhibit_tracking',
'base_name': Event_Exhibit_Tracking_Base,
},
'event_file': {
'tbl': 'event_file',
'tbl_default': 'v_event_file_simple',
'tbl_alt': 'v_event_file',
'tbl_update': 'event_file',
'mdl': Event_File_Base,
'mdl_default': Event_File_Base,
'mdl_in': Event_File_Base,
'mdl_out': Event_File_Base,
# Legacy V2 keys:
'table_name': 'v_event_file_simple',
'table_name_alt': 'v_event_file',
'tbl_name_update': 'event_file',
'base_name': Event_File_Base,
},
'event_location': {
'tbl': 'event_location',
'tbl_default': 'v_event_location',
'tbl_alt': 'v_event_location_w_file_count',
'tbl_update': 'event_location',
'mdl': Event_Location_Base,
'mdl_default': Event_Location_Base,
'mdl_in': Event_Location_Base,
'mdl_out': Event_Location_Base,
# Legacy V2 keys:
'table_name': 'v_event_location',
'table_name_alt': 'v_event_location_w_file_count',
'tbl_name_update': 'event_location',
'base_name': Event_Location_Base,
},
'event_person': {
'tbl': 'event_person',
'tbl_default': 'v_event_person',
'tbl_update': 'event_person',
'mdl': Event_Person_Base,
'mdl_default': Event_Person_Base,
'mdl_in': Event_Person_Base,
'mdl_out': Event_Person_Base,
# Legacy V2 keys:
'table_name': 'v_event_person',
'tbl_name_update': 'event_person',
'base_name': Event_Person_Base,
},
'event_person_tracking': {
'tbl': 'event_person_tracking',
'tbl_default': 'v_event_person_tracking',
'tbl_update': 'event_person_tracking',
'mdl': Event_Person_Tracking_Base,
'mdl_default': Event_Person_Tracking_Base,
# Legacy V2 keys:
'table_name': 'v_event_person_tracking',
'tbl_name_update': 'event_person_tracking',
'base_name': Event_Person_Tracking_Base,
},
'event_presentation': {
'tbl': 'event_presentation',
'tbl_default': 'v_event_presentation',
'tbl_alt': 'v_event_presentation_w_file_count',
'tbl_update': 'event_presentation',
'mdl': Event_Presentation_Base,
'mdl_default': Event_Presentation_Base,
'mdl_in': Event_Presentation_Base,
'mdl_out': Event_Presentation_Base,
# Legacy V2 keys:
'table_name': 'v_event_presentation',
'table_name_alt': 'v_event_presentation_w_file_count',
'tbl_name_update': 'event_presentation',
'base_name': Event_Presentation_Base,
},
'event_presenter': {
'tbl': 'event_presenter',
'tbl_default': 'v_event_presenter',
'tbl_alt': 'v_event_presenter_w_file_count',
'tbl_update': 'event_presenter',
'mdl': Event_Presenter_Base,
'mdl_default': Event_Presenter_Base,
'mdl_in': Event_Presenter_Base,
'mdl_out': Event_Presenter_Out_Base,
# Legacy V2 keys:
'table_name': 'v_event_presenter',
'table_name_alt': 'v_event_presenter_w_file_count',
'tbl_name_update': 'event_presenter',
'base_name': Event_Presenter_Base,
'exp_default': [
'event_presenter_id_random',
'title_names', 'given_name', 'middle_name', 'family_name', 'designations',
'professional_title', 'full_name',
'affiliations',
'email', 'biography',
'agree',
'comments',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
'event_registration': {
'tbl': 'event_registration',
'tbl_default': 'v_event_registration',
'tbl_update': 'event_registration',
'mdl': Event_Registration_Base,
'mdl_default': Event_Registration_Base,
'mdl_in': Event_Registration_Base,
'mdl_out': Event_Registration_Base,
# Legacy V2 keys:
'table_name': 'v_event_registration',
'tbl_name_update': 'event_registration',
'base_name': Event_Registration_Base,
},
'event_session': {
'tbl': 'event_session',
'tbl_default': 'v_event_session',
'tbl_alt': 'v_event_session_w_file_count',
'tbl_update': 'event_session',
'mdl': Event_Session_Base,
'mdl_default': Event_Session_Base,
'mdl_in': Event_Session_Base,
'mdl_out': Event_Session_Base,
'exclude_for_db': {'poc_person_id', 'file_count', 'internal_use_count', 'enable_from', 'enable_to', 'event_name', 'event_start_datetime', 'event_end_datetime', 'event_location_name', 'event_track_name', 'event_abstract_list', 'event_badge_list', 'event_device_list', 'event_file_list', 'event_file_internal_use_list', 'event_location', 'event_location_list', 'event_person_list', 'event_presenter_cat', 'event_presentation_list', 'event_presenter_list', 'event_track', 'poc_event_person'},
# Legacy V2 keys:
'table_name': 'v_event_session',
'tbl_name_update': 'event_session',
'base_name': Event_Session_Base,
},
'event_track': {
'tbl': 'event_track',
'tbl_default': 'v_event_track',
'tbl_update': 'event_track',
'mdl': Event_Track_Base,
'mdl_default': Event_Track_Base,
# Legacy V2 keys:
'table_name': 'v_event_track',
'tbl_name_update': 'event_track',
'base_name': Event_Track_Base,
},
}

View File

@@ -0,0 +1,38 @@
from app.models.journal_models import *
from app.models.journal_entry_models import *
journal_obj_li = {
'journal': {
'tbl': 'journal',
'tbl_default': 'v_journal',
'tbl_update': 'journal',
'mdl': Journal_Base,
'mdl_default': Journal_Base,
'mdl_in': Journal_Base,
'mdl_out': Journal_Base,
# Legacy V2 keys:
'table_name': 'v_journal',
'tbl_name_update': 'journal',
'base_name': Journal_Base,
'exp_default': [
'journal_id_random',
'title', 'description',
],
},
'journal_entry': {
'tbl': 'journal_entry',
'tbl_default': 'v_journal_entry',
'tbl_update': 'journal_entry',
'mdl': Journal_Entry_Base,
'mdl_default': Journal_Entry_Base,
'mdl_in': Journal_Entry_Base,
'mdl_out': Journal_Entry_Base,
# Legacy V2 keys:
'table_name': 'v_journal_entry',
'tbl_name_update': 'journal_entry',
'base_name': Journal_Entry_Base,
'exp_default': [
'journal_entry_id_random',
],
},
}

View File

@@ -0,0 +1,44 @@
lu_obj_li = {
'lu_country': {
'tbl': 'lu_country',
'tbl_default': 'v_lu_country',
'tbl_alt': None,
'tbl_update': 'lu_country',
'mdl': None,
'mdl_default': None,
'mdl_in': None,
'mdl_out': None,
# Legacy V2 keys:
'table_name': 'v_lu_country',
'tbl_name_update': 'lu_country',
'base_name': None,
},
'lu_country_subdivision': {
'tbl': 'lu_country_subdivision',
'tbl_default': 'v_lu_country_subdivision',
'tbl_alt': None,
'tbl_update': 'lu_country_subdivision',
'mdl': None,
'mdl_default': None,
'mdl_in': None,
'mdl_out': None,
# Legacy V2 keys:
'table_name': 'v_lu_country_subdivision',
'tbl_name_update': 'lu_country_subdivision',
'base_name': None,
},
'lu_time_zone': {
'tbl': 'lu_time_zone',
'tbl_default': 'v_lu_time_zone',
'tbl_alt': 'v_lu_time_zone_cust',
'tbl_update': 'lu_time_zone',
'mdl': None,
'mdl_default': None,
'mdl_in': None,
'mdl_out': None,
# Legacy V2 keys:
'table_name': 'v_lu_time_zone',
'tbl_name_update': 'lu_time_zone',
'base_name': None,
},
}

View File

@@ -0,0 +1,87 @@
from app.models.membership_cfg_models import *
from app.models.membership_group_models import *
from app.models.membership_person_group_models import *
from app.models.membership_person_models import *
from app.models.membership_person_profile_models import *
from app.models.membership_type_models import *
from app.models.membership_person_type_models import *
membership_obj_li = {
'membership_cfg': {
'tbl': 'membership_cfg',
'tbl_default': 'v_membership_cfg',
'tbl_update': 'membership_cfg',
'mdl': Membership_Cfg_Base,
'mdl_default': Membership_Cfg_Base,
# Legacy V2 keys:
'table_name': 'v_membership_cfg',
'tbl_name_update': 'membership_cfg',
'base_name': Membership_Cfg_Base,
},
'membership_group': {
'tbl': 'membership_group',
'tbl_default': 'v_membership_group',
'tbl_update': 'membership_group',
'mdl': Membership_Group_Base,
'mdl_default': Membership_Group_Base,
# Legacy V2 keys:
'table_name': 'v_membership_group',
'tbl_name_update': 'membership_group',
'base_name': Membership_Group_Base,
},
'membership_person_group': {
'tbl': 'membership_person_group',
'tbl_default': 'v_membership_person_group',
'tbl_update': 'membership_person_group',
'mdl': Membership_Person_Group_Base,
'mdl_default': Membership_Person_Group_Base,
# Legacy V2 keys:
'table_name': 'v_membership_person_group',
'tbl_name_update': 'membership_person_group',
'base_name': Membership_Person_Group_Base,
},
'membership_person': {
'tbl': 'membership_person',
'tbl_default': 'v_membership_person',
'tbl_update': 'membership_person',
'mdl': Membership_Person_Base,
'mdl_default': Membership_Person_Base,
# Legacy V2 keys:
'table_name': 'v_membership_person',
'tbl_name_update': 'membership_person',
'base_name': Membership_Person_Base,
},
'membership_person_profile': {
'tbl': 'membership_person_profile',
'tbl_default': 'v_membership_person_profile',
'tbl_update': 'membership_person_profile',
'mdl': Membership_Person_Profile_Base,
'mdl_default': Membership_Person_Profile_Base,
# Legacy V2 keys:
'table_name': 'v_membership_person_profile',
'tbl_name_update': 'membership_person_profile',
'base_name': Membership_Person_Profile_Base,
},
'membership_type': {
'tbl': 'membership_type',
'tbl_default': 'v_membership_type',
'tbl_update': 'membership_type',
'mdl': Membership_Type_Base,
'mdl_default': Membership_Type_Base,
# Legacy V2 keys:
'table_name': 'v_membership_type',
'tbl_name_update': 'membership_type',
'base_name': Membership_Type_Base,
},
'membership_person_type': {
'tbl': 'membership_person_type',
'tbl_default': 'v_membership_person_type',
'tbl_update': 'membership_person_type',
'mdl': Membership_Person_Type_Base,
'mdl_default': Membership_Person_Type_Base,
# Legacy V2 keys:
'table_name': 'v_membership_person_type',
'tbl_name_update': 'membership_person_type',
'base_name': Membership_Person_Type_Base,
},
}

View File

@@ -0,0 +1,51 @@
from app.models.order_models import *
from app.models.order_cart_models import *
order_obj_li = {
'order': {
'tbl': 'order',
'tbl_default': 'v_order',
'tbl_update': 'order',
'mdl': Order_Base,
'mdl_default': Order_Base,
'mdl_in': Order_DB_Base,
'mdl_out': Order_Base,
# Legacy V2 keys:
'table_name': 'v_order',
'tbl_name_update': 'order',
'base_name': Order_Base,
},
'order_line': {
'tbl': 'order_line',
'tbl_default': 'v_order_line',
'tbl_update': 'order_line',
'mdl': Order_Line_Base,
'mdl_default': Order_Line_Base,
'mdl_in': Order_Line_Base,
'mdl_out': Order_Line_Base,
# Legacy V2 keys:
'table_name': 'v_order_line',
'tbl_name_update': 'order_line',
'base_name': Order_Line_Base,
},
'order_cart': {
'tbl': 'order_cart',
'tbl_default': 'v_order_cart',
'tbl_update': 'order_cart',
'mdl': Order_Cart_Base,
# Legacy V2 keys:
'table_name': 'v_order_cart',
'tbl_name_update': 'order_cart',
'base_name': Order_Cart_Base,
},
'order_cart_line': {
'tbl': 'order_cart_line',
'tbl_default': 'v_order_cart_line',
'tbl_update': 'order_cart_line',
'mdl': Order_Cart_Line_Base,
# Legacy V2 keys:
'table_name': 'v_order_cart_line',
'tbl_name_update': 'order_cart_line',
'base_name': Order_Cart_Line_Base,
},
}

View File

@@ -0,0 +1,171 @@
from app.models.sponsorship_models import *
from app.models.sponsorship_cfg_models import *
from app.models.archive_models import *
from app.models.archive_content_models import *
from app.models.hosted_file_models import *
from app.models.e_stripe_models import *
from app.models.cont_edu_cert_models import *
from app.models.cont_edu_cert_person_models import *
from app.models.grant_models import *
other_obj_li = {
'sponsorship': {
'tbl': 'sponsorship',
'tbl_default': 'v_sponsorship',
'tbl_update': 'sponsorship',
'mdl': Sponsorship_Base,
'mdl_default': Sponsorship_Base,
'mdl_in': Sponsorship_Base,
'mdl_out': Sponsorship_Base,
# Legacy V2 keys:
'table_name': 'v_sponsorship',
'tbl_name_update': 'sponsorship',
'base_name': Sponsorship_Base,
'exp_default': [
'sponsorship_id_random',
'name', 'description', 'website_url',
'level_num', 'level_str',
'agree',
'guest_li_json',
'comments',
'enable', 'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
'sponsorship_cfg': {
'tbl': 'sponsorship_cfg',
'tbl_default': 'v_sponsorship_cfg',
'tbl_update': 'sponsorship_cfg',
'mdl': Sponsorship_Cfg_Base,
'mdl_default': Sponsorship_Cfg_Base,
# Legacy V2 keys:
'table_name': 'v_sponsorship_cfg',
'tbl_name_update': 'sponsorship_cfg',
'base_name': Sponsorship_Cfg_Base,
},
'archive': {
'tbl': 'archive',
'tbl_default': 'v_archive',
'tbl_update': 'archive',
'mdl': Archive_Base,
'mdl_default': Archive_Base,
'mdl_in': Archive_Base,
'mdl_out': Archive_Base,
# Legacy V2 keys:
'table_name': 'v_archive',
'tbl_name_update': 'archive',
'base_name': Archive_Base,
'exp_default': [
'archive_id_random',
'account_id_random',
'archive_type_id_random',
'name', 'description',
'content_html', 'content_json',
'url', 'url_text',
'hosted_file_id_random',
'file_path',
'filename', 'file_extension',
'original_datetime', 'original_timezone', 'original_location', 'original_address_id',
'original_url', 'original_url_text',
'meta_data', 'access_key',
'sort_by', 'sort_by_desc',
'enable', 'enable_from', 'enable_to',
'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
'archive_content': {
'tbl': 'archive_content',
'tbl_default': 'v_archive_content',
'tbl_update': 'archive_content',
'mdl': Archive_Content_Base,
'mdl_default': Archive_Content_Base,
'mdl_in': Archive_Content_Base,
'mdl_out': Archive_Content_Base,
# Legacy V2 keys:
'table_name': 'v_archive_content',
'tbl_name_update': 'archive_content',
'base_name': Archive_Content_Base,
'exp_default': [
'archive_content_id_random',
'archive_id_random',
'archive_content_type_id_random',
'lu_media_type_id_random',
'name', 'description',
'content_html', 'content_json',
'content_url', 'content_url_text',
'hosted_file_id_random',
'file_path',
'filename', 'file_extension',
'original_datetime', 'original_timezone', 'original_location', 'original_address_id',
'original_url', 'original_url_text',
'meta_data', 'access_key',
'enable_for_public',
'enable', 'enable_from', 'enable_to',
'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
'hosted_file': {
'tbl': 'hosted_file',
'tbl_default': 'v_hosted_file',
'tbl_update': 'hosted_file',
'mdl': Hosted_File_Base,
'mdl_default': Hosted_File_Base,
'mdl_in': Hosted_File_Base,
'mdl_out': Hosted_File_Base,
# Legacy V2 keys:
'table_name': 'v_hosted_file',
'tbl_name_update': 'hosted_file',
'base_name': Hosted_File_Base,
'exp_default': [
'hosted_file_id_random',
'hash_sha256',
'account_id_random',
'title', 'description',
'filename', 'extension',
'content_type'
'enable'
'hide', 'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on',
],
},
'stripe_log': {
'tbl': 'stripe_log',
'tbl_update': 'stripe_log',
'mdl': Stripe_Log_Base_In,
# Legacy V2 keys:
'table_name': 'stripe_log',
'tbl_name_update': 'stripe_log',
'base_name': Stripe_Log_Base_In,
},
'cont_edu_cert': {
'tbl': 'cont_edu_cert',
'tbl_default': 'v_cont_edu_cert',
'tbl_update': 'cont_edu_cert',
'mdl': Cont_Edu_Cert_Base,
'mdl_default': Cont_Edu_Cert_Base,
# Legacy V2 keys:
'table_name': 'v_cont_edu_cert',
'tbl_name_update': 'cont_edu_cert',
'base_name': Cont_Edu_Cert_Base,
},
'cont_edu_cert_person': {
'tbl': 'cont_edu_cert_person',
'tbl_default': 'v_cont_edu_cert_person',
'tbl_update': 'cont_edu_cert_person',
'mdl': Cont_Edu_Cert_Person_Base,
'mdl_default': Cont_Edu_Cert_Person_Base,
# Legacy V2 keys:
'table_name': 'v_cont_edu_cert_person',
'tbl_name_update': 'cont_edu_cert_person',
'base_name': Cont_Edu_Cert_Person_Base,
},
'grant': {
'tbl': 'grant',
'tbl_default': 'v_grant',
'tbl_update': 'grant',
'mdl': Grant_Base,
'mdl_default': Grant_Base,
# Legacy V2 keys:
'table_name': 'v_grant',
'tbl_name_update': 'grant',
'base_name': Grant_Base,
},
}