Change Shop name in card
Aim:
To
develop a code to create a change shop name.
Code:
HTML FILE:
--- THIS IS CARD ---
<div class="row">
<div class="col-xl-3 col-sm-6" *ngFor="let work of
workspaceList; let i = index">
<div class="card text-center" id="cardheight">
<div class="card-body">
<div *ngIf="!(showTab == i)" id="shopname"> {{work.workspaceName }}</div>
----
THIS IS LOADING SPINNER ----
<div class="d-flex justify-content-center" id="iconalign">
<span *ngIf="loading[i]" class="spinner-border" role="status">
<span class="sr-only">Loading...</span></span>
</div>
------ THIS IS INPUT BOX ------
<div *ngIf="showTab == i" class="col-md-12
px-3">
<input type="text" id="lname" name="lname" [(ngModel)]="workspaceName[i]"><br><br>
</div>
----
THIS IS EYE ICON ----
<div class="card-footer bg-transparent
border-top">
<div class="contact-links d-flex font-size-20">
<div class="flex-fill">
<a href="javascript: void(0);" *ngIf="!(showTab ==
i)" ngbTooltip="view"><i class="fas fa-eye" id="view"
(click)="setworkspaceid(work.workspaceID,work.workspaceName,work.id)"></i></a>
</div>
----- THIS IS EDIT ICON -----
<div class="flex-fill">
<a href="javascript: void(0);" *ngIf="!(showTab ==
i)" ngbTooltip="edit" (click)="tabToggle(i)"><i
class='bx bxs-edit-alt' id="edit"></i></a>
----- THIS IS CANCEL ICON ----
<a href="javascript: void(0);" *ngIf="showTab == i" (click)="tabToggle(-1)"><i class="dripicons-cross"
id="cross"></i></a>
</div>
---- THIS IS DELETE ICON ----
<div class="flex-fill">
<a href="javascript: void(0);" *ngIf="!(showTab ==
i)" ngbTooltip="delete">
<i class="bx bxs-trash" id="trash" (click)="confirm(work.workspaceID,i)"></i></a>
<span (click)="tabToggle(-1)"><a href="javascript:
void(0);" *ngIf="showTab == i"> <i class="bx bx-check"
id="tik" (click)="updateconfirm(work.workspaceID,
i) "></i></a>
</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
-
TS FILE:
ngOnInit() {
this.isloading = true;
this.user.getworkshopid().subscribe(data => {
this.isloading = false
this.workspaceList = data?.["result"];
this.workspaceList.forEach(element => {
this.workspaceName.push(element.workspaceName)
});
console.log(this.workspaceList)
})
}
setworkspaceid(workspaceID,workspaceName,id){
localStorage.setItem("workspaceID",workspaceID);
localStorage.setItem("workspaceName",workspaceName);
localStorage.setItem('id',id);
console.log(workspaceID);
console.log(workspaceName);
this.router.navigate(['/report'])
const data: TriggerOption = {
type: "workspaceName",
value: "",
show: true,
};
this.observableService.emitData(data);
}
updateshop(id, index){
this.loading[index] = true
let paylod = {
workspaceID: id,
workspaceName: this.workspaceName[index]
}
console.log(paylod)
this.user.updateshop(paylod).subscribe(data=>
{
this.loading[index] = false
this.result=data?.["result"];
console.log(data)
console.log(this.result);
this.user.getworkshopid().subscribe(data=>
{
this.workspaceList = data?.["result"];
console.log(data)
console.log(this.workspaceList)
})
},
error => {
this.loading[index] = false
console.log(error)
})
}
updateconfirm(id, index) {
Swal.fire({
title: 'Are your sure you want to change',
// text: 'You won\'t be able to revert this!',
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#34c38f',
cancelButtonColor: '#f46a6a',
confirmButtonText: 'Yes'
}).then(result => {
if (result.value) {
this.updateshop(id, index);
// Swal.fire('ch', 'shop has been deleted.', 'success');
}
});
}
showTab;
tabToggle(index){
this.showTab =index;
console.log(index)
}
Output: