0) { // List all entries $rows = array(); while ($row = SQL_FETCHARRAY($result)) { // Is this valid, then add it if ((is_array($row)) && (isset($row['network_id']))) $rows[] = $row; } // END - while // Generate the selection box $content = generateSelectionBoxFromArray($rows, 'network', 'network_id'); } else { // Nothing selected $content = loadTemplate('admin_settings_unsaved', false, getMessage('ADMIN_ENTRIES_404')); } // Free the result SQL_FREERESULT($result); // Return the list return $content; } // Generator (somewhat getter) for network type options function generateNetworkTypeOptions ($id) { // Is this an array, then we just came back from edit/delete actions if (is_array($id)) $id = ''; // Is this cached? if (!isset($GLOBALS['network_type_options'][$id])) { // Generate output and cache it $GLOBALS['network_type_options'][$id] = generateOptionList( 'network_types', 'network_type_id', 'network_type_handle', $id, '', sprintf("WHERE `network_id`=%s", getRequestParameter('network')) ); } // END - if // Return content return $GLOBALS['network_type_options'][$id]; } // Generator (somewhat getter) for request key options function generateNetworkRequestKeyOptions ($key) { // Is it cached? if (!isset($GLOBALS['network_request_param_key'][$key])) { // Generate and cache it $GLOBALS['network_request_param_key'][$key] = generateOptionList( '/ARRAY/', array( 'id', 'sid', 'hash', 'password', 'reload', 'max_stay', 'min_stay', 'currency', 'type', 'remain', 'reward', 'size', 'erotic', 'extra' ), array( '{--ADMIN_NETWORK_REQUEST_PARAMS_ID--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_SID--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_HASH--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_PASSWORD--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_RELOAD--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_MAXIMUM_STAY--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_MINIMUM_STAY--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_CURRENCY--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_TYPE--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_REMAIN--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_REWARD--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_SIZE--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_EROTIC--}', '{--ADMIN_NETWORK_REQUEST_PARAMS_EXTRA--}' ), $key, '', '', $GLOBALS['network_params_disabled'] ); } // END - if // Return content return $GLOBALS['network_request_param_key'][$key]; } //------------------------------------------------------------------------------ // Call-back functions //------------------------------------------------------------------------------ // Callback function to add new network function doAdminNetworkProcessAddnetworkForm () { // We can say here, the form is sent, so check if the network is already added if (isNetworkNameValid(postRequestParameter('network_short_name'))) { // Already there loadTemplate('admin_settings_unsaved', false, getMaskedMessage('ADMIN_NETWORK_ALREADY_ADDED', postRequestParameter('network_short_name'))); return false; } // END - if // Remove the 'ok' part unsetPostRequestParameter('ok'); // Add the whole request to database SQL_QUERY("INSERT INTO `{?_MYSQL_PREFIX?}_network_data` ( `" . implode('`,`', array_keys(postRequestArray())) . "` ) VALUES ( '" . implode("','", array_values(postRequestArray())) . "' )", __FUNCTION__, __LINE__); // Add the id for output only setPostRequestParameter('network_id', SQL_INSERTID()); // Output message if (SQL_AFFECTEDROWS() == 1) { // Successfully added loadTemplate('admin_network_added', false, postRequestArray()); } else { // Not added loadTemplate('admin_settings_unsaved', false, getMaskedMessage('ADMIN_NETWORK_DATA_NOT_ADDED', postRequestParameter('network_short_name'))); } } // Displays selected networks for editing function doAdminNetworkProcessHandlenetworkForm () { // Do we have selections? if (countPostSelection() > 0) { // Something has been selected, so start displaying one by one $SW = 2; $OUT = ''; foreach (postRequestParameter('sel') as $id => $sel) { // Is this selected? if ($sel == 1) { // Load this network's data $networkData = getNetworkDataById($id); // Do we have found the network? if (count($networkData) > 0) { // Add color $networkData['sw'] = $SW; if (isPostRequestParameterSet('edit')) { // Make selection box for network_request_type $networkData['network_request_type'] = generateOptionList( '/ARRAY/', array('GET','POST'), array( getMessage('ADMIN_NETWORK_REQUEST_TYPE_GET'), getMessage('ADMIN_NETWORK_REQUEST_TYPE_POST') ), $networkData['network_request_type'] ); // Add row template for editing $OUT .= loadTemplate('admin_edit_networks_row', true, $networkData); } elseif (isPostRequestParameterSet('del')) { // Translate the request type $networkData['network_request_type'] = getMessage('ADMIN_NETWORK_REQUEST_TYPE_' . $networkData['network_request_type']); // Add row template for deleting $OUT .= loadTemplate('admin_del_networks_row', true, $networkData); } else { // Problem! debug_report_bug('Cannot detect edit/del.'); } // Switch colors $SW = 3 - $SW; } // END - if } // END - if } // END - foreach // If we have no rows, we don't need to display the edit form if (!empty($OUT)) { // Output main template if (isPostRequestParameterSet('edit')) { loadTemplate('admin_edit_networks', false, $OUT); } elseif (isPostRequestParameterSet('del')) { loadTemplate('admin_del_networks', false, $OUT); } else { // Problem! debug_report_bug('Cannot detect edit/del.'); } // Don't display the list/add new form $GLOBALS['network_display'] = false; } else { // Nothing selected/found loadTemplate('admin_settings_unsaved', false, getMessage('ADMIN_NETWORK_NOTHING_FOUND')); } } // END - if } // Handle network type form function doAdminNetworkProcessHandlenetworktypeForm () { // Do we have selections? if (countPostSelection() > 0) { // Load network data $networkData = getNetworkDataById(getRequestParameter('network')); // Something has been selected, so start displaying one by one $SW = 2; $OUT = ''; foreach (postRequestParameter('sel') as $id => $sel) { // Is this selected? if ($sel == 1) { // Load this network's data $networkTypeData = getNetworkTypeDataById($id); // Do we have found the network? if (count($networkTypeData) > 0) { // Add color $networkTypeData['sw'] = $SW; if (isPostRequestParameterSet('edit')) { // Add row template for deleting $OUT .= loadTemplate('admin_edit_network_types_row', true, $networkTypeData); } elseif (isPostRequestParameterSet('del')) { // Fix empty banner URL if (trim($networkTypeData['network_type_banner_url']) == '') $networkTypeData['network_type_banner_url'] = '---'; // Add row template for deleting $OUT .= loadTemplate('admin_del_network_types_row', true, $networkTypeData); } else { // Problem! debug_report_bug('Cannot detect edit/del.'); } // Switch colors $SW = 3 - $SW; } // END - if } // END - if } // END - foreach // If we have no rows, we don't need to display the edit form if (!empty($OUT)) { // Prepare content for template $content = array( 'rows' => $OUT, 'network_data' => getNetworkDataById(getRequestParameter('network')) ); // Output main template if (isPostRequestParameterSet('edit')) { loadTemplate('admin_edit_network_types', false, $content); } elseif (isPostRequestParameterSet('del')) { loadTemplate('admin_del_network_types', false, $content); } else { // Problem! debug_report_bug('Cannot detect edit/del.'); } // Don't display the list/add new form $GLOBALS['network_display'] = false; } else { // Nothing selected/found loadTemplate('admin_settings_unsaved', false, getMessage('ADMIN_NETWORK_TYPES_NOTHING_FOUND')); } } // END - if } // Handle network request parameter form function doAdminNetworkProcessHandlerequestparamsForm () { // Do we have selections? if (countPostSelection() > 0) { // Init cache array $GLOBALS['network_params_disabled'] = array(); // Load network data $networkData = getNetworkDataById(getRequestParameter('network')); // Something has been selected, so start displaying one by one $SW = 2; $OUT = ''; foreach (postRequestParameter('sel') as $id => $sel) { // Is this selected? if ($sel == 1) { // Load this network's data $networkRequestData = getNetworkRequestParamsDataById($id); // Do we have found the network? if (count($networkRequestData) > 0) { // Add color $networkRequestData['sw'] = $SW; if (isPostRequestParameterSet('edit')) { // Add options list for network type $networkRequestData['type_options'] = generateNetworkTypeOptions($networkRequestData['network_type_id']); // Add options list for request key $networkRequestData['key_options'] = generateNetworkRequestKeyOptions($networkRequestData['request_param_key']); // Add row template for deleting $OUT .= loadTemplate('admin_edit_network_params_row', true, $networkRequestData); } elseif (isPostRequestParameterSet('del')) { // Fix empty banner URL if (trim($networkRequestData['request_param_default']) == '') $networkRequestData['request_param_default'] = '---'; // Get type data $networkRequestData['network_type_data'] = getNetworkTypeDataById($networkRequestData['network_type_id']); // Add row template for deleting $OUT .= loadTemplate('admin_del_network_params_row', true, $networkRequestData); } else { // Problem! debug_report_bug('Cannot detect edit/del.'); } // Switch colors $SW = 3 - $SW; } // END - if } // END - if } // END - foreach // If we have no rows, we don't need to display the edit form if (!empty($OUT)) { // Prepare content for template $content = array( 'rows' => $OUT, 'network_data' => getNetworkDataById(getRequestParameter('network')) ); // Output main template if (isPostRequestParameterSet('edit')) { loadTemplate('admin_edit_network_params', false, $content); } elseif (isPostRequestParameterSet('del')) { loadTemplate('admin_del_network_params', false, $content); } else { // Problem! debug_report_bug('Cannot detect edit/del.'); } // Don't display the list/add new form $GLOBALS['network_display'] = false; } else { // Nothing selected/found loadTemplate('admin_settings_unsaved', false, getMessage('ADMIN_NETWORK_REQUEST_PARAMS_NOTHING_FOUND')); } } // END - if } // Changes given networks function doAdminNetworkProcessChangenetworkForm () { // Do we have selections? if (countPostSelection() > 0) { // By default nothing is updated $updated = 0; // Something has been selected, so start updating them foreach (postRequestParameter('sel') as $id => $sel) { // Update this entry? if ($sel == 1) { // Init data array $networkData = array(); // Transfer whole array, except 'sel' foreach (postRequestArray() as $key => $entry) { // Skip 'sel' and submit button if (in_array($key, array('sel', 'change'))) continue; // Do we have this enty? if (!isset($entry[$id])) { // Not found, needs fixing debug_report_bug('No entry in key=' . $key . ', id=' . $id . ' found.'); } // END - if // Add this entry $networkData[$key] = $entry[$id]; } // END - foreach // Update the network data $updated += doNetworkUpdateDataByArray($id, $networkData); } // END - if } // END - foreach // Do we have updates? if ($updated > 0) { // Updates done loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_NETWORK_UPDATED', $updated)); } else { // Nothing changed loadTemplate('admin_settings_unsaved', false, getMessage('ADMIN_NETWORK_NOTHING_CHANGED')); } } // END - if } // Removes given networks function doAdminNetworkProcessRemovenetworkForm () { // Do we have selections? if (countPostSelection() > 0) { // By default nothing is removed $removed = 0; // Something has been selected, so start updating them foreach (postRequestParameter('sel') as $id => $sel) { // Update this entry? if ($sel == 1) { // Remove this entry $removed += doAdminRemoveNetworkEntry('data', 'network_id', $id); } // END - if } // END - foreach // Do we have removes? if ($removed > 0) { // Removals done loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_NETWORK_REMOVED', $removed)); } else { // Nothing removed loadTemplate('admin_settings_unsaved', false, getMessage('ADMIN_NETWORK_NOTHING_REMOVED')); } } // END - if } // Add a network type handler if not yet found function doAdminNetworkProcessAddnetworktypeForm () { // Is the network type handle already used with given network? if (isNetworkTypeHandleValid(postRequestParameter('network_type_handle'), getRequestParameter('network'))) { // Already added loadTemplate('admin_settings_unsaved', false, getMaskedMessage('ADMIN_NETWORK_TYPES_HANDLE_ALREADY_ADDED', postRequestParameter('network_type_handle'))); // ... so abort here return false; } // END - if // Remove the 'ok' part unsetPostRequestParameter('ok'); // Add id setPostRequestParameter('network_id', getRequestParameter('network')); // Is network_type_banner_url set? if (postRequestParameter('network_type_banner_url') == '') { // Remove empty value to get a NULL for an optional entry unsetPostRequestParameter('network_type_banner_url'); } // END - if // Add the whole request to database SQL_QUERY("INSERT INTO `{?_MYSQL_PREFIX?}_network_types` ( `" . implode('`,`', array_keys(postRequestArray())) . "` ) VALUES ( '" . implode("','", array_values(postRequestArray())) . "' )", __FUNCTION__, __LINE__); // Output message if (SQL_AFFECTEDROWS() == 1) { // Successfully added loadTemplate('admin_network_type_added', false, postRequestArray()); } else { // Not added loadTemplate('admin_settings_unsaved', false, getMaskedMessage('ADMIN_NETWORK_TYPES_NOT_ADDED', postRequestParameter('network_type_handle'))); } } // Changes given network type handlers function doAdminNetworkProcessChangenetworktypeForm () { // Do we have selections? if (countPostSelection() > 0) { // By default nothing is updated $updated = 0; // Something has been selected, so start updating them foreach (postRequestParameter('sel') as $id => $sel) { // Update this entry? if ($sel == 1) { // Init data array $networkTypeData = array(); // Transfer whole array, except 'sel' foreach (postRequestArray() as $key => $entry) { // Skip 'sel' and submit button if (in_array($key, array('sel', 'change'))) continue; // Do we have this enty? if (!isset($entry[$id])) { // Not found, needs fixing debug_report_bug('No entry in key=' . $key . ', id=' . $id . ' found.'); } // END - if // Fix empty network_type_banner_url to NULL if (($key == 'network_type_banner_url') && (trim($entry[$id]) == '')) { // Set it to NULL $entry[$id] = null; } // END - if // Add this entry $networkTypeData[$key] = $entry[$id]; } // END - foreach // Update the network data $updated += doNetworkUpdateTypeByArray($id, $networkTypeData); } // END - if } // END - foreach // Do we have updates? if ($updated > 0) { // Updates done loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_NETWORK_TYPES_UPDATED', $updated)); } else { // Nothing changed loadTemplate('admin_settings_unsaved', false, getMessage('ADMIN_NETWORK_TYPES_NOTHING_CHANGED')); } } // END - if } // Changes given network request parameters function doAdminNetworkProcessChangenetworkparamForm () { // Do we have selections? if (countPostSelection() > 0) { // By default nothing is updated $updated = 0; // Something has been selected, so start updating them foreach (postRequestParameter('sel') as $id => $sel) { // Update this entry? if ($sel == 1) { // Init data array $networkParamsData = array(); // Transfer whole array, except 'sel' foreach (postRequestArray() as $key => $entry) { // Skip 'sel' and submit button if (in_array($key, array('sel', 'change'))) continue; // Do we have this enty? if (!isset($entry[$id])) { // Not found, needs fixing debug_report_bug('No entry in key=' . $key . ', id=' . $id . ' found.'); } // END - if // Fix empty request_param_default to NULL if (($key == 'request_param_default') && (trim($entry[$id]) == '')) { // Set it to NULL $entry[$id] = null; } // END - if // Add this entry $networkParamsData[$key] = $entry[$id]; } // END - foreach // Update the network data $updated += doNetworkUpdateParamsByArray($id, $networkParamsData); } // END - if } // END - foreach // Do we have updates? if ($updated > 0) { // Updates done loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_NETWORK_REQUEST_PARAMS_UPDATED', $updated)); } else { // Nothing changed loadTemplate('admin_settings_unsaved', false, getMessage('ADMIN_NETWORK_REQUEST_PARAMS_NOTHING_CHANGED')); } } // END - if } // Removes given network type handlers function doAdminNetworkProcessRemovenetworktypeForm () { // Do we have selections? if (countPostSelection() > 0) { // By default nothing is removed $removed = 0; // Something has been selected, so start updating them foreach (postRequestParameter('sel') as $id => $sel) { // Update this entry? if ($sel == 1) { // Remove this entry $removed += doAdminRemoveNetworkEntry('types', 'network_type_id', $id); } // END - if } // END - foreach // Do we have removes? if ($removed > 0) { // Removals done loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_NETWORK_TYPES_REMOVED', $removed)); } else { // Nothing removed loadTemplate('admin_settings_unsaved', false, getMessage('ADMIN_NETWORK_TYPES_NOTHING_REMOVED')); } } // END - if } // Removes given network request parameters function doAdminNetworkProcessRemovenetworkparamForm () { // Do we have selections? if (countPostSelection() > 0) { // By default nothing is removed $removed = 0; // Something has been selected, so start updating them foreach (postRequestParameter('sel') as $id => $sel) { // Update this entry? if ($sel == 1) { // Remove this entry $removed += doAdminRemoveNetworkEntry('request_params', 'network_param_id', $id); } // END - if } // END - foreach // Do we have removes? if ($removed > 0) { // Removals done loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_NETWORK_REQUEST_PARAMS_REMOVED', $removed)); } else { // Nothing removed loadTemplate('admin_settings_unsaved', false, getMessage('ADMIN_NETWORK_REQUEST_PARAMS_NOTHING_REMOVED')); } } // END - if } // Adds a request parameter to given network and type function doAdminNetworkProcessAddnetworkparamForm () { // Is the request parameter already used with given network? if (isNetworkRequestParameterValid(postRequestParameter('request_param_key'), postRequestParameter('network_type_id'), getRequestParameter('network'))) { // Already added loadTemplate('admin_settings_unsaved', false, getMaskedMessage('ADMIN_NETWORK_REQUEST_PARAMETER_ALREADY_ADDED', postRequestParameter('request_param_key'))); // ... so abort here return false; } // END - if // Remove the 'ok' part unsetPostRequestParameter('ok'); // Add id setPostRequestParameter('network_id', getRequestParameter('network')); // Is request_param_default set? if (postRequestParameter('request_param_default') == '') { // Remove empty value to get a NULL for an optional entry unsetPostRequestParameter('request_param_default'); } // END - if // Add the whole request to database SQL_QUERY("INSERT INTO `{?_MYSQL_PREFIX?}_network_request_params` ( `" . implode('`,`', array_keys(postRequestArray())) . "` ) VALUES ( '" . implode("','", array_values(postRequestArray())) . "' )", __FUNCTION__, __LINE__); // Output message if (SQL_AFFECTEDROWS() == 1) { // Successfully added loadTemplate('admin_network_request_param_added', false, postRequestArray()); } else { // Not added loadTemplate('admin_settings_unsaved', false, getMaskedMessage('ADMIN_NETWORK_REQUEST_PARAMETER_NOT_ADDED', postRequestParameter('request_param_key'))); } } // [EOF] ?>