This commit is contained in:
2023-11-23 10:07:00 +01:00
parent df489932df
commit d5e084ac6b
12 changed files with 94 additions and 408 deletions

View File

@@ -181,7 +181,9 @@ Public Class ClassInit
SQL_FULLTEXT = KONFIG_DT.Rows(0).Item("SQL_FULLTEXT")
WMDriveLetter = KONFIG_DT.Rows(0).Item("WM_LAUFWERKBUCHSTABE")
WMPATH_PREFIX = KONFIG_DT.Rows(0).Item("WMPATH_PREFIX")
If Not WMPATH_PREFIX.ToUpper.StartsWith("\\WINDREAM\OBJECTS") Then
If Not WMPATH_PREFIX.ToUpper.StartsWith(constWMOBJECTS) Then
SHARE_DRIVE_ACTIVE = True
LOGGER.Info($"WM SHARE_DRIVE [{WMPATH_PREFIX}] via TBPMO_KONFIGURATION is active")
End If
@@ -254,6 +256,20 @@ Public Class ClassInit
ClassHelper.InsertEssential_Log(0, "USER-ID", String.Format("User '{0}' not listed in Userconfiguration", USER_USERNAME))
Return False
Else
DTTBPMO_SERVICE_RIGHT_CONFIG = MYDB_ECM.GetDatatable("SELECT * FROM TBPMO_SERVICE_RIGHT_CONFIG WHERE GUID = 1")
WM_DOMAIN = DTTBPMO_SERVICE_RIGHT_CONFIG.Rows(0).Item("AD_DOMAIN")
WM_USER = DTTBPMO_SERVICE_RIGHT_CONFIG.Rows(0).Item("AD_USER")
WM_SERVER = DTTBPMO_SERVICE_RIGHT_CONFIG.Rows(0).Item("AD_SERVER")
Dim PWplainText As String
Dim wrapper As New ClassEncryption("!35452didalog=")
' DecryptData throws if the wrong password is used.
Try
PWplainText = wrapper.DecryptData(DTTBPMO_SERVICE_RIGHT_CONFIG.Rows(0).Item("AD_USER_PW"))
Catch ex As Exception
LOGGER.Warn("The Userpassword could not be decrypted")
PWplainText = ""
End Try
WM_USER_PW = PWplainText
USER_GUID = USER_DT.Rows(0).Item("USER_ID")
Try
@@ -261,6 +277,7 @@ Public Class ClassInit
Catch ex As Exception
USERID_FK_INT_ECM = 0
End Try
USER_IS_ADMIN = USER_DT.Rows(0).Item("IS_ADMIN")
USER_LANGUAGE = USER_DT.Rows(0).Item("USER_LANGUAGE")
clsCURRENT.USER_LANGUAGE = USER_LANGUAGE
USER_DATE_FORMAT = USER_DT.Rows(0).Item("USER_DATE_FORMAT")
@@ -276,13 +293,16 @@ Public Class ClassInit
If oMode.StartsWith("WMMODE") Then
WorkMode_WMMODE = oMode.Replace("WMMODE=", "")
LOGGER.Debug($"oWorkmode WMMODE = [{WorkMode_WMMODE}]")
If WorkMode_WMMODE = "READ" Then
WM_READ_ONLY = True
LOGGER.Info("WINDREAM IS CONFIGURED READ ONLY FOR USER!")
End If
ElseIf oMode.StartsWith("WM_PRAEFIX") Then
WMPATH_PREFIX = oMode.Replace("WM_PRAEFIX=", "")
If Not WMPATH_PREFIX.ToUpper.StartsWith("\\WINDREAM\OBJECTS") Then
WMPATH_via_WMA = True
LOGGER.Debug($"oWorkmode WM_PRAEFIX = [{WMPATH_PREFIX}]")
If Not WMPATH_PREFIX.ToUpper.StartsWith(constWMOBJECTS) Then
SHARE_DRIVE_ACTIVE = True
LOGGER.Info($"WM SHARE_DRIVE [{WMPATH_PREFIX}] via WORKING_MODE is active")
End If
@@ -297,6 +317,10 @@ Public Class ClassInit
LOGGER.Info("WINDREAM IS CONFIGURED READ ONLY AS No Workmode was configured and Sharedrive is active!")
WM_READ_ONLY = True
End If
If USER_IS_ADMIN And SHARE_DRIVE_ACTIVE = True Then
LOGGER.Info($"User configured as an admin, but SHAREDRIVE ACTIVE - So WM_READ_ONLY = False!")
WM_READ_ONLY = False
End If
End If
@@ -353,7 +377,7 @@ Public Class ClassInit
oFNSQL = String.Format("INSERT INTO TBDD_USER_MODULE_LOG_IN (USER_ID,CLIENT_ID,MODULE,VERSION_CLIENT,MACHINE_NAME,CONNECTION_STRING) VALUES ({0},{1},'Record-Organizer','{2}','{3}','{4}')", USER_GUID, CLIENT_SELECTED, My.Application.Info.Version.ToString, Environment.MachineName, ConStringMain)
MYDB_ECM.ExecuteNonQuery(oFNSQL)
USER_IS_ADMIN = USER_DT.Rows(0).Item("IS_ADMIN") 'vorher RECORD_ADMIN
If USER_IS_ADMIN = True Then
If ESC_Hidden = True Then
frmLoginUserSelect.ShowDialog()
@@ -364,12 +388,18 @@ Public Class ClassInit
End If
End If
Try
If WM_READ_ONLY = False Then
Try
WMMOD = New DigitalData.Modules.Windream.Windream(LOGCONFIG, False, WMDriveLetter, WMPATH_PREFIX, True, "", "", "", "")
LOGGER.Debug($"Connecting to windream-Server via DigitalData.Modules.Windream.Windream...")
WMMOD = New DigitalData.Modules.Windream.Windream(LOGCONFIG, False, WMDriveLetter, WMPATH_PREFIX, True, WM_SERVER, WM_USER, WM_USER_PW, WM_DOMAIN)
If IsNothing(WMMOD) Then
MsgBox("Could not connect to windream! Check Your configuration", MsgBoxStyle.Exclamation)
Else
LOGGER.Debug($"..Successfully connected to Modules.Windream!")
End If
Catch ex As Exception
LOGGER.Error(ex)