Merge pull request #3614 from dannon/logout-recalc-backport

[17.01] Logout recalc backport and additional logic
This commit is contained in:
Martin Cech
2017-02-14 15:54:09 -05:00
committed by GitHub
6 changed files with 10 additions and 7 deletions
@@ -128,8 +128,8 @@ var UserQuotaMeter = Backbone.View.extend( baseMVC.LoggableMixin ).extend(
return [
'<div id="quota-meter" class="quota-meter progress">',
'<div class="progress-bar" style="width: ', data.quota_percent, '%"></div>',
'<div class="quota-meter-text" style="top: 6px"',
(( data.nice_total_disk_usage )?( ' title="Using ' + data.nice_total_disk_usage + '">' ):( '>' )),
'<div class="quota-meter-text" data-placement="left" style="top: 6px"',
(( data.nice_total_disk_usage )?( ' title="Using ' + data.nice_total_disk_usage + '. This value is recalculated when you log out.">' ):( '>' )),
_l( 'Using' ), ' ', data.quota_percent, '%',
'</div>',
'</div>'
@@ -139,7 +139,7 @@ var UserQuotaMeter = Backbone.View.extend( baseMVC.LoggableMixin ).extend(
_templateUsage : function( data ){
return [
'<div id="quota-meter" class="quota-meter" style="background-color: transparent">',
'<div class="quota-meter-text" style="top: 6px; color: white">',
'<div class="quota-meter-text" data-placement="left" data-original-title="This value is recalculated when you log out." style="top: 6px; color: white">',
(( data.nice_total_disk_usage )?( _l( 'Using ' ) + data.nice_total_disk_usage ):( '' )),
'</div>',
'</div>'
@@ -624,6 +624,9 @@ class User( BaseUIController, UsesFormDefinitionsMixin, CreatesUsersMixin, Creat
refresh_frames = [ 'masthead', 'history', 'tools' ]
else:
refresh_frames = [ 'masthead', 'history' ]
# Recalculate user disk usage.
if trans.user:
trans.user.calculate_disk_usage()
# Since logging an event requires a session, we'll log prior to ending the session
trans.log_event( "User logged out" )
else:
+1 -1
View File
@@ -1 +1 @@
{"version":3,"file":"user-quotameter.js","sources":["../../../src/mvc/user/user-quotameter.js"],"names":["define","baseMVC","_l","logNamespace","UserQuotaMeter","Backbone","View","extend","LoggableMixin","_logNamespace","options","warnAtPercent","errorAtPercent","initialize","this","log","_","listenTo","model","render","update","loadFromApi","get","isOverQuota","_render_quota","modelJson","toJSON","percent","quota_percent","$meter","$","_templateQuotaMeter","$bar","find","attr","css","trigger","_render_usage","usage","_templateUsage","meterHtml","undefined","$el","html","tooltip","data","nice_total_disk_usage","join","toString"],"mappings":"AAAAA,QACI,eACA,sBACD,SAAUC,EAASC,GACtB,YAEA,IAAIC,GAAe,OAQfC,EAAiBC,SAASC,KAAKC,OAAQN,EAAQO,eAAgBD,QAE/DE,cAAgBN,EAGhBO,SACIC,cAAkB,GAClBC,eAAkB,KAItBC,WAAa,SAAUH,GACnBI,KAAKC,IAAKD,KAAO,eAAgBJ,GACjCM,EAAET,OAAQO,KAAKJ,QAASA,GAGxBI,KAAKG,SAAUH,KAAKI,MAAO,+CAAgDJ,KAAKK,SAIpFC,OAAS,SAAUV,GAGf,MAFAI,MAAKC,IAAKD,KAAO,yBAA0BJ,GAC3CI,KAAKI,MAAMG,YAAaP,KAAKI,MAAMI,IAAK,MAAQZ,GACzCI,MAMXS,YAAc,WACV,MAA+C,QAAtCT,KAAKI,MAAMI,IAAK,kBAChBR,KAAKI,MAAMI,IAAK,kBAAqBR,KAAKJ,QAAQE,gBAW/DY,cAAgB,WACZ,GAAIC,GAAYX,KAAKI,MAAMQ,SAEvBC,EAAUF,EAAUG,cAEpBC,EAASC,EAAGhB,KAAKiB,oBAAqBN,IACtCO,EAAOH,EAAOI,KAAM,gBAwBxB,OApBInB,MAAKS,eAELS,EAAKE,KAAM,QAAS,oCACpBL,EAAOI,KAAM,qBAAsBE,IAAK,QAAS,SAEjDrB,KAAKsB,QAAS,aAAcX,IAGrBE,GAAWb,KAAKJ,QAAQC,eAE/BqB,EAAKE,KAAM,QAAS,qCAEpBpB,KAAKsB,QAAS,sCAAuCX,KAIrDO,EAAKE,KAAM,QAAS,qCAEpBpB,KAAKsB,QAAS,6BAA8BX,IAEzCI,GAOXQ,cAAgB,WAEZ,GAAIC,GAAQR,EAAGhB,KAAKyB,eAAgBzB,KAAKI,MAAMQ,UAE/C,OADAZ,MAAKC,IAAKD,KAAO,oBAAqBwB,GAC/BA,GAOXnB,OAAS,WAEL,GAAIqB,GAAY,IAiBhB,OAdA1B,MAAKC,IAAKD,KAAO,wBAAyBA,KAAKI,MAAMI,IAAK,kBAGtDkB,EAFwC,OAAtC1B,KAAKI,MAAMI,IAAK,kBACsBmB,SAAtC3B,KAAKI,MAAMI,IAAK,iBACNR,KAAKuB,gBAILvB,KAAKU,gBAKrBV,KAAK4B,IAAIC,KAAMH,GACf1B,KAAK4B,IAAIT,KAAM,qBAAsBW,UAC9B9B,MAGXiB,oBAAsB,SAAUc,GAC5B,OACI,sDACI,2CAA4CA,EAAKjB,cAAe,YAChE,iDACOiB,EAA2B,sBAAI,iBAAmBA,EAAKC,sBAAwB,KAAO,IACzF5C,EAAI,SAAW,IAAK2C,EAAKjB,cAAe,IAC5C,SACJ,UACFmB,KAAM,KAGZR,eAAiB,SAAUM,GACvB,OACI,mFACI,gEACOA,EAA2B,sBAAI3C,EAAI,UAAa2C,EAAKC,sBAAwB,GACpF,SACJ,UACFC,KAAM,KAGZC,SAAW,WACP,MAAO,kBAAoBlC,KAAKI,MAAQ,MAMhD,QACId,eAAiBA"}
{"version":3,"file":"user-quotameter.js","sources":["../../../src/mvc/user/user-quotameter.js"],"names":["define","baseMVC","_l","logNamespace","UserQuotaMeter","Backbone","View","extend","LoggableMixin","_logNamespace","options","warnAtPercent","errorAtPercent","initialize","this","log","_","listenTo","model","render","update","loadFromApi","get","isOverQuota","_render_quota","modelJson","toJSON","percent","quota_percent","$meter","$","_templateQuotaMeter","$bar","find","attr","css","trigger","_render_usage","usage","_templateUsage","meterHtml","undefined","$el","html","tooltip","data","nice_total_disk_usage","join","toString"],"mappings":"AAAAA,QACI,eACA,sBACD,SAAUC,EAASC,GACtB,YAEA,IAAIC,GAAe,OAQfC,EAAiBC,SAASC,KAAKC,OAAQN,EAAQO,eAAgBD,QAE/DE,cAAgBN,EAGhBO,SACIC,cAAkB,GAClBC,eAAkB,KAItBC,WAAa,SAAUH,GACnBI,KAAKC,IAAKD,KAAO,eAAgBJ,GACjCM,EAAET,OAAQO,KAAKJ,QAASA,GAGxBI,KAAKG,SAAUH,KAAKI,MAAO,+CAAgDJ,KAAKK,SAIpFC,OAAS,SAAUV,GAGf,MAFAI,MAAKC,IAAKD,KAAO,yBAA0BJ,GAC3CI,KAAKI,MAAMG,YAAaP,KAAKI,MAAMI,IAAK,MAAQZ,GACzCI,MAMXS,YAAc,WACV,MAA+C,QAAtCT,KAAKI,MAAMI,IAAK,kBAChBR,KAAKI,MAAMI,IAAK,kBAAqBR,KAAKJ,QAAQE,gBAW/DY,cAAgB,WACZ,GAAIC,GAAYX,KAAKI,MAAMQ,SAEvBC,EAAUF,EAAUG,cAEpBC,EAASC,EAAGhB,KAAKiB,oBAAqBN,IACtCO,EAAOH,EAAOI,KAAM,gBAwBxB,OApBInB,MAAKS,eAELS,EAAKE,KAAM,QAAS,oCACpBL,EAAOI,KAAM,qBAAsBE,IAAK,QAAS,SAEjDrB,KAAKsB,QAAS,aAAcX,IAGrBE,GAAWb,KAAKJ,QAAQC,eAE/BqB,EAAKE,KAAM,QAAS,qCAEpBpB,KAAKsB,QAAS,sCAAuCX,KAIrDO,EAAKE,KAAM,QAAS,qCAEpBpB,KAAKsB,QAAS,6BAA8BX,IAEzCI,GAOXQ,cAAgB,WAEZ,GAAIC,GAAQR,EAAGhB,KAAKyB,eAAgBzB,KAAKI,MAAMQ,UAE/C,OADAZ,MAAKC,IAAKD,KAAO,oBAAqBwB,GAC/BA,GAOXnB,OAAS,WAEL,GAAIqB,GAAY,IAiBhB,OAdA1B,MAAKC,IAAKD,KAAO,wBAAyBA,KAAKI,MAAMI,IAAK,kBAGtDkB,EAFwC,OAAtC1B,KAAKI,MAAMI,IAAK,kBACsBmB,SAAtC3B,KAAKI,MAAMI,IAAK,iBACNR,KAAKuB,gBAILvB,KAAKU,gBAKrBV,KAAK4B,IAAIC,KAAMH,GACf1B,KAAK4B,IAAIT,KAAM,qBAAsBW,UAC9B9B,MAGXiB,oBAAsB,SAAUc,GAC5B,OACI,sDACI,2CAA4CA,EAAKjB,cAAe,YAChE,uEACOiB,EAA2B,sBAAI,iBAAmBA,EAAKC,sBAAwB,oDAAsD,IACxI5C,EAAI,SAAW,IAAK2C,EAAKjB,cAAe,IAC5C,SACJ,UACFmB,KAAM,KAGZR,eAAiB,SAAUM,GACvB,OACI,mFACI,yJACOA,EAA2B,sBAAI3C,EAAI,UAAa2C,EAAKC,sBAAwB,GACpF,SACJ,UACFC,KAAM,KAGZC,SAAW,WACP,MAAO,kBAAoBlC,KAAKI,MAAQ,MAMhD,QACId,eAAiBA"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1,2 +1,2 @@
define(["mvc/base-mvc","utils/localization"],function(a,b){"use strict";var c="user",d=Backbone.View.extend(a.LoggableMixin).extend({_logNamespace:c,options:{warnAtPercent:85,errorAtPercent:100},initialize:function(a){this.log(this+".initialize:",a),_.extend(this.options,a),this.listenTo(this.model,"change:quota_percent change:total_disk_usage",this.render)},update:function(a){return this.log(this+" updating user data...",a),this.model.loadFromApi(this.model.get("id"),a),this},isOverQuota:function(){return null!==this.model.get("quota_percent")&&this.model.get("quota_percent")>=this.options.errorAtPercent},_render_quota:function(){var a=this.model.toJSON(),b=a.quota_percent,c=$(this._templateQuotaMeter(a)),d=c.find(".progress-bar");return this.isOverQuota()?(d.attr("class","progress-bar progress-bar-danger"),c.find(".quota-meter-text").css("color","white"),this.trigger("quota:over",a)):b>=this.options.warnAtPercent?(d.attr("class","progress-bar progress-bar-warning"),this.trigger("quota:under quota:under:approaching",a)):(d.attr("class","progress-bar progress-bar-success"),this.trigger("quota:under quota:under:ok",a)),c},_render_usage:function(){var a=$(this._templateUsage(this.model.toJSON()));return this.log(this+".rendering usage:",a),a},render:function(){var a=null;return this.log(this+".model.quota_percent:",this.model.get("quota_percent")),a=null===this.model.get("quota_percent")||void 0===this.model.get("quota_percent")?this._render_usage():this._render_quota(),this.$el.html(a),this.$el.find(".quota-meter-text").tooltip(),this},_templateQuotaMeter:function(a){return['<div id="quota-meter" class="quota-meter progress">','<div class="progress-bar" style="width: ',a.quota_percent,'%"></div>','<div class="quota-meter-text" style="top: 6px"',a.nice_total_disk_usage?' title="Using '+a.nice_total_disk_usage+'">':">",b("Using")," ",a.quota_percent,"%","</div>","</div>"].join("")},_templateUsage:function(a){return['<div id="quota-meter" class="quota-meter" style="background-color: transparent">','<div class="quota-meter-text" style="top: 6px; color: white">',a.nice_total_disk_usage?b("Using ")+a.nice_total_disk_usage:"","</div>","</div>"].join("")},toString:function(){return"UserQuotaMeter("+this.model+")"}});return{UserQuotaMeter:d}});
define(["mvc/base-mvc","utils/localization"],function(a,b){"use strict";var c="user",d=Backbone.View.extend(a.LoggableMixin).extend({_logNamespace:c,options:{warnAtPercent:85,errorAtPercent:100},initialize:function(a){this.log(this+".initialize:",a),_.extend(this.options,a),this.listenTo(this.model,"change:quota_percent change:total_disk_usage",this.render)},update:function(a){return this.log(this+" updating user data...",a),this.model.loadFromApi(this.model.get("id"),a),this},isOverQuota:function(){return null!==this.model.get("quota_percent")&&this.model.get("quota_percent")>=this.options.errorAtPercent},_render_quota:function(){var a=this.model.toJSON(),b=a.quota_percent,c=$(this._templateQuotaMeter(a)),d=c.find(".progress-bar");return this.isOverQuota()?(d.attr("class","progress-bar progress-bar-danger"),c.find(".quota-meter-text").css("color","white"),this.trigger("quota:over",a)):b>=this.options.warnAtPercent?(d.attr("class","progress-bar progress-bar-warning"),this.trigger("quota:under quota:under:approaching",a)):(d.attr("class","progress-bar progress-bar-success"),this.trigger("quota:under quota:under:ok",a)),c},_render_usage:function(){var a=$(this._templateUsage(this.model.toJSON()));return this.log(this+".rendering usage:",a),a},render:function(){var a=null;return this.log(this+".model.quota_percent:",this.model.get("quota_percent")),a=null===this.model.get("quota_percent")||void 0===this.model.get("quota_percent")?this._render_usage():this._render_quota(),this.$el.html(a),this.$el.find(".quota-meter-text").tooltip(),this},_templateQuotaMeter:function(a){return['<div id="quota-meter" class="quota-meter progress">','<div class="progress-bar" style="width: ',a.quota_percent,'%"></div>','<div class="quota-meter-text" data-placement="left" style="top: 6px"',a.nice_total_disk_usage?' title="Using '+a.nice_total_disk_usage+'. This value is recalculated when you log out.">':">",b("Using")," ",a.quota_percent,"%","</div>","</div>"].join("")},_templateUsage:function(a){return['<div id="quota-meter" class="quota-meter" style="background-color: transparent">','<div class="quota-meter-text" data-placement="left" data-original-title="This value is recalculated when you log out." style="top: 6px; color: white">',a.nice_total_disk_usage?b("Using ")+a.nice_total_disk_usage:"","</div>","</div>"].join("")},toString:function(){return"UserQuotaMeter("+this.model+")"}});return{UserQuotaMeter:d}});
//# sourceMappingURL=../../../maps/mvc/user/user-quotameter.js.map