Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { Component } from '@angular/core';
- import { IonicPage, NavController, NavParams,ActionSheetController, ToastController, Platform, LoadingController, Loading } from 'ionic-angular';
- //import { Detilbayar } from '../detilbayar/detilbayar';
- import { File } from '@ionic-native/file';
- import { Transfer, TransferObject } from '@ionic-native/transfer';
- import { FilePath } from '@ionic-native/file-path';
- import { Camera } from '@ionic-native/camera';
- import { Storage } from '@ionic/storage';
- import { SalonDetail } from '../../providers/apisalondetil-service';
- declare var cordova: any;
- /**
- * Generated class for the Reservasi page.
- *
- * See http://ionicframework.com/docs/components/#navigation for more info
- * on Ionic pages and navigation.
- */
- @IonicPage({
- name : 'reservasi'
- })
- @Component({
- selector: 'page-reservasi',
- templateUrl: 'reservasi.html',
- })
- export class Reservasi {
- lastImage: string = null;
- loading: Loading;
- public nama: any;
- public alamat: any;
- public noTelp: any;
- public idUser : any;
- public dataSalon: any;
- public datas: any;
- public data: any;
- public nama_service: any;
- public nama_pelayan: any;
- today
- constructor(public navCtrl: NavController, public navParams: NavParams,
- private camera: Camera, private transfer: Transfer, private file: File,
- private filePath: FilePath, public actionSheetCtrl: ActionSheetController,
- public toastCtrl: ToastController,
- public platform: Platform, public loadingCtrl: LoadingController, private storage: Storage,
- private salondetailApi: SalonDetail ) {
- this.today = new Date().toISOString();
- console.log(this.today);
- }
- ionViewDidLoad() {
- console.log('ionViewDidLoad Reservasi');
- this.storage.ready().then(()=>{
- this.storage.get('loginAuth').then((loginAuth) => {
- console.log(loginAuth, 'Data Reservasi Profil')
- this.nama = loginAuth.data["0"].nama_cust;
- this.alamat = loginAuth.data['0'].alamat;
- this.noTelp = loginAuth.data['0'].no_hp;
- })
- })
- }
- ionViewDidEnter(){
- this.idUser = this.navParams.get('id_user')
- console.log(this.idUser, 'idUser')
- this.salondetailApi.viewReservasi({ id_user: this.idUser }).then((result) =>{
- this.dataSalon = result;
- this.datas = this.dataSalon.data;
- console.log(JSON.stringify(this.datas));
- console.log(this.datas, 'Data Reservasi Salon');
- console.log(result, 'Result');
- });
- }
- /*detilbayar(){
- this.navCtrl.push(Detilbayar);
- }*/
- public presentActionSheet() {
- let actionSheet = this.actionSheetCtrl.create({
- title: 'Select Image Source',
- buttons: [
- {
- text: 'Load from Library',
- handler: () => {
- this.takePicture(this.camera.PictureSourceType.PHOTOLIBRARY);
- }
- },
- {
- text: 'Use Camera',
- handler: () => {
- this.takePicture(this.camera.PictureSourceType.CAMERA);
- }
- },
- {
- text: 'Cancel',
- role: 'cancel'
- }
- ]
- });
- actionSheet.present();
- }
- public takePicture(sourceType) {
- // Create options for the Camera Dialog
- var options = {
- quality: 100,
- sourceType: sourceType,
- saveToPhotoAlbum: false,
- correctOrientation: true
- };
- // Get the data of an image
- this.camera.getPicture(options).then((imagePath) => {
- // Special handling for Android library
- if (this.platform.is('android') && sourceType === this.camera.PictureSourceType.PHOTOLIBRARY) {
- this.filePath.resolveNativePath(imagePath)
- .then(filePath => {
- let correctPath = filePath.substr(0, filePath.lastIndexOf('/') + 1);
- let currentName = imagePath.substring(imagePath.lastIndexOf('/') + 1, imagePath.lastIndexOf('?'));
- this.copyFileToLocalDir(correctPath, currentName, this.createFileName());
- });
- } else {
- var currentName = imagePath.substr(imagePath.lastIndexOf('/') + 1);
- var correctPath = imagePath.substr(0, imagePath.lastIndexOf('/') + 1);
- this.copyFileToLocalDir(correctPath, currentName, this.createFileName());
- }
- }, (err) => {
- this.presentToast('Error while selecting image.');
- });
- }
- private createFileName() {
- var d = new Date(),
- n = d.getTime(),
- newFileName = n + ".jpg";
- return newFileName;
- }
- // Copy the image to a local folder
- private copyFileToLocalDir(namePath, currentName, newFileName) {
- this.file.copyFile(namePath, currentName, cordova.file.dataDirectory, newFileName).then(success => {
- this.lastImage = newFileName;
- }, error => {
- this.presentToast('Error while storing file.');
- });
- }
- private presentToast(text) {
- let toast = this.toastCtrl.create({
- message: text,
- duration: 3000,
- position: 'top'
- });
- toast.present();
- }
- // Always get the accurate path to your apps folder
- public pathForImage(img) {
- if (img === null) {
- return '';
- } else {
- return cordova.file.dataDirectory + img;
- }
- }
- public uploadImage() {
- // Destination URL
- var url = "http://yoururl/upload.php";
- // File for Upload
- var targetPath = this.pathForImage(this.lastImage);
- // File name only
- var filename = this.lastImage;
- var options = {
- fileKey: "file",
- fileName: filename,
- chunkedMode: false,
- mimeType: "multipart/form-data",
- params : {'fileName': filename}
- };
- const fileTransfer: TransferObject = this.transfer.create();
- this.loading = this.loadingCtrl.create({
- content: 'Uploading...',
- });
- this.loading.present();
- // Use the FileTransfer to upload the image
- fileTransfer.upload(targetPath, url, options).then(data => {
- this.loading.dismissAll()
- this.presentToast('Image succesful uploaded.');
- }, err => {
- this.loading.dismissAll()
- this.presentToast('Error while uploading file.');
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement