Esempio n. 1
0
	AppUser.prototype.reloadMessageList = function (bDropPagePosition, bDropCurrenFolderCache)
	{
		var
			iOffset = (MessageStore.messageListPage() - 1) * SettingsStore.messagesPerPage()
		;

		if (Utils.isUnd(bDropCurrenFolderCache) ? false : !!bDropCurrenFolderCache)
		{
			Cache.setFolderHash(FolderStore.currentFolderFullNameRaw(), '');
		}

		if (Utils.isUnd(bDropPagePosition) ? false : !!bDropPagePosition)
		{
			MessageStore.messageListPage(1);
			MessageStore.messageListPageBeforeThread(1);
			iOffset = 0;

			kn.setHash(Links.mailBox(
				FolderStore.currentFolderFullNameHash(),
				MessageStore.messageListPage(),
				MessageStore.messageListSearch(),
				MessageStore.messageListThreadUid()
			), true, true);
		}

		MessageStore.messageListLoading(true);
		Remote.messageList(function (sResult, oData, bCached) {

			if (Enums.StorageResultType.Success === sResult && oData && oData.Result)
			{
				MessageStore.messageListError('');
				MessageStore.messageListLoading(false);

				MessageStore.setMessageList(oData, bCached);
			}
			else if (Enums.StorageResultType.Unload === sResult)
			{
				MessageStore.messageListError('');
				MessageStore.messageListLoading(false);
			}
			else if (Enums.StorageResultType.Abort !== sResult)
			{
				MessageStore.messageList([]);
				MessageStore.messageListLoading(false);
				MessageStore.messageListError(oData && oData.ErrorCode ?
					Translator.getNotification(oData.ErrorCode) : Translator.i18n('NOTIFICATIONS/CANT_GET_MESSAGE_LIST')
				);
			}

		}, FolderStore.currentFolderFullNameRaw(), iOffset, SettingsStore.messagesPerPage(),
			MessageStore.messageListSearch(), MessageStore.messageListThreadUid());
	};
Esempio n. 2
0
	MessageListMailBoxUserView.prototype.cancelThreadUid = function ()
	{
		kn.setHash(Links.mailBox(
			FolderStore.currentFolderFullNameHash(),
			MessageStore.messageListPageBeforeThread(),
			MessageStore.messageListSearch()
		));
	};
Esempio n. 3
0
	MessageListMailBoxUserView.prototype.gotoPage = function (oPage)
	{
		if (oPage)
		{
			kn.setHash(Links.mailBox(
				FolderStore.currentFolderFullNameHash(),
				oPage.value,
				MessageStore.messageListSearch(),
				MessageStore.messageListThreadUid()
			));
		}
	};
Esempio n. 4
0
	MessageListMailBoxUserView.prototype.gotoThread = function (oMessage)
	{
		if (oMessage && 0 < oMessage.threadsLen())
		{
			MessageStore.messageListPageBeforeThread(MessageStore.messageListPage());

			kn.setHash(Links.mailBox(
				FolderStore.currentFolderFullNameHash(),
				1,
				MessageStore.messageListSearch(),
				oMessage.uid
			));
		}
	};
Esempio n. 5
0
	MailBoxUserScreen.prototype.onRoute = function (sFolderHash, iPage, sSearch)
	{
		var
			sFolderFullNameRaw = Cache.getFolderFullNameRaw(sFolderHash),
			oFolder = Cache.getFolderFromCacheList(sFolderFullNameRaw)
		;

		if (oFolder)
		{
			FolderStore.currentFolder(oFolder);
			MessageStore.messageListPage(iPage);
			MessageStore.messageListSearch(sSearch);

			require('App/User').reloadMessageList();
		}
	};
Esempio n. 6
0
	MailBoxUserScreen.prototype.onRoute = function (sFolderHash, iPage, sSearch)
	{
		var
			sFolderFullNameRaw = Cache.getFolderFullNameRaw(sFolderHash),
			oFolder = Cache.getFolderFromCacheList(sFolderFullNameRaw)
		;

		if (oFolder)
		{
			FolderStore.currentFolder(oFolder);
			MessageStore.messageListPage(iPage);
			MessageStore.messageListSearch(sSearch);

//			if (Enums.Layout.NoPreview === SettingsStore.layout() && MessageStore.message())
//			{
//				MessageStore.message(null);
//			}

			require('App/User').reloadMessageList();
		}
	};
Esempio n. 7
0
	MailBoxUserScreen.prototype.onRoute = function (sFolderHash, iPage, sSearch)
	{
		var
			sThreadUid = sFolderHash.replace(/^(.+)~([\d]+)$/, '$2'),
			oFolder = Cache.getFolderFromCacheList(Cache.getFolderFullNameRaw(
				sFolderHash.replace(/~([\d]+)$/, '')))
		;

		if (oFolder)
		{
			if (sFolderHash === sThreadUid)
			{
				sThreadUid = '';
			}

			FolderStore.currentFolder(oFolder);

			MessageStore.messageListPage(iPage);
			MessageStore.messageListSearch(sSearch);
			MessageStore.messageListThreadUid(sThreadUid);

			require('App/User').reloadMessageList();
		}
	};
Esempio n. 8
0
	this.isInboxStarred = ko.computed(function() {
		return FolderStore.currentFolder() &&
			FolderStore.currentFolder().isInbox() &&
			-1 < Utils.trim(MessageStore.messageListSearch()).indexOf('is:flagged');
	});