Fixes for getting newest/oldest message details
This commit is contained in:
parent
641551125b
commit
d5cc24156c
@ -140,9 +140,10 @@ function atcode(field,length,pad,context) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
var x = context.msgbase.first_msg || 1;
|
// @todo Cant use context.msgbase.first_msg - it is always zero?
|
||||||
|
var x = Object.keys(context.headers)[0];
|
||||||
|
|
||||||
result = x ? context.getMessagePtr(x).date : '';
|
result = x ? context.headers[x].date : '';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'msg_area_msgoldest_page':
|
case 'msg_area_msgoldest_page':
|
||||||
@ -151,9 +152,10 @@ function atcode(field,length,pad,context) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
var x = context.msgbase.first_msg || 1;
|
// @todo Cant use context.msgbase.first_msg - it is always zero?
|
||||||
|
var x = Object.keys(context.headers)[0];
|
||||||
|
|
||||||
return x ? context.getMessagePage(x) : null;
|
return x ? context.getMessagePage(context.headers[x].number) : null;
|
||||||
|
|
||||||
// Newest message in msgarea
|
// Newest message in msgarea
|
||||||
case 'msg_area_msgnewest_date':
|
case 'msg_area_msgnewest_date':
|
||||||
@ -162,7 +164,7 @@ function atcode(field,length,pad,context) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
result = context.msgbase.last_msg ? context.getMessagePtr(context.msgbase.last_msg).date : '';
|
result = context.headers[context.msgbase.last_msg] ? context.headers[context.msgbase.last_msg].date : '';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'msg_area_msgnewest_page':
|
case 'msg_area_msgnewest_page':
|
||||||
@ -171,7 +173,7 @@ function atcode(field,length,pad,context) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return context.msgbase.last_msg ? context.getMessagePage(context.msgbase.last_msg) : null;
|
return context.msgbase.last_msg ? context.getMessagePage(context.headers[context.msgbase.last_msg].number) : null;
|
||||||
|
|
||||||
// First unread message
|
// First unread message
|
||||||
case 'msg_area_msgunread_date':
|
case 'msg_area_msgunread_date':
|
||||||
|
@ -235,32 +235,28 @@ MsgArea.prototype.getMessage = function(page) {
|
|||||||
return msg;
|
return msg;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Get a message by pointer
|
|
||||||
*
|
|
||||||
* @param ptr
|
|
||||||
*/
|
|
||||||
MsgArea.prototype.getMessagePtr = function(ptr) {
|
|
||||||
ptr = ptr || 1;
|
|
||||||
|
|
||||||
return this.headers[ptr];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get a message page by pointer
|
* Get a message page by pointer
|
||||||
*
|
*
|
||||||
* @param ptr
|
* @param number
|
||||||
* @returns {string}
|
* @returns {string}
|
||||||
*/
|
*/
|
||||||
MsgArea.prototype.getMessagePage = function(ptr) {
|
MsgArea.prototype.getMessagePage = function(number) {
|
||||||
log(LOG_DEBUG,'Get Message Page with ptr ['+JSON.stringify(ptr)+']');
|
log(LOG_DEBUG,'Get Message Page with number ['+number+']');
|
||||||
|
|
||||||
ptr = ptr || 1;
|
var r;
|
||||||
|
|
||||||
if (! this.headers[ptr] || this.headers[ptr].tags === undefined)
|
for (var x in this.headers) {
|
||||||
|
if (this.headers[x].number === number) {
|
||||||
|
r = this.headers[x];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (! r || r.tags === undefined)
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
return '1'+this.zone_id+this.area_id+this.headers[ptr].tags;
|
return '1'+this.zone_id+this.area_id+r.tags;
|
||||||
}
|
}
|
||||||
|
|
||||||
MsgArea.prototype.getUserStats = function() {
|
MsgArea.prototype.getUserStats = function() {
|
||||||
|
Loading…
Reference in New Issue
Block a user