Merge pull request #4887 from TheHollidayInn/focus-textarea-on-pm

Added focus directive to focus textarea for a private message model box
This commit is contained in:
Alys
2015-04-04 01:45:30 +10:00
2 changed files with 16 additions and 3 deletions

View File

@@ -167,7 +167,7 @@ habitrpg
templateUrl: 'template/popover/popover-html.html' templateUrl: 'template/popover/popover-html.html'
}; };
}]) }])
.directive( 'popoverHtml', [ '$compile', '$timeout', '$parse', '$window', '$tooltip', .directive( 'popoverHtml', [ '$compile', '$timeout', '$parse', '$window', '$tooltip',
function ( $compile, $timeout, $parse, $window, $tooltip ) { function ( $compile, $timeout, $parse, $window, $tooltip ) {
return $tooltip( 'popoverHtml', 'popover', 'click' ); return $tooltip( 'popoverHtml', 'popover', 'click' );
} }
@@ -183,3 +183,16 @@ habitrpg
" </div>\n" + " </div>\n" +
"</div>\n"); "</div>\n");
}]); }]);
habitrpg.directive('focusMe', function($timeout, $parse) {
return {
link: function(scope, element, attrs) {
var model = $parse(attrs.focusMe);
scope.$watch(model, function(value) {
$timeout(function() {
element[0].focus();
});
});
}
};
});

View File

@@ -46,7 +46,7 @@ script(type='text/ng-template', id='modals/private-message.html')
.modal-header .modal-header
h4=env.t('pmHeading', {name: "{{profile.profile.name}}"}) h4=env.t('pmHeading', {name: "{{profile.profile.name}}"})
.modal-body .modal-body
textarea.form-control(type='text',rows='5',ui-keydown='{"meta-enter":"sendPrivateMessage(profile._id, _message)"}',ng-model='_message') textarea.form-control(type='text',rows='5',ui-keydown='{"meta-enter":"sendPrivateMessage(profile._id, _message)"}',ng-model='_message', focus-me)
.modal-footer .modal-footer
button.btn.btn-primary(ng-click='sendPrivateMessage(profile._id, _message)')=env.t("send") button.btn.btn-primary(ng-click='sendPrivateMessage(profile._id, _message)')=env.t("send")
button.btn.btn-default(ng-click='$close()')=env.t('cancel') button.btn.btn-default(ng-click='$close()')=env.t('cancel')
@@ -109,4 +109,4 @@ script(type='text/ng-template', id='modals/remove-member.html')
textarea.form-control(type='text',rows='5',placeholder=env.t('optionalMessage'),ng-model='removeMemberData.message') textarea.form-control(type='text',rows='5',placeholder=env.t('optionalMessage'),ng-model='removeMemberData.message')
.modal-footer .modal-footer
button.pull-left.btn.btn-danger(ng-click='confirmRemoveMember(true); $close()')=env.t('yesRemove') button.pull-left.btn.btn-danger(ng-click='confirmRemoveMember(true); $close()')=env.t('yesRemove')
button.btn.btn-default(ng-click='confirmRemoveMember(false); $close()')=env.t('cancel') button.btn.btn-default(ng-click='confirmRemoveMember(false); $close()')=env.t('cancel')