Hacienda Home The Vision The Hotel The Spa Villas Hacienda More Villas The Estate Homes Reservations News  Contact Us Members Area 

The SPA: hotel hacienda los pirules

  • A World-Class Hot Mineral Spring Spa constructed as a 2000 Year old Mayan Village
  • 2 acres of indoor facilities, pools, tunnels, scented subterranean chambers and "Roman bath" grottos are designed to convey the awesome grandeur and style of nearby pyramids, demonstrating the creative skills of the area's first architects
  • Unrivalled transformation of mind, body and wellness through opulent pampering will allow guests to step out of the stresses of everyday life and discover the healing nature of these legendary waters
 
 

Hacienda Los Pirules is developing an exclusive line of herbal health products derived from traditional remedies used by Mayan healers for hundreds of years. Mayan Medicine We expect theseproducts to set new standards in the spa industry. Herbal therapists will use a combination of the latest spa technologies with indigenous and alternative methods of healing and rejuvenation.



Front Entry to the Spa at Hacienda Los Pirules sets the stage for an unrivalled ambiance, tantalizing the senses with anticipation of the luxurious experiences awaiting . . .

 
   
Last updated: September 25, 2004
TFSC = $TFSconfig; //get useragent visitor $this->GetUserAgent(); //get ipadress visitor $this->GetIpAddress(); //get requested page $this->GetRequestedPage(); // open connection to mySQL server $this->dblink = mysql_connect($this->TFSC->mysqlserver, $this->TFSC->statsuser, $this->TFSC->userpwd); // if mySQL server connection if ($this->dblink) { // select TFS database if (mysql_select_db($this->TFSC->statsdb,$this->dblink)) { // check ipaddress if not excluded the go on with registration if ($this->CheckIpAddress() != 1) { //get a visit id so we can link the requested pages $vid = $this->visits(); // register pages requested $this->PageRequest($vid); } // get online guests $this->getOnlineGuests(); // close the connection mysql_close($this->dblink); } } } function GetUserAgent() { if (isset($_SERVER['HTTP_USER_AGENT'])) { if ($_SERVER['HTTP_USER_AGENT'] != NULL) { $this->UserAgent = strtolower((string)$_SERVER['HTTP_USER_AGENT']); } else { $this->UserAgent = ''; } } else { $this->UserAgent = ''; } } // END function GetUserAgent() function GetRequestedPage() { if(isset($_SERVER[$this->TFSC->pagestats])) { if ($_SERVER[$this->TFSC->pagestats] != NULL) { $this->RequestedPage = (string)"http://".$_SERVER['HTTP_HOST'].$_SERVER[$this->TFSC->pagestats]; } else { $this->RequestedPage = ''; } } else { $this->RequestedPage = ''; } } // END function GetRequestedPage() function GetIpAddress() { //get usefull vars: $client_ip = ''; $x_forwarded_for = ''; $remote_addr = ''; $client_ip = (string)$_SERVER['HTTP_CLIENT_IP']; $x_forwarded_for = (string)$_SERVER["HTTP_X_FORWARDED_FOR"]; $remote_addr = (string)$_SERVER['REMOTE_ADDR']; // then the script itself if (!empty ($client_ip) ) { $ip_expl = explode('.',$client_ip); $referer = explode('.',$remote_addr); if($referer[0] != $ip_expl[0]) { $ip=array_reverse($ip_expl); $this->IpAddress = implode('.',$ip); } else { $this->IpAddress = $client_ip; } } elseif (!empty($x_forwarded_for) && strrpos($x_forwarded_for,'.') > 0 ) { if(strstr($x_forwarded_for,',')) { $ip_expl = explode(',',$x_forwarded_for); $this->IpAddress = end($ip_expl); } else { $this->IpAddress = $x_forwarded_for; } } else { $this->IpAddress = $remote_addr; } unset ($client_ip,$x_forwarded_for,$remote_addr,$ip_expl,$referer); }// END function GetIpAddress() function CheckIpAddress() { $retval = 0; $visitor_tld = ''; $visitor_nslookup = ''; $sql = "select exclude,type from TFS_ipaddresses where ip='$this->IpAddress' and useragent='$this->UserAgent'"; $rs = mysql_query($sql,$this->dblink); // if ip en useragent not known then lets get started if(!$row = mysql_fetch_array($rs)) { // get fullname nslookup if(($this->IpAddress != NULL)&&($this->IpAddress != '127.0.0.1')&&(substr($this->IpAddress,0,8) != '192.168.')&&(substr($this->IpAddress,0,7) != '172.16.')&&(substr($this->IpAddress,0,7) != '172.31.')) { $visitor_nslookup = @gethostbyaddr($this->IpAddress); } // get country from visitor $pos = strrpos($visitor_nslookup,'.') + 1; if ($pos > 0) { $xt = substr($visitor_nslookup,$pos); if (ereg('([a-z])',$xt)) { $visitor_tld = $xt; } else { $visitor_tld = ''; $visitor_nslookup = $this->IpAddress; } } else { $visitor_tld = ''; $visitor_nslookup = $this->IpAddress; } if ($visitor_tld == '') { $result = mysql_query("SELECT COUNTRY_CODE2 FROM TFS_iptocountry WHERE inet_aton('$this->IpAddress') >= ip_from AND inet_aton('$this->IpAddress') <= ip_to"); if($result) { $row = mysql_fetch_array($result); $visitor_tld = strtolower($row['COUNTRY_CODE2']); mysql_free_result($result); } } // determine if bot or browser $type = 0; // get browser -------------------------------------------------------------------------- $browser=''; $result = mysql_query('SELECT LENGTH( browser_string ) AS strlen, browser_string, browser_fullname FROM TFS_browsers ORDER BY strlen DESC'); while ($row = mysql_fetch_array($result)) { if(strpos($this->UserAgent,$row['browser_string']) !== FALSE) { $browser = mysql_escape_string($row['browser_fullname']); if (preg_match( "/".$row['browser_string']."[\/\sa-z]*([\d\.]*)/i", $this->UserAgent, $version)) { $browser .= ' '.$version[1]; } $type = 1; break; } } mysql_free_result($result); // get browser -----------------------------------------------------------------------END // if browser "" then look for bot ------------------------------------------------------ if($browser == '') { // get bot $browser = ''; $result = mysql_query('SELECT LENGTH(bot_string) AS strlen, bot_string,bot_fullname FROM TFS_bots ORDER BY strlen DESC'); while ($row = mysql_fetch_array($result)) { if(strpos($this->UserAgent,$row['bot_string']) !== FALSE) { $browser = mysql_escape_string($row['bot_fullname']); $type = 2; break; } } mysql_free_result($result); } if($browser == '') { if (strpos($this->UserAgent,'robot') !== FALSE) { $browser = 'Unknown robot (identified by robot)'; $type = 2; } } if($browser == '') { if (strpos($this->UserAgent,'crawl') !== FALSE) { $browser = 'Unknown robot (identified by crawl)'; $type = 2; } } if($browser == '') { if (strpos($this->UserAgent,'spider') !== FALSE) { $browser = 'Unknown robot (identified by spider)'; $type = 2; } } // if browser "" then look for bot ---------------------------------------------------END // get OS version ----------------------------------------------------------------------- $OS = ''; $result = mysql_query('SELECT LENGTH(sys_string) AS strlen,sys_string,sys_fullname FROM TFS_systems ORDER BY strlen DESC',$this->dblink); while ($row = mysql_fetch_array($result)) { if(strpos($this->UserAgent,$row['sys_string']) !== FALSE) { $OS = mysql_escape_string($row['sys_fullname']); break; } } mysql_free_result($result); // get OS version --------------------------------------------------------------------END // do insert off unique visitor --------------------------------------------------------- $sql = "insert into TFS_ipaddresses (ip,nslookup,useragent,tld,system,browser,type,their_username) values ('$this->IpAddress','$visitor_nslookup','$this->UserAgent','$visitor_tld','$OS','$browser',$type,$their_username)"; mysql_query($sql,$this->dblink); // do insert off unique visitor ------------------------------------------------------END } else { $retval = $row["exclude"]; // global var voor type off visit $type = $row["type"]; } // set $vistyp to $typ off current visitor //set value for vistor type bot/browser $this->vType = $type; // set value for exclude $this->vExclude = $retval; // return value return $retval; }// END function CheckIpAddress() function visits() { $sql = "select id from TFS_ipaddresses where ip='$this->IpAddress' and useragent='$this->UserAgent'"; $rs = mysql_query($sql,$this->dblink); if($row = mysql_fetch_array($rs)) { $visitid = $row['id']; mysql_free_result($rs); } $sql = "SELECT id FROM TFS_visits WHERE month=MONTH(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)) AND year=YEAR(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)) AND ip_id='$visitid' and time >= UNIX_TIMESTAMP(DATE_ADD(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR), INTERVAL -".$this->TFSC->onlinetime." MINUTE))"; $rs = mysql_query($sql,$this->dblink); if($row = mysql_fetch_array($rs)) { $visitnumber = $row['id']; mysql_free_result($rs); $sql = "UPDATE TFS_visits SET time=UNIX_TIMESTAMP(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)) WHERE id='$visitnumber'"; mysql_query($sql,$this->dblink); } else { $sql = "INSERT INTO TFS_visits (ip_id,hour,day,month,year,time) values ($visitid,HOUR(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)),DAYOFMONTH(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)),MONTH(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)),YEAR(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)),UNIX_TIMESTAMP(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)))"; mysql_query($sql,$this->dblink); $visitnumber = mysql_insert_id($this->dblink); } return $visitnumber; }// END function visits() function PageRequest($visitid) { $page = mysql_escape_string($this->RequestedPage); $sql = "select page_id from TFS_pages where page='$page'"; $rs = mysql_query($sql,$this->dblink); if(!$row = mysql_fetch_array($rs)) { $sql = "insert into TFS_pages (page) values ('$page')"; mysql_query($sql,$this->dblink); $pageid = mysql_insert_id($this->dblink); } else { $pageid = $row['page_id']; mysql_free_result($rs); } $sql = "INSERT INTO TFS_page_request (page_id,hour,day,month,year,ip_id) values ($pageid,HOUR(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)),DAYOFMONTH(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)),MONTH(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)),YEAR(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)),$visitid)"; mysql_query($sql,$this->dblink); $this->Regreferrer(); }// END function PageRequest() function Regreferrer() { // if referer is not nothing then if(isset($_SERVER['HTTP_REFERER'])) { $ref = $_SERVER['HTTP_REFERER']; if(isset($_SERVER['HTTP_HOST'])) { $hst = $_SERVER['HTTP_HOST']; } if(trim($ref) != '') { $ref = mysql_escape_string(trim($ref)); $hst = mysql_escape_string(trim($hst)); if((strpos($ref,$hst) === FALSE) && (substr($ref,0,1) != '/')) { if (substr($ref,0,7) == 'http://') { if(strpos($ref,'/',7) !== FALSE) { $pos = strpos($ref,'/',7) - 7; $dom = substr($ref,7,$pos); } else { $dom = substr($ref,7); } if ((substr($dom,0,3) == "www") || (substr($dom,0,3) == "WWW")) { $dom = substr($dom,4); } if ($this->regKeyWords($ref) === false) { $sql = "INSERT INTO TFS_referrer (referrer,domain,day,month,year) values ('$ref','$dom',DAYOFMONTH(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)),MONTH(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)),YEAR(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR)))"; mysql_query($sql,$this->dblink); } } } } } }// END function Regreferrer() function getOnlineGuests() { if (mysql_select_db($this->TFSC->statsdb,$this->dblink)) { $result = mysql_query("SELECT count(time) FROM TFS_visits WHERE time >= UNIX_TIMESTAMP(DATE_ADD(DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR), INTERVAL -".$this->TFSC->onlinetime." MINUTE))"); $row = mysql_fetch_array($result); $this->OnlineGuests = $row[0]; mysql_free_result($result); } } function regKeyWords($url) { $sql = "SELECT * FROM TFS_search_engines"; $result = mysql_query($sql,$this->dblink); while($row = mysql_fetch_array($result)) { if (strpos($url,addslashes($row['search'])) !== FALSE) { $ar = explode(",",$row['searchvar']); for($i=0;$i <= count($ar);$i++) { $qsp1 = strpos($url,$ar[$i]); if ($qsp1 !== false) { $qsp1 = ($qsp1 + strlen($ar[$i])); $qsp2 = strpos($url,'&',$qsp1); if($qsp2 !== false) { $kwrds = urldecode(substr($url,$qsp1,($qsp2-$qsp1))); } else { $kwrds = urldecode(substr($url,$qsp1)); } } } break; } } if(trim($kwrds) != '') { $sql = "INSERT INTO TFS_keywords (kwdate,searchid,keywords) VALUES (DATE_ADD(NOW(), INTERVAL ".$this->TFSC->hourdiff." HOUR),".$row['searchid'].",'".mysql_escape_string($kwrds)."')"; mysql_query($sql,$this->dblink); return true; } else { return false; } } } ?>