function EditSpider() { global $context, $smcFunc, $txt; // Some standard stuff. $context['id_spider'] = !empty($_GET['sid']) ? (int) $_GET['sid'] : 0; $context['page_title'] = $context['id_spider'] ? $txt['spiders_edit'] : $txt['spiders_add']; $context['sub_template'] = 'spider_edit'; // Are we saving? if (!empty($_POST['save'])) { checkSession(); $ips = array(); // Check the IP range is valid. $ip_sets = explode(',', $_POST['spider_ip']); foreach ($ip_sets as $set) { $test = ip2range(trim($set)); if (!empty($test)) { $ips[] = $set; } } $ips = implode(',', $ips); // Goes in as it is... if ($context['id_spider']) { $smcFunc['db_query']('', ' UPDATE {db_prefix}spiders SET spider_name = {string:spider_name}, user_agent = {string:spider_agent}, ip_info = {string:ip_info} WHERE id_spider = {int:current_spider}', array('current_spider' => $context['id_spider'], 'spider_name' => $_POST['spider_name'], 'spider_agent' => $_POST['spider_agent'], 'ip_info' => $ips)); } else { $smcFunc['db_insert']('insert', '{db_prefix}spiders', array('spider_name' => 'string', 'user_agent' => 'string', 'ip_info' => 'string'), array($_POST['spider_name'], $_POST['spider_agent'], $ips), array('id_spider')); } // Order by user agent length. sortSpiderTable(); cache_put_data('spider_search', null, 300); recacheSpiderNames(); redirectexit('action=admin;area=sengines;sa=spiders'); } // The default is new. $context['spider'] = array('id' => 0, 'name' => '', 'agent' => '', 'ip_info' => ''); // An edit? if ($context['id_spider']) { $request = $smcFunc['db_query']('', ' SELECT id_spider, spider_name, user_agent, ip_info FROM {db_prefix}spiders WHERE id_spider = {int:current_spider}', array('current_spider' => $context['id_spider'])); if ($row = $smcFunc['db_fetch_assoc']($request)) { $context['spider'] = array('id' => $row['id_spider'], 'name' => $row['spider_name'], 'agent' => $row['user_agent'], 'ip_info' => $row['ip_info']); } $smcFunc['db_free_result']($request); } }
/** * Here we can add, and edit, spider info! */ public function action_editspiders() { global $context, $txt; // Some standard stuff. $context['id_spider'] = !empty($_GET['sid']) ? (int) $_GET['sid'] : 0; $context['page_title'] = $context['id_spider'] ? $txt['spiders_edit'] : $txt['spiders_add']; $context['sub_template'] = 'spider_edit'; require_once SUBSDIR . '/SearchEngines.subs.php'; // Are we saving? if (!empty($_POST['save'])) { checkSession(); validateToken('admin-ses'); // Check the IP range is valid. $ips = array(); $ip_sets = explode(',', $_POST['spider_ip']); foreach ($ip_sets as $set) { $test = ip2range(trim($set)); if (!empty($test)) { $ips[] = $set; } } $ips = implode(',', $ips); // Goes in as it is... updateSpider($context['id_spider'], $_POST['spider_name'], $_POST['spider_agent'], $ips); // Order by user agent length. sortSpiderTable(); cache_put_data('spider_search', null, 300); recacheSpiderNames(); redirectexit('action=admin;area=sengines;sa=spiders'); } // The default is new. $context['spider'] = array('id' => 0, 'name' => '', 'agent' => '', 'ip_info' => ''); // An edit? if ($context['id_spider']) { $context['spider'] = getSpiderDetails($context['id_spider']); } createToken('admin-ses'); }