PageSourceSearch

https://apartments.com.gh/user/login

html apartments.com.gh collected 2026-09-24 10:07:22 UTC 71,045 bytes, 1,602 lines download raw bytes

1
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3<html xmlns="https://www.w3.org/1999/xhtml" dir="ltr" lang="en-US">
4<!-- Start of tradenaira Zendesk Widget script -->
5<script id="ze-snippet" src="https://static.zdassets.com/ekr/snippet.js?key=107274bc-dacb-4bdf-9426-d877e0b16161"> </script>
5
6<!-- End of tradenaira Zendesk Widget script -->
7<head>
8<!-- Function File Css -->
9<link rel="preload" href="https://apartments.com.gh/oc-includes/osclass/assets/js/fineuploader/fineuploader.css" as="style" onload="this.rel='stylesheet'">
10<link rel="preload" href="https://apartments.com.gh/oc-content/themes/wizestate/css/ajax-uploader.css" as="style" onload="this.rel='stylesheet'">
11<link rel="preload" href="https://apartments.com.gh/oc-content/themes/wizestate/css/slick.css" as="style" onload="this.rel='stylesheet'">
12<link rel="preload" href="https://apartments.com.gh/oc-content/themes/wizestate/css/slick-theme.css" as="style" onload="this.rel='stylesheet'">
13<link rel="preload" href="https://apartments.com.gh/oc-content/themes/wizestate/css/jquery.fancybox.min.css" as="style" onload="this.rel='stylesheet'">
14<link rel="preload" href="https://apartments.com.gh/oc-content/themes/wizestate/css/ajax-uploader.css" as="style" onload="this.rel='stylesheet'">
15
16<!-- 	
16<script type="text/javascript" src="" async></script>
16
17	
17<script type="text/javascript" src="" async></script>
17 -->
18	
18<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/bootstrap.min.js" async></script>
18
19	
19<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/respond.js" async></script>
19
20	<!-- 
20<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/library.js" async></script>
20
21<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/owl.carousel.js" async></script>
21 -->
22<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
23
24 
25 
26<title>Apartments for Rent in Ghana | Find Your Ideal Home Today!</title>
27<meta name="description" content="Apartments Ghana is a property listing website that helps you find and advertise your property in Ghana. We also provide property management services for our clients to ensure the best possible return on investment." />
28<!-- canonical -->
29<link rel="canonical" href="https://apartments.com.gh/user/login"/>
30<!-- /canonical -->
31<meta http-equiv="Cache-Control" content="no-cache" />
32<meta http-equiv="Expires" content="Fri, Jan 01 1970 00:00:00 GMT" />
33<meta name="viewport" content="initial-scale = 1.0,maximum-scale = 1.0" />
34<meta name="apple-mobile-web-app-capable" content="yes">
35<meta name="apple-mobile-web-app-status-bar-style" content="black">
36<meta name="robots" content="index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1" />
37<meta name="googlebot" content="index, follow" />
38<link rel="shortcut icon" href="https://apartments.com.gh/oc-content/uploads/favicon.png" type="image/x-icon" />
39<!-- <link href="" rel="stylesheet" type="text/css" /> -->
40<link rel="preload" href="https://apartments.com.gh/oc-content/themes/wizestate/css/bootstrap.min.css" as="style" 
41onload="this.rel='stylesheet'">
42<!-- <link href="" rel="stylesheet" type="text/css" /> -->
43<link rel="preload" href="https://apartments.com.gh/oc-content/themes/wizestate/css/main.css" as="style" 
44onload="this.rel='stylesheet'">
45<!-- <link href="" rel="stylesheet" type="text/css" /> -->
46<link rel="preload" href="https://apartments.com.gh/oc-content/themes/wizestate/css/apps-blue.css" as="style" 
47onload="this.rel='stylesheet'">
48<!-- <link href="" rel="stylesheet" type="text/css" /> -->
49<link rel="preload" href="https://apartments.com.gh/oc-content/themes/wizestate/js/jquery-ui/jquery-ui-1.10.2.custom.min.css" as="style" 
50onload="this.rel='stylesheet'">
51<!-- <link href="" rel="stylesheet" type="text/css" /> -->
52<link rel="preload" href="https://apartments.com.gh/oc-content/themes/wizestate/css/owl.carousel.min.css" as="style" 
53onload="this.rel='stylesheet'">
54<script type="text/javascript">
55    var osclasswizards = window.osclasswizards || {};
56    osclasswizards.base_url = 'https://apartments.com.gh/index.php';
57    osclasswizards.langs = {"delete":"Delete","cancel":"Cancel"};
58    osclasswizards.fancybox_prev = 'Previous image';
59    osclasswizards.fancybox_next = 'Next image';
60    osclasswizards.fancybox_closeBtn = 'Close';
61    osclasswizards.rtl_view = '0';
62</script>
62
63
64
65<!-- google adsense script -->
66<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-1850565371334252"
67crossorigin="anonymous"></script>
67
68<script src="https://analytics.ahrefs.com/analytics.js" data-key="dJv2A8WtBfpNVjQQRIAqoA" async></script>
68
69<!-- end  google adsense script -->
70
71<!--Ie Js-->
72<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
73<!--[if IE 7]>    <html class="no-js ie7 oldie" lang="en"> <![endif]-->
74<!--[if IE 8]>    <html class="no-js ie8 oldie" lang="en"> <![endif]-->
75<!--[if lt IE 9]>
76	
76<script src="https://html5shim.googlecode.com/svn/trunk/html5.js"></script>
76
77    <![endif]-->
78<link rel="preload" href="https://apartments.com.gh/oc-content/themes/wizestate/css/font-awesome/css/font-awesome.min.css" as="style" 
79onload="this.rel='stylesheet'">
80
81<meta name="generator" content="Osclass 3.8.0" /><meta name="robots" content="noindex, nofollow, noarchive" />
82<meta name="googlebot" content="noindex, nofollow, noarchive" />
83<link href="https://apartments.com.gh/oc-content/plugins/blog/css/user.css?v=20260924120722" rel="stylesheet" type="text/css" />
84<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" type="text/css" />
85<link href="//cdnjs.cloudflare.com/ajax/libs/lightgallery/1.6.11/css/lightgallery.min.css" rel="stylesheet" type="text/css" />
86<link href="https://apartments.com.gh/oc-content/themes/wizestate/css/swiper.min.css" rel="stylesheet" type="text/css" />
87<link href="https://apartments.com.gh/oc-content/themes/wizestate/css/jquery-ui-rangeSlider.css" rel="stylesheet" type="text/css" />
88<link href="https://apartments.com.gh/oc-content/themes/wizestate/css/style.css" rel="stylesheet" type="text/css" />
89<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/jquery.min.js"></script>
vendor: 1 bytes, line 89
89
90<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/lightgallery/1.6.11/js/lightgallery-all.min.js"></script>
vendor: 1 bytes, line 90
90
91<script type="text/javascript" src="https://apartments.com.gh/oc-content/plugins/blog/js/user.js?v=20260924120722"></script>
vendor: 1 bytes, line 91
91
92<script type="text/javascript" src="https://apartments.com.gh/oc-includes/osclass/assets/js/fineuploader/jquery.fineuploader.min.js"></script>
vendor: 1 bytes, line 92
92
93<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/jquery.fancybox.min.js"></script>
vendor: 1 bytes, line 93
93
94<script type="text/javascript" src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"></script>
vendor: 1 bytes, line 94
94
95<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/bootstrap-better-nav.js"></script>
vendor: 1 bytes, line 95
95
96<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/swiper.min.js"></script>
vendor: 1 bytes, line 96
96
97<script type="text/javascript" src="https://apartments.com.gh/oc-includes/osclass/assets/js/jquery.validate.min.js"></script>
vendor: 1 bytes, line 97
97
98<script type="text/javascript" src="https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
vendor: 1 bytes, line 98
98
99<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/global.js"></script>
vendor: 1 bytes, line 99
99
100<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/bootstrap.min.js"></script>
vendor: 1 bytes, line 100
100
101<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/respond.js"></script>
vendor: 1 bytes, line 101
101
102<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/library.js"></script>
vendor: 1 bytes, line 102
102
103<script type="text/javascript" src="https://apartments.com.gh/oc-content/themes/wizestate/js/owl.carousel.js"></script>
103
104
105<script type="application/ld+json">
106{
107"@context": "https://schema.org",
108"@graph": [
109{
110"@type": ["RealEstateAgent", "OnlineBusiness"],
111"@id": "https://apartments.com.gh/#organization",
112"name": "Apartments.com.gh",
113"description": "Apartments.com.gh is Ghana's number one property portal for apartment and house rentals, sales, short lets, rooms for rent, parking spots, commercial properties, land, and new off-plan developments across Accra, Kumasi, Tema, Takoradi, Aburi, Cape Coast, and other Ghanaian cities. Services include free property listing, a guaranteed rent scheme for landlords, a quick cash sale service, monthly rent payments, buy-to-let mortgages, an agent finder, contractor referrals, and managed short let bookings via book.apartments.com.gh. Accepts Ghanaian Cedis and US Dollars.",
114"url": "https://apartments.com.gh",
115"logo": "https://apartments.com.gh/oc-content/uploads/logo.png",
116"slogan": "The number one site for apartment rentals in Accra Ghana",
117"currenciesAccepted": "GHS, USD",
118"areaServed": [
119{"@type": "City", "name": "Accra", "containedInPlace": {"@type": "Country", "name": "Ghana"}},
120{"@type": "City", "name": "Kumasi", "containedInPlace": {"@type": "Country", "name": "Ghana"}},
121{"@type": "City", "name": "Tema", "containedInPlace": {"@type": "Country", "name": "Ghana"}},
122{"@type": "City", "name": "Takoradi", "containedInPlace": {"@type": "Country", "name": "Ghana"}},
123{"@type": "City", "name": "Aburi", "containedInPlace": {"@type": "Country", "name": "Ghana"}},
124{"@type": "City", "name": "Cape Coast", "containedInPlace": {"@type": "Country", "name": "Ghana"}},
125{"@type": "AdministrativeArea", "name": "Airport Residential Area, Accra"},
126{"@type": "AdministrativeArea", "name": "Cantonments, Accra"},
127{"@type": "AdministrativeArea", "name": "East Legon, Accra"},
128{"@type": "AdministrativeArea", "name": "Labone, Accra"},
129{"@type": "AdministrativeArea", "name": "Roman Ridge, Accra"},
130{"@type": "AdministrativeArea", "name": "Dzorwulu, Accra"},
131{"@type": "AdministrativeArea", "name": "Osu, Accra"}
132],
133"address": {"@type": "PostalAddress", "addressLocality": "Accra", "addressCountry": "GH"},
134"sameAs": ["https://apartments.ng", "https://book.apartments.com.gh"],
135"hasOfferCatalog": {
136"@type": "OfferCatalog",
137"name": "Apartments.com.gh Services",
138"itemListElement": [
139{"@type": "Offer", "itemOffered": {"@type": "Service", "name": "Property Listings Ghana — Residential, Rooms, Parking, Commercial, Land and Short Lets", "description": "Search and list 11 property types across Ghana: residential rentals, sales, short lets, rooms for rent, parking spots, commercial for rent and sale, land, land for sale, new build off-plan, and investment properties. Free listing for landlords and agents.", "url": "https://apartments.com.gh/search"}},
140{"@type": "Offer", "itemOffered": {"@type": "Service", "name": "Quick Sell — Cash Offer in 7 Days Ghana", "description": "Guaranteed cash purchase for Ghana property owners within 7 days for properties with clear title.", "url": "https://apartments.com.gh/sell_your_property_fast-p45"}},
141{"@type": "Offer", "itemOffered": {"@type": "Service", "name": "Guaranteed Rent Scheme for Landlords in Ghana", "description": "Guaranteed fixed rent with free property management for Ghana landlords. No voids, no commission.", "url": "https://apartments.com.gh/rent_guarantee_for_landlord-p27"}},
142{"@type": "Offer", "itemOffered": {"@type": "Service", "name": "Pay Rent Monthly in Ghana", "description": "Monthly rent payment service for employed tenants and companies in Ghana seeking long-term rentals.", "url": "https://apartments.com.gh/pay_rent_monthly-p26"}},
143{"@type": "Offer", "itemOffered": {"@type": "Service", "name": "Buy-to-Let Mortgage in Ghana", "description": "Mortgage application and facilitation for buyers purchasing residential or investment property in Ghana.", "url": "https://apartments.com.gh/apply_for_let_mortgage-p42"}},
144{"@type": "Offer", "itemOffered": {"@type": "Service", "name": "Agent Finder — Find a Local Estate Agent in Ghana", "description": "Directory matching property seekers with verified local real estate agents across Ghana by city and type.", "url": "https://apartments.com.gh/find_an_agent_in_ghana-p48"}},
145{"@type": "Offer", "itemOffered": {"@type": "Service", "name": "Contractor and Property Partner Referrals Ghana", "description": "Referral network for building contractors, maintenance professionals, and property service providers.", "url": "https://apartments.com.gh/become_a_partner-p49"}},
146{"@type": "Offer", "itemOffered": {"@type": "Service", "name": "Managed Short Lets — book.apartments.com.gh", "description": "Professionally managed short-let service for Ghana landlords. Bookings via book.apartments.com.gh.", "url": "https://book.apartments.com.gh"}},
147{"@type": "Offer", "itemOffered": {"@type": "Service", "name": "Free Property Listing for Ghana Landlords and Agents", "description": "List any property type on Apartments.com.gh at no cost. Posting takes under 2 minutes.", "url": "https://apartments.com.gh/item/new"}}
148]
149}
150},
151{
152"@type": "Apartment",
153"@id": "https://apartments.com.gh/embassy-gardens-p41",
154"name": "Embassy Gardens, Cantonments",
155"description": "Premium residential complex in Cantonments, Accra. Furnished studio, 1-bedroom, and 2-bedroom apartments for rent from $1,800 to $2,950 per month.",
156"address": {"@type": "PostalAddress", "streetAddress": "Fourth Circular Road, Cantonments", "addressLocality": "Accra", "addressCountry": "GH"},
157"url": "https://apartments.com.gh/embassy-gardens-p41"
158},
159{
160"@type": "Apartment",
161"@id": "https://apartments.com.gh/book_the_lennox_in_accra-p59",
162"name": "The Lennox, Airport Residential Accra",
163"description": "Serviced apartment complex in Airport Residential Area, Accra. Studio apartments available from $1,500 per month.",
164"address": {"@type": "PostalAddress", "addressLocality": "Airport Residential Area, Accra", "addressCountry": "GH"},
165"url": "https://apartments.com.gh/book_the_lennox_in_accra-p59"
166},
167{
168"@type": "WebSite",
169"@id": "https://apartments.com.gh/#website",
170"url": "https://apartments.com.gh",
171"name": "Apartments.com.gh",
172"description": "Ghana's number one site for apartment rentals, property sales, short lets, rooms, and real estate services in Accra, Kumasi, Tema, Takoradi, and across Ghana.",
173"publisher": {"@id": "https://apartments.com.gh/#organization"},
174"potentialAction": {"@type": "SearchAction", "target": "https://apartments.com.gh/search/pattern,{search_term_string}", "query-input": "required name=search_term_string"}
175},
176{
177"@type": "FAQPage",
178"mainEntity": [
179{"@type": "Question", "name": "What is Apartments.com.gh?", "acceptedA
179nswer": {"@type": "Answer", "text": "Apartments.com.gh is Ghana's number one property portal for apartment and house rentals, sales, short lets, rooms for rent, commercial properties, land, and off-plan developments across Accra, Kumasi, Tema, Takoradi, and other Ghanaian cities."}},
180{"@type": "Question", "name": "Can I list my property on Apartments.com.gh for free?", "acceptedAnswer": {"@type": "Answer", "text": "Yes. Landlords and agents can list any property type at no cost. Posting takes under 2 minutes at apartments.com.gh/item/new."}},
181{"@type": "Question", "name": "Does Apartments.com.gh offer guaranteed rent for Ghana landlords?", "acceptedAnswer": {"@type": "Answer", "text": "Yes. Apartments.com.gh offers a guaranteed fixed rent scheme for Ghana landlords with free property management included. No voids, no commission."}},
182{"@type": "Question", "name": "Can I find short-let apartments in Accra on Apartments.com.gh?", "acceptedAnswer": {"@type": "Answer", "text": "Yes. Short-let apartments are listed across Accra including Airport Residential, Cantonments, Osu, and East Legon. You can also book managed serviced apartments directly at book.apartments.com.gh."}},
183{"@type": "Question", "name": "Which cities does Apartments.com.gh cover?", "acceptedAnswer": {"@type": "Answer", "text": "Apartments.com.gh covers Accra, Kumasi, Tema, Takoradi, Aburi, Cape Coast, and other Ghanaian cities."}},
184{"@type": "Question", "name": "Can I pay rent monthly in Ghana through Apartments.com.gh?", "acceptedAnswer": {"@type": "Answer", "text": "Yes. Apartments.com.gh offers a monthly rent payment scheme for employed tenants and companies in Ghana. Apply at apartments.com.gh/pay_rent_monthly-p26."}},
185{"@type": "Question", "name": "Is Apartments.com.gh related to Apartments.ng?", "acceptedAnswer": {"@type": "Answer", "text": "Yes. Apartments.com.gh is the Ghana sister site to Apartments.ng, which covers Nigeria. Both platforms offer the same services but operate independently in their respective countries."}},
186{"@type": "Question", "name": "Can I book Embassy Gardens or The Lennox through Apartments.com.gh?", "acceptedAnswer": {"@type": "Answer", "text": "Yes. Apartments.com.gh has dedicated pages for Embassy Gardens in Cantonments (furnished studios from $1,800/month) and The Lennox in Airport Residential (studios from $1,500/month). Both can be browsed and enquired about directly on the site."}}
187]
188}
189]
190}
191</script>
191
192<link rel="stylesheet" href="https://apartments.com.gh/oc-content/themes/wizestate/css/custom-homepage.css">
193
194</head>
195
196
197<body class="login">
198   <header id="header" class="topbar">
199  <div class="wrap">
200      <div class="logo header_logo"><a href="https://apartments.com.gh/"><img border="0" alt="Apartments for Rent in Accra, Ghana | Apartments.com.gh" src="https://apartments.com.gh/oc-content/uploads/logo.png"></a></div>
201      <nav class="main" id="mainnav" aria-label="Primary">
202                <a class="" href="https://apartments.com.gh/sell_your_property_fast-p45">Quick Sell</a>
203                <a class="" href="https://apartments.com.gh/apply_for_let_mortgage-p42">Apartment Loans</a>
204        <a class="" href="https://apartments.com.gh/find_an_agent_in_ghana-p48">Agent Finder</a>
205                <a class="" href="https://apartments.com.gh/become_a_partner-p49">Contractors</a>
206        <!-- <a class="" href="https://book.apartments.com.gh/">Managed Short Lets</a> -->
207        <a class="" href="https://apartments.com.gh/managed-short-lets-p58">Managed Short Lets</a>
208                      </nav>
209
210      <div class="top-actions">
211                <a href="https://apartments.com.gh/user/login" class="btn btn-ghost">Log in</a>
212        
213                <a href="https://apartments.com.gh/item/new" class="btn btn-blue list_property">List Property for FREE</a>
214        
215        
216        <button type="button" class="menu-toggle" id="mobile_menu_btn" aria-expanded="false" aria-controls="mobile_main_menu">
217          <span class="icon-bar"></span>
218          <span class="icon-bar"></span>
219          <span class="icon-bar"></span>
220        </button>
221      </div>
222  </div>
223
224  <div class="mobile_main_menu" id="mobile_main_menu" style="display:none;">
225    <ul>
226        <li class=""><a href="https://apartments.com.gh/sell_your_property_fast-p45">Quick Sell</a></li>
227        <li class=""><a href="https://apartments.com.gh/apply_for_let_mortgage-p42">Apartment Loans</a></li>
228    <li class=""><a href="https://apartments.com.gh/find_an_agent_in_ghana-p48">Agent Finder</a></li>
229    <li class=""><a href="https://apartments.com.gh/become_a_partner-p49">Contractors</a></li>
230    <li class=""><a href="https://book.apartments.com.gh/">Managed Short Lets</a></li>
231
232        <li><a href="https://apartments.com.gh/item/new" class="list_property">List Property for FREE</a></li>
233                <li><a href="https://apartments.com.gh/user/login"><i class="fa fa-user" aria-hidden="true"></i> Login</a></li>
234          </ul>
235  </div>
236</header>
237
238<script type="text/javascript">
239  $("#mobile_menu_btn").click(function(){
240  $("#mobile_main_menu").toggle(300);
241});
242</script>
242
243<div id="login-page">
244
245
246  <div class="auth-card">
247
248    <!-- brand / value panel -->
249    <div class="brand-panel">
250        <div class="footer_logo" bis_skin_checked="1">
251          <a href="https://apartments.com.gh/">
252              <img border="0" alt="Apartments for Rent in Accra, Ghana | Apartments.com.gh" src="https://apartments.com.gh/oc-content/uploads/log-footer.png">
253          </a>       
254        </div>
255      
256      <div class="feats">
257        <h2>Welcome back.</h2>
258        <div class="feat"><span class="i">🏠</span><span><b>Manage your listings</b>Post, edit and track enquiries in one place.</span></div>
259        <div class="feat"><span class="i">❤</span><span><b>Saved properties</b>Pick up your search right where you left off.</span></div>
260        <div class="feat"><span class="i">💬</span><span><b>Your messages</b>Reply to agents, landlords and buyers.</span></div>
261      </div>
262    </div>
263
264    <!-- form panel -->
265    <div class="form-panel">
266      <h1>Log in</h1>
267      <p class="lead">Sign in to your Apartments Ghana account.</p>
268
269      
270      
271      <form action="https://apartments.com.gh/index.php" method="post" id="login_validate"><input type='hidden' name='CSRFName' value='CSRF1102128588_53637476' />
272        <input type='hidden' name='CSRFToken' value='b267d289abb3e65cbe7d668d79b58ced28fcab22d2f0d178749df55db8cfa7313bd028e28d0971f3cbae9564100aba3ea5e2a88d760c526fd0f8f7a767df94cf' />
273        <input type="hidden" name="page" value="login" />
274        <input type="hidden" name="action" value="login_post" />
275        <ul id="error_list"></ul>
276
277        <div class="field">
278          <label for="email">E-mail <sup>*</sup></label>
279          <input id="email" type="text" name="email" value="" />        </div>
280
281        <div class="field">
282          <label for="password">Password <sup>*</sup></label>
283          <div class="pw-wrap">
284            <input id="password" type="password" name="password" value="" autocomplete="off" />            <button type="button" class="pw-toggle" id="pwToggle" aria-label="Show password">Show</button>
285          </div>
286        </div>
287
288        <div class="row-between">
289          <label class="remember">
290            <input id="remember" type="checkbox" name="remember" value="1" />            Remember me          </label>
291          <a class="forgot" href="https://apartments.com.gh/user/recover">Forgot password?</a>
292        </div>
293
294        <!-- reCAPTCHA disabled to match current site config; re-enable osc_show_recaptcha('login') if turned on -->
295        <p id="grerror_list" class="error" style="color:#c0392b;font-size:.82rem;"></p>
296
297        <button type="submit" class="btn btn-blue btn-submit">Log in</button>
298      </form>
299
300      <div class="divider">New here?</div>
301      <p class="register-row">
302        Don't have an account?        <a href="https://apartments.com.gh/user/register">Register for free</a>
303      </p>
304
305      <p class="secure-note">🔒 Your connection to Apartments Ghana is secure.</p>
306    </div>
307
308  </div>
309</div><!-- /#login-page -->
310
311<!--</div>
312</div>
313</div>-->
314<script type="text/javascript">
315   $(".le").addClass('hide-text');
316setTimeout(function() {
317    $(".le").removeClass('hide-text');
318},3000);
319</script>
319
320<footer class="footerMain" style="display: none;">
321  <div class="container">
322  	<div class="logo_icon_section">
323  		<div class="row">
324  			<div class="col-sm-6">
325  				<div class="footer_logo">
326  					<!-- < ?php echo logo_header();?> -->
327            <a class="logo" href="https://apartments.com.gh/"><span class="word">apartments</span><span class="country">GHANA</span></a>
328
329  				</div>
330  			</div>
331  			<div class="col-sm-6">
332  				<div class="social_icon">
333  					<ul>
334  						<li>
335  							<a href="https://www.facebook.com/apartments.com.gh" target="_blank"><i class="fa fa-facebook"></i></a> 
336  						</li>
337  						<li>
338  							<a href="#" target="_blank"><i class="fa fa-instagram"></i></a> 
339  						</li>
340  						<li>
341  							<a href="https://twitter.com/apartmentscom" target="_blank"><i class="fa fa-twitter"></i></a> 
342  						</li>
343  						<li>
344  							<a href="https://linkedin.com/company/apartments-com" target="_blank"><i class="fa fa-linkedin"></i></a>
345  						</li>
346  					</ul>
347  				</div>
348  			</div>
349  		</div>
350  	</div>
351
352   <div class="footer_bottom_section">
353   	<div class="row">
354   		<div class="col-sm-3">
355   			<div class="sign_up_sec">
356   				<h4>The number one site for apartment rentals in Accra Ghana</h4>
357   				<p>Enjoy a pleasant life in the wealthiest country in Africa by owning your own home. It has never been so easy, just fill out this one-time form and we can get started for you.</p>
358   				         <form action="https://apartments.com.gh/" method="post" name="signup_form"><input type='hidden' name='CSRFName' value='CSRF1102128588_53637476' />
359        <input type='hidden' name='CSRFToken' value='b267d289abb3e65cbe7d668d79b58ced28fcab22d2f0d178749df55db8cfa7313bd028e28d0971f3cbae9564100aba3ea5e2a88d760c526fd0f8f7a767df94cf' /><input type='hidden' name='CSRFName' value='CSRF1102128588_53637476' />
360        <input type='hidden' name='CSRFToken' value='b267d289abb3e65cbe7d668d79b58ced28fcab22d2f0d178749df55db8cfa7313bd028e28d0971f3cbae9564100aba3ea5e2a88d760c526fd0f8f7a767df94cf' />
361                    <div class="fielderror" id="fielderror"></div>
362          <div class="input-group">
363            <input type="text" class="form-control first" name="user_email" placeholder="Enter Email Address">
364            <span class="input-group-btn">
365            <button class="btn btn-default" type="submit" name="submit_signup">Join</button>
366            </span> </div>
367        </form>
368   			</div>
369   		</div>
370   		<div class="col-sm-3">
371   			<div class="list_area">
372   				<ul>
373   					<li>
374   						<a href='https://apartments.com.gh/search/pattern,East Ridge'>Apartment to rent in East Ridge</a>
375   					</li>
376   					<li>
377   						<a href='https://apartments.com.gh/search/pattern,West Ridge'>Apartment to rent in West Ridge</a>
378   					</li>
379   					<li>
380   						<a href='https://apartments.com.gh/search/pattern,airport residential'>Apartment to rent in Airport Residential Area</a>
381   					</li>
382   					<li>
383   						<a href='https://apartments.com.gh/search/pattern,Roman Ridge'>Apartment to rent in Roman Ridge</a>
384   					</li>
385   					<li>
386   						<a href='https://apartments.com.gh/search/pattern,dzorwulu'>Apartment to rent in Dzorwulu</a>
387   					</li>
388   					<li>
389   						<a href='https://apartments.com.gh/search/pattern,East Legon'>Apartment to rent in East Legon</a>
390   					</li>
391   					<li>
392   						<a href='https://apartments.com.gh/search/pattern,Cantonments'>Apartment to rent in Cantonments</a>
393   					</li>
394   					<li>
395   						<a href='https://apartments.com.gh/search/pattern,"Labone"'>Apartment to rent in Labone</a>
396   					</li>
397   					<li>
398   						<a href='https://apartments.com.gh/search/pattern,airport hills'>Apartment to rent in Airport Hills</a>
399   					</li>
400            <li>
401              <a href='https://apartments.ng/'>Apartment to rent in Nigeria</a>
402            </li>
403   				</ul>
404   			</div>
405   		</div>
406   		<div class="col-sm-3">
407   			<div class="footer_advertising">
408              <ul>
409                <li><a href="https://apartments.com.gh/advertise_with_apartment_ghana-p54">Advertise</a></li>
410                <li><a href="https://apartments.com.gh/item/new">Add a Listing</a></li>
411                <li><a href="https://apartments.com.gh/community_forum-p55">Community Voice</a></li>
412                <li><a href="https://apartments.com.gh/become_a_partner-p49">Become a Partner</a></li>
413                <li><a href="https://apartments.com.gh/blog/">Blog</a></li>
414				<li><a href="https://apartments.com.gh/property-types-p61/">Property Types</a></li>
415				<li><a href="https://apartments.com.gh/cities-p62/">Cities</a></li>
416				<li><a href="https://apartments.com.gh/regions-p63/">Regions</a></li>
417
418              </ul>
419            </div>
420
421            <div class="footer_development">
422              <ul>
423                <li><a href='https://apartments.com.gh/search/pattern,embassy gardens'>Embassy Gardens - Cantonments</a></li>
424                <li><a href='https://apartments.com.gh/search/pattern,the gallery'>The Gallery - Tetteh Quarshie</a></li>
425                <li><a href='https://apartments.com.gh/search/pattern,"the+ivy"'>The Ivy - East Legon</a></li>
426                <li><a href='https://apartments.com.gh/search/pattern,"jaria"'>Jaria Apartments - Dzorwulu</a></li>
427              </ul>
428            </div>
429   		</div>
430   		<div class="col-sm-3">
431   			<div class="footer_about_us">
432              <ul>
433                <!-- <li><a href="/#" title="About Apartments.com">About Us</a></li> -->
434                <li><a href="https://apartments.com.gh/join_us_and_become_the_trusted_go_to_agent-p47" title="Job Opportunities at Apartments.com">Careers</a></li>
435                <!-- <li><a href="/#" title="Contact Apartments.com">Contact Us</a></li> -->
436                <li><a href="/#">Terms of Service</a></li>
437                <li><a href="/#">Privacy Statement</a></li>
438                <li><a href="https://apartments.com.gh/rent_guarantee_for_landlord-p27">Rent Guarantee for Landlord</a></li>
439                <li><a href="https://apartments.com.gh/pay_rent_monthly-p26">Pay your rent monthly in Ghana</a></li>
440                <li><a href="https://apartments.com.gh/embassy-gardens-p41">Book Embassy Gardens in Accra</a></li>
441                <li><a href="https://apartments.com.gh/book_the_lennox_in_accra-p59">Book The Lennox in Accra</a></li>
442                <li><a href="https://apartments.com.gh/apply_for_let_mortgage-p42">Buy to Let Mortgage in Ghana</a></li>
443                <li><a href="https://apartments.com.gh/item/new">List Property for FREE</a></li>
444                <li><a href="https://apartments.com.gh/land-verification-in-ghana">Land Verification in Ghana</a></li>
445				<li><a href="https://apartments.com.gh/independent-property-inspection-and-verfication-p66">
445Independent Property Inspection & Verfication in Ghana</a></li>
446                <li><a href="https://apartments.com.gh/property-photography-in-ghana-p67">Property Photography in Ghana</a></li>
447              </ul>
448            </div>
449   		</div>
450   	</div>
451   </div>
452
453   <div>© 2026 Apartments.com.gh</div>
454
455  </div>
456</footer>
457<footer class="footerMain">
458  <div class="container">
459    <div class="foot-grid">
460
461      <div class="foot-brand">
462        <div class="footer_logo">
463          <a href="https://apartments.com.gh/">
464                    <img border="0" alt="Apartments for Rent in Accra, Ghana | Apartments.com.gh" src="https://apartments.com.gh/oc-content/uploads/log-footer.png">
465                </a>        </div>
466
467                <div class="sign_up_sec">
468          <!-- <h4>< ?php echo _e('The number one site for apartment rentals in Accra Ghana',OSCLASSWIZARDS_THEME_FOLDER); ?></h4> -->
469          <p>Enjoy a pleasant life in the wealthiest country in Africa by owning your own home. It has never been so easy, just fill out this one-time form and we can get started for you.</p>
470          <form action="https://apartments.com.gh/" method="post" name="signup_form"><input type='hidden' name='CSRFName' value='CSRF1102128588_53637476' />
471        <input type='hidden' name='CSRFToken' value='b267d289abb3e65cbe7d668d79b58ced28fcab22d2f0d178749df55db8cfa7313bd028e28d0971f3cbae9564100aba3ea5e2a88d760c526fd0f8f7a767df94cf' /><input type='hidden' name='CSRFName' value='CSRF1102128588_53637476' />
472        <input type='hidden' name='CSRFToken' value='b267d289abb3e65cbe7d668d79b58ced28fcab22d2f0d178749df55db8cfa7313bd028e28d0971f3cbae9564100aba3ea5e2a88d760c526fd0f8f7a767df94cf' />
473                        <div class="fielderror" id="fielderror"></div>
474            <div class="input-group">
475              <input type="text" class="form-control first" name="user_email" placeholder="Enter Email Address">
476              <span class="input-group-btn">
477              <button class="btn btn-default" type="submit" name="submit_signup">Join</button>
478              </span> </div>
479          </form>
480        </div>
481
482        <div class="socials">
483          <a href="https://www.facebook.com/apartments.com.gh" target="_blank" aria-label="Facebook"><i class="fa fa-facebook"></i></a>
484          <a href="#" target="_blank" aria-label="Instagram"><i class="fa fa-instagram"></i></a>
485          <a href="https://twitter.com/apartmentscom" target="_blank" aria-label="Twitter"><i class="fa fa-twitter"></i></a>
486          <a href="https://linkedin.com/company/apartments-com" target="_blank" aria-label="LinkedIn"><i class="fa fa-linkedin"></i></a>
487        </div>
488      </div>
489
490      <div class="foot-col">
491        <h4>Popular searches</h4>
492        <div class="list_area">
493          <ul>
494   					<li>
495   						<a href='https://apartments.com.gh/search/pattern,East Ridge'>Apartment to rent in East Ridge</a>
496   					</li>
497   					<li>
498   						<a href='https://apartments.com.gh/search/pattern,West Ridge'>Apartment to rent in West Ridge</a>
499   					</li>
500   					<li>
501   						<a href='https://apartments.com.gh/search/pattern,airport residential'>Apartment to rent in Airport Residential Area</a>
502   					</li>
503   					<li>
504   						<a href='https://apartments.com.gh/search/pattern,Roman Ridge'>Apartment to rent in Roman Ridge</a>
505   					</li>
506   					<li>
507   						<a href='https://apartments.com.gh/search/pattern,dzorwulu'>Apartment to rent in Dzorwulu</a>
508   					</li>
509   					<li>
510   						<a href='https://apartments.com.gh/search/pattern,East Legon'>Apartment to rent in East Legon</a>
511   					</li>
512   					<li>
513   						<a href='https://apartments.com.gh/search/pattern,Cantonments'>Apartment to rent in Cantonments</a>
514   					</li>
515   					<li>
516   						<a href='https://apartments.com.gh/search/pattern,"Labone"'>Apartment to rent in Labone</a>
517   					</li>
518   					<li>
519   						<a href='https://apartments.com.gh/search/pattern,airport hills'>Apartment to rent in Airport Hills</a>
520   					</li>
521            <li>
522              <a href='https://apartments.ng/'>Apartment to rent in Nigeria</a>
523            </li>
524   				</ul>
525        </div>
526      </div>
527
528      <div class="foot-col">
529        <h4>Explore</h4>
530        <div class="footer_advertising">
531          <ul>
532                <li><a href="https://apartments.com.gh/advertise_with_apartment_ghana-p54">Advertise</a></li>
533                <li><a href="https://apartments.com.gh/item/new">Add a Listing</a></li>
534                <li><a href="https://apartments.com.gh/community_forum-p55">Community Voice</a></li>
535                <li><a href="https://apartments.com.gh/become_a_partner-p49">Become a Partner</a></li>
536                <li><a href="https://apartments.com.gh/blog/">Blog</a></li>
537				<li><a href="https://apartments.com.gh/property-types-p61/">Property Types</a></li>
538				<li><a href="https://apartments.com.gh/cities-p62/">Cities</a></li>
539				<li><a href="https://apartments.com.gh/regions-p63/">Regions</a></li>
540
541              </ul>
542        </div>
543
544        <div class="footer_development">
545          <ul>
546                <li><a href='https://apartments.com.gh/search/pattern,embassy gardens'>Embassy Gardens - Cantonments</a></li>
547                <li><a href='https://apartments.com.gh/search/pattern,the gallery'>The Gallery - Tetteh Quarshie</a></li>
548                <li><a href='https://apartments.com.gh/search/pattern,"the+ivy"'>The Ivy - East Legon</a></li>
549                <li><a href='https://apartments.com.gh/search/pattern,"jaria"'>Jaria Apartments - Dzorwulu</a></li>
550              </ul>
551        </div>
552      </div>
553
554      <div class="foot-col">
555        <h4>Services &amp; company</h4>
556        <div class="footer_about_us">
557          <ul>
558                <!-- <li><a href="/#" title="About Apartments.com">About Us</a></li> -->
559                <li><a href="https://apartments.com.gh/join_us_and_become_the_trusted_go_to_agent-p47" title="Job Opportunities at Apartments.com">Careers</a></li>
560                <!-- <li><a href="/#" title="Contact Apartments.com">Contact Us</a></li> -->
561                <li><a href="https://apartments.com.gh/rent_guarantee_for_landlord-p27">Rent Guarantee for Landlord</a></li>
562                <li><a href="https://apartments.com.gh/pay_rent_monthly-p26">Pay your rent monthly in Ghana</a></li>
563                <li><a href="https://apartments.com.gh/embassy-gardens-p41">Book Embassy Gardens in Accra</a></li>
564                <li><a href="https://apartments.com.gh/book_the_lennox_in_accra-p59">Book The Lennox in Accra</a></li>
565                <li><a href="https://apartments.com.gh/apply_for_let_mortgage-p42">Buy to Let Mortgage in Ghana</a></li>
566                <li><a href="https://apartments.com.gh/item/new">List Property for FREE</a></li>
567				<li><a href="https://apartments.com.gh/land-verification-in-ghana-p65">Land Verification in Ghana</a></li>
568				<li><a href="https://apartments.com.gh/independent-property-inspection-and-verfication-p66">
568Independent Property Inspection & Verfication in Ghana</a></li>
569                <li><a href="https://apartments.com.gh/property-photography-in-ghana-p67">Property Photography in Ghana</a></li>
570              </ul>
571        </div>
572      </div>
573
574    </div>
575
576    <div class="foot-bottom">
577      <div>© 2026 Apartments.com.gh — All rights reserved. 
578	   &nbsp;&nbsp;<a href="https://apartments.com.gh/sitemap-p25">Sitemap</a>
579	  </div>
580	  
581      <div><a href="https://apartments.com.gh/terms-of-service-p34">Terms of Service</a> · <a href="https://apartments.com.gh/privacy-statement-p35">Privacy Statement</a></div>
582    </div>
583  </div>
584</footer>
585<span id="back-top"> <a href="#top"><i class="fa fa-chevron-up"></i></a> </span>
586<script type="text/javascript">
587 
588/*Wish List*/
589$('.wish_list_btn').on('click', function(){
590  $( this ).toggleClass( "add" );
591    var item_id = $(this).attr("value");
592    var user_id="0";
593    $.ajax({
594            type: "POST",
595            url: "https://apartments.com.gh/index.php?page=ajax&action=runhook&hook=wishlist&",
596            data:{item_id:item_id,user_id:user_id},
597            success: function(data){
598            }
599        });
600});
601/*Wish List End*/
602/*contact selle*/
603$('#contact_seller_btn').on('click', function(){
604  var item_email = $(this).attr("value");
605  var message=$("#message").val();
606  if(item_email==''){
607  var item_email=$("#item_email").val();
608  }
609  var seller_name=$("#seller_name").val();
610  var user_name="";
611  var user_email="";
612  var user_phone="";
613   $.ajax({
614            type: "POST",
615            url: "https://apartments.com.gh/index.php?page=ajax&action=runhook&hook=contact_form_email&",
616            data:{item_email:item_email,user_name:user_name,user_phone:user_phone,message:message,user_email:user_email,seller_name:seller_name},
617            success: function(data){
618              $("#success_msg1").css({display: "block"});
619              $('#success_msg1').delay(3000).fadeOut(300);
620              document.getElementById("item_contact_form_listing").reset();
621              $("#listingmodel").modal("hide");
622
623            }
624        });
625 
626});
627
628jQuery("#sRegion").change(function(){
629  var e = $("#sCitySelect").text();
630  $("#sCity").next().children(".select-box-label").text(e);
631  var i = $(this).val(),
632    t = osclasswizards.base_url + "?page=ajax&action=cities&regionId=" + i,
633    n = '<option value="" id="sCitySelect">' + e + "</option>";
634  "" != i && $.ajax({
635    type: "POST",
636    url: t,
637    dataType: "json",
638    success: function(e) {
639      var i = e.length;
640      if (i > 0) {
641        for (key in e) n += '<option value="' + e[key].s_name + '">' + e[key].s_name + "</option>";
642        $("#sCity").empty().html(n)
643      }
644    }
645  })
646 });
647 
648 jQuery("#sCategory").find("option").eq(1).remove();
649 jQuery("#catId").find("option").eq(1).remove();
650 jQuery(document).change(function(){
651    var selected_value = jQuery("#catId").next().find('.select-box-label').text();
652	var get_value = selected_value.match("Rent");
653	var short_let = selected_value.match("Short Lets");
654	if(get_value)
655	{
656		jQuery('.form-group-price').find(".control-label").text("Rent Per Month");
657	}else if(short_let)
658	{
659		jQuery('.form-group-price').find(".control-label").text("Price Per Night");
660	}
661	else
662	{
663		jQuery('.form-group-price').find(".control-label").text("Price");	
664	}
665 });
666
667	jQuery('#premiumListingsCarousel').owlCarousel({
668			navText: ["<i class='fa fa-chevron-left'></i>","<i class='fa fa-chevron-right'></i>"],
669			loop: true,
670			navs: false,
671			dots: true,
672			autoplay: true,
673			margin: 10,
674			autoplay: true,
675			autoplayTimeout: 12000,
676			responsiveClass: true,
677			responsive: {
678				320: {
679				  items: 1,
680				  nav: false,
681				},
682				800: {
683				  items: 1,
684				  nav: false,
685				},
686				992: {
687				  items: 1,
688				  nav: false,
689				},
690				1200: {
691				  items: 1,
692				  nav: false,
693				  margin: 30
694				}
695			}
696		});
697
698  jQuery('#premiumListingsCarousel1').owlCarousel({
699      navText: ["",""],
700      loop: true,
701      navs: false,
702      dots: true,
703      autoplay: true,
704      margin: 10,
705      autoplay: true,
706      autoplayTimeout: 3000,
707      responsiveClass: true,
708      responsive: {
709        320: {
710          items: 1,
711          nav: false,
712        },
713        800: {
714          items: 1,
715          nav: false,
716        },
717        992: {
718          items: 1,
719          nav: false,
720        },
721        1200: {
722          items: 1,
723          nav: false,
724          margin: 30
725        }
726      }
727    });
728	jQuery(window).load(function(e) {
729		var defaultoutheightimg = -1;
730		jQuery(".premiumListBox h4").each(function(index) {
731			if(jQuery(this).outerHeight() > defaultoutheightimg) 
732				defaultoutheightimg = jQuery(this).height(); 
733			});
734		jQuery(".premiumListBox h4").height(defaultoutheightimg);
735	});
736
737	
738jQuery.validator.setDefaults({
739    errorPlacement: function(error, element) {
740        if (element.attr("name") == "user_email" )  //Id of input field
741            error.appendTo('#fielderror');
742    }
743});	
744	
745		
746jQuery(document).ready(function(e) {
747	jQuery("form[name='signup_form']").validate({	
748			rules: {
749				user_email: {
750					required: true,
751					email: true
752		  },
753		},
754		messages: {
755      		user_email: "Please enter a valid email address"	
756		},
757		submitHandler: function(form) {
758      		form.submit();
759    	}
760	});
761	
762	jQuery('.other-country').css('display','none');
763	jQuery('.other-address').css('display','none');
764	
765	jQuery("#product-picker-form").validate({	
766	
767			rules: {
768				propertyvalue: "required",
769				loanamount: "required",
770				morgageyears: "required",
771				repaymentmothod: "required"	
772		},
773		messages: {
774      		propertyvalue: "Please enter property value",	
775			loanamount: "Please enter loan amount",
776			morgageyears: "Please enter mortgage years",
777			repaymentmothod: "Please select repayment method"
778		},
779		errorElement : 'div',
780    	errorLabelContainer: '.errorProductForm',
781		errorClass: "alert alert-danger",
782	});
783	
784	
785	jQuery("#application-form").validate({	
786			rules: {
787				appfirstname: "required",
788				appsurname: "required",
789				appfirstname1: "required",
790				appsurname1: "required",
791				appfirstname2: "required",
792				appsurname2: "required",
793					
794		},
795		messages: {
796      		appfirstname: "Please enter first applicant name",	
797			appsurname: "Please enter first applicant surname",	
798			appfirstname1: "Please enter second applicant name",	
799			appsurname1: "Please enter second applicant surname",
800			appfirstname2: "Please enter third applicant name",	
801			appsurname2: "Please enter third applicant surname",
802				
803		},
804		errorElement : 'div',
805    	errorLabelContainer: '.errorApplicationForm',
806		errorClass: "alert alert-danger",
807	});
808	
809	jQuery("#direct-user-registration").validate({	
810			rules: {
811				title: "required",
812				firstname: "required",
813				surname: "required",
814				telephone: "required",
815				email: "required",
816				confirmemail: "required",
817				terms: "required",	
818		},
819		messages: {
820      		title: "Please enter title applicant name",	
821			firstname: "Please enter firstname",	
822			surname: "Please enter surname",	
823			telephone: "Please enter telephone",
824			email: "Please enter email address",	
825			confirmemail: "Please enter confirmemail address",
826			terms: "Please check terms before you proceed"	
827		},
828		errorElement : 'div',
829    	errorLabelContainer: '.errorRegistrationForm',
830		errorClass: "alert alert-danger",
831		
832	});
833	
834	jQuery("#select-product").click(function(){
835		
836		jQuery("#product-picker-form").valid();
837		
838		var propertyvalue = jQuery('input[name="propertyvalue"]').val();
839		var loanamount = jQuery('input[name="propertyvalue"]').val();
840		var morgageyears = jQuery('input[name="morgageyears"]').val();
841		var repaymentmothod = jQuery('#forthsection').find('#repaymentmethod').val();
842		var addproductfee = jQuery('input[name="addproductfee"]:checked').val();
843		
844		if(jQuery("#propertyvalue").hasClass("valid") && jQuery("#loanamount").hasClass("valid") && jQuery("#morgageyears").hasClass("valid") && jQuery("#repaymentmethod").hasClass("valid")) 
845		{
846			jQuery('#forthsection').css('display','none');
847			jQuery('#fifthsection').css('display','block');			
848		}
849	});
850
851  // Web Price Filter
852	jQuery(function() {		
853		var minValue = 100;
854		var maxValue = 650000			
855        var options = 
856        {
857            range: true,
858            min: minValue,
859            max: maxValue,
860            values: [ 100, 650000 ],
861            slide: function( event, ui ) {
862                jQuery( "#amount" ).val( "$" + ui.values[ 0 ] + " - $" + ui.values[ 1 ] );
863            },
864			stop: function( event, ui ) {
865                  $( "#priceMin" ).val(ui.values[ 0 ]);
866            },
867			change: function( event, ui ) {
868                  $( "#priceMax" ).val(ui.values[ 1 ] );
869            } 
870        };
871
872        jQuery( "#slider-range" ).slider(options);
873        jQuery( "#amount" ).val( "$" + $( "#slider-range" ).slider( "values", 0 ) + " - $" + jQuery( "#slider-range" ).slider( "values", 1 ) );
874		
875    });
876	
877    jQuery('.reorder_link').on('click',function(){
878        jQuery(".qq-upload-list").sortable({ tolerance: 'pointer' });
879        jQuery('.reorder_link').html('save reordering');
880        jQuery('.reorder_link').attr("id","saveReorder");
881        jQuery('#reorderHelper').slideDown('slow');
882        jQuery('.image_link').attr("href","javascript:void(0);");
883        jQuery('.image_link').css("cursor","move");
884    
885	 	var mySite = window.mySite || {};
886     	mySite.base_url = 'https://apartments.com.gh/index.php';
887     	mySite.csrf_token = 'CSRFName=CSRF1102128588_53637476&CSRFToken=b267d289abb3e65cbe7d668d79b58ced28fcab22d2f0d178749df55db8cfa7313bd028e28d0971f3cbae9564100aba3ea5e2a88d760c526fd0f8f7a767df94cf';
888	
889        jQuery("#saveReorder").click(function( e ){
890			
891			var ajax_hook = 'updateImageOrder';
892			var url = mySite.base_url + '?page=ajax&action=runhook&hook='+ajax_hook+'&'+mySite.csrf_token;
893		
894				var h = [];
895                jQuery("#qq-upload-list1 li.qq-upload-success").each(function() {
896                    h.push($(this).attr('id'));
897				});
898                
899                jQuery.ajax({
900                    type: 'POST',
901					url: url,
902                    data: {ids: " " + h + ""},
903                    success: function(){
904                        //window.location.reload();
905                    }
906                });	
907                return false;
908            e.preventDefault();
909        });
910	});
911	
912	
913});
914
915jQuery(".filterText").click(function(e){
916	setTimeout(function(){
917		  jQuery("#slider-range").slider();
918	 }, 1500);		
919});
920
921jQuery('.submitmortgage').prop('disabled', true);
922jQuery('#secondsection').css('display','none');
923jQuery('#thirdsection').css('display','none');
924jQuery('#forthsection').css('display','none');
925jQuery('#fifthsection').css('display','none');
926jQuery('#sixthsection').css('display','none');
927jQuery('#notification-registration').css('display','none');
928jQuery('.failure-message').css('display','none');
929
930
931jQuery(".remorgagedradio").change(function(){
932	var remortgage = $(this).val();
933	if(remortgage == "Other")
934	{
935		jQuery('.other-address').css('display','block');
936	}
937	else
938	{
939		jQuery('.other-address').css('display','none');
940	}
941});
942
943jQuery(".residentradio").change(function(){
944	var residentradio = $(this).val();
945	if(residentradio == "N")
946	{
947		jQuery('.other-country').css('display','block');
948	}
949	else
950	{
951		jQuery('.other-country').css('display','none');
952	}
953});
954
955jQuery("#clearcalculation").click(function(){
956        jQuery(".product-picker-form").trigger("reset");
957    });
958
959/*jQuery('#goToLandingPage').click(function(){
960	jQuery('#secondsection').css('display','none');
961	jQuery('#firstsection').css('display','block');
962});*/
963jQuery('#step3').click(function(){
964	jQuery('#forthsection').css('display','none');
965	jQuery('#secondsection').css('display','block');
966	jQuery('.submitmortgage').prop('disabled', false);
967});
968jQuery('#step4').click(function(){
969	jQuery('#fifthsection').css('display','none');
970	jQuery('#forthsection').css('display','block');
971});
972
973jQuery('#cancelbutton').click(function(){
974	jQuery('#fifthsection').css('display','block');
975	jQuery('#sixthsection').css('display','none');
976});
977jQuery('#step6').click(function(){
978	jQuery('#sixthsection').css('display','block');
979	jQuery('#notification-registration').css('display','none');
980});
981
982
983jQuery('#propertyvalue').change(function(){
984	window.propvalue = ($(this).val()); 
985	
986	loanperccalc();
987});
988jQuery('#loanamount').change(function(){
989	window.loanval = ($(this).val()); 
990	//alert(propvalue);
991	//alert(loanval);
992	loanperccalc();
993	
994});
995
996jQuery("#morgageyears").change(function(){
997	var mortgageyears = $(this).val();
998	if(mortgageyears > 2)
999	{
1000		alert("Unfortunately, we offer a maximum of 2 years at any fixed period, after which you may refinance the loan.");
1001		jQuery(".select-product").attr("disabled", "disabled");
1002	}
1003	else
1004	{
1005		jQuery(".select-product").removeAttr("disabled", "disabled");
1006	}
1007});
1008
1009function loanperccalc(){
1010	//window.loanval = (jQuery(el).val());
1011	//window.propvalue = (jQuery(el).val());
1012	var result = parseFloat(loanval)*100 / parseFloat(propvalue);
1013	var perres = result.toFixed(2);
1014	if(perres > 60)
1015	{
1016		alert("We offer a maximum of 60% LTV, unfortunately we cannot proceed with your application");
1017		jQuery(".select-product").attr('disabled','disabled');	
1018	}
1019	else
1020	{
1021		jQuery(".select-product").removeAttr("disabled", "disabled");
1022	}
1023	//alert(result);
1024	if(loanval!="" && propvalue!="" && perres!="NaN")
1025	{
1026		jQuery("#loantovalue").val(perres + '%');
1027	}
1028	else
1029	{
1030		jQuery("#loantovalue").val('');
1031	}
1032}
1033
1034/*jQuery('.applynow').click(function(){
1035  //alert('hello');
1036	jQuery('#firstsection').css('display','none');
1037	jQuery('#secondsection').css('display','block');				 
1038});*/
1039/*jQuery('.Backtoquote').click(function(){
1040	jQuery('#secondsection').css('display','block');
1041	jQuery('#thirdsection').css('display','none');				 
1042});
1043jQuery('.submitmortgage').click(function(){
1044	jQuery('#secondsection').css('display','none');
1045	jQuery('#thirdsection').css('display','block');
1046	
1047	var resident = jQuery('input[name="resident"]:checked').val();
1048	var othercountry = jQuery('input[name="othercountry"]').val();
1049	var age = jQuery('input[name="age"]:checked').val();
1050	var income = jQuery('input[name="income"]:checked').val();
1051	var agreement = jQuery('input[name="agreement"]:checked').val();
1052	var member = jQuery('input[name="member"]:checked').val();
1053	var remorgaged = jQuery('.remorgagedradio').find('.select-box-label').text();
1054	var otheraddress = jQuery('input[name="otheraddress"]').val();
1055	var endterm = jQuery('input[name="end-term"]:checked').val();
1056		
1057	if(age == "Y" && income == "Y" && agreement == "Y" && member == "N" && endterm == "Y" )
1058	{
1059		jQuery("#applicationtypemodel").modal('show');
1060		jQuery('.failure-message').css('display','none');
1061	}
1062	else
1063	{
1064		jQuery('.failure-message').css('display','block');
1065	}
1066
1067});*/
1068jQuery("#btn-proceed").click(function(){
1069	 jQuery("#applicationtypemodel").modal('hide');
1070	 jQuery('#thirdsection').css('display','none');
1071	 jQuery('#forthsection').css('display','block');	
1072});
1073jQuery("#calculatevalue").click(function(){
1074	var propertyvalue = jQuery("#propertyvalue").val();
1075	var loanamount = jQuery("#loanamount").val();
1076	var ltv = jQuery("#loantovalue").val().replace('%', '');
1077	var term = jQuery("#morgageyears").val();
1078	var termyear =  jQuery("#morgageyears").val()*12;
1079	var paymethod = jQuery("#repaymentmethod").val();
1080	if(propertyvalue!="" && loanamount!="" && term!="" && paymethod!="" )
1081	{
1082		if($.isNumeric(propertyvalue) == false)
1083		{
1084			alert("Please enter numeric value for Property field.");	
1085		}
1086		if($.isNumeric(loanamount) == false)
1087		{
1088			alert("Please enter numeric value for Loan Amount field.");	
1089		}
1090		var beforetext = "Based on your repayment method your required loan will require a monthly payment of ";
1091		var afterrepay = "This will be a total of "+termyear+" monthly payments, after which all interest and principal will be paid in full.";
1092		var afterint = "This will be a total of "+termyear+" monthly payments, upon the final payment you will be required to pay the principal loan amount of "+"$"+loanamount+" in full.";
1093	}
1094	else
1095	{
1096		alert("Please fill all required value before proceed to the calculations.");
1097		var beforetext = "";
1098		var afterrepay = "";
1099		var afterint = "";
1100	}
1101	if(ltv > 60 && term > 2)
1102	{
1103		alert("Please adjust your Loan amount and/or mortgage term before we can proceed with your application.");
1104	}
1105	else
1106	{
1107		if(paymethod == 'repayment')
1108		{
1109			var calloan = parseFloat(loanamount)*15/100;
1110			var morgterm = parseFloat(loanamount)/term;
1111			var finalcal = (parseFloat(calloan)+parseFloat(morgterm))/12;
1112			if(calloan!="" && morgterm!="")
1113			{
1114				if(isNaN(finalcal))
1115				{
1116					jQuery(".calculation").html("");	
1117				}
1118				else
1119				{
1120					jQuery(".calculation").html(beforetext+" "+"<b>"+"$"+finalcal.toFixed(2)+"</b>"+". "+afterrepay);	
1121				}	
1122			}	
1123		}
1124		if(paymethod == 'interest-only')
1125		{
1126			var calloanint = parseFloat(loanamount)*15/100;
1127			var finalcal1 = parseFloat(calloanint)/12;
1128			jQuery(".calculation").html(beforetext+" "+"<b>"+"$"+finalcal1.toFixed(2)+"</b>"+". "+afterint);		
1129		}	
1130	}
1131});
1132
1133document.getElementById('AddApplicant').onclick = duplicate;
1134//jQuery('body').on('click', ".removeapplicant", remove);
1135
1136var i = 0;
1137var original = document.getElementById('applicant');
1138var appcont = document.getElementById("applicant-container");
1139var count = 1;
1140
1141function duplicate() {
1142 
1143	if (count < 3) {
1144        var clone = original.cloneNode(true);
1145		clone.id = "applicant" + ++i;
1146		appcont.append(clone);
1147		jQuery('.appfirstname_class', clone).attr({name:'appfirstname' + count,id:'appfirstname'+ count});
1148		jQuery('.appsurname_class', clone).attr({name:'appsurname' + count,id:'appsurname'+ count});
1149        count++;
1150    } else {
1151        alert("Sorry, you can only add 3 applicant.");
1152    }
1153}
1154
1155/*function remove() {	
1156    if (count > 1) {
1157        if ($(this).parent().attr('id') != 'applicant') {
1158            $(this).parent().remove();
1159            count--;
1160        } else {
1161            alert("You can't delete the first applicant");
1162        }
1163    }
1164	} else {
1165        alert("You can't delete the first applicant");
1166    }
1167}*/
1168
1169
1170jQuery("#btnFees").click(function(){
1171	
1172	jQuery("#application-form").valid();
1173	
1174	if(jQuery("#appfirstname").hasClass("valid") && jQuery("#appsurname").hasClass("valid"))
1175	{
1176		 jQuery("#fifthsection").css('display','none');
1177		 jQuery('#sixthsection').css('display','block');
1178	}
1179		
1180});
1181
1182/* Script for send application form with all details to admin */
1183
1184/*jQuery("#userRegister").click(function(){
1185	
1186	jQuery(".mailaddress").html(jQuery("#email").val());
1187	jQuery("#direct-user-registration").valid();
1188	
1189	var mySite = window.mySite || {};
1190	mySite.base_url = 'https://apartments.com.gh/index.php';
1191	mySite.csrf_token = 'CSRFName=CSRF1102128588_53637476&CSRFToken=b267d289abb3e65cbe7d668d79b58ced28fcab22d2f0d178749df55db8cfa7313bd028e28d0971f3cbae9564100aba3ea5e2a88d760c526fd0f8f7a767df94cf';
1192	var ajax_hook = 'ajax_form_data';
1193	
1194	var resident = jQuery('input[name="resident"]:checked').val();
1195	var othercountry = jQuery('input[name="othercountry"]').val();
1196	var age = jQuery('input[name="age"]:checked').val();
1197	var income = jQuery('input[name="income"]:checked').val();
1198	var agreement = jQuery('input[name="agreement"]:checked').val();
1199	var member = jQuery('input[name="member"]:checked').val();
1200	var remorgaged = jQuery('.remorgagedradio').find('.select-box-label').text();
1201	var otheraddress = jQuery('input[name="otheraddress"]').val();
1202	var endterm = jQuery('input[name="end-term"]:checked').val();
1203	
1204	var title = jQuery('#sixthsection').find('#title').val();
1205	var firstname = jQuery('input[name="firstname"]').val();
1206	var surname = jQuery('input[name="surname"]').val();
1207	var telephone = jQuery('input[name="telephone"]').val();
1208	var email = jQuery('input[name="email"]').val();
1209	var cemail = jQuery('input[name="confirmemail"]').val();
1210	var completed = jQuery('input[name="registrationcompleted"]').val();
1211	var resend = jQuery('input[name="resendbutton"]').val();
1212	
1213	var applicationtype = jQuery('input[name="applicationtype"]:checked').val();
1214	
1215	var propertyvalue = jQuery('input[name="propertyvalue"]').val();
1216	var loanamount = jQuery('input[name="loanamount"]').val();
1217	var morgageyears = jQuery('input[name="morgageyears"]').val();
1218	var repaymentmothod = jQuery('#forthsection').find('#repaymentmethod').val();
1219	var addproductfee = jQuery('input[name="addproductfee"]:checked').val();
1220	
1221	
1222	var firstappname = jQuery('input[name="appfirstname"]').val();
1223	var firstappsname = jQuery('input[name="appsurname"]').val();
1224	var secondappname = jQuery('input[name="appfirstname1"]').val();
1225	var secondappsname = jQuery('input[name="appsurname1"]').val();
1226	var thirdappname = jQuery('input[name="appfirstname2"]').val();
1227	var thirdappsname = jQuery('input[name="appsurname2"]').val();
1228	var addtoloan = jQuery('input[name="addtoloan"]:checked').val();
1229	
1230	if(email != cemail)
1231	{
1232		alert("email and confirm email should be same.");
1233		return;
1234	}
1235		
1236	var data = {
1237			resident:resident,
1238			othercountry:othercountry,
1239			age:age,
1240			income:income,
1241			agreement:agreement,
1242			member:member,
1243			remorgaged:remorgaged,
1244			otheraddress:otheraddress,
1245			endterm:endterm,
1246			applicationtype:applicationtype,
1247			propertyvalue:propertyvalue,
1248			loanamount:loanamount,
1249			morgageyears:morgageyears,
1250			repaymentmothod:repaymentmothod,
1251			addproductfee:addproductfee,
1252			firstappname:firstappname,
1253			firstappsname:firstappsname,
1254			secondappname:secondappname,
1255			secondappsname:secondappsname,
1256			thirdappname:thirdappname,
1257			thirdappsname:thirdappsname,
1258			addtoloan:addtoloan,
1259			title : title,
1260			firstname : firstname,
1261			surname : surname,
1262			telephone : telephone,
1263			email : email,
1264			completed: completed,
1265			resend:resend
1266			
1267		};
1268		
1269		if(jQuery("#firstname").hasClass("valid") && jQuery("#surname").hasClass("valid") && jQuery("#telephone").hasClass("valid") && jQuery("#email").hasClass("valid") )
1270		{
1271			var url = mySite.base_url + '?page=ajax&action=runhook&hook='+ajax_hook+'&'+mySite.csrf_token;
1272			$.ajax({
1273					type: 'POST',
1274					dataType: 'json',
1275					data: data,
1276					url: url
1277				}).done(function (data) {
1278					console.log(data);
1279					
1280		 	});
1281		 	jQuery('#sixthsection').css('display','none');
1282		 	jQuery('#notification-registration').css('display','block');
1283		}
1284});*/
1285
1286/* Script for resend application form */
1287
1288/*jQuery("#resend").click(function(){
1289	
1290	var mySite = window.mySite || {};
1291	mySite.base_url = 'https://apartments.com.gh/index.php';
1292	mySite.csrf_token = 'CSRFName=CSRF1102128588_53637476&CSRFToken=b267d289abb3e65cbe7d668d79b58ced28fcab22d2f0d178749df55db8cfa7313bd028e28d0971f3cbae9564100aba3ea5e2a88d760c526fd0f8f7a767df94cf';
1293	var ajax_hook = 'ajax_form_data';
1294	
1295	var resident = jQuery('input[name="resident"]:checked').val();
1296	var othercountry = jQuery('input[name="othercountry"]').val();
1297	var age = jQuery('input[name="age"]:checked').val();
1298	var income = jQuery('input[name="income"]:checked').val();
1299	var agreement = jQuery('input[name="agreement"]:checked').val();
1300	var member = jQuery('input[name="member"]:checked').val();
1301	var remorgaged = jQuery('.remorgagedradio').find('.select-box-label').text();
1302	var otheraddress = jQuery('input[name="otheraddress"]').val();
1303	var endterm = jQuery('input[name="end-term"]:checked').val();
1304	
1305	var title = jQuery('#sixthsection').find('#title').val();
1306	var firstname = jQuery('input[name="firstname"]').val();
1307	var surname = jQuery('input[name="surname"]').val();
1308	var telephone = jQuery('input[name="telephone"]').val();
1309	var email = jQuery('input[name="email"]').val();
1310	var cemail = jQuery('input[name="confirmemail"]').val();
1311	var completed = jQuery('input[name="registrationcompleted"]').val();
1312	var resend = jQuery('input[name="resendbutton"]').val();
1313	
1314	var applicationtype = jQuery('input[name="applicationtype"]:checked').val();
1315	
1316	var propertyvalue = jQuery('input[name="propertyvalue"]').val();
1317	var loanamount = jQuery('input[name="loanamount"]').val();
1318	var morgageyears = jQuery('input[name="morgageyears"]').val();
1319	var repaymentmothod = jQuery('#forthsection').find('#repaymentmethod').val();
1320	var addproductfee = jQuery('input[name="addproductfee"]:checked').val();
1321	
1322	
1323	var firstappname = jQuery('input[name="appfirstname"]').val();
1324	var firstappsname = jQuery('input[name="appsurname"]').val();
1325	var secondappname = jQuery('input[name="appfirstname1"]').val();
1326	var secondappsname = jQuery('input[name="appsurname1"]').val();
1327	var thirdappname = jQuery('input[name="appfirstname2"]').val();
1328	var thirdappsname = jQuery('input[name="appsurname2"]').val();
1329	var addtoloan = jQuery('input[name="addtoloan"]:checked').val();
1330	
1331	if(email != cemail)
1332	{
1333		alert("email and confirm email should be same.");
1334		return;
1335	}
1336		
1337	var data = {
1338			resident:resident,
1339			othercountry:othercountry,
1340			age:age,
1341			income:income,
1342			agreement:agreement,
1343			member:member,
1344			remorgaged:remorgaged,
1345			otheraddress:otheraddress,
1346			endterm:endterm,
1347			applicationtype:applicationtype,
1348			propertyvalue:propertyvalue,
1349			loanamount:loanamount,
1350			morgageyears:morgageyears,
1351			repaymentmothod:repaymentmothod,
1352			addproductfee:addproductfee,
1353			firstappname:firstappname,
1354			firstappsname:firstappsname,
1355			secondappname:secondappname,
1356			secondappsname:secondappsname,
1357			thirdappname:thirdappname,
1358			thirdappsname:thirdappsname,
1359			addtoloan:addtoloan,
1360			title : title,
1361			firstname : firstname,
1362			surname : surname,
1363			telephone : telephone,
1364			email : email,
1365			completed: completed,
1366			resend:resend
1367			
1368		};
1369		var url = mySite.base_url + '?page=ajax&action=runhook&hook='+ajax_hook+'&'+mySite.csrf_token;
1370		$.ajax({
1371					type: 'POST',
1372					dataType: 'json',
1373					data: data,
1374					url: url
1375				}).done(function (data) {
1376					console.log(data);
1377					
1378		 });
1379		
1380});*/
1381
1382/* Script for get mortgage quote(step 2) */
1383
1384/*jQuery(".forminputcommon1").change(function() {
1385    var names = {};
1386    jQuery('.form-radio-button').each(function() {
1387        names[jQuery(this).attr('name')] = true;
1388    });
1389    var count = 0;
1390    jQuery.each(names, function() { 
1391		count++;
1392    });
1393    if (jQuery('.forminputcommon1:checked').length === count) {
1394        jQuery('.submitmortgage').prop('disabled', false);
1395    }
1396	else{
1397        jQuery('.submitmortgage').prop('disabled', true);
1398	}
1399}).change();
1400
1401jQuery(".formSelectCommon").change(function() {
1402    var names = {};
1403    jQuery('.form-radio-button').each(function() {
1404        names[jQuery(this).attr('name')] = true;
1405    });
1406    var count = 0;
1407    jQuery.each(names, function() { 
1408        count++;
1409    });
1410	if (jQuery('.forminputcommon1:checked').length === count) {
1411        jQuery('.submitmortgage').prop('disabled', false);
1412    }
1413	else{
1414        jQuery('.submitmortgage').prop('disabled', true);
1415	}
1416});*/
1417
1418</script>
1418
1419
1420
1421<script>
1422function fetchRandomProducts() {
1423    const apiUrl = 'https://wigmorewholesale.com/index.php?route=api/random_product'; // Your API URL
1424
1425    $.ajax({
1426        url: apiUrl,
1427        method: 'GET',
1428        dataType: 'json',
1429        success: function(products) {
1430            const $randomList = $('.random-list');
1431            $randomList.empty();
1432            $.each(products.data, function(index, product) {
1433              const productHTML = `
1434                    <div class="item"><div class="random-product">
1435                      <a href="${product.href}" target="_blank">
1436                          <img src="${product.image}" alt="${product.name}" class="img-fluid" />
1437                          <h6>${product.name}</h6>
1438                      </a>
1439                      <div class="see-more-category">See more in 
1440                        <a href="${product.main_category_href}" target="_blank"> ${product.main_category_name}</a>
1441                      </div>
1442                      <p>${product.price}</p>
1443                    </div></div>
1444              `;
1445              $randomList.append(productHTML);
1446            });
1447            $('.random-list-main').fadeIn();
1448            // Initialize Slick Slider after products are appended
1449            /*$('.random-list').slick({
1450                infinite: true,
1451                slidesToShow: 3,
1452                slidesToScroll: 3,
1453                prevArrow: false,
1454                nextArrow: false,
1455                dots: true,
1456                responsive: [
1457                    {
1458                        breakpoint: 1024,
1459                        settings: {
1460                            slidesToShow: 2,
1461                            slidesToScroll: 2
1462                        }
1463                    },
1464                    {
1465                        breakpoint: 600,
1466                        settings: {
1467                            slidesToShow: 1,
1468                            slidesToScroll: 1
1469                        }
1470                    },
1471                    {
1472                        breakpoint: 480,
1473                        settings: {
1474                            slidesToShow: 1,
1475                            slidesToScroll: 1
1476                        }
1477                    }
1478                ]
1479            });*/
1480
1481          
1482          jQuery('.random-list').owlCarousel({
1483            loop: true,
1484            navs: false,
1485            dots: true,
1486            autoplay: true,
1487            margin: 0,
1488            autoplay: true,
1489            autoplayTimeout: 3000,
1490            responsiveClass: true,
1491            items : 3,
1492            responsive: {
1493              320: {
1494                items: 1,
1495                nav: false,
1496              },
1497              800: {
1498                items: 1,
1499                nav: false,
1500              },
1501              992: {
1502                items: 3,
1503                nav: false,
1504              },
1505              1200: {
1506                items: 3,
1507                nav: false,
1508                margin: 0
1509              }
1510            }
1511          });
1512
1513
1514
1515
1516
1517        },
1518        error: function(error) {
1519            console.error('Error fetching products:', error); // Handle errors
1520        }
1521    });
1522}
1523$(document).ready(function() {
1524    fetchRandomProducts(); // Fetch and display random products
1525});
1526
1527</script>
1527
1528
1529<script src="https://my.hellobar.com/31d05a2d2ffed1093e4039c0723f2a594d46727a.js" type="text/javascript" charset="utf-8" async="async"> </script>
1529
1530
1531<!-- This site is converting visitors into subscribers and customers with TrustPulse - https://trustpulse.com -->
1532<script type="text/javascript" src="https://a.trstplse.com/app/js/api.min.js" data-account="6939" async></script>
1532
1533<!-- / TrustPulse -->
1534</body>
1535</html>
1536<script type="text/javascript">
1537    $(document).ready(function () {
1538        $("#login_validate").validate({
1539            rules: {
1540                email: {
1541                    required: true,
1542                    email: true
1543                },
1544                password: {
1545                    required: true
1546                }
1547            },
1548            messages: {
1549                email: {
1550                    required: "Email: this field is required.",
1551                    email: "Invalid email address."
1552                },
1553                password: {
1554                    required: "Password: this field is required."
1555                }
1556            },
1557            errorLabelContainer: "#error_list",
1558            wrapper: "li",
1559            invalidHandler: function (form, validator) {
1560                $('html,body').animate({scrollTop: $('#login-page').offset().top}, {duration: 250, easing: 'swing'});
1561            },
1562            submitHandler: function (form) {
1563                $('button[type=submit], input[type=submit]').attr('disabled', 'disabled');
1564                form.submit();
1565            }
1566        });
1567    });
1568</script>
1568
1569<script type="text/javascript">
1570  $(document).ready(function(){
1571    $('#password').attr("onfocus", "this.removeAttribute('readonly');");
1572    $('#password').attr('readonly', 'readonly');
1573    $("#email").attr("onfocus", "this.removeAttribute('readonly');");
1574    $('#email').attr('readonly', 'readonly');
1575  });
1576</script>
1576
1577<script type="text/javascript">
1578  /* ---- show / hide password ---- */
1579  $(document).ready(function(){
1580    $('#pwToggle').on('click', function(){
1581      var pw = $('#password');
1582      var show = pw.attr('type') === 'password';
1583      pw.attr('type', show ? 'text' : 'password');
1584      $(this).text(show ? 'Hide' : 'Show');
1585      $(this).attr('aria-label', show ? 'Hide password' : 'Show password');
1586      pw.focus();
1587    });
1588  });
1589</script>
1589
1590<script>
1591    $(document).ready(function() {
1592      $(".recptch_check").on("click", function() {
1593        var response = grecaptcha.getResponse();
1594        if (response.length === 0) {
1595          $("#grerror_list").html('Please verify that you are not a robot.');
1596          return false;
1597        } else {
1598          $("#grerror_list").html('');
1599        }
1600      });
1601    });
1602</script>
1602<!-- 0.030020952224731 seg. -->

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.