refactor(mail):apply code review notes, fix compose area height(add scroll)

pull/3/head
alex 2016-01-13 16:52:01 +03:00
parent 47130f9389
commit 75a10e6985
6 changed files with 73 additions and 81 deletions

View File

@ -5,22 +5,22 @@
<span class="header-controls"> <span class="header-controls">
<i class="ion-minus-round"></i> <i class="ion-minus-round"></i>
<i class="ion-arrow-resize"></i> <i class="ion-arrow-resize"></i>
<i ng-click="close()" class="ion-close-round"></i> <i ng-click="$dismiss()" class="ion-close-round"></i>
</span> </span>
</div> </div>
<div > <div >
<input type="text" class="form-control compose-input" placeholder="To" ng-model="to"> <input type="text" class="form-control compose-input" placeholder="To" ng-model="boxCtrl.to">
<input type="text" class="form-control compose-input" placeholder="Subject" ng-model="subject"> <input type="text" class="form-control compose-input" placeholder="Subject" ng-model="boxCtrl.subject">
<div class="compose-container"> <div class="compose-container">
<text-angular-toolbar ta-toolbar-class="toolbarMain" name="toolbarMain" ta-toolbar="[['h1','h2','h3','bold','italics', 'underline', 'justifyLeft', 'justifyCenter', 'justifyRight', 'justifyFull']]"></text-angular-toolbar> <text-angular-toolbar ta-toolbar-class="toolbarMain" name="toolbarMain" ta-toolbar="[['h1','h2','h3','bold','italics', 'underline', 'justifyLeft', 'justifyCenter', 'justifyRight', 'justifyFull']]"></text-angular-toolbar>
<text-angular name="htmlcontent" ta-target-toolbars='toolbarMain,toolbarFooter' ng-model="text"></text-angular> <text-angular name="htmlcontent" ta-target-toolbars='toolbarMain,toolbarFooter' ng-model="boxCtrl.text"></text-angular>
</div> </div>
</div> </div>
<div class="compose-footer"> <div class="compose-footer">
<button type="button" ng-click="close()" class="btn btn-send">Send</button> <button type="button" ng-click="$dismiss()" class="btn btn-send">Send</button>
<text-angular-toolbar ta-toolbar-class="toolbarFooter" name="toolbarFooter" ta-toolbar="[['insertLink', 'insertImage', 'html', 'quote','insertVideo']]"></text-angular-toolbar> <text-angular-toolbar ta-toolbar-class="toolbarFooter" name="toolbarFooter" ta-toolbar="[['insertLink', 'insertImage', 'html', 'quote','insertVideo']]"></text-angular-toolbar>
<div class="footer-controls"> <div class="footer-controls">
<i class="footer-control-first compose-footer-icon ion-arrow-down-b"></i> <i class="footer-control-first compose-footer-icon ion-arrow-down-b"></i>
<i ng-click="close()" class="compose-footer-icon ion-android-delete"></i> <i ng-click="$dismiss()" class="compose-footer-icon ion-android-delete"></i>
</div> </div>
</div> </div>

View File

@ -9,14 +9,10 @@
.controller('composeBoxCtrl', composeBoxCtrl); .controller('composeBoxCtrl', composeBoxCtrl);
/** @ngInject */ /** @ngInject */
function composeBoxCtrl($scope, $uibModalInstance, subject, to, text) { function composeBoxCtrl(subject, to, text) {
var vm = this;
$scope.subject = subject; vm.subject = subject;
$scope.to = to; vm.to = to;
$scope.text = text; vm.text = text;
console.log(subject, to , text);
$scope.close = function () {
$uibModalInstance.dismiss('cancel');
};
} }
})(); })();

View File

@ -10,12 +10,12 @@
/** @ngInject */ /** @ngInject */
function composeModal($uibModal) { function composeModal($uibModal) {
return { this.open = function(options){
open : function(options){
return $uibModal.open({ return $uibModal.open({
animation: false, animation: false,
templateUrl: 'app/pages/mail/composeBox/compose.html', templateUrl: 'app/pages/mail/composeBox/compose.html',
controller: 'composeBoxCtrl', controller: 'composeBoxCtrl',
controllerAs: 'boxCtrl',
size: 'slim', size: 'slim',
resolve: { resolve: {
subject: function () { subject: function () {
@ -30,7 +30,7 @@
} }
}); });
} }
}
} }
})(); })();

View File

