PageSourceSearch

https://www.jf-alhadas.pt/error/404

html jf-alhadas.pt collected 2026-10-06 13:17:07 UTC 10,349 bytes, 376 lines download raw bytes

1<!DOCTYPE html>
2<html lang="pt-pt">
3  <head>
4	<meta charset="utf-8"/>
5    
5<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
5
6    
6<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
6
7    <link rel="stylesheet" media="screen" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600" />
8    <link rel="stylesheet" media="screen" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css" />
9
10      
10<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.2/moment.min.js"></script>
10
11      
11<script src="https://cdn.statuspage.io/vendor/moment-timezone-with-data.js"></script>
11
12      
12<script src="https://cdn.statuspage.io/vendor/jstz.js"></script>
12
13      
13<script src="https://cdn.statuspage.io/vendor/localtimes.js"></script>
13
14	  
14<script type="text/javascript" src="/js/clientside-track_1791292627.js?int"></script>
14
15
16    <style>
17	html {
18		overflow: hidden !important;
19	}
20	
21     * {
22         -moz-box-sizing:border-box;
23         -webkit-box-sizing:border-box;
24         box-sizing:border-box;
25		 overflow: hidden;
26     }
27
28     html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre,
29     abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
30     small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
31     fieldset, form, label, legend, caption, article, aside, canvas, details, figcaption, figure,  footer, header, hgroup,
32     menu, nav, section, summary, time, mark, audio, video {
33         margin:0;
34         padding:0;
35         border:0;
36         outline:0;
37         vertical-align:baseline;
38         background:transparent;
39     }
40
41     article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
42         display: block;
43     }
44
45     html {
46         font-size: 16px;
47         line-height: 24px;
48         width:100%;
49         height:100%;
50         -webkit-text-size-adjust: 100%;
51         -ms-text-size-adjust: 100%;
52         overflow-y:scroll;
53         overflow-x:hidden;
54     }
55
56     img {
57         vertical-align:middle;
58         max-width: 100%;
59         height: auto;
60         border: 0;
61         -ms-interpolation-mode: bicubic;
62     }
63
64     body {
65         min-height:100%;
66         -webkit-font-smoothing: subpixel-antialiased;
67     }
68
69     .clearfix {
70	       clear:both;
71	       zoom: 1;
72     }
73     .clearfix:before, .clearfix:after {
74         content: "\0020";
75         display: block;
76         height: 0;
77         visibility: hidden;
78     } 
79     .clearfix:after {
80         clear: both;
81     }
82    </style>
83    <style>
84  .plain.error-page-wrapper {
85    font-family: 'Source Sans Pro', sans-serif;
86    background-color:#6355bc;
87    padding:0 5%;
88    position:relative;
89  }
90
91  .plain.error-page-wrapper .content-container {
92    -webkit-transition: left .5s ease-out, opacity .5s ease-out;
93    -moz-transition: left .5s ease-out, opacity .5s ease-out;
94    -ms-transition: left .5s ease-out, opacity .5s ease-out;
95    -o-transition: left .5s ease-out, opacity .5s ease-out;
96    transition: left .5s ease-out, opacity .5s ease-out;
97    max-width:400px;
98    position:relative;
99    left:-30px;
100    opacity:0;
101  }
102
103  .plain.error-page-wrapper .content-container.in {
104    left: 0px;
105    opacity:1;
106  }
107
108  .plain.error-page-wrapper .head-line {
109    transition: color .2s linear;
110    font-size:48px;
111    line-height:60px;
112    color:rgba(255,255,255,.2);
113    letter-spacing: -1px;
114    margin-bottom: 5px;
115  }
116  .plain.error-page-wrapper .subheader {
117    transition: color .2s linear;
118    font-size: 26px;
119	line-height: 30px;
120    color:#fff;
121  }
122  .plain.error-page-wrapper hr {
123    height:1px;
124    background-color: rgba(255,255,255,.2);
125    border:none;
126    width:250px;
127    margin:35px 0;
128  }
129  .plain.error-page-wrapper .context {
130    transition: color .2s linear;
131    font-size:18px;
132    line-height:27px;
133    color:#fff;
134  }
135  .plain.error-page-wrapper .context p {
136    margin:0;
137  }
138  .plain.error-page-wrapper .context p:nth-child(n+2) {
139    margin-top:12px;
140  }
141  .plain.error-page-wrapper .buttons-container {
142    margin-top: 45px;
143    overflow: hidden;
144  }
145  .plain.error-page-wrapper .buttons-container a {
146    transition: color .2s linear, border-color .2s linear;
147    font-size:14px;
148    text-transform: uppercase;
149    text-decoration: none;
150    color:#fff;
151    border:2px solid white;
152    border-radius: 99px;
153    padding:8px 30px 9px;
154    display: inline-block;
155    float:left;
156  }
157  .plain.error-page-wrapper .buttons-container a:hover {
158    background-color:rgba(255,255,255,.05);
159  }
160  .plain.error-page-wrapper .buttons-container a:first-child {
161    margin-right:25px;
162  }
163
164  @media screen and (max-width: 485px) {
165    .plain.error-page-wrapper .header {
166      font-size:36px;
167     }
168    .plain.error-page-wrapper .subheader {
169      font-size:27px;
170      line-height:38px;
171     }
172    .plain.error-page-wrapper hr {
173      width:185px;
174      margin:25px 0;
175     }
176
177    .plain.error-page-wrapper .context {
178      font-size:16px;
179      line-height: 24px;
180     }
181    .plain.error-page-wrapper .buttons-container {
182      margin-top:35px;
183    }
184
185    .plain.error-page-wrapper .buttons-container a {
186      font-size:13px;
187      padding:8px 0 7px;
188      width:45%;
189      text-align: center;
190    }
191    .plain.error-page-wrapper .buttons-container a:first-child {
192      margin-right:10%;
193    }
194  }
195</style>
196
197    <style>
198
199    .background-color {
200      background-color: rgba(71, 207, 105, 1) !important;
201    }
202
203
204    .primary-text-color {
205      color: #FFFFFF !important;
206    }
207
208    .secondary-text-color {
209      color: rgba(192, 240, 204, 1) !important;
210    }
211
212    .sign-text-color {
213      color: #FFBA00 !important;
214    }
215
216    .sign-frame-color {
217      color: #343C3F;
218    }
219
220    .pane {
221      background-color: #FFFFFF !important;
222    }
223
224    .border-button {
225      color: #FFFFFF !important;
226      border-color: #FFFFFF !important;
227    }
228    .button {
229      background-color: #FFFFFF !important;
230      color:  !important;
231    }
232
233
234</style>
235
236  </head>
237  <body class="plain error-page-wrapper background-color background-image" data-errorpage="true" data-errorcode="404">
238  
238<script>
239  const EPage = true;
240  const ECode = "404";
241  </script>
241
242    <div class="content-container">
243  <div class="head-line secondary-text-color">
244    404  </div>
245  <div class="subheader primary-text-color">
246    A página solicitada<br />
247não foi encontrada<br />
248ou já não existe.	  </div>
249  <hr>
250  <div class="clearfix"></div>
251  <div class="context primary-text-color">
252    
253    <p>Pedimos desculpas pelo ocorrido.<br />
254Se for erro nosso, reporte:<br />
255<i>[email protected]</i></p>
256
257  </div>
258</div>
259
260
261    
261<script>
262     function ErrorPage(container, pageType, templateName) {
263       this.$container = $(container);
264       this.$contentContainer = this.$container.find(templateName == 'sign' ? '.sign-container' : '.content-container');
265       this.pageType = pageType;
266       this.templateName = templateName;
267     }
268
269     ErrorPage.prototype.centerContent = function () {
270       var containerHeight = this.$container.outerHeight()
271         , contentContainerHeight = this.$contentContainer.outerHeight()
272         , top = (containerHeight - contentContainerHeight) / 2
273         , offset = this.templateName == 'sign' ? -100 : 0;
274
275       this.$contentContainer.css('top', top + offset);
276     };
277
278     ErrorPage.prototype.initialize = function () {
279       var self = this;
280
281       this.centerContent();
282       this.$container.on('resize', function (e) {
283         e.preventDefault();
284         e.stopPropagation();
285         self.centerContent();
286       });
287
288       // fades in content on the plain template
289       if (this.templateName == 'plain') {
290         window.setTimeout(function () {
291           self.$contentContainer.addClass('in');
292         }, 500);
293       }
294
295       // swings sign in on the sign template
296       if (this.templateName == 'sign') {
297         $('.sign-container').animate({textIndent : 0}, {
298           step : function (now) {
299             $(this).css({
300               transform : 'rotate(' + now + 'deg)',
301               'transform-origin' : 'top center'
302             });
303           },
304           duration : 1000,
305           easing : 'easeOutBounce'
306         });
307       }
308     };
309
310
311     ErrorPage.prototype.createTimeRangeTag = function(start, end) {
312       return (
313         '<time utime=' + start + ' simple_format="MMM DD, YYYY HH:mm">' + start + '</time> - <time utime=' + end + ' simple_format="MMM DD, YYYY HH:mm">' + end + '</time>.'
314       )
315     };
316
317
318     ErrorPage.prototype.handleStatusFetchSuccess = function (pageType, data) {
319       if (pageType == '503') {
320         $('#replace-with-fetched-data').html(data.status.description);
321       } else {
322         if (!!data.scheduled_maintenances.length) {
323           var maint = data.scheduled_maintenances[0];
324           $('#replace-with-fetched-data').html(this.createTimeRangeTag(maint.scheduled_for, maint.scheduled_until));
325           $.fn.localizeTime();
326         }
327         else {
328           $('#replace-with-fetched-data').html('<em>(there are no active scheduled maintenances)</em>');
329         }
330       }
331     };
332
333
334     ErrorPage.prototype.handleStatusFetchFail = function (pageType) {
335       $('#replace-with-fetched-data').html('<em>(enter a valid Statuspage url)</em>');
336     };
337
338
339     ErrorPage.prototype.fetchStatus = function (pageUrl, pageType) {
340       //console.log('in app.js fetch');
341       if (!pageUrl || !pageType || pageType == '404') return;
342
343       var url = ''
344         , self = this;
345
346       if (pageType == '503') {
347         url = pageUrl + '/api/v2/status.json';
348       }
349       else {
350         url = pageUrl + '/api/v2/scheduled-maintenances/active.json';
351       }
352
353       $.ajax({
354         type : "GET",
355         url : url,
356       }).success(function (data, status) {
357         //console.log('success');
358         self.handleStatusFetchSuccess(pageType, data);
359       }).fail(function (xhr, msg) {
360         //console.log('fail');
361         self.handleStatusFetchFail(pageType);
362       });
363
364     };
365     var ep = new ErrorPage('body', "maintenance", "plain");
366     ep.initialize();
367
368     // hack to make sure content stays centered >_<
369     $(window).on('resize', function() {
370       $('body').trigger('resize')
371     });
372
373    </script>
373
374
375  </body>
376</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.