PageSourceSearch

https://easyticket.pt/

html easyticket.pt collected 2026-10-06 07:19:24 UTC 17,013 bytes, 277 lines download raw bytes

1<html lang="pt" class="ng-scope">
2    <head>
3        <base href="/">
4        <meta charset="utf-8" />
5        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
6        <!-- Cache-Control via meta como "cinto + suspensórios" (backup ao header
7             nginx). Impede que browsers cachem o index.html localmente — se o
8             header HTTP falhar (ex.: proxies intermédios, in-app browsers do
9             Instagram/Facebook), isto ainda ajuda a forçar revalidação. -->
10        <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
11        <meta http-equiv="Pragma" content="no-cache" />
12        <meta http-equiv="Expires" content="0" />
13        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" />
14        <title>EasyTicket — Plataforma de Gestão de Eventos</title>
15        <meta name="description" content="A EasyTicket é uma plataforma completa de gestão de eventos: bilhética, lugares, credenciação, operação e gestão de pessoas." />
16        <meta property="og:type" content="website" />
17        <meta property="og:title" content="EasyTicket — Plataforma de Gestão de Eventos" />
18        <meta property="og:description" content="Plataforma completa de gestão de eventos: bilhética, lugares, credenciação, operação e gestão de pessoas." />
19        <meta property="twitter:card" content="summary_large_image" />
20        <meta property="twitter:title" content="EasyTicket — Plataforma de Gestão de Eventos" />
21        <meta property="twitter:description" content="Plataforma completa de gestão de eventos: bilhética, lugares, credenciação, operação e gestão de pessoas." />
22
23        <link rel="stylesheet" href="css/angular-spinkit.min.css" />        
24        <link rel="stylesheet" href="css/animate.min.css"/>
25        <link rel="stylesheet" href="css/textAngular.css"/>
26        <link rel="stylesheet" href="css/angular-material.min.css"/>     
27        <link rel="stylesheet" href="css/owfont-regular.min.css"/>     
28        <link rel="stylesheet" href="css/rm-datepicker.css"/>
29        <link rel="stylesheet" href="css/md-data-table.css"/>
30        <link rel="stylesheet" href="css/slick.css" />
31        <link rel="stylesheet" href="css/slick-theme.css">
32        <link href="https://fonts.googleapis.com/css?family=Dosis:300,400,500,600,700" rel="stylesheet">
33        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/quill/1.3.4/quill.snow.css" />
34        <link rel="stylesheet" href="css/mdColorPicker.css">
35        <!-- OpenStreetMap / Leaflet (mapa de eventos) -->
36        <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/leaflet.css" crossorigin="anonymous">
37
38    
39        
40        
40<script src="js/jquery-2.1.4.min.js"></script>
40
41        
41<script src="js/slick.min.js"></script>
41
42        
42<script src="js/angular/angular.min.js"></script>
42
43        
43<script src="js/angular/angular-ui-router.min.js"></script>
43
44        
44<script src="js/sweetalert.min.js"></script>
44
45        
45<script src="js/ng-long-press-min.js"></script>
45
46        
46<script>
47            // Web-safe: only load cordova.js when running inside Cordova (file:// or known UA).
48            // On Apache with SPA rewrites, requesting /cordova.js returns HTML and breaks parsing.
49            (function () {
50                try {
51                    var ua = (navigator.userAgent || '');
52                    var isCordovaEnv = (location.protocol === 'file:' || location.protocol === 'cdvfile:' ||
53                        /Cordova|cordova|PhoneGap|Ionic/i.test(ua));
54                    if (!isCordovaEnv) return;
55                    var s = document.createElement('script');
56                    s.setAttribute('type', 'text/javascript');
57                    s.setAttribute('charset', 'utf-8');
58                    s.src = 'cordova.js';
59                    document.head.appendChild(s);
60                } catch (e) {}
61            })();
62        </script>
62
63        
63<script src="js/tinycolor.js"></script>
63 
64        
64<script src="js/mdColorPicker.js"></script>
64
65    </head>
66    
66<script>
67        angular.element(document).ready(function () {
68            // In browser, cordova.js is absent. We still want the app to run without crashes
69            // from plugin calls (analytics, brightness, StatusBar, etc.).
70            var isRealCordova = !!(window.cordova && window.cordova.require);
71            if (!isRealCordova) {
72                // IMPORTANT: do NOT set cordova.require in browser, or we would wait for deviceready.
73                window.cordova = window.cordova || {};
74                window.cordova.plugins = window.cordova.plugins || {};
75                window.cordova.plugins.firebase = window.cordova.plugins.firebase || {};
76                window.cordova.plugins.firebase.analytics = window.cordova.plugins.firebase.analytics || {
77                    setCurrentScreen: function () {}
78                };
79                window.cordova.plugins.brightness = window.cordova.plugins.brightness || {
80                    setBrightness: function () {},
81                    getBrightness: function (cb) { if (cb) { cb(1); } },
82                    setKeepScreenOn: function () {}
83                };
84                window.StatusBar = window.StatusBar || {
85                    backgroundColorByHexString: function () {},
86                    hide: function () {},
87                    show: function () {}
88                };
89            }
90
91            if (isRealCordova) {
92                console.log("Running in Cordova, will bootstrap AngularJS once 'deviceready' event fires.");
93                document.addEventListener('deviceready', function () {
94                    console.log("Deviceready event has fired, bootstrapping AngularJS.");
95                    angular.bootstrap(document.body, ['app']);
96                    window.ET_ANGULAR_BOOTSTRAPPED = true;
97                }, false);
98            } else {
99                console.log("Running in browser, bootstrapping AngularJS now.");
100                angular.bootstrap(document.body, ['app']);
101                window.ET_ANGULAR_BOOTSTRAPPED = true;
102            }
103        });
104    </script>
104
105    <body ng-cloak ng-controller="AppController" style="height: 100%;" class="ng-scope">
106        <!-- Fail-safe para utilizadores com index.html antigo em cache cujo
107             bootstrap do Angular possa estar a falhar. Se, passados 15s, ainda
108             não vemos sinal de a app ter arrancado, mostramos um overlay com a
109             opção de forçar atualização (limpa caches, unregistra SW e faz
110             reload hard). Isto é CRÍTICO para os ~20% de utilizadores que
111             continuam a servir JS velho (vistos no access log). -->
112        <div id="et_boot_failsafe" style="display:none;position:fixed;inset:0;background:#fff;z-index:999999;padding:40px 20px;text-align:center;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;">
113            <div style="max-width:480px;margin:60px auto;">
114                <div style="font-size:48px;margin-bottom:16px;">⚠️</div>
115                <h2 style="margin:0 0 12px;font-size:20px;color:#111;">A página está a demorar a abrir</h2>
116                <p style="color:#555;margin:0 0 20px;line-height:1.5;">Pode estar a usar uma versão desatualizada guardada no teu telemóvel. Carrega no botão abaixo para forçar a atualização.</p>
117                <button id="et_boot_failsafe_btn" style="background:#8ed974;color:#111;border:none;padding:14px 24px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;">Forçar atualização</button>
118                <p style="color:#999;margin:16px 0 0;font-size:12px;">Se continuar a não abrir, fecha e reabre a app/browser.</p>
119            </div>
120        </div>
121        
121<script>
122            window.ET_APP_BUILD = '20260906podio14';
123            (function () {
124                var failsafeShown = false;
125                var disableBootFailsafe = /^\/submissao\/|^\/submisao\/|^\/rever\/|\/podio\/?|\/classificacoes\/?|\/premios\/?|\/selecao\/?/.test(window.location.pathname || '');
126                function clearVolatileClientState() {
127                    try {
128                        if (window.localStorage) {
129                            [
130                                'cart',
131                                'redirect',
132                                'redirectparams',
133                                'authTabsPref'
134                            ].forEach(function (k) { try { localStorage.removeItem(k); } catch (e) {} });
135                        }
136                    } catch (e) {}
137                    try {
138                        if (window.sessionStorage) sessionStorage.clear();
139                    } catch (e) {}
140                    try {
141                        if (window.caches && caches.keys) {
142                            caches.keys().then(function (keys) {
143                                keys.forEach(function (k) { try { caches.delete(k); } catch (e) {} });
144                            });
145                        }
146                    } catch (e) {}
147                }
148                try {
149                    var currentBuild = window.ET_APP_BUILD || '';
150                    var previousBuild = window.localStorage ? localStorage.getItem('et_app_build') : currentBuild;
151                    if (window.localStorage && currentBuild && previousBuild !== currentBuild) {
152                        localStorage.setItem('et_app_build', currentBuild);
153                        clearVolatileClientState();
154                        if (previousBuild) {
155                            var buildUrl = new URL(location.href);
156                            if (buildUrl.searchParams.get('_build') !== currentBuild) {
157                                buildUrl.searchParams.set('_build', currentBuild);
158                                location.replace(buildUrl.toString());
159                            }
160                        }
161                    }
162                } catch (e) {}
163                function showFailsafe() {
164                    if (disableBootFailsafe) return;
165                    try {
166                        if (window.ET_ANGULAR_BOOTSTRAPPED) return;
167                        if (window.angular && angular.element && angular.element(document.body).injector()) return;
168                    } catch (eBoot) {}
169                    if (failsafeShown) return;
170                    failsafeShown = true;
171                    var el = document.getElementById('et_boot_failsafe');
172                    if (el) el.style.display = 'block';
173                }
174                function hideFailsafeIfBooted() {
175                    try {
176                        if (!window.ET_ANGULAR_BOOTSTRAPPED && !(window.angular && angular.element && angular.element(document.body).injector())) return;
177                        var el = document.getElementById('et_boot_failsafe');
178                        if (el) el.style.display = 'none';
179                        failsafeShown = false;
180                    } catch (eHide) {}
181                }
182                function hardReload() {
183                    try {
184                        if (window.localStorage) {
185                            var keepDark = localStorage.getItem('darkMode');
186                            var keepLang = localStorage.getItem('lang');
187                            localStorage.clear();
188                            if (keepDark !== null) localStorage.setItem('darkMode', keepDark);
189                            if (keepLang !== null) localStorage.setItem('lang', keepLang);
190                        }
191                    } catch (e) {}
192                    clearVolatileClientState();
193                    try {
194                        if ('serviceWorker' in navigator && navigator.serviceWorker.getRegistrations) {
195                            navigator.serviceWorker.getRegistrations().then(function (regs) {
196                                regs.forEach(function (r) { try { r.unregister(); } catch (e) {} });
197                            });
198                        }
199                    } catch (e) {}
200                    // Query string única para contornar cache do proxy/browser
201                    try {
202                        var u = new URL(location.href);
203                        u.searchParams.set('_r', Date.now());
204                        location.replace(u.toString());
205                    } catch (e) {
206                        try { location.reload(true); } catch (e2) { location.reload(); }
207                    }
208                }
209                var btn = document.getElementById('et_boot_failsafe_btn');
210                if (btn) btn.addEventListener('click', hardReload);
211                // Se ao fim de 15s ainda não há conteúdo renderizado no <ui-view>,
212                // assume-se que o bootstrap falhou e mostra-se o fail-safe.
213                setTimeout(function () {
214                    if (disableBootFailsafe) return;
215                    try {
216                        var view = document.querySelector('ui-view');
217                        // "Renderizou" = tem filhos não-vazios além do próprio comentário do ui-view.
218                        var rendered = view && view.children && view.children.length > 0;
219                        // Se o Angular não bootstrapped, também não tem a classe ng-scope no body do evento real
220                        if (!rendered && !window.ET_ANGULAR_BOOTSTRAPPED) showFailsafe();
221                    } catch (e) { showFailsafe(); }
222                }, 15000);
223                setTimeout(hideFailsafeIfBooted, 15100);
224                setTimeout(hideFailsafeIfBooted, 18000);
225            })();
226        </script>
226
227        <div>
228            <ui-view class="ui_view_mob"></ui-view>
229        </div>
230    
230<script src="template/mundial_tiro/i18n.js?v=20260901clf10"></script>
230
231    
231<script src="template/mundial_tiro/formulario_i18n.js?v=20260827lic3"></script>
231
232        
232<script src="js/et-oauth-ui.js?v=20260915sso3"></script>
232
233        
233<script src="js/app.js?v=20260924login"></script>
233
234    
234<script src="js/controllers.js?v=20260924login2"></script>
234
235        
235<script src="js/services.js?v=20260419a"></script>
235
236        
236<script src="js/filters.js?v=20260419a"></script>
236
237        
237<script src="js/directives.js?v=20260830pg1"></script>
237
238        
238<script src="js/ng-pinch-zoom.js"></script>
238
239        
239<script src="js/angular/angular-slick.min.js"></script>
239
240        
240<script src="js/angular/deviceGyroscope.js"></script>
240
241        
241<script src="js/angular/angular-material.min.js"></script>
241
242        
242<script src="js/angular/angular-aria.js"></script>
242
243        
243<script src="js/angular/ui-load.js"></script>
243        
244        
244<script src="js/angular/textAngular-rangy.min.js"></script>
244
245        
245<script src="js/angular/textAngular-sanitize.min.js"></script>
245
246        
246<script src="js/angular/textAngular.min.js"></script>
246
247        
247<script src="js/angular/angular-animate.min.js"></script>
247
248        
248<script src="js/angular/angular-resource.min.js"></script>
248
249        
249<script src="js/angular/masks.js"></script>
249
250        
250<script src="js/angular/angular-spinkit.min.js"></script>
250
251        
251<script src="js/angular/ng-cordova.min.js"></script>
251
252        
252<script src="js/angular/angular-translate.min.js"></script>
252
253        
253<script src="js/angular/angular-translate-loader-static-files.min.js"></script>
253
254        
254<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-translate-handler-log/1.1.0/angular-translate-handler-log.min.js" integrity="sha512-NMiA1pbUd9x8tUeY/GkD84Dz2eSqjguTW+pWEWRhcTW3ncqNVwoHyZ5C2f5OvBqRnBxDY5sJaALnzOKoWZxVYA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
254
255        
255<script src="js/angular/angular-sanitize.js"></script>
255
256        
256<script src="js/angular/angular-messages.js"></script>
256
257        
257<script src="js/angular/ng-map.min.js"></script>
257
258        
258<script src="https://unpkg.com/[email protected]/dist/leaflet.js" crossorigin="anonymous"></script>
258
259        
259<script src="js/angular/ng-file-upload-shim.min.js"></script>
259 
260        
260<script src="js/angular/ng-file-upload.min.js"></script>
260
261        
261<script src="js/angular/satellizer.min.js"></script>
261 
262        
262<script src="js/humanize-duration.js"></script>
262   
263        
263<script src="js/moment-with-locales.min.js"></script>
263
264        
264<script src="js/angular-moment.min.js"></script>
264
265        
265<script src="js/angular/angular-timer.min.js"></script>
265
266        
266<script src="js/angular/angular-locale_pt-pt.js"></script>
266
267        
267<script src="js/angular/rm-datepicker.js"></script>
267
268        
268<script src="js/socket.io.min.js"></script>
268
269        
269<script src="js/angular/socket.js"></script>
269
270        
270<script src="js/all.min.js"></script>
270
271        
271<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/signature_pad.umd.min.js"></script>
271
272        
272<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-i18n/1.6.10/angular-locale_pt-pt.min.js"></script>
272
273        
273<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
273
274        
274<script src="https://cdn.jsdelivr.net/npm/chartjs-plugin-datalabels"></script>
274
275
276    </body>
277</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.