diff --git a/REMEMBER.txt b/REMEMBER.txt
index d64fe04..9eeb1d1 100644
--- a/REMEMBER.txt
+++ b/REMEMBER.txt
@@ -89,6 +89,7 @@ ionic generate service waiting-interest
ionic generate service socket-tools
+ionic generate service media-connect
ionic generate component tracking
ionic generate component myjob-offers
diff --git a/package.json b/package.json
index fa2b791..12f92a1 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "WrenchBoard",
- "version": "46.2.4",
+ "version": "46.2.5",
"author": "WrenchBaoard LLC",
"homepage": "https://www.wrenchboard.com/",
"scripts": {
@@ -35,9 +35,11 @@
"@capacitor/keyboard": "^5.0.0",
"@capacitor/preferences": "^5.0.6",
"@capacitor/status-bar": "^5.0.0",
+ "@capawesome/capacitor-file-picker": "^5.3.0",
"@codetrix-studio/capacitor-google-auth": "^3.3.2",
"@ionic/angular": "^6.1.9",
"angularx-qrcode": "^14.0.0",
+ "axios": "^1.5.1",
"bn-ng-idle": "^2.0.5",
"flutterwave-angular-v3": "^1.2.1",
"jwt-decode": "^3.1.2",
diff --git a/src/app/pages/jobmessage/jobmessage.page.html b/src/app/pages/jobmessage/jobmessage.page.html
index 83d5cce..9d11b9c 100644
--- a/src/app/pages/jobmessage/jobmessage.page.html
+++ b/src/app/pages/jobmessage/jobmessage.page.html
@@ -11,8 +11,6 @@
-
-
-
-
-
-
- {{item.msg_from}} -
- {{item.msg_date}}
-
- {{item.msg}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/app/pages/jobreview/jobreview.page.html b/src/app/pages/jobreview/jobreview.page.html
index fea5a0e..2f8445d 100644
--- a/src/app/pages/jobreview/jobreview.page.html
+++ b/src/app/pages/jobreview/jobreview.page.html
@@ -100,10 +100,10 @@
-
+
-
+
@@ -124,19 +124,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/app/pages/jobreview/jobreview.page.ts b/src/app/pages/jobreview/jobreview.page.ts
index 4d858da..6d6caab 100644
--- a/src/app/pages/jobreview/jobreview.page.ts
+++ b/src/app/pages/jobreview/jobreview.page.ts
@@ -4,6 +4,8 @@ import {Router} from "@angular/router";
import {SessionDataProviderService} from "../../store/session-data-provider.service";
import {WrenchService} from "../../services/wrench.service";
import {Camera, CameraResultType, CameraSource} from "@capacitor/camera";
+import { FilePicker } from '@capawesome/capacitor-file-picker';
+import {MediaConnectService} from "../../services/media-connect.service";
@Component({
selector: 'app-jobreview',
@@ -23,7 +25,8 @@ export class JobreviewPage implements OnInit {
public sessionDataProviderService: SessionDataProviderService,
private wrenchService: WrenchService,
private alertController:AlertController,
- private loadingCtrl: LoadingController
+ private loadingCtrl: LoadingController,
+ private mediaConnectService: MediaConnectService
) {
this.jobData = this.router.getCurrentNavigation().extras.state;
this.item_banner = this.jobData.banner;
@@ -208,6 +211,7 @@ export class JobreviewPage implements OnInit {
uploadResult:any;
async startCamera(cameraMode){
+
const image = await Camera.getPhoto({
quality: 50,
width : 600,
@@ -216,8 +220,18 @@ export class JobreviewPage implements OnInit {
resultType: CameraResultType.Base64,
source: (cameraMode == 100 ) ? CameraSource.Camera : CameraSource.Prompt // Camera, Photos or Prompt!
});
+ // const image_test = await Camera.getPhoto({
+ // quality: 50,
+ // width : 600,
+ // height : 300,
+ // allowEditing: false,
+ // resultType: CameraResultType.Uri,
+ // source: (cameraMode == 100 ) ? CameraSource.Camera : CameraSource.Prompt // Camera, Photos or Prompt!
+ // });
if (image) {
+ debugger;
+
const loading = await this.loadingCtrl.create({
message: 'Uploading updates',
duration: 5000,
@@ -253,4 +267,59 @@ export class JobreviewPage implements OnInit {
// console.log( this.uploadData);
}
}
+
+ uploadFormData: {
+ action:number,
+ member_id: number,
+ uid: string,
+ contract: string,
+ sessionid: string,
+ msg_type:'FILE',
+ file: any
+ };
+
+ async pickFiles (fileMode) {
+ const result = await FilePicker.pickFiles({
+ types: ['image/png','image/jpeg','video/mp4'],
+ multiple: false,
+ readData:true
+ });
+
+
+ if(result){
+ console.log(result);
+ // debugger;
+ this.uploadFormData={
+ action:14010,
+ member_id: this.sessionDataProviderService.member_id,
+ uid: this.sessionDataProviderService.member_uid,
+ contract: this.jobData.contract,
+ sessionid: this.sessionDataProviderService.session ,
+ msg_type:'FILE',
+ file: result.files[0]
+ };
+
+ //result.files[0]
+
+ const formData = new FormData();
+ formData.append('file', this.uploadFormData.file )
+ formData.append('uid', this.sessionDataProviderService.member_uid)
+ formData.append('sessionid', this.sessionDataProviderService.session)
+ formData.append('member_id', this.sessionDataProviderService.member_id.toString())
+ formData.append('action', '14010')
+ formData.append('msg_type', 'FILE')
+ formData.append('contract', this.jobData.contract)
+
+ this.mediaConnectService.uploadtaskFile(formData).subscribe(
+ uploadResult => {
+ this.uploadResult = uploadResult;
+ console.log("this.mediaConnectService.uploadFile RETURN DATA->", formData);
+ const event = new Event("app-taskactivities-refresh");
+ // Dispatch the event.
+ dispatchEvent(event);
+ }
+ );
+ }
+ }
+
}
diff --git a/src/app/services/media-connect.service.spec.ts b/src/app/services/media-connect.service.spec.ts
new file mode 100644
index 0000000..9c1b31f
--- /dev/null
+++ b/src/app/services/media-connect.service.spec.ts
@@ -0,0 +1,16 @@
+import { TestBed } from '@angular/core/testing';
+
+import { MediaConnectService } from './media-connect.service';
+
+describe('MediaConnectService', () => {
+ let service: MediaConnectService;
+
+ beforeEach(() => {
+ TestBed.configureTestingModule({});
+ service = TestBed.inject(MediaConnectService);
+ });
+
+ it('should be created', () => {
+ expect(service).toBeTruthy();
+ });
+});
diff --git a/src/app/services/media-connect.service.ts b/src/app/services/media-connect.service.ts
new file mode 100644
index 0000000..0232c75
--- /dev/null
+++ b/src/app/services/media-connect.service.ts
@@ -0,0 +1,58 @@
+import { Injectable } from '@angular/core';
+import {HttpClient, HttpHeaders} from '@angular/common/http';
+import { Observable } from 'rxjs';
+import { environment } from 'src/environments/environment';
+import { SessionDataProviderService } from '../store/session-data-provider.service';
+import {Router} from "@angular/router";
+import axios from "axios";
+
+
+@Injectable({
+ providedIn: 'root'
+})
+export class MediaConnectService {
+
+ apiKey = '99dfe35fcb7de1ee';
+ url;
+
+ constructor(private http: HttpClient,
+ private router: Router,
+ public sessionDataProviderService :SessionDataProviderService) {
+ // this is test
+ this.url = 'https://dev-media.wrenchboard.com';
+ }
+
+ sendPostData(reqPath:string, reqData): Observable {
+ let headers = new HttpHeaders({
+ 'Content-Type': 'application/json',
+ /* 'Authorization': this.basic */});
+ let options = { headers: headers };
+
+ headers.append('Content-Type','multipart/form-data');
+
+ const apiReturn = this.http.post(
+ `${environment.baseMediaUrl}/${reqPath}`,reqData, { headers: headers}
+ );
+
+ // const apiReturn = this.http.post(
+ // `${environment.baseMediaUrl}/${reqPath}`,reqData
+ // );
+
+ console.log(reqData);
+
+ axios.post('https://dev-media.wrenchboard.com/upload/contract',reqData )
+ .then( res => {})
+ .catch(er => console.log(er))
+
+ return apiReturn;
+ }
+ uploadtaskFile(formData){
+ // debugger;
+ console.log("formData == > ", formData);
+ const pathUpload = "upload/contract";
+ return this.sendPostData(pathUpload, formData);
+ //
+ }
+
+
+}
diff --git a/src/app/services/wrench.service.ts b/src/app/services/wrench.service.ts
index 4a95f36..dccbc6d 100644
--- a/src/app/services/wrench.service.ts
+++ b/src/app/services/wrench.service.ts
@@ -384,133 +384,4 @@ export class WrenchService {
uploadFile(uploadData){
return this.getPostData("/uploads", uploadData);
}
-
- /*
-
-
-
-
- registerUser(newUserData) {
- // no session needed - will start the session
- return this.http.post(this.url + '/createmobileuser', newUserData)
- .map(res => res.json());
- }
- completeRegisterUser(newUserData) {
- // no session needed - will start the session
- return this.http.post(this.url + '/completemobileuser', newUserData)
- .map(res => res.json());
- }
-
- startResetPassword(UserData) {
- // no session needed - will start the session
- return this.http.post(this.url + '/startresetpasword', UserData)
- .map(res => res.json());
- }
-
- getStartData() {
- return this.http.post(this.url + '/startjoblist', { limit: '10', page: '1' })
- .map(res => res.json());
- }
-
- getJobsData() {
- return this.http.post(this.url + '/getjobsdata', { limit: '20', page: '1' })
- .map(res => res.json());
- }
-
- getPendingJobsData(userData: any) {
- return this.http.post(this.url + '/getpendingjobs', userData)
- .map(res => res.json());
- }
-
- getMessages(UserData) {
- console.log("getMessages Called");
- return this.http.post(this.url + '/message', UserData)
- .map(res => res.json());
- }
- //JOBS
- getActiveJobData(UserData) {
- console.log("getActiveJobData Called");
- return this.http.post(this.url + '/activejoblist', UserData)
- .map(res => res.json());
- }
-
- getMyOffersJobData(UserData) {
- console.log("getMyOffersJobData Called");
- return this.http.post(this.url + '/offerslist', UserData)
- .map(res => res.json());
- }
- //=========================================
- getPaymentHx(UserData) {
- console.log("getPaymentHx Called");
- return this.http.post(this.url + '/paymenthx', UserData)
- .map(res => res.json());
- }
-
- getOffersJobDataff() {
- console.log("getOffersJobData Called");
- return this.http.post(this.url + '/offerslist', { limit: '10', page: '1', sessionid: 'ADNGHGHGHGHGHGH', member_id: 1 })
- .map(res => res.json());
- }
-
- getDashData(memberID, sessionID) {
- // session required here
- return this.http.post(this.url + '/dashdata', { sessionid: sessionID, member_id: memberID })
- .map(res => res.json());
- }
- getUserAccount(memberID, sessionID) {
- // account
- return this.http.post(this.url + '/account', { sessionid: sessionID, member_id: memberID })
- .map(res => res.json());
- }
- getProfile(memberID, sessionID) {
- //loadprofile
- return this.http.post(this.url + '/loadprofile', { sessionid: sessionID, member_id: memberID })
- .map(res => res.json());
- }
-
- getUserBankList(UserData) {
- console.log("getActiveJobData Called");
- return this.http.post(this.url + '/mybanklist', UserData)
- .map(res => res.json());
- }
- userSendMoneyt(SendMoneydata) {
- console.log("userSendMoneyt Called");
- return this.http.post(this.url + '/sendmoney', SendMoneydata)
- .map(res => res.json());
- }
-
- sendMoneyFee(SendMoneydata) {
- console.log("sendMoneyFee Called");
- return this.http.post(this.url + '/sendmoneyfee', SendMoneydata)
- .map(res => res.json());
- }
- sendJobInterest(SendJobInterestData) {
- console.log("sendJobInterest Called");
- return this.http.post(this.url + '/sendinterest', SendJobInterestData)
- .map(res => res.json());
- }
- sendOfferInterest(SendJobInterestData) {
- console.log("sendOfferInterest Called");
- return this.http.post(this.url + '/sendofferinterest', SendJobInterestData)
- .map(res => res.json());
- }
-
- sendJobInterestMessage(sendJobInterestMessage) {
- console.log("sendJobInterestMessage Called");
- return this.http.post(this.url + '/sendinterestmessage', sendJobInterestMessage)
- .map(res => res.json());
- }
-
- getTaskMessage(taskData: any) {
- console.log("getTaskMessage Called");
- return this.http.post(this.url + '/taskmessage', taskData)
- .map(res => res.json());
- }
-
- sendTaskMessage(taskMessage: any) {
- console.log("sendTaskMessage Called");
- return this.http.post(this.url + '/sendtaskmessage', taskMessage)
- .map(res => res.json());
- }
- */
}