mirror of
https://github.com/the-djmaze/snappymail.git
synced 2024-11-15 12:15:20 +08:00
4cc2207513
Original unminified source code (dev folder - js, css, less) (fixes #6) Grunt build system Multiple identities correction (fixes #9) Compose html editor (fixes #12) New general settings - Loading Description New warning about default admin password Split general and login screen settings
73 lines
1.4 KiB
JavaScript
73 lines
1.4 KiB
JavaScript
/* RainLoop Webmail (c) RainLoop Team | Licensed under CC BY-NC-SA 3.0 */
|
|
|
|
/**
|
|
* @constructor
|
|
*/
|
|
function ContactModel()
|
|
{
|
|
this.idContact = 0;
|
|
this.imageHash = '';
|
|
this.listName = '';
|
|
this.name = '';
|
|
this.emails = [];
|
|
|
|
this.checked = ko.observable(false);
|
|
this.selected = ko.observable(false);
|
|
this.deleted = ko.observable(false);
|
|
}
|
|
|
|
ContactModel.prototype.parse = function (oItem)
|
|
{
|
|
var bResult = false;
|
|
if (oItem && 'Object/Contact' === oItem['@Object'])
|
|
{
|
|
this.idContact = Utils.pInt(oItem['IdContact']);
|
|
this.listName = Utils.pString(oItem['ListName']);
|
|
this.name = Utils.pString(oItem['Name']);
|
|
this.emails = Utils.isNonEmptyArray(oItem['Emails']) ? oItem['Emails'] : [];
|
|
this.imageHash = Utils.pString(oItem['ImageHash']);
|
|
|
|
bResult = true;
|
|
}
|
|
|
|
return bResult;
|
|
};
|
|
|
|
/**
|
|
* @return {string}
|
|
*/
|
|
ContactModel.prototype.srcAttr = function ()
|
|
{
|
|
return '' === this.imageHash ? RL.link().emptyContactPic() :
|
|
RL.link().getUserPicUrlFromHash(this.imageHash);
|
|
};
|
|
|
|
/**
|
|
* @return {string}
|
|
*/
|
|
ContactModel.prototype.generateUid = function ()
|
|
{
|
|
return '' + this.idContact;
|
|
};
|
|
|
|
/**
|
|
* @return string
|
|
*/
|
|
ContactModel.prototype.lineAsCcc = function ()
|
|
{
|
|
var aResult = [];
|
|
if (this.deleted())
|
|
{
|
|
aResult.push('deleted');
|
|
}
|
|
if (this.selected())
|
|
{
|
|
aResult.push('selected');
|
|
}
|
|
if (this.checked())
|
|
{
|
|
aResult.push('checked');
|
|
}
|
|
|
|
return aResult.join(' ');
|
|
};
|