/** * 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); } DISCURSO DEL PAPA FRANCISCO A LOS MOVIMIENTOS POPULARES | SICSAL

Se encuentra usted aquí

DISCURSO DEL PAPA FRANCISCO A LOS MOVIMIENTOS POPULARES

Autor | Autores: 
Papa Francisco

Buenos días de nuevo, estoy contento de estar entre ustedes, además les digo una confidencia,  es la primera vez que bajo acá,  nunca había venido.   Como les decía, tengo mucha alegría y les doy una calurosa bienvenida.

Gracias por haber aceptado esta invitación para debatir tantos graves problemas sociales que aquejan al mundo hoy, ustedes que sufren en carne propia la desigualdad y la exclusión.   Gracias al Cardenal Turkson por su acogida.  Gracias, Eminencia por su trabajo y sus palabras.

DISCURSO DEL SANTO PADRE FRANCISCO 
A LOS PARTICIPANTES EN EL ENCUENTRO MUNDIAL DE MOVIMIENTOS POPULARES

Aula Vieja del Sínodo 
Martes 28 de octubre de 2014

 http://w2.vatican.va/content/francesco/es/speeches/2014/october/documents/papa-francesco_20141028_incontro-mondiale-movimenti-popolari.html

Buenos días de nuevo, estoy contento de estar entre ustedes, además les digo una confidencia, es la primera vez que bajo acá, nunca había venido. Como les decía, tengo mucha alegría y les doy una calurosa bienvenida.

Gracias por haber aceptado esta invitación para debatir tantos graves problemas sociales que aquejan al mundo hoy, ustedes que sufren en carne propia la desigualdad y la exclusión. Gracias al Cardenal Turkson por su acogida. Gracias, Eminenciapor su trabajo y sus palabras.

Este encuentro de Movimientos Populares es un signo, es un gran signo: vinieron a poner en presencia de Dios, de la Iglesia, de los pueblos, una realidad muchas veces silenciada. ¡Los pobres no sólo padecen la injusticia sino que también luchan contra ella!

No se contentan con promesas ilusorias, excusas o coartadas. Tampoco están esperando de brazos cruzados la ayuda de ONGs, planes asistenciales o soluciones que nunca llegan o, si llegan, llegan de tal manera que van en una dirección o de anestesiar o de domesticar. Esto es medio peligroso. Ustedes sienten que los pobres ya no esperan y quieren ser protagonistas, se organizan, estudian, trabajan, reclaman y, sobre todo, practican esa solidaridad tan especial que existe entre los que sufren, entre los pobres, y que nuestra civilización parece haber olvidado, o al menos tiene muchas ganas de olvidar.

Solidaridad es una palabra que no cae bien siempre, yo diría que algunas veces la hemos transformado en una mala palabra, no se puede decir; pero es una palabra mucho más que algunos actos de generosidad esporádicos. Es pensar y actuar en términos de comunidad, de prioridad de vida de todos sobre la apropiación de los bienes por parte de algunos. También es luchar contra las causas estructurales de la pobreza, la desigualdad, la falta de trabajo, la tierra y la vivienda, la negación de los derechos sociales y laborales. Es enfrentar los destructores efectos del Imperio del dinero: los desplazamientos forzados, las emigraciones dolorosas, la trata de personas, la droga, la guerra, la violencia y todas esas realidades que muchos de ustedes sufren y que todos estamos llamados a transformar. La solidaridad, entendida, en su sentido más hondo, es un modo de hacer historia y eso es lo que hacen los movimientos populares.

Este encuentro nuestro no responde a una ideología. Ustedes no trabajan con ideas, trabajan con realidades como las que mencioné y muchas otras que me han contado… tienen los pies en el barro y las manos en la carne. ¡Tienen olor a barrio, a pueblo, a lucha! Queremos que se escuche su voz que, en general, se escucha poco. Tal vez porque molesta, tal vez porque su grito incomoda, tal vez porque se tiene miedo al cambio que ustedes reclaman, pero sin su presencia, sin ir realmente a las periferias, las buenas propuestas y proyectos que a menudo escuchamos en las conferencias internacionales se quedan en el reino de la idea, es mi proyecto.

No se puede abordar el escándalo de la pobreza promoviendo estrategias de contención que únicamente tranquilicen y conviertan a los pobres en seres domesticados e inofensivos. Qué triste ver cuando detrás de supuestas obras altruistas, se reduce al otro a la pasividad, se lo niega o peor, se esconden negocios y ambiciones personales: Jesús les diría hipócritas. Qué lindo es en cambio cuando vemos en movimiento a Pueblos, sobre todo, a sus miembros más pobres y a los jóvenes. Entonces sí se siente el viento de promesa que aviva la ilusión de un mundo mejor. Que ese viento se transforme en vendaval de esperanza. Ese es mi deseo.

Este encuentro nuestro responde a un anhelo muy concreto, algo que cualquier padre, cualquier madre quiere para sus hijos; un anhelo que debería estar al alcance de todos, pero hoy vemos con tristeza cada vez más lejos de la mayoría: tierra,techo y trabajo. Es extraño pero si hablo de esto para algunos resulta que el Papa es comunista.

No se entiende que el amor a los pobres está al centro del Evangelio. Tierra, techo y trabajo, eso por lo que ustedes luchan, son derechos sagrados. Reclamar esto no es nada raro, es la doctrina social de la Iglesia. Voy a detenerme un poco en cada uno de éstos porque ustedes los han elegido como consigna para este encuentro.

Tierra. Al inicio de la creación, Dios creó al hombre, custodio de su obra, encargándole de que la cultivara y la protegiera. Veo que aquí hay decenas de campesinos y campesinas, y quiero felicitarlos por custodiar la tierra, por cultivarla y por hacerlo en comunidad. Me preocupa la erradicación de tantos hermanos campesinos que sufren el desarraigo, y no por guerras o desastres naturales. El acaparamiento de tierras, la desforestación, la apropiación del agua, los agrotóxicos inadecuados, son algunos de los males que arrancan al hombre de su tierra natal. Esta dolorosa separación, que no es sólo física, sino existencial y espiritual, porque hay una relación con la tierra que está poniendo a la comunidad rural y su peculiar modo de vida en notoria decadencia y hasta en riesgo de extinción.

La otra dimensión del proceso ya global es el hambre. Cuando la especulación financiera condiciona el precio de los alimentos tratándolos como a cualquier mercancía, millones de personas sufren y mueren de hambre. Por otra parte se desechan toneladas de alimentos. Esto constituye un verdadero escándalo. El hambre es criminal, la alimentación es un derecho inalienable. Sé que algunos de ustedes reclaman una reforma agraria para solucionar alguno de estos problemas, y déjenme decirles que en ciertos países, y acá cito el Compendio de la Doctrina Social de la Iglesia, “la reforma agraria es además de una necesidad política, una obligación moral” (CDSI, 300).

No lo digo solo yo, está en el Compendio de la Doctrina Social de la Iglesia. Por favor, sigan con la lucha por la dignidad de la familia rural, por el agua, por la vida y para que todos puedan beneficiarse de los frutos de la tierra.

Segundo, Techo. Lo dije y lo repito: una casa para cada familia. Nunca hay que olvidarse que Jesús nació en un establo porque en el hospedaje no había lugar, que su familia tuvo que abandonar su hogar y escapar a Egipto, perseguida por Herodes. Hoy hay tantas familias sin vivienda, o bien porque nunca la han tenido o bien porque la han perdido por diferentes motivos. Familia y vivienda van de la mano. Pero, además, un techo, para que sea hogar, tiene una dimensión comunitaria: y es el barrio… y es precisamente en el barrio donde se empieza a construir esa gran familia de la humanidad, desde lo más inmediato, desde la convivencia con los vecinos. Hoy vivimos en inmensas ciudades que se muestran modernas, orgullosas y hasta vanidosas. Ciudades que ofrecen innumerables placeres y bienestar para una minoría feliz… pero se le niega el techo a miles de vecinos y hermanos nuestros, incluso niños, y se los llama, elegantemente, “personas en situación de calle”. Es curioso como en el mundo de las injusticias, abundan los eufemismos. No se dicen las palabras con la contundencia y la realidad se busca en el eufemismo. Una persona, una persona segregada, una persona apartada, una persona que está sufriendo la miseria, el hambre, es una persona en situación de calle: palabra elegante ¿no? Ustedes busquen siempre, por ahí me equivoco en alguno, pero en general, detrás de un eufemismo hay un delito.

Vivimos en ciudades que construyen torres, centros comerciales, hacen negocios inmobiliarios… pero abandonan a una parte de sí en las márgenes, las periferias. ¡Cuánto duele escuchar que a los asentamientos pobres se los margina o, peor, se los quiere erradicar! Son crueles las imágenes de los desalojos forzosos, de las topadoras derribando casillas, imágenes tan parecidas a las de la guerra. Y esto se ve hoy.

Ustedes saben que en las barriadas populares donde muchos de ustedes viven subsisten valores ya olvidados en los centros enriquecidos. Los asentamientos están bendecidos con una rica cultura popular: allí el espacio público no es un mero lugar de tránsito sino una extensión del propio hogar, un lugar donde generar vínculos con los vecinos. Qué hermosas son las ciudades que superan la desconfianza enfermiza e integran a los diferentes y que hacen de esa integración un nuevo factor de desarrollo. Qué lindas son las ciudades que, aun en su diseño arquitectónico, están llenas de espacios que conectan, relacionan, favorecen el reconocimiento del otro. Por eso, ni erradicación ni marginación: Hay que seguir en la línea de la integración urbana. Esta palabra debe desplazar totalmente a la palabra erradicación, desde ya, pero también esos proyectos que pretenden barnizar los barrios pobres, aprolijar las periferias y maquillar las heridas sociales en vez de curarlas promoviendo una integración auténtica y respetuosa. Es una especie de arquitectura de maquillaje ¿no? Y va por ese lado. Sigamos trabajando para que todas las familias tengan una vivienda y para que todos los barrios tengan una infraestructura adecuada (cloacas, luz, gas, asfalto, y sigo: escuelas, hospitales o salas de primeros auxilios, club deportivo y todas las cosas que crean vínculos y que unen, acceso a la salud –lo dije- y a la educación y a la seguridad en la tenencia.

Tercero, Trabajo. No existe peor pobreza material - me urge subrayarlo-, no existe peor pobreza material, que la que no permite ganarse el pan y priva de la dignidad del trabajo. El desempleo juvenil, la informalidad y la falta de derechos laborales no son inevitables, son resultado de una previa opción social, de un sistema económico que pone los beneficios por encima del hombre, si el beneficio es económico, sobre la humanidad o sobre el hombre, son efectos de una cultura del descarte que considera al ser humano en sí mismo como un bien de consumo, que se puede usar y luego tirar.

Hoy, al fenómeno de la explotación y de la opresión se le suma una nueva dimensión, un matiz gráfico y duro de la injusticia social; los que no se pueden integrar, los excluidos son desechos, “sobrantes”. Esta es la cultura del descarte y sobre esto quisiera ampliar algo que no tengo escrito pero se me ocurre recordarlo ahora. Esto sucede cuando al centro de un sistema económico está el dios dinero y no el hombre, la persona humana. Sí, al centro de todo sistema social o económico tiene que estar la persona, imagen de Dios, creada para que fuera el dominador del universo. Cuando la persona es desplazada y viene el dios dinero sucede esta trastocación de valores.

Y, para graficar, recuerdo una enseñanza de alrededor del año 1200. Un rabino judío explicaba a sus feligreses la historia de la torre de babel y entonces contaba cómo, para construir esta torre de babel, había que hacer mucho esfuerzo, había que fabricar los ladrillos, para fabricar los ladrillos había que hacer el barro y traer la paja, y amasar el barro con la paja, después cortarlo en cuadrado, después hacerlo secar, después cocinarlo, y cuando ya estaban cocidos y fríos, subirlos para ir construyendo la torre.

Si se caía un ladrillo, era muy caro el ladrillo con todo este trabajo, si se caía un ladrillo era casi una tragedia nacional. Al que lo dejaba caer lo castigaban o lo suspendían o no sé lo que le hacían, y si caía un obrero no pasaba nada. Esto es cuando la persona está al servicio del dios dinero y esto lo contaba un rabino judío, en el año 1200 explicaba estas cosas horribles.

Y respecto al descarte también tenemos que ser un poco atentos a lo que sucede en nuestra sociedad. Estoy repitiendo cosas que he dicho y que están en la Evangelii Gaudium. Hoy día, se descartan los chicos porque el nivel de natalidad en muchos países de la tierra ha disminuido o se descartan los chicos por no tener alimentación o porque se les mata antes de nacer, descarte de niños.

Se descartan los ancianos, porque, bueno, no sirven, no producen, ni chicos ni ancianos producen, entonces con sistemas más o menos sofisticados se les va abandonando lentamente, y ahora, como es necesario en esta crisis recuperar un cierto equilibrio, estamos asistiendo a un tercer descarte muy doloroso, el descarte de los jóvenes. Millones de jóvenes, yo no quiero decir la cifra porque no la sé exactamente y la que leí me parece un poco exagerada, pero millones de jóvenes descartados del trabajo, desocupados.

En los países de Europa, y estas si son estadísticas muy claras, acá en Italia, pasó un poquitito del 40% de jóvenes desocupados; ya saben lo que significa 40% de jóvenes, toda una generación, anular a toda una generación para mantener el equilibrio. En otro país de Europa está pasando el 50% y en ese mismo país del 50%, en el sur, el 60%, son cifras claras, óseas del descarte. Descarte de niños, descarte de ancianos, que no producen, y tenemos que sacrificar una generación de jóvenes, descarte de jóvenes, para poder mantener y reequilibrar un sistema en el cual en el centro está el dios dinero y no la persona humana.

Pese a esto, a esta cultura del descarte, a esta cultura de los sobrantes, tantos de ustedes, trabajadores excluidos, sobrantes para este sistema, fueron inventando su propio trabajo con todo aquello que parecía no poder dar más de sí mismo… pero ustedes, con su artesanalidad, que les dio Dios… con su búsqueda, con su solidaridad, con su trabajo comunitario, con su economía popular, lo han logrado y lo están logrando…. Y déjenme decírselo, eso además de trabajo, es poesía. Gracias.

Desde ya, todo trabajador, esté o no esté en el sistema formal del trabajo asalariado, tiene derecho a una remuneración digna, a la seguridad social y a una cobertura jubilatoria. Aquí hay cartoneros, recicladores, vendedores ambulantes, costureros, artesanos, pescadores, campesinos, constructores, mineros, obreros de empresas recuperadas, todo tipo de cooperativistas y trabajadores de oficios populares que están excluidos de los derechos laborales, que se les niega la posibilidad de sindicalizarse, que no tienen un ingreso adecuado y estable. Hoy quiero unir mi voz a la suya y acompañarlos en su lucha.

En este Encuentro, también han hablado de la Paz y de Ecología. Es lógico: no puede haber tierra, no puede haber techo, no puede haber trabajo si no tenemos paz y si destruimos el planeta. Son temas tan importantes que los Pueblos y sus organizaciones de base no pueden dejar de debatir. No pueden quedar sólo en manos de los dirigentes políticos. Todos los pueblos de la tierra, todos los hombres y mujeres de buena voluntad, tenemos que alzar la voz en defensa de estos dos preciosos dones: la paz y la naturaleza. La hermana madre tierra como la llamaba San Francisco de Asís.

Hace poco dije, y lo repito, que estamos viviendo la tercera guerra mundial pero en cuotas. Hay sistemas económicos que para sobrevivir deben hacer la guerra. Entonces se fabrican y se venden armas y, con eso los balances de las economías que sacrifican al hombre a los pies del ídolo del dinero, obviamente quedan saneados. Y no se piensa en los niños hambrientos en los campos de refugiados, no se piensa en los desplazamientos forzosos, no se piensa en las viviendas destruidas, no se piensa, desde ya, en tantas vidas segadas. Cuánto sufrimiento, cuánta destrucción, cuánto dolor. Hoy, queridos hermanas y hermanos, se levanta en todas las partes de la tierra, en todos los pueblos, en cada corazón y en los movimientos populares, el grito de la paz: ¡Nunca más la guerra!

Un sistema económico centrado en el dios dinero necesita también saquear la naturaleza, saquear la naturaleza, para sostener el ritmo frenético de consumo que le es inherente. El cambio climático, la pérdida de la biodiversidad, la desforestación ya están mostrando sus efectos devastadores en los grandes cataclismos que vemos, y los que más sufren son ustedes, los humildes, los que viven cerca de las costas en viviendas precarias o que son tan vulnerables económicamente que frente a un desastre natural lo pierden todo. Hermanos y hermanas: la creación no es una propiedad, de la cual podemos disponer a nuestro gusto; ni mucho menos, es una propiedad sólo de algunos, de pocos: la creación es un don, es un regalo, un don maravilloso que Dios nos ha dado para que cuidemos de él y lo utilicemos en beneficio de todos, siempre con respeto y gratitud. Ustedes quizá sepan que estoy preparando una encíclica sobre Ecología: tengan la seguridad que sus preocupaciones estarán presentes en ella. Les agradezco, aprovecho para agradecerles, la carta que me hicieron llegar los integrantes de la Vía Campesina, la Federación de Cartoneros y tantos otros hermanos al respecto.

Hablamos de la tierra, de trabajo, de techo… hablamos de trabajar por la paz y cuidar la naturaleza… Pero ¿por qué en vez de eso nos acostumbramos a ver cómo se destruye el trabajo digno, se desahucia a tantas familias, se expulsa a los campesinos, se hace la guerra y se abusa de la naturaleza? Porque en este sistema se ha sacado al hombre, a la persona humana, del centro y se lo ha reemplazado por otra cosa. Porque se rinde un culto idolátrico al dinero. Porque se ha globalizado la indiferencia, se ha globalizado la indiferencia: a mí ¿qué me importa lo que les pasa a otros mientras yo defienda lo mío? Porque el mundo se ha olvidado de Dios, que es Padre; se ha vuelto huérfano porque dejó a Dios de lado.

Algunos de ustedes expresaron: Este sistema ya no se aguanta. Tenemos que cambiarlo, tenemos que volver a llevar la dignidad humana al centro y que sobre ese pilar se construyan las estructuras sociales alternativas que necesitamos. Hay que hacerlo con coraje, pero también con inteligencia. Con tenacidad, pero sin fanatismo. Con pasión, pero sin violencia. Y entre todos, enfrentando los conflictos sin quedar atrapados en ellos, buscando siempre resolver las tensiones para alcanzar un plano superior de unidad, de paz y de justicia. Los cristianos tenemos algo muy lindo, una guía de acción, un programa, podríamos decir, revolucionario. Les recomiendo vivamente que lo lean, que lean las bienaventuranzas que están en el capítulo 5 de San Mateo y 6 de San Lucas, (cfr. Mt 5, 3 y Lc 6, 20) y que lean el pasaje de Mateo 25. Se lo dije a los jóvenes en Río de Janeiro, con esas dos cosas tienen el programa de acción.

Sé que entre ustedes hay personas de distintas religiones, oficios, ideas, culturas, países, continentes. Hoy están practicando aquí la cultura del encuentro, tan distinta a la xenofobia, la discriminación y la intolerancia que tantas veces vemos. Entre los excluidos se da ese encuentro de culturas donde el conjunto no anula la particularidad, el conjunto no anula la particularidad. Por eso a mí me gusta la imagen del poliedro, una figura geométrica con muchas caras distintas. El poliedro refleja la confluencia de todas las parcialidades que en él conservan la originalidad. Nada se disuelve, nada se destruye, nada se domina, todo se integra, todo se integra. Hoy también están buscando esa síntesis entre lo local y lo global. Sé que trabajan día tras día en lo cercano, en lo concreto, en su territorio, su barrio, su lugar de trabajo: los invito también a continuar buscando esa perspectiva más amplia, que nuestros sueños vuelen alto y abarquen el todo.

De ahí que me parece importante esa propuesta que algunos me han compartido de que estos movimientos, estas experiencias de solidaridad que crecen desde abajo, desde el subsuelo del planeta, confluyan, estén más coordinadas, se vayan encontrando, como lo han hecho ustedes en estos días. Atención, nunca es bueno encorsetar el movimiento en estructuras rígidas, por eso dije encontrarse, mucho menos es bueno intentar absorberlo, dirigirlo o dominarlo; movimientos libres tiene su dinámica propia, pero sí, debemos intentar caminar juntos. Estamos en este salón, que es el salón del Sínodo viejo, ahora hay uno nuevo, y sínodo quiere decir precisamente “caminar juntos”: que éste sea un símbolo del proceso que ustedes han iniciado y que están llevando adelante.

Los movimientos populares expresan la necesidad urgente de revitalizar nuestras democracias, tantas veces secuestradas por innumerables factores. Es imposible imaginar un futuro para la sociedad sin la participación protagónica de las grandes mayorías y ese protagonismo excede los procedimientos lógicos de la democracia formal. La perspectiva de un mundo de paz y justicia duraderas nos reclama superar el asistencialismo paternalista, nos exige crear nuevas formas de participación que incluya a los movimientos populares y anime las estructuras de gobierno locales, nacionales e internacionales con ese torrente de energía moral que surge de la incorporación de los excluidos en la construcción del destino común. Y esto con ánimo constructivo, sin resentimiento, con amor.

Yo los acompaño de corazón en ese camino. Digamos juntos desde el corazón: Ninguna familia sin vivienda, ningún campesino sin tierra, ningún trabajador sin derechos, ninguna persona sin la dignidad que da el trabajo.

Queridos hermanas y hermanos: sigan con su lucha, nos hacen bien a todos. Es como una bendición de humanidad. Les dejo de recuerdo, de regalo y con mi bendición, unos rosarios que fabricaron artesanos, cartoneros y trabajadores de la economía popular de América Latina.

Y en este acompañamiento rezo por ustedes, rezo con ustedes y quiero pedirle a nuestro Padre Dios que los acompañe y los bendiga, que los colme de su amor y los acompañe en el camino dándoles abundantemente esa fuerza que nos mantiene en pie: esa fuerza es la esperanza, la esperanza que no defrauda, gracias.

 

Temáticas: 

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