public override LicenseRights getRights(LicenseMetaData metaData, out ErrorTypes errorCode) { LicenseRights oRights = new LicenseRights(true); errorCode = ErrorTypes.NoError; return(oRights); }
public override LicenseRights getRights(LicenseMetaData metaData, out ErrorTypes errorCode) { errorCode = ErrorTypes.NoError; LicenseRights oRights = new LicenseRights(); if (metaData is LicenseMetaData) { LicenseMetaData metaVKey = (LicenseMetaData)metaData; errorCode = Signature.isAccept(metaVKey.VKey, metaVKey.DocId, false, null); if (ErrorTypes.NoError == errorCode || ErrorTypes.VKeyTimeExpire == errorCode) { oRights.CanOpen = (ErrorTypes.VKeyTimeExpire != errorCode); string sAffilieteId = null; Signature.getVKeyStringParam(metaVKey.VKey, ConfigurationSettings.AppSettings["keyKeyID"], out sAffilieteId); ASC.Core.Billing.PaymentOffice oPaymentOffice = Signature.getPaymentOffice(sAffilieteId); if (32 <= sAffilieteId.Length) { oRights.CanSave = oPaymentOffice.Editing; oRights.CanCoAuthoring = oPaymentOffice.CoEditing; oRights.CanExport = true; } else { oRights.CanSave = true; oRights.CanCoAuthoring = true; oRights.CanExport = true; } } } else { errorCode = ErrorTypes.LicenseErrorArgument; } return oRights; }
protected override string getDocumentId(LicenseMetaData metaData) { return ""; }
public override LicenseRights getRights(LicenseMetaData metaData, out ErrorTypes errorCode) { LicenseRights oRights = new LicenseRights(true); errorCode = ErrorTypes.NoError; return oRights; }
public override LicenseRights getRights(LicenseMetaData metaData, out ErrorTypes errorCode) { errorCode = ErrorTypes.NoError; LicenseRights oRights = new LicenseRights(); if (null == license || !license.isLicenseFound() || !license.isLicenseCorrect()) { errorCode = ErrorTypes.LicenseErrorFile; return oRights; } bool bValidDate = false; DateTime now = DateTime.Now; DateTime start = license.getStartDate(); DateTime end = license.getEndDate(); DateTime treshold = license.getEndDateThreshold(); if (start < now && end > now) { bValidDate = true; } else { errorCode = ErrorTypes.LicenseErrorInvalidDate; if (now < treshold) bValidDate = true; } if (bValidDate) { oRights.CanSave = true; oRights.CanCoAuthoring = true; oRights.CanExport = true; } return oRights; }
protected virtual string getUserId(LicenseMetaData metaData) { return metaData.UserId; }
protected virtual string getDocumentId(LicenseMetaData metaData) { return metaData.DocId; }
protected bool checkQuotaExceeded(LicenseMetaData metaData) { string userId = getUserId(metaData); string documentId = getDocumentId(metaData); bool bQuotaExceed = trackInfo.isQuotaExceed(userId, documentId); if (bQuotaExceed) { trackInfo.Cleanup(); bQuotaExceed = trackInfo.isQuotaExceed(userId, documentId); } return bQuotaExceed; }
public override LicenseRights getRights(LicenseMetaData metaData, out ErrorTypes errorCode) { errorCode = ErrorTypes.NoError; LicenseRights oRights = new LicenseRights(); bool bValidLicenseFile = trackInfo.isLicenseFileValid(); if (!bValidLicenseFile) { errorCode = ErrorTypes.LicenseErrorFile; bool bUnlicensedQuotaExceed = checkQuotaExceeded (metaData); if (bUnlicensedQuotaExceed) { errorCode = ErrorTypes.LicenseErrorActiveConnectionQuotaExceed; } else { oRights.CanSave = true; oRights.CanCoAuthoring = true; oRights.CanExport = true; } return oRights; } bool bValidDate = false; if (trackInfo.isLicenseDateValid()) { bValidDate = true; } else { errorCode = ErrorTypes.LicenseErrorInvalidDate; if (!trackInfo.isLicenseDateTresholdExpired()) bValidDate = true; } bool bBuildTimeValid = trackInfo.isLicenseEndDateGreater(m_dtBuildTime); bool bQuotaExceed = true; bool bEditorAllowed = false; uint permissions = trackInfo.getLicense().getPermissions(); if ((metaData.EditorId == (int)EditorType.Convertation) && (permissions != EditorPermissions.PERMISSION_NONE)) { bQuotaExceed = false; bEditorAllowed = true; } else { bQuotaExceed = checkQuotaExceeded(metaData); if (bQuotaExceed) { errorCode = ErrorTypes.LicenseErrorActiveConnectionQuotaExceed; } if (((metaData.EditorId == (int)EditorType.Word) && (0 != (permissions & EditorPermissions.PERMISSION_WRITER))) || ((metaData.EditorId == (int)EditorType.Spreadsheet) && (0 != (permissions & EditorPermissions.PERMISSION_SPREADSHEET))) || ((metaData.EditorId == (int)EditorType.Presentation) && (0 != (permissions & EditorPermissions.PERMISSION_PRESENTATION))) ) { bEditorAllowed = true; } else { } } if (bValidDate && bEditorAllowed && !bQuotaExceed && bBuildTimeValid) { oRights.CanSave = true; oRights.CanCoAuthoring = true; oRights.CanExport = true; } return oRights; }
public abstract LicenseRights getRights(LicenseMetaData metaData, out ErrorTypes errorCode);