feat(feedback): improve design of feedback flow

This commit is contained in:
Jason Dreyzehner 2016-11-15 15:09:08 -05:00
parent e16520997f
commit 511730ecd3
9 changed files with 56 additions and 63 deletions

View File

@ -25,7 +25,7 @@ angular.module('copayApp.controllers').controller('rateCardController', function
$scope.score = score;
switch ($scope.score) {
case 1:
$scope.button_title = gettextCatalog.getString("I think this app is terrible");
$scope.button_title = gettextCatalog.getString("I think this app is terrible.");
break;
case 2:
$scope.button_title = gettextCatalog.getString("I don't like it");
@ -37,7 +37,7 @@ angular.module('copayApp.controllers').controller('rateCardController', function
$scope.button_title = gettextCatalog.getString("I like the app");
break;
case 5:
$scope.button_title = gettextCatalog.getString("This app is fantastic");
$scope.button_title = gettextCatalog.getString("This app is fantastic!");
break;
}
$timeout(function() {

View File

@ -5,23 +5,23 @@ angular.module('copayApp.controllers').controller('sendController', function($sc
switch ($scope.score) {
case 1:
$scope.reaction = gettextCatalog.getString("Ouch!");
$scope.comment = gettextCatalog.getString("There's obviously something we're doing wrong.");
$scope.comment = gettextCatalog.getString("There's obviously something we're doing wrong.") + ' ' + gettextCatalog.getString("How could we improve your experience?");
break;
case 2:
$scope.reaction = gettextCatalog.getString("Oh no!");
$scope.comment = gettextCatalog.getString("There's obviously something we're doing wrong.");
$scope.comment = gettextCatalog.getString("There's obviously something we're doing wrong.") + ' ' + gettextCatalog.getString("How could we improve your experience?");
break;
case 3:
$scope.reaction = gettextCatalog.getString("Thanks!");
$scope.comment = gettextCatalog.getString("We're always looking for ways to improve BitPay wallet.");
$scope.reaction = gettextCatalog.getString("Hmm...");
$scope.comment = gettextCatalog.getString("We'd love to do better.") + ' ' + gettextCatalog.getString("How could we improve your experience?");
break;
case 4:
$scope.reaction = gettextCatalog.getString("Thanks!");
$scope.comment = gettextCatalog.getString("That's exciting to hear. We'd love to earn that fifth star from you.");
$scope.comment = gettextCatalog.getString("That's exciting to hear. We'd love to earn that fifth star from you how could we improve your experience?");
break;
case 5:
$scope.reaction = gettextCatalog.getString("Feedback!");
$scope.comment = gettextCatalog.getString("We're always looking for ways to improve BitPay wallet.");
$scope.reaction = gettextCatalog.getString("Thank you!");
$scope.comment = gettextCatalog.getString("We're always looking for ways to improve BitPay wallet.") + ' ' + gettextCatalog.getString("Is there anything we could do better?");
break;
}

View File

@ -19,6 +19,7 @@
}
.subtitle {
padding: 10px 30px 20px 40px;
text-align: center;
}
.icon-svg > img {
height: 16rem;

View File

@ -9,6 +9,10 @@
margin: 0;
}
.feedback-flow-button {
padding: 20px;
margin-bottom: 20px;
}
.icon-svg > img {
height: 1.8rem;
margin-bottom: 5px;
}
}

View File

@ -9,11 +9,15 @@
text-decoration: none;
}
.title {
padding: 20px;
padding-left: 10px;
font-size: 20px;
font-weight: bold;
color: $dark-gray;
}
.rating {
text-align: right;
padding-right: 15px;
}
.comment {
padding: 20px;
font-size: 1rem;
@ -27,4 +31,8 @@
padding: 20px;
width: 100%;
}
.send-feedback-star {
height: 1rem;
margin-left: 5px;
}
}

View File

@ -2,7 +2,7 @@
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 17.8 17.8" style="enable-background:new 0 0 17.8 17.8;" xml:space="preserve">
<style type="text/css">
.st0{fill:#F2F2F2;}
.st0{fill:#DADADA;}
</style>
<path class="st0" d="M17.7,6c-0.1-0.2-0.2-0.3-0.4-0.3h-5.5L9.3,0.3C9.2,0.1,9.1,0,8.9,0C8.7,0,8.6,0.1,8.5,0.3L5.9,5.8H0.4
C0.3,5.8,0.1,5.9,0,6C0,6.2,0,6.4,0.1,6.5l4,4.2l-1.6,6.5c0,0.2,0,0.4,0.2,0.5c0.1,0.1,0.3,0.1,0.5,0l5.7-3.3l5.7,3.3

Before

Width:  |  Height:  |  Size: 654 B

After

Width:  |  Height:  |  Size: 654 B

View File

@ -1,35 +1,35 @@
<div id="rate-card" ng-class="{'popup-modal': isModal}" ng-controller="rateCardController">
<div class="card" id="rate-card" ng-class="{'popup-modal': isModal}" ng-controller="rateCardController">
<div class="item item-icon-right item-heading">
<span translate>How do you like BitPay Wallet?</span>
<a ng-click="hideCard()" ><i class="icon ion-ios-close-empty close-home-tip"></i></a>
</div>
<div class="row item item-sub" ng-class="{'row-margin': isModal}">
<div class="col col-20">
<i class="icon icon-svg" ng-click="setScore(1)">
<div class="col col-20" ng-click="setScore(1)">
<i class="icon icon-svg">
<img ng-if="1 <= score" src="img/ico-star-filled.svg"/>
<img ng-if="1 > score" src="img/ico-star.svg"/>
</i>
</div>
<div class="col col-20">
<i class="icon icon-svg" ng-click="setScore(2)">
<div class="col col-20" ng-click="setScore(2)">
<i class="icon icon-svg">
<img ng-if="2 <= score" src="img/ico-star-filled.svg"/>
<img ng-if="2 > score" src="img/ico-star.svg"/>
</i>
</div>
<div class="col col-20">
<i class="icon icon-svg" ng-click="setScore(3)">
<div class="col col-20" ng-click="setScore(3)">
<i class="icon icon-svg">
<img ng-if="3 <= score" src="img/ico-star-filled.svg"/>
<img ng-if="3 > score" src="img/ico-star.svg"/>
</i>
</div>
<div class="col col-20">
<i class="icon icon-svg" ng-click="setScore(4)">
<div class="col col-20" ng-click="setScore(4)">
<i class="icon icon-svg">
<img ng-if="4 <= score" src="img/ico-star-filled.svg"/>
<img ng-if="4 > score" src="img/ico-star.svg"/>
</i>
</div>
<div class="col col-20">
<i class="icon icon-svg" ng-click="setScore(5)">
<div class="col col-20" ng-click="setScore(5)">
<i class="icon icon-svg">
<img ng-if="5 == score" src="img/ico-star-filled.svg"/>
<img ng-if="5 > score" src="img/ico-star.svg"/>
</i>

View File

@ -1,51 +1,33 @@
<ion-view id="send-feedback">
<a class="right skip" ng-click="sendFeedback(null,true)" href translate>Skip</a>
<ion-content class="has-header" scroll="false">
<div class="title">
<span>{{reaction}}</span>
</div>
<div class="row item item-sub">
<div class="col col-10">
<i class="icon icon-svg" ng-click="setScore(1)">
<img ng-if="1 <= score" src="img/ico-star-filled.svg"/>
<img ng-if="1 > score" src="img/ico-star.svg"/>
</i>
<div class="col col-50">
<div class="title">
<span>{{reaction}}</span>
</div>
</div>
<div class="col col-10">
<i class="icon icon-svg" ng-click="setScore(2)">
<img ng-if="2 <= score" src="img/ico-star-filled.svg"/>
<img ng-if="2 > score" src="img/ico-star.svg"/>
</i>
</div>
<div class="col col-10">
<i class="icon icon-svg" ng-click="setScore(3)">
<img ng-if="3 <= score" src="img/ico-star-filled.svg"/>
<img ng-if="3 > score" src="img/ico-star.svg"/>
</i>
</div>
<div class="col col-10">
<i class="icon icon-svg" ng-click="setScore(4)">
<img ng-if="4 <= score" src="img/ico-star-filled.svg"/>
<img ng-if="4 > score" src="img/ico-star.svg"/>
</i>
</div>
<div class="col col-10">
<i class="icon icon-svg" ng-click="setScore(5)">
<img ng-if="5 == score" src="img/ico-star-filled.svg"/>
<img ng-if="5 > score" src="img/ico-star.svg"/>
</i>
<div class="col col-50 rating">
<img class="send-feedback-star" ng-if="1 <= score" src="img/ico-star-filled.svg"/>
<img class="send-feedback-star" ng-if="1 > score" src="img/ico-star.svg"/>
<img class="send-feedback-star" ng-if="2 <= score" src="img/ico-star-filled.svg"/>
<img class="send-feedback-star" ng-if="2 > score" src="img/ico-star.svg"/>
<img class="send-feedback-star" ng-if="3 <= score" src="img/ico-star-filled.svg"/>
<img class="send-feedback-star" ng-if="3 > score" src="img/ico-star.svg"/>
<img class="send-feedback-star" ng-if="4 <= score" src="img/ico-star-filled.svg"/>
<img class="send-feedback-star" ng-if="4 > score" src="img/ico-star.svg"/>
<img class="send-feedback-star" ng-if="5 == score" src="img/ico-star-filled.svg"/>
<img class="send-feedback-star" ng-if="5 > score" src="img/ico-star.svg"/>
</div>
</div>
<div class="comment">
<span translate>{{comment}}</span>
</div>
<div>
<textarea ng-model="feedback" placeholder="Is there anything we could do to improve your experience?" row="40"></textarea>
</div>
<div class="padding">
<button ng-disabled="!feedback" type="submit" class="button button-full button-primary" ng-click="sendFeedback(feedback, false)" translate>
Send
</button>
<textarea ng-model="feedback" placeholder="Your ideas, feedback, or comments" row="40"></textarea>
</div>
<button ng-disabled="!feedback" type="submit" class="button button-full button-primary" ng-click="sendFeedback(feedback, false)" translate>
Send
</button>
</ion-content>
</ion-view>

View File

@ -13,9 +13,7 @@
<div class="release ng-hide" ng-show="newRelease" ng-click="openExternalLink('https://github.com/bitpay/copay/releases/latest', true, 'Update Available', 'An update to this app is available. For your security, please update to the latest version.', 'View Update', 'Go Back')">
<span translate>An update to this app is available</span><span><i class="icon bp-arrow-right"></i></span>
</div>
<div class="list card ng-hide" ng-show="showRateCard.value">
<span ng-include="'views/feedback/rateCard.html'"></span>
</div>
<div class="ng-hide" ng-show="showRateCard.value" ng-include="'views/feedback/rateCard.html'"></div>
<div class="list card homeTip" ng-if="homeTip">
<div class="item item-icon-right item-heading">
<a ng-click="hideHomeTip()"><i class="icon ion-ios-close-empty close-home-tip"></i></a>