Source code of /package/share/subprograms/cu

Last modified: 2015-05-17 17:13:53

Download

#!/usr/bin/php
<?php

#
#  generic Whois - Subprogram "cu"
#
#  (c) 2011 by Daniel Marschall, ViaThinkSoft <www.viathinksoft.de>
#
#  Distribution, usage etc. pp. regulated by the current version of GPL.
#
#
#
# History:
# 2011-06-07  mar   Initial release
# 2012-01-16  mar   Fixed uppercase(). Added non-available-detection
#

require_once __DIR__ '/../includes/common_functions.inc.php';

$domain = isset($argv[1]) ? $argv[1] : '';

define('BEGIN''<!-- InstanceBeginEditable name="MainRgn" -->');
define('END',   '<!-- InstanceEndEditable -->');

$url "http://www.nic.cu/dom_det.php?domsrch=$domain";

$res  "% Parsing via regex from '$url'\n\n";

$x file_get_contents2($url);

preg_match_all(''.preg_quote(BEGIN'').'(.*)'.preg_quote(END'').'ismU'$x$m);

if (!isset(
$m[1][0])) {
    echo 
"Error while parsing the web content. Could not find limitations.\n";
    exit(
1);
}

$x $m[1][0];

$x strip_tags($x);

// é -> É  strtoupper()
/*
$locals = array('es_ESeuro', 'es_ES', 'es');
reset($locals);
while (list(, $locale) = each ($locals)) {
    if ( setlocale(LC_CTYPE, $locale) == $locale ) {                
        break; // Exit when we were successfull
    }
}
*/

$x str_replace('&nbsp;'' '$x);

$x html_entity_decode($x);

$x preg_replace("| +|"' '$x);
$x preg_replace("|\n *|""\n"$x);
$x preg_replace("| *\n|""\n"$x);
$x preg_replace("|\n+|""\n"$x);

$x str_replace(":\n"": "$x);

$special_words = array(
    
'Detalles del dominio',
    
'Información general del dominio',
    
'DNS Primario',
    
'Contacto Técnico',
    
'Contacto Administrativo',
    
'Contacto Financiero'
);

foreach (
$special_words as $s) {
    
$x str_replace($s"\n".uc_latin1($s)."\n"$x);
}

$x str_replace('< Regresar a la página anterior'''$x);

$x make_tabs($x);

$x trim($x);

if (
strpos($x'Dominio: Organización: Dirección:') !== false) {
    
$x 'Domain does not exist.';
}

#does not work...
#if ($x == 'DETALLES DEL DOMINIO\n\nINFORMACIÓN GENERAL DEL DOMINIO\n\nDominio:     Organización: Dirección:\n\nDNS\nNombre:      Dirección IP:\nContacto\nNombre:      Organización: Dirección: Teléfono: Fax:') {
if (md5($x) == '82f755ffa4a436159afec22d69be304c') {
    
$x 'Domain not available.';
}

echo 
$res.trim_each_line($x)."\n";