| 3694 | } |
| 3695 | |
| 3696 | bool WizDatabase::getAllObjectsNeedToBeDownloaded(CWizObjectDataArray& arrayData, int nTimeLine) |
| 3697 | { |
| 3698 | if (nTimeLine == -1) |
| 3699 | return true; |
| 3700 | // |
| 3701 | CWizDocumentDataArray arrayDocument; |
| 3702 | CWizDocumentAttachmentDataArray arrayAttachment; |
| 3703 | getNeedToBeDownloadedDocuments(arrayDocument); |
| 3704 | getNeedToBeDownloadedAttachments(arrayAttachment); |
| 3705 | arrayData.assign(arrayAttachment.begin(), arrayAttachment.end()); |
| 3706 | arrayData.insert(arrayData.begin(), arrayDocument.begin(), arrayDocument.end()); |
| 3707 | |
| 3708 | if (nTimeLine == -1) { |
| 3709 | arrayData.clear(); |
| 3710 | return true; |
| 3711 | } else if (nTimeLine == 9999) { |
| 3712 | return true; |
| 3713 | } else { |
| 3714 | WizOleDateTime tNow = ::WizGetCurrentTime(); |
| 3715 | size_t count = arrayData.size(); |
| 3716 | for (intptr_t i = count - 1; i >= 0; i--) |
| 3717 | { |
| 3718 | WizOleDateTime t = arrayData[i].tTime; |
| 3719 | t = t.addDays(nTimeLine); |
| 3720 | if (t < tNow) { |
| 3721 | arrayData.erase(arrayData.begin() + i); |
| 3722 | continue; |
| 3723 | } |
| 3724 | |
| 3725 | WizDatabase* privateDB = personalDatabase(); |
| 3726 | if (!privateDB->getDownloadAttachmentsAtSync()) |
| 3727 | { |
| 3728 | if (arrayData[i].eObjectType == wizobjectDocumentAttachment) { |
| 3729 | arrayData.erase(arrayData.begin() + i); |
| 3730 | continue; |
| 3731 | } |
| 3732 | } |
| 3733 | } |
| 3734 | } |
| 3735 | |
| 3736 | return true; |
| 3737 | } |
| 3738 | |
| 3739 | bool WizDatabase::updateSyncObjectLocalData(const WIZOBJECTDATA& data) |
| 3740 | { |
nothing calls this directly
no test coverage detected