fsmily pening

This commit is contained in:
CHIEFSOFT\ameye
2023-10-01 10:32:36 -04:00
parent 12cfceae25
commit 6286b0221b
9 changed files with 549 additions and 3 deletions
+3
View File
@@ -20,6 +20,9 @@ ionic generate page jobactive
ionic generate component taskactivities
ionic generate component suggestedlist
ionic generate component familypending
npm install angularx-qrcode@14.0.0 --save
npm install bn-ng-idle
@@ -0,0 +1,50 @@
<div *ngIf = "total_offers == 0; else elseFulltag">
<div></div>
</div>
<ng-template #elseFulltag>
<ion-grid class="fam1">
<ion-row class="pend-row" *ngFor="let item of myOffersData">
<ion-col class="famleft"></ion-col>
<ion-col class="mid_place">
<ion-label class="sug_text">{{item.title}}</ion-label>
<ion-button shape="round" (click)="startNewTasks(item)" fill="outline">Ready to Start</ion-button>
</ion-col>
</ion-row>
</ion-grid>
</ng-template>
<!--<div *ngIf = "suggested_count == 0; else elseFulltag">-->
<!--</div>-->
<!--<ion-card *ngFor="let item of myOffersData">-->
<!-- <div class="top_banner">-->
<!-- <img class="offer_banner" alt="{{item.title}}" src="https://www.wrenchboard.com/assets/images/apps/offerslist/{{item.banner}}" />-->
<!-- </div>-->
<!-- <ion-card-header>-->
<!-- <ion-card-title class="offer_title">{{item.title}}</ion-card-title>-->
<!-- <ion-card-subtitle>Expiration:{{item.expire | date}}</ion-card-subtitle>-->
<!-- </ion-card-header>-->
<!-- <ion-card-content>-->
<!-- {{item.job_description}}-->
<!-- </ion-card-content>-->
<!-- <ion-grid>-->
<!-- <ion-row>-->
<!-- <ion-col>-->
<!-- <ion-button size="small" (click)="requestReject(item)" color="danger" fill="outline">Reject</ion-button>-->
<!-- </ion-col>-->
<!-- <ion-col>-->
<!-- </ion-col>-->
<!-- <ion-col>-->
<!-- <ion-button size="small" (click)="requestStart(item)" color="success" fill="outline">Start Now</ion-button>-->
<!-- </ion-col>-->
<!-- </ion-row>-->
<!-- </ion-grid>-->
<!--</ion-card>-->
@@ -0,0 +1,414 @@
ion-content {
.back_image {
width: 100%;
height: 230px;
.back {
font-size: 25px;
color: white;
}
}
.flex {
display: flex;
justify-content: space-between;
align-items: center;
ion-icon {
font-size: 22px;
}
}
.row {
display: flex;
align-items: center;
margin-top: 10px;
.bg_text {
color: var(--ion-color-primary);
background: #dfe1f3;
font-size: 12px;
padding: 2px 5px;
border-radius: 5px;
margin-right: 10px;
}
.rate {
display: flex;
align-items: center;
.review {
margin-left: 5px;
}
}
}
.color_text {
margin-top: 10px;
font-size: 22px;
font-family: 'semi-bold';
color: var(--ion-color-primary);
}
.items {
display: flex;
justify-content: space-between;
margin-top: 10px;
margin-bottom: 20px;
border-bottom: 1px solid lightgrey;
padding-bottom: 10px;
.stud {
display: flex;
align-items: center;
ion-icon {
margin-right: 5px;
}
ion-label {
color: grey;
}
}
}
.about {
margin-top: 10px;
.head_text {
font-size: 18px;
font-family: 'semi-bold';
margin-bottom: 10px;
}
.mentor {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
.left {
display: flex;
.men_image {
height: 50px;
width: 50px;
border-radius: 100%;
}
.bold {
font-family: 'semi-bold';
}
.grey {
color: grey;
font-size: 14px;
}
}
ion-icon {
font-size: 25px;
}
}
.description {
color: grey;
margin-bottom: 5px;
}
}
.lesson {
margin-top: 20px;
.bold {
font-family: 'semi-bold';
}
.color {
color: var(--ion-color-primary);
}
.grey {
color: grey;
}
.sec {
display: flex;
justify-content: space-between;
align-items: center;
margin-top: 10px;
}
.video {
display: flex;
justify-content: space-between;
align-items: center;
background-color: white;
padding: 15px;
box-shadow: 0px 0px 20px 1px rgba(0, 0, 0, 0.1);
border-radius: 10px;
margin-top: 20px;
.left {
display: flex;
}
.men_image {
height: 40px;
width: 40px;
border-radius: 100%;
}
.text {
margin-left: 10px;
}
.bold_text {
font-size: 16px;
font-family: 'bold';
}
.grey_text {
font-size: 14px;
color: grey;
}
}
}
.review_tab {
margin-top: 20px;
.total {
display: flex;
align-items: center;
justify-content: space-between;
.star-rate {
display: flex;
align-items: center;
.bold {
font-size: 17px;
font-family: 'semi-bold';
margin-left: 5px;
}
}
.color {
color: var(--ion-color-primary);
font-size: 14px;
}
}
.story-item {
overflow: scroll;
display: flex;
flex-direction: row;
margin-top: 20px;
.menu {
width: 100%;
display: flex;
flex-direction: row;
.item {
padding: 5px;
margin: 5px;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
ion-thumbnail {
border-radius: 15px;
width: max-content;
height: 60px;
width: 60px;
--border-radius: 50%;
}
ion-label {
font-size: 14px;
font-family: "medium";
color: var(--ion-color-medium);
}
}
.text {
display: flex;
align-items: center;
text-align: center;
.select {
display: flex;
align-items: center;
border: 1px solid var(--ion-color-primary);
border-radius: 20px;
padding: 2px 15px;
margin-right: 10px;
.rate_num {
margin-left: 5px;
color: var(--ion-color-primary);
}
}
.show {
background-color: var(--ion-color-primary);
}
.white {
color: white !important;
}
.choice {
display: flex;
}
}
}
}
.reviw_list {
margin-top: 25px;
.profile {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 10px;
.left {
display: flex;
align-items: center;
.men_image {
height: 40px;
width: 40px;
border-radius: 100%;
}
.bold {
font-family: 'semi-bold';
}
.grey {
color: grey;
font-size: 14px;
}
}
.right {
display: flex;
align-items: center;
.select {
display: flex;
align-items: center;
border: 1px solid var(--ion-color-primary);
border-radius: 20px;
padding: 2px 15px;
margin-right: 10px;
.rate_num {
margin-left: 5px;
color: var(--ion-color-primary);
}
}
ion-icon {
font-size: 20px;
}
}
}
.like {
display: flex;
align-items: center;
margin-top: 10px;
.heart {
font-size: 25px;
margin-right: 5px;
}
.count {
margin-right: 10px;
}
.time {
color: grey;
font-size: 14px;
}
}
}
}
.bold_text {
font-size: 20px;
font-family: 'bold';
}
}
.fam1{
margin:10px 0px 10px 0px;
border-radius: 10px;
min-height: 100px;
.famleft{
background-image: url("https://www.wrenchboard.com/assets/images/apps/family/kids-waiting.jpg");
background-size: cover;
background-repeat: no-repeat;
width:100%;
height: 130px;
border-radius: 10px 0px 0px 10px;
}
.pend-row{
border-radius: 10px;
background-color: aliceblue;
margin: 5px 0px 10px 0px;
}
.mid_place{
margin: auto;
text-align: center;
.sug_text{
font-weight: bolder;
font-size: 14px;
padding: 5px;
}
}
}
ion-footer {
--background: white;
ion-toolbar {
--border-width: 0px;
padding: 10px;
align-items: center;
ion-icon {
color: white;
font-size: 25px;
}
.button {
background-color: var(--ion-color-primary);
display: flex;
align-items: center;
justify-content: space-around;
border-radius: 30px;
padding: 12px 0;
.text {
color: white;
}
}
}
}
@@ -0,0 +1,24 @@
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
import { IonicModule } from '@ionic/angular';
import { FamilypendingComponent } from './familypending.component';
describe('FamilypendingComponent', () => {
let component: FamilypendingComponent;
let fixture: ComponentFixture<FamilypendingComponent>;
beforeEach(waitForAsync(() => {
TestBed.configureTestingModule({
declarations: [ FamilypendingComponent ],
imports: [IonicModule.forRoot()]
}).compileComponents();
fixture = TestBed.createComponent(FamilypendingComponent);
component = fixture.componentInstance;
fixture.detectChanges();
}));
it('should create', () => {
expect(component).toBeTruthy();
});
});
@@ -0,0 +1,52 @@
import { Component, OnInit } from '@angular/core';
import {SessionDataProviderService} from "../../store/session-data-provider.service";
import {AlertController} from "@ionic/angular";
import {WrenchService} from "../../services/wrench.service";
@Component({
selector: 'app-familypending',
templateUrl: './familypending.component.html',
styleUrls: ['./familypending.component.scss'],
})
export class FamilypendingComponent implements OnInit {
constructor(
public sessionDataProviderService: SessionDataProviderService,
private alertController:AlertController,
private wrenchService: WrenchService) { }
ngOnInit() {
this. getMyOffersData();
}
startNewTasks(item){
}
usrData: {
action:number, member_id: number, uid: string,
sessionid: string,
limit:20,
page:1, offset:number
};
total_offers:number = 0;
myOffersTotalData:any;
myOffersData: [];
getMyOffersData(){
this.usrData = {action:15010,
member_id: this.sessionDataProviderService.member_id,
uid: this.sessionDataProviderService.member_uid,
sessionid: this.sessionDataProviderService.session ,
limit:20, page:1,offset: 0}
this.wrenchService.getMyOffers(this.usrData).subscribe(
myOffersTotalData => {
this.myOffersTotalData = myOffersTotalData;
console.log("myOffersTotalData RETURN->", this.myOffersTotalData);
this.myOffersData = this.myOffersTotalData.result_list;
console.log("myOffersData RETURN DATA->", this.myOffersData);
this.total_offers = this.myOffersData.length;
}
);
}
}
@@ -62,7 +62,7 @@
</div>
</div>
<div class="right">
<ion-icon name="lock-closed-outline"></ion-icon>
<ion-icon name="chevron-forward-outline"></ion-icon>
</div>
</div>
</div>
+2 -1
View File
@@ -8,6 +8,7 @@ import { HomePageRoutingModule } from './home-routing.module';
import { HomePage } from './home.page';
import { SuggestedlistComponent } from "../../components/suggestedlist/suggestedlist.component";
import {FamilypendingComponent} from "../../components/familypending/familypending.component";
@NgModule({
imports: [
@@ -16,6 +17,6 @@ import { SuggestedlistComponent } from "../../components/suggestedlist/suggested
IonicModule,
HomePageRoutingModule
],
declarations: [HomePage,SuggestedlistComponent]
declarations: [HomePage,SuggestedlistComponent,FamilypendingComponent]
})
export class HomePageModule { }
+2
View File
@@ -46,8 +46,10 @@
<div *ngIf = "accountType == 'FAMILY'; else elseFulltag">
<!-- <div class="lesson">-->
<app-familypending></app-familypending>
<app-suggestedlist></app-suggestedlist>
<ion-card (click)="goPlayground()">
<img alt="AI PlayGround" src="https://www.wrenchboard.com/assets/images/apps/ai-playground.jpg" />
<ion-card-header>
+1 -1
View File
@@ -39,7 +39,7 @@ ion-header {
}
}
ion-card{
margin: 0px 0px 10px 0px;
margin: 10px 0px 10px 0px;
}
.fam1{
margin:10px 0px 10px 0px;