From: Roland Häder Date: Wed, 10 Sep 2008 00:07:26 +0000 (+0000) Subject: Some old lost copyright lines fixed, edit/delete admin functions rewritten X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=commitdiff_plain;h=ea2a5e6a7838127d2f9dec02ba68ec575188528b Some old lost copyright lines fixed, edit/delete admin functions rewritten --- diff --git a/.gitattributes b/.gitattributes index 99dc328357..0c0dfd6c4c 100644 --- a/.gitattributes +++ b/.gitattributes @@ -456,6 +456,7 @@ inc/modules/member/what-stats.php -text inc/modules/member/what-support.php -text inc/modules/member/what-surfbar_book.php -text inc/modules/member/what-surfbar_start.php -text +inc/modules/member/what-surfbar_stats.php -text inc/modules/member/what-themes.php -text inc/modules/member/what-transfer.php -text inc/modules/member/what-unconfirmed.php -text diff --git a/inc/databases.php b/inc/databases.php index 0c1508cb02..6c874469e6 100644 --- a/inc/databases.php +++ b/inc/databases.php @@ -114,7 +114,7 @@ define('USAGE_BASE', "usage"); define('SERVER_URL', "http://www.mxchange.org"); // This current patch level -define('CURR_SVN_REVISION', "292"); +define('CURR_SVN_REVISION', "294"); // Take a prime number which is long (if you know a longer one please try it out!) define('_PRIME', 591623); diff --git a/inc/functions.php b/inc/functions.php index f4fa1f7e6a..0bfa73075c 100644 --- a/inc/functions.php +++ b/inc/functions.php @@ -2405,6 +2405,35 @@ function RESET_ADD_INCLUDES () { UPDATE_CONFIG("last_month", $currMonth); } // END - if } +// Handle extra values +function HANDLE_EXTRA_VALUES ($filterFunction, $value, $extraValue) { + // Default is the value itself + $ret = $value; + + // Do we have a special filter function? + if (!empty($filterFunction)) { + // Do we have extra parameters here? + if (!empty($extraValue)) { + // Put both parameters in one new array by default + $args = array($value, $extraValue); + + // If we have an array simply use it and pre-extend it with our value + if (is_array($extraValue)) { + // Make the new args array + $args = array_merge(array($vaue), $extraValue); + } // END - if + + // Call the multi-parameter call-back + $ret = call_user_func_array($filterFunction, $args); + } else { + // One parameter call + $ret = call_user_func($filterFunction, $value); + } + } // END - if + + // Return the value + return $ret; +} // ////////////////////////////////////////////////// // // diff --git a/inc/libs/surfbar_functions.php b/inc/libs/surfbar_functions.php index 2104068759..e64400c5d4 100644 --- a/inc/libs/surfbar_functions.php +++ b/inc/libs/surfbar_functions.php @@ -253,10 +253,15 @@ function SURFBAR_NOTIFY_ADMIN ($messageType, $content) { eval($eval); // Send the notification out - SEND_ADMIN_NOTIFICATION($subject, $templateName, $content, $content['uid']); + return SEND_ADMIN_NOTIFICATION($subject, $templateName, $content, $content['uid']); } // Notify the user about the performed action function SURFBAR_NOTIFY_USER ($messageType, $content) { + // Skip notification if userid is zero + if ($content['uid'] == 0) { + return false; + } // END - if + // Prepare template name $templateName = sprintf("member_surfbar_%s", $messageType); @@ -270,7 +275,7 @@ function SURFBAR_NOTIFY_USER ($messageType, $content) { $mailText = LOAD_EMAIL_TEMPLATE($templateName, $content); // Send the email - SEND_EMAIL($content['uid'], $subject, $mailText); + return SEND_EMAIL($content['uid'], $subject, $mailText); } // Translate the URL status function SURFBAR_TRANSLATE_STATUS ($status) { diff --git a/inc/modules/admin/admin-inc.php b/inc/modules/admin/admin-inc.php index 2fe4a3a1f0..43f531ceee 100644 --- a/inc/modules/admin/admin-inc.php +++ b/inc/modules/admin/admin-inc.php @@ -525,26 +525,22 @@ function ADMIN_MENU_SELECTION($MODE, $default="", $defid="") { if ($MODE == "action") $wht = "(what='' OR what IS NULL) AND action !='login'"; $result = SQL_QUERY_ESC("SELECT %s, title FROM "._MYSQL_PREFIX."_admin_menu WHERE ".$wht." ORDER BY sort", array($MODE), __FILE__, __LINE__); - if (SQL_NUMROWS($result) > 0) - { + if (SQL_NUMROWS($result) > 0) { // Load menu as selection $OUT = "\n"; - } - else - { + } else { // No menus??? $OUT = ADMIN_PROBLEM_NO_MENU; } @@ -553,17 +549,23 @@ function ADMIN_MENU_SELECTION($MODE, $default="", $defid="") { return $OUT; } // -function ADMIN_SAVE_SETTINGS (&$POST, $tableName="_config", $whereStatement="config=0", $translateComma = array(), $alwaysAdd=false) -{ +function ADMIN_SAVE_SETTINGS (&$POST, $tableName="_config", $whereStatement="config=0", $translateComma = array(), $alwaysAdd=false) { global $_CONFIG, $cacheArray, $cacheInstance; + + // Prepare all arrays, variables $DATA = array(); - $skip = false; $TEST2 = ""; - foreach ($POST as $id=>$val) { + $skip = false; + $TEST2 = ""; + + // Now, walk through all entries and prepare them for saving + foreach ($POST as $id => $val) { // Process only formular field but not submit buttons ;) if ($id != "ok") { // Do not save the ok value $TEST = substr($id, -3); - if ((($TEST == "_ye") || ($TEST == "_mo") || ($TEST == "_we") || ($TEST == "_da") || ($TEST == "_ho") || ($TEST == "_mi") || ($TEST == "_se")) && (isset($val))) { + + // Improved way of checking! :-) + if (in_array($TEST, array("_ye", "_mo", "_we", "_da", "_ho", "_mi", "_se"))) { // Found a multi-selection for timings? $TEST = substr($id, 0, -3); if ((isset($POST[$TEST."_ye"])) && (isset($POST[$TEST."_mo"])) && (isset($POST[$TEST."_we"])) && (isset($POST[$TEST."_da"])) && (isset($POST[$TEST."_ho"])) && (isset($POST[$TEST."_mi"])) && (isset($POST[$TEST."_se"])) && ($TEST != $TEST2)) { @@ -572,13 +574,9 @@ function ADMIN_SAVE_SETTINGS (&$POST, $tableName="_config", $whereStatement="con $DATA[] = "$TEST='".$POST[$TEST]."'"; // Remove data from array - unset($POST[$TEST."_ye"]); - unset($POST[$TEST."_mo"]); - unset($POST[$TEST."_we"]); - unset($POST[$TEST."_da"]); - unset($POST[$TEST."_ho"]); - unset($POST[$TEST."_mi"]); - unset($POST[$TEST."_se"]); + foreach (array("ye", "mo", "we", "da", "ho", "mi", "se") as $rem) { + unset($POST[$TEST."_".$rem]); + } // END - foreach // Skip adding unset($id); $skip = true; $TEST2 = $TEST; @@ -611,9 +609,9 @@ function ADMIN_SAVE_SETTINGS (&$POST, $tableName="_config", $whereStatement="con // Update current configuration $_CONFIG[$id] = $val; - } - } - } + } // END - if + } // END - if + } // END - foreach // Check if entry does exist $result = false; @@ -623,7 +621,7 @@ function ADMIN_SAVE_SETTINGS (&$POST, $tableName="_config", $whereStatement="con } else { $result = SQL_QUERY("SELECT * FROM "._MYSQL_PREFIX.$tableName." LIMIT 1", __FILE__, __LINE__); } - } + } // END - if if (SQL_NUMROWS($result) == 1) { // "Implode" all data to single string @@ -638,7 +636,7 @@ function ADMIN_SAVE_SETTINGS (&$POST, $tableName="_config", $whereStatement="con // Split up $line = explode("=", $entry); $KEYs[] = $line[0]; $VALUEs[] = $line[1]; - } + } // END - foreach // Add both in one line $KEYs = implode(", ", $KEYs); @@ -659,7 +657,7 @@ function ADMIN_SAVE_SETTINGS (&$POST, $tableName="_config", $whereStatement="con // Remove it here... if ($cacheInstance->cache_file("config", true)) $cacheInstance->cache_destroy(); unset($cacheArray); - } + } // END - if // Settings saved LOAD_TEMPLATE("admin_settings_saved", false, "".SETTINGS_SAVED.""); @@ -671,6 +669,7 @@ function ADMIN_MAKE_MENU_SELECTION($menu, $type, $name, $default="") { // Init the selection box $OUT = "\n"; return $OUT; } // -function ADMIN_USER_PROFILE_LINK($uid, $title="", $wht="list_user") -{ - if (($title == "") && ($title != "0")) { $title = $uid; } - if (($title == "0") && ($wht == "list_refs")) - { +function ADMIN_USER_PROFILE_LINK($uid, $title="", $wht="list_user") { + if (($title == "") && ($title != "0")) { + // Set userid as title + $title = $uid; + } // END - if + + if (($title == "0") && ($wht == "list_refs")) { // Return title again return $title; - } + } // END - if //* DEBUG: */ echo "A:".$title."
"; // Return link return "".$title.""; } // -function ADMIN_CHECK_MENU_MODE() -{ +function ADMIN_CHECK_MENU_MODE() { global $_CONFIG, $cacheArray; // Set the global mode as the mode for all admins $MODE = $_CONFIG['admin_menu']; $ADMIN = $MODE; // Check individual settings of current admin - if (isset($cacheArray['admins']['la_mode'][get_session('admin_login')])) - { + if (isset($cacheArray['admins']['la_mode'][get_session('admin_login')])) { // Load from cache $ADMIN = $cacheArray['admins']['la_mode'][get_session('admin_login')]; $_CONFIG['cache_hits']++; - } - elseif (GET_EXT_VERSION("admins") >= "0.6.7") - { + } elseif (GET_EXT_VERSION("admins") >= "0.6.7") { // Load from database when version of "admins" is enough $result = SQL_QUERY_ESC("SELECT la_mode FROM "._MYSQL_PREFIX."_admins WHERE login='%s' LIMIT 1", array(get_session('admin_login')), __FILE__, __LINE__); - if (SQL_NUMROWS($result) == 1) - { + if (SQL_NUMROWS($result) == 1) { // Load data list($ADMIN) = SQL_FETCHROW($result); } @@ -786,115 +785,83 @@ function ADMIN_CHANGE_ACTIVATION_STATUS ($IDs, $table, $row, $idRow = "id") { LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_NOTHING_SELECTED_CHANGE); } } -// Delete rows by given ID numbers -function ADMIN_DELETE_ENTRIES_CONFIRM ($IDs, $table, $row, $columns = array(), $filterFunctions = array(), $deleteNow=false, $idRow="id") { +// Build a special template list +function ADMIN_BUILD_LIST ($listType, $IDs, $table, $columns, $filterFunctions, $extraValues, $idColumn, $userIdColumn) { global $_CONFIG; $OUT = ""; $SW = 2; - if ((is_array($IDs)) && (count($IDs) > 0)) { - // "Walk" through all entries and count them - if ($deleteNow) { - // Delete them - die("DELETE!"); - } else { - // List for confirmation - foreach ($IDs as $id => $selected) { - // Secure ID number - $id = bigintval($id); - - // Will always be 1 ;-) - if ($selected == 1) { - // Get result from a given column array and table name - $result = SQL_RESULT_FROM_ARRAY($table, $columns, $idRow, $id); - - // Is there one entry? - if (SQL_NUMROWS($result) == 1) { - // Load all data - $content = SQL_FETCHARRAY($result); - - // Filter all data - foreach ($content as $key=>$value) { - // Is a filter function set? - $idx = array_search($key, $columns, true); - if (!empty($filterFunctions[$idx])) { - // Then call it! - $content[$key] = call_user_func($filterFunctions[$idx], $value); - } - } - // Add color switching - $content['sw'] = $SW; + // "Walk" through all entries + foreach ($IDs as $id => $selected) { + // Secure ID number + $id = bigintval($id); - // Then list it again... - $OUT .= LOAD_TEMPLATE("admin_del_".$table."_row", true, $content); - $SW = 3 - $SW; - } + // Will always be 1 ;-) + if ($selected == 1) { + // Get result from a given column array and table name + $result = SQL_RESULT_FROM_ARRAY($table, $columns, $idColumn, $id); - // Free the result - SQL_FREERESULT($result); - } + // Is there one entry? + if (SQL_NUMROWS($result) == 1) { + // Load all data + $content = SQL_FETCHARRAY($result); + + // Filter all data + foreach ($content as $key=>$value) { + // Search index + $idx = array_search($key, $columns, true); + + // Handle the call in external function + $content[$key] = HANDLE_EXTRA_VALUES($filterFunctions[$idx], $value, $extraValues[$idx]); + } // END - foreach + + // Add color switching + $content['sw'] = $SW; + + // Then list it again... + $OUT .= LOAD_TEMPLATE("admin_".$listType."_".$table."_row", true, $content); + $SW = 3 - $SW; } - // Load master template - LOAD_TEMPLATE("admin_del_".$table."", false, $OUT); + // Free the result + SQL_FREERESULT($result); } } + + // Load master template + LOAD_TEMPLATE("admin_".$listType."_".$table."", false, $OUT); +} +// Delete rows by given ID numbers +function ADMIN_DELETE_ENTRIES_CONFIRM ($IDs, $table, $columns=array(), $filterFunctions=array(), $extraValues=array(), $deleteNow=false, $idColumn="id", $userIdColumn="userid") { + // All valid entries? (We hope so here!) + if ((is_array($IDs)) && (count($IDs) > 0) && (count($columns) == count($filterFunctions)) && (count($columns) == count($extraValues))) { + // Shall we delete here or list for deletion? + if ($deleteNow) { + // Delete them + die("DELETE!"); + } else { + // List for deletion confirmation + ADMIN_BUILD_LIST("del", $IDs, $table, $columns, $filterFunctions, $extraValues, $idColumn, $userIdColumn); + } + } // END - if } // Edit rows by given ID numbers -function ADMIN_EDIT_ENTRIES_CONFIRM ($IDs, $table, $row, $columns = array(), $filterFunctions = array(), $editNow=false, $idRow="id") { - global $_CONFIG; - $OUT = ""; $SW = 2; - if ((is_array($IDs)) && (count($IDs) > 0)) { - // "Walk" through all entries and count them +function ADMIN_EDIT_ENTRIES_CONFIRM ($IDs, $table, $columns=array(), $filterFunctions=array(), $extraValues=array(), $editNow=false, $idColumn="id", $userIdColumn="userid") { + // All valid entries? (We hope so here!) + if ((is_array($IDs)) && (count($IDs) > 0) && (count($columns) == count($filterFunctions)) && (count($columns) == count($extraValues))) { + // Shall we change here or list for editing? if ($editNow) { - // Delete them + // Change them die("EDIT!"); } else { - // List for confirmation - foreach ($IDs as $id => $selected) { - // Secure ID number - $id = bigintval($id); - - // Will always be 1 ;-) - if ($selected == 1) { - // Get result from a given column array and table name - $result = SQL_RESULT_FROM_ARRAY($table, $columns, $idRow, $id); - - // Is there one entry? - if (SQL_NUMROWS($result) == 1) { - // Load all data - $content = SQL_FETCHARRAY($result); - - // Filter all data - foreach ($content as $key=>$value) { - // Is a filter function set? - $idx = array_search($key, $columns, true); - if (!empty($filterFunctions[$idx])) { - // Then call it! - $content[$key] = call_user_func($filterFunctions[$idx], $value); - } - } - - // Add color switching - $content['sw'] = $SW; - - // Then list it again... - $OUT .= LOAD_TEMPLATE("admin_edit_".$table."_row", true, $content); - $SW = 3 - $SW; - } - - // Free the result - SQL_FREERESULT($result); - } - } - - // Load master template - LOAD_TEMPLATE("admin_edit_".$table."", false, $OUT); + // List for editing + ADMIN_BUILD_LIST("edit", $IDs, $table, $columns, $filterFunctions, $extraValues, $idColumn, $userIdColumn); } - } + } // END - if } -// Checks proxy settins by fetching check-updates2.php from www.mxchange.org +// Checks proxy settins by fetching check-updates3.php from www.mxchange.org function ADMIN_TEST_PROXY_SETTINGS ($settingsArray) { global $_CONFIG; + // By default they are invalid $valid = false; @@ -902,7 +869,7 @@ function ADMIN_TEST_PROXY_SETTINGS ($settingsArray) { $_CONFIG = array_merge($_CONFIG, $settingsArray); // Now get the test URL - $content = GET_URL("check-updates2.php"); + $content = GET_URL("check-updates3.php"); // Is the first line with "200 OK"? $valid = eregi("200 OK", $content[0]); diff --git a/inc/modules/admin/what-list_bank_package.php b/inc/modules/admin/what-list_bank_package.php index 4f8ce1d7a3..6888e9b4a7 100644 --- a/inc/modules/admin/what-list_bank_package.php +++ b/inc/modules/admin/what-list_bank_package.php @@ -52,21 +52,21 @@ if ((isset($_POST['id'])) && (is_array($_POST['id'])) && (count($_POST['id']) > ADMIN_EDIT_ENTRIES_CONFIRM( $_POST['id'], "bank_packages", - "package_active", array("id", "title", "description", "account_fee", "free_transfers", "transfer_fee", "output_system_mode", "package_active", "free_months_no_fee", "interest_plus", "interest_minus", "first_payment", "free_account_income", "free_account_stuff", "tan_lock"), - array("bigintval", "", "", "TRANSLATE_COMMA", "bigintval", "TRANSLATE_COMMA", "", "", "bigintval", "TRANSLATE_COMMA", "TRANSLATE_COMMA", "TRANSLATE_COMMA", "TRANSLATE_COMMA", "", "bigintval") + array("bigintval", "", "", "TRANSLATE_COMMA", "bigintval", "TRANSLATE_COMMA", "", "", "bigintval", "TRANSLATE_COMMA", "TRANSLATE_COMMA", "TRANSLATE_COMMA", "TRANSLATE_COMMA", "", "bigintval"), + array("", "", "", "", "", "", "", "", "", "", "", "", "", "", "") ); $show = false; } elseif (isset($_POST['do_edit'])) { // Delete entries (with confirmation) - ADMIN_EDIT_ENTRIES_CONFIRM($_POST['id'], "bank_packages", "package_active", array(), array(), true); + ADMIN_EDIT_ENTRIES_CONFIRM($_POST['id'], "bank_packages", array(), array(), array(), true); } elseif (isset($_POST['delete'])) { // Delete entries (with confirmation) - ADMIN_DELETE_ENTRIES_CONFIRM($_POST['id'], "bank_packages", "package_active", array("id", "title", "description", "account_fee"), array("bigintval", "", "", "TRANSLATE_COMMA")); + ADMIN_DELETE_ENTRIES_CONFIRM($_POST['id'], "bank_packages", array("id", "title", "description", "account_fee"), array("bigintval", "", "", "TRANSLATE_COMMA"), array("", "", "", "")); $show = false; } elseif (isset($_POST['remove'])) { // Delete entries (with confirmation) - ADMIN_DELETE_ENTRIES_CONFIRM($_POST['id'], "bank_packages", "package_active", array(), array(), true); + ADMIN_DELETE_ENTRIES_CONFIRM($_POST['id'], "bank_packages", array(), array(), array(), true); } } // END - if diff --git a/inc/modules/admin/what-list_surfbar_urls.php b/inc/modules/admin/what-list_surfbar_urls.php index 3753e8f6af..9911842e84 100644 --- a/inc/modules/admin/what-list_surfbar_urls.php +++ b/inc/modules/admin/what-list_surfbar_urls.php @@ -40,6 +40,35 @@ if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!is_admin())) { // Add description as navigation point ADD_DESCR("admin", basename(__FILE__)); +// By default show the list... +$show = true; + +// Edit or delete button hit? +if (isset($_POST['edit'])) { + // Delete entries (with confirmation) + ADMIN_EDIT_ENTRIES_CONFIRM( + $_POST['id'], + "surfbar_urls", + array("id", "url", "reward", "costs"), + array("bigintval", "", "TRANSLATE_COMMA", "TRANSLATE_COMMA"), + array("", "", "") + ); + $show = false; +} elseif (isset($_POST['do_edit'])) { + // Delete entries (with confirmation) + ADMIN_EDIT_ENTRIES_CONFIRM($_POST['id'], "surfbar_urls", array(), array(), array(), true); +} elseif (isset($_POST['delete'])) { + // Delete entries (with confirmation) + ADMIN_DELETE_ENTRIES_CONFIRM($_POST['id'], "surfbar_urls", array("id", "url", "registered"), array("bigintval", "", "MAKE_DATETIME"), array("", "", "2")); + $show = false; +} elseif (isset($_POST['remove'])) { + // Delete entries (with confirmation) + ADMIN_DELETE_ENTRIES_CONFIRM($_POST['id'], "surfbar_urls", array(), array(), array(), true); +} + +// Show entries? +if (!$show) return false; + // List all URLs $result = SQL_QUERY("SELECT id, userid, url, reward, costs, views_total, status, UNIX_TIMESTAMP(registered) AS registered, UNIX_TIMESTAMP(last_locked) AS last_locked, lock_reason FROM "._MYSQL_PREFIX."_surfbar_urls diff --git a/inc/modules/member/what-surfbar_stats.php b/inc/modules/member/what-surfbar_stats.php new file mode 100644 index 0000000000..0b6800a36d --- /dev/null +++ b/inc/modules/member/what-surfbar_stats.php @@ -0,0 +1,46 @@ + diff --git a/inc/modules/sponsor.php b/inc/modules/sponsor.php index f8a1083e9b..7a3258071b 100644 --- a/inc/modules/sponsor.php +++ b/inc/modules/sponsor.php @@ -12,7 +12,7 @@ * -------------------------------------------------------------------- * * * * -------------------------------------------------------------------- * - * Copyleft (c) 2003, 2004, 2005 by Roland Haeder * + * Copyright (c) 2003 - 2008 by Roland Haeder * * For more information visit: http://www.mxchange.org * * * * This program is free software. You can redistribute it and/or modify * diff --git a/inc/modules/sponsor/.php b/inc/modules/sponsor/.php index 7f11d01458..026ba6e9e0 100644 --- a/inc/modules/sponsor/.php +++ b/inc/modules/sponsor/.php @@ -12,7 +12,7 @@ * -------------------------------------------------------------------- * * * * -------------------------------------------------------------------- * - * Copyleft (c) 2003, 2004, 2005 by Roland Haeder * + * Copyright (c) 2003 - 2008 by Roland Haeder * * For more information visit: http://www.mxchange.org * * * * This program is free software. You can redistribute it and/or modify * diff --git a/inc/modules/sponsor/account.php b/inc/modules/sponsor/account.php index cdd775e718..9212ace1e4 100644 --- a/inc/modules/sponsor/account.php +++ b/inc/modules/sponsor/account.php @@ -12,7 +12,7 @@ * -------------------------------------------------------------------- * * * * -------------------------------------------------------------------- * - * Copyleft (c) 2003, 2004, 2005 by Roland Haeder * + * Copyright (c) 2003 - 2008 by Roland Haeder * * For more information visit: http://www.mxchange.org * * * * This program is free software. You can redistribute it and/or modify * diff --git a/inc/modules/sponsor/settings.php b/inc/modules/sponsor/settings.php index 8c2f4dacbf..f9130baf93 100644 --- a/inc/modules/sponsor/settings.php +++ b/inc/modules/sponsor/settings.php @@ -12,7 +12,7 @@ * -------------------------------------------------------------------- * * * * -------------------------------------------------------------------- * - * Copyleft (c) 2003, 2004, 2005 by Roland Haeder * + * Copyright (c) 2003 - 2008 by Roland Haeder * * For more information visit: http://www.mxchange.org * * * * This program is free software. You can redistribute it and/or modify * diff --git a/inc/modules/sponsor/welcome.php b/inc/modules/sponsor/welcome.php index 0c9b1f7f9b..bc67c1dedb 100644 --- a/inc/modules/sponsor/welcome.php +++ b/inc/modules/sponsor/welcome.php @@ -12,7 +12,7 @@ * -------------------------------------------------------------------- * * * * -------------------------------------------------------------------- * - * Copyleft (c) 2003, 2004, 2005 by Roland Haeder * + * Copyright (c) 2003 - 2008 by Roland Haeder * * For more information visit: http://www.mxchange.org * * * * This program is free software. You can redistribute it and/or modify * diff --git a/templates/de/html/admin/admin_list_surfbar_urls.tpl b/templates/de/html/admin/admin_list_surfbar_urls.tpl index b95ed3735f..81058d7a7d 100644 --- a/templates/de/html/admin/admin_list_surfbar_urls.tpl +++ b/templates/de/html/admin/admin_list_surfbar_urls.tpl @@ -23,7 +23,7 @@ $content  *  *  * - +