X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fcallback-functions.php;h=0f800a2fd3dfadf5b1d73faa2be5a5a4d5f99319;hb=082398d5872064d3911c62b085e8a134569f626b;hp=3a3edebb5a0a0fd6d10fc1b1fb0739e93b7ec121;hpb=cd7d344ea7007cfa20413acd3e03e50f0ab86d86;p=mailer.git diff --git a/inc/callback-functions.php b/inc/callback-functions.php index 3a3edebb5a..0f800a2fd3 100644 --- a/inc/callback-functions.php +++ b/inc/callback-functions.php @@ -43,7 +43,7 @@ if (!defined('__SECURITY')) { // Handles the XML node 'admin-entry-meta-data' function doXmlAdminEntryMetaData ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes, got ' . count($attributes)); } // END - if @@ -52,7 +52,7 @@ function doXmlAdminEntryMetaData ($resource, $attributes) { // Handles the XML node 'member-entry-meta-data' function doXmlMemberEntryMetaData ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes, got ' . count($attributes)); } // END - if @@ -118,7 +118,7 @@ function doXmlDatabaseTable ($resource, $attributes) { // Handles the XML node 'database-column-list' function doXmlDatabaseColumnList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } // END - if @@ -172,7 +172,7 @@ function doXmlDatabaseColumnListEntry ($resource, $attributes) { // Handles the XML node 'callback-function-list' function doXmlCallbackFunctionList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } // END - if @@ -214,7 +214,7 @@ function doXmlCallbackFunctionListEntry ($resource, $attributes) { // Handles the XML node 'extra-parameter-list' function doXmlExtraParameterList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } // END - if @@ -256,7 +256,7 @@ function doXmlExtraParameterListEntry ($resource, $attributes) { // Handles the XML node 'time-columns-list' function doXmlTimeColumnsList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } // END - if @@ -298,7 +298,7 @@ function doXmlTimeColumnsListEntry ($resource, $attributes) { // Handles the XML node 'extra-parameter-member-list' function doXmlExtraParameterMemberList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['extra_list']['member_list'])) { @@ -310,7 +310,7 @@ function doXmlExtraParameterMemberList ($resource, $attributes) { // Handles the XML node 'extra-parameter-reload-list' function doXmlExtraParameterReloadList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['extra_list']['reload_list'])) { @@ -322,7 +322,7 @@ function doXmlExtraParameterReloadList ($resource, $attributes) { // Handles the XML node 'extra-parameter-waiting-list' function doXmlExtraParameterWaitingList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['extra_list']['waiting_list'])) { @@ -424,7 +424,7 @@ function doXmlExtraParameterWaitingListEntry ($resource, $attributes) { // Handles the XML node 'extra-parameter-added-list' function doXmlExtraParameterAddedList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['extra_list']['added_list'])) { @@ -466,7 +466,7 @@ function doXmlExtraParameterAddedListEntry ($resource, $attributes) { // Handles the XML node 'extra-parameter-created-list' function doXmlExtraParameterCreatedList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['extra_list']['created_list'])) { @@ -538,7 +538,7 @@ function doXmlStatusChangeColumn ($resource, $attributes) { // Handles the XML node 'status-change-list' function doXmlStatusChangeList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction'])) { @@ -740,7 +740,7 @@ function doXmlCacheFile ($resource, $attributes) { // Handles the XML node 'admin-list-data' function doXmlAdminListData ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes, got ' . count($attributes)); } // END - if @@ -749,7 +749,7 @@ function doXmlAdminListData ($resource, $attributes) { // Handles the XML node 'member-list-data' function doXmlMemberListData ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes, got ' . count($attributes)); } // END - if @@ -758,7 +758,7 @@ function doXmlMemberListData ($resource, $attributes) { // Handles the XML node 'data-tables' function doXmlDataTables ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes, got ' . count($attributes)); } // END - if @@ -803,7 +803,7 @@ function doXmlDataTable ($resource, $attributes) { // Handles the XML node 'table-join-condition' function doXmlTableJoinCondition ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes, got ' . count($attributes)); } // END - if @@ -855,7 +855,7 @@ function doXmlTableJoinName ($resource, $attributes) { // Handles the XML node 'join-on' function doXmlJoinOn ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes, got ' . count($attributes)); } // END - if @@ -958,7 +958,7 @@ function doXmlJoinOnCondition ($resource, $attributes) { // Handles the XML node 'select-data-from-list' function doXmlSelectDataFromList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['data_table'])) { @@ -1012,7 +1012,7 @@ function doXmlSelectDataFromListEntry ($resource, $attributes) { // Handles the XML node 'where-select-from-list' function doXmlWhereSelectFromList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['data_table'])) { @@ -1102,7 +1102,7 @@ function doXmlWhereCondition ($resource, $attributes) { // Handles the XML node 'order-by-list' function doXmlOrderByList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['data_table'])) { @@ -1210,7 +1210,7 @@ function doXmlListRowTemplate ($resource, $attributes) { // Handles the XML node 'column-callback-list' function doXmlColumnCallbackList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['data_table'])) { @@ -1225,7 +1225,7 @@ function doXmlColumnCallbackList ($resource, $attributes) { // Handles the XML node 'column-callback-list-entry' function doXmlColumnCallbackListEntry ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 0 attributes because this is a foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['column_callback_list'])) { @@ -1270,7 +1270,7 @@ function doXmlColumnCallbackData ($resource, $attributes) { // Handles the XML node 'callback-extra-parameter-list' function doXmlCallbackExtraParameterList ($resource, $attributes) { // There should be no attributes - if (count($attributes) > 0) { + if (isFilledArray($attributes)) { // Please don't add any attributes to foo-list nodes reportBug(__FUNCTION__, __LINE__, 'Expected 1 attributes because this is a named foo-list node, got ' . count($attributes)); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['column_callback_list'])) { @@ -1290,7 +1290,7 @@ function doXmlCallbackExtraParameterListEntry ($resource, $attributes) { // There are three attributes, by default if (count($attributes) != 3) { // Not the right count - reportBug(__FUNCTION__, __LINE__, 'Expected 5 attributes, got ' . count($attributes)); + reportBug(__FUNCTION__, __LINE__, 'Expected 3 attributes, got ' . count($attributes)); } elseif (!isset($attributes['COLUMN'])) { // 'COLUMN' not found reportBug(__FUNCTION__, __LINE__, 'Required attribute COLUMN not found.'); @@ -1300,15 +1300,18 @@ function doXmlCallbackExtraParameterListEntry ($resource, $attributes) { } elseif (!isInvalidXmlType($attributes['TYPE'])) { // No valid type reportBug(__FUNCTION__, __LINE__, 'TYPE is not valid, got: ' . $attributes['TYPE']); - } elseif (!isset($attributes['VALUE'])) { + } elseif ((!isset($attributes['VALUE'])) && (!isset($attributes['DATA']))) { // 'VALUE' not found - reportBug(__FUNCTION__, __LINE__, 'Required attribute VALUE not found.'); - } elseif (!isXmlValueValid($attributes['TYPE'], $attributes['VALUE'])) { + reportBug(__FUNCTION__, __LINE__, 'Required attribute VALUE/DATA not found.'); + } elseif ((isset($attributes['VALUE'])) && (!isXmlValueValid($attributes['TYPE'], $attributes['VALUE']))) { // 'VALUE' not valid/verifyable reportBug(__FUNCTION__, __LINE__, 'Attribute VALUE does not validate. VALUE=' . $attributes['VALUE']); } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['__EXTRA_PARAMETER'])) { - // doXmlCallbackFunction is missing + // doXmlCallbackFunction/__EXTRA_PARAMETER is missing reportBug(__FUNCTION__, __LINE__, 'Required XML node callback-function/__EXTRA_PARAMETER not included around this node. Please fix your XML.'); + } elseif (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['data_column_list'])) { + // doXmlCallbackFunction/data_column_list is missing + reportBug(__FUNCTION__, __LINE__, 'Required XML node callback-function/data_column_list not included around this node.'); } // Add the entry to the array @@ -1320,7 +1323,7 @@ function doXmlNoEntryFoundMessage ($resource, $attributes) { // There are two attributes, by default if (count($attributes) != 2) { // Not the right count - reportBug(__FUNCTION__, __LINE__, 'Expected 3 attributes, got ' . count($attributes)); + reportBug(__FUNCTION__, __LINE__, 'Expected 2 attributes, got ' . count($attributes)); } elseif (!isset($attributes['VALUE'])) { // 'VALUE' not found reportBug(__FUNCTION__, __LINE__, 'Required attribute VALUE not found.'); @@ -1349,7 +1352,7 @@ function doXmlNoEntryFoundMessage ($resource, $attributes) { // Checks for string without any added extra data function isXmlTypeString ($value) { // Just let SQL_ESCAPE() do the job - return ($value == SQL_ESCAPE($value)); + return ($value == sqlEscapeString($value)); } // Fake-check for array type @@ -1509,9 +1512,16 @@ function addXmlValueToCallbackAttributes ($element, $attributes, $extraKey = '', ); //* NOISY-DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'element=' . $element . ',extraKey=' . $extraKey . ',TYPE=' . $attributes['TYPE'] . ',NAME[' . gettype($attributes['NAME']) . ']=' . $attributes['NAME'] . ' - TYPE-COLUMN! (COLUMN=' . $attributes['COLUMN'] . ')'); $GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction'][$element][count($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction'][$element])] = $array; - } elseif (isset($attributes['COLUMN'])) { + } elseif ((isset($attributes['COLUMN'])) && (isset($attributes['VALUE']))) { // COLUMN/VALUE detected - //* NOISY-DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'element=' . $element . ',VALUE[' . gettype($attributes['VALUE']) . ']=' . $attributes['VALUE'] . ',COLUMN[' . gettype($attributes['COLUMN']) . ']=' . $attributes['COLUMN'] . ' - COLUMN!'); + //* NOISY-DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'element=' . $element . ',VALUE[' . gettype($attributes['VALUE']) . ']=' . $attributes['VALUE'] . ',COLUMN[' . gettype($attributes['COLUMN']) . ']=' . $attributes['COLUMN'] . ' - COLUMN/VALUE!'); + if (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction'][$element][$attributes['COLUMN']])) { + $GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction'][$element][$attributes['COLUMN']] = array(); + } // END - if + $GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction'][$element][$attributes['COLUMN']][count($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction'][$element][$attributes['COLUMN']])] = $attributes['VALUE']; + } elseif ((isset($attributes['COLUMN'])) && (isset($attributes['DATA']))) { + // COLUMN/DATA detected + //* NOISY-DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'element=' . $element . ',DATA[' . gettype($attributes['DATA']) . ']=' . $attributes['DATA'] . ',COLUMN[' . gettype($attributes['COLUMN']) . ']=' . $attributes['COLUMN'] . ' - COLUMN/DATA!'); if (!isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction'][$element][$attributes['COLUMN']])) { $GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction'][$element][$attributes['COLUMN']] = array(); } // END - if @@ -1530,10 +1540,13 @@ function addXmlValueToCallbackAttributes ($element, $attributes, $extraKey = '', } elseif (isset($GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction'][$element][$attributes['NAME']])) { // Already created reportBug(__FUNCTION__, __LINE__, 'NAME=' . $attributes['NAME'] . ' already addded to ' . $element . ' attributes=
' . print_r($attributes, TRUE) . '
'); - } else { - // Use from NAME + } elseif ((isset($attributes['NAME'])) && (isset($attributes['VALUE']))) { + // Use from NAME/VALUE //* NOISY-DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'element=' . $element . ',NAME=' . $attributes['NAME'] . ',VALUE[' . gettype($attributes['VALUE']) . ']=' . $attributes['VALUE'] . ' - NAME!'); $GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction'][$element][$attributes['NAME']] = $attributes['VALUE']; + } else { + // Unknown stage + reportBug(__FUNCTION__, __LINE__, 'Unexpected stage detected. element=' . $element . ',attributes()=' . count($attributes)); } //* NOISY-DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'element=' . $element . ',extraKey=' . $extraKey . ',key=' . $key . ' - EXIT!'); }