Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release/2.7.6.1 #2683

Merged
merged 60 commits into from
Oct 25, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
caeb8d0
#2676 Fixed saving a new graphical view when a validation error occurs
Limraj Aug 30, 2023
c92c9d7
#2677 Fixed longer Graphical View save time - removed cache view_by_x…
Limraj Aug 30, 2023
0ac8ae2
#2674 Corrected configuration script security context - Less restrict…
Limraj Aug 30, 2023
3d10bb5
#2673 Fixed unavailability of acknowledge for active event - hidden a…
Limraj Aug 30, 2023
797270a
#2675 Fixed longer time startup application - corrected limit cache i…
Limraj Aug 31, 2023
9afcb81
#2677 Fixed longer Graphical View save time - revert DataPointDAO
Limraj Aug 31, 2023
a724caa
#2675 Fixed longer time startup application - removed deprecated meth…
Limraj Aug 31, 2023
eb3f7f4
#2675 Fixed longer time startup application - rename class PointEvent…
Limraj Aug 31, 2023
b3adaa0
Merge pull request #2678 from SCADA-LTS/fix/#2676_Fixed_saving_a_new_…
Limraj Aug 31, 2023
16037d1
Merge pull request #2679 from SCADA-LTS/fix/#2677_Fixed_longer_Graphi…
Limraj Aug 31, 2023
e35b3d6
Merge pull request #2680 from SCADA-LTS/feature/#2674_Corrected_confi…
Limraj Aug 31, 2023
496e346
Merge pull request #2681 from SCADA-LTS/fix/#2673_Fixed_unavailabilit…
Limraj Aug 31, 2023
98a04d0
Merge pull request #2682 from SCADA-LTS/fix/#2675_Fixed_longer_time_s…
Limraj Aug 31, 2023
4f9a04e
#2675 Fixed longer time startup application - change level logging er…
Limraj Aug 31, 2023
abfb085
#2684 error in the report when writing message in the alarm - correct…
Limraj Sep 4, 2023
0873baa
Merge pull request #2685 from SCADA-LTS/fix/#2684_error_in_the_report…
Limraj Sep 4, 2023
f16b925
removed duplicate patterns: /userCommentExport/**, /dwr/call/plaincal…
Limraj Sep 4, 2023
5cc1fcf
#2686 Fixed SandboxWrapFactory for executing scripts by Rhino - set t…
Limraj Sep 5, 2023
0750f08
#2686 Fixed SandboxWrapFactory for executing scripts by Rhino - corre…
Limraj Sep 5, 2023
3731350
Merge pull request #2691 from SCADA-LTS/fix/#2686_Fixed_SandboxWrapFa…
Limraj Sep 5, 2023
759bdad
added org.scada_lts.web.mvc.api to config in log4j2.xml
Limraj Sep 5, 2023
b8dd280
#2686 Fixed SandboxWrapFactory for executing scripts by Rhino - rever…
Limraj Sep 5, 2023
f72f2f6
#2686 Fixed SandboxWrapFactory for executing scripts by Rhino - rever…
Limraj Sep 5, 2023
e1b1962
#2686 Fixed SandboxWrapFactory for executing scripts by Rhino - remov…
Limraj Sep 5, 2023
9d6a5c5
Merge pull request #2692 from SCADA-LTS/fix/#2686_Fixed_SandboxWrapFa…
Limraj Sep 5, 2023
01c5369
#2694 Work-items API extension -
Limraj Sep 11, 2023
8e42f44
Merge pull request #2697 from SCADA-LTS/feature/#2694_Work_items_API_…
Limraj Sep 11, 2023
3fb887a
#2698 Corrected cache pending events -
Limraj Sep 14, 2023
5da40ed
Merge pull request #2700 from SCADA-LTS/fix/#2698_Corrected_cache_pen…
Limraj Sep 14, 2023
36aa86d
#2694 Work-items API extension
Limraj Sep 15, 2023
66201be
#2694 Work-items API extension
Limraj Sep 15, 2023
86a781e
#2694 Work-items API extension - corrected urls WorkItemInfoAPI.yaml
Limraj Sep 19, 2023
4d8d1fc
#2706 Fixed save Graphical View with Chart Comparator:
Limraj Sep 20, 2023
41bbfff
#2706 Fixed save Graphical View with Chart Comparator - Simplificatio…
Limraj Sep 21, 2023
a47546b
#2706 Fixed save Graphical View with Chart Comparator - change log on…
Limraj Sep 21, 2023
7cf0af4
#2706 Fixed save Graphical View with Chart Comparator - removed ';'
Limraj Sep 21, 2023
9c39947
Merge pull request #2707 from SCADA-LTS/fix/#2706_Fixed_save_Graphica…
Limraj Sep 21, 2023
33e0905
#2706 Fixed save Graphical View with Chart Comparator - default order…
Limraj Sep 21, 2023
72fc584
#2715 Fixed DNP3 Serial data source causing SystemException
Limraj Sep 27, 2023
256c0f7
Merge pull request #2716 from SCADA-LTS/fix/#2715_Fixed_DNP3_Serial_d…
Limraj Sep 28, 2023
04f6091
#2714 Fixed Set point detector in No change detector - active and ina…
Limraj Oct 2, 2023
21831f3
#2714 Fixed Set point detector in No change detector - force save dat…
Limraj Oct 6, 2023
55067e1
#2719 Fixed migration from ScadaBR -
Limraj Oct 6, 2023
58bfc27
#2719 Fixed migration from ScadaBR - revert watchList.jsp
Limraj Oct 6, 2023
6df27ee
#2714 Fixed Set point detector in No change detector - corrected Data…
Limraj Oct 6, 2023
c89ea2c
#2719 fixed migration from ScadaBR - revert V1__BaseVersion.java
Limraj Oct 12, 2023
1baf0f3
#2719 fixed migration from ScadaBR - revert V1__BaseVersion.java 2
Limraj Oct 12, 2023
7a47423
Merge pull request #2720 from SCADA-LTS/feature/#2719_Fixed_migration…
Limraj Oct 12, 2023
0153188
Merge pull request #2717 from SCADA-LTS/fix/#2714_Fixed_Set_point_det…
Limraj Oct 12, 2023
faa34dc
#2724 DataSource Create Button/Option not show - getConfigurationDesc…
Limraj Oct 16, 2023
52364ab
#2724 DataSource Create Button/Option not show - private getDnp3DataT…
Limraj Oct 16, 2023
c51a9f7
Merge pull request #2725 from SCADA-LTS/fix/#2724_DataSource_Create_B…
Limraj Oct 17, 2023
62b1958
#2728 Fixed Import project system exception -
Limraj Oct 19, 2023
efbbe2d
Merge pull request #2729 from SCADA-LTS/fix/#2728_Fixed_Import_projec…
Limraj Oct 19, 2023
a893155
#2694 Work-items API extension :
Limraj Oct 20, 2023
bc98a13
#2694 Work-items API extension : corrected
Limraj Oct 20, 2023
7549464
#2694 Work-items API extension
Limraj Oct 21, 2023
b1dee9d
#2694 Work-items API extension
Limraj Oct 24, 2023
c0ef951
Merge pull request #2732 from SCADA-LTS/feature/#2694_Work_items_API_…
Limraj Oct 24, 2023
4bc25b7
#2694 Work-items API extension - revert default update event type on …
Limraj Oct 25, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 21 additions & 1 deletion WebContent/WEB-INF/applicationContext.xml
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,7 @@
<constructor-arg value="org.scada_lts.quartz.ResetCacheHighestAlarmLevel" type="java.lang.Class"/>
</bean>

<bean id="resetHighestAlarmLevelScheduler" class="org.scada_lts.quartz.CronTriggerScheduler">
<bean id="resetHighestAlarmLevelScheduler" class="org.scada_lts.quartz.CronTriggerScheduler" destroy-method="stop">
<constructor-arg ref="schedulerFactory"/>
<constructor-arg ref="resetHighestAlarmLevelTrigger"/>
<constructor-arg ref="resetHighestAlarmLevelJob"/>
Expand Down Expand Up @@ -244,4 +244,24 @@
<constructor-arg ref="pointEventDetectorCache"/>
</bean>
<!-- -->

<bean id="loggedUsers" class="org.scada_lts.login.LoggedUsers" />

<bean id="everySecondTrigger" class="org.quartz.CronTrigger">
<constructor-arg value="Quartz - trigger-EverySecondTrigger"/>
<constructor-arg value="DEFAULT"/>
<constructor-arg value="0/1 * * ? * *"/>
</bean>

<bean id="everySecondJobDetail" class="org.quartz.JobDetail">
<constructor-arg value="Quartz - job-EverySecond"/>
<constructor-arg value="DEFAULT"/>
<constructor-arg value="org.scada_lts.quartz.EverySecond" type="java.lang.Class"/>
</bean>

<bean id="everySecondScheduler" class="org.scada_lts.quartz.CronTriggerScheduler" destroy-method="stop">
<constructor-arg ref="schedulerFactory"/>
<constructor-arg ref="everySecondTrigger"/>
<constructor-arg ref="everySecondJobDetail"/>
</bean>
</beans>
54 changes: 54 additions & 0 deletions WebContent/WEB-INF/jsp/systemSettings.jsp
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,15 @@

$set("<c:out value="<%= SystemSettingsDAO.EVENT_PENDING_LIMIT %>"/>", settings.<c:out value="<%= SystemSettingsDAO.EVENT_PENDING_LIMIT %>"/>);
$set("<c:out value="<%= SystemSettingsDAO.EVENT_PENDING_CACHE_ENABLED %>"/>", settings.<c:out value="<%= SystemSettingsDAO.EVENT_PENDING_CACHE_ENABLED %>"/>);

$set("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ENABLED %>"/>", settings.<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ENABLED %>"/>);
$set("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_ENABLED %>"/>", settings.<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_ENABLED %>"/>);
$set("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_LIMIT %>"/>", settings.<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_LIMIT %>"/>);
$set("<c:out value="<%= SystemSettingsDAO.THREADS_NAME_ADDITIONAL_LENGTH %>"/>", settings.<c:out value="<%= SystemSettingsDAO.THREADS_NAME_ADDITIONAL_LENGTH %>"/>);

setDisabled($("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_ENABLED %>"/>"), !settings.<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ENABLED %>"/>);
setDisabled($("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_LIMIT %>"/>"), !settings.<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ENABLED %>"/> || !settings.<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_ENABLED %>"/>);

var sel = $("<c:out value="<%= SystemSettingsDAO.LANGUAGE %>"/>");
<c:forEach items="${availableLanguages}" var="lang">
sel.options[sel.options.length] = new Option("${lang.value}", "${lang.key}");
Expand Down Expand Up @@ -264,6 +273,23 @@
setDisabled($("<c:out value="<%= SystemSettingsDAO.HTTP_CLIENT_PROXY_USERNAME %>"/>"), !proxy);
setDisabled($("<c:out value="<%= SystemSettingsDAO.HTTP_CLIENT_PROXY_PASSWORD %>"/>"), !proxy);
}

function workItemsReportingEnabledChange() {
var workItemsReportingEnabled = $("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ENABLED %>"/>").checked;
if(!workItemsReportingEnabled) {
$set("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_ENABLED %>"/>", false);
workItemsReportingItemsPerSecondEnabledChange();
}
setDisabled($("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_ENABLED %>"/>"), !workItemsReportingEnabled);
}

function workItemsReportingItemsPerSecondEnabledChange() {
var workItemsReportingItemsPerSecondEnabled = $("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_ENABLED %>"/>").checked;
if(!workItemsReportingItemsPerSecondEnabled) {
$set("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_LIMIT %>"/>", 0);
}
setDisabled($("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_LIMIT %>"/>"), !workItemsReportingItemsPerSecondEnabled);
}

function saveMiscSettings() {
SystemSettingsDwr.saveMiscSettings(
Expand All @@ -273,6 +299,10 @@
$get("<c:out value="<%= SystemSettingsDAO.VIEW_HIDE_SHORTCUT_DISABLE_FULL_SCREEN %>"/>"),
$get("<c:out value="<%= SystemSettingsDAO.EVENT_PENDING_LIMIT %>"/>"),
$get("<c:out value="<%= SystemSettingsDAO.EVENT_PENDING_CACHE_ENABLED %>"/>"),
$get("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ENABLED %>"/>"),
$get("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_ENABLED %>"/>"),
$get("<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_LIMIT %>"/>"),
$get("<c:out value="<%= SystemSettingsDAO.THREADS_NAME_ADDITIONAL_LENGTH %>"/>"),
function(response) {
stopImageFader("saveMiscSettingsImg");
if (response.hasMessages)
Expand Down Expand Up @@ -888,6 +918,30 @@
<input id="<c:out value="<%= SystemSettingsDAO.EVENT_PENDING_LIMIT %>"/>" type="number" class="formShort"/>
</td>
</tr>
<tr>
<td class="formLabelRequired"><fmt:message key="systemsettings.workitems.reporting.enabled"/></td>
<td class="formField">
<input id="<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ENABLED %>"/>" type="checkbox" onchange="workItemsReportingEnabledChange()"/>
</td>
</tr>
<tr>
<td class="formLabelRequired"><fmt:message key="systemsettings.workitems.reporting.itemspersecond.enabled"/></td>
<td class="formField">
<input id="<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_ENABLED %>"/>" type="checkbox" onchange="workItemsReportingItemsPerSecondEnabledChange()"/>
</td>
</tr>
<tr>
<td class="formLabelRequired"><fmt:message key="systemsettings.workitems.reporting.itemspersecond.limit"/></td>
<td class="formField">
<input id="<c:out value="<%= SystemSettingsDAO.WORK_ITEMS_REPORTING_ITEMS_PER_SECOND_LIMIT %>"/>" type="number" class="formShort"/>
</td>
</tr>
<tr>
<td class="formLabelRequired"><fmt:message key="systemsettings.threads.name.additional.length"/></td>
<td class="formField">
<input id="<c:out value="<%= SystemSettingsDAO.THREADS_NAME_ADDITIONAL_LENGTH %>"/>" type="number" class="formShort"/>
</td>
</tr>
<tr>
<td colspan="2" id="miscMessage" class="formError"></td>
</tr>
Expand Down
46 changes: 44 additions & 2 deletions WebContent/WEB-INF/spring-security.xml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,50 @@
<session-management session-fixation-protection="none"/>
</http>

<http use-expressions="true" disable-url-rewriting="true" pattern="/api/secure/work-items/**"
authentication-manager-ref="authenticationManager" entry-point-ref="basicAuthenticationEntryPoint">
<headers>
<cache-control disabled="true"/>
<content-type-options disabled="true"/>
<hsts/>
<frame-options policy="SAMEORIGIN"/>
<xss-protection/>
<header ref="headersFromSystemSettingsWriter"/>
</headers>
<csrf disabled="true"/>

<!-- Only Admin -->
<intercept-url pattern="/**" access="hasRole('ROLE_ADMIN')" method="DELETE" requires-channel="https"/>

<!-- Other -->
<intercept-url pattern="/**" access="hasAnyRole('ROLE_ADMIN')" requires-channel="https"/>

<custom-filter position="BASIC_AUTH_FILTER" ref="basicAuthFilter"/>
<session-management session-fixation-protection="none"/>
</http>

<http use-expressions="true" disable-url-rewriting="true" pattern="/api/secure/threads/**"
authentication-manager-ref="authenticationManager" entry-point-ref="basicAuthenticationEntryPoint">
<headers>
<cache-control disabled="true"/>
<content-type-options disabled="true"/>
<hsts/>
<frame-options policy="SAMEORIGIN"/>
<xss-protection/>
<header ref="headersFromSystemSettingsWriter"/>
</headers>
<csrf disabled="true"/>

<!-- Only Admin -->
<intercept-url pattern="/**" access="hasRole('ROLE_ADMIN')" method="DELETE" requires-channel="https"/>

<!-- Other -->
<intercept-url pattern="/**" access="hasAnyRole('ROLE_ADMIN')" requires-channel="https"/>

<custom-filter position="BASIC_AUTH_FILTER" ref="basicAuthFilter"/>
<session-management session-fixation-protection="none"/>
</http>

<http use-expressions="true" disable-url-rewriting="true"
authentication-manager-ref="authenticationManager">
<headers>
Expand Down Expand Up @@ -190,7 +234,6 @@
<intercept-url pattern="/export/**" access="hasAnyRole('ROLE_ADMIN', 'ROLE_USER')" />
<intercept-url pattern="/eventExport/**" access="hasAnyRole('ROLE_ADMIN', 'ROLE_USER')" />
<intercept-url pattern="/userCommentExport/**" access="hasAnyRole('ROLE_ADMIN', 'ROLE_USER')" />
<intercept-url pattern="/userCommentExport/**" access="hasAnyRole('ROLE_ADMIN', 'ROLE_USER')" />
<intercept-url pattern="/reportImageChart/**" access="hasAnyRole('ROLE_ADMIN', 'ROLE_USER')" />
<intercept-url pattern="/reportChart.shtm" access="@guard.hasReportInstanceReadPermission(request,false,'instanceId')" />
<intercept-url pattern="/reports.shtm" access="hasAnyRole('ROLE_ADMIN', 'ROLE_USER')" />
Expand Down Expand Up @@ -225,7 +268,6 @@
<!-- DataSources and DataPoints -->
<intercept-url pattern="/dwr/call/plaincall/DataSourceEditDwr.*.dwr" access="hasRole('ROLE_ADMIN')" />
<intercept-url pattern="/dwr/call/plaincall/DataPointEditDwr.*.dwr" access="hasRole('ROLE_ADMIN')" />
<intercept-url pattern="/dwr/call/plaincall/DataPointDetailsDwr.*.dwr" access="hasRole('ROLE_ADMIN')" />
<intercept-url pattern="/data_source_edit.shtm" access="hasRole('ROLE_ADMIN')" />
<intercept-url pattern="/data_sources.shtm" access="hasRole('ROLE_ADMIN')" />

Expand Down
2 changes: 1 addition & 1 deletion WebContent/WEB-INF/tags/alarmAck.tag
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
<c:choose>
<c:when test="${event.acknowledged}"><tag:img png="tick_off" title="events.acknowledged" style="display:inline;"/></c:when>
<c:otherwise>
<tag:img png="tick" id="ackImg${event.id}" onclick="ackEvent(${event.id})" title="events.acknowledge" style="display:inline;"/>
<c:if test="${not event.active}"><tag:img png="tick" id="ackImg${event.id}" onclick="ackEvent(${event.id})" title="events.acknowledge" style="display:inline;"/></c:if>
<c:choose>
<c:when test="${event.silenced}">
<tag:img png="sound_mute" id="silenceImg${event.id}" onclick="toggleSilence(${event.id})" title="events.unsilence" style="display:inline;"/>
Expand Down
7 changes: 7 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ plugins {
id 'java'
}

compileJava.options.encoding = 'UTF-8'
compileTestJava.options.encoding = 'UTF-8'

sourceCompatibility = 1.11
targetCompatibility = 1.11
Expand Down Expand Up @@ -197,5 +199,10 @@ test {
includeTestsMatching "org.scada_lts.dao.IsEventDetectorXidUniqueTest"
includeTestsMatching "com.serotonin.mango.view.export.CsvWriterTest"
includeTestsMatching "com.serotonin.mango.util.EmailValidatorTest"
includeTestsMatching "com.serotonin.mango.vo.LoggedUserTestsSuite"
includeTestsMatching "org.scada_lts.utils.ThreadUtilsTest"
includeTestsMatching "com.serotonin.mango.rt.maint.work.CreateWorkItemToStringTest"
includeTestsMatching "com.serotonin.util.SerializationHelperTest"
includeTestsMatching "org.scada_lts.web.mvc.api.json.WorkItemInfoListTest"
}
}
Loading
Loading