endApiRegister method

dynamic endApiRegister({
  1. String? verifoce,
})

Implementation

endApiRegister({String? verifoce}) {
  onCallApi = true;
  setState(() {});
  Preferences.getFirebase().then((firebaseToken) {
    if (firebaseToken!.isNotEmpty) {
      Preferences.getKodeReferral().then((valueKode) {
        ApiSellon.createDefaultParams((parameter) {
          if (valueKode != null && valueKode != '') {
            parameter.set("kode_referral", valueKode);
          }
          if (kodeReferralType != null && kodeReferralType != '') {
            parameter.set("referral_type", kodeReferralType);
          }

          Helper().getId2().then((value) {
            if (value != null && value != '') {
              parameter.set("device_id", value);
            }
            if (widget.registerWith == RegisterWith.emailSign) {
              parameter.set("email", emailController.text);
            }
            parameter.set("password", passwordController.text);
            parameter.set("telp", phoneNumberController.text);
            parameter.set("fnama", fullnameController.text);
            if (selectedImageCover != null){
              parameter.set("image", selectedImageCover!);
            }
            parameter.set("fcm_token", firebaseToken);
            parameter.set("device", Platform.isIOS ? "ios" : "android");
            if (verifoce != null) {
              parameter.set("verifPhone", verifoce);
            }

            if (widget.registerWith == RegisterWith.googleSign) {
              parameter.set("email", emailController.text);
              // Helper().pushSetAnalytic("SignupPhoneNoSuccess", "SignUp", "Click");
              parameter.set("google_id", widget.id!);
              // final rawNonce = Helper().generateNonce();
              // parameter.set("google_id", rawNonce);
            }

            if (widget.registerWith == RegisterWith.facebookSign) {
              parameter.set("email", emailController.text);
              parameter.set("fb_id", widget.id!);
            }

            if (widget.registerWith == RegisterWith.appleSign) {
              parameter.set("email", emailController.text);
              parameter.set("apple_id", widget.id!);
            }

            if (widget.registerWith == RegisterWith.emailSign) {
              parameter.set("verif_phone", "1");
            }

            if (Config.AppVersion == VersionApps.singapura) {
              parameter.set("address_catatan", addressNoteController.text);
              parameter.set(
                  "address_longitude", addressVendorModel!.longitude!);
              parameter.set(
                  "address_latitude", addressVendorModel!.latitude!);
              parameter.set("address_kodepos", addressVendorModel!.postcode!);
              parameter.set("address_kelurahan", "");
              parameter.set("address_kecamatan", "");
              parameter.set("address_kabkota", "SINGAPORE");
              parameter.set("address_provinsi", "");
              parameter.set("address_alamat2",
                  "${addressVendorModel!.buildingNumber} ${addressVendorModel!.streetName}, ${addressVendorModel!.buildingName}");
            } else if (Config.AppVersion == VersionApps.indonesia) {
              parameter.set("address_longitude", widget.long!);
              parameter.set("address_latitude", widget.lat!);
              parameter.set("address_kodepos", posCode);
              parameter.set("address_kelurahan", kelurahan);
              parameter.set("address_kecamatan", kecamatan);
              parameter.set("address_kabkota", kota);
              parameter.set("address_provinsi", provinsi);
              // print("apa ini ${widget.googlemaps.name}");
              // parameter.set("address_alamat2", widget.googlemaps.name);
              // if (widget.googlemaps != null) {
              //   parameter.set("country_origin", widget.googlemaps!.country);
              // }

              if (country != '') {
                parameter.set("country_origin", country);
              }
              // parameter.set("country_origin", country);
            }
            parameter.set(
                "address_penerima_telp", phoneNumberController.text);
            parameter.set("address_penerima_nama", fullnameController.text);
            // parameter.set("coverage_id", idCover);

            parameter.set("is_emulator", Config.emulator! ? "1" : "0");
            parameter.set("is_register", "1");
            parameter.set("game_id", Config.idGame);

            isLoading = true;
            setState(() {});

            Helper().checksodium().then((sodim) async{
              ParameterRegisterNew par = await Helper().encryparamater(sodim, parameter.getJson(),"register");
              Parameter paranew = Parameter();

              paranew.set("bla2", par.bla1);
              paranew.set("bla3", par.bla2);
              paranew.set("bla1", par.postData);

              ApiSellon api = ApiSellon(context);
              api.setErrorListener((error) {
                if (Config.verificationPhone != null) {
                  Config.verificationPhone = false;
                  SellonRouter.pop(context);
                }
                // if (widget.registerWith == RegisterWith.googleSign) {
                //   Helper()
                //       .pushSetAnalytic("SignupGoogleFail", "SignUp", "Click");
                // }
                //
                // if (widget.registerWith == RegisterWith.facebookSign) {
                //   Helper()
                //       .pushSetAnalytic("SignupFacebookFail", "SignUp", "Click");
                // }
                //
                // if (widget.registerWith == RegisterWith.appleSign) {
                //   Helper().pushSetAnalytic(
                //       "SignupAppleUpInFail", "SignUp", "Click");
                // }
                //
                // if (widget.registerWith == RegisterWith.emailSign) {
                //   Helper()
                //       .pushSetAnalytic("SignupEmailFail", "SignUp", "Click");
                // }

                Ui.of(context)
                    .errorAlert(message: error.errMessage, duration: 3);
                // Toast.show(error.errMessage, context, duration: 3);

                Config.isCheckVerifAgain = true;
                onCallApi = false;
                isLoading = false;
                suscessDaftar = false;
                setState(() {});
                setState(() {});
              });
              api.execute(
                  Config.AppVersion == VersionApps.indonesia
                      ? MethodsSellon.pelangganDaftarv2
                      : MethodsSellon.pelangganDaftar,
                  SellonMethod.post,
                  paranew, (response) {
                // Helper().pushSetAnalytic("SignupSuccess", "SignUp", "FB" || "google" || );

                // if (widget.registerWith == RegisterWith.googleSign) {
                //   Helper().pushSetAnalytic("SignupGoogle", "SignUp", "Click");
                // }
                //
                // if (widget.registerWith == RegisterWith.facebookSign) {
                //   Helper().pushSetAnalytic("SignupFacebook", "SignUp", "Click");
                // }
                //
                // if (widget.registerWith == RegisterWith.appleSign) {
                //   Helper().pushSetAnalytic("SignupApple", "SignUp", "Click");
                // }
                //
                // if (widget.registerWith == RegisterWith.emailSign) {
                //   Helper().pushSetAnalytic("SignupEmail", "SignUp", "Click");
                // }
                //
                // if (widget.registerWith == RegisterWith.phoneSign) {
                //   Helper().pushSetAnalytic("SignupPhone", "SignUp", "Click");
                // }

                Preferences.getKodeReferralPermanent().then((value) {
                  if (value == null) {
                    Preferences.getKodeReferral().then((valuere) {
                      if (valuere != null && valuere != '') {
                        Preferences.setKodeReferralPermanent(valuere);
                      }
                    });
                  }
                });
                suscessDaftar = true;
                onCallApi = false;
                isLoading = false;
                setState(() {
                  callapilogin();
                });
              });


            });


              // Helper().encryparamater(sodium, message, type)


          });
        });
      });
    }
  });
}