ASC.AuditTrail: fix

This commit is contained in:
SuhorukovAnton 2020-10-06 15:12:57 +03:00
parent f93e4ee4c1
commit d247223f86
16 changed files with 319 additions and 241 deletions

View File

@ -1,16 +1,25 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */

View File

@ -19,7 +19,6 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using ASC.AuditTrail.Mappers; using ASC.AuditTrail.Mappers;
using System.Linq; using System.Linq;
using ASC.Core.Tenants;
using ASC.Core.Users; using ASC.Core.Users;
using ASC.MessagingSystem; using ASC.MessagingSystem;
using Newtonsoft.Json; using Newtonsoft.Json;
@ -78,30 +77,6 @@ namespace ASC.AuditTrail
} }
return ToAuditEvent(query.ToList()); return ToAuditEvent(query.ToList());
/*
var q = new SqlQuery("audit_events a")
.Select(auditColumns.Select(x => "a." + x).ToArray())
.LeftOuterJoin("core_user u", Exp.EqColumns("a.user_id", "u.id"))
.Select("u.firstname", "u.lastname")
.Where("a.tenant_id", tenant)
.OrderBy("a.date", false);
if (from.HasValue && to.HasValue)
{
q.Where(Exp.Between("a.date", from.Value, to.Value));
}
if (limit.HasValue)
{
q.SetMaxResults(limit.Value);
}
using (var db = new DbManager(dbid))
{
return db.ExecuteList(q)
.Select(ToAuditEvent)
.Where(x => x != null)
.ToList();
}*/
} }
public int GetCount(int tenant, DateTime? from = null, DateTime? to = null) public int GetCount(int tenant, DateTime? from = null, DateTime? to = null)
@ -116,20 +91,6 @@ namespace ASC.AuditTrail
} }
return query.Count(); return query.Count();
/* var q = new SqlQuery("audit_events a")
.SelectCount()
.Where("a.tenant_id", tenant)
.OrderBy("a.date", false);
if (from.HasValue && to.HasValue)
{
q.Where(Exp.Between("a.date", from.Value, to.Value));
}
using (var db = new DbManager(dbid))
{
return db.ExecuteScalar<int>(q);
}*/
} }
private IEnumerable<AuditEvent> ToAuditEvent(List<Query> list) private IEnumerable<AuditEvent> ToAuditEvent(List<Query> list)

View File

@ -1,20 +1,30 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Globalization; using System.Globalization;

View File

@ -1,20 +1,31 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;

View File

@ -1,20 +1,31 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
namespace ASC.AuditTrail namespace ASC.AuditTrail
{ {
public class LoginEvent : BaseEvent public class LoginEvent : BaseEvent

View File

@ -1,32 +1,42 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using ASC.AuditTrail.Mappers; using ASC.AuditTrail.Mappers;
using System.Linq; using System.Linq;
using ASC.Core.Tenants;
using ASC.Core.Users; using ASC.Core.Users;
using Newtonsoft.Json; using Newtonsoft.Json;
using ASC.Core.Common.EF.Context; using ASC.Core.Common.EF.Context;
using ASC.Core.Common.EF.Model; using ASC.Core.Common.EF.Model;
using ASC.Core.Common.EF; using ASC.Core.Common.EF;
using Microsoft.EntityFrameworkCore;
using ASC.Common; using ASC.Common;
using ASC.Common.Logging;
using Microsoft.Extensions.Options;
namespace ASC.AuditTrail.Data namespace ASC.AuditTrail.Data
{ {
@ -34,11 +44,13 @@ namespace ASC.AuditTrail.Data
{ {
private UserFormatter UserFormatter { get; } private UserFormatter UserFormatter { get; }
private AuditTrailContext AuditTrailContext { get; } private AuditTrailContext AuditTrailContext { get; }
private ILog Log { get; }
public LoginEventsRepository(UserFormatter userFormatter, DbContextManager<AuditTrailContext> dbContextManager) public LoginEventsRepository(UserFormatter userFormatter, DbContextManager<AuditTrailContext> dbContextManager, IOptionsMonitor<ILog> options)
{ {
UserFormatter = userFormatter; UserFormatter = userFormatter;
AuditTrailContext = dbContextManager.Value; AuditTrailContext = dbContextManager.Value;
Log = options.CurrentValue;
} }
private class Query private class Query
@ -49,14 +61,6 @@ namespace ASC.AuditTrail.Data
public IEnumerable<LoginEvent> GetLast(int tenant, int chunk) public IEnumerable<LoginEvent> GetLast(int tenant, int chunk)
{ {
/*
var query = BackupContext.Schedules.Join(BackupContext.Tenants,
s => s.TenantId,
t => t.Id,
(s, t) => new { schedule = s, tenant = t })
.Where(q => q.tenant.Status == TenantStatus.Active)
.Select(q => q.schedule);
*/
var query = AuditTrailContext.LoginEvents.Join(AuditTrailContext.User, var query = AuditTrailContext.LoginEvents.Join(AuditTrailContext.User,
l => l.UserId, l => l.UserId,
u => u.Id, u => u.Id,
@ -79,18 +83,6 @@ namespace ASC.AuditTrail.Data
.OrderBy(q => q.LoginEvents.Date); .OrderBy(q => q.LoginEvents.Date);
return ToLoginEvent(query.ToList()); return ToLoginEvent(query.ToList());
/* var q = new SqlQuery("login_events au")
.Select(auditColumns.Select(x => "au." + x).ToArray())
.LeftOuterJoin("core_user u", Exp.EqColumns("au.user_id", "u.id"))
.Select("u.firstname", "u.lastname")
.Where("au.tenant_id", tenant)
.Where(Exp.Between("au.date", from, to))
.OrderBy("au.date", false);
using (var db = new DbManager(auditDbId))
{
return db.ExecuteList(q).Select(ToLoginEvent).Where(x => x != null);
}*/
} }
public int GetCount(int tenant, DateTime? from = null, DateTime? to = null) public int GetCount(int tenant, DateTime? from = null, DateTime? to = null)
@ -104,20 +96,6 @@ namespace ASC.AuditTrail.Data
} }
return query.Count(); return query.Count();
/*
var q = new SqlQuery("login_events")
.SelectCount()
.Where("tenant_id", tenant);
if (from.HasValue && to.HasValue)
{
q.Where(Exp.Between("date", from.Value, to.Value));
}
using (var db = new DbManager(auditDbId))
{
return db.ExecuteScalar<int>(q);
}*/
} }
private IEnumerable<LoginEvent> ToLoginEvent(List<Query> list) private IEnumerable<LoginEvent> ToLoginEvent(List<Query> list)
@ -164,7 +142,7 @@ namespace ASC.AuditTrail.Data
} }
catch(Exception) catch(Exception)
{ {
//log.Error("Error while forming event from db: " + ex); Log.Error("Error while forming event from db: " + ex);
} }
}); });
return loginsEvents; return loginsEvents;

