[Windows Mobile Themes] Nullstring:
workspace updated. download it in Post #1

does anybody know where the source of the iframe is?

- update: found it ------

here are some JS codes used in TMAIL. It may not be complete, but that's what I got ..

var SelColor = '#d5eaff';
var unSelColor = 'transparent';
var FocusId = '0';
var blurLinkId = 'invalid';
var multiSelMode = 0;
var focusedAnchorSecondaryId = -1;
function onf(id, anchorSecondaryId) {
if (anchorSecondaryId == undefined) {
anchorSecondaryId = -1;
}
focusedAnchorSecondaryId = anchorSecondaryId;
if (multiSelMode == 1) {
blurLinkId = 'invalid';
FocusId = id.id;
} else {
blurLinkId = 'invalid';
elem = document.getElementById(FocusId);
elem.style.backgroundColor = unSelColor;
FocusId = id.id;
id.style.backgroundColor = SelColor;
}
};
function onfUnread(id, idImg, idBody, anchorSecondaryId) {
onf(id, anchorSecondaryId);
if (document.getElementById(idBody.id).className == 'unread') {
document.getElementById(idBody.id).className = 'read';
document.getElementById(idImg.id).src = 'Inbox:thread_read';
}
};
var numberOfAnchors = 0;
function initAnchorsSecondaryId() {
var i = 0;
var anchors = document.getElementsByTagName('a');
for (i = 0; i < anchors.length; i++) {
anchors[i].secondaryId = i;
}
numberOfAnchors = anchors.length;
};
var curPage = 0;
var maxMsgsPerPage = 12;
function getSelectedElements() {
var selectedIds = '';
var index = curPage * maxMsgsPerPage;
if (multiSelMode == 1) {
elem = document.getElementById('Id' + index);
while (elem != null) {
if (elem.style.backgroundColor == SelColor)
selectedIds = selectedIds + 'Id' + index + ';';++index;
elem = document.getElementById('Id' + index);
}
} else {
selectedIds = FocusId;
}
return selectedIds;
}
function onClickMsg(index) {
elem = document.getElementById('a' + index);
elem.focus();
if (multiSelMode == 1) {
elem = document.getElementById('Id' + index);
onToggleSelect(elem);
}
}
function onToggleSelect(id) {
if (id.style.backgroundColor == SelColor)
id.style.backgroundColor = unSelColor;
else
id.style.backgroundColor = SelColor;
}
function selectAll() {
var index = curPage * maxMsgsPerPage;
multiSelMode = 1;
elem = document.getElementById('Id' + index);
while (elem != null) {
elem.style.backgroundColor = SelColor;
elem = document.getElementById('Id' + ++index);
}
}
function cancelSelection() {
var index = curPage * maxMsgsPerPage;
multiSelMode = 0;
elem = document.getElementById('Id' + index);
while (elem != null) {
if (FocusId != ('Id' + index))
elem.style.backgroundColor = unSelColor;
elem = document.getElementById('Id' + ++index);
}
}
function onfocusOlder() {
blurLinkId = 'Id' + ((curPage + 1) * maxMsgsPerPage);
}
function onfocusNewer() {
blurLinkId = 'Id' + (curPage * maxMsgsPerPage - 1);
}
function resetBlurLinkId() {
blurLinkId = 'invalid';

<div id='Id%1!s!' onclick='onClickMsg(%1!s!)'> %12!s! <img src='%2!s!' class='state' align=top><a class='%3!s!' id='a%1!s!' href='Inbox:THREADIFRAME %11%4!s!' onclick='onClickMsg(%1!s!)' onfocus='onf(Id%1!s!, this.secondaryId); blurLinkId = (Id%1!s!).id'>%5!s!</a><span class='spempty'> </span><span class='sp%3!s!' id='dt%1!s!'>%6!s!</span>
<div class='%7!s!'>
%8!s!%10!s!
<div class='resend'>%9!s!</div>
</div>
</div>
<div id='Id%1!s!' onclick='onClickMsg(%1!s!)'> %12!s! <img src='%2!s!' class='state' id='ImgId%1!s!' align=top><a class='%3!s!' id='a%1!s!' href='Inbox:THREADIFRAME %11%4!s!' onclick='onClickMsg(%1!s!)' onfocus='onfUnread(Id%1!s!, ImgId%1!s!, BodyId%1!s!, this.secondaryId); blurLinkId = (Id%1!s!).id'>%5!s!</a><span class='spempty'> </span><span class='sp%3!s!' id='dt%1!s!'>%6!s!</span>
<div class='%7!s!' id='BodyId%1!s!'>
%8!s!%10!s!
<div class='resend'>%9!s!</div>
</div>
</div>

<a class='retry' href='Inbox:THREADIFRAME Resend:%1!s!' onfocus='onf(Id%1!s!)'>Message was not sent. Try again?</a>

Attachment Details:

my workspace while working with htmlnote.dll and outres.dll + the tool I just wrote that will replace all unnecessary characters and just keep these chars "`1234567890-=\~!qwertyuiop[]asdfghjkl;'zxcvbnm,./~!@#$%^&*()_+|QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>?" + \r\n