Commit d92ee9aa authored by Hasitha Samarasekara's avatar Hasitha Samarasekara

Create tutors profile rating and review section and tutor class details. Tutor...

Create tutors profile rating and review section and tutor class details. Tutor dashboard class details
parent 799ef536
...@@ -94,7 +94,7 @@ router.route('/add').post(async(req,res) =>{ ...@@ -94,7 +94,7 @@ router.route('/add').post(async(req,res) =>{
router.route('/tutorClass/:id').get(function (req, res) { router.route('/tutorClass/:id').get(function (req, res) {
let id = req.params.id; let id = req.params.id;
//console.log("TutorId : " + id) //console.log("TutorId : " + id)
classes.find({"tutor_id": id}).populate('institute_id').then(tutorsClasses => { classes.find({"tutor_id": id,"isActiveForStudent": true}).populate('institute_id').then(tutorsClasses => {
///console.log(tutor); ///console.log(tutor);
res.json(tutorsClasses); res.json(tutorsClasses);
}).catch(err => res.status(400).json('Eroor: '+ err)); }).catch(err => res.status(400).json('Eroor: '+ err));
......
...@@ -85,36 +85,36 @@ router.route('/add').post(async(req,res) =>{ ...@@ -85,36 +85,36 @@ router.route('/add').post(async(req,res) =>{
.then(newUser =>{ .then(newUser =>{
//////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////
// const content = ` const content = `
// Hi ${institute_name},\n Hi ${institute_name},\n
// You are Create a Institute Account on SmartCoach.\n You are Create a Institute Account on SmartCoach.\n
// You can verify your email address click on 'http://localhost:3000/AccountVerified/${newUser.id}' You can verify your email address click on 'http://localhost:3000/AccountVerified/${newUser.id}'
//
// Used institute email address as the username : ${user_email} Used institute email address as the username : ${user_email}
// Used given password as the password Used given password as the password
// Thank You, Thank You,
// Team SmartCoach Team SmartCoach
// `; `;
//
// var mail = { var mail = {
// from: institute_name, from: institute_name,
// to: user_email, to: user_email,
// subject: 'Email Verification - Institute', subject: 'Email Verification - Institute',
// text: content text: content
// } }
//
// transporter.sendMail(mail, (err, data) => { transporter.sendMail(mail, (err, data) => {
// if (err) { if (err) {
// res.json({ res.json({
// msg: 'fail' msg: 'fail'
// }) })
// } else { } else {
// res.json({ res.json({
// msg: 'success' msg: 'success'
// }) })
// } }
// }) })
// ; ;
///////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////
}) })
......
...@@ -133,41 +133,41 @@ router.route('/add').post(async(req,res) =>{ ...@@ -133,41 +133,41 @@ router.route('/add').post(async(req,res) =>{
.then(newUser =>{ .then(newUser =>{
console.log("Inside the Email Send part") console.log("Inside the Email Send part")
//////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////
// const content = ` const content = `
// Hi ${tutor_name},\n Hi ${tutor_name},\n
// You are Create a Tutor Account on SmartCoach.\n You are Create a Tutor Account on SmartCoach.\n
// You can verify your email address click on 'http://localhost:3000/AccountVerified/${newUser.id}' You can verify your email address click on 'http://localhost:3000/AccountVerified/${newUser.id}'
//
// Used your email address as username : ${user_email} Used your email address as username : ${user_email}
// Thank You, Thank You,
// Team SmartCoach Team SmartCoach
// `; `;
//
// var mail = { var mail = {
// from: tutor_name, from: tutor_name,
// to: user_email, to: user_email,
// subject: 'Email Verification - Tutor', subject: 'Email Verification - Tutor',
// text: content text: content
// } }
//
// transporter.sendMail(mail, (err, data) => { transporter.sendMail(mail, (err, data) => {
// if (err) { if (err) {
// res.json({ res.json({
// msg: 'fail' msg: 'fail'
// }) })
// } else { } else {
// res.json({ res.json({
// msg: 'success' msg: 'success'
// }) })
// } }
// }) })
// ; ;
///////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////
}) })
.catch(err =>res.status(400).json('Error: '+err)); .catch(err =>res.status(400).json('Error: '+err));
// res.json('Tutor Successfully Added....'); res.json('Tutor Successfully Added....');
......
...@@ -29,4 +29,14 @@ router.route('/add').post(async(req,res) =>{ ...@@ -29,4 +29,14 @@ router.route('/add').post(async(req,res) =>{
}); });
router.route('/:id').get(function (req, res) {
let id = req.params.id;
//console.log("TutorId : " + id)
tutorRatingsRoute.find({"tutor_id": id}).populate('student_id').then(tutorReview => {
///console.log(tutor);
res.json(tutorReview);
}).catch(err => res.status(400).json('Eroor: '+ err));
});
module.exports = router; module.exports = router;
...@@ -52,6 +52,7 @@ export default class AddClassDetails extends Component { ...@@ -52,6 +52,7 @@ export default class AddClassDetails extends Component {
this.onChangeDay = this.onChangeDay.bind(this); this.onChangeDay = this.onChangeDay.bind(this);
this.onChangeHours = this.onChangeHours.bind(this); this.onChangeHours = this.onChangeHours.bind(this);
this.onChangeAdmissionFee = this.onChangeAdmissionFee.bind(this); this.onChangeAdmissionFee = this.onChangeAdmissionFee.bind(this);
this.GetTutorClasses = this.GetTutorClasses.bind(this);
} }
...@@ -68,26 +69,31 @@ export default class AddClassDetails extends Component { ...@@ -68,26 +69,31 @@ export default class AddClassDetails extends Component {
subjectList: response.data.tutor_subjects, subjectList: response.data.tutor_subjects,
}, () => { }, () => {
axios.get(configs.BASE_URL + '/createClass/tutorClass/' + this.state.tutorID)
.then(response => {
console.log(response.data);
this.setState({ this.GetTutorClasses();
TutorClassList: response.data })
}, () => { })
}
GetTutorClasses(){
axios.get(configs.BASE_URL + '/createClass/tutorClass/' + this.state.tutorID)
.then(response => {
console.log(response.data);
}) this.setState({
TutorClassList: response.data
}, () => {
})
}) })
}) })
} }
onChangeAdmissionFee(e) { onChangeAdmissionFee(e) {
this.setState({ this.setState({
AdmissionFee: e.target.value AdmissionFee: e.target.value
...@@ -241,6 +247,7 @@ export default class AddClassDetails extends Component { ...@@ -241,6 +247,7 @@ export default class AddClassDetails extends Component {
.then(res => { .then(res => {
console.log(res) console.log(res)
swal("success!!!", res.data, "success").then(() => { swal("success!!!", res.data, "success").then(() => {
this.GetTutorClasses();
// e.target.reset(); // e.target.reset();
//window.location(); //window.location();
}); });
...@@ -514,9 +521,12 @@ export default class AddClassDetails extends Component { ...@@ -514,9 +521,12 @@ export default class AddClassDetails extends Component {
<div className="container" style={{marginTop: '15px'}}> <div className="container" style={{marginTop: '15px'}}>
<div className="table-dark row"> <div className="table-dark row">
<div className="col-md-4" style={{textAlign: 'left'}}> <div className="col" style={{textAlign: 'left'}}>
<label>Batch Name</label> <label>Batch Name</label>
</div> </div>
<div className="col" >
<label>Year</label>
</div>
<div className="col"> <div className="col">
<label>Starting Date</label> <label>Starting Date</label>
</div> </div>
...@@ -546,9 +556,12 @@ export default class AddClassDetails extends Component { ...@@ -546,9 +556,12 @@ export default class AddClassDetails extends Component {
paddingTop: '5px', paddingTop: '5px',
borderBottom: 'inset' borderBottom: 'inset'
}}> }}>
<div className="col-md-4" style={{textAlign: 'left', marginLeft:'10px'}}> <div className="col" style={{textAlign: 'left', marginLeft:'10px'}}>
<label style={{}}>{oneClass.batch_no}</label> <label style={{}}>{oneClass.batch_no}</label>
</div> </div>
<div className="col">
<label>{oneClass.batchYear}</label>
</div>
<div className="col"> <div className="col">
<label>{moment(oneClass.class_startingDate).format("L")}</label> <label>{moment(oneClass.class_startingDate).format("L")}</label>
</div> </div>
......
...@@ -356,9 +356,15 @@ export default class Home extends Component{ ...@@ -356,9 +356,15 @@ export default class Home extends Component{
valueForRating = 100 valueForRating = 100
} }
else if(Number(tutor.tutor_avg_rating) > 4.75){ else if(Number(tutor.tutor_avg_rating) > 4.75){
valueForRating = 75 valueForRating = 90
}
else if(Number(tutor.tutor_avg_rating) > 4.25){
valueForRating = 80
} }
else if(Number(tutor.tutor_avg_rating) > 4){ else if(Number(tutor.tutor_avg_rating) > 4){
valueForRating = 70
}
else if(Number(tutor.tutor_avg_rating) > 3.5){
valueForRating = 60 valueForRating = 60
} }
else if(Number(tutor.tutor_avg_rating) > 2){ else if(Number(tutor.tutor_avg_rating) > 2){
......
...@@ -5,6 +5,7 @@ import Star from "../../Images/star.png"; ...@@ -5,6 +5,7 @@ import Star from "../../Images/star.png";
import ReviewImg from "../../Images/note.png"; import ReviewImg from "../../Images/note.png";
import Calender from "../../Images/calender.png"; import Calender from "../../Images/calender.png";
import RecommendIcon from "../../Images/recomended.png"; import RecommendIcon from "../../Images/recomended.png";
import {Link} from "react-router-dom";
export default class TutorCard extends Component{ export default class TutorCard extends Component{
...@@ -84,8 +85,8 @@ export default class TutorCard extends Component{ ...@@ -84,8 +85,8 @@ export default class TutorCard extends Component{
</div> </div>
</div> </div>
<div className="row"> <div className="row">
<button className="form-control" value={this.props.data._id} <Link to={`/Home/ViewProfile/${this.props.data.tutor_id}`}> <button className="form-control"
style={{background:"#216E9B", color:"white", marginLeft:'15px', marginRight:'15px'}}><b>View Profile</b></button> style={{background:"#216E9B", color:"white", marginLeft:'15px', marginRight:'15px'}}><b>View Profile</b></button></Link>
</div> </div>
</div> </div>
......
...@@ -580,7 +580,7 @@ export default class SignUp extends Component { ...@@ -580,7 +580,7 @@ export default class SignUp extends Component {
else { else {
axios.post(configs.BASE_URL + '/studentSingUp/add', student) axios.post(configs.BASE_URL + '/studentSingUp/add', student)
.then(res =>{ .then(res =>{
console.log("Inside Then") //console.log("Inside Then")
window.location = '/beforeConfirm' window.location = '/beforeConfirm'
}) })
.catch(function (error) { .catch(function (error) {
...@@ -664,7 +664,7 @@ export default class SignUp extends Component { ...@@ -664,7 +664,7 @@ export default class SignUp extends Component {
axios.post(configs.BASE_URL + '/tutorSingUp/add', Tutor) axios.post(configs.BASE_URL + '/tutorSingUp/add', Tutor)
.then(res =>{ .then(res =>{
console.log("Inside Then") //console.log("Inside Then")
window.location = '/beforeConfirm' window.location = '/beforeConfirm'
}) })
.catch(function (error) { .catch(function (error) {
...@@ -716,7 +716,7 @@ export default class SignUp extends Component { ...@@ -716,7 +716,7 @@ export default class SignUp extends Component {
axios.post(configs.BASE_URL + '/instituteSingUp/add', institute) axios.post(configs.BASE_URL + '/instituteSingUp/add', institute)
.then(res =>{ .then(res =>{
console.log("Inside Then") //console.log("Inside Then")
window.location = '/beforeConfirm' window.location = '/beforeConfirm'
}) })
.catch(function (error) { .catch(function (error) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment