1
0
mirror of https://github.com/ONLYOFFICE/Mail.git synced 2025-04-18 16:44:01 +03:00

fix Bug 71913

This commit is contained in:
Andrey Savihin 2024-12-03 17:56:43 +03:00
parent 7821208c18
commit 4cae14b5a6

View File

@ -645,50 +645,48 @@ public class ApiHelper
return json;
}
public bool IsModuleAvailable(Guid moduleId)
{
var request = new RestRequest($"settings/security/{moduleId}.json", Method.Get);
var response = Execute(request);
if (response.ResponseStatus != ResponseStatus.Completed ||
(response.StatusCode != HttpStatusCode.Created &&
response.StatusCode != HttpStatusCode.OK))
{
throw new ApiHelperException("IsModuleAvailable failed.", response.StatusCode, response.Content);
}
try
{
var json = JObject.Parse(response.Content);
if (json != null)
{
return Convert.ToBoolean(json["response"]);
}
}
catch (Exception e)
{
_log.ErrorServerEngine(e.Message, e.StackTrace);
}
return false;
}
public bool IsCalendarModuleAvailable()
{
var json = GetPortalSettings();
var jWebItem = json["response"].Children<JObject>()
.FirstOrDefault(
o =>
o["webItemId"] != null &&
o["webItemId"].ToString() == WebItemManager.CalendarProductID.ToString());
var isAvailable = jWebItem != null && jWebItem["enabled"] != null && Convert.ToBoolean(jWebItem["enabled"]);
return isAvailable;
return IsModuleAvailable(WebItemManager.CalendarProductID);
}
public bool IsMailModuleAvailable()
{
var json = GetPortalSettings();
var jWebItem = json["response"].Children<JObject>()
.FirstOrDefault(
o =>
o["webItemId"] != null &&
o["webItemId"].ToString() == WebItemManager.MailProductID.ToString());
var isAvailable = jWebItem != null && jWebItem["enabled"] != null && Convert.ToBoolean(jWebItem["enabled"]);
return isAvailable;
return IsModuleAvailable(WebItemManager.MailProductID);
}
public bool IsCrmModuleAvailable()
{
var json = GetPortalSettings();
var crmId = WebItemManager.CRMProductID.ToString();
var jWebItem = json["response"].Children<JObject>()
.FirstOrDefault(
o =>
o["webItemId"] != null &&
o["webItemId"].ToString() == crmId);
var isAvailable = jWebItem != null && jWebItem["enabled"] != null && Convert.ToBoolean(jWebItem["enabled"]);
return isAvailable;
return IsModuleAvailable(WebItemManager.CRMProductID);
}
}