diff --git a/public/css/index.styl b/public/css/index.styl index 96d9262163..85f913b1f4 100644 --- a/public/css/index.styl +++ b/public/css/index.styl @@ -130,6 +130,11 @@ div.tooltip-inner { /* Misc -------------------------------------------------- */ +//move + +.new-stuff-modal // a .modal-body + overflow-y: auto + max-height: 400px // Taken from Bootstrap 2.3.2 css, may need to change // notification-character used only by death modal's figure, move .death-modal // a .modal-body diff --git a/public/js/controllers/rootCtrl.js b/public/js/controllers/rootCtrl.js index 14069e100a..8047127792 100644 --- a/public/js/controllers/rootCtrl.js +++ b/public/js/controllers/rootCtrl.js @@ -66,9 +66,11 @@ habitrpg.controller("RootCtrl", ['$scope', '$rootScope', '$location', 'User', '$ // Open a modal from a template expression (like ng-click,...) // Otherwise use the proper $modal.open - $rootScope.openModal = function(modal){ + $rootScope.openModal = function(template, controller, scope){ $modal.open({ - templateUrl: 'modals/' + modal + '.html' + templateUrl: 'modals/' + template + '.html', + controller: controller, // optional + scope: scope // optional }); } diff --git a/public/js/controllers/settingsCtrl.js b/public/js/controllers/settingsCtrl.js index 89bf06a638..1f2bbebb67 100644 --- a/public/js/controllers/settingsCtrl.js +++ b/public/js/controllers/settingsCtrl.js @@ -96,12 +96,10 @@ habitrpg.controller('SettingsCtrl', "stats.mp": stats.mp, "achievements.streak": achievements.streak }); - $rootScope.modals.restore = false; } $scope.reset = function(){ User.user.ops.reset({}); - $rootScope.modals.reset = false; $rootScope.$state.go('tasks'); } diff --git a/views/options/index.jade b/views/options/index.jade index 496acde639..9ea9ad4fe2 100644 --- a/views/options/index.jade +++ b/views/options/index.jade @@ -13,18 +13,22 @@ script(id='partials/options.html', type="text/ng-template") li(ng-class="{ active: $state.includes('options.profile') }") a(ui-sref='options.profile') span.glyphicon.glyphicon-user + |   =env.t('profile') li(ng-class="{ active: $state.includes('options.social') }") a(ui-sref='options.social') span.glyphicon.glyphicon-heart + |   =env.t('social') li(ng-class="{ active: $state.includes('options.inventory') }", ng-if='user.flags.dropsEnabled') a(ui-sref='options.inventory') span.glyphicon.glyphicon-gift + |   =env.t('inventory') li(ng-class="{ active: $state.includes('options.settings') }") a(ui-sref='options.settings') span.glyphicon.glyphicon-wrench + |   =env.t('settings') .tab-content diff --git a/views/options/settings.jade b/views/options/settings.jade index d084c06390..a0bbb78714 100644 --- a/views/options/settings.jade +++ b/views/options/settings.jade @@ -65,7 +65,7 @@ script(type='text/ng-template', id='partials/options.settings.settings.html') br button.btn(ng-click='showBailey()', popover-trigger='mouseenter', popover-placement='right', popover=env.t('showBaileyPop'))= env.t('showBailey') br - button.btn(ng-click='modals.restore = true', popover-trigger='mouseenter', popover-placement='right', popover=env.t('fixValPop'))= env.t('fixVal') + button.btn(ng-click='openModal("restore", "SettingsCtrl")', popover-trigger='mouseenter', popover-placement='right', popover=env.t('fixValPop'))= env.t('fixVal') div(ng-if='user.preferences.disableClasses==true') button.btn(ng-click='user.ops.changeClass({})', popover-trigger='mouseenter', popover-placement='right', popover=env.t('enableClassPop'))= env.t('enableClass') div(ng-if='!user.preferences.disableClasses && user.flags.classSelected') @@ -86,8 +86,8 @@ script(type='text/ng-template', id='partials/options.settings.settings.html') hr h4=env.t('dangerZone') - a.btn.btn-danger(ng-click='modals.reset = true', popover-trigger='mouseenter', popover-placement='right', popover=env.t('resetAccPop'))= env.t('resetAccount') - a.btn.btn-danger(ng-click='modals.delete = true', popover-trigger='mouseenter', popover=env.t('deleteAccPop'))= env.t('deleteAccount') + a.btn.btn-danger(ng-click='openModal("reset", "SettingsCtrl")', popover-trigger='mouseenter', popover-placement='right', popover=env.t('resetAccPop'))= env.t('resetAccount') + a.btn.btn-danger(ng-click='openModal("delete", "SettingsCtrl")', popover-trigger='mouseenter', popover=env.t('deleteAccPop'))= env.t('deleteAccount') script(type='text/ng-template', id='partials/options.settings.api.html') .row.fluid diff --git a/views/shared/header/header.jade b/views/shared/header/header.jade index 9875741ba4..8c85538495 100644 --- a/views/shared/header/header.jade +++ b/views/shared/header/header.jade @@ -14,20 +14,24 @@ .bar(style='width: {{Shared.percent(user.stats.hp, 50)}}%;') span.meter-text span.glyphicon.glyphicon-heart + |   | {{Math.ceil(user.stats.hp)}} / 50 .meter.experience(title=env.t('experience')) .bar(style='width: {{Shared.percent(user.stats.exp,Shared.tnl(user.stats.lvl))}}%;') span.meter-text span.glyphicon.glyphicon-star + |   | {{Math.floor(user.stats.exp)}} / {{Shared.tnl(user.stats.lvl) | number:0}} // FIXME doesn't look great here, but the "Experience" CSS title rollover covers it where it was before span(ng-show='user.history.exp') a(ng-click='toggleChart("exp")', tooltip=env.t('progress')) + |   span.glyphicon.glyphicon-signal .meter.mana(title='Mana', ng-if='user.flags.classSelected && !user.preferences.disableClasses') .bar(style='width: {{user.stats.mp / user._statsComputed.maxMP * 100}}%;') span.meter-text span.glyphicon.glyphicon-fire + |   | {{Math.floor(user.stats.mp)}} / {{user._statsComputed.maxMP}} // party diff --git a/views/shared/header/menu.jade b/views/shared/header/menu.jade index fa7cf337d8..38c409f1da 100644 --- a/views/shared/header/menu.jade +++ b/views/shared/header/menu.jade @@ -8,25 +8,31 @@ a.task-action-btn.tile.solid span(ng-show='$state.includes("options")', ui-sref='tasks') span.glyphicon.glyphicon-ok + |   =env.t('tasks') span(ng-show='$state.includes("tasks")', ui-sref='options') span.glyphicon.glyphicon-wrench + |   =env.t('options') li a.task-action-btn.tile.solid(href="http://habitrpg.wikia.com/wiki/FAQ", target='_blank') span.glyphicon.glyphicon-book + |   =env.t('FAQ') li a.task-action-btn.tile.solid(href="https://vimeo.com/57654086", target='_blank') span.glyphicon.glyphicon-film + //|   Tutorials is too long to stay in the menu if we add a space =env.t('tutorials') li a.task-action-btn.tile.solid(ng-click='User.sync()') span.glyphicon.glyphicon-refresh + |   =env.t('sync') li a.task-action-btn.tile.solid(ng-click='logout()') span.glyphicon.glyphicon-share-alt + |   =env.t('logout') // party invitation notification a(ng-show='user.party.invitation', style='cursor: pointer;', x-bind='click:gotoPartyChat') diff --git a/views/shared/modals/new-stuff.jade b/views/shared/modals/new-stuff.jade index 5ecb98ba34..d8bbbaf918 100644 --- a/views/shared/modals/new-stuff.jade +++ b/views/shared/modals/new-stuff.jade @@ -12,10 +12,10 @@ script(type='text/ng-template', id='modals/mathUpdates.html') .modal-footer button.btn.btn-default.cancel(ng-click='User.set({"flags.mathUpdates":true}); $close()') Dismiss -script(type='text/ng-template', id='modals/newStuff.html') +script(type='text/ng-template', id='modals/newStuff.html') .modal-header h3 New Stuff! - .modal-body + .modal-body.new-stuff-modal table tr td diff --git a/views/shared/modals/settings.jade b/views/shared/modals/settings.jade index 4aca070e2f..634fc92cc0 100644 --- a/views/shared/modals/settings.jade +++ b/views/shared/modals/settings.jade @@ -1,5 +1,3 @@ -//div(ng-controller='SettingsCtrl') Above all - div(modal='modals.reset') script(type='text/ng-template', id='modals/reset.html') .modal-header h3=env.t('resetAccount') @@ -7,10 +5,9 @@ script(type='text/ng-template', id='modals/reset.html') p=env.t('resetText1') p=env.t('resetText2') .modal-footer - button.btn.btn-default.cancel(ng-click='modals.reset = false')=env.t('neverMind') - button.btn.btn-danger(data-dismiss='modal', ng-click='reset()')=env.t('resetDo') + button.btn.btn-default.cancel(ng-click='$close();')=env.t('neverMind') + button.btn.btn-danger(ng-click='$close(); reset()')=env.t('resetDo') -//div(modal='modals.restore') script(type='text/ng-template', id='modals/restore.html') .modal-header h3=env.t('fixValues') @@ -46,10 +43,9 @@ script(type='text/ng-template', id='modals/restore.html') h3=env.t('other') a.btn.btn-small.btn-warning(ng-controller='FooterCtrl', ng-click='addMissedDay()')=env.t('triggerDay') .modal-footer - button.btn.btn-default.cancel(ng-click='modals.restore = false')=env.t('discardChanges') - button.btn.btn-primary(ng-click='restore()')=env.t('saveAndClose') + button.btn.btn-default.cancel(ng-click='$close()')=env.t('discardChanges') + button.btn.btn-primary(ng-click='$close(); restore()')=env.t('saveAndClose') -//div(modal='modals.delete') script(type='text/ng-template', id='modals/delete.html') .modal-header h3=env.t('deleteAccount') @@ -58,5 +54,5 @@ script(type='text/ng-template', id='modals/delete.html') p input(type='text', ng-model='_deleteAccount') .modal-footer - button.btn.btn-default(ng-click='modals.delete = false')=env.t('neverMind') - button.btn.btn-danger.btn-small(ng-disabled='_deleteAccount != "DELETE"', ng-click='delete()')=env.t('deleteDo') + button.btn.btn-default(ng-click='$close()')=env.t('neverMind') + button.btn.btn-danger.btn-small(ng-disabled='_deleteAccount != "DELETE"', ng-click='$close(); delete()')=env.t('deleteDo')