diff --git a/REMEMBER.txt b/REMEMBER.txt index eb036bc..a99783a 100644 --- a/REMEMBER.txt +++ b/REMEMBER.txt @@ -13,6 +13,7 @@ ionic generate page mytask ionic generate page jobmanager ionic generate page jobinterest +ionic generate page jobintprocess ionic generate page jobreview ionic generate page jobpastdue diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index 328199e..f932556 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -250,6 +250,11 @@ const routes: Routes = [ path: 'familysettings', loadChildren: () => import('./pages/familysettings/familysettings.module').then(m => m.FamilysettingsPageModule) }, + { + path: 'jobintprocess', + loadChildren: () => import('./pages/jobintprocess/jobintprocess.module').then(m => m.JobintprocessPageModule) + }, + ]; diff --git a/src/app/pages/family/family.page.html b/src/app/pages/family/family.page.html index 5c370c3..a77e287 100644 --- a/src/app/pages/family/family.page.html +++ b/src/app/pages/family/family.page.html @@ -16,9 +16,9 @@
-
- -
+ + +
diff --git a/src/app/pages/family/family.page.scss b/src/app/pages/family/family.page.scss index 2bf0072..38b5fba 100644 --- a/src/app/pages/family/family.page.scss +++ b/src/app/pages/family/family.page.scss @@ -8,7 +8,8 @@ ion-content { margin-top: 10px; width: 100%; height: 200px; - background-size: contain; + //background-size: contain; + border-radius: 15px; .back { font-size: 25px; diff --git a/src/app/pages/familysettings/familysettings.page.html b/src/app/pages/familysettings/familysettings.page.html index 9837eac..e2310d5 100644 --- a/src/app/pages/familysettings/familysettings.page.html +++ b/src/app/pages/familysettings/familysettings.page.html @@ -16,7 +16,7 @@ - +
diff --git a/src/app/pages/jobactive/jobactive.page.ts b/src/app/pages/jobactive/jobactive.page.ts index 4d27f57..6a61261 100644 --- a/src/app/pages/jobactive/jobactive.page.ts +++ b/src/app/pages/jobactive/jobactive.page.ts @@ -15,6 +15,9 @@ export class JobactivePage implements OnInit { jobData: any; tabs = 'activities'; item_banner:string = 'default.jpg'; + session_image_server:string=''; + curr_session:string=''; + constructor( private navctr: NavController, private router: Router, @@ -27,6 +30,7 @@ export class JobactivePage implements OnInit { ngOnInit() { + this.curr_session = this.sessionDataProviderService.session; //this.activeJobMsgList(); } diff --git a/src/app/pages/jobinterest/jobinterest.page.html b/src/app/pages/jobinterest/jobinterest.page.html index 481a5f2..68f5357 100644 --- a/src/app/pages/jobinterest/jobinterest.page.html +++ b/src/app/pages/jobinterest/jobinterest.page.html @@ -1,4 +1,15 @@ + + + + + + + + Jobs Interest + + +
@@ -50,9 +61,9 @@ -
+
-
+
{{item.title}} @@ -111,10 +122,10 @@
- - -
- Return -
-
-
+ + + + + + + diff --git a/src/app/pages/jobinterest/jobinterest.page.ts b/src/app/pages/jobinterest/jobinterest.page.ts index 8792bbb..e7287ee 100644 --- a/src/app/pages/jobinterest/jobinterest.page.ts +++ b/src/app/pages/jobinterest/jobinterest.page.ts @@ -11,6 +11,8 @@ import {SessionDataProviderService} from "../../store/session-data-provider.serv export class JobinterestPage implements OnInit { tabs = 'about'; + session_image_server:string=''; + curr_session:string=''; constructor( private navctr: NavController, @@ -19,6 +21,7 @@ export class JobinterestPage implements OnInit { private wrenchService: WrenchService ) {} ngOnInit() { + this.curr_session = this.sessionDataProviderService.session; this.getManagerOffersData(); } @@ -26,12 +29,8 @@ export class JobinterestPage implements OnInit { this.navctr.back(); } - onMentor() { - this.router.navigate(['mentor']); - } - - onEnroll() { - this.router.navigate(['enroll']); + processJobInt(item) { + this.router.navigate(['jobintprocess'],{state: item}); } usrData: { @@ -52,8 +51,10 @@ export class JobinterestPage implements OnInit { this.wrenchService.getManagerOffersList(this.usrData).subscribe( jobManagerOffersTotalData => { this.jobManagerOffersTotalData = jobManagerOffersTotalData; + this.session_image_server = this.jobManagerOffersTotalData.session_image_server; console.log("jobManagerOffersTotalData RETURN->", this.jobManagerOffersTotalData); this.jobManagerOffersJobsData = this.jobManagerOffersTotalData.result_list; + // debugger; console.log("jobManagerOffersJobsData RETURN DATA->", this.jobManagerOffersJobsData); } diff --git a/src/app/pages/jobintprocess/jobintprocess-routing.module.ts b/src/app/pages/jobintprocess/jobintprocess-routing.module.ts new file mode 100644 index 0000000..91aaf5f --- /dev/null +++ b/src/app/pages/jobintprocess/jobintprocess-routing.module.ts @@ -0,0 +1,17 @@ +import { NgModule } from '@angular/core'; +import { Routes, RouterModule } from '@angular/router'; + +import { JobintprocessPage } from './jobintprocess.page'; + +const routes: Routes = [ + { + path: '', + component: JobintprocessPage + } +]; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule], +}) +export class JobintprocessPageRoutingModule {} diff --git a/src/app/pages/jobintprocess/jobintprocess.module.ts b/src/app/pages/jobintprocess/jobintprocess.module.ts new file mode 100644 index 0000000..b89de07 --- /dev/null +++ b/src/app/pages/jobintprocess/jobintprocess.module.ts @@ -0,0 +1,20 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { FormsModule } from '@angular/forms'; + +import { IonicModule } from '@ionic/angular'; + +import { JobintprocessPageRoutingModule } from './jobintprocess-routing.module'; + +import { JobintprocessPage } from './jobintprocess.page'; + +@NgModule({ + imports: [ + CommonModule, + FormsModule, + IonicModule, + JobintprocessPageRoutingModule + ], + declarations: [JobintprocessPage] +}) +export class JobintprocessPageModule {} diff --git a/src/app/pages/jobintprocess/jobintprocess.page.html b/src/app/pages/jobintprocess/jobintprocess.page.html new file mode 100644 index 0000000..711ea32 --- /dev/null +++ b/src/app/pages/jobintprocess/jobintprocess.page.html @@ -0,0 +1,67 @@ + + + + + + + + {{jobData.offer_code}} + + + + +
+
+ +
+
+ +
+
+
+ {{jobData?.title}} + +
+ +
+ {{jobData.offer_code}} +
+ + ({{jobData.interest_count}} interest) +
+
+ + Price: {{jobData.price*0.01| number : '1.2-2'}} {{jobData.currency}} + +
+
+ + Timeline: {{jobData.timeline_days}} days +
+
+ + + + + + + First Accordion + +
First Content
+
+ + + Second Accordion + +
Second Content
+
+ + + Third Accordion + +
Third Content
+
+
+
+
+
diff --git a/src/app/pages/jobintprocess/jobintprocess.page.scss b/src/app/pages/jobintprocess/jobintprocess.page.scss new file mode 100644 index 0000000..5200b68 --- /dev/null +++ b/src/app/pages/jobintprocess/jobintprocess.page.scss @@ -0,0 +1,388 @@ + +ion-content { + .back_image { + width: 100%; + height: 150px; + background-size: contain; + background-repeat: no-repeat; + border-radius: 20px; + + .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'; + } +} + + +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; + } + } + } +} diff --git a/src/app/pages/jobintprocess/jobintprocess.page.spec.ts b/src/app/pages/jobintprocess/jobintprocess.page.spec.ts new file mode 100644 index 0000000..27f8440 --- /dev/null +++ b/src/app/pages/jobintprocess/jobintprocess.page.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { IonicModule } from '@ionic/angular'; + +import { JobintprocessPage } from './jobintprocess.page'; + +describe('JobintprocessPage', () => { + let component: JobintprocessPage; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ JobintprocessPage ], + imports: [IonicModule.forRoot()] + }).compileComponents(); + + fixture = TestBed.createComponent(JobintprocessPage); + component = fixture.componentInstance; + fixture.detectChanges(); + })); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/pages/jobintprocess/jobintprocess.page.ts b/src/app/pages/jobintprocess/jobintprocess.page.ts new file mode 100644 index 0000000..17d1bd3 --- /dev/null +++ b/src/app/pages/jobintprocess/jobintprocess.page.ts @@ -0,0 +1,39 @@ +import { Component, OnInit } from '@angular/core'; +import {NavController} from "@ionic/angular"; +import {Router} from "@angular/router"; +import {SessionDataProviderService} from "../../store/session-data-provider.service"; +import {WrenchService} from "../../services/wrench.service"; + +@Component({ + selector: 'app-jobintprocess', + templateUrl: './jobintprocess.page.html', + styleUrls: ['./jobintprocess.page.scss'], +}) +export class JobintprocessPage implements OnInit { + session_image_server:string=''; + curr_session:string=''; + + jobData: any; + constructor( private navctr: NavController, + private router: Router, + public sessionDataProviderService: SessionDataProviderService, + private wrenchService: WrenchService) { + + this.jobData = this.router.getCurrentNavigation().extras.state; + console.log("XXXXX 1", this.router.getCurrentNavigation().extras); + console.log("XXXXX 2", this.router.getCurrentNavigation().extras.state); + //console.log("XXXXX 3", this.router.getCurrentNavigation().extras.state.ID); + if (this.jobData==undefined){ + this.onBack(); + } + + } + + ngOnInit() { + this.session_image_server = this.sessionDataProviderService.session_image_server; + this.curr_session=this.sessionDataProviderService.session; + } + onBack() { + this.navctr.back(); + } +} diff --git a/src/app/pages/pendinterest/pendinterest.page.ts b/src/app/pages/pendinterest/pendinterest.page.ts index 081a853..e9485a0 100644 --- a/src/app/pages/pendinterest/pendinterest.page.ts +++ b/src/app/pages/pendinterest/pendinterest.page.ts @@ -3,6 +3,7 @@ import { Component, OnInit } from '@angular/core'; import { NavController } from '@ionic/angular'; import { WrenchService } from 'src/app/services/wrench.service'; import {SessionDataProviderService} from "../../store/session-data-provider.service"; +import {WaitingInterestService} from "../../store/waiting-interest.service"; @Component({ selector: 'app-pendinterest', @@ -17,7 +18,8 @@ export class PendinterestPage implements OnInit { private navctr: NavController, private router: Router, public sessionDataProviderService: SessionDataProviderService, - private wrenchService: WrenchService + private wrenchService: WrenchService, + private waitingInterestService:WaitingInterestService ) { }