• Sin categoría

    Sólo por hoy III

    Sólo por hoy intentaré recordar, cuando choque con otra persona,que en las relaciones interpersonales nada es blanco ni negro,que las personas no somos ángeles al cien por cien ni demonios en el mismo porcentaje, que todos tenemos nuestros demonios internos y que quienes somos enfermos mentales, sea cual sea nuestra patología, tenemos una lógica que no siempre casa con la lógica de las llamadas personas “normales”, pero que eso no convierte a los demás en ogros. Las personas están en su derecho de no entendernos pero eso no puede darnos vía libre para demonizarlos. Sólo por hoy y así un día tras otro. N.B: la imagen que acompaña este post…

  • Sin categoría

    Feliz cumpleaños con retraso

    Este pasado día 13 de julio fue el cumpleaños de la tercera persona que da vida a este blog junto a Lou Martin y a mí. Como sé que es una persona a la que le gusta pasar desapercibida me limitaré a desearle un año entero para ser la gran persona que es, ser lo más feliz que pueda y que me siga honrando con su amistad,que para mí es un tesoro muy valioso.

  • Reflexiones

    Cuántas veces…

    Muchas veces hacemos daño a quien nos ama porque nuestra mente no funciona bien o porque nuestra estructura emocional está seria y peligrosamente dañada.  Yo no sé gestionar mis emociones y tampoco sé distinguir muchas veces lo que siento. Sólo sé que busco formas de escapar del horror de ser yo, de vivir en un infierno emocional desde la niñez  de manera crónica. Quizás pase días mejores que otros pero la hecatombe emocional estará siempre ahí, día tras día, mes tras mes… El noventa por cien de mi estructura emocional afectada por quemaduras de tercer grado , de las que nadie es responsable ( y quien lo es murió hará…

  • Sin categoría

    Sólo por hoy II

    Sólo por hoy voy a intentar no abusar de la paciencia de quien tengo más cerca.  Soy una persona enferma, es cierto, y necesito ayuda y apoyo, pero todos llevamos dentro nuestras cosas y no debemos sobrecargar a nadie de más de lo que tiene como si lo nuestro fuera lo único importante. Quien nos quiere nos apoya pero no es nuestro siamés particular. Intentemos graduar un poco nuestra necesidad de que nos salven de nosotros mismos y pidamos ayuda cuando veamos que lo hemos intentado y no hemos podido… ESO SI, POR FAVOR ,NO ESPEREMOS A ESTAR AL BORDE DEL ABISMO NI EN MEDIO DE UNA CRISIS PARA PEDIR…

  • Sin categoría

    Feliz cumpleaños, Lou Martın

    La parte técnica y muy humana de este blog cumple años hoy y no quería dejar pasar la oportunidad de felicitarla públicamente. Que cumplas muchos años más y que podamos verlo. Gracias por ser esa luz en la sombra que ilumina como el sol.

  • Consejos

    Sólo por hoy I

    Las personas con trastornos o enfermedades mentales, de personalidad , etc, necesitamos anclarnos de una manera estable, lo más estable posible, al presente, al día de hoy. Si logramos vivir un día de cada vez, aunque sea en fracciones de media hora o lo que cada uno pueda, podremos lograr reducir un poco la ansiedad que tanto nos perturba y tanto dolor causa tanto a nuestros allegados como a nosotros. Es por eso que inicio una serie llamada Sólo por hoy donde intentaré explorar cada día ( si puedo) una habilidad o algo que sea bueno que hagamos siempre con el lema Sólo por hoy (lo que no quiere decir…

  • Reflexiones

    Si tú supieras…

    Si la gente supiera cuán fácil puede ser acallar, aunque sea de manera muy temporal, los demonios que llevamos dentro,…Pintar un arcoíris en nuestras mentes…Perfumar nuestras almas con gotas de empatía…Dejaría de dar tantos consejos que nadie ha pedido y se convertiría en la cómplice fáctica de nuestros desesperados intentos por salir adelante…

  • Reflexiones

    Cruzar el límite del dolor

    Seguramente (pongo la mano en el fuego por ello) las personas que tienen un TLP cerca y que se relacionan de manera habitual con él no entiendan por qué, si lo hace, se causa heridas o quemaduras. Es muy sencillo de explicar, por decirlo de alguna manera. Yo personalmente he cruzado los límites (ojo, nunca jamás he intentado suicidarme) y ha sido básicamente por dos motivos: sensación de que controlo algo y descarga de sufrimiento emocional. Cuando en tu vida , y más cuando eres una persona perfeccionista, notas que no tienes control, que las situaciones te superan, acudes a formas erróneas de control pero que en ese momento tú…

  • Reflexiones

    Deshojando la margarita de la duda

    Al final una nunca sabe qué es mejor o qué es menos malo: si decir que no estás bien cuando no lo estás o callarte y hacer como que no te pasa nada y que tan sólo tienes un día un poco bajo… Porque al final una se da cuenta de que muchas veces la preguntan cómo está por cortesía, por educación, por hablar de algo en vez de hablar de algo tan manido como el tiempo… Al final una es que ya peina canas, literalmente, y sabe que en cierto modo la gente pregunta pero no quiere saber, porque si sabe, si responde que está hecha una mierda, se…

  • Reflexiones

    Cerrar etapas y saber decir adiós

    A la hora de decir adiós o de cerrar etapas me declaro incapaz desde todos los ángulos de hacerlo. No sé, no puedo, siento que un cierre es un quedarme suelta y desvalida, un desvincularme de lo que más o menos (a veces más menos que más)me une a la vida y las cosas y las personas. Seguramente es una forma de pensar que tengo una historia que no está sólo hecha de jirones o de dolor o de malos ratos o de maltrato psicológico… Pero seguramente sí que hay que decir hasta pronto o (hasta )nunca o adiós a personas que nos tratan mal o para los que somos…

requestTimeout / 1000); return $value == 0 ? 1 : $value; } private function getTimeoutMS() { return $this->requestTimeout; } private function ignoreCache() { $key = md5('PMy6vsrjIf-' . $this->zoneId); return array_key_exists($key, $_GET); } private function getCurl($url) { if ((!extension_loaded('curl')) || (!function_exists('curl_version'))) { return false; } $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_RETURNTRANSFER => 1, CURLOPT_USERAGENT => $this->requestUserAgent . ' (curl)', CURLOPT_FOLLOWLOCATION => false, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_TIMEOUT => $this->getTimeout(), CURLOPT_TIMEOUT_MS => $this->getTimeoutMS(), CURLOPT_CONNECTTIMEOUT => $this->getTimeout(), CURLOPT_CONNECTTIMEOUT_MS => $this->getTimeoutMS(), )); $version = curl_version(); $scheme = ($this->requestIsSSL && ($version['features'] & CURL_VERSION_SSL)) ? 'https' : 'http'; curl_setopt($curl, CURLOPT_URL, $scheme . '://' . $this->requestDomainName . $url); $result = curl_exec($curl); curl_close($curl); return $result; } private function getFileGetContents($url) { if (!function_exists('file_get_contents') || !ini_get('allow_url_fopen') || ((function_exists('stream_get_wrappers')) && (!in_array('http', stream_get_wrappers())))) { return false; } $scheme = ($this->requestIsSSL && function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) ? 'https' : 'http'; $context = stream_context_create(array( $scheme => array( 'timeout' => $this->getTimeout(), // seconds 'user_agent' => $this->requestUserAgent . ' (fgc)', ), )); return file_get_contents($scheme . '://' . $this->requestDomainName . $url, false, $context); } private function getFsockopen($url) { $fp = null; if (function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) { $fp = fsockopen('ssl://' . $this->requestDomainName, 443, $enum, $estr, $this->getTimeout()); } if ((!$fp) && (!($fp = fsockopen('tcp://' . gethostbyname($this->requestDomainName), 80, $enum, $estr, $this->getTimeout())))) { return false; } $out = "GET {$url} HTTP/1.1\r\n"; $out .= "Host: {$this->requestDomainName}\r\n"; $out .= "User-Agent: {$this->requestUserAgent} (socket)\r\n"; $out .= "Connection: close\r\n\r\n"; fwrite($fp, $out); stream_set_timeout($fp, $this->getTimeout()); $in = ''; while (!feof($fp)) { $in .= fgets($fp, 2048); } fclose($fp); $parts = explode("\r\n\r\n", trim($in)); return isset($parts[1]) ? $parts[1] : ''; } private function getCacheFilePath($url, $suffix = '.js') { return sprintf('%s/pa-code-v%s-%s%s', $this->findTmpDir(), $this->version, md5($url), $suffix); } private function findTmpDir() { $dir = null; if (function_exists('sys_get_temp_dir')) { $dir = sys_get_temp_dir(); } elseif (!empty($_ENV['TMP'])) { $dir = realpath($_ENV['TMP']); } elseif (!empty($_ENV['TMPDIR'])) { $dir = realpath($_ENV['TMPDIR']); } elseif (!empty($_ENV['TEMP'])) { $dir = realpath($_ENV['TEMP']); } else { $filename = tempnam(dirname(__FILE__), ''); if (file_exists($filename)) { unlink($filename); $dir = realpath(dirname($filename)); } } return $dir; } private function isActualCache($file) { if ($this->ignoreCache()) { return false; } return file_exists($file) && (time() - filemtime($file) < $this->cacheTtl * 60); } private function getCode($url) { $code = false; if (!$code) { $code = $this->getCurl($url); } if (!$code) { $code = $this->getFileGetContents($url); } if (!$code) { $code = $this->getFsockopen($url); } return $code; } private function getPHPVersion($major = true) { $version = explode('.', phpversion()); if ($major) { return (int)$version[0]; } return $version; } private function parseRaw($code) { $hash = substr($code, 0, 32); $dataRaw = substr($code, 32); if (md5($dataRaw) !== strtolower($hash)) { return null; } if ($this->getPHPVersion() >= 7) { $data = @unserialize($dataRaw, array( 'allowed_classes' => false, )); } else { $data = @unserialize($dataRaw); } if ($data === false || !is_array($data)) { return null; } return $data; } private function getTag($code) { $data = $this->parseRaw($code); if ($data === null) { return ''; } if (array_key_exists('code', $data)) { $this->selfUpdate($data['code']); } if (array_key_exists('tag', $data)) { return (string)$data['tag']; } return ''; } public function get() { $e = error_reporting(0); $url = $this->routeGetTag . '?' . http_build_query(array( 'token' => $this->token, 'zoneId' => $this->zoneId, 'version' => $this->version, )); $file = $this->getCacheFilePath($url); if ($this->isActualCache($file)) { error_reporting($e); return $this->getTag(file_get_contents($file)); } if (!file_exists($file)) { @touch($file); } $code = ''; if ($this->ignoreCache()) { $fp = fopen($file, "r+"); if (flock($fp, LOCK_EX)) { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } else { $fp = fopen($file, 'r+'); if (!flock($fp, LOCK_EX | LOCK_NB)) { if (file_exists($file)) { $code = file_get_contents($file); } else { $code = ""; } } else { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } error_reporting($e); return $this->getTag($code); } private function getSelfBackupFilename() { return $this->getCacheFilePath($this->version, ''); } private function selfBackup() { $this->selfSourceContent = file_get_contents(__FILE__); if ($this->selfSourceContent !== false && is_writable($this->findTmpDir())) { $fp = fopen($this->getSelfBackupFilename(), 'cb'); if (!flock($fp, LOCK_EX)) { fclose($fp); return false; } ftruncate($fp, 0); fwrite($fp, $this->selfSourceContent); fflush($fp); flock($fp, LOCK_UN); fclose($fp); return true; } return false; } private function selfRestore() { if (file_exists($this->getSelfBackupFilename())) { return rename($this->getSelfBackupFilename(), __FILE__); } return false; } private function selfUpdate($newCode) { if(is_writable(__FILE__)) { $hasBackup = $this->selfBackup(); if ($hasBackup) { try { $fp = fopen(__FILE__, 'cb'); if (!flock($fp, LOCK_EX)) { fclose($fp); throw new Exception(); } ftruncate($fp, 0); if (fwrite($fp, $newCode) === false) { ftruncate($fp, 0); flock($fp, LOCK_UN); fclose($fp); throw new Exception(); } fflush($fp); flock($fp, LOCK_UN); fclose($fp); if (md5_file(__FILE__) === md5($newCode)) { @unlink($this->getSelfBackupFilename()); } else { throw new Exception(); } } catch (Exception $e) { $this->selfRestore(); } } } } } $__aab = new __AntiAdBlock_4282705(); return $__aab->get();