Commit fad94933 by amalk

Merge branch 'master' into amal

parents 9e366264 9a3f0f0e
...@@ -17,18 +17,18 @@ ...@@ -17,18 +17,18 @@
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link vehicle" data-toggle="tab" href="#vehicle">My Vehicle <a class="nav-link vehicle" data-toggle="tab" href="#vehicle">My Vehicle
<div class="notification">02</div> <div class="notification" *ngIf="vehDetails">{{ vehDetails?.length || '0' }}</div>
</a> </a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link appointment" data-toggle="tab" href="#appointment">Appointments <a class="nav-link appointment" data-toggle="tab" href="#appointment">Appointments
<div class="notification">02</div> <div class="notification" *ngIf="successBookDtls">{{ successBookDtls?.length || '0' }}</div>
</a> </a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link time" data-toggle="tab" href="#service" #serviceHistoryTab> <a class="nav-link time" data-toggle="tab" href="#service" #serviceHistoryTab>
Service History Service History
<div class="notification">02</div> <!-- <div class="notification">02</div> -->
</a> </a>
</li> </li>
</ul> </ul>
...@@ -626,8 +626,8 @@ ...@@ -626,8 +626,8 @@
</div> </div>
<div class="row"> <div class="row">
<div class="col-md-12 textCenter"> <div class="col-md-12 textCenter">
<button *ngIf="!loginDetails" (click)="resetForm()" class="wizard_signin" type="button" data-toggle="modal" data-target="#login">SIGN IN</button> <button *ngIf="!loginDetails" (click)="resetForm()" class="wizard_signin floatLeft" type="button" data-toggle="modal" data-target="#login">SIGN IN</button>
<button (click)="getQuote()" class="wizard_quotes" type="button" data-toggle="modal" data-target="#quotes">VIEW SERVICE QUOTE</button> <button (click)="getQuote()" class="wizard_quotes floatRight" type="button" data-toggle="modal" data-target="#quotes">VIEW SERVICE QUOTE</button>
<input type="hidden" #indexLoginModal data-toggle="modal" data-target="#login"> <input type="hidden" #indexLoginModal data-toggle="modal" data-target="#login">
</div> </div>
</div> </div>
...@@ -691,8 +691,8 @@ ...@@ -691,8 +691,8 @@
<img src="{{imageServer + mechanic.profile_image}}" onerror="this.src='assets/images/user_avatar.jpg'"> <img src="{{imageServer + mechanic.profile_image}}" onerror="this.src='assets/images/user_avatar.jpg'">
</div> </div>
<div class="mechanic_ratting"> <div class="mechanic_ratting">
<p>4/5 Ratings</p> <p>4 Ratings</p>
<h6>6 Reviews</h6>
</div> </div>
</div> </div>
<div class="mechanic_detail"> <div class="mechanic_detail">
......
...@@ -519,6 +519,10 @@ export class IndexComponent implements OnInit { ...@@ -519,6 +519,10 @@ export class IndexComponent implements OnInit {
$('#'+id).stop().animate({scrollTop: $('#'+id)[0].scrollHeight}, 1500); $('#'+id).stop().animate({scrollTop: $('#'+id)[0].scrollHeight}, 1500);
} }
scrollToTop(id){
$('#'+id).stop().animate({scrollTop: 0}, 800);
}
featuredOnLoad() {return ''; } featuredOnLoad() {return ''; }
carouselTileLoad(){ return ''; } carouselTileLoad(){ return ''; }
} }
...@@ -343,42 +343,75 @@ ...@@ -343,42 +343,75 @@
<div class="modal" id="serviceprovider" style="z-index: 99999 !important;"> <div class="modal" id="serviceprovider" style="z-index: 99999 !important;">
<div class="modal-dialog modal-full"> <div class="modal-dialog modal-full">
<div class="modal-content login_modal_wrapper" malihu-scrollbar [scrollbarOptions]="scrollbarOptions"> <div class="modal-content login_modal_wrapper" malihu-scrollbar [scrollbarOptions]="scrollbarOptions">
<div class="modal_close" data-dismiss="modal"> <div class="modal_close" data-dismiss="modal" #spModal>
&times; &times;
</div> </div>
<div class="modal-body"> <div class="modal-body">
<div class="login_modal_content"> <div class="login_modal_content">
<form [formGroup]="autospsignupForm" (ngSubmit)="autospsignupSubmit(autospsignupForm.value)">
<div class="login_modal_inner"> <div class="login_modal_inner">
<h3>auto service provider</h3> <h3>auto service provider</h3>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
<input class="" type="text" placeholder="First Name"> <input class="" type="text" placeholder="First Name" formControlName="first_name"
[ngClass]="{'input_error': !autospsignupForm.controls['first_name'].valid && (autospsignupForm.controls['first_name'].dirty || autospsignupForm.controls['first_name'].touched || spSignupSubmitClick),
'input_success': autospsignupForm.controls['first_name'].valid}" (click)="spSignupSubmitClick = false">
<div class="s_error" *ngIf="(!autospsignupForm.controls['first_name'].valid && autospsignupForm.controls['first_name'].touched) || (!autospsignupForm.controls['first_name'].valid && spSignupSubmitClick)">
<div class="s_validation" *ngIf="autospsignupForm.controls['first_name'].hasError('required')">{{errorMsg.errorList.required}} </div>
<div class="s_validation" *ngIf="autospsignupForm.controls['first_name'].hasError('pattern')">{{errorMsg.errorList.valid}} Name</div>
</div>
</div> </div>
<div class="col-md-6"> <div class="col-md-6">
<input class="" type="text" placeholder="Last Name"> <input class="" type="text" placeholder="Last Name" formControlName="last_name" [ngClass]="{'input_error': !autospsignupForm.controls['last_name'].valid && (autospsignupForm.controls['last_name'].dirty || autospsignupForm.controls['last_name'].touched || spSignupSubmitClick),
'input_success': autospsignupForm.controls['last_name'].valid}" (click)="spSignupSubmitClick = false">
<div class="s_error" *ngIf="(!autospsignupForm.controls['last_name'].valid && autospsignupForm.controls['last_name'].touched) || (!autospsignupForm.controls['last_name'].valid && spSignupSubmitClick)">
<div class="s_validation" *ngIf="autospsignupForm.controls['last_name'].hasError('required')">{{errorMsg.errorList.required}} </div>
<div class="s_validation" *ngIf="autospsignupForm.controls['last_name'].hasError('pattern')">{{errorMsg.errorList.valid}} Sur Name</div>
</div>
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<input class="" type="password" placeholder="Password"> <input class="" type="password" placeholder="Password" formControlName="password" [ngClass]="{'input_error': !autospsignupForm.controls['password'].valid && (autospsignupForm.controls['password'].dirty || autospsignupForm.controls['password'].touched || spSignupSubmitClick),
'input_success': autospsignupForm.controls['password'].valid}" (click)="spSignupSubmitClick = false">
<div class="s_error" *ngIf="autospsignupForm.controls['password'].invalid && (autospsignupForm.controls['password'].touched || spSignupSubmitClick)">
<div class="s_validation" *ngIf="autospsignupForm.controls['password'].hasError('required')">{{errorMsg.errorList.required}} </div>
</div>
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
<input class="" type="email" placeholder="Email"> <input class="" type="email" placeholder="Email" formControlName="email"
[ngClass]="{'input_error': !autospsignupForm.controls['email'].valid && (autospsignupForm.controls['email'].dirty || autospsignupForm.controls['email'].touched || spSignupSubmitClick),
'input_success': autospsignupForm.controls['email'].valid}"
(click)="spSignupSubmitClick = false">
<div class="s_error" *ngIf="(!autospsignupForm.controls['email'].valid && autospsignupForm.controls['email'].touched) || (!autospsignupForm.controls['email'].valid && spSignupSubmitClick)">
<div class="s_validation" *ngIf="autospsignupForm.controls['email'].hasError('required')">{{errorMsg.errorList.required}} </div>
<div class="s_validation" *ngIf="autospsignupForm.controls['email'].hasError('pattern')">{{errorMsg.errorList.valid}} Email</div>
<div class="s_validation" *ngIf="autospsignupForm.controls['email'].hasError('maxlength')">{{errorMsg.errorList.maxLength}} 50</div>
</div>
</div> </div>
<div class="col-md-6"> <div class="col-md-6">
<input class="" type="number" placeholder="Phone Number"> <input class="" type="text" placeholder="Phone Number" formControlName="phone"
[ngClass]="{'input_error': !autospsignupForm.controls['phone'].valid && (autospsignupForm.controls['phone'].dirty || autospsignupForm.controls['phone'].touched || spSignupSubmitClick),
'input_success': autospsignupForm.controls['phone'].value != '' && autospsignupForm.controls['phone'].dirty && autospsignupForm.controls['phone'].valid}"
(click)="spSignupSubmitClick = false">
<div class="s_error" *ngIf="(!autospsignupForm.controls['phone'].valid && autospsignupForm.controls['phone'].touched) || (!autospsignupForm.controls['phone'].valid && spSignupSubmitClick)">
<div class="s_validation" *ngIf="autospsignupForm.controls['phone'].hasError('required')">{{errorMsg.errorList.required}} </div>
<div class="s_validation" *ngIf="autospsignupForm.controls['phone'].hasError('pattern')">{{errorMsg.errorList.valid}} Mobile Number</div>
</div> </div>
</div> </div>
</div>
<div *ngIf="spSignupResponse" class="s_alert" [ngClass]="(spSignupResponse.status == 'success') ? 'alert-success' : 'alert-danger'">
<strong>{{spSignupResponse.message}}<br></strong>
</div>
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<button type="submit" class="log_btn" data-dismiss="modal">Submit</button> <button type="submit" class="log_btn" (click)="spSignupSubmitClick = true">Submit</button>
</div> </div>
</div> </div>
</div> </div>
</form>
</div> </div>
</div> </div>
</div> </div>
......
...@@ -23,9 +23,11 @@ export class NavbarComponent implements OnInit { ...@@ -23,9 +23,11 @@ export class NavbarComponent implements OnInit {
loginResponse : any; loginResponse : any;
forgotResponse : any; forgotResponse : any;
signupResponse : any; signupResponse : any;
spSignupResponse : any;
loginSubmitClick : boolean; loginSubmitClick : boolean;
forgotSubmitClick : boolean; forgotSubmitClick : boolean;
signupSubmitClick : boolean; signupSubmitClick : boolean;
spSignupSubmitClick : boolean;
constructor ( constructor (
private router : Router, private router : Router,
...@@ -38,13 +40,16 @@ export class NavbarComponent implements OnInit { ...@@ -38,13 +40,16 @@ export class NavbarComponent implements OnInit {
this.loginSubmitClick = false; this.loginSubmitClick = false;
this.forgotSubmitClick = false; this.forgotSubmitClick = false;
this.signupSubmitClick = false; this.signupSubmitClick = false;
this.spSignupSubmitClick = false;
} }
loginForm; loginForm;
forgotForm; forgotForm;
signupForm; signupForm;
autospsignupForm;
@ViewChild('loginModal') loginModal: ElementRef; @ViewChild('loginModal') loginModal: ElementRef;
@ViewChild('signupModal') signupModal: ElementRef; @ViewChild('signupModal') signupModal: ElementRef;
@ViewChild('spModal') spModal: ElementRef;
public scrollbarOptions = { axis: 'y', theme: 'minimal-dark' }; public scrollbarOptions = { axis: 'y', theme: 'minimal-dark' };
...@@ -72,6 +77,14 @@ export class NavbarComponent implements OnInit { ...@@ -72,6 +77,14 @@ export class NavbarComponent implements OnInit {
last_name: new FormControl('', [Validators.required, Validators.pattern("^[a-zA-Z\ _ - ' \/]+$")]), last_name: new FormControl('', [Validators.required, Validators.pattern("^[a-zA-Z\ _ - ' \/]+$")]),
first_name: new FormControl('', [Validators.required, Validators.pattern("^[a-zA-Z\ _ - ' \/]+$")]) first_name: new FormControl('', [Validators.required, Validators.pattern("^[a-zA-Z\ _ - ' \/]+$")])
}); });
this.autospsignupForm = new FormGroup({
email: new FormControl('', [Validators.required, Validators.maxLength(50), Validators.pattern('^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$')]),
phone: new FormControl('', [Validators.required, Validators.pattern("^[0-9\ ( ) + , - ]+$")]),
password: new FormControl('', [Validators.required, Validators.maxLength(16), Validators.minLength(6)]),
last_name: new FormControl('', [Validators.required, Validators.pattern("^[a-zA-Z\ _ - ' \/]+$")]),
first_name: new FormControl('', [Validators.required, Validators.pattern("^[a-zA-Z\ _ - ' \/]+$")])
});
} }
loginSubmit(data) { loginSubmit(data) {
...@@ -152,6 +165,36 @@ export class NavbarComponent implements OnInit { ...@@ -152,6 +165,36 @@ export class NavbarComponent implements OnInit {
}); });
} }
autospsignupSubmit(data){
if(this.autospsignupForm.invalid){
return false;
}
const This = this;
this.loader = true;
let funcName = 'service_provider_registration';
this.webService.post_data(funcName,data).subscribe(response => {
this.loader = false;
console.log(response);
if(response.status == '1'){
response.status = 'success';
response.message = 'Your Account has been created, Whenever it Activates will inform you.';
this.spSignupResponse = response;
}else{
response.status = 'error';
response.message = (response.message == '')?this.errorMsg.errorList.req_failure:response.message;
this.spSignupResponse = response;
}
},error => {
this.spSignupResponse = {'status':'error','message':this.errorMsg.errorList.req_failure};
},() => {
setTimeout( function() {
This.spSignupResponse = false;
This.spModal.nativeElement.click();
}, 4000)
});
}
resetForm(){ resetForm(){
//Login Form //Login Form
this.loginForm.reset(); this.loginForm.reset();
...@@ -167,6 +210,11 @@ export class NavbarComponent implements OnInit { ...@@ -167,6 +210,11 @@ export class NavbarComponent implements OnInit {
this.signupForm.reset(); this.signupForm.reset();
this.signupResponse = false; this.signupResponse = false;
this.signupSubmitClick = false; this.signupSubmitClick = false;
//Service provider Form
this.autospsignupForm.reset();
this.spSignupResponse = false;
this.spSignupSubmitClick = false;
} }
//Design //Design
......
let apiConfigUrl,imageStorageUrl; let apiConfigUrl,imageStorageUrl;
// // Localhost // // Localhost
// apiConfigUrl = 'http://localhost/dcarfixers/Webservices/'; apiConfigUrl = 'http://localhost/dcarfixers/Webservices/';
// imageStorageUrl = 'http://localhost/dcarfixers/'; imageStorageUrl = 'http://localhost/dcarfixers/';
// // Techlabz // // Techlabz
apiConfigUrl = 'http://techlabz.in/dcarfixers/Webservices/'; // apiConfigUrl = 'http://techlabz.in/dcarfixers/Webservices/';
imageStorageUrl = 'http://techlabz.in/dcarfixers/'; // imageStorageUrl = 'http://techlabz.in/dcarfixers/';
// carfixxers.com // carfixxers.com
// apiConfigUrl = 'https://carfixxers.com/admin/Webservices/'; // apiConfigUrl = 'https://carfixxers.com/admin/Webservices/';
......
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