Compare commits

...

2 Commits

1 changed files with 9 additions and 1 deletions

View File

@ -68,6 +68,11 @@ LOAD_TRIVIAL = ["FinancialType",
"Contact",
"SavedSearch"]
WEIRD_LIST = [
("civicrm_contact", "contact_sub_type"),
("civicrm_custom_group", "extends_entity_column_value")
]
# This is a payment processor we can assign contribution pages to in order for them to work.
# FIXME this seems to produce a non-working setup.
STANDIN_PAYMENT_PROCESSOR_ID = "7"
@ -111,6 +116,9 @@ def object_to_table(instr: str) -> str:
def array_to_weird_array(val: List) -> str:
if (val is None):
return "NULL"
return '"\x01' + ('\x01'.join([str(x) for x in val])) + '\x01"'
def value_to_php_serialized(val: Any) -> str:
@ -143,7 +151,7 @@ def dict_to_insert(table: str, objdict: Dict) -> str:
values = list()
for col in columns:
# any weird array we have to process here if there are others
if table == "civicrm_contact" and col == "contact_sub_type":
if (table, col) in WEIRD_LIST:
values.append(array_to_weird_array(objdict[col]))
elif table == "civicrm_saved_search" and col == "form_values":
values.append(value_to_php_serialized(objdict[col]))