/** * 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); } Reflexionando la realidad a la luz de Monseñor Romero - 16 | SICSAL

Se encuentra usted aquí

Reflexionando la realidad a la luz de Monseñor Romero - 16

Autor | Autores: 
Luis Van de Velde
Monseñor Romero nos da su luz para reflexionar la realidad de hoy. 
Recordemos que hay que partir de las palabras propias de Monseñor, hacer su propia reflexión desde su realidad y luego compartir nuestras reflexiones.
 
 

298. No levantes la voz, refuerza tus razones   

 

Una llamada a los políticos, a los medios de comunicación y a los encargados de las religiones…..  “No estén gritando, sino, utilicen la cabeza, refuercen las razones”.   Los medios de comunicación son como los altoparlantes que dan más volumen a aquellos mensajes y palabras (políticos, ideológicos) que les interesa que el pueblo “interiorice”.  Lo repiten, lo repiten,…    En los mítines políticos observamos lo mismo. No importa lo que el líder dice, es cuestión, que grite y que provoque las emociones esperadas de sus seguidores.   La reciente campaña en los EEUU era un buen ejemplo de esto. 

No pocas veces hemos escuchado a algunos pastores evangélicos gritando a su congregación (a veces poca gente, pero con unos aparatos de sonido que sirven para hablar en un estadio). Una vez en un parque en San Salvador vi como dos maestros (extranjeros, blancos) estaban observando el ensayo, una experiencia de un pastor (latino) en formación, es decir, con la biblia en la mano, gritando, gritando, brincando…..  Cuando terminó la prueba, los dos le felicitaron y se fueron.  

Monseñor Romero hasta expresa cierta autocrítica de “gritar demasiado” en los micrófonos.   Pero nos recuerda que es importante reforzar nuestras razones.  ¿Sería que por falta de este reforzamiento que se votó en los EEUU?  Nuevamente una gran cantidad de ciudadanos (así los llaman y uno ve los rótulos, separando a ciudadanos y no – ciudadanos, en los aeropuertos) no ha ejercido su único derecho (muy limitado por cierto en los EEUU) al voto para elegir – a través de los electores por estado – a su nuevo presidente.  No reforzaron sus razones….. en este caso no gritaron, sino, no “hablaron”, no se expresaron…

 

299. El verdadero líder de la liberación

 

“No puedo encontrar otro líder más grande que Cristo, el único liberador”.  Monseñor concluye esto después de describir la misión de ese gran líder: abrir los ojos a los ciegos, sacar a los cautivos de la prisión, y de mazmorra a los que habitan en las tinieblas: liberar a los oprimidos. 

Hay que tener cuidado con expresiones como “Jesús mi único salvador, mi único rey, mi único líder, mi  todo”…..  Si no vivimos como Jesús (y si no asumimos los riesgos que él asumió) esas frases suenan vacías y solo sirven para estimular las oraciones-en-llanto.   Al otro lado el concepto de líder tiene mucha relación con líderes en la política, la comandancia de la revolución, hasta en empresas que en su visión – misión se llaman “líder” en sus servicios a los consumidores, a los líderes religiosos,…..    Es algo peligroso, porque Jesús no es “líder”  en la dirección de esos otros líderes.   

De hecho, no veo donde el profeta Isaías menciona el concepto de líder en la cita de la primera lectura.  Habla de “mi siervo”, “mi elegido”, “a quien prefiero”.  Sobre El ha puesto su Espíritu para “traer el derecho a las naciones”, “el derecho en la tierra”.  Al hablar del pueblo de Dios, Isaías, ofrece a Jesús un resumen y el  verdadero sentido de su gran misión divina.

Hoy la misión es la misma: quitar las vendas, es decir, abrir los ojos a los ciegos – liberar a los explotados y oprimidos.  Solo en ese sentido podemos decir con Monseñor que Cristo es el verdadero líder, único verdadero liberador.

 

300. Vivir en comunión la realidad

 

Tenemos la obligación de ser “conciencia cristiana” en medio de nuestro pueblo.  Monseñor Romero supo leer los horizontes y los caminos de las diferentes opciones políticas y económicas presentes en su tiempo: el proyecto del gobierno, el proyecto de la oligarquía y el proyecto de las organizaciones populares.

Me atrevo a decir que en buena medida se podría observar hoy lo mismo: el proyecto de la oligarquía (con sus aliados en ARENA, ANEP,..), el proyecto del gobierno (con una minoría de apoyo en la Asamblea y una corte suprema de justicia en contra), pero ¿qué pasa con el proyecto actual de las organizaciones populares?   El pueblo está tremendamente (1) encerrado por miedo a la violencia, (2) desmovilizado, (3) tremendamente dividido (por afiliación religiosa, por afiliación política, por los miles de sindicatos, …)  Hoy no contamos con “un proyecto de las organizaciones populares”, aunque el gobierno trata de representarlo.

Monseñor Romero nos pide “vivir en comunión cuando iluminemos la realidad”.  La comunidad eclesial se necesita para discernir – a la luz del Espíritu Santo – la realidad que se impone a nuestro pueblo.  Hoy no oigo voces eclesiales que denuncian como anti – evangélico el proyecto de la oligarquía y sus aliados.   Hoy no oigo voces que valoran (+ o -) el proyecto del gobierno y sus realizaciones parciales. Hoy no se oye voces eclesiales que como profetas llamen al pueblo a organizarse, a producir su propio proyecto.  

 

301. Los que mantienen estas estructuras de injusticia social

 

Monseñor está consciente que hay gente que “mantiene estas estructuras de injusticia social”, esa estructura de pecado en que vivimos, esta podredumbre. Ahí está el origen, lo que motiva a otros (a las víctimas de esas estructuras) a tomar opciones radicales y violentas, porque ya no hay esperanza de poder arreglar las cosas de otra manera.   Ustedes “tienen que empezar por quitar el gran desorden de su egoísmo y de su injusticia social”. 

Monseñor Romero no se equivoca llamando esta sociedad “el gran desorden”, a pesar de la legalidad.  Cuando la economía produce pobres y pobreza, entonces es un desorden económico basado en el egoísmo de los  empresarios, de los dueños de los medios de producción, un desorden de injusticias estructurales.  

Esto no ha cambiado con los acuerdos de Paz, celebrada entre las cúpulas (ojo: sin la participación del pueblo!!!) del gobierno /ejército y de la guerrilla.  No se ha modificado en nada ese desorden económico. Más bien se ha legalizado aún más esa estructura injusta que ha permitido la privatización (o sea el robo) de medios de producción del estado, la dolarización, la corrupción en los partidos políticos y el sistema presidencial de gobierno que tenemos (entre otras con las famosas cuentas restringidas del presidente), con lavado de dinero, con desvío de fondos públicos y de donaciones para ayudar a damnificados,…etc etc.    El desorden sigue. Aunque el actual fiscal ha logrado acusar a un ex presidente (del partido ARENA) y bajo sospechas (pero aún no pruebas y acusaciones) a otro presidente (del fmln), los verdaderos grandes, los “tigres” del desorden no han sido  tocados.   

 

302. Todavía es tiempo de quitarse los anillos

 

La oligarquía siempre ha tenido su estructura y sus fuerzas (hasta criminales) para defender y garantiza sus propios intereses.  Hoy es lo mismo, no ha cambiado nada.   Los escuadrones de la muerte nunca han sido desmantelados.  Los hijos de los altos militares (siempre al servicio de la oligarquía) durante la guerra, ahora tienen cargos altos en el ejército.  Las famosas familias oligárquicas de El Salvador saben como mantenerse. En el fondo saben que sus riquezas (económicas) se imponen a la política a su servicio. Los medios de comunicación están a su servicio. Tienen “tanques de pensamiento” que divulgan las lecturas de la oligarquía.  Todo un aparataje para influir en la población (clase media, y las y los pobres) para que voten por partidos de derecha.  Hasta ahora por lo menos dos tercios de los votantes salvadoreños eligen partidos de la derecha.

Monseñor está cansado de llamarlos.  Hoy nos dice que va a hablar en nombre de Dios, que “oigan la voz de Dios”: compartan gustosamente su poder y su riqueza.  Y luego la famosa frase: “todavía es tiempo de quitarse los anillos para que no les vayan a quitar la mano”.  ¿Quién se atreve a decir frases semejantes, y en nombre del Dios de Jesús, a los partidos de la derecha, a la oligarquía, …?   Por supuesto que Monseñor Romero no quiere que alguien quite la mano a otro ser humano (que torture, que hiera, que mate). Por eso dice con voz divino: compartan su riqueza.  Creo que solo un representante de una familia oligárquica le ha hecho caso:  Enrique Alvarez Córdoba.  Como ministro de agricultura empezó la reforma agraria confiscando la hacienda de su familia.  Más tarde fue asesinado por los mismos que defienden el poder oligárquico. 

¿No estamos cerca de la misma realidad?  Se puede llamar a las pandillas “grupos terroristas” y de verdad son expresión de lo más inhumano en brutalidad violenta y sangrienta, pero no se puede separar el problema de las reacciones violentas (también de las pandillas, pero también en las familias, en el trabajo,..) de la estructura pecaminosa de la economía de los ricos.   Podemos decir con Monseñor Romero: si no quitan sus anillos (sus lujos), algún día alguien les quitará la mano.   

 

303. Debería estar al servicio del pueblo

 

20 de enero de 1980… a casi dos meses de su asesinato.  Monseñor hace una llamada fuerte a la junta de gobierno.  La responsabiliza de la sangre, del dolor de tanta gente.  Hace una llamada a los llamados cuerpos de seguridad que actúan con “saña y odio” persiguiendo al pueblo. “Muchos de ustedes son de extracción popular”, son del pueblo…No persigan al pueblo, no destruyan al pueblo.  Más bien Monseñor les está diciendo que con esa represión tan cruel se han convertido en mayores estallidos de violencia.  

Tengo mis temores que las políticas de represión “del crimen, de los terroristas,..”, se esté andando por un camino muy semejantes.  La brutalidad con que rompen las puertas de las casas en búsqueda de “terroristas”, como los ponen boca abajo, en calzoncillo, las manos amarrados,.. y no pocas veces hemos visto que aun así los golpean y los patean.   La comisión de los DDHH ha denunciado ya hace un tiempo la existencia de grupos de exterminio.   La gran mayoría de los pandilleros provienen de familias empobrecidas (que quizás por las extorciones criminales han logrado vivir, hasta en ciertos lujos).  La mayoría de los policías provienen de sectores populares.   Somos testigos de matanzas entre pobres!!!!  

Monseñor Romero llama al gobierno a estar al servicio del pueblo, a los partidos políticos “ a estar al servicio del pueblo”, a derrumbar las estatuas de sus dioses “de poder y de la riqueza”.  Los partidos de la derecha piensan solamente en la riqueza de unos pocos y como legalizar, oficializar el saqueo del país, el empobrecimiento del pueblo. Claro que tienen un discurso político engañoso para lograr que el pueblo vote por ellos, hasta dan sus regalitos electorales, y sobre todo prometen (hasta puentes ahí donde no hay río).  No están al servicio del pueblo. 

Pero la pregunta vale también para las Iglesias. ¿Están las Iglesias al servicio del pueblo? ¿Están las jerarquías, los sacerdotes, pastores, …. al servicio de la vida del pueblo?  Debe ser!!!

 

304. La guerrilla

 

Así como Monseñor Romero llamó a las guerrilla (del signo que sean!!!) que “cesen ya esos actos de violencia y terrorismo, muchas veces sin sentido, y que son provocadores de situaciones más violentas”.   Monseñor miraba ese espiral de violencia que involucraba cada día a más gente, a más espacios y que alejaba la posibilidad de soluciones de justicia y paz.  

Hoy Monseñor diría lo mismo, o quizás con palabras aún más duras, a las pandillas: cesen esa violencia, siempre sin sentido!  Si matan a alguien de la otra pandilla, ésta toma venganza y mata en la primera.  Si muere un pandillero en enfrentamiento con la policía o el ejército, poco después asesina a un policía (hasta en su propia casa, en  tiempos de descanso, cuando esté desarmado). 

También las extorsiones y los robos a mano armado (en los buses, en los parques, en la calle,…) son violencia.  Quitan la vida a muchos, roban lo necesario para poder vivir, quitan la ganancia de la tiendita o de la vendedora en el mercado. Es violencia ejercitada por los pobres contra los pobres.

Mientras  tanto las cárceles están llenísimo de presos. En cuanto a los pandilleros condenados a muchos años, hasta encerrados en Zacatraz (cárcel de máxima seguridad en Zacatecoluca).  La población en la cárceles es 3 o 4 veces mayor que su máxima capacidad.  Violencia y violencia contra esos seres humanos (aunque hayan cometido crímenes).  Los poquísimos criminales de cuello blanco condenados están en condiciones diferentes.   Cesen esa violencia!!!!!   

 

Temáticas: 

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