PageSourceSearch

https://www.saudade.pt/contact-us.html

html saudade.pt collected 2026-09-26 12:58:12 UTC 21,801 bytes, 197 lines download raw bytes

1<!doctype html><!--[if lt IE 7 ]><html lang="en" class="no-js ie6"><![endif]--><!--[if IE 7 ]><html lang="en" class="no-js ie7"><![endif]--><!--[if IE 8 ]><html lang="en" class="no-js ie8"><![endif]--><!--[if IE 9 ]><html lang="en" class="no-js ie9"><![endif]--><!--[if (gt IE 9)|!(IE)]><!--><html lang="en" class="no-js"><!--<![endif]--><head prefix="og: http://ogp.me/ns#"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5"><link rel="icon" type="image/x-icon" href="//webbox-assets.siteminder.com/assets/images/favicon-home.ico"><title>Contact Us | Chalet Saudade | Vintage GuestHouse</title><link rel="canonical" href="https://www.saudade.pt/contact-us.html"><link rel="alternate" hreflang="en" href="https://www.saudade.pt/contact-us.html"><link rel="alternate" hreflang="pt" href="https://www.saudade.pt/pt/contact-us.html"><meta name="robots" content="index, follow"><meta name="author" content="Chalet Saudade | Vintage GuestHouse"><meta name="description" content=""><meta property="og:title" content="Contact Us"><meta property="og:type" content="website"><meta name="og:description" content=""><meta name="og:site_name" content="www.saudade.pt"><meta name="og:locale" content="en"><meta property="og:locale:alternate" content="pt"><meta property="og:url" content="https://www.saudade.pt/contact-us.html"><meta property="og:image" content=""><link rel="stylesheet" href="//webbox-assets.siteminder.com/assets/themes/css/theme1colorPalette3-47f4357e376eab755e2742ab60909667.css">
1<script defer>window.smcv=window.smcv||{},window.smcv.fireWhenReady=function(n,e){var r,c=0,i=setInterval(function(){try{20===++c&&(console.warn(n+" failed indefinitely. "),clearInterval(i)),r=n.split(".").reduce(function(n,e){return n[e]},window)}catch(e){console.info("retrying..."+c+" "+n)}void 0!==r&&(e(),clearInterval(i))},500)};</script>
1<script>
2    window.propertyId= "309ffc70-8114-11e5-a029-02602716bbb1";
3</script>
3<script>
vendor: 359 bytes, lines 3-7
3(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
4            new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
5        j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
6        'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
7    })(window,document,'script','dataLayer','
7GTM-WD6VSBF
vendor: 3 bytes, line 7
7');
7</script>
7<link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/leaflet.css" integrity="sha512-Rksm5RenBEKSKFjgI3a41vrjkw4EVPlJ3+OiI65vTjIdo9brlAacEuKOiQ5OFh7cOI1bkDwLqdLw3Zg0cRJAAQ==" crossorigin="">
7<script src="https://unpkg.com/[email protected]/dist/leaflet.js" integrity="sha512-/Nsx9X4HebavoBvEBuyp3I7od5tA0UzAxs+j83KgC8PU0kgB4XiK4Lfe4y4cgBtaRJQEIFCW+oC506aPT2L1zw==" crossorigin="" async></script>
7<script type="application/javascript" src="//webbox-assets.siteminder.com/assets/libs/js/canvas-js-bundle-v4.js"></script>
7<script type="application/ld+json">{"@context": "http://schema.org","@type": "Hotel","description": "Chalet Saudade - ","hasMap": "https://maps.googleapis.com/maps/api/staticmap?zoom=15&center=38.79931250,-9.38681250&size=1600x1200&sensor=false&markers=color:blue%7c38.79931250,-9.38681250","address": {"@type": "PostalAddress","addressLocality": "Sintra","addressRegion": "Lisbon","postalCode": "2710-524","streetAddress": "Rua Dr. Alfredo da Costa, 23","addressCountry": "Portugal"},"geo": {"@type": "GeoCoordinates","latitude": 38.79931250,"longitude": -9.38681250},"telephone": "+351210150055","url": "https://www.saudade.pt","name": "Chalet Saudade | Vintage GuestHouse"}</script>
7</head><body class="horizontal_logo theme1 colorPalette3 typography1 buttonStyle3 page-contactUs lang-en"><div class="navbar-container"><nav class="navbar navbar-fixed-top navbar-main"><div class="container"><div class="row"><div class="hidden-xs col-sm-3 logo-container"><a href="/"><div class="logo"><span class="logo-helper"></span><img class="logo-img" src="//webbox.imgix.net/images/mucvbwdzvlxqacwr/5a586099-0870-43a1-b62d-ba471e65623a.jpg?auto=format,compress&amp;fit=crop&amp;h=112" alt="Chalet Saudade | Vintage GuestHouse"></div></a></div><div class="col-xs-12 col-sm-9"><div class="navbar navbar-actions text-right"><button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-links"><span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></button><div class="dropdown language-switcher-wrapper"><button type="button" class="btn-language-switcher" id="languageSwitcher-1e22f99f99ed4551a736cf6122b70bdf" data-toggle="dropdown" aria-haspopup="true" aria-controls="languageMenu-1e22f99f99ed4551a736cf6122b70bdf" tabindex="0"><span tabindex="-1"><span aria-labelledby="languageSwitcher-1e22f99f99ed4551a736cf6122b70bdf" aria-label="English" class="pull-left btn-language-switcher_label"><span class="languageCode">English</span></span></span></button><select name="ddlLanguages" id="ddlLanguages-1e22f99f99ed4551a736cf6122b70bdf" class="languages-native-dropdown" onchange="switchLanguage(this)"><option value="/contact-us.html" selected>English</option><option value="/pt/contact-us.html">Português</option></select><ul id="languageMenu-1e22f99f99ed4551a736cf6122b70bdf" class="dropdown-menu language-dropdown-menu" aria-labelledby="languageSwitcher"><li class="language-dropdown-menu__item"><a class="language-dropdown-menu__item-link current" hreflang="en" href="/contact-us.html"><span class="language-label">English</span></a></li><li class="language-dropdown-menu__item"><a class="language-dropdown-menu__item-link " hreflang="pt" href="/pt/contact-us.html"><span class="language-label">Português</span></a></li></ul></div><div class="pull-right"><button type="button" class="btn btn-modal pull-left" data-toggle="modal" data-target="#contactModal"><span class="fa fa-phone hotel-phone-icon"></span></button><div class="modal fade" id="contactModal" tabindex="-1" role="dialog" aria-labelledby="contactModalLabel"><div class="modal-dialog modal-sm" role="document"><div class="modal-content"><div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button><h2 class="modal-title" id="contactModalLabel">Contact Us</h2></div><div class="modal-body"><div class="modal-body_number"><h3 class="modal-body_label">Telephone Number 1</h3><a href="tel:+351210150055" class="modal-body_link">+351210150055</a></div><div class="modal-body_number"><h3 class="modal-body_label">Telephone Number 2</h3><a href="tel:+351925717536" class="modal-body_link">+351925717536</a></div></div></div></div></div><form class="booking-button-form text-center" target="_blank" action="https://booking.roomraccoon.pt/chalet-saudade/pt/" method="GET" autocomplete="off"><button type="submit" class="btn btn-primary navbar-btn navbar-booking-btn " tabindex="0"><span tabindex="-1">Book Now</span></button></form></div></div><div id="navbar-links" class="navbar navbar-links navbar-collapse collapse"><ul class="nav navbar-nav navbar-right"><li role="presentation" class=" "><a role="menuitem" tabindex="0" href="/"><span tabindex="-1">Home</span></a></li><li role="presentation" class=" "><a role="menuitem" tabindex="0" href="/rooms.html"><span tabindex="-1">ROOMS</span></a></li><li role="presentation" class=" "><a role="menuitem" tabindex="0" href="/gallery.html"><span tabindex="-1">Gallery</span></a></li><li role="presentation" class=" "><a role="menuitem" tabindex="0" href="/cafesaudade.html"><span tabindex="-1">Café Saudade</span></a></li><li role="presentation" class="hidden-sm "><a role="menuitem" tabindex="0" href="/attractions.html"><span tabindex="-1">Attractions</span></a></li><li role="presentation" class="hidden-sm active"><a role="menuitem" tabindex="0" href="/contact-us.html"><span tabindex="-1">Contact Us</span></a></li><li role="presentation" class="hidden-sm hidden-md "><a role="menuitem" tabindex="0" href="/about-us.html"><span tabindex="-1">Us | Policies</span></a></li><li class="dropdown hidden-xs hidden-lg"><a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button"><div class="bar-top"></div><div class="bar"></div><div class="bar-btm"></div></a><ul class="dropdown-menu"><li role="presentation" class=" hidden-sm hidden-md hidden-lg "><a role="menuitem" tabindex="0" href="/rooms.html"><span tabindex="-1">ROOMS</span></a></li><li role="presentation" class=" hidden-sm hidden-md hidden-lg "><a role="menuitem" tabindex="0" href="/gallery.html"><span tabindex="-1">Gallery</span></a></li><li role="presentation" class=" hidden-sm hidden-md hidden-lg "><a role="menuitem" tabindex="0" href="/cafesaudade.html"><span tabindex="-1">Café Saudade</span></a></li><li role="presentation" class=" hidden-md hidden-lg "><a role="menuitem" tabindex="0" href="/attractions.html"><span tabindex="-1">Attractions</span></a></li><li role="presentation" class=" hidden-md hidden-lg active"><a role="menuitem" tabindex="0" href="/contact-us.html"><span tabindex="-1">Contact Us</span></a></li><li role="presentation" class=" hidden-lg "><a role="menuitem" tabindex="0" href="/about-us.html"><span tabindex="-1">Us | Policies</span></a></li></ul></li></ul></div></div></div></div></nav></div><div class="mobile-branding navbar hidden-sm hidden-md hidden-lg "><a class="" href="/"><div class="logo"><span class="logo-helper"></span><img class="logo-img" src="//webbox.imgix.net/images/mucvbwdzvlxqacwr/5a586099-0870-43a1-b62d-ba471e65623a.jpg?auto=format,compress&amp;fit=crop&amp;h=40" alt="Chalet Saudade | Vintage GuestHouse"></div></a></div><div id="content-wrap"><div id="content"><div class="standard-page contact-us-page"><div class="page-header"><div class="container"><h1>Contact Us</h1></div></div><div class="contact-us-page"><div class="container"><div class="info-panel"><div class="row"><div class="col-xs-12 col-md-6"><h2 class="hotel-name">Chalet Saudade | Vintage GuestHouse</h2><h4>Address</h4><p><a style="color:#333" href="https://maps.google.com/?q=Chalet+Saudade+%7C+Vintage+GuestHouse+Rua Dr. Alfredo da Costa, 23, Sintra, Lisbon, 2710-524, Portugal&amp;ll=38.79931250,-9.38681250" target="_blank" rel="noopener"> Rua Dr. Alfredo da Costa, 23, Sintra, Lisbon, 2710-524, Portugal </a></p><h4>Telephone Number</h4><p><a style="color:#333" href="tel:+351210150055">+351210150055</a><br><a style="color:#333" href="tel:+351925717536">+351925717536</a><br></p><h4>Email</h4><p><a style="color:#333" href="mailto:[email protected]">[email protected]</a></p></div><div class="col-xs-12 col-md-6"><h2>Contact Us</h2>
7<div id="successPanel" class="alert alert-success hidden"><button type="button" class="close">×</button><strong>Your enquiry has been sent. Thank you!</strong></div><form id="contactUsForm" name="contactUsForm" novalidate><div class="form-group"><label for="name" class="control-label">Name</label><input type="text" class="form-control" id="name" name="name" placeholder="Your Name"></div><div class="form-group"><label for="telephoneNumber" class="control-label">Telephone Number</label><input type="text" class="form-control" id="telephoneNumber" name="telephoneNumber" placeholder="Your Telephone Number"></div><div class="form-group" id="emailPanel"><label for="email" class="control-label">Email</label><input type="email" class="form-control" id="email" name="email" placeholder="Your email"><div class="errors"><span class="help-block"></span></div></div><div class="form-group" id="messagePanel"><label for="message" class="control-label">Message</label><textarea class="form-control" id="message" name="message" cols="30" rows="5" placeholder="Your message"></textarea><div class="errors"><span class="help-block"></span></div></div><div class="form-group"><input id="submitBtn" class="btn btn-primary" type="button" value="Send enquiry"></div></form></div></div></div></div><div id="map-canvas" class="map-canvas" style="height: 400px;width: 100%"></div></div></div></div><div id="footer"><div class="footer"><div class="container"><div class="links"><div class="row"><div class="col-xs-12 col-sm-3 col-md-3"><h4 class="section-name">Chalet Saudade | Vintage GuestHouse</h4><p style="font-size: 14px; padding: 5px 0"><a href="https://maps.google.com/?q=Chalet+Saudade+%7C+Vintage+GuestHouse+Rua Dr. Alfredo da Costa, 23, Sintra, Lisbon, 2710-524, Portugal&amp;ll=38.79931250,-9.38681250" target="_blank" rel="noopener"> Rua Dr. Alfredo da Costa, 23, Sintra, Lisbon, 2710-524, Portugal </a></p></div><div class="col-xs-12 col-sm-3"></div><div class="col-xs-12 col-sm-3"></div><div class="col-xs-12 col-sm-3"><h4 class="section-name">Social Media</h4><ul class="list-unstyled social-media-links"><li><a href="https://www.livroreclamacoes.pt/inicio" target="_blank"><i class="googleplus-icon"></i><span class="social-icon"></span>Complaint Book (Livro de Reclamações) </a></li><li><a href="https://www.facebook.com/chalet.saudade" target="_blank"><i class="facebook-icon"></i><span class="social-icon"></span>Facebook </a></li><li><a href="https://www.google.pt/travel/hotels/entity/CgsI7cny6N3ZreP_ARAB?ei=ChhnXt-KLIWf7wLD4b2oDg&amp;utm_campaign=sharing&amp;utm_medium=link&amp;utm_source=htls&amp;hrf=IgNFVVIqFgoHCOQPEAgYChIHCOQPEAgYCxgBKAA" target="_blank"><i class="googleplus-icon"></i><span class="social-icon"></span>Google </a></li><li><a href="https://www.instagram.com/chaletsaudade/" target="_blank"><i class="instagram-icon"></i><span class="social-icon"></span>Instagram </a></li><li><a href="https://www.tripadvisor.pt/Hotel_Review-g189164-d5984709-Reviews-Chalet_Saudade_Vintage_Guest_House-Sintra_Sintra_Municipality_Lisbon_District_Central_.html" target="_blank"><i class="tripadvisor-icon"></i><span class="social-icon"></span>Tripadvisor </a></li></ul></div></div></div></div></div><div class="copyright"><div class="container"><div class="row"><div class="col-xs-12 col-md-3 text-center"><p><span class="fa fa-copyright"></span><span class="fa-copyright__year"></span> All rights reserved </p></div><div class="col-xs-12 col-md-6 text-center"><div class="languages"><a id="en" class="btn-lang" aria-label="English" href="/contact-us.html"><span>English</span></a><a id="pt" class="btn-lang" aria-label="Portuguese" href="/pt/contact-us.html"><span>Português</span></a></div></div><div class="col-xs-12 col-md-3 text-center "><p>Powered by <a target="_blank" href="https://www.siteminder.com/canvas">Canvas</a></p></div></div></div></div></div></div>
7<script defer>function switchLanguage(option) { window.location.href = option.value; }</script>
7<script defer>
8    document.addEventListener("DOMContentLoaded", function(event) {
9        var $modal = document.getElementById('contactModal');
10        if ($modal) {
11            document.body.appendChild($modal);
12        }
13    });
14</script>
14<script async defer>
15    window.smcv.fireWhenReady('L', function() {
16        var maps, lat, long, zoom, LeafIcon, name;
17        maps = document.querySelectorAll('.map-canvas');
18
19        lat = 38.79931250;
20        long = -9.38681250;
21        zoom = 15;
22        LeafIcon = L.Icon.extend({});
23        name = 'Chalet Saudade | Vintage GuestHouse';
24
25        for(var i=0, len = maps.length; i < len; i++) {
26            var id, map, homeIcon;
27
28            id = maps[i].id;
29            map = L.map(id).setView([lat, long], zoom);
30            homeIcon = new LeafIcon({iconUrl: 'https://webbox.imgix.net/assets/images/hotel_pin.png', iconSize: [30,51], iconAnchor: [15,51], popupAnchor:  [0, -41]});
31
32            L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
33                attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'
34            }).addTo(map);
35            L.marker([lat, long], {icon: homeIcon}).bindPopup(name).addTo(map);
36        }
37    });
38</script>
38<script type="application/javascript" defer>
39
40    (function () {
41        var form = $('#contactUsForm');
42        var successPanel = $('#successPanel');
43        var messagePanel = $('#messagePanel');
44        var emailPanel = $('#emailPanel');
45        var nameInput = $('#name');
46        var telephoneInput = $('#telephoneNumber');
47        var emailInput = $('#email');
48        var messageTextArea = $('#message');
49        var submitBtn = $('#submitBtn');
50        var type = {
51            ERROR: 'error', OK: 'ok'
52        };
53        var errorMessages = {
54            emailEmpty: "Please enter an email address",
55            emailInvalid: "Please enter a valid email",
56            messageEmpty: "Please enter a message"
57        };
58
59        function handleErrors(panel, message, t) {
60            switch (t) {
61                case type.ERROR:
62                    panel.addClass('has-error');
63                    panel.find(".errors span").text(message);
64                    return false;
65                    break;
66                case type.OK:
67                    panel.removeClass('has-error');
68                    message = '';
69                    panel.find(".errors span").text(message);
70                    return true;
71                    break;
72                default:
73                    console.log('no type');
74            }
75            return false;
76        }
77
78        function validateEmail() {
79            var emailValidation = {message: '', type: type.OK};
80            if (emailInput.val() === '') {
81                emailValidation.message = errorMessages.emailEmpty;
82                emailValidation.type = type.ERROR;
83            } else if (emailInput.val() && !isEmail(emailInput.val())) {
84                emailValidation.message = errorMessages.emailInvalid;
85                emailValidation.type = type.ERROR;
86            }
87            return handleErrors(emailPanel, emailValidation.message, emailValidation.type);
88        }
89
90        function validateMessage() {
91            var messageValidation = {message: '', type: type.OK};
92            if (messageTextArea.val() === '') {
93                messageValidation.message = errorMessages.messageEmpty;
94                messageValidation.type = type.ERROR;
95            }
96            return handleErrors(messagePanel, messageValidation.message, messageValidation.type);
97        }
98
99        function isEmail(email) {
100            var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/;
101            return regex.test(email);
102        }
103
104        function getContactEndpoint() {
105            return "https://canvas.siteminder.com/contactHotel/mucvbwdzvlxqacwr/?callback=?";
106        }
107
108        function getContactRequestBody() {
109            return JSON.stringify({
110                name: nameInput.val() ? nameInput.val() : '',
111                message: messageTextArea.val() ? messageTextArea.val() : '',
112                telephoneNumber: telephoneInput.val() ? telephoneInput.val() : '',
113                email: emailInput.val() ? emailInput.val() : ''
114            });
115        }
116
117        function showForm() {
118            successPanel.addClass('hidden');
119            form.removeClass('hidden');
120        }
121
122        function validateForm() {
123            var formErrors = {
124                email: validateEmail(),
125                message: validateMessage()
126            };
127            return formErrors.email && formErrors.message;
128        }
129
130        emailInput.on('input', function () {
131            validateEmail();
132        });
133        messageTextArea.on('input', function () {
134            validateMessage();
135        });
136        successPanel.find('button').on('click', function () {
137            showForm();
138        });
139        submitBtn.on('click', function () {
140            if (validateForm()) {
141                $.ajax({
142                    url: getContactEndpoint(),
143                    contentType: "application/json;charset=utf-8",
144                    type: "POST",
145                    data: getContactRequestBody(),
146                    success: function (result) {
147                        form.addClass('hidden');
148                        successPanel.removeClass('hidden');
149                        form.find("input[type=text],input[type=email],textarea").val("");
150                        setTimeout(function () {
151                            showForm();
152                        }, 5000)
153                    }
154                });
155            }
156        });
157    })();
158</script>
158<script type="application/javascript" defer>
159    (function () {
160        var languageBtns = [].slice.call(document.querySelectorAll(".btn-lang"));
161        if (!!languageBtns.length) {
162            
163            var lang = document.getElementById('en');
164            var match = window.location.pathname.match("/(.+?)/");
165            if (!!match && match.length > 1 && document.getElementById(match[1])) {
166                lang = document.getElementById(window.location.pathname.match("/(.+?)/")[1]);
167            }
168            lang.classList.add("active");
169            
170            var minSize = getComputedStyle(languageBtns[0])['min-width'];
171            var maxSize = Math.max.apply(Math, languageBtns.map(function (btn) {
172                return btn.clientWidth;
173            }));
174            if (maxSize > minSize) {
175                languageBtns.style.minWidth = maxSize;
176            }
177        }
178    })();
179</script>
179<script type="application/javascript" defer>
180    document.querySelector('.fa-copyright__year').textContent = new Date().getFullYear()
181</script>
181<script defer>
182    window.isPublish = true
183</script>
183<script type="application/javascript" defer>
184
185    $(window).scroll(function() {
186        var scroll = $(window).scrollTop();
187
188        if (scroll < 20) {
189            $("body").removeClass("scrolling");
190        }
191
192        if (scroll >= 20) {
193            $("body").addClass("scrolling");
194        }
195    });
196
197</script>
197</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.