Help
RSS
API
Feed
Maltego
Contact
Domain > apply.firstrate.ie
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2025-01-25
52.48.156.4
(
ClassC
)
2026-01-24
34.249.11.71
(
ClassC
)
Port 80
HTTP/1.1 301 Moved PermanentlyServer: awselb/2.0Date: Sat, 24 Jan 2026 07:18:08 GMTContent-Type: text/htmlContent-Length: 134Connection: keep-aliveLocation: https://apply.firstrate.ie:443/ html>head>title>301 Moved Permanently/title>/head>body>center>h1>301 Moved Permanently/h1>/center>/body>/html>
Port 443
HTTP/1.1 200 OKDate: Sat, 24 Jan 2026 07:18:08 GMTContent-Type: text/html; charsetUTF-8Transfer-Encoding: chunkedConnection: keep-aliveServer: Apache/2.4.58 (Ubuntu)Cache-Control: no-cache, privateVary: X-Inertia,Accept-EncodingReferrer-Policy: no-referrer-when-downgradeX-Content-Type-Options: nosniffX-XSS-Protection: 1; modeblockStrict-Transport-Security: max-age31536000; includeSubDomainsPermissions-Policy: geolocation(self)Set-Cookie: XSRF-TOKENeyJpdiI6Iko0SWRYa291SUVPTmx6U3N0UVYyeGc9PSIsInZhbHVlIjoiUFhXMnRrcjhHeDN6OCt1emo0aGZ2MG81MnB0eC81azB2M25pL2lBam54QXNWL0N4aHVIUEpOcGZtQ1gvTHNKVXpEemdpbjBvWG1OY05pNmhpNmViTDJnKzYzSWFjSlRtNzc4S1JudmhleStZVmltb01PYzN2ajA2UEkzdjBaeUkiLCJtYWMiOiJiYjI0OGU2NTAyZTFhZjlkYjY3YjZjOWE3ZDQ0ZDk1MjA2MTdlZGZmMTU3YmExMjc4ZTcxZGRmNWY3OWViNzYxIiwidGFnIjoiIn0%3D; expiresSat, 24-Jan-2026 09:18:08 GMT; Max-Age7200; path/Set-Cookie: laravel_sessioneyJpdiI6ImVKNUY2TnlKdVVGZ3FKQ2txODZlWVE9PSIsInZhbHVlIjoiZ1NFMWF4NFlsb3JZeDZ3VnZoYlBnWElFYzNLNS9LazUzRDRNNVVJZnBXTTl4c3F2NHkxRlptRzJwUGlpSGxDMlc0NktlQlJDVEtSQVZtYzhpWlllcmdWVzZoOHZFM1g3ZE5VV1NZeSswOE9HTTlablRaU3NYZzhENDlSOFpNWUgiLCJtYWMiOiIyMGY2YjU5ZThiOWI2MDMzMGZkZWJjZTM0ZjcyYWU3ZWRlOWE2ZmMwN2FkNDRhMzBlMWMyNTUwNTJmNDkzNjIwIiwidGFnIjoiIn0%3D; expiresSat, 24-Jan-2026 09:18:08 GMT; Max-Age7200; path/; httponly !DOCTYPE html>html langen> !-- Version: v3.6.6 --> head> meta charsetutf-8 /> meta nameviewport contentwidthdevice-width, initial-scale1.0, viewport-fitcover> meta http-equivX-UA-Compatible contentIEedge,chrome1 /> meta namecsrf-token contentWGIhClPb6W5hlcfeQZOI4d9u5CfL6KtxXMAnaNsc> meta namegoogle-signin-client_id content178826994488-jrsjr969ld370f78vffbujci6dr7q7bv.apps.googleusercontent.com> meta namegoogle-site-verification contentBykML20kgWxp0JviBHT6ty_hm85bzcmVF_dNykxGyb0 /> !-- Global site tag (gtag.js) - Google Analytics --> title>First Rate | Mortgage Wizard/title> !-- link relapple-touch-icon sizes76x76 hrefhttps://apply.firstrate.ie/material/img/apple-icon.png> --> !-- link relicon typeimage/png hrefhttps://apply.firstrate.ie/material/img/favicon.png> --> link relshortcut icon hrefhttps://apply.firstrate.ie/theme/firstrate/img/favicon.ico typeimage/x-icon> link relicon hrefhttps://apply.firstrate.ie/theme/firstrate/img/favicon.ico typeimage/x-icon> meta contentwidthdevice-width, initial-scale1.0, maximum-scale1.0, user-scalable0, shrink-to-fitno nameviewport /> !-- Fonts and icons --> link href/yes-theme/vendor/fontawesome-free/css/all.min.css relstylesheet typetext/css> link relstylesheet typetext/css hrefhttps://fonts.googleapis.com/css?familyRoboto:300,400,500,700|Roboto+Slab:400,700|Material+Icons /> !-- CSS Files --> link hrefhttps://apply.firstrate.ie/theme/firstrate/css/dashboard.css?v2.1.1 relstylesheet /> link relstylesheet hrefhttps://cdnjs.cloudflare.com/ajax/libs/tempusdominus-bootstrap-4/5.0.1/css/tempusdominus-bootstrap-4.min.css /> link hrefhttps://apply.firstrate.ie/css/admin/style.css?v1 relstylesheet /> style> /* Wizard Hr for OR*/ .hr-text-for-or { line-height: 1em; position: relative; outline: 0; border: 0; color: black; text-align: center; height: 1.5em; opacity: .5; } .hr-text-for-or:before { content: ; background: linear-gradient(to right, transparent, #818078, transparent); position: absolute; left: 0; top: 50%; width: 100%; height: 1px; } .hr-text-for-or:after { content: attr(data-content); position: relative; display: inline-block; color: black; padding: 0 .5em; line-height: 1.5em; color: #818078; background-color: #fcfcfa; } .fab-container { position: fixed; bottom: 80px; right: 15px; z-index: 9999; } .fab { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; background-color: #f9b639; border-radius: 12px; border: none; cursor: pointer; transition: all 0.3s ease-out; } .fab:hover { background-color: #cc8e16; } .fab:focus { outline: none; } .fab i { color: #fff; font-size: 24px; } /* Privacy policy section responsive styles */ .privacy-box { padding: 10px 5px; } .privacy-text { word-wrap: break-word; font-size: 11px; display: block; line-height: 1.3; } .privacy-link { white-space: nowrap; } /* Extra small devices (phones smaller than 375px) */ @media only screen and (max-width: 375px) { .privacy-text { font-size: 10px; } .privacy-box { padding: 5px 2px; } } /* iPhone 5 fix */ @media only screen and (min-device-width: 569px) { .switch-calc-container{ height:100vh; } } .logo { max-height: 80px; max-width: 200px; } @media only screen and (max-width: 768px) { .card.card-floating { border-top-right-radius: 0; border-top-left-radius: 0; } /* force padding on mobile to nothing */ .card.floating-container .card-body { padding: 0; } .card.floating-container .card-body .form-container { padding: 0 40px 0 20px; } .card.card-floating { padding: 10px; margin: 0; margin-top: 20px; } } @media only screen and (min-width: 769px) { .card.floating-container { min-height: 400px; } .card.floating-container { max-height: 510px; } .card.card-floating { margin-top: -50px; min-height: 530px; } } .label-value { font-size: 15px; color: black; } .tc-text { font-size: 10px; } .warning-align-below{ width: inherit; text-align: center !important; } .alert-popup { z-index: 100; background: #178bbe; color: #fff; font-size: 15px; font-weight: 400; display: flex; justify-content: center; align-items: center; position: fixed; left: 50%; transform: translate(-50%); max-width: 400px; top: 10px; } .alert-popup .icon { text-align: center; display: table-cell; vertical-align: middle; width: 10%; } .alert-popup .inner { display: table-cell; width: 80%; padding: 10px; } .alert-popup .close-b { cursor: pointer; text-align: center; display: table-cell; width: 10%; vertical-align: middle; position: absolute; right: 0; top: 5px; } /* Extra small devices (phones, 600px and down) */ @media only screen and (max-width: 600px) { .alert-popup { width: 90%; } } /* Small devices (portrait tablets and large phones, 600px and up) */ @media only screen and (min-width: 600px) { .alert-popup { width: 80%; } } /* Medium devices (landscape tablets, 768px and up) */ @media only screen and (min-width: 768px) { .alert-popup { width: 500px; } .known-loan-cal{ height: 100%; width: 200%; margin-left: -30%; } } /* Large devices (laptops/desktops, 992px and up) */ @media only screen and (min-width: 992px) { .alert-popup { max-width: 450px; left: unset; right: 10px; transform: translate(0%); } .known-loan-cal{ height: 100%; width: 200%; margin-left: -50%; } } /* Extra large devices (large laptops and desktops, 1200px and up) */ @media only screen and (min-width: 1200px) { .alert-popup { max-width: 400px; left: unset; right: 10px; transform: translate(0%); } .known-loan-cal{ height: 100%; width: 200%; margin-left: -50%; } } /style> style> body { height: 100%; } .btn-lg { white-space: normal; margin-bottom: 1rem; } .bg-color { position: fixed; left: 0; right: 0; top: 0; bottom: 0; /* The image used */ /* opacity: 0.8; */ /* Full height */ height: 100%; /* Center and scale the image nicely */ background-position: center; background-repeat: no-repeat; background-size: cover; } .bg { position: fixed; left: 0; right: 0; top: 0; bottom: 0; /* The image used */ background-image: url(/img/login-bg.png); /* opacity: 0.8; */ /* Full height */ height: 100%; /* Center and scale the image nicely */ background-position: center; background-repeat: no-repeat; background-size: cover; } /style> style> table.dataTable thead th { white-space: nowrap; } table.dataTable thead span.sort-icon { display: inline-block; padding-right: 20px; width: 16px; height: 16px; } table.dataTable thead .sorting span { background: url(http://cdn.datatables.net/plug-ins/3cfcc339e89/integration/bootstrap/images/sort_both.png) no-repeat center right; } table.dataTable thead .sorting_asc span { background: url(http://cdn.datatables.net/plug-ins/3cfcc339e89/integration/bootstrap/images/sort_asc.png) no-repeat center right; } table.dataTable thead .sorting_desc span { background: url(http://cdn.datatables.net/plug-ins/3cfcc339e89/integration/bootstrap/images/sort_desc.png) no-repeat center right; } table.dataTable thead .sorting_asc_disabled span { background: url(http://cdn.datatables.net/plug-ins/3cfcc339e89/integration/bootstrap/images/sort_asc_disabled.png) no-repeat center right; } table.dataTable thead .sorting_desc_disabled span { background: url(http://cdn.datatables.net/plug-ins/3cfcc339e89/integration/bootstrap/images/sort_desc_disabled.png) no-repeat center right; } table.dataTable thead .sorting::before, table.dataTable thead .sorting_asc::before, table.dataTable thead .sorting_desc::before, table.dataTable thead .sorting_asc_disabled::before, table.dataTable thead .sorting_desc_disabled::before { content: ; } table.dataTable thead .sorting::after, table.dataTable thead .sorting_asc::after, table.dataTable thead .sorting_desc::after, table.dataTable thead .sorting_asc_disabled::after, table.dataTable thead .sorting_desc_disabled::after { content: ; } /* Ensure scrollbar is above nav */ .ps-scrollbar-y-rail { z-index: 1030 !important; } .sidebar .sidebar-wrapper { height: calc(100vh - 125px) !important; } /style> /head> body classoff-canvas-sidebar data-application_id > div classwrapper> div classh-100> div classcontainer styleheight: 100%;> div classbg-color bg-login>/div> div classrow align-items-center h-100> div classcol-12> ul classnav nav-pills nav-justified mb-3 idmyTab roletablist hidden> li classnav-item> a classnav-link active idstep1-tab data-step1 data-toggletab href#step1 roletab aria-controlshome aria-selectedtrue>Step 1/a> /li> li classnav-item> a classnav-link idstep2-tab data-step2 data-toggletab href#step2 roletab aria-controlsprofile aria-selectedfalse>Step 2/a> /li> /ul> div classrow> div classcol-lg-6 col-md-8 mx-auto stylepadding-bottom: 120px;> div classtab-content> !-- Looking for a mortgage? --> div classcard tab-pane active idstep1 roletabpanel aria-labelledbystep1-tab> div classcard-header text-center > a href/> img src/theme/firstrate/img/logo.png styleborder-radius:5px; max-width: 75%; max-height: 130px classimg-fluid alt> /a> /div> div classcontainer pt-3 text-center> h3 classmb-3 text-primary text-center selective-display d-none>What can we help you with?/h3> button typebutton classw-100 btn btn-lg btn-secondary btn-main-next selective-display d-none data-btn-typemortgage>Mortgage/button> button typebutton classw-100 btn btn-lg btn-secondary btn-main-next selective-display d-none data-btn-typeinsurance> Life Insurance/button> button classmt-3 mortgage-display_back btn btn-primary btn-round btn-just-icon float-left mortgage-display d-none>i classmaterial-icons>arrow_back/i>/button> h3 classmb-3 text-primary text-center mortgage-display >What best describes you?/h3> button typebutton classnext w-100 btn btn-lg btn-secondary btn-loan-type mortgage-display data-loan_type_id1> First time buyer/button> button typebutton classnext w-100 btn btn-lg btn-secondary btn-loan-type mortgage-display data-loan_type_id3> Remortgage or switching/button> button typebutton classnext w-100 btn btn-lg btn-secondary btn-loan-type mortgage-display data-loan_type_id2> Mover (Non-first time buyer)/button> button typebutton classnext w-100 btn btn-lg btn-secondary btn-loan-type mortgage-display data-loan_type_id4> Investor or buy to let/button> div classcontainer> div classbox > hr classhr-text-for-or data-contentOR> h3 classmb-3 text-primary text-center mt-3 stylemargin-top: -15px;>Continue my application/h3> /div> button typebutton classlogin w-100 btn btn-lg btn-secondary btn-loan-type>Login/button> /div> div classcontainer pt-3 pb-3> div classbox privacy-box> small classmb-3 text-center privacy-text>We protect your privacy. We only ask for the essentials. br> For more information, please see our b>a href/mortgage/terms/privacy_policy-2020-11-26-122438.pdf classtext-secondary privacy-link data-htmltrue data-togglepopover data-contentWe don’t ask you for information we dont need and we only keep the information you provide after you have created an account.>privacy policy/a>/b> br> Update your cookie preferences b>a hrefjavascript:void(0); classtext-secondary privacy-link js-lcc-settings-toggle>here/a>/b> /small> /div> /div> /div> /div> !-- Mortgage or Calculator --> !-- Apply for mortgage --> div classcard tab-pane idstep2 roletabpanel aria-labelledbystep3-tab> div classcontainer pt-2 known-loan-app> div classcard-header text-center > a href/> img src/theme/firstrate/img/logo.png styleborder-radius:5px; max-width: 75%; max-height: 150px classimg-fluid alt> /a> /div> div classcol-12 mt-3 > button classmt-3 prev-known-loan btn btn-primary btn-round btn-just-icon float-left>i classmaterial-icons>arrow_back/i>/button> h3 classpy-3 text-primary text-center>Apply for a mortgage/h3> /div> form methodPOST actionhttps://apply.firstrate.ie/mortgage/rates accept-charsetUTF-8 idquote-form stylemargin-top: 20px;>input name_token typehidden valueWGIhClPb6W5hlcfeQZOI4d9u5CfL6KtxXMAnaNsc> input typehidden name_token valueWGIhClPb6W5hlcfeQZOI4d9u5CfL6KtxXMAnaNsc> div classcol-lg-8 mx-auto> div classform-group form-lg pb-2> div classinput-group> span classinput-group-prepend> div classinput-group-text>i classmaterial-icons>euro/i>/div> /span> input idproperty_val classform-control form-control-lg currency-input placeholderPrice/value of property titlePrice/value of property requiredrequired inputmodenumeric value nameproperty_val typetext> span classtext-danger warning-align-below> span idterm-error>/span> /span> /div> /div> /div> div classcol-lg-8 mx-auto> div classform-group pb-2> div classinput-group> span classinput-group-prepend> div classinput-group-text>i classmaterial-icons>euro/i>/div> /span> input idloan_val classform-control currency-input placeholderAmount to borrow requiredrequired inputmodenumeric value nameloan_val typetext> !-- span classbadge badge-warning stylemax-height: 14px; position: absolute; right: 0; top: 19px; font-size: 7px; padding: 3px;>Maximum amount available has reached/span> --> span classtext-danger warning-align-below> span idterm-error>/span> /span> /div> /div> /div> div classcol-lg-8 mx-auto pb-2> div classform-group> div classinput-group> div classinput-group-prepend> div classinput-group-text>i classmaterial-icons>access_time/i>/div> /div> select class form-control custom-select chosen-select show-tick id term name term title Duration of loan data-placeholder Term required > option value>Duration of loan/option> option value20> 20 years /option> option value25> 25 years /option> option value30> 30 years /option> option value35> 35 years /option> option value40> 40 years /option> option value---> --- /option> option value1> 1 year /option> option value2> 2 years /option> option value3> 3 years /option> option value4> 4 years /option> option value5> 5 years /option> option value6> 6 years /option> option value7> 7 years /option> option value8> 8 years /option> option value9> 9 years /option> option value10> 10 years /option> option value11> 11 years /option> option value12> 12 years /option> option value13> 13 years /option> option value14> 14 years /option> option value15> 15 years /option> option value16> 16 years /option> option value17> 17 years /option> option value18> 18 years /option> option value19> 19 years /option> option value20> 20 years /option> option value21> 21 years /option> option value22> 22 years /option> option value23> 23 years /option> option value24> 24 years /option> option value25> 25 years /option> option value26> 26 years /option> option value27> 27 years /option> option value28> 28 years /option> option value29> 29 years /option> option value30> 30 years /option> option value31> 31 years /option> option value32> 32 years /option> option value33> 33 years /option> option value34> 34 years /option> option value35> 35 years /option> option value36> 36 years /option> option value37> 37 years /option> option value38> 38 years /option> option value39> 39 years /option> option value40> 40 years /option> /select> span classtext-danger warning-align-below > span idterm-error>/span> /span> /div> /div> /div> div classcol-lg-8 mx-auto pb-3> button idget-rates-btn classbtn btn-round btn-secondary w-100 typesubmit>Get Started!/button> /div> input typehidden nameloan_type_id idloan_type_id> /form> /div> div classcontainer pt-2 insurance-details-app> div classcard-header text-center > a href/> img src/theme/firstrate/img/logo.png styleborder-radius:5px; max-width: 75%; max-height: 150px classimg-fluid alt> /a> /div> div classcol-12 mt-3 > button classmt-3 prev-insurance-details-app btn btn-primary btn-round btn-just-icon float-left>i classmaterial-icons>arrow_back/i>/button> h3 classpy-3 text-primary text-center>Apply for an insurance/h3> /div> form methodPOST actionhttps://apply.firstrate.ie/insurance/rates accept-charsetUTF-8 idquote-form stylemargin-top: 20px;>input name_token typehidden valueWGIhClPb6W5hlcfeQZOI4d9u5CfL6KtxXMAnaNsc> input typehidden name_token valueWGIhClPb6W5hlcfeQZOI4d9u5CfL6KtxXMAnaNsc> div classcol-lg-8 mx-auto> div classform-group form-lg pb-2> div classinput-group> span classinput-group-prepend> div classinput-group-text>i classmaterial-icons>euro/i>/div> /span> input idlife_cover classform-control form-control-lg currency-input placeholderLife Cover Amount titleLife Cover Amount requiredrequired inputmodenumeric value namelife_cover typetext> span classtext-danger warning-align-below> span idterm-error>/span> /span> /div> /div> /div> div classcol-lg-8 mx-auto> div classform-group pb-2> div classinput-group> span classinput-group-prepend> div classinput-group-text>i classmaterial-icons>euro/i>/div> /span> input idserious_illness classform-control currency-input placeholderSerious Illness Cover requiredrequired inputmodenumeric value nameserious_illness typetext> span classtext-danger warning-align-below> span idterm-error>/span> /span> /div> /div> /div> div classcol-lg-8 mx-auto pb-2> div classform-group> div classinput-group> div classinput-group-prepend> div classinput-group-text>i classmaterial-icons>access_time/i>/div> /div> select class form-control custom-select chosen-select show-tick id term name term title Duration of Insurance data-placeholder Term required > option value>Duration of Insurance/option> option value20> 20 years /option> option value25> 25 years /option> option value30> 30 years /option> option value35> 35 years /option> option value40> 40 years /option> option value---> --- /option> option value1> 1 year /option> option value2> 2 years /option> option value3> 3 years /option> option value4> 4 years /option> option value5> 5 years /option> option value6> 6 years /option> option value7> 7 years /option> option value8> 8 years /option> option value9> 9 years /option> option value10> 10 years /option> option value11> 11 years /option> option value12> 12 years /option> option value13> 13 years /option> option value14> 14 years /option> option value15> 15 years /option> option value16> 16 years /option> option value17> 17 years /option> option value18> 18 years /option> option value19> 19 years /option> option value20> 20 years /option> option value21> 21 years /option> option value22> 22 years /option> option value23> 23 years /option> option value24> 24 years /option> option value25> 25 years /option> option value26> 26 years /option> option value27> 27 years /option> option value28> 28 years /option> option value29> 29 years /option> option value30> 30 years /option> option value31> 31 years /option> option value32> 32 years /option> option value33> 33 years /option> option value34> 34 years /option> option value35> 35 years /option> option value36> 36 years /option> option value37> 37 years /option> option value38> 38 years /option> option value39> 39 years /option> option value40> 40 years /option> /select> span classtext-danger warning-align-below > span idterm-error>/span> /span> /div> /div> /div> div classcol-lg-8 mx-auto pb-3> button idget-rates-btn classbtn btn-round btn-secondary w-100 typesubmit>Get Started!/button> /div> /form> /div> /div> /div> /div> /div> !--Loan Cut off Modal --> div classmodal fade idloanCutModal tabindex-1 roledialog aria-labelledbyexampleModalLabel aria-hiddentrue> div classmodal-dialog modal-dialog-centered roledocument> div classmodal-content> div classmodal-header d-block> button typebutton classclose float-right data-dismissmodal aria-labelClose> span aria-hiddentrue>×/span> /button> /div> div classmodal-body> p idloan_cut_message>/p> /div> div classmodal-footer> button typebutton classbtn btn-primary data-dismissmodal>Close/button> /div> /div> /div> /div>/div> /div> /div> /div>/div> !-- Core JS Files --> script srchttps://apply.firstrate.ie/material/js/core/jquery.min.js>/script> script srchttps://apply.firstrate.ie/material/js/core/popper.min.js>/script> script srchttps://apply.firstrate.ie/material/js/core/bootstrap-material-design.min.js>/script> script srchttps://apply.firstrate.ie/material/js/plugins/perfect-scrollbar.jquery.min.js>/script> !-- Plugin for the momentJs --> !-- script typetext/javascript srchttps://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js>/script> --> script srchttps://apply.firstrate.ie/material/js/plugins/moment.min.js>/script> !-- Plugin for Sweet Alert --> script srchttps://apply.firstrate.ie/material/js/plugins/sweetalert2.js>/script> !-- Forms Validations Plugin --> script srchttps://apply.firstrate.ie/material/js/plugins/jquery.validate.min.js>/script> !-- Plugin for the Wizard, full documentation here: https://github.com/VinceG/twitter-bootstrap-wizard --> script srchttps://apply.firstrate.ie/material/js/plugins/jquery.bootstrap-wizard.js>/script> !-- Plugin for Select, full documentation here: http://silviomoreto.github.io/bootstrap-select --> script srchttps://apply.firstrate.ie/material/js/plugins/bootstrap-selectpicker.js>/script> !-- Plugin for the DateTimePicker, full documentation here: https://eonasdan.github.io/bootstrap-datetimepicker/ --> script srchttps://apply.firstrate.ie/material/js/plugins/bootstrap-datetimepicker.min.js>/script> !-- script typetext/javascript srchttps://cdnjs.cloudflare.com/ajax/libs/tempusdominus-bootstrap-4/5.0.1/js/tempusdominus-bootstrap-4.min.js>/script> --> !-- DataTables.net Plugin, full documentation here: https://datatables.net/ --> script srchttps://apply.firstrate.ie/material/js/plugins/jquery.dataTables.min.js>/script> !-- Plugin for Tags, full documentation here: https://github.com/bootstrap-tagsinput/bootstrap-tagsinputs --> script srchttps://apply.firstrate.ie/material/js/plugins/bootstrap-tagsinput.js>/script> !-- Plugin for Fileupload, full documentation here: http://www.jasny.net/bootstrap/javascript/#fileinput --> script srchttps://apply.firstrate.ie/material/js/plugins/jasny-bootstrap.min.js>/script> !-- Full Calendar Plugin, full documentation here: https://github.com/fullcalendar/fullcalendar --> script srchttps://cdn.jsdelivr.net/npm/fullcalendar@5.9.0/main.min.js>/script> !-- Vector Map plugin, full documentation here: http://jvectormap.com/documentation/ --> script srchttps://apply.firstrate.ie/material/js/plugins/jquery-jvectormap.js>/script> !-- Plugin for the Sliders, full documentation here: http://refreshless.com/nouislider/ --> script srchttps://apply.firstrate.ie/material/js/plugins/nouislider.min.js>/script> !-- Include a polyfill for ES6 Promises (optional) for IE11, UC Browser and Android browser support SweetAlert --> script srchttps://cdnjs.cloudflare.com/ajax/libs/core-js/2.4.1/core.js>/script> !-- Library for adding dinamically elements --> script srchttps://apply.firstrate.ie/material/js/plugins/arrive.min.js>/script> !-- Chartist JS --> script srchttps://apply.firstrate.ie/material/js/plugins/chartist.min.js>/script> !-- Notifications Plugin --> script srchttps://apply.firstrate.ie/material/js/plugins/bootstrap-notify.js>/script> !-- Control Center for Material Dashboard: parallax effects, scripts for the example pages etc --> script srchttps://apply.firstrate.ie/material/js/material-dashboard.js?v2.1.1 typetext/javascript>/script> !-- Google maps libarary -->script src//maps.googleapis.com/maps/api/js?librariesplaces&keyAIzaSyAI9t212sObWiaebUPmBwKisRuHup2auzY>/script>script typetext/javascript> window.extractFromAddress function(components, type) { if( type route ){ return components.filter((component) > component.types.indexOf(type) 0).map((item) > item.long_name).join(, ) || null; } return components.filter((component) > component.types.indexOf(type) 0).map((item) > item.long_name).pop() || null; } window.initializeSimpleAutoCompleteAddress function (autocomplete_address_element null) { if (!autocomplete_address_element) { return; } var autocomplete new google.maps.places.Autocomplete((autocomplete_address_element), { types: geocode }); autocomplete.addListener(place_changed, function () { var place autocomplete.getPlace(); if (place.length 0) { return; } let full_address place.formatted_address; let _postal_code extractFromAddress(place.address_components, postal_code); // Check if the postal code is not already part of the full address before appending if (_postal_code && !full_address.includes(_postal_code)) { full_address `${full_address}, ${_postal_code}`; } // Set the full address (with postal code appended) to the input element $(autocomplete_address_element).val(full_address); });} window.initializeAutoCompleteAddress function (autocomplete_address_element null) { if (!autocomplete_address_element) { return; } var selectorId autocomplete_address_element.id; var isPrev selectorId prev_address1 ? true : false; var autocomplete new google.maps.places.Autocomplete((autocomplete_address_element), {types: geocode}); autocomplete.addListener(place_changed, function () { var place autocomplete.getPlace(); if (place.length 0) { return; } // OPTION-A let full_address place.formatted_address; let _postal_code extractFromAddress(place.address_components, postal_code); if (isPrev) { // remove old value -- set to empty $(inputid^prev_address).each(function () { $(this).val(); }); $(inputidprev_postcode).val(); } else { // remove old value -- set to empty $(inputid^address).each(function () { $(this).val(); }); $(inputidpostcode).val(); } if (full_address) { let address_parts full_address.split(, ); console.log(full_address); console.log(address_parts); const postal_code_index address_parts.indexOf(_postal_code); if (postal_code_index > -1) { address_parts.splice(postal_code_index, 1); } $.each(address_parts, (index, item) > { index++; let input_id isPrev ? `prev_address${index}` : `address${index}`; if ($(`inputid${input_id}`).length 1) { if (isPrev) { $(.prev-add-line).trigger(click); } else { $(.current-add-line).trigger(click); } } $(`inputid${input_id}`).val(item); }); } if (isPrev) { $(inputidprev_postcode).val(_postal_code); } else { $(inputidpostcode).val(_postal_code); } }); } function __autocomplete_addresses() { const $_ADDRESS_IDS address1, address2, address3, address4, address5, address6, address7, address8, address9, prev_address1, prev_address2, prev_address3, prev_address4, prev_address5, prev_address6, prev_address7, prev_address8, prev_address9, ; $(body).on(focus, inputidaddress1, inputidprev_address1, function (event) { initializeAutoCompleteAddress(this); return true; }); $(body).on(focus, inputid^address:not(.address-line), inputid^prev_address:not(.address-line), function (event) { if( $_ADDRESS_IDS.indexOf( $(this).attr(id) ) 0 ){ console.log( $_ADDRESS_IDS.indexOf( $(this).attr(id) ), $(this).attr(id) ); initializeSimpleAutoCompleteAddress(this); } }); $(body).on(focus, inputid^business_address:not(.address-line), function (event) { initializeSimpleAutoCompleteAddress(this); }); $(body).on(focus, inputid^description0:not(.address-line,.income-description), function (event) { initializeSimpleAutoCompleteAddress(this); }); } __autocomplete_addresses(); $(divid$-modal).on(focus, function () { __autocomplete_addresses(); });/script>style> .pac-container { z-index: 1051 !important; }/style> !-- Common custom functions for admin --> script srchttps://apply.firstrate.ie/material/js/plugins/autoNumeric.js typetext/javascript>/script> script srchttps://apply.firstrate.ie/material/js/plugins/autoNumeric.js typetext/javascript>/script> script srchttps://apply.firstrate.ie/material/js/plugins/meiomask.js typetext/javascript>/script> script srchttps://apply.firstrate.ie/material/js/plugins/jquery.blockUI.js typetext/javascript>/script> script srchttps://apply.firstrate.ie/material/js/yes/common.js?v1 typetext/javascript>/script> script srchttps://apply.firstrate.ie/js/oa/calculator/calculator.js?v3.6.6>/script> script srchttps://apply.firstrate.ie/js/oa/mailbox_v2/mailbox_v2.js?v3.6.6>/script> !-- BEGIN LivePerson Monitor. --> !-- END LivePerson Monitor. --> !-- No index for SherryFitz pages --> script> $(document).ready(function() { $(data-togglepopover).popover({ trigger: hover, placement: left }); var calcSettings 0 ; if(calcSettings){ $(.known-loan-app).hide(); $(.known-loan-cal).hide(); $(.known-loan).show(); $(.known-loan).on(click, .have-idea-btn, function() { $(.known-loan).hide(); $(.known-loan-app).show(); }) $(.known-loan).on(click, .have-no-idea-btn, function() { $(.known-loan).hide(); $(#step2).attr(style, display: contents); $(.known-loan-cal).show(); }) $(.known-loan-app).on(click, .prev-known-loan, function() { $(.known-loan).show(); $(.known-loan-app).hide(); }) $(.known-loan-cal).on(click, .prev-known-loan, function() { $(.known-loan).show(); $(#step2).attr(style, ); $(.known-loan-cal).hide(); }) $(.known-loan-cal).on(click, .prev-known-loan-app, function() { $(.known-loan-app).show(); $(.known-loan).hide(); $(#step2).attr(style, ); $(.known-loan-cal).hide(); }) }else{ $(.known-loan).hide(); $(.known-loan-app).show(); $(.known-loan-app).on(click, .prev-known-loan, function() { var panel $(.tab-pane.active); var screen_width $(window).width(); panel.css({position: relative}); panel.animate({right:-screen_width}, 300, function () { $(href#step1).tab(show); }); }) } }); /script> script> $(document).ready(function() { var cut_off_loan_amount parseInt() ; var cut_off_message .replace(/-/g, ‑) ; $(data-togglepopover).popover({ container: .floating-container}); $(#property_val).on(keyup,function() { nanTestKeyup(property_val,$(this)); }); $(#loan_val).on(keyup,function() { nanTestKeyup(loan_val,$(this)); }); function nanTestKeyup(id , point){ var val $(#+id+).val(); if(val NaN){ $(#+id+).val(); }else{ point.next().children().html(); if( val.length > 8 && val 0){ var lengthExceed val.slice(0, 8); $(#+id+).val(lengthExceed); point.next().children().html(Please enter an integer value); }else{ if(val.length > 16){ var lengthExceed val.slice(0, 16); $(#+id+).val(lengthExceed); point.next().children().html(Maximum feasible value has reached); } } } } // prevent next for loan cut-off check $(#quote-form).submit(function(event) { var loan_value parseInt($(#loan_val).val().replaceAll(,,)); var property_val parseInt($(#property_val).val().replaceAll(,,)); if (loan_value cut_off_loan_amount){ event.preventDefault(); $(#loan_cut_message).text(cut_off_message); $(#loanCutModal).modal(show); return false; }else if(loan_value > property_val){ event.preventDefault(); $(#loan_cut_message).text(Mortgage value can not be greater than the property value); $(#loanCutModal).modal(show); return false; } }); $(body).on(input change keyup, nameannual_salary, namepartners_salary, namedeposit_amount, namemonthly_outgoings, function(e) { var loan_type_id $(#loan_type_id).val(); if(loan_type_id 1) { var rate_of_pay 4; }else { var rate_of_pay 3.5; } var buyer_allowence ; buyer_allowence1 0.1; buyer_allowence2 0.2; buyer_allowence3 0.2; buyer_allowence4 0.3 var loan_type_id $(#loan_type_id).val(); var annual_salary parseFloat($(inputnameannual_salary).val().replaceAll(,,) || 0); var partners_salary parseFloat($(inputnamepartners_salary).val().replaceAll(,,) || 0); var deposit_amount parseFloat($(inputnamedeposit_amount).val().replaceAll(,,) || 0); var monthly_outgoings parseFloat($(inputnamemonthly_outgoings).val().replaceAll(,,) || 0); var borrow_up_to ((annual_salary + partners_salary) * rate_of_pay) - (monthly_outgoings * 60); var house_price borrow_up_to + deposit_amount - (monthly_outgoings * 60); if (deposit_amount > (borrow_up_to * buyer_allowenceloan_type_id)) { borrow_up_to ((annual_salary + partners_salary) * rate_of_pay) - (monthly_outgoings * 60); house_price borrow_up_to + deposit_amount; } else { borrow_up_to deposit_amount * 10; house_price borrow_up_to + deposit_amount; } var ltv (borrow_up_to / (house_price)) *100; // var ltv ((borrow_up_to + deposit_amount) / borrow_up_to) * 100; if(borrow_up_to > 0 && house_price > 0 && deposit_amount > 0 ) { var loanVal borrow_up_to.toFixed(2).toString().replace(/(\d)(?(\d{3})+(?!\d))/g, $1,); var houseVal house_price.toFixed(2).toString().replace(/(\d)(?(\d{3})+(?!\d))/g, $1,); $(#borrow-up-to).text(loanVal); $(#house-price).text(houseVal); $(#ltv).text(ltv.toFixed(2).toString().replace(/(\d)(?(\d{3})+(?!\d))/g, $1,)); $(#loan_val).val(parseInt(borrow_up_to)); $(#property_val).val(parseInt(house_price)); } else { $(#borrow-up-to).text(0); $(#house-price).text(0); $(#ltv).text(0); } // $(#ltv).text(ltv.toFixed(0).toString().replace(/(\d)(?(\d{3})+(?!\d))/g, $1,)); // $(#borrow-up-to).text(borrow_up_to.toFixed(0).toString().replace(/(\d)(?(\d{3})+(?!\d))/g, $1,)); // $(#house-price).text(house_price.toFixed(0).toString().replace(/(\d)(?(\d{3})+(?!\d))/g, $1,)); if (isNaN(borrow_up_to)) { $(#borrow-up-to).text(0); } if (isNaN(house_price)) { $(#house-price).text(0); } if (isNaN(ltv)) { $(#ltv).text(0); } if(borrow_up_to 0) { $(#borrow-up-to).text(0); } if(house_price 0) { $(#house-price).text(0); } if(house_price borrow_up_to) { $(#house-price).text(0); $(#borrow-up-to).text(0); $(#ltv).text(0); } if(ltv 0) { $(#ltv).text(0); } }); }); /script>script> $(document).ready(function() { setTimeout(closeAlertMessagePopup, 15 * 1000); }); function closeAlertMessagePopup() { $(.alert-popup).fadeOut(500); }/script> script> $(document).ready(function() { setInputFilter(document.getElementById(property_val), function(value) { return /^-?(\d|,)*.?\d{0,2}$/.test(value); }); setInputFilter(document.getElementById(loan_val), function(value) { return /^-?(\d|,)*.?\d{0,2}$/.test(value); }); // Restricts input for the given textbox to the given inputFilter. function setInputFilter(textbox, inputFilter) { input, keydown, keyup, mousedown, mouseup, select, contextmenu, drop.forEach(function(event) { textbox.addEventListener(event, function() { if (inputFilter(this.value)) { this.oldValue this.value; this.oldSelectionStart this.selectionStart; this.oldSelectionEnd this.selectionEnd; } else if (this.hasOwnProperty(oldValue)) { this.value this.oldValue; this.setSelectionRange(this.oldSelectionStart, this.oldSelectionEnd); } var val Number(this.value.replace(/,/g, )).toLocaleString(en); this.value val ! 0 ? val : this.value; }); }); } $(.btn-loan-type).click(function() { document.getElementById(loan_type_id).value this.dataset.loan_type_id; // Change placeholder if remortgaging if (this.dataset.loan_type_id 3) { $(#loan_val).attr(placeholder, Amount to refinance or borrow); } else $(#loan_val).attr(placeholder, Amount to borrow); }); $(.next).click(function(){ $(.insurance-details-app).remove(); next(); }); $(.login).click(function(){ window.location /login; }); $(.prev).click(function(){ var panel $(.tab-pane.active); var nextId panel.prev().attr(id); var screen_width $(window).width(); panel.css({position: relative}); panel.animate({right:-screen_width}, 300, function () { $(href#+nextId+).tab(show); }); return false; }); $(.calculator).click(function(){ $(href#step4).tab(show); }); $(adata-toggletab).on(show.bs.tab, function (e) { var $new_tab $($(e.target).attr(href)); var $old_tab $($(e.relatedTarget).attr(href)); var screen_width $(window).width(); if($new_tab.index() > $old_tab.index()){ $new_tab.css({position: relative}).css(right, -screen_width); $new_tab.animate({right:0}, 300); } else { $new_tab.css({position: relative}).css(left, -screen_width); $new_tab.animate({left:0}, 300); } }); function next() { var panel $(.tab-pane.active); var nextId panel.next().attr(id); var screen_width $(window).width(); panel.css({position: relative}); panel.animate({left:-screen_width}, 300, function () { $(href#+nextId+).tab(show); }); return false; } $(document).on(click, .btn-main-next, function () { var btn_type $(this).data(btn-type); if (btn_type insurance) { $(#step2).find(.known-loan, .known-loan-cal, .known-loan-app).remove(); next(); } else { $(.selective-display).addClass(d-none); $(.mortgage-display).hide().removeClass(d-none).slideDown(); } }); $(document).on(click, .mortgage-display_back, function () { $(.mortgage-display).addClass(d-none); $(.selective-display).hide().removeClass(d-none).slideDown(); }); $(document).on(click, .prev-insurance-details-app, .prev-known-loan, .prev-known-loan, function () { window.location.reload(); }); }); /script> script> $(document).ready(function() { // hack to activate scrollbar on main panel on page load const container document.querySelector(.main-panel); if (container ! null) { container.scrollTop 1; } }) /script> script srchttps://apply.firstrate.ie/js/oa/chat/chat.js?v3.6.6>/script> style>/* Inline cookie consent responsive styles */.lcc-modal { max-width: 100% !important; box-sizing: border-box !important; padding: 15px 20px !important;}.cookie-title { margin-top: 0 !important; margin-bottom: 10px !important;}/* Default layout for larger screens - vertical layout */.lcc-modal .lcc-modal__body { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; width: 100% !important;}.lcc-modal .lcc-modal__content { flex: none !important; margin-right: 0 !important; max-width: 100% !important; text-align: center !important; margin-bottom: 20px !important;}.lcc-modal .lcc-modal__actions { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: center !important; white-space: nowrap !important; flex-shrink: 0 !important; min-width: 280px !important; gap: 8px !important;}/* For the settings modal */.lcc-modal--settings .lcc-modal__actions { display: flex !important; flex-direction: row !important; align-items: center !important; flex-shrink: 0 !important; min-width: 200px !important; gap: 8px !important; justify-content: center !important; width: auto !important; margin-top: 15px !important;}.lcc-modal--settings .lcc-modal__actions button { width: auto !important; margin: 0 !important; white-space: nowrap !important; flex: 0 0 auto !important;}/* Reduce spacing between text and buttons for desktop */.lcc-modal--settings .lcc-modal__body { padding: 0 !important; align-items: center !important; justify-content: center !important; flex-direction: column !important;}.lcc-modal--settings .lcc-modal__content { margin-right: 0 !important; max-width: 100% !important; flex: none !important; width: auto !important; text-align: center !important; margin-bottom: 15px !important;}.lcc-modal--settings .lcc-text.mb-2 { margin-bottom: 0 !important;}/* Apply same solution to main alert popup */.lcc-modal--alert .lcc-modal__body { justify-content: center !important; align-items: center !important; flex-direction: column !important;}.lcc-modal--alert .lcc-modal__content { margin-right: 0 !important; max-width: 100% !important; flex: none !important; width: auto !important; text-align: center !important; margin-bottom: 20px !important;}.lcc-modal--alert .lcc-modal__actions { gap: 8px !important;}/* Make buttons wider for larger screens (desktop/laptop) */@media (min-width: 768px) { .lcc-modal .lcc-modal__actions button { padding: 10px 40px !important; min-width: 150px !important; font-size: 14px !important; } .lcc-modal--settings .lcc-modal__actions button { padding: 10px 40px !important; min-width: 140px !important; font-size: 14px !important; } .lcc-modal .lcc-modal__actions { min-width: 380px !important; gap: 12px !important; } .lcc-modal--settings .lcc-modal__actions { min-width: 300px !important; gap: 10px !important; } /* Center align the content */ .lcc-modal .lcc-modal__body { justify-content: center !important; } .lcc-modal--settings .lcc-modal__body { justify-content: center !important; } /* Add more gap between text and buttons for larger screens */ .lcc-modal .lcc-modal__content { margin-bottom: 10px !important; } .lcc-modal--settings .lcc-modal__content { margin-bottom: 0 !important; } .lcc-modal--alert .lcc-modal__content { margin-bottom: 10px !important; } /* Remove left margins since content is now centered */ .lcc-modal .lcc-modal__actions button:first-child { margin-left: 0 !important; } .lcc-modal--settings .lcc-modal__actions button:first-child { margin-left: 0 !important; }}@media (max-width: 767px) { .lcc-modal { padding: 15px !important; } .lcc-modal .lcc-modal__body { flex-direction: column !important; align-items: stretch !important; } .lcc-modal .lcc-modal__content { width: 100% !important; max-width: 100% !important; margin-right: 0 !important; margin-bottom: 15px !important; } .lcc-modal .lcc-modal__actions { width: 100% !important; justify-content: space-between !important; margin-top: 10px !important; } .lcc-modal .lcc-modal__actions > * { flex: 1 !important; margin: 0 5px !important; text-align: center !important; white-space: nowrap !important; min-width: 0 !important; } .lcc-modal .lcc-modal__actions > *:first-child { margin-left: 0 !important; } .lcc-modal .lcc-modal__actions > *:last-child { margin-right: 0 !important; } .lcc-modal--settings .lcc-modal__actions { flex-direction: column !important; width: 100% !important; gap: 8px !important; } .lcc-modal--settings .lcc-modal__actions button { width: 100% !important; margin: 0 !important; } /* Restore proper spacing for mobile */ .lcc-modal--settings .lcc-modal__body { padding-right: 10px !important; } .lcc-modal--settings .lcc-modal__content { margin-right: 0 !important; margin-bottom: 15px !important; } .lcc-modal--settings .lcc-text.mb-2 { margin-bottom: 8px !important; } /* Restore proper spacing for mobile alert popup */ .lcc-modal--alert .lcc-modal__body { justify-content: space-between !important; } .lcc-modal--alert .lcc-modal__content { margin-right: 0 !important; margin-bottom: 15px !important; max-width: 100% !important; flex: 1 !important; width: 100% !important; } .lcc-text { word-wrap: break-word !important; overflow-wrap: break-word !important; }}/* Medium screens button spacing for settings modal */@media (min-width: 376px) and (max-width: 750px) { .lcc-modal--settings .lcc-modal__actions { flex-direction: row !important; justify-content: space-between !important; align-items: center !important; gap: 10px !important; min-width: auto !important; } .lcc-modal--settings .lcc-modal__actions button { flex: 1 !important; margin: 0 !important; white-space: nowrap !important; min-width: 100px !important; } .lcc-modal--settings .lcc-modal__body { flex-direction: column !important; } .lcc-modal--settings .lcc-modal__content { max-width: 100% !important; margin-right: 0 !important; margin-bottom: 15px !important; }}/* Fix text cutting at specific screen sizes */@media (min-width: 480px) and (max-width: 600px) { .lcc-modal--settings .lcc-modal__actions button { font-size: 11px !important; padding: 6px 8px !important; line-height: 1.2 !important; } .lcc-modal--settings .lcc-modal__actions { gap: 8px !important; }}/* Further reduce for very tight spaces */@media (min-width: 480px) and (max-width: 550px) { .lcc-modal--settings .lcc-modal__actions button { font-size: 10px !important; padding: 5px 6px !important; min-width: 80px !important; } .lcc-modal--settings .lcc-modal__actions { gap: 6px !important; }}@media (max-width: 500px) { .lcc-modal { padding: 8px !important; } .lcc-modal .lcc-modal__title { font-size: 13px !important; margin-bottom: 4px !important; } .cookie-title { font-size: 13px !important; margin-bottom: 4px !important; line-height: 1.2 !important; } .lcc-text { font-size: 11px !important; margin: 0 0 8px !important; line-height: 1.3 !important; } .lcc-button { padding: 5px 8px !important; font-size: 11px !important; margin: 3px !important; } .lcc-modal .lcc-modal__content { margin-bottom: 8px !important; } .lcc-modal .lcc-modal__actions { margin-top: 6px !important; } /* Remove any extra margins/paddings */ .lcc-modal .lcc-modal__body { margin: 0 !important; padding: 0 !important; } .mb-0 { margin-bottom: 0 !important; }}/* Specific fix for 350px width screens (iframe usage) */@media (max-width: 350px) { .lcc-modal { padding: 6px !important; overflow-x: hidden !important; } .lcc-modal .lcc-modal__body { position: relative !important; } .lcc-modal h4, .cookie-title { font-size: 11px !important; margin-bottom: 3px !important; line-height: 1.2 !important; } .lcc-text { font-size: 10px !important; line-height: 1.2 !important; margin-bottom: 4px !important; } .lcc-button { padding: 4px 6px !important; font-size: 10px !important; margin: 2px 0 !important; } .lcc-modal .lcc-modal__content { padding-right: 30px !important; /* Extra space for close button */ margin-bottom: 4px !important; } .lcc-modal .lcc-modal__actions { flex-direction: column !important; align-items: stretch !important; margin-top: 4px !important; } .lcc-modal .lcc-modal__actions > * { margin: 2px 0 !important; width: 100% !important; } .lcc-modal .lcc-modal__body { flex-direction: column !important; } /* Close button specifically for 350px screens */ .lcc-modal__close { position: absolute !important; top: 4px !important; right: 4px !important; background: rgba(255,255,255,0.8) !important; border: 1px solid #ccc !important; border-radius: 3px !important; font-size: 14px !important; line-height: 1 !important; padding: 2px 6px !important; cursor: pointer !important; z-index: 9999 !important; color: #333 !important; width: auto !important; height: auto !important; min-width: auto !important; box-shadow: 0 1px 3px rgba(0,0,0,0.2) !important; } .lcc-modal__close:hover { background-color: rgba(255,255,255,1) !important; border-color: #999 !important; }}@media (max-width: 375px) { .lcc-modal { padding: 6px !important; overflow-x: hidden !important; } .lcc-modal .lcc-modal__body { position: relative !important; } .lcc-modal h4 { font-size: 12px !important; margin-bottom: 4px !important; line-height: 1.2 !important; } .lcc-button { padding: 4px 6px !important; font-size: 10px !important; margin: 2px 0 !important; } .lcc-modal .lcc-modal__actions { flex-direction: column !important; align-items: stretch !important; margin-top: 4px !important; } .lcc-modal .lcc-modal__actions > * { margin: 2px 0 !important; width: 100% !important; } .lcc-modal .lcc-modal__content { text-align: center !important; margin-bottom: 4px !important; padding-right: 25px !important; /* Add space for close button */ } .lcc-text { font-size: 10px !important; line-height: 1.2 !important; margin-bottom: 4px !important; } /* Ensure buttons stack properly on very small screens */ .d-block.lcc-modal__body { display: block !important; } .lcc-modal .lcc-modal__body { flex-direction: column !important; } /* Close button positioning for small screens */ .lcc-modal__close { position: absolute !important; top: 3px !important; right: 3px !important; background: none !important; border: none !important; font-size: 16px !important; line-height: 1 !important; padding: 3px 5px !important; cursor: pointer !important; z-index: 1000 !important; color: #333 !important; width: auto !important; height: auto !important; min-width: auto !important; } .lcc-modal__close:hover { background-color: rgba(0,0,0,0.1) !important; }}/* Ultra compact styles for very small screens */@media (max-width: 360px) { .lcc-modal { padding: 4px !important; } .lcc-modal .lcc-modal__body { position: relative !important; } .lcc-modal h4, .cookie-title { font-size: 10px !important; margin-bottom: 2px !important; line-height: 1.1 !important; } .lcc-text { font-size: 9px !important; line-height: 1.1 !important; margin-bottom: 2px !important; } .lcc-button { padding: 3px 4px !important; font-size: 9px !important; margin: 1px 0 !important; line-height: 1 !important; } .lcc-modal .lcc-modal__content { margin-bottom: 2px !important; padding-right: 20px !important; /* Add space for close button */ } .lcc-modal .lcc-modal__actions { margin-top: 2px !important; } .lcc-modal .lcc-modal__actions > * { margin: 1px 0 !important; } /* Close button positioning for very small screens */ .lcc-modal__close { position: absolute !important; top: 2px !important; right: 2px !important; background: none !important; border: none !important; font-size: 14px !important; line-height: 1 !important; padding: 2px 4px !important; cursor: pointer !important; z-index: 1000 !important; color: #333 !important; width: auto !important; height: auto !important; min-width: auto !important; } .lcc-modal__close:hover { background-color: rgba(0,0,0,0.1) !important; }}/style>div roledialog aria-labelledbylcc-modal-alert-label aria-describedbylcc-modal-alert-desc aria-modalfalse classlcc-modal lcc-modal--alert js-lcc-modal js-lcc-modal-alert styledisplay: none; max-width: 100%; box-sizing: border-box; padding: 15px 20px; data-cookie-key__cookie_consent data-cookie-value-analytics2 data-cookie-value-marketing3 data-cookie-value-bothtrue data-cookie-value-nonefalse data-cookie-expiration-days365 data-gtm-eventcookie_refresh data-ignored-paths/cookie-policy data-enable-backdrop> div classd-block lcc-modal__body styledisplay: flex; align-items: center; margin: 0; padding: 0; justify-content: space-between;> div classlcc-modal__content align-items-center styleflex: 1; margin-right: 20px; max-width: 70%;> h4 classcookie-title stylemargin-top: 0; margin-bottom: 4px; font-size: 14px; line-height: 1.2;>YOUR PRIVACY IS IMPORTANT TO US/h4> p idlcc-modal-alert-desc classlcc-text mb-0 stylemargin: 0; font-size: 12px; line-height: 1.3;> We use cookies to enhance your browsing experience. You can choose to accept all cookies or just the essential ones. a href/cookie-policy>COOKIE POLICY/a> /p> /div> div classlcc-modal__actions styledisplay: flex; flex-shrink: 0; white-space: nowrap; margin: 0;> button typebutton classlcc-button js-lcc-settings-save idjs-lcc-essential-alert-popup-accept stylemargin: 0 5px; white-space: nowrap; padding: 8px 12px;> Accept Essential Only /button> button typebutton classlcc-button js-lcc-accept idjs-lcc-accept-all-alert-popup stylemargin: 0 0 0 5px; white-space: nowrap; padding: 8px 12px;> Accept all cookies /button> /div> /div>/div>div roledialog aria-labelledbylcc-modal-settings-label aria-describedbylcc-modal-settings-desc aria-modaltrue classlcc-modal lcc-modal--settings js-lcc-modal js-lcc-modal-settings styledisplay: none; max-width: 100%; box-sizing: border-box; padding: 15px 20px;> button classlcc-modal__close js-lcc-settings-toggle typebutton> span classlcc-u-sr-only> Close /span> × /button> div classd-block lcc-modal__body styledisplay: flex; margin: 0; padding: 0 10px 0 0; align-items: flex-start;> div classlcc-modal__content styleflex: 1; margin-right: 20px; max-width: 70%;> div classlcc-modal__content stylewidth: 100%; margin: 0; padding: 0;> div classlcc-modal__section d-none> label forlcc-checkbox-essential classlcc-label> input typecheckbox idlcc-checkbox-essential disableddisabled checkedchecked> span>Strictly necessary cookies/span> /label> p classlcc-text> are essential cookies that ensure that the website functions properly and that your preferences (e.g. language, region) are saved. /p> /div> div classlcc-modal__section d-none> label forlcc-checkbox-analytics classlcc-label> input typecheckbox idlcc-checkbox-analytics> span>Analytical cookies/span> /label> p classlcc-text> allow us to analyse website use and to improve the visitors experience. /p> /div> div classlcc-modal__section d-none> label forlcc-checkbox-marketing classlcc-label> input typecheckbox idlcc-checkbox-marketing> span>Marketing cookies/span> /label> p classlcc-text> allow us to personalise your experience and to send you relevant content and offers, on this website and other websites. /p> /div> h4 classmt-3 cookie-title stylemargin-top: 0; margin-bottom: 4px; font-size: 14px; line-height: 1.2;>YOUR PRIVACY IS IMPORTANT TO US/h4> p idlcc-modal-alert-desc classlcc-text mb-0 mb-2 stylemargin: 0 0 8px 0; font-size: 12px; line-height: 1.3;> span idcookie_all_selected_description classd-none> We use cookies to enhance your browsing experience. You have chosen to accept all cookies. Please refer to our a href/cookie-policy>COOKIE POLICY/a> for more details. /span> span idcookie_essential_selected_description classd-none> We use cookies to enhance your browsing experience. You have chosen to accept essential cookies. Please refer to our a href/cookie-policy>COOKIE POLICY/a> for more details. /span> /p> /div> /div> div classlcc-modal__actions styledisplay: flex; flex-direction: column; min-width: 150px; flex-shrink: 0;> button typebutton classlcc-button lcc-button--link js-lcc-settings-toggle stylemargin: 3px 0; width: 100%; text-align: center; padding: 8px 12px;> Cancel /button> button typebutton classlcc-button js-lcc-settings-save idjs-lcc-essential-alert-update-accept stylemargin: 3px 0; width: 100%; text-align: center; padding: 8px 12px;> Accept Essential Only /button> button typebutton classlcc-button js-lcc-accept idjs-lcc-accept-all-update-popup stylemargin: 3px 0; width: 100%; text-align: center; padding: 8px 12px;> Accept all cookies /button> /div> /div>/div>div classlcc-backdrop js-lcc-backdrop styledisplay: none;>/div>script typetext/javascript srchttps://apply.firstrate.ie/vendor/cookie-consent/js/cookie-consent.js>/script>script> document.addEventListener(DOMContentLoaded, function() { const saveEssentialCookiesButton document.getElementById(js-lcc-essential-alert-popup-accept); const saveEssentialUpdateCookiesButton document.getElementById(js-lcc-essential-alert-update-accept); //js-lcc-essential-alert-popup const saveAllCookiesButton document.getElementById(js-lcc-accept-all-alert-popup); const saveAllUpdateCookiesButton document.getElementById(js-lcc-accept-all-update-popup); const analyticsCheckbox document.getElementById(lcc-checkbox-analytics); const marketingCheckbox document.getElementById(lcc-checkbox-marketing); const allSelectedDescription document.getElementById(cookie_all_selected_description); const essentialSelectedDescription document.getElementById(cookie_essential_selected_description); function checkCookiesAndShowDescriptionBasedOnSelected() { // Check if both are selected let allSelectedCookiePreferences false; if (analyticsCheckbox && marketingCheckbox) { allSelectedCookiePreferences analyticsCheckbox.checked && marketingCheckbox.checked; } // Show/hide descriptions based on selection if (allSelectedCookiePreferences) { // Show all accepted description allSelectedDescription.classList.remove(d-none); // Hide essential only description essentialSelectedDescription.classList.add(d-none); //enable to load non essential scripts enableNonEssentialScripts(); } else { // Show essential only description essentialSelectedDescription.classList.remove(d-none); // Hide all accepted description allSelectedDescription.classList.add(d-none); } } checkCookiesAndShowDescriptionBasedOnSelected(); saveEssentialCookiesButton.addEventListener(click, function(e) { // Uncheck them before the event reaches the default listener if (analyticsCheckbox) analyticsCheckbox.checked false; if (marketingCheckbox) marketingCheckbox.checked false; checkCookiesAndShowDescriptionBasedOnSelected(); // Close the settings modal and backdrop const settingsModal document.querySelector(.js-lcc-modal-settings); const backdrop document.querySelector(.js-lcc-backdrop); if (settingsModal) settingsModal.style.display none; if (backdrop) backdrop.style.display none; // Do NOT stop propagation or preventDefault here // This lets the original cookie-consent.js listener run AFTER this code }); saveEssentialUpdateCookiesButton.addEventListener(click, function(e) { // Uncheck them before the event reaches the default listener if (analyticsCheckbox) analyticsCheckbox.checked false; if (marketingCheckbox) marketingCheckbox.checked false; checkCookiesAndShowDescriptionBasedOnSelected(); // Do NOT stop propagation or preventDefault here // This lets the original cookie-consent.js listener run AFTER this code }, true); // Note the true means capture phase saveAllCookiesButton.addEventListener(click, function(e) { // Uncheck them before the event reaches the default listener if (analyticsCheckbox) analyticsCheckbox.checked true; if (marketingCheckbox) marketingCheckbox.checked true; checkCookiesAndShowDescriptionBasedOnSelected(); // Do NOT stop propagation or preventDefault here // This lets the original cookie-consent.js listener run AFTER this code }, true); // Note the true means capture phase saveAllUpdateCookiesButton.addEventListener(click, function(e) { // Uncheck them before the event reaches the default listener if (analyticsCheckbox) analyticsCheckbox.checked true; if (marketingCheckbox) marketingCheckbox.checked true; checkCookiesAndShowDescriptionBasedOnSelected(); // Do NOT stop propagation or preventDefault here // This lets the original cookie-consent.js listener run AFTER this code }, true); // Note the true means capture phase }); function enableNonEssentialScripts() { const nonEssentialScripts document.querySelectorAll(scripttypetext/plain); console.log(Enabling non-essential cookies. loading + nonEssentialScripts.length + scripts!); nonEssentialScripts.forEach(script > { const category script.dataset.cookieCategory; //todo: if only data-cookie-categoryanalytics or marketing if (category analytics || category marketing) { const newScript document.createElement(script); newScript.type text/javascript; if (script.src) { newScript.src script.src; // If the script has a `src` attribute } else { newScript.textContent script.textContent; // Inline script } document.body.appendChild(newScript); script.remove(); // Remove the placeholder } }); }/script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]