/** * Note: This file may contain artifacts of previous malicious infection. * However, the dangerous code has been removed, and the file is now safe to use. */ /** * @file * Pathologic text filter for Drupal. * * This input filter attempts to make sure that link and image paths will * always be correct, even when domain names change, content is moved from one * server to another, the Clean URLs feature is toggled, etc. */ /** * Implements hook_filter_info(). */ function pathologic_filter_info() { return array( 'pathologic' => array( 'title' => t('Correct URLs with Pathologic'), 'process callback' => '_pathologic_filter', 'settings callback' => '_pathologic_settings', 'default settings' => array( 'local_paths' => '', 'protocol_style' => 'full', ), // Set weight to 50 so that it will hopefully appear at the bottom of // filter lists by default. 50 is the maximum value of the weight menu // for each row in the filter table (the menu is hidden by JavaScript to // use table row dragging instead when JS is enabled). 'weight' => 50, ) ); } /** * Settings callback for Pathologic. */ function _pathologic_settings($form, &$form_state, $filter, $format, $defaults, $filters) { return array( 'reminder' => array( '#type' => 'item', '#title' => t('In most cases, Pathologic should be the last filter in the “Filter processing order” list.'), '#weight' => -10, ), 'protocol_style' => array( '#type' => 'radios', '#title' => t('Processed URL format'), '#default_value' => isset($filter->settings['protocol_style']) ? $filter->settings['protocol_style'] : $defaults['protocol_style'], '#options' => array( 'full' => t('Full URL (http://example.com/foo/bar)'), 'proto-rel' => t('Protocol relative URL (//example.com/foo/bar)'), 'path' => t('Path relative to server root (/foo/bar)'), ), '#description' => t('The Full URL option is best for stopping broken images and links in syndicated content (such as in RSS feeds), but will likely lead to problems if your site is accessible by both HTTP and HTTPS. Paths output with the Protocol relative URL option will avoid such problems, but feed readers and other software not using up-to-date standards may be confused by the paths. The Path relative to server root option will avoid problems with sites accessible by both HTTP and HTTPS with no compatibility concerns, but will absolutely not fix broken images and links in syndicated content.'), '#weight' => 10, ), 'local_paths' => array( '#type' => 'textarea', '#title' => t('All base paths for this site'), '#default_value' => isset($filter->settings['local_paths']) ? $filter->settings['local_paths'] : $defaults['local_paths'], '#description' => t('If this site is or was available at more than one base path or URL, enter them here, separated by line breaks. For example, if this site is live at http://example.com/ but has a staging version at http://dev.example.org/staging/, you would enter both those URLs here. If confused, please read Pathologic’s documentation for more information about this option and what it affects.', array('!docs' => 'http://drupal.org/node/257026')), '#weight' => 20, ), ); } /** * Pathologic filter callback. * * Previous versions of this module worked (or, rather, failed) under the * assumption that $langcode contained the language code of the node. Sadly, * this isn't the case. * @see http://drupal.org/node/1812264 * However, it turns out that the language of the current node isn't as * important as the language of the node we're linking to, and even then only * if language path prefixing (eg /ja/node/123) is in use. REMEMBER THIS IN THE * FUTURE, ALBRIGHT. * * The below code uses the @ operator before parse_url() calls because in PHP * 5.3.2 and earlier, parse_url() causes a warning of parsing fails. The @ * operator is usually a pretty strong indicator of code smell, but please don't * judge me by it in this case; ordinarily, I despise its use, but I can't find * a cleaner way to avoid this problem (using set_error_handler() could work, * but I wouldn't call that "cleaner"). Fortunately, Drupal 8 will require at * least PHP 5.3.5, so this mess doesn't have to spread into the D8 branch of * Pathologic. * @see https://drupal.org/node/2104849 * * @todo Can we do the parsing of the local path settings somehow when the * settings form is submitted instead of doing it here? */ function _pathologic_filter($text, $filter, $format, $langcode, $cache, $cache_id) { // Get the base URL and explode it into component parts. We add these parts // to the exploded local paths settings later. global $base_url; $base_url_parts = @parse_url($base_url . '/'); // Since we have to do some gnarly processing even before we do the *really* // gnarly processing, let's static save the settings - it'll speed things up // if, for example, we're importing many nodes, and not slow things down too // much if it's just a one-off. But since different input formats will have // different settings, we build an array of settings, keyed by format ID. $cached_settings = &drupal_static(__FUNCTION__, array()); if (!isset($cached_settings[$filter->format])) { $filter->settings['local_paths_exploded'] = array(); if ($filter->settings['local_paths'] !== '') { // Build an array of the exploded local paths for this format's settings. // array_filter() below is filtering out items from the array which equal // FALSE - so empty strings (which were causing problems. // @see http://drupal.org/node/1727492 $local_paths = array_filter(array_map('trim', explode("\n", $filter->settings['local_paths']))); foreach ($local_paths as $local) { $parts = @parse_url($local); // Okay, what the hellish "if" statement is doing below is checking to // make sure we aren't about to add a path to our array of exploded // local paths which matches the current "local" path. We consider it // not a match, if… // @todo: This is pretty horrible. Can this be simplified? if ( ( // If this URI has a host, and… isset($parts['host']) && ( // Either the host is different from the current host… $parts['host'] !== $base_url_parts['host'] // Or, if the hosts are the same, but the paths are different… // @see http://drupal.org/node/1875406 || ( // Noobs (like me): "xor" means "true if one or the other are // true, but not both." (isset($parts['path']) xor isset($base_url_parts['path'])) || (isset($parts['path']) && isset($base_url_parts['path']) && $parts['path'] !== $base_url_parts['path']) ) ) ) || // Or… ( // The URI doesn't have a host… !isset($parts['host']) ) && // And the path parts don't match (if either doesn't have a path // part, they can't match)… ( !isset($parts['path']) || !isset($base_url_parts['path']) || $parts['path'] !== $base_url_parts['path'] ) ) { // Add it to the list. $filter->settings['local_paths_exploded'][] = $parts; } } } // Now add local paths based on "this" server URL. $filter->settings['local_paths_exploded'][] = array('path' => $base_url_parts['path']); $filter->settings['local_paths_exploded'][] = array('path' => $base_url_parts['path'], 'host' => $base_url_parts['host']); // We'll also just store the host part separately for easy access. $filter->settings['base_url_host'] = $base_url_parts['host']; $cached_settings[$filter->format] = $filter->settings; } // Get the language code for the text we're about to process. $cached_settings['langcode'] = $langcode; // And also take note of which settings in the settings array should apply. $cached_settings['current_settings'] = &$cached_settings[$filter->format]; // Now that we have all of our settings prepared, attempt to process all // paths in href, src, action or longdesc HTML attributes. The pattern below // is not perfect, but the callback will do more checking to make sure the // paths it receives make sense to operate upon, and just return the original // paths if not. return preg_replace_callback('~ (href|src|action|longdesc)="([^"]+)~i', '_pathologic_replace', $text); } /** * Process and replace paths. preg_replace_callback() callback. */ function _pathologic_replace($matches) { // Get the base path. global $base_path; // Get the settings for the filter. Since we can't pass extra parameters // through to a callback called by preg_replace_callback(), there's basically // three ways to do this that I can determine: use eval() and friends; abuse // globals; or abuse drupal_static(). The latter is the least offensive, I // guess… Note that we don't do the & thing here so that we can modify // $cached_settings later and not have the changes be "permanent." $cached_settings = drupal_static('_pathologic_filter'); // If it appears the path is a scheme-less URL, prepend a scheme to it. // parse_url() cannot properly parse scheme-less URLs. Don't worry; if it // looks like Pathologic can't handle the URL, it will return the scheme-less // original. // @see https://drupal.org/node/1617944 // @see https://drupal.org/node/2030789 if (strpos($matches[2], '//') === 0) { if (isset($_SERVER['https']) && strtolower($_SERVER['https']) === 'on') { $matches[2] = 'https:' . $matches[2]; } else { $matches[2] = 'http:' . $matches[2]; } } // Now parse the URL after reverting HTML character encoding. // @see http://drupal.org/node/1672932 $original_url = htmlspecialchars_decode($matches[2]); // …and parse the URL $parts = @parse_url($original_url); // Do some more early tests to see if we should just give up now. if ( // If parse_url() failed, give up. $parts === FALSE || ( // If there's a scheme part and it doesn't look useful, bail out. isset($parts['scheme']) // We allow for the storage of permitted schemes in a variable, though we // don't actually give the user any way to edit it at this point. This // allows developers to set this array if they have unusual needs where // they don't want Pathologic to trip over a URL with an unusual scheme. // @see http://drupal.org/node/1834308 // "files" and "internal" are for Path Filter compatibility. && !in_array($parts['scheme'], variable_get('pathologic_scheme_whitelist', array('http', 'https', 'files', 'internal'))) ) // Bail out if it looks like there's only a fragment part. || (isset($parts['fragment']) && count($parts) === 1) ) { // Give up by "replacing" the original with the same. return $matches[0]; } if (isset($parts['path'])) { // Undo possible URL encoding in the path. // @see http://drupal.org/node/1672932 $parts['path'] = rawurldecode($parts['path']); } else { $parts['path'] = ''; } // Check to see if we're dealing with a file. // @todo Should we still try to do path correction on these files too? if (isset($parts['scheme']) && $parts['scheme'] === 'files') { // Path Filter "files:" support. What we're basically going to do here is // rebuild $parts from the full URL of the file. $new_parts = @parse_url(file_create_url(file_default_scheme() . '://' . $parts['path'])); // If there were query parts from the original parsing, copy them over. if (!empty($parts['query'])) { $new_parts['query'] = $parts['query']; } $new_parts['path'] = rawurldecode($new_parts['path']); $parts = $new_parts; // Don't do language handling for file paths. $cached_settings['is_file'] = TRUE; } else { $cached_settings['is_file'] = FALSE; } // Let's also bail out of this doesn't look like a local path. $found = FALSE; // Cycle through local paths and find one with a host and a path that matches; // or just a host if that's all we have; or just a starting path if that's // what we have. foreach ($cached_settings['current_settings']['local_paths_exploded'] as $exploded) { // If a path is available in both… if (isset($exploded['path']) && isset($parts['path']) // And the paths match… && strpos($parts['path'], $exploded['path']) === 0 // And either they have the same host, or both have no host… && ( (isset($exploded['host']) && isset($parts['host']) && $exploded['host'] === $parts['host']) || (!isset($exploded['host']) && !isset($parts['host'])) ) ) { // Remove the shared path from the path. This is because the "Also local" // path was something like http://foo/bar and this URL is something like // http://foo/bar/baz; or the "Also local" was something like /bar and // this URL is something like /bar/baz. And we only care about the /baz // part. $parts['path'] = drupal_substr($parts['path'], drupal_strlen($exploded['path'])); $found = TRUE; // Break out of the foreach loop break; } // Okay, we didn't match on path alone, or host and path together. Can we // match on just host? Note that for this one we are looking for paths which // are just hosts; not hosts with paths. elseif ((isset($parts['host']) && !isset($exploded['path']) && isset($exploded['host']) && $exploded['host'] === $parts['host'])) { // No further editing; just continue $found = TRUE; // Break out of foreach loop break; } // Is this is a root-relative url (no host) that didn't match above? // Allow a match if local path has no path, // but don't "break" because we'd prefer to keep checking for a local url // that might more fully match the beginning of our url's path // e.g.: if our url is /foo/bar we'll mark this as a match for // http://example.com but want to keep searching and would prefer a match // to http://example.com/foo if that's configured as a local path elseif (!isset($parts['host']) && (!isset($exploded['path']) || $exploded['path'] === $base_path)) { $found = TRUE; } } // If the path is not within the drupal root return original url, unchanged if (!$found) { return $matches[0]; } // Okay, format the URL. // If there's still a slash lingering at the start of the path, chop it off. $parts['path'] = ltrim($parts['path'],'/'); // Examine the query part of the URL. Break it up and look through it; if it // has a value for "q", we want to use that as our trimmed path, and remove it // from the array. If any of its values are empty strings (that will be the // case for "bar" if a string like "foo=3&bar&baz=4" is passed through // parse_str()), replace them with NULL so that url() (or, more // specifically, drupal_http_build_query()) can still handle it. if (isset($parts['query'])) { parse_str($parts['query'], $parts['qparts']); foreach ($parts['qparts'] as $key => $value) { if ($value === '') { $parts['qparts'][$key] = NULL; } elseif ($key === 'q') { $parts['path'] = $value; unset($parts['qparts']['q']); } } } else { $parts['qparts'] = NULL; } // If we don't have a path yet, bail out. if (!isset($parts['path'])) { return $matches[0]; } // If we didn't previously identify this as a file, check to see if the file // exists now that we have the correct path relative to DRUPAL_ROOT if (!$cached_settings['is_file']) { $cached_settings['is_file'] = !empty($parts['path']) && is_file(DRUPAL_ROOT . '/'. $parts['path']); } // Okay, deal with language stuff. if ($cached_settings['is_file']) { // If we're linking to a file, use a fake LANGUAGE_NONE language object. // Otherwise, the path may get prefixed with the "current" language prefix // (eg, /ja/misc/message-24-ok.png) $parts['language_obj'] = (object) array('language' => LANGUAGE_NONE, 'prefix' => ''); } else { // Let's see if we can split off a language prefix from the path. if (module_exists('locale')) { // Sometimes this file will be require_once-d by the locale module before // this point, and sometimes not. We require_once it ourselves to be sure. require_once DRUPAL_ROOT . '/includes/language.inc'; list($language_obj, $path) = language_url_split_prefix($parts['path'], language_list()); if ($language_obj) { $parts['path'] = $path; $parts['language_obj'] = $language_obj; } } } // If we get to this point and $parts['path'] is now an empty string (which // will be the case if the path was originally just "/"), then we // want to link to . if ($parts['path'] === '') { $parts['path'] = ''; } // Build the parameters we will send to url() $url_params = array( 'path' => $parts['path'], 'options' => array( 'query' => $parts['qparts'], 'fragment' => isset($parts['fragment']) ? $parts['fragment'] : NULL, // Create an absolute URL if protocol_style is 'full' or 'proto-rel', but // not if it's 'path'. 'absolute' => $cached_settings['current_settings']['protocol_style'] !== 'path', // If we seem to have found a language for the path, pass it along to // url(). Otherwise, ignore the 'language' parameter. 'language' => isset($parts['language_obj']) ? $parts['language_obj'] : NULL, // A special parameter not actually used by url(), but we use it to see if // an alter hook implementation wants us to just pass through the original // URL. 'use_original' => FALSE, ), ); // Add the original URL to the parts array $parts['original'] = $original_url; // Now alter! // @see http://drupal.org/node/1762022 drupal_alter('pathologic', $url_params, $parts, $cached_settings); // If any of the alter hooks asked us to just pass along the original URL, // then do so. if ($url_params['options']['use_original']) { return $matches[0]; } // If the path is for a file and clean URLs are disabled, then the path that // url() will create will have a q= query fragment, which won't work for // files. To avoid that, we use this trick to temporarily turn clean URLs on. // This is horrible, but it seems to be the sanest way to do this. // @see http://drupal.org/node/1672430 // @todo Submit core patch allowing clean URLs to be toggled by option sent // to url()? if (!empty($cached_settings['is_file'])) { $cached_settings['orig_clean_url'] = !empty($GLOBALS['conf']['clean_url']); if (!$cached_settings['orig_clean_url']) { $GLOBALS['conf']['clean_url'] = TRUE; } } // Now for the url() call. Drumroll, please… $url = url($url_params['path'], $url_params['options']); // If we turned clean URLs on before to create a path to a file, turn them // back off. if ($cached_settings['is_file'] && !$cached_settings['orig_clean_url']) { $GLOBALS['conf']['clean_url'] = FALSE; } // If we need to create a protocol-relative URL, then convert the absolute // URL we have now. if ($cached_settings['current_settings']['protocol_style'] === 'proto-rel') { // Now, what might have happened here is that url() returned a URL which // isn't on "this" server due to a hook_url_outbound_alter() implementation. // We don't want to convert the URL in that case. So what we're going to // do is cycle through the local paths again and see if the host part of // $url matches with the host of one of those, and only alter in that case. $url_parts = @parse_url($url); if (!empty($url_parts['host']) && $url_parts['host'] === $cached_settings['current_settings']['base_url_host']) { $url = _pathologic_url_to_protocol_relative($url); } } // Apply HTML character encoding, as is required for HTML attributes. // @see http://drupal.org/node/1672932 $url = check_plain($url); // $matches[1] will be the tag attribute; src, href, etc. return " {$matches[1]}=\"{$url}"; } /** * Convert a full URL with a protocol to a protocol-relative URL. * * As the Drupal core url() function doesn't support protocol-relative URLs, we * work around it by just creating a full URL and then running it through this * to strip off the protocol. * * Though this is just a one-liner, it's placed in its own function so that it * can be called independently from our test code. */ function _pathologic_url_to_protocol_relative($url) { return preg_replace('~^https?://~', '//', $url); } КРАСНОАРМЕЕЦ КАК ВЫСШИЙ ОБРАЗЕЦ ЗАЩИТНИКА ОТЕЧЕСТВА | КОММУНИСТИЧЕСКАЯ ПАРТИЯ БЕЛАРУСИ

КРАСНОАРМЕЕЦ КАК ВЫСШИЙ ОБРАЗЕЦ ЗАЩИТНИКА ОТЕЧЕСТВА

Говоря о победе советского народа в Великой Отечественной войне, важно подчеркнуть, что сама Красная Армия была образцовой школой патриотического и нравственного воспитания не только молодых людей, но и всего советского общества. Рейтинг красноармейца по степени почета и уважения в общественном сознании был несопоставимо выше, чем это имело место в дореволюционные времена у солдат императорской русской армии.

Ведь солдата до революции за последнего человека считали. В общественный сад (парк) ему вход был запрещен, в трамваях ездить было нельзя. Солдата подвергали телесным наказаниям «еще во время Первой мировой войны». «Старики, многие из которых были в прошлом солдатами царской армии, с гордостью смотрели на своих одетых в красноармейскую форму детей и внуков и даже завидовали им». Генерал-фельдмаршал Г. Фон Клейст отмечал: «То, что солдаты Красной Армии продолжали сражаться в самых безнадежных ситуациях, совершенно не заботясь о собственной жизни, можно в значительной степени приписать храброму поведению комиссаров. Разница между Российской Императорской Армией в годы Первой мировой войны и Красной Армией даже в самые первые дни германского вторжения была просто колоссальной. Если в прошлой войне русские армии сражались как более или менее аморфная масса, малоподвижная, лишенная индивидуальностей, то духовный подъем, вызванный идеями коммунизма, начал сказываться уже летом 1941 года». А генерал Г. Блюментрит, начальник штаба 4 армии, наступавшей на Белоруссию, писал: «Красная Армия 1941-1945 гг. Была гораздо более сильным противником, чем царская армия, ибо она самоотверженно сражалась за идею».

Поэтому глубоко невежественны современные фальсификаторы в своем понимании морального духа и человеческих качеств красноармейцев в годы Великой Отечественной войны. Свою мамонистскую душонку и раболепное преклонение перед Западом они пытаются перенести на воинов Красной Армии, изображая последних в виде неких недоразвитых субъектов и антисоциальных элементов, которые боятся и ненавидят Сталина и советскую власть, и воюют с немцами только из-за своей глупости и из-под палки. Так, писатель Владимир Войнович в своем пасквильном романе «Жизнь и необычайные приключения солдата Ивана Чонкина» изобразил советского воина маленьким, кривоногим, с красными ушами, глупым и забитым. А резонерствующий театрал Эльдар Рязанов назвал его «нормальным народным типом, подлинно русским характером». Отличие этих «деятелей» литературы и искусства от действительно выдающегося русского писателя Алексея Толстого с его «Русским характером» как раз представляет собой отличие настоящего писателя-патриота от литературных и театральных пакостников и фальсификаторов. Последним в силу их духовной ущербности никогда не понять, что могут быть воины, которые способны на величайший героизм и самопожертвование во имя свободы своей Родины.

Знаменитый белорусский скульптор Валентин Занкович, автор главного памятника мемориального комплекса «Хатынь» в казематах Брестской крепости нашел потрясающую надпись, сделанную защитниками крепости, которая широкой общественности еще не известна. Это лаконичные, но обжигающиеся душу слова: «Нас было пятеро. Мы умрем за Сталина». Вот она действительная правда о морально-психологической атмосфере советского общества во время Великой Отечественной войны.

Не подлежит никакому сомнению, что ментальность наших красноармейцев и немецких солдат очень отличилась. Особенно показательна в этом плане Сталинградская битва. Отчеты военной цензуры и отчеты НКВД показывают, что отрицательные настроения у наших воинов составляли лишь долю процента. Другое дело, немцы. Самые страшные дни для Сталинграда еще не наступили, еще не понятно, кто кого победит, немцы еще не голодают и не мерзнут, а находятся в гораздо лучших условиях, чем наши. А в письмах своим близким ноют, жалуются. Основной лейтмотив немецких писем: «Мои дорогие, я очень страдаю, пострадайте вместе со мной». Вызывают в родственниках чувство вины, просят прислать из Германии продовольственную посылку.

Известно, что последний самолет из Сталинграда вывез немецкую почту, когда армия Паулюса уже была разгромлена. Из этих писем министерство пропаганды Геббельса собиралось выпустить сборник для поднятия морального духа армии и гражданского населения Германии, показать «каковы наши герои». «Но настроение подавляющего большинства авторов было настолько упадническим, что эта затея провалилась. Даже двух процентов не набрали писем, которые бы соответствовали этой пропагандистской задаче».

Фельдмаршал Ф.Паулюс, уже находясь в плену, сказал советскому офицеру: «А я вот уже в плену прочитал «Как закалялась сталь» и подумал: если бы там отчетливо представляли себе, что в Красной Армии немало таких Корчагиных, в наши расчеты были бы внесены существенные изменения».

О фальсификации истории Великой Отечественной войны

9 мая 2020 года великое событие в нашем историческом календаре – 75-летие Победы советского народа в Великой Отечественной войне над немецко-фашистскими захватчиками. В этом плане есть смысл остановиться на некоторых фальсификациях, связанных с событиями Великой Отечественной войны и советского периода отечественной истории.

Взять, к примеру, попытку фальсификаторов заменить Великую Отечественную войну Второй мировой войной. Этим они хотят не только объявить США победителем в войне, но также поставить знак равенства между всеми участниками данной войны. По логике фальсификаторов бандеровцы, прибалтийские эсэсовцы, власовцы, коллаборационисты в других странах ничем не отличаются от защитников Отечества. А поэтому их надо примирить и забыть о фашизме. Фактически фальсификаторы предлагают забыть о той смертельной опасности, которая грозила нашей стране, всему миру и человечеству. Это непристойная и оскорбительная фальсификация в отношении наших народов, сражавшихся не на жизнь, а на смерть с фашизмом.

Или вот так называемая речь Сталина 5 мая 1941 года, которая фальсификаторами используется в качестве свидетельства подготовки СССР к нападению на Германию. Что же было на самом деле? Точное название данного документа звучит следующим образом: «Краткая запись выступления на выпуске слушателей академий Красной Армии 5 мая 1941 года». Этот документ был реконструирован по воспоминаниям участников встречи в двух вариантах – русском и немецком. Русский вариант содержал несколько фрагментов: основной текст и выступления в форме тостов. В частности, Сталин сказал: «Проводя оборону нашей страны, мы обязаны действовать наступательным образом. От обороны перейти к военной политике наступательных действий». «Не надо быть военным специалистом, – совершенно верно указывает Г.Д. Алексеева, – чтобы понять, что речь идет о стратегии во время войны – от обороны к «наступательным действиям», а не о двух типах войн, как это трактуют некоторые современные историки…»

Фальсификация истории Великой Отечественной войны и в более широком контексте отечественной истории ХХ века выражается в том, что в объект изучения безосновательно включаются мнения писателей, журналистов как научные факты в историческом познании, которые на самом деле существуют вне предмета исторической науки, ее познавательных задач.

Так, 4 июня 1991 года в «Комсомольской правде» было опубликовано интервью А.И. Солженицына, которое он дал испанскому телевидению еще в 1976 году. В этом интервью, ссылаясь на «данные» профессора-антисоветчика Ивана Курганова, сбежавшего в годы Великой Отечественной войны на Запад, А.И. Солженицын утверждал, что, дескать, от внутренней войны советского режима против своего народа с 1917 по 1959 годы страна потеряла 110 миллионов человек: 66 миллионов в результате Гражданской войны и последующей политики советской власти, а 44 миллиона – во время Второй мировой войны от пренебрежительного, неряшливого ее ведения. Интервью было опубликовано под названием «Размышления по поводу двух гражданских войн». Смысл этих размышлений сводился к тому, чтобы обелить преступления фашистов и франкистов в развязанной ими войне против республиканского правительства Испании в 1936-1939 годах под видом приведения гротескной фальсифицированной статистики якобы преступной политики советского руководства против своего народа. И тем самым внедрить в умы испанцев в 1976 году и в сознание наших граждан в 1991 году идиотскую фальсификацию, что социализм, так сказать, страшнее фашизма. Логика здесь была та же, что и у Геббельса: чем чудовищнее ложь, тем охотнее в нее поверят. Не случайно испанские газеты называли Солженицына «фашистом больше, чем сам Франко». Как правильно заметил российский историк В.Н. Земсков, все эти измышления А.И. Солженицына и других фальсификаторов «нельзя назвать иначе, как патологическим отклонением от магистрального направления в данной области исторической науки».

Кстати, Александр Солженицын всю свою жизнь клеветал и на великого русского народного интеллигента Михаила Шолохова, обвиняя его в плагиате. Причем это делал даже тогда, когда все отечественные и зарубежные эксперты полностью разоблачили фальсификацию критиков Михаила Шолохова. Говорил ли когда-нибудь правду Александр Солженицын? Может быть, и говорил. Но, как отмечал Петр Чаадаев, «есть люди настолько лживые, что даже высказанная ими правда воспринимается как ложь». Именно таким и был Александр Солженицын. Поэт Степан Щипачев назвал Солженицына «литературным власовцем». И вполне закономерно, что жители Ижевска отказались назвать улицу города именем Солженицына [6]. Русский писатель, бывший диссидент Владимир Максимов аналогичным образом оценивал такого «либерального политика», как Владимир Жириновский. «Я часто слушаю, - писал он, - того же Жириновского. И со многим согласен. Но ведь ни одному его слову верить нельзя. Он вас предаст всегда… Перестроится – и снова с властью».

Известно, что фальсификаторы, пытаясь дискредитировать великий подвиг наших народов в годы Великой Отечественной войны, внедряли в массовое сознание ложь, что руководство СССР будто бы всех пленных воинов Красной Армии записало в разряд предателей. Это была сознательная кощунственная фальсификация, когда Сталину приписывалось выражение – «у нас нет пленных, у нас есть предатели». На самом же деле эта фальсификация была сочинена в писательско-публицистической среде в 1956 году на волне критики культа личности Сталина. Эта фальсификация до сих пор имеет широкое хождение в публицистике, кинофильмах, художественной литературе. В частности, она присутствует в перестроечном романе Анатолия Рыбакова «Дети Арбата».

Следует заметить, что в уголовном законодательстве СССР не фигурировало такое «преступление», как «сдача в плен». В статье 193 тогдашнего Уголовного кодекса РСФСР в перечне воинских преступлений было зафиксировано: «Сдача в плен, не вызывавшаяся боевой обстановкой». Само собой разумеется, что понятия «сдача в плен» и «сдача в плен, не вызывавшаяся боевой обстановкой» – не тождественные понятия. Поэтому не существовало никакого отождествления понятий «пленные» и «предатели». К предателям относились те, кто таковыми и являлись на деле (полицаи, каратели, выпускники разведывательно-диверсионных школ, чиновники оккупационной администрации и т.п.), а к военнопленным такое определение в принципе не применялось.

Фальсификаторы Великой Отечественной войны сочинили также миф о неких «расстрельных списках», «расстрелах» части репатриантов, т.е. возвращающихся людей в СССР (военнопленных, остарбайтеров, перемещенных лиц, коллаборационистов) якобы сразу же по прибытии в советские сборные пункты. Это была также чудовищная ложь. Правда в том, что подавляющее большинство репатриантов не подвергалось не только никаким расстрелам, но даже и каким-либо репрессиям. Парадокс здесь состоял в том, что многие прямые пособники фашистов были удивлены тем, что в СССР с ними обошлись далеко не так сурово, как они ожидали.

Приведем показательный пример. Летом 1944 года при наступлении англо-американских войск во Франции к ним попадало в плен большое количество немецких солдат и офицеров, которых обычно направляли в лагеря на территории Англии. Вскоре выяснилось, что часть этих пленных не понимает по-немецки и что это, оказывается, бывшие красноармейцы, попавшие в немецкий плен и поступившие затем на службу в немецкую армию. По статье 193 тогдашнего Уголовного Кодекса РСФСР за переход военнослужащих на сторону противника в военное время предусматривалось только одно наказание – смертная казнь с конфискацией имущества. Англичане знали об этом, но, тем не менее, поставили в известность Москву об этих лицах и попросили забрать их в СССР. 31 октября 1944 года 9907 репатриантов на двух английских кораблях были направлены в Мурманск, куда они прибыли 6 ноября 1944 года. Среди этих репатриантов, перешедших на службу в немецкую армию, высказывались предположения, что их расстреляют сразу же на мурманской пристани. Однако официальные советские представители объяснили, что Советское правительство их простило и что они не только не будут расстреляны, но и вообще освобождаются от привлечения к уголовной ответственности за измену Родине. Больше года эти люди проходили проверку в спецлагере НКВД, а затем были направлены на 6-летнее спецпоселение. В 1952 году большинство из них было освобождено, причем в их анкетах не значилось никакой судимости, а время работы на спецпоселении было зачтено в трудовой стаж.

Антисоветчики-фальсификаторы, критикующие англо-американцев за выдачу Советскому Союзу этих людей, не улавливают одну тонкость в тогдашней психологии английских и американских политиков и чиновников. А эта тонкость заключалась в том, что англичане и американцы вполне могли предполагать, что попавшие к ним в плен в немецкой военной форме бывшие красноармейцы, на самом деле являются людьми Сталина и выполняют какую-то роль в его политической игре. Отсюда, естественно, рождалось желание побыстрее очистить от них Западную Европу, а следовательно, вернуть их всех в СССР. «Позднее, – как отмечает крупный российский историк В.Н. Земсков, – англо-американцы в какой-то мере отрешились от указанных подозрений, но до этого успели выдать советским властям немало активных противников большевизма и Советской власти».

Здесь надо иметь в виду и то обстоятельство, что приближающаяся победа СССР над фашистской Германией во многом способствовала гуманизации политики в отношении военнопленных и интернированных гражданских лиц вплоть до обещания не привлечения к уголовной ответственности тех из них, кто поступил на военную службу к противнику и совершил действия в ущерб интересам СССР в результате фашистского насилия и террора над ними. Это относилось и к упомянутым репатриантам, прибывшим 6 ноября 1944 года в Мурманск, так как было известно, что они в массе своей поступили на военную службу к противнику, не выдержав пытки голодом и жестокого режима в немецких лагерях. Поэтому никак нельзя согласиться с распространенной фальсификацией в литературе и публицистике репатриации советских граждан исключительно как якобы нарушения прав человека или даже гуманитарного преступления. Абсолютно прав В.Н. Земсков, что «в основе этого процесса, несмотря на все имевшие место издержки и негативные явления, лежала естественная и волнующая эпопея обретения Родины большими массами людей, насильственно лишенных ее чужеземными завоевателями».

Хранить память о героях

В СССР царил дух новаторства, интеллектуального творческого порыва многомиллионных масс, готовности к ратным и трудовым подвигам, предрасположенности к массовому героизму и самопожертвованию. Важно иметь в виду, что наша страна была многонациональным государством, где реально осуществлялась политика равноправия и дружбы народов. Система союзных и автономных республик представляла собой гигантский цивилизационный скачек в решении национального вопроса – особенно на фоне существовавшей в царской России губернской системы, не допускавшей автономии национальных меньшинств. Внутри советской страны определяющими были отношения братства, широкого взаимопроникновения и взаимообогащения национальных культур. Не подлежит никакому сомнению, что советские люди разных национальностей реально ощущали себя живущими в настоящем государстве дружбы народов. В этом плане показателен «Приказ народного комиссара обороны СССР» от 23 февраля 1942 года. Из этого приказа широкой публике у нас известны лишь слова: «Опыт истории говорит, что Гитлеры приходят и уходят, а народ германский, государство германское остается». А в этом приказе развенчиваются именно расовые теории фашизма. «Сила Красной Армии, говорится в приказе, состоит, наконец, в том, что у нее нет и не может быть расовой ненависти к другим народам, в том числе и к немецкому народу, что она воспитана в духе равноправия всех народов и рас, в духе уважения к правам других народов».

Интересный факт. Во время подготовки к Параду Победы 24 июня 1945 года в Москве возникла проблема: никто из наших солдат не хотел брать в руки фашистские знамена, чтобы бросить их на землю у стен Кремля. Пришлось отрядить на эту операцию роту сотрудников МВД в черных перчатках.
Важно отметить, что советский человек не только воплощал высокие нравственные качества, но и бесспорное интеллектуальное превосходство над врагом. Жители Германии в 1945 году испытали настоящий культурно-технологический шок. Они ждали обещанные пропагандой Геббельса орды азиатских варваров, а вместо этого увидели бесконечные колонны разнообразной военной техники, при этом на острие прорыва всегда шли многочисленные советские танки. Поэтому не случайно, что именно советский танк стал символом не только военного, но и интеллектуально-технического поражения Европы в глобальном военном конфликте во Второй мировой войне.

Разумеется, в советском обществе существовали и антисоветские настроения, которые являлись идейной основой коллаборационизма во время Великой Отечественной войны. Но не стоит преувеличивать их значение. К примеру, в великой и жертвенной борьбе героического белорусского народа против немецко-фашистских захватчиков последние так и не смогли найти достаточное число местных коллаборационистов. В годы Великой Отечественной войны из 350000 фашистских прислужников, действовавших на территории Белоруссии, только 35000 были местными уроженцами, из них около 20000 по принудительной мобилизации, остальные были латышскими и литовскими эсэсовцами, бандеровцами, власовцами и прочей нечистью.

Очевидно, что сложившаяся в довоенные годы социально-политическая система в нашей стране в сознании многомиллионных масс народа прочно ассоциировалась с идеалами справедливости, дружбы, прогресса. И советская цивилизация однозначно расценивалась подавляющим большинством наших граждан как самая гуманная и справедливая на всей нашей планете. Победа была достигнута силой духа, интеллекта, народной сплоченности, силой великой любви к Отчизне.
Уважение к своей отечественной истории, патриотизм, высокая нравственность, ответственность перед своими предками – это основа прочной государственности и общественного согласия. Чтобы двигаться вперед, необходимо постоянно обращаться к своим традициям и духовным истокам, хранить память о героях Великой Отечественной войны и верность тем высоким нравственным ориентирам, которые они нам завещали.

1

Лев Криштапович,
доктор философских наук

Добавить комментарий

CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.
CAPTCHA на основе изображений
Введите символы, которые показаны на картинке.