new flow for NW.js
This commit is contained in:
parent
7b2d3b1df0
commit
9668870a07
7 changed files with 152 additions and 33 deletions
|
|
@ -10,7 +10,7 @@ angular.module('copayApp.controllers').controller('rateAppStoreController', func
|
|||
$scope.skip = function() {
|
||||
$state.go('feedback.thanks', {
|
||||
score: $scope.score,
|
||||
skip: true
|
||||
skipped: true
|
||||
});
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -28,14 +28,15 @@ angular.module('copayApp.controllers').controller('sendFeedbackController', func
|
|||
$scope.sendFeedback = function() {
|
||||
//Feedback entered in feedback flow should be sent to BWS, and BWS should send a plain-text email to feedback@bitpay.com with a reply-to going to the user's email address. (From the onboarding process)
|
||||
$state.go('feedback.thanks', {
|
||||
score: $stateParams.score
|
||||
score: $stateParams.score,
|
||||
skipped: false
|
||||
});
|
||||
};
|
||||
|
||||
$scope.skip = function() {
|
||||
$state.go('feedback.thanks', {
|
||||
score: $scope.score,
|
||||
skip: true
|
||||
skipped: true
|
||||
});
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1,12 +1,75 @@
|
|||
'use strict';
|
||||
|
||||
angular.module('copayApp.controllers').controller('thanksController', function($scope, $stateParams, configService, storageService) {
|
||||
angular.module('copayApp.controllers').controller('thanksController', function($scope, $stateParams, platformInfo, configService, storageService) {
|
||||
$scope.score = parseInt($stateParams.score);
|
||||
$scope.skip = $stateParams.skip && $scope.score == 5;
|
||||
storageService.setRateCardFlag('true', function() {});
|
||||
$scope.skipped = $stateParams.skipped == 'false' ? false : true;
|
||||
$scope.isCordova = platformInfo.isCordova;
|
||||
var config = configService.getSync();
|
||||
|
||||
$scope.shareFacebook = function() {
|
||||
window.plugins.socialsharing.shareViaFacebook(config.download.url, null, null, null);
|
||||
};
|
||||
|
||||
$scope.shareTwitter = function() {
|
||||
window.plugins.socialsharing.shareVia('com.apple.social.twitter', config.download.url, null, null, 'http://www.x-services.nl', null, null);
|
||||
};
|
||||
|
||||
$scope.shareGooglePlus = function() {
|
||||
window.plugins.socialsharing.shareVia('com.google.android.apps.plus', config.download.url, null, null, null);
|
||||
};
|
||||
|
||||
$scope.shareEmail = function() {
|
||||
window.plugins.socialsharing.shareViaEmail(config.download.url, null, null, null);
|
||||
};
|
||||
|
||||
$scope.shareWhatsapp = function() {
|
||||
window.plugins.socialsharing.shareViaWhatsApp(config.download.url, null, null, null);
|
||||
};
|
||||
|
||||
$scope.shareMessage = function() {
|
||||
window.plugins.socialsharing.shareViaSMS(config.download.url, null, null, null);
|
||||
};
|
||||
|
||||
$scope.$on("$ionicView.beforeEnter", function(event, data) {
|
||||
var config = configService.getSync();
|
||||
window.plugins.socialsharing.share(config.download.url, null, null, null);
|
||||
storageService.setRateCardFlag('true', function() {});
|
||||
if (!$scope.isCordova) return;
|
||||
|
||||
window.plugins.socialsharing.available(function(isAvailable) {
|
||||
// the boolean is only false on iOS < 6
|
||||
$scope.socialsharing = isAvailable;
|
||||
if (isAvailable) {
|
||||
|
||||
window.plugins.socialsharing.canShareVia('com.apple.social.facebook', 'msg', null, null, null, function(e) {
|
||||
$scope.facebook = true;
|
||||
}, function(e) {
|
||||
$scope.facebook = false;
|
||||
});
|
||||
window.plugins.socialsharing.canShareVia('com.apple.social.twitter', 'msg', null, null, null, function(e) {
|
||||
$scope.twitter = true;
|
||||
}, function(e) {
|
||||
$scope.twitter = false;
|
||||
});
|
||||
window.plugins.socialsharing.canShareVia('com.google.android.apps.plus', 'msg', null, null, null, function(e) {
|
||||
$scope.googleplus = true;
|
||||
}, function(e) {
|
||||
$scope.googleplus = false;
|
||||
})
|
||||
window.plugins.socialsharing.canShareViaEmail(function(e) {
|
||||
$scope.email = true;
|
||||
}, function(e) {
|
||||
$scope.email = false;
|
||||
})
|
||||
window.plugins.socialsharing.canShareVia('whatsapp', 'msg', null, null, null, function(e) {
|
||||
$scope.whatsapp = true;
|
||||
}, function(e) {
|
||||
$scope.whatsapp = false;
|
||||
})
|
||||
window.plugins.socialsharing.canShareVia('sms', 'msg', null, null, null, function(e) {
|
||||
$scope.sms = true;
|
||||
}, function(e) {
|
||||
$scope.sms = false;
|
||||
})
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -36,12 +36,10 @@ angular.module('copayApp.controllers').controller('tabHomeController',
|
|||
});
|
||||
}
|
||||
|
||||
$scope.hideRateCard = $stateParams.fromAppRate || !$scope.isCordova;
|
||||
if (!$scope.hideRateCard) {
|
||||
storageService.getRateCardFlag(function(error, value) {
|
||||
$scope.hideRateCard = (value == 'true') ? true : false;
|
||||
});
|
||||
}
|
||||
storageService.getRateCardFlag(function(error, value) {
|
||||
$scope.hideRateCard = (value == 'true') ? true : false;
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
$scope.$on("$ionicView.enter", function(event, data) {
|
||||
|
|
@ -144,14 +142,15 @@ angular.module('copayApp.controllers').controller('tabHomeController',
|
|||
};
|
||||
|
||||
$scope.goFeedbackFlow = function() {
|
||||
if ($scope.score != 5)
|
||||
$state.go('feedback.sendFeedback', {
|
||||
score: $scope.score
|
||||
});
|
||||
else
|
||||
if ($scope.isCordova && $scope.score == 5) {
|
||||
$state.go('feedback.rateAppStore', {
|
||||
score: $scope.score
|
||||
});
|
||||
} else {
|
||||
$state.go('feedback.sendFeedback', {
|
||||
score: $scope.score
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
$scope.openNotificationModal = function(n) {
|
||||
|
|
|
|||
|
|
@ -741,7 +741,7 @@ angular.module('copayApp').config(function(historicLogProvider, $provide, $logPr
|
|||
}
|
||||
})
|
||||
.state('feedback.thanks', {
|
||||
url: '/thanks/:score/:skip',
|
||||
url: '/thanks/:score/:skipped',
|
||||
views: {
|
||||
'feedback': {
|
||||
controller: 'thanksController',
|
||||
|
|
|
|||
|
|
@ -9,4 +9,15 @@
|
|||
.subtitle {
|
||||
padding: 10px 30px 20px 40px;
|
||||
}
|
||||
.row {
|
||||
margin: 20px 0px 20px;
|
||||
span {
|
||||
margin-top: 15px;
|
||||
display: block;
|
||||
}
|
||||
div {
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,19 +1,28 @@
|
|||
<ion-view id="thanks-feedback">
|
||||
<ion-nav-bar class="bar-royal">
|
||||
<ion-nav-buttons side="secondary">
|
||||
<button class="button icon ion-ios-close-empty" ui-sref="tabs.home({fromAppRate: 'true'})">
|
||||
<button class="button icon ion-ios-close-empty" ui-sref="tabs.home()">
|
||||
</button>
|
||||
</ion-nav-buttons>
|
||||
</ion-nav-bar>
|
||||
<ion-content scroll="false">
|
||||
<div ng-if="!skip">
|
||||
<div class="title">
|
||||
<span translate>Thank you!</span>
|
||||
<div ng-show="skipped && isCordova">
|
||||
<div class="title" translate>Invite friends to BitPay Wallet!</div>
|
||||
<div>
|
||||
<i class="icon zero-state-icon">
|
||||
<img src="img/address-book-add.svg"/>
|
||||
</i>
|
||||
</div>
|
||||
<div class="text-center">
|
||||
<span translate>Share the love by inviting your friends.</span>
|
||||
</div>
|
||||
</div>
|
||||
<div ng-show="!skipped || !isCordova">
|
||||
<div class="title" translate>Thank you!</div>
|
||||
<div class="subtitle">
|
||||
<span translate>A member of the team will review your feedback as soon as possible.</span>
|
||||
</div>
|
||||
<div class="subtitle" ng-if="score < 4">
|
||||
<div class="subtitle" ng-if="score <= 3 || !isCordova">
|
||||
<span translate>If you have additional feedback, please let us know by tapping the "Send feedback" option in the Settings tab.</span>
|
||||
<div>
|
||||
<i class="icon zero-state-icon">
|
||||
|
|
@ -21,17 +30,53 @@
|
|||
</i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div ng-if="skip" class="title">
|
||||
<span translate>Invite friends to BitPay Wallet!</span>
|
||||
<div>
|
||||
<i class="icon zero-state-icon">
|
||||
<img src="img/address-book-add.svg"/>
|
||||
</i>
|
||||
<div class="text-center" ng-if="score > 3 && isCordova">
|
||||
<span translate>Share the love by inviting your friends.</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-center" ng-if="score >= 4">
|
||||
<span translate>Share the love by inviting your friends.</span>
|
||||
<div ng-if="isCordova && score > 3">
|
||||
<div class="ng-hide" ng-show="socialsharing" ng-if="score >= 4">
|
||||
<div class="row">
|
||||
<div class="ng-hide" ng-show="facebook" ng-click="shareFacebook()">
|
||||
<i class="icon zero-state-icon">
|
||||
<img src="img/address-book-add.svg"/>
|
||||
</i>
|
||||
<span>Facebook</span>
|
||||
</div>
|
||||
<div class="ng-hide" ng-show="twitter" ng-click="shareTwitter()">
|
||||
<i class="icon zero-state-icon">
|
||||
<img src="img/address-book-add.svg"/>
|
||||
</i>
|
||||
<span>Twitter</span>
|
||||
</div>
|
||||
<div class="ng-hide" ng-show="googleplus" ng-click="shareGooglePlus()">
|
||||
<i class="icon zero-state-icon">
|
||||
<img src="img/address-book-add.svg"/>
|
||||
</i>
|
||||
<span>Google+</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="ng-hide" ng-show="email" ng-click="shareEmail()">
|
||||
<i class="icon zero-state-icon">
|
||||
<img src="img/address-book-add.svg"/>
|
||||
</i>
|
||||
<span>Email</span>
|
||||
</div>
|
||||
<div class="ng-hide" ng-show="whatsapp" ng-click="shareWhatsapp()">
|
||||
<i class="icon zero-state-icon">
|
||||
<img src="img/address-book-add.svg"/>
|
||||
</i>
|
||||
<span>Whatsapp</span>
|
||||
</div>
|
||||
<div class="ng-hide" ng-show="message" ng-click="shareMessage()">
|
||||
<i class="icon zero-state-icon">
|
||||
<img src="img/address-book-add.svg"/>
|
||||
</i>
|
||||
<span>Message</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</ion-content>
|
||||
</ion-view>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue