{"id":601,"date":"2026-03-16T03:31:43","date_gmt":"2026-03-16T03:31:43","guid":{"rendered":"https:\/\/satseo-demo.in\/trustedreview\/upm-register\/"},"modified":"2026-03-16T03:31:43","modified_gmt":"2026-03-16T03:31:43","slug":"upm-register","status":"publish","type":"page","link":"https:\/\/satseo-demo.in\/trustedreview\/upm-register\/","title":{"rendered":"Register"},"content":{"rendered":"<div class=\"upm-wrap upm-register-wrap\">\n    <div class=\"upm-card\">\n        <div class=\"upm-card-header\">\n            <h2>Create Account<\/h2>\n            <p>Join our community today<\/p>\n        <\/div>\n                <a href=\"https:\/\/satseo-demo.in\/trustedreview\/wp-admin\/admin-ajax.php?action=upm_google_login&#038;redirect_to\" class=\"upm-btn upm-btn-google upm-btn-block\">\n            <svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" aria-hidden=\"true\">\n                <path fill=\"#4285F4\" d=\"M17.64 9.2c0-.64-.06-1.25-.16-1.84H9v3.48h4.84c-.21 1.13-.84 2.09-1.8 2.73v2.27h2.91c1.7-1.57 2.69-3.88 2.69-6.64z\"\/>\n                <path fill=\"#34A853\" d=\"M9 18c2.43 0 4.47-.8 5.96-2.18l-2.91-2.27c-.81.54-1.84.86-3.05.86-2.34 0-4.33-1.58-5.04-3.71H.96v2.34C2.44 15.98 5.48 18 9 18z\"\/>\n                <path fill=\"#FBBC05\" d=\"M3.96 10.7A5.4 5.4 0 013.68 9c0-.59.1-1.17.28-1.7V4.96H.96A9 9 0 000 9c0 1.45.35 2.83.96 4.04l3-2.34z\"\/>\n                <path fill=\"#EA4335\" d=\"M9 3.58c1.32 0 2.51.45 3.44 1.35l2.58-2.58C13.46.89 11.43 0 9 0 5.48 0 2.44 2.02.96 4.96l3 2.34C4.67 5.16 6.66 3.58 9 3.58z\"\/>\n            <\/svg>\n            <span>Continue with Google<\/span>\n        <\/a>\n        <div class=\"upm-social-divider\"><span>or<\/span><\/div>\n        \n        <form id=\"upm-register-form\" class=\"upm-form\" novalidate>\n            <div class=\"upm-form-row upm-two-col\">\n                <div class=\"upm-field\">\n                    <label for=\"upm-reg-fname\">First Name<\/label>\n                    <input type=\"text\" id=\"upm-reg-fname\" name=\"first_name\" placeholder=\"John\" required>\n                <\/div>\n                <div class=\"upm-field\">\n                    <label for=\"upm-reg-lname\">Last Name<\/label>\n                    <input type=\"text\" id=\"upm-reg-lname\" name=\"last_name\" placeholder=\"Doe\">\n                <\/div>\n            <\/div>\n            <div class=\"upm-field\">\n                <label for=\"upm-reg-username\">Username <span class=\"upm-req\">*<\/span><\/label>\n                <input type=\"text\" id=\"upm-reg-username\" name=\"username\" placeholder=\"johndoe\" required autocomplete=\"username\">\n                <span class=\"upm-field-hint\" id=\"upm-username-check\"><\/span>\n            <\/div>\n                        <div class=\"upm-field\">\n                <label for=\"upm-reg-email\">Email Address <span class=\"upm-req\">*<\/span><\/label>\n                                <input type=\"email\" id=\"upm-reg-email\" name=\"email\" placeholder=\"john@example.com\" required autocomplete=\"email\">\n                                <span class=\"upm-field-hint\" id=\"upm-email-check\"><\/span>\n            <\/div>\n\n            \n            <!-- Hidden fields passed to registration handler -->\n            <input type=\"hidden\" id=\"upm-verified-email\"       name=\"verified_email\"       value=\"\">\n            <input type=\"hidden\" id=\"upm-verified-email-token\" name=\"verified_email_token\" value=\"\">\n\n                        <!-- ===== PHONE + OTP SECTION ===== -->\n                        <div class=\"upm-field\">\n                <label for=\"upm-reg-phone\">Phone Number <span class=\"upm-req\">*<\/span><\/label>\n                <div class=\"upm-phone-wrap\">\n                    <div class=\"upm-phone-input-row\">\n                        <select id=\"upm-reg-country\" class=\"upm-country-select\" aria-label=\"Country code\">\n                            <option value=\"+91\" data-flag=\"\ud83c\uddee\ud83c\uddf3\" selected>\ud83c\uddee\ud83c\uddf3 +91 India<\/option>\n                            <option value=\"+1\"  data-flag=\"\ud83c\uddfa\ud83c\uddf8\">\ud83c\uddfa\ud83c\uddf8 +1 USA\/Canada<\/option>\n                            <option value=\"+44\" data-flag=\"\ud83c\uddec\ud83c\udde7\">\ud83c\uddec\ud83c\udde7 +44 UK<\/option>\n                            <option value=\"+61\" data-flag=\"\ud83c\udde6\ud83c\uddfa\">\ud83c\udde6\ud83c\uddfa +61 Australia<\/option>\n                            <option value=\"+971\" data-flag=\"\ud83c\udde6\ud83c\uddea\">\ud83c\udde6\ud83c\uddea +971 UAE<\/option>\n                            <option value=\"+65\" data-flag=\"\ud83c\uddf8\ud83c\uddec\">\ud83c\uddf8\ud83c\uddec +65 Singapore<\/option>\n                            <option value=\"+60\" data-flag=\"\ud83c\uddf2\ud83c\uddfe\">\ud83c\uddf2\ud83c\uddfe +60 Malaysia<\/option>\n                            <option value=\"+49\" data-flag=\"\ud83c\udde9\ud83c\uddea\">\ud83c\udde9\ud83c\uddea +49 Germany<\/option>\n                            <option value=\"+33\" data-flag=\"\ud83c\uddeb\ud83c\uddf7\">\ud83c\uddeb\ud83c\uddf7 +33 France<\/option>\n                            <option value=\"+81\" data-flag=\"\ud83c\uddef\ud83c\uddf5\">\ud83c\uddef\ud83c\uddf5 +81 Japan<\/option>\n                            <option value=\"+86\" data-flag=\"\ud83c\udde8\ud83c\uddf3\">\ud83c\udde8\ud83c\uddf3 +86 China<\/option>\n                            <option value=\"+27\" data-flag=\"\ud83c\uddff\ud83c\udde6\">\ud83c\uddff\ud83c\udde6 +27 South Africa<\/option>\n                            <option value=\"+966\" data-flag=\"\ud83c\uddf8\ud83c\udde6\">\ud83c\uddf8\ud83c\udde6 +966 Saudi Arabia<\/option>\n                            <option value=\"+94\" data-flag=\"\ud83c\uddf1\ud83c\uddf0\">\ud83c\uddf1\ud83c\uddf0 +94 Sri Lanka<\/option>\n                            <option value=\"+880\" data-flag=\"\ud83c\udde7\ud83c\udde9\">\ud83c\udde7\ud83c\udde9 +880 Bangladesh<\/option>\n                            <option value=\"+92\" data-flag=\"\ud83c\uddf5\ud83c\uddf0\">\ud83c\uddf5\ud83c\uddf0 +92 Pakistan<\/option>\n                            <option value=\"+64\" data-flag=\"\ud83c\uddf3\ud83c\uddff\">\ud83c\uddf3\ud83c\uddff +64 New Zealand<\/option>\n                            <option value=\"+353\" data-flag=\"\ud83c\uddee\ud83c\uddea\">\ud83c\uddee\ud83c\uddea +353 Ireland<\/option>\n                            <option value=\"other\">\ud83c\udf10 Other (type code)<\/option>\n                        <\/select>\n                        <input type=\"text\" id=\"upm-reg-country-custom\" class=\"upm-country-custom\"\n                               placeholder=\"+xx\" maxlength=\"5\" style=\"display:none;\">\n                        <input type=\"tel\" id=\"upm-reg-phone\" name=\"phone\"\n                               placeholder=\"98765 43210\" required autocomplete=\"tel\"\n                               maxlength=\"15\">\n                        <button type=\"button\" id=\"upm-send-otp-btn\" class=\"upm-btn upm-btn-secondary upm-btn-sm\">\n                            <span class=\"upm-btn-text\">Send OTP<\/span>\n                            <span class=\"upm-btn-loader\" style=\"display:none;\">Sending\u2026<\/span>\n                        <\/button>\n                    <\/div>\n                    <!-- Required by Firebase Phone Auth (invisible reCAPTCHA); unused when provider is Twilio -->\n                    <div id=\"upm-firebase-recaptcha-container\"><\/div>\n                    <span class=\"upm-field-hint\" id=\"upm-phone-hint\"><\/span>\n                <\/div>\n            <\/div>\n\n            <!-- OTP input \u2014 hidden until OTP is sent -->\n            <div class=\"upm-field\" id=\"upm-otp-field\" style=\"display:none;\">\n                <label for=\"upm-reg-otp\">Enter OTP <span class=\"upm-req\">*<\/span><\/label>\n                <div class=\"upm-otp-wrap\">\n                    <div class=\"upm-otp-inputs\">\n                        <input class=\"upm-otp-digit\" type=\"text\" maxlength=\"1\" inputmode=\"numeric\" pattern=\"[0-9]\" autocomplete=\"one-time-code\">\n                        <input class=\"upm-otp-digit\" type=\"text\" maxlength=\"1\" inputmode=\"numeric\" pattern=\"[0-9]\">\n                        <input class=\"upm-otp-digit\" type=\"text\" maxlength=\"1\" inputmode=\"numeric\" pattern=\"[0-9]\">\n                        <input class=\"upm-otp-digit\" type=\"text\" maxlength=\"1\" inputmode=\"numeric\" pattern=\"[0-9]\">\n                        <input class=\"upm-otp-digit\" type=\"text\" maxlength=\"1\" inputmode=\"numeric\" pattern=\"[0-9]\">\n                        <input class=\"upm-otp-digit\" type=\"text\" maxlength=\"1\" inputmode=\"numeric\" pattern=\"[0-9]\">\n                    <\/div>\n                    <!-- Hidden field that holds the combined OTP value -->\n                    <input type=\"hidden\" id=\"upm-reg-otp\" name=\"otp_code\">\n                    <button type=\"button\" id=\"upm-verify-otp-btn\" class=\"upm-btn upm-btn-secondary upm-btn-sm\">\n                        <span class=\"upm-btn-text\">Verify OTP<\/span>\n                        <span class=\"upm-btn-loader\" style=\"display:none;\">Verifying\u2026<\/span>\n                    <\/button>\n                <\/div>\n                <div class=\"upm-otp-footer\">\n                    <span id=\"upm-otp-timer\" class=\"upm-otp-timer\"><\/span>\n                    <button type=\"button\" id=\"upm-resend-otp-btn\" class=\"upm-link-btn\" style=\"display:none;\">Resend OTP<\/button>\n                <\/div>\n                <span class=\"upm-field-hint\" id=\"upm-otp-hint\"><\/span>\n            <\/div>\n            \n            <!-- Hidden fields passed to registration handler -->\n            <input type=\"hidden\" id=\"upm-verified-phone\"  name=\"verified_phone\"  value=\"\">\n            <input type=\"hidden\" id=\"upm-verified-token\"  name=\"verified_token\"  value=\"\">\n            <!-- ===== END OTP SECTION ===== -->\n\n            <div class=\"upm-field\">\n                <label for=\"upm-reg-pass\">Password <span class=\"upm-req\">*<\/span><\/label>\n                <div class=\"upm-pass-wrap\">\n                    <input type=\"password\" id=\"upm-reg-pass\" name=\"password\" placeholder=\"Min 8 characters\" minlength=\"8\" required autocomplete=\"new-password\">\n                    <button type=\"button\" class=\"upm-pass-toggle\" aria-label=\"Show password\">\n                        <svg class=\"upm-eye-show\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z\"\/><circle cx=\"12\" cy=\"12\" r=\"3\"\/><\/svg>\n                        <svg class=\"upm-eye-hide\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"display:none\"><path d=\"M17.94 17.94A10.07 10.07 0 0112 20c-7 0-11-8-11-8a18.45 18.45 0 015.06-5.94M9.9 4.24A9.12 9.12 0 0112 4c7 0 11 8 11 8a18.5 18.5 0 01-2.16 3.19m-6.72-1.07a3 3 0 11-4.24-4.24\"\/><line x1=\"1\" y1=\"1\" x2=\"23\" y2=\"23\"\/><\/svg>\n                    <\/button>\n                <\/div>\n            <\/div>\n            <div class=\"upm-field\">\n                <label for=\"upm-reg-pass2\">Confirm Password <span class=\"upm-req\">*<\/span><\/label>\n                <div class=\"upm-pass-wrap\">\n                    <input type=\"password\" id=\"upm-reg-pass2\" name=\"password2\" placeholder=\"Repeat password\" required autocomplete=\"new-password\">\n                    <button type=\"button\" class=\"upm-pass-toggle\" aria-label=\"Show password\">\n                        <svg class=\"upm-eye-show\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z\"\/><circle cx=\"12\" cy=\"12\" r=\"3\"\/><\/svg>\n                        <svg class=\"upm-eye-hide\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"display:none\"><path d=\"M17.94 17.94A10.07 10.07 0 0112 20c-7 0-11-8-11-8a18.45 18.45 0 015.06-5.94M9.9 4.24A9.12 9.12 0 0112 4c7 0 11 8 11 8a18.5 18.5 0 01-2.16 3.19m-6.72-1.07a3 3 0 11-4.24-4.24\"\/><line x1=\"1\" y1=\"1\" x2=\"23\" y2=\"23\"\/><\/svg>\n                    <\/button>\n                <\/div>\n            <\/div>\n            <div class=\"upm-field\">\n                <label for=\"upm-reg-location\">Location<\/label>\n                <input type=\"text\" id=\"upm-reg-location\" name=\"location\" placeholder=\"City, Country\">\n            <\/div>\n            <div class=\"upm-field\">\n                <label for=\"upm-reg-bio\">Short Bio<\/label>\n                <textarea id=\"upm-reg-bio\" name=\"bio\" rows=\"3\" placeholder=\"Tell us about yourself...\"><\/textarea>\n            <\/div>\n            <div id=\"upm-reg-messages\" class=\"upm-messages\" style=\"display:none;\"><\/div>\n            <button type=\"submit\" class=\"upm-btn upm-btn-primary upm-btn-block\" id=\"upm-reg-submit\" disabled>\n                <span class=\"upm-btn-text\">Create Account<\/span>\n                <span class=\"upm-btn-loader\" style=\"display:none;\">Creating...<\/span>\n            <\/button>\n            <p class=\"upm-otp-note\" id=\"upm-verify-note\" style=\"display:none;color:#ef4444;font-size:13px;text-align:center;margin-top:8px;\">\n                \u26a0\ufe0f Please verify your phone number to continue.\n            <\/p>\n            <p class=\"upm-otp-note\" id=\"upm-email-verify-note\" style=\"display:none;color:#ef4444;font-size:13px;text-align:center;margin-top:8px;\">\n                \u26a0\ufe0f Please verify your email address to continue.\n            <\/p>\n        <\/form>\n        <div class=\"upm-card-footer\">\n            Already have an account? <a href=\"https:\/\/satseo-demo.in\/trustedreview\/upm-login\/\">Login<\/a>\n        <\/div>\n    <\/div>\n<\/div>\n\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-601","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/satseo-demo.in\/trustedreview\/wp-json\/wp\/v2\/pages\/601","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/satseo-demo.in\/trustedreview\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/satseo-demo.in\/trustedreview\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/satseo-demo.in\/trustedreview\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/satseo-demo.in\/trustedreview\/wp-json\/wp\/v2\/comments?post=601"}],"version-history":[{"count":0,"href":"https:\/\/satseo-demo.in\/trustedreview\/wp-json\/wp\/v2\/pages\/601\/revisions"}],"wp:attachment":[{"href":"https:\/\/satseo-demo.in\/trustedreview\/wp-json\/wp\/v2\/media?parent=601"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}