From 7c5ead7f81a1b4b69c0a780542211c89a9e5b05a Mon Sep 17 00:00:00 2001 From: alex Date: Wed, 17 Feb 2016 11:02:47 +0300 Subject: [PATCH] fix(toastr): remove custom styles --- bower.json | 2 +- .../ui/notifications/NotificationsPageCtrl.js | 24 +- .../pages/ui/notifications/notifications.html | 24 +- src/sass/app/_modalNotifications.scss | 212 +----------------- 4 files changed, 30 insertions(+), 232 deletions(-) diff --git a/bower.json b/bower.json index 2b52465..24f1a32 100644 --- a/bower.json +++ b/bower.json @@ -24,7 +24,7 @@ "angular-route": "~1.4.6", "angular-slimscroll": "~1.1.5", "angular-smart-table": "~2.1.3", - "angular-toastr": "~1.6.0", + "angular-toastr": "~1.7.0", "angular-touch": "~1.4.6", "angular-ui-sortable": "~0.13.4", "animate.css": "~3.4.0", diff --git a/src/app/pages/ui/notifications/NotificationsPageCtrl.js b/src/app/pages/ui/notifications/NotificationsPageCtrl.js index 08ef501..5f3b134 100644 --- a/src/app/pages/ui/notifications/NotificationsPageCtrl.js +++ b/src/app/pages/ui/notifications/NotificationsPageCtrl.js @@ -9,7 +9,8 @@ .controller('NotificationsPageCtrl', NotificationsPageCtrl); /** @ngInject */ - function NotificationsPageCtrl($scope, toastr) { + function NotificationsPageCtrl($scope, toastr, toastrConfig) { + var defaultConfig = angular.copy(toastrConfig); $scope.types = ['success', 'error', 'info', 'warning']; $scope.quotes = [ @@ -59,11 +60,11 @@ var openedToasts = []; $scope.options = { autoDismiss: false, - position: 'toast-top-right', - type: 'success', - timeout: '5000', - extendedTimeout: '1000', - html: false, + positionClass: 'toast-top-right', + type: 'info', + timeOut: '5000', + extendedTimeOut: '2000', + allowHtml: false, closeButton: false, tapToDismiss: true, progressBar: false, @@ -86,8 +87,8 @@ }; $scope.openRandomToast = function () { - var type = Math.floor(Math.random() * 4); - var quote = Math.floor(Math.random() * 7); + var type = Math.floor(Math.random() * $scope.types.length); + var quote = Math.floor(Math.random() * $scope.quotes.length); var toastType = $scope.types[type]; var toastQuote = $scope.quotes[quote]; openedToasts.push(toastr[toastType](toastQuote.message, toastQuote.title, toastQuote.options)); @@ -95,11 +96,16 @@ }; $scope.openToast = function () { - openedToasts.push(toastr[$scope.options.type]($scope.options.msg, $scope.options.title, angular.copy($scope.options))); + angular.extend(toastrConfig, $scope.options); + openedToasts.push(toastr[$scope.options.type]($scope.options.msg, $scope.options.title)); var strOptions = {}; for (var o in $scope.options) if (o != 'msg' && o != 'title')strOptions[o] = $scope.options[o]; $scope.optionsStr = "toastr." + $scope.options.type + "(\'" + $scope.options.msg + "\', \'" + $scope.options.title + "\', " + JSON.stringify(strOptions, null, 2) + ")"; }; + + $scope.$on('$destroy', function iVeBeenDismissed() { + angular.extend(toastrConfig, defaultConfig); + }) } })(); diff --git a/src/app/pages/ui/notifications/notifications.html b/src/app/pages/ui/notifications/notifications.html index 72982a2..93a36d5 100644 --- a/src/app/pages/ui/notifications/notifications.html +++ b/src/app/pages/ui/notifications/notifications.html @@ -19,7 +19,7 @@
@@ -31,7 +31,7 @@
@@ -77,35 +77,35 @@
@@ -114,12 +114,12 @@
- +
-
diff --git a/src/sass/app/_modalNotifications.scss b/src/sass/app/_modalNotifications.scss index 2e5b136..3ebeb9b 100644 --- a/src/sass/app/_modalNotifications.scss +++ b/src/sass/app/_modalNotifications.scss @@ -1,153 +1,3 @@ -@keyframes fadeInNotification { - 0% {opacity: 0;} - 20% {opacity: 1;} - 70% {opacity: 1;} - 90% {opacity: 0;} - 100% {opacity: 0;} -} - -.toast-title { - font-weight: $font-bold; -} - -.toast-message { - word-wrap: break-word; - a { - color: #ffffff; - &:hover { - color: #cccccc; - text-decoration: none; - } - } - label { - color: #ffffff; - } -} - -.toast-close-button { - position: relative; - right: -0.3em; - top: -0.3em; - float: right; - font-size: 20px; - font-weight: $font-bold; - color: #ffffff; - opacity: 0.8; - &:hover, &:focus { - color: #000000; - text-decoration: none; - cursor: pointer; - opacity: 0.4; - } -} - -/*Additional properties for button version - iOS requires the button element instead of an anchor tag. - If you want the anchor version, it requires `href="#"`.*/ -button.toast-close-button { - padding: 0; - cursor: pointer; - background: transparent; - border: 0; - -webkit-appearance: none; -} - -.toast-top-center { - top: 0; - right: 0; - width: 100%; -} - -.toast-bottom-center { - bottom: 0; - right: 0; - width: 100%; -} - -.toast-top-full-width { - top: 0; - right: 0; - width: 100%; -} - -.toast-bottom-full-width { - bottom: 0; - right: 0; - width: 100%; -} - -.toast-top-left { - top: 12px; - left: 12px; -} - -.toast-top-right { - top: 12px; - right: 12px; -} - -.toast-bottom-right { - right: 12px; - bottom: 12px; -} - -.toast-bottom-left { - bottom: 12px; - left: 12px; -} - -#toast-container { - position: fixed; - z-index: 999999; - * { - box-sizing: border-box; - } - & > div { - position: relative; - overflow: hidden; - margin: 0 0 6px; - padding: 15px 15px 15px 50px; - width: 300px; - background-position: 15px center; - background-repeat: no-repeat; - color: #ffffff; - opacity: 0.9; - cursor: pointer; - animation-name: fadeInNotification; - animation-duration: 5.5s; - &:hover { - opacity: 1 !important; - } - } - - & > .toast-info { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=") !important; - } - & > .toast-error { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=") !important; - } - - & > .toast-success { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==") !important; - } - - & > .toast-warning { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=") !important; - } - - &.toast-top-center > div, - &.toast-bottom-center > div { - width: 300px; - margin: auto; - } - - &.toast-top-full-width > div, - &.toast-bottom-full-width > div { - width: 96%; - margin: auto; - } -} - .toast { background-color: $primary; } @@ -168,64 +18,6 @@ button.toast-close-button { background-color: $warning; } -.toast-progress { - position: absolute; - left: 0; - bottom: 0; - height: 4px; - background-color: #000000; - opacity: 0.4; +#toast-container.toast-top-full-width > div, #toast-container.toast-bottom-full-width > div { + margin: 5px auto; } - -/*Animations*/ -.toast { - &.ng-enter { - opacity: 0 !important; - transition: opacity .3s linear; - &.ng-enter-active { - opacity: 1 !important; - } - } - - &.ng-leave { - opacity: 1; - transition: opacity .3s linear; - &.ng-leave-active { - opacity: 0 !important; - } - } -} - -/*Responsive Design*/ -@media all and (max-width: 240px) { - #toast-container { - & > div { - padding: 8px 8px 8px 50px; - width: 11em; - } - .toast-close-button { - right: -0.2em; - top: -0.2em; - } - } -} - -@media all and (min-width: 241px) and (max-width: 480px) { - #toast-container { - & > div { - padding: 8px 8px 8px 50px; - width: 18em; - } - .toast-close-button { - right: -0.2em; - top: -0.2em; - } - } -} - -@media all and (min-width: 481px) and (max-width: 768px) { - #toast-container > div { - padding: 15px 15px 15px 50px; - width: 25em; - } -} \ No newline at end of file