wire slide to accept component to proposal accept screen
This commit is contained in:
parent
324088b5db
commit
82ad31724b
4 changed files with 58 additions and 13 deletions
|
|
@ -1,6 +1,6 @@
|
|||
'use strict';
|
||||
|
||||
angular.module('copayApp.controllers').controller('txpDetailsController', function($scope, $rootScope, $timeout, $interval, $ionicModal, ongoingProcess, platformInfo, $ionicScrollDelegate, txFormatService, fingerprintService, bwcError, gettextCatalog, lodash, walletService, popupService) {
|
||||
angular.module('copayApp.controllers').controller('txpDetailsController', function($scope, $rootScope, $timeout, $interval, $ionicModal, ongoingProcess, platformInfo, $ionicScrollDelegate, txFormatService, fingerprintService, bwcError, gettextCatalog, lodash, walletService, popupService, $state, $ionicHistory) {
|
||||
var self = $scope.self;
|
||||
var tx = $scope.tx;
|
||||
var copayers = $scope.copayers;
|
||||
|
|
@ -17,7 +17,7 @@ angular.module('copayApp.controllers').controller('txpDetailsController', functi
|
|||
$scope.canSign = $scope.wallet.canSign() || $scope.wallet.isPrivKeyExternal();
|
||||
$scope.color = $scope.wallet.color;
|
||||
$scope.data = {};
|
||||
|
||||
$scope.hasClick = platformInfo.hasClick;
|
||||
initActionList();
|
||||
checkPaypro();
|
||||
}
|
||||
|
|
@ -66,17 +66,18 @@ angular.module('copayApp.controllers').controller('txpDetailsController', functi
|
|||
}
|
||||
|
||||
var setSendError = function(msg) {
|
||||
$scope.sendStatus = '';
|
||||
var error = msg || gettextCatalog.getString('Could not send payment');
|
||||
popupService.showAlert(gettextCatalog.getString('Error'), error);
|
||||
}
|
||||
|
||||
$scope.sign = function() {
|
||||
$scope.sign = function(onSendStatusChange) {
|
||||
$scope.loading = true;
|
||||
walletService.publishAndSign($scope.wallet, $scope.tx, function(err, txp) {
|
||||
$scope.$emit('UpdateTx');
|
||||
if (err) return setSendError(err);
|
||||
$scope.close();
|
||||
});
|
||||
success();
|
||||
}, onSendStatusChange);
|
||||
};
|
||||
|
||||
function setError(err, prefix) {
|
||||
|
|
@ -213,6 +214,32 @@ angular.module('copayApp.controllers').controller('txpDetailsController', functi
|
|||
});
|
||||
};
|
||||
|
||||
function statusChangeHandler(processName, showName, isOn) {
|
||||
console.log('in statusChangeHandler', processName, showName, isOn);
|
||||
console.log('$scope.wallet', $scope.wallet);
|
||||
if(showName) {
|
||||
$scope.sendStatus = showName;
|
||||
}
|
||||
}
|
||||
|
||||
function success() {
|
||||
$scope.sendStatus = 'success';
|
||||
$scope.$digest();
|
||||
}
|
||||
|
||||
$scope.statusChangeHandler = statusChangeHandler;
|
||||
|
||||
$scope.onConfirm = function() {
|
||||
$scope.sign(statusChangeHandler);
|
||||
};
|
||||
|
||||
$scope.onSuccessConfirm = function() {
|
||||
$ionicHistory.nextViewOptions({
|
||||
disableAnimate: true
|
||||
});
|
||||
$scope.close();
|
||||
};
|
||||
|
||||
$scope.close = function() {
|
||||
$scope.loading = null;
|
||||
$scope.txpDetailsModal.hide();
|
||||
|
|
|
|||
|
|
@ -8,7 +8,8 @@ angular.module('copayApp.directives')
|
|||
transclude: true,
|
||||
scope: {
|
||||
isShown: '=slideSuccessShow',
|
||||
onConfirm: '&slideSuccessOnConfirm'
|
||||
onConfirm: '&slideSuccessOnConfirm',
|
||||
hideOnConfirm: '=slideSuccessHideOnConfirm'
|
||||
},
|
||||
link: function(scope, element, attrs) {
|
||||
var elm = element[0];
|
||||
|
|
@ -23,8 +24,10 @@ angular.module('copayApp.directives')
|
|||
});
|
||||
scope.onConfirmButtonClick = function() {
|
||||
scope.onConfirm();
|
||||
scope.fillScreen = false;
|
||||
elm.style.display = 'none';
|
||||
if(scope.hideOnConfirm) {
|
||||
scope.fillScreen = false;
|
||||
elm.style.display = 'none';
|
||||
}
|
||||
};
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -81,6 +81,7 @@
|
|||
<slide-to-accept-success
|
||||
slide-success-show="sendStatus === 'success'"
|
||||
slide-success-on-confirm="onSuccessConfirm()"
|
||||
slide-success-hide-on-confirm="true"
|
||||
>
|
||||
<span ng-hide="wallet.m > 1">Payment Sent</span>
|
||||
<span ng-show="wallet.m > 1">Proposal Created</span>
|
||||
|
|
|
|||
|
|
@ -149,11 +149,13 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button class="button button-block button-positive"
|
||||
ng-click="sign()"
|
||||
ng-if="tx.pendingForUs && canSign && !loading && !paymentExpired && !isCordova" translate>
|
||||
|
||||
<click-to-accept
|
||||
ng-click="onConfirm(statusChangeHandler)"
|
||||
ng-if="tx.pendingForUs && canSign && !paymentExpired && hasClick"
|
||||
click-send-status="sendStatus">
|
||||
Click to accept
|
||||
</button>
|
||||
</click-to-accept>
|
||||
<div class="m30t text-center" ng-if="tx.canBeRemoved || (tx.status == 'accepted' && !tx.broadcastedOn)">
|
||||
<div class="size-12 padding" ng-show="!tx.isGlidera && isShared" translate>
|
||||
* A payment proposal can be deleted if 1) you are the creator, and no other copayer has signed, or 2) 24 hours have passed since the proposal was created.
|
||||
|
|
@ -164,5 +166,17 @@
|
|||
</button>
|
||||
</div>
|
||||
</ion-content>
|
||||
<accept class="accept-slide" ng-if="tx.pendingForUs && canSign && !loading && !paymentExpired && isCordova"></accept>
|
||||
|
||||
<slide-to-accept
|
||||
ng-if="tx.pendingForUs && canSign && !paymentExpired && !hasClick"
|
||||
slide-on-confirm="onConfirm()"
|
||||
slide-send-status="sendStatus">
|
||||
Slide to accept
|
||||
</slide-to-accept>
|
||||
<slide-to-accept-success
|
||||
slide-success-show="sendStatus === 'success'"
|
||||
slide-success-on-confirm="onSuccessConfirm()"
|
||||
>
|
||||
Payment Sent
|
||||
</slide-to-accept-success>
|
||||
</ion-modal-view>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue