Example #1
0
        public override LicenseRights getRights(LicenseMetaData metaData, out ErrorTypes errorCode)
        {
            LicenseRights oRights = new LicenseRights(true);

            errorCode = ErrorTypes.NoError;
            return(oRights);
        }
Example #2
0
        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;
        }
Example #3
0
 protected override string getDocumentId(LicenseMetaData metaData)
 {
     return "";
 }
Example #4
0
 public override LicenseRights getRights(LicenseMetaData metaData, out ErrorTypes errorCode)
 {
     LicenseRights oRights = new LicenseRights(true);
         errorCode = ErrorTypes.NoError;
         return oRights;
 }
Example #5
0
        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;
        }
Example #6
0
 protected virtual string getUserId(LicenseMetaData metaData)
 {
     return metaData.UserId;
 }
Example #7
0
 protected virtual string getDocumentId(LicenseMetaData metaData)
 {
     return metaData.DocId;
 }
Example #8
0
        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;
        }
Example #9
0
        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;
        }
Example #10
0
 public abstract LicenseRights getRights(LicenseMetaData metaData, out ErrorTypes errorCode);
Example #11
0
 public abstract LicenseRights getRights(LicenseMetaData metaData, out ErrorTypes errorCode);