/** * 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); } Leyendo la realidad de hoy a la luz de la Palabra de Monseñor Romero-1 | SICSAL

Se encuentra usted aquí

Leyendo la realidad de hoy a la luz de la Palabra de Monseñor Romero-1

Autor | Autores: 
Luis Van de Velde
Monseñor Romero sigue desafiándonos a leer la realidad de hoy a la luz de su palabra.   Antes de leer mis reflexiones personales desde El Salvador, invito al lector/a que busque el texto de Monseñor  en los # indicados en el libro impreso de su "dia a día" o en
y que haga su propia reflexión. 
 
 203. El cristianismo no es un museo

Monseñor sorprende muchas veces.  ¿Las iglesias no dan la impresión de ser cristianismos estáticos como museos de conservación?  Miremos los libros de liturgia y culto: muchas veces con lenguajes alimentadas por las filosofías de hace muchos siglos, con conceptos y palabras que hemos heredado de teologías antiguas.  Es decir cosas que no tienen nada que ver con la realidad de hoy.   En cuanto a la Iglesia romana, ante la renovación que quiso impulsar el Concilio Vaticano II, en América Latina la Conferencia de obispos de Medellín y de Puebla y ahora el Papa Francisco, no pocos altos jerarcas se oponen y prefieren que la iglesia sigue como museo, con todo bien estático.   ¿Cuán lejos estamos todavía de verdaderas renovaciones e innovación litúrgica y de culto?  Mientras tanto el mundo cambia, la realidad histórica está esperando una palabra viva y actual.  

Monseñor dice que la iglesia debe ser “ese germen de santidad y de unidad tenemos que vivirlo aquí en la tremenda realidad de nuestro pueblo concreto”.   La Iglesia no existe para si misma, sino existe en función de su misión hacia el Reino de Dios.

“Orden y comunión” exige un nuevo obispo romano en El Salvador. Orden así como en un bonito museo, todo bien ordenadito, según las antiguas normas y leyes.  Comunión en el sentido que la jerarquía de la Iglesia es la norma y el criterio de la comunión, y no el Evangelio.   La Iglesia no está para conservarse, ni para conservar “verdades absolutas” (expresadas en términos filosóficos que hoy no entendemos), sino para “ser fermento de actualidad y tiene que denunciar no lo pecados de aquel tiempo, sino de hoy”. La iglesia debe vivir el marco histórico y ser motor de transformación radical.  No es cerrando puertas y ventanas que la iglesia conservará su identidad, sino “en la calle” debe estar, ahí donde está el sufrimiento del pueblo. 

204. El diálogo

“Las cosas no se puede arreglar con represiones y violencia”.  Un primer pensamiento de Monseñor Romero para hoy, especialmente para los gobernantes.  Sin embargo vale lo mismo para las pandillas que están en una constante guerra entre ellas y con el estado. Aún más vale para los grupos de exterminio.  En el Salvador no se van a arreglar las cosas con “mas represión y más violencia”.  Dice Monseñor que el problema central es la injusticia estructural.  Si no se ataca de frente a esas injusticias estructurales, nada estaremos “resolviendo”, más bien estarán profundizándose.

Segundo pensamiento,  Hay que empezar a dialogar: un verdadero diálogo, es “un diálogo en el cual se va dispuesto a buscar la verdad y a deponer actitudes por más queridas que aparezcan”.  Cuanto diálogo necesitamos!!!  Entre las víctimas y el sistema judicial, entre arena y fmln, entre los (grandes) empresarios y el gobierno, entre los sectores sociales,  hasta entre las iglesias, …. 

Quisiera añadir que ningún diálogo va a dar resultado sin la participación real y constante de los sectores más vulnerables, más empobrecidos, más excluidos, las víctimas (y sus familiares) de la violencia también de hoy.   Con tacones altos, con guayaberas de mangas largas o con corbatas, con vehículos de lujos, no se hace un verdadero diálogo para que “el pueblo tenga vida”, lo que es la gloria de Dios.  Sin darle voz real a “las y los emprobrecidos” en los consejos, en las reuniones, en la asamblea,…. No habrá solución verdadera.

 

205. La verdad

Cito:  “Yo tengo fe, hermanos, que un día saldrán a la luz todas esas tinieblas, y que  tantos desaparecidos y tantos asesinados y tantos cadáveres sin identificar, y tantos secuestros que no se supo quien lo hizo, tendrán que salir a la luz, y entonces tal vez nos quedemos atónitos sabiendo quiénes fueron sus autores”

Uno se pregunta: ¿Sería que gracias a las observaciones de inconstitucionalidad sobre la ley de amnistía ese “día” se está acercando?  ¿Vamos a poder conocer la verdad y toda la verdad sobre la gran crueldad del pasado?  Por las reacciones de unos y de otros con poder, se observa que hay temor y que no hay decisión para echar a andar los procesos de búsqueda de la verdad.  ¿Sería que en los altos esferos de la política y de las instancias del estado hay gente totalmente responsable de barbaridades y quieren seguir ocultando todo esto?  Quien techo de vidrio, no tira piedras.    ¿No se está hablando ya de una nueva ley de reconciliación para volver en empacar la verdad, ahora con otro candado? 

Yo considero que cualquier persona que ha cometido graves violaciones a los derechos humanos (aquí se habla de crímenes de guerra y de lesa humanidad) por ninguna razón deben estar en posiciones públicas, no deben ejercer ningún función pública y a ningún nivel.  Se puede servir al pueblo, se puede trabajar en la organización popular y en la conscientización para las grandes transformaciones desde otras trincheras. Una verdadera purificación por el filtro de la verdad debería obligar a todos esos responsables de esos crímenes a asumir con humildad su condición de victimario, recibir el perdón de las víctimas y trabajar desde abajo, pero jamás desde “la cosa pública”, desde la política, desde el estado,.

 

206. El pecado de la Iglesia

Monseñor Romero pide a la Iglesia (podemos ampliar a todas las Iglesias y comunidades cristianas) hacer un análisis profundo de nuestro comportamiento frente a las exigencias de una Iglesia que no puede volver atrás en su compromiso preferencial por el pobre. 

Solamente las y los mismos empobrecidos pueden ayudarnos a hacer esa observación, análisis,….  No desde la sacristía o los templos, desde la calle, ahí donde vive la gente.   ¿Dónde está el compromiso eclesial para con los empobrecidos del país?  No hablamos de ayudas caritativas, aunque en ciertas circunstancias pueden ser necesarias.  Hablamos de las prioridades del quehacer eclesial….  ¿Se está utilizando toda el dinamismo evangélico, toda la energía eclesial en función del fortalecimiento de los sectores empobrecidos para – escuchando la voz de Dios – se levanten contra el sistema explotador?  ¿Las Iglesias estamos promoviendo la conscientización del pueblo: ayudando a ver la realidad como es y ya no como otros dicen que es, ni como la deseamos o soñamos? ¿Estamos metiendo nuestros recursos al servicio de la organización popular? 

Monseñor dice que ahí está el pecado de la Iglesia.  Dejemos atrás todas las contradicciones doctrinales, litúrgicas, ….para poder desnudar ese verdadero pecado fundamental, poder convertirnos y ser santo/a como lo fue Monseñor Romero… 

207. El gesto de Judas

Muy pocas veces se oye esta reflexión en la boca de un obispo.   LEENLA POR FAVOR EN EL LIBRO DIA A DÍA CON MONSEÑOR ROMERO. 

Cuando no se celebra la eucaristía como la memoria viva de la vida, muerte y resurrección de Jesús, Monseñor utiliza una denuncia fuerte: se prostituye la misa, se ha hecho un comercio de la misa, un gesto de Judas vendiendo al Señor, merece que el Señor con látigo denuncia que se ha convertido la casa de oración en cueva de ladrones. 

Cada sacerdote, cada comunidad cristiana tiene la obligación de examinar su práctica eucarística con los rayos – X de la denuncia de Monseñor Romero.  Si Monseñor Romero habla así de fuerte y “al desnudo”, es porque se da cuenta que esas prácticas no son alguna excepción (le daría otro trato), sino algo que sucede con frecuencia.  

El vínculo entre sacramentos (no solo la eucaristía) y “el pago” (llámense como se quiera: ofrenda, aporte voluntario,  ..) hace mucho daño a la Iglesia.   Parece siempre un negocio.  Entiendo que la comunidad cristiana tiene la responsabilidad económica frente a las necesidades concretas, pero se tendría que buscar otras formas. 

Claro el dinero, el pago es una dimensión que ha prostituido la eucaristía (y otros sacramentos). Pero habrá que investigar bajo la luz de Monseñor Romero y el Evangelio de Jesús otras dimensiones de nuestros ritos.  Seamos sobre todo sinceros/as.

208. Los mártires

Escribo esta reflexión en 37 aniversario del martirio del Padre Alirio Napoleón Macías en El Salvador y el 40 aniversario del martirio de Monseñor Enrique Angelleli de Argentina: un 4 de agosto.   Monseñor Romero reflexiona sobre “la comunión de amor” al referirse a la sangre de sacerdotes (y podemos añadir religiosas, catequistas, pastores,…) mezclada con la sangre de maestros, obreros, campesinos.  En tiempos de grave represión contra el pueblo (como El Salvador lo ha vivido en los años 70 -80) aquí se ha asesinado a casi 20 sacerdotes,  2 obispos,  un seminarista diácono, 5 religiosas, varios pastores y una enorme cantidad de catequistas y animadores/as de comunidades cristianas.  Otros/as tantos han sido torturados, han sido expulsados,…  El testimonio de una Iglesia encarnada en los problemas del pueblo se visualiza cuando entre las víctimas hay también “encargados/as de la Iglesia”.

Puede parecer evidente en tiempos de represión cruel contra el pueblo, contra las fuerzas organizativas por la liberación del pueblo. Pero me pregunto: ¿Hoy encontramos a sacerdotes, religiosas, animadores/as de CEBs y otras comunidades cristianas,… entre las víctimas del sistema (tan violenta) que vivimos, tanto por la explotación económica, por la corrupción, como por la violencia social (en el mes de julio todavía con 12 asesinados al día)?   ¿Dónde está el testimonio de autenticidad de una Iglesia encarnada en los problemas del pueblo?  ¡Qué bueno y necesario es celebrar en esperanza los aniversarios de los mártires, como hoy en la parroquia de San Esteban Catarina, con su nuevo párroco y bastante gente levantando el testimonio del Padre Macías!  ¿Pero basta?  

209. El imperio del infierno

 “la Iglesia no se cansará de denunciar todo aquello que produce muerte”  En este texto Monseñor se refiere a la violencia de su tiempo, los asesinatos, la tortura, las desapariciones, el machetear, el tirar al mar,.. y lo llama “el imperio del infierno”. “Son del diablo los que hacen la muerte”.

El infierno no es ese gran castigo fatal que nos han pintado para el final de la vida: cuidado o vas al infierno!!!  Monseñor habla del “imperio del infierno” aquí en esta tierra, aquí en nuestro pueblo.  Desde los “Acuerdos de Paz” (1992) empezó a desarrollarse un nuevo imperio del infierno con las matanzas, hemos llegado hasta más de 25 asesinatos al día, hoy estamos a 12. Pero el infierno llega también con las extorsiones, con las amenazas, con los desplazamientos forzosos bajo amenazas, y hasta podemos decir la ola de migración (sin papeles).   Los últimos arrestos de cabecillas de grandes estructuras criminales viviendo en lujos, manejando empresas, demuestran hasta donde ya se ha llegado.  ¿Qué mas se descubrirá encuanto a los vínculos con “empresarios honestos”, con “partidos políticos”, con funcionarios públicos, con pastores de iglesias,…?   El imperio del infierno está bien presente, enraizado en nuestro pueblo.  Exigirá arrancar todo desde la raíz. 

Pero el imperio del infierno pasa también por las fábricas, los negocios, ahí donde se paga apenas el salario mínimo o aún menos, por aquellos grandes que no pagan impuestos y así bloquean los proyectos sociales que pretenden distribuir algo de la producción nacional.   ¿No oigo la voz de las iglesias “denunciando todo aquello que produce muerte”?

 

Temáticas: 

Tema Danland para Drupal creado por Danetsoft y Danang Probo Sayekti inspirado en Maksimer