private void btnConfirm_Click(object sender, RoutedEventArgs e)
        {
            txtResponse.Text = "Processing ...";

            PaymentManager mgr = PaymentManager.Instance;

            mgr.setPaymentResponseListener(this);

            ConfirmParameters confirmParam = new ConfirmParameters();

            confirmParam.amount = result.Text.Trim();

#if (SHIFT4)
            Shift4ConfirmParams gwconfirmParams = new Shift4ConfirmParams();
            gwconfirmParams.invoice   = lastTransactionID;
            gwconfirmParams.cardToken = lastTokenValueID;
            gwconfirmParams.surcharge = Settings.surcharge;
            gwconfirmParams.tax       = Settings.tax;
            gwconfirmParams.tip       = Settings.tip;
#endif

#if (CREDITCALL)
            CCConfirmParams gwconfirmParams = new CCConfirmParams();
            gwconfirmParams.CardEaseRefernce = lastTransactionID;
#endif


            confirmParam.gatewayConfirmParameters = gwconfirmParams;
            mgr.confirmLastTransaction(confirmParam);

            Settings.tax = null;
            Settings.tip = null;
        }
        public ActionResult ConfirmUpload(BulkUploadHistoryDetailViewModel bulkModel)
        {
            if ((userContext.IsProvider() && Permission.HasPermission(false, true, Permission.PermissionName.CanBulkUploadProviderFiles)) ||
                (userContext.IsOrganisation() && Permission.HasPermission(false, true, Permission.PermissionName.CanBulkUploadOrganisationFiles)))
            {
                var history = db.BulkUploads.FirstOrDefault(b => b.BulkUploadId.Equals(bulkModel.BulkUploadId));
                if (history == null)
                {
                    return(HttpNotFound());
                }

                if (userContext.ItemId.HasValue)
                {
                    if ((userContext.IsOrganisation() && history.UserOrganisationId != userContext.ItemId) ||
                        (userContext.IsProvider() && history.UserProviderId != userContext.ItemId))
                    {
                        return(HttpNotFound());
                    }
                }
                else
                {
                    return(HttpNotFound());
                }

                // Check that the status is currently at "Needs Confirmation"
                if (history
                    .BulkUploadStatusHistories
                    .OrderByDescending(x => x.CreatedDateTimeUtc)
                    .First()
                    .BulkUploadStatusId != (Int32)Constants.BulkUploadStatus.Needs_Confirmation)
                {
                    return(HttpNotFound());
                }

                var model = new BulkUploadViewModel
                {
                    Summary = new UploadSummary
                    {
                        TargetFileUrl = history.FilePath,
                        FileName      = history.FileName
                    },
                    OverrideException = true
                };

                /*
                 * Matt - dev note
                 * ---------------------
                 * This section relates to replacing the in-application BulkUpload
                 * with a more efficient out-of-application service based system.
                 *
                 */
                try
                {
                    var bulkUploadService = new BulkUploadWCFServiceClient();
                    var parameters        = new ConfirmParameters
                    {
                        BulkUploadId = bulkModel.BulkUploadId,
                        UserId       =
                            history
                            .BulkUploadStatusHistories
                            .OrderByDescending(x => x.CreatedDateTimeUtc)
                            .First()
                            .AspNetUser
                            .Id
                    };
                    bulkUploadService.Confirm(parameters);
                }
                catch (FaultException <BulkUploadFault> ex)
                {
                    model.Message = String.Format("The bulk upload service reported an error: {0}", ex.Detail.Message);
                }

                /*
                 * end
                 */

                //model.InitiateBulkUpload(userContext, db);
                string viewName;
                if (history.FileContentType != null && history.FileContentType == (int)Constants.FileContentType.ApprenticeshipData)
                {
                    viewName = "PostApprenticeshipUpload";
                }
                else
                {
                    viewName = "PostCourseUpload";
                }

                //   var viewName = (bulkModel.FileContentType == Constants.FileContentType.CourseData ? "PostCourseUpload" : "PostApprenticeshipUpload");

                return(View(viewName, model));
            }
            return(Redirect());
        }