Code moved because it depends on tables created by ext-user
[mailer.git] / inc / modules / admin / what-list_network_params.php
index ce21dc9116b3b17d2d16cd2e69ec87d4e6023344..65a55abe35eb088493d28ca503bc1360a87a02cd 100644 (file)
@@ -18,6 +18,7 @@
  * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
+ * Copyright (c) 2009, 2010 by Mailer Developer Team                    *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -63,20 +64,38 @@ if ($GLOBALS['network_display'] === false) {
 } // END - if
 
 // Do we have a network selected?
-if (isGetRequestElementSet('network')) {
+if (isGetRequestParameterSet('network')) {
        // Get its data for template
-       $networkData = getNetworkDataById(getRequestElement('network'));
+       $networkData = getNetworkDataById(getRequestParameter('network'));
+
+       // Init disabled list
+       $GLOBALS['network_params_disabled'] = array();
+
+       // Only show params from given type handler if choosen
+       $ADD = '';
+       if ((isPostRequestParameterSet('network_type_id')) && (!is_array(postRequestParameter('network_type_id')))) {
+               // Only show from current type handler
+               $ADD = sprintf(" AND p.`network_type_id`=%s", bigintval(postRequestParameter('network_type_id')));
+
+               // Display message
+               loadTemplate('admin_settings_saved', false, getMessage('ADMIN_NETWORK_REQUEST_PARAMS_LIST_LIMITED_TO_TYPE'));
+       } // END - if
 
        // Load all advert types for given network
        $result = SQL_QUERY_ESC("SELECT
-       `network_param_id`, `request_param_key`, `request_param_value`
+       p.`network_param_id`, t.`network_type_id`, t.`network_type_handle`, p.`request_param_key`, p.`request_param_value`, p.`request_param_default`
 FROM
-       `{?_MYSQL_PREFIX?}_network_request_params`
+       `{?_MYSQL_PREFIX?}_network_request_params` AS p
+INNER JOIN
+       `{?_MYSQL_PREFIX?}_network_types` AS t
+ON
+       p.`network_type_id`=t.`network_type_id`
 WHERE
-       `network_id`=%s
+       p.`network_id`=%s".$ADD."
 ORDER BY
-       `request_param_key` ASC",
-               array(getRequestElement('network')), __FILE__, __LINE__);
+       t.`network_type_handle` ASC,
+       p.`network_param_id` ASC",
+               array(getRequestParameter('network')), __FILE__, __LINE__);
 
        // Do we have entries?
        if (SQL_NUMROWS($result) > 0) {
@@ -86,6 +105,15 @@ ORDER BY
                        // Add/translate some data
                        $row['sw'] = $SW;
 
+                       // Add it to network if the type matches selected
+                       if ($row['network_type_id'] == postRequestParameter('network_type_id')) {
+                               // Matches, then add it for disabling this entry
+                               $GLOBALS['network_params_disabled'][$row['request_param_key']] = true;
+                       } // END - if
+
+                       // Is default value empty or null?
+                       $row['request_param_default'] = fixNullEmptyToDashes($row['request_param_default'], 3);
+
                        // Add row template and switch color
                        $OUT .= loadTemplate('admin_list_network_params_row', true, $row);
                        $SW = 3 - $SW;
@@ -94,7 +122,7 @@ ORDER BY
                // Prepare data for template
                $content = array(
                        'rows'            => $OUT,
-                       'network_id'      => getRequestElement('network'),
+                       'network_id'      => getRequestParameter('network'),
                        'network_title'   => $networkData['network_title'],
                        'network_reflink' => $networkData['network_reflink'],
                );
@@ -103,12 +131,18 @@ ORDER BY
                loadTemplate('admin_list_network_params', false, $content);
        } else {
                // No entries found
-               loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_NETWORK_PARAMS_404', $networkData['network_title']));
+               loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_NETWORK_REQUEST_PARAMS_404', $networkData['network_title']));
        }
 
        // Free result
        SQL_FREERESULT($result);
 
+       // Add options list for network type
+       $networkData['type_options'] = generateNetworkTypeOptions(postRequestParameter('network_type_id'));
+
+       // Add options for parameter keys
+       $networkData['key_options'] = generateNetworkRequestKeyOptions('');
+
        // Add form for adding new params
        loadTemplate('admin_add_network_params', false, $networkData);
 } else {