@ -9,14 +9,10 @@
.controller('MailDetailCtrl', MailDetailCtrl); .controller('MailDetailCtrl', MailDetailCtrl);
/** @ngInject */ /** @ngInject */
function MailDetailCtrl($state, $stateParams, mailMessages) { function MailDetailCtrl($stateParams, mailMessages) {
var vm = this; var vm = this;
vm.mail = mailMessages.getMessageById($stateParams.id); vm.mail = mailMessages.getMessageById($stateParams.id);
vm.back = function(){ vm.label = $stateParams.label;
$state.go('mail.label', {
label: $stateParams.label
})
}
} }
})(); })();

View File

@ -1,7 +1,7 @@
<div class="message-container"> <div class="message-container">
<div class="message"> <div class="message">
<div class="row"> <div class="row">
<button ng-click="detailCtrl.back()" type="button" class="back-button btn btn-default btn-with-icon"><i <button ui-sref="mail.label({label : detailCtrl.label})" type="button" class="back-button btn btn-default btn-with-icon"><i
class="ion-chevron-left"></i>Back class="ion-chevron-left"></i>Back
</button> </button>
</div> </div>
@ -64,8 +64,8 @@
</div> </div>
<div class="line" ng-show="detailCtrl.mail.attachment"></div> <div class="line" ng-show="detailCtrl.mail.attachment"></div>
<div class="answer-container"> <div class="answer-container">
<button type="button" class="btn btn-with-icon" ng-click="showCompose(detailCtrl.mail.subject,detailCtrl.mail.email,'')"><i class="ion-reply"></i>Reply</button> <button type="button" class="btn btn-with-icon" ng-click="tabCtrl.showCompose(detailCtrl.mail.subject,detailCtrl.mail.email,'')"><i class="ion-reply"></i>Reply</button>
<button type="button" class="btn btn-with-icon" ng-click="showCompose(detailCtrl.mail.subject,'',detailCtrl.mail.body)"><i class="ion-forward"></i>Forward</button> <button type="button" class="btn btn-with-icon" ng-click="tabCtrl.showCompose(detailCtrl.mail.subject,'',detailCtrl.mail.body)"><i class="ion-forward"></i>Forward</button>
<button type="button" class="btn btn-with-icon"><i class="ion-printer"></i>Print</button> <button type="button" class="btn btn-with-icon"><i class="ion-printer"></i>Print</button>
<button type="button" class="btn btn-with-icon"><i class="ion-android-remove-circle"></i>Spam</button> <button type="button" class="btn btn-with-icon"><i class="ion-android-remove-circle"></i>Spam</button>
<button type="button" class="btn btn-with-icon"><i class="ion-android-delete"></i>Delete</button> <button type="button" class="btn btn-with-icon"><i class="ion-android-delete"></i>Delete</button>

View File

@ -55,7 +55,6 @@
} }
} }
.labels, .add-label-container { .labels, .add-label-container {
margin-top: 16px; margin-top: 16px;
margin-left: 22px; margin-left: 22px;
@ -114,7 +113,6 @@
} }
} }
.message-container, .side-message-navigation, .mail-navigation-container { .message-container, .side-message-navigation, .mail-navigation-container {
float: left; float: left;
padding: 0 15px; padding: 0 15px;
@ -434,7 +432,6 @@
margin-top: -7px; margin-top: -7px;
} }
@keyframes rotateReturnAnimation { @keyframes rotateReturnAnimation {
0% { 0% {
transform: rotate(0deg); transform: rotate(0deg);
@ -463,7 +460,6 @@
} }
@media screen and (max-width: 1199px) { @media screen and (max-width: 1199px) {
.name-h { .name-h {
display: inline; display: inline;
@ -549,6 +545,7 @@
width: 50px; width: 50px;
} }
} }
@media screen and (max-width: 470px) { @media screen and (max-width: 470px) {
.little-human .little-human-picture { .little-human .little-human-picture {
display: none; display: none;
@ -592,8 +589,6 @@
} }
.compose-header { .compose-header {
padding: 8px 3px 8px 10px; padding: 8px 3px 8px 10px;
color: white; color: white;
@ -615,14 +610,18 @@
} }
} }
.compose-container .ta-scroll-window > .ta-bind {
height: 290px;
overflow-y: scroll;
}
.compose-input { .compose-input {
border-left: 0; border-left: 0;
border-right: 0; border-right: 0;
border-top: 0; border-top: 0;
} }
.compose-footer { .compose-footer {
padding: 2px 4px; padding: 2px 4px;
background-color: whitesmoke; background-color: whitesmoke;
@ -648,6 +647,7 @@
font-size: 18px; font-size: 18px;
margin-right: 5px; margin-right: 5px;
cursor: pointer; cursor: pointer;
color: $help-text;
&:hover { &:hover {
color: $primary-light; color: $primary-light;
} }