View File

@ -1,16 +1,25 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
@ -19,18 +28,22 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using ASC.MessagingSystem; using ASC.MessagingSystem;
using System.Linq; using System.Linq;
using Microsoft.Extensions.Options;
using ASC.Common.Logging;
namespace ASC.AuditTrail.Mappers namespace ASC.AuditTrail.Mappers
{ {
public class AuditActionMapper public class AuditActionMapper
{ {
private static readonly Dictionary<MessageAction, MessageMaps> actions; private Dictionary<MessageAction, MessageMaps> Actions { get; }
private ILog Log { get; }
static AuditActionMapper() AuditActionMapper(IOptionsMonitor<ILog> options)
{ {
actions = new Dictionary<MessageAction, MessageMaps>(); Actions = new Dictionary<MessageAction, MessageMaps>();
Log = options.CurrentValue;
actions = actions Actions = Actions
.Union(LoginActionsMapper.GetMaps()) .Union(LoginActionsMapper.GetMaps())
.Union(ProjectsActionsMapper.GetMaps()) .Union(ProjectsActionsMapper.GetMaps())
.Union(CrmActionMapper.GetMaps()) .Union(CrmActionMapper.GetMaps())
@ -41,18 +54,18 @@ namespace ASC.AuditTrail.Mappers
.ToDictionary(x => x.Key, x => x.Value); .ToDictionary(x => x.Key, x => x.Value);
} }
public static string GetActionText(AuditEvent evt) public string GetActionText(AuditEvent evt)
{ {
var action = (MessageAction)evt.Action; var action = (MessageAction)evt.Action;
if (!actions.ContainsKey(action)) if (!Actions.ContainsKey(action))
{ {
//log.Error(string.Format("There is no action text for \"{0}\" type of event", action)); Log.Error(string.Format("There is no action text for \"{0}\" type of event", action));
return string.Empty; return string.Empty;
} }
try try
{ {
var actionText = actions[(MessageAction)evt.Action].GetActionText(); var actionText = Actions[(MessageAction)evt.Action].GetActionText();
if (evt.Description == null || !evt.Description.Any()) return actionText; if (evt.Description == null || !evt.Description.Any()) return actionText;
@ -70,10 +83,10 @@ namespace ASC.AuditTrail.Mappers
} }
} }
public static string GetActionText(LoginEvent evt) public string GetActionText(LoginEvent evt)
{ {
var action = (MessageAction)evt.Action; var action = (MessageAction)evt.Action;
if (!actions.ContainsKey(action)) if (!Actions.ContainsKey(action))
{ {
//log.Error(string.Format("There is no action text for \"{0}\" type of event", action)); //log.Error(string.Format("There is no action text for \"{0}\" type of event", action));
return string.Empty; return string.Empty;
@ -81,7 +94,7 @@ namespace ASC.AuditTrail.Mappers
try try
{ {
var actionText = actions[(MessageAction)evt.Action].GetActionText(); var actionText = Actions[(MessageAction)evt.Action].GetActionText();
if (evt.Description == null || !evt.Description.Any()) return actionText; if (evt.Description == null || !evt.Description.Any()) return actionText;
@ -98,31 +111,31 @@ namespace ASC.AuditTrail.Mappers
} }
} }
public static string GetActionTypeText(AuditEvent evt) public string GetActionTypeText(AuditEvent evt)
{ {
var action = (MessageAction)evt.Action; var action = (MessageAction)evt.Action;
return !actions.ContainsKey(action) return !Actions.ContainsKey(action)
? string.Empty ? string.Empty
: actions[(MessageAction)evt.Action].GetActionTypeText(); : Actions[(MessageAction)evt.Action].GetActionTypeText();
} }
public static string GetProductText(AuditEvent evt) public string GetProductText(AuditEvent evt)
{ {
var action = (MessageAction)evt.Action; var action = (MessageAction)evt.Action;
return !actions.ContainsKey(action) return !Actions.ContainsKey(action)
? string.Empty ? string.Empty
: actions[(MessageAction)evt.Action].GetProduct(); : Actions[(MessageAction)evt.Action].GetProduct();
} }
public static string GetModuleText(AuditEvent evt) public string GetModuleText(AuditEvent evt)
{ {
var action = (MessageAction)evt.Action; var action = (MessageAction)evt.Action;
return !actions.ContainsKey(action) return !Actions.ContainsKey(action)
? string.Empty ? string.Empty
: actions[(MessageAction)evt.Action].GetModule(); : Actions[(MessageAction)evt.Action].GetModule();
} }
private static string ToLimitedText(string text) private string ToLimitedText(string text)
{ {
if (text == null) return null; if (text == null) return null;
return text.Length < 50 ? text : string.Format("{0}...", text.Substring(0, 47)); return text.Length < 50 ? text : string.Format("{0}...", text.Substring(0, 47));

View File

@ -1,20 +1,31 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
using System.Collections.Generic; using System.Collections.Generic;
using ASC.MessagingSystem; using ASC.MessagingSystem;

View File

@ -1,20 +1,30 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
using System.Collections.Generic; using System.Collections.Generic;
using ASC.MessagingSystem; using ASC.MessagingSystem;

View File

@ -1,20 +1,31 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
using System.Collections.Generic; using System.Collections.Generic;
using ASC.MessagingSystem; using ASC.MessagingSystem;

View File

@ -1,20 +1,33 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* /*
* Licensed under the Apache License, Version 2.0 (the "License"); *
* you may not use this file except in compliance with the License. * (c) Copyright Ascensio System Limited 2010-2020
* You may obtain a copy of the License at *
* http://www.apache.org/licenses/LICENSE-2.0 * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* Unless required by applicable law or agreed to in writing, software * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* distributed under the License is distributed on an "AS IS" BASIS, * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* See the License for the specific language governing permissions and *
* limitations under the License. * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
*
* You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
namespace ASC.AuditTrail.Mappers namespace ASC.AuditTrail.Mappers
{ {
internal class MessageMaps internal class MessageMaps

View File

@ -1,20 +1,31 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
using System.Collections.Generic; using System.Collections.Generic;
using ASC.MessagingSystem; using ASC.MessagingSystem;

View File

@ -1,20 +1,31 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
using System.Collections.Generic; using System.Collections.Generic;
using ASC.MessagingSystem; using ASC.MessagingSystem;

View File

@ -1,20 +1,30 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
using System.Collections.Generic; using System.Collections.Generic;
using ASC.MessagingSystem; using ASC.MessagingSystem;

View File

@ -1,20 +1,30 @@
/* /*
* *
* (c) Copyright Ascensio System Limited 2010-2020 * (c) Copyright Ascensio System Limited 2010-2020
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* you may not use this file except in compliance with the License. * General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* You may obtain a copy of the License at * In accordance with Section 7(a) of the GNU GPL its Section 15 shall be amended to the effect that
* http://www.apache.org/licenses/LICENSE-2.0 * Ascensio System SIA expressly excludes the warranty of non-infringement of any third-party rights.
* Unless required by applicable law or agreed to in writing, software *
* distributed under the License is distributed on an "AS IS" BASIS, * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * FITNESS FOR A PARTICULAR PURPOSE. For more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
* See the License for the specific language governing permissions and *
* limitations under the License. * You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7 § 3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7 § 3(e) we decline to grant you any rights under trademark law for use of our trademarks.
* *
*/ */
using System.Collections.Generic; using System.Collections.Generic;
using ASC.MessagingSystem; using ASC.MessagingSystem;

View File

@ -1,8 +1,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Security;
using System.Threading.Tasks;
using ASC.Api.Security; using ASC.Api.Security;
using ASC.AuditTrail; using ASC.AuditTrail;