1import{r as c,d as L,j as e,L as B,S as o,A as $}from"./index-rhtSfL_o.js";import{d as I}from"./default-DqreOtmv.js";const M="/assets/teacherRegistrationimg-Cf1EQeSH.png",O=()=>{const[a,i]=c.useState({name:"",email:"",mobile:"",password:"",confirmPassword:"",qualification:"",workExperience:""}),C=L(),[h,b]=c.useState(null),[w,P]=c.useState(null),[A,u]=c.useState(""),[p,S]=c.useState(!1),[x,k]=c.useState(!1),[r,t]=c.useState({name:!1,email:!1,mobile:!1,password:!1,confirmPassword:!1,qualification:!1,workExperience:!1}),R=s=>s.replace(/\D/g,""),f=s=>/^[A-Za-z\s]{3,}$/.test(s),j=s=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(s),g=s=>{const n=/^\d{6,10}$/,d=!/^(\d)\1+$/.test(s);return n.test(s)&&d},v=s=>/^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[!@#$%^&*]).{8,}$/.test(s),q=async s=>{var n,d,E;if(s.preventDefault(),a.password!==a.confirmPassword){u("Passwords do not match.");return}if(!v(a.password)){u("Password must be at least 8 chars and include upper, lower, number, and special character.");return}if(u(""),!f(a.name)){o.fire("Error","Name must contain alphabets only (min 3 chars).","error");return}if(!j(a.email)){o.fire("Error","Enter a valid email.","error");return}if(!g(a.mobile)){o.fire("Error","Phone number must be 6 - 10 digits.","error");return}if(!a.qualification){o.fire("Error","Please enter qualification.","error");return}if(!a.workExperience){o.fire("Error","Please enter work experience.","error");return}try{const l=new FormData,m={...a,name:a.name.trim(),qualification:a.qualification.trim(),workExperience:a.workExperience.trim()};Object.keys(m).forEach(N=>{m[N]&&l.append(N,m[N])}),h&&l.append("profilePicture",h),w&&l.append("nationalIdProof",w),l.append("role","teacher");const y=await $.post("/teacher/register",l,{headers:{"Content-Type":"multipart/form-data"}});(n=y.data)!=null&&n.status&&(o.fire("Success",y.data.message,"success"),i({name:"",email:"",mobile:"",password:"",confirmPassword:"",qualification:"",workExperience:""}),b(null),P(null),C("/teacher/login"))}catch(l){const m=((E=(d=l.response)==null?void 0:d.data)==null?void 0:E.message)||l.message;o.fire("Error",m,"error")}},F=["10th","12th","Diploma","Polytechnic","BA","B.Com","B.Sc","BCA","BBA","B.Tech","B.E","B.Ed","LLB","MBBS","B.Pharma","MA","M.Com","M.Sc","MCA","MBA","M.Tech","M.Ed","LLM","MD","M.Pharma","PhD","Post Doctorate","ITI","Other"];return e.jsx("section",{className:"TeacherRegisterSection mt-2 mb-2",children:e.jsxs("div",{className:"container teacherRegisterDiv ",children:[e.jsx("div",{className:"col-md-5 teacherRegisterLeftDiv displaymanage",children:e.jsxs("div",{className:"teacherRegistrationImgBox h-100",children:[e.jsx("h3",{children:"Inspire Minds, Share Knowledge."}),e.jsx("img",{className:" img-fluid teacherRegistrationImage",src:M,alt:"teacherRegistrationImage"})]})}),e.jsx("div",{className:"col-md-7 card-body teacherRegisterRightDiv ",children:e.jsxs("div",{className:"teacherRegistrationContentBox ",children:[e.jsx("h6",{children:" Register as Teacher"}),e.jsx("form",{onSubmit:q,children:e.jsxs("div",{className:"row",children:[e.jsx("div",{className:"col-md-6",children:e.jsxs("div",{className:"inputFeald mb-2",children:[e.jsxs("label",{className:"mb-1 input-label",children:["Name ",e.jsx("small",{className:"text-danger",children:"*"})]}),e.jsx("input",{type:"text",className:`form-control ${r.name&&!f(a.name)?"is-invalid":""}`,value:a.name,onChange:s=>{const d=s.target.value.replace(/[^a-zA-Z\s]/g,"");i({...a,name:d})},onBlur:()=>t({...r,name:!0}),required:!0,maxLength:50,placeholder:"Enter your name"}),r.name&&!f(a.name)&&e.jsx("div",{className:"invalid-feedback",children:"Name must contain alphabets only (min 3 chars)"})]})}),e.jsx("div",{className:"col-md-6",children:e.jsxs("div",{className:"inputFeald mb-2",children:[e.jsxs("label",{className:"mb-1",children:["Email ",e.jsx("small",{className:"text-danger",children:"*"})]}),e.jsx("input",{type:"email",className:`form-control ${r.email&&!j(a.email)?"is-invalid":""}`,value:a.email,onChange:s=>i({...a,email:s.target.value}),onBlur:()=>t({...r,email:!0}),required:!0,maxLength:50,placeholder:"Enter your email"}),r.email&&!j(a.email)&&e.jsx("div",{className:"invalid-feedback",children:"Enter a valid email"})]})}),e.jsx("div",{className:"col-md-6",children:e.jsxs("div",{className:"inputFeald mb-2",children:[e.jsxs("label",{className:"mb-1",children:["Phone ",e.jsx("small",{className:"text-danger",children:"*"})]}),e.jsx("input",{type:"text",className:`form-control ${r.mobile&&!g(a.mobile)?"is-invalid":""}`,value:a.mobile,onChange:s=>i({...a,mobile:R(s.target.value)}),onBlur:()=>t({...r,mobile:!0}),maxLength:10,required:!0,placeholder:"Enter phone"}),r.mobile&&!g(a.mobile)&&e.jsx("div",{className:"invalid-feedback",children:"Phone must be 6 - 10 digits"})]})}),e.jsx("div",{className:"col-md-6",children:e.jsxs("div",{className:"inputFeald mb-2",children:[e.jsxs("label",{className:"mb-1",children:["Qualification ",e.jsx("small",{className:"text-danger",children:"*"})]}),e.jsxs("select",{className:`form-control ${r.qualification&&!a.qualification.trim()?"is-invalid":""}`,value:a.qualification,onChange:s=>i({...a,qualification:s.target.value}),onBlur:()=>t({...r,qualification:!0}
1),required:!0,children:[e.jsx("option",{value:"",children:"Select Qualification"}),F.map((s,n)=>e.jsx("option",{value:s,children:s},n))]})]})}),e.jsx("div",{className:"col-md-6",children:e.jsxs("div",{className:"inputFeald mb-2",children:[e.jsxs("label",{className:"mb-1",children:["Work Experience ",e.jsx("small",{className:"text-danger",children:"*"})]}),e.jsxs("select",{className:`form-control ${r.workExperience&&!a.workExperience.trim()?"is-invalid":""}`,value:a.workExperience,onChange:s=>i({...a,workExperience:s.target.value}),onBlur:()=>t({...r,workExperience:!0}),required:!0,children:[e.jsx("option",{value:"",children:"Select your experience level"}),e.jsx("option",{value:"0",children:"Fresher / Entry Level"}),e.jsx("option",{value:"1-2",children:"1-2 Years"}),e.jsx("option",{value:"3-5",children:"3-5 Years"}),e.jsx("option",{value:"5-8",children:"5-8 Years"}),e.jsx("option",{value:"8-12",children:"8-12 Years"}),e.jsx("option",{value:"12+",children:"12+ Years"})]})]})}),e.jsx("div",{className:"col-md-6",children:e.jsxs("div",{className:"inputFeald mb-2",children:[e.jsxs("label",{className:"mb-1",children:["Password ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsxs("div",{className:"input-group",children:[e.jsx("input",{type:p?"text":"password",className:`form-control ${r.password&&!v(a.password)?"is-invalid":""}`,value:a.password,onChange:s=>i({...a,password:s.target.value}),onBlur:()=>t({...r,password:!0}),autoComplete:"new-password",required:!0,placeholder:"Enter strong password"}),e.jsx("span",{className:"input-group-text",style:{cursor:"pointer"},onClick:()=>S(!p),children:e.jsx("i",{className:`bi ${p?"bi-eye-slash":"bi-eye"}`})}),r.password&&!v(a.password)&&e.jsx("div",{className:"invalid-feedback",children:"Password must be at least 8 characters and include uppercase, lowercase, number, and special character."})]})]})}),e.jsx("div",{className:"col-md-6",children:e.jsxs("div",{className:"inputFeald mb-0 ",children:[e.jsxs("label",{className:"mb-1",children:["National ID Proof (",e.jsx("small",{className:"form-text text-muted",children:"Formats: JPEG, JPG, PNG, GIF, WEBP."}),")"]}),e.jsx("input",{type:"file",className:"form-control",accept:"image/jpeg,image/png,image/jpg,image/gif,image/webp",onChange:s=>P(s.target.files[0])})]})}),e.jsx("div",{className:"col-md-6",children:e.jsxs("div",{className:"inputFeald mb-2",children:[e.jsxs("label",{className:"mb-1",children:["Confirm Password ",e.jsx("span",{className:"text-danger",children:"*"})]}),e.jsxs("div",{className:"input-group",children:[e.jsx("input",{type:x?"text":"password",className:`form-control ${r.confirmPassword&&a.confirmPassword!==a.password?"is-invalid":""}`,value:a.confirmPassword,onChange:s=>i({...a,confirmPassword:s.target.value}),onBlur:()=>t({...r,confirmPassword:!0}),required:!0,placeholder:"Re-enter password"}),e.jsx("span",{className:"input-group-text",style:{cursor:"pointer"},onClick:()=>k(!x),children:e.jsx("i",{className:`bi ${x?"bi-eye-slash":"bi-eye"}`})}),r.confirmPassword&&a.confirmPassword!==a.password&&e.jsx("div",{className:"invalid-feedback",children:"Passwords do not match."})]})]})}),e.jsx("div",{className:"col-md-12",children:e.jsxs("div",{className:"inputFeald mb-2",children:[e.jsx("label",{className:"mb-1",children:"Profile Picture"}),e.jsx("input",{type:"file",className:"form-control",accept:"image/*",onChange:s=>b(s.target.files[0])}),e.jsx("div",{className:"mt-2",children:e.jsx("img",{src:h?URL.createObjectURL(h):I,alt:"Preview",className:"rounded-circle border",width:100,height:100})})]})}),e.jsx("div",{className:"col-12 text-center pt-2",children:e.jsx("button",{type:"submit",className:"btn adminLoginbtn px-5 w-100",children:"Register"})})]})}),e.jsxs("div",{className:"text-center mt-3",children:[e.jsxs("div",{className:"registerFooter",children:[e.jsx("small",{children:"Already have an account?"}),e.jsx(B,{to:"/teacher/login",children:"Login here"})]}),e.jsxs("div",{className:"registerFooter",children:[e.jsx("small",{children:"Not a teacher?"})," ",e.jsx(B,{to:"/register",children:"Register as User"})]})]})]})})]})})};export{O as default};
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.