Initialer Status

This commit is contained in:
Meik
2026-01-28 12:27:00 +01:00
commit 4112d6019f
35 changed files with 3478 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="Globals">
<ProjectGuid>c3d52a04-2461-4f35-8edf-de7226add677</ProjectGuid>
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
<SccProjectName>SAK</SccProjectName>
<SccProvider>SAK</SccProvider>
<SccAuxPath>SAK</SccAuxPath>
<SccLocalPath>SAK</SccLocalPath>
</PropertyGroup>
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.Default.props" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.props" />
<PropertyGroup />
<Import Project="M42F4SDUUXWorkspace.projitems" Label="Shared" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.CSharp.targets" />
</Project>

View File

@@ -0,0 +1,10 @@
""
{
"FILE_VERSION" = "9237"
"ENLISTMENT_CHOICE" = "NEVER"
"PROJECT_FILE_RELATIVE_PATH" = ""
"NUMBER_OF_EXCLUDED_FILES" = "0"
"ORIGINAL_PROJECT_FILE_PATH" = ""
"NUMBER_OF_NESTED_PROJECTS" = "0"
"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
}

Binary file not shown.

108
M42F4SDUUXWorkspace/F4SD.js Normal file
View File

@@ -0,0 +1,108 @@
(function (w) {
'use strict';
const icons = 'c4it-f4sd-icons';
w.mx = w.mx || {};
w.mx.workspacesConfig = w.mx.workspacesConfig || {};
w.mx.workspacesConfig.modules = w.mx.workspacesConfig.modules || {};
w.mx.workspacesConfig.modules.add = w.mx.workspacesConfig.modules.add || function (name, config) {
w.mx.workspacesConfig.modules[name] = config;
};
w.mx.workspacesConfig.modules.add('mx.C4IT.F4SD', {
name: 'mx.C4IT.F4SD',
config: ['$mdIconProvider', function ($mdIconProvider) {
$mdIconProvider.iconSet(icons, 'workspaces/C4IT_F4SD/F4SDIcons.svg');
w.mx.components = w.mx.components || {};
w.mx.components.Icons = w.mx.components.Icons || [];
w.mx.components.Icons.unshift({
id: icons,
name: 'C4IT F4SD Icons',
icons: [{
SVG: true,
id: `${icons}:icon-f4sd`,
name: 'F4SD Icon',
keywords: ['c4it', 'custom', 'f4sd']
}, {
SVG: true,
id: `${icons}:icon-f4sd-coloured`,
name: 'F4SD Icon (coloured)',
keywords: ['c4it', 'custom', 'f4sd']
}]
});
}]
});
})(window);
(function (w) {
'use strict';
angular.module("mx.C4IT.F4SD")
.controller("mx.C4IT.F4SD.Actions.callF4SD", [
"mx.shell.Config",
"mx.SolutionBuilderAgent.Http",
"mx.shell.NotificationService",
"mx.internationalization",
function (shellConfig, $http, notificationService, i18n) {
const vm = this;
const F4SD_URL_PREFIX = 'f4sdsend://localhost/';
const ERROR_INVALID_RESPONSE = "Invalid response from server";
const ERROR_SERVICE_UNAVAILABLE = "Service not available";
vm.restHost = shellConfig.settings.restHosts.default;
vm.messageF4SDOpened = i18n.get('c4it.f4sd.action-open-called') || 'F4SD wird geöffnet...';
vm.execute = function (conf, para) {
const eoid = conf[0]['Sys-ObjectId'] || conf[0].ID;
// Aktionsparameter abrufen
if (para.controllerParams) {
try {
vm.controllerParams = new URLSearchParams(para.controllerParams);
} catch (error) {
console.error('Fehler beim Parsen der Controller-Parameter:', error);
notificationService.error("Formatfehler in Aktionskonfigurationsparametern");
return;
}
} else {
vm.controllerParams = new URLSearchParams();
}
// F4SD-URL abrufen
const uri = new URL("api/c4itf4sdwebapi/getdirectlinkf4sd/", vm.restHost);
uri.searchParams.append("type", vm.controllerParams.get("type") || para.name);
uri.searchParams.append("eoid", eoid);
$http.get(uri.pathname + uri.search).then((response) => {
try {
const n = response.data || response;
if (typeof n !== 'string') {
console.error('Unerwartetes Datenformat:', n);
notificationService.error(ERROR_INVALID_RESPONSE);
return;
}
if (!n.startsWith(F4SD_URL_PREFIX)) {
notificationService.error(ERROR_SERVICE_UNAVAILABLE);
return;
}
if (vm.controllerParams.get("showNotification") === '1') {
notificationService.info(vm.messageF4SDOpened);
}
window.location.href = n;
} catch (error) {
console.error(`Fehler beim Verarbeiten der Antwort-URL: ${error}`);
notificationService.error(ERROR_SERVICE_UNAVAILABLE);
}
}).catch((error) => {
console.error('HTTP-Anfrage fehlgeschlagen:', error);
notificationService.error(ERROR_SERVICE_UNAVAILABLE);
});
};
}
]);
})(window);

View File

@@ -0,0 +1,21 @@
<svg aria-hidden="true" style="position: absolute; width: 0; height: 0; overflow: hidden;" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<symbol id="icon-f4sd-coloured" viewBox="0 0 56.69 56.69">
<title>F4SD Icon (coloured)</title>
<rect fill="#1d4b99" width="56.69" height="56.69" rx="8.15"/>
<path fill="#fff" d="M46.06,34.3a1.77,1.77,0,0,0-.88,2.34A17.81,17.81,0,0,1,46.7,44a1.77,1.77,0,0,0,3.54,0,21.25,21.25,0,0,0-1.84-8.78A1.77,1.77,0,0,0,46.06,34.3Z"/>
<path fill="#fff" d="M33.66,26.57a1.77,1.77,0,0,0,2.2-1.16,1.82,1.82,0,0,0-1.17-2.24,22.72,22.72,0,0,0-6.34-.92A21.75,21.75,0,0,0,6.63,44a1.77,1.77,0,1,0,3.54,0A18.21,18.21,0,0,1,28.41,25.79,18.64,18.64,0,0,1,33.66,26.57Z"/>
<path fill="#fff" d="M42.17,27.18,25.87,39.3a5.53,5.53,0,0,0-1.78,1.48,5.29,5.29,0,0,0,4.61,8.44,5.17,5.17,0,0,0,3.54-1.81,5.47,5.47,0,0,0,1-1.63L42.7,27.71a.42.42,0,0,0-.28-.53A.36.36,0,0,0,42.17,27.18ZM28.35,46.35a2.27,2.27,0,0,1-2.45-2.08v-.05A2.31,2.31,0,0,1,28,41.74h0a2.37,2.37,0,0,1,2.48,2.16,2.31,2.31,0,0,1-2.15,2.45Z"/>
<path fill="#fff" d="M48.08,3.54H8.61A5,5,0,0,0,3.54,8.36v2.27H53.15V8.36A5,5,0,0,0,48.08,3.54Z"/>
<rect fill="#fff" x="3.65" y="13.75" width="49.43" height="2.48"/>
</symbol>
<symbol id="icon-f4sd" viewBox="0 0 56.69 56.69">
<title>F4SD Icon</title>
<path d="M46.06,34.3a1.77,1.77,0,0,0-.88,2.34A17.81,17.81,0,0,1,46.7,44a1.77,1.77,0,0,0,3.54,0,21.25,21.25,0,0,0-1.84-8.78A1.77,1.77,0,0,0,46.06,34.3Z"/>
<path d="M33.66,26.57a1.77,1.77,0,0,0,2.2-1.16,1.82,1.82,0,0,0-1.17-2.24,22.72,22.72,0,0,0-6.34-.92A21.75,21.75,0,0,0,6.63,44a1.77,1.77,0,1,0,3.54,0A18.21,18.21,0,0,1,28.41,25.79,18.64,18.64,0,0,1,33.66,26.57Z"/>
<path d="M42.17,27.18,25.87,39.3a5.53,5.53,0,0,0-1.78,1.48,5.29,5.29,0,0,0,4.61,8.44,5.17,5.17,0,0,0,3.54-1.81,5.47,5.47,0,0,0,1-1.63L42.7,27.71a.42.42,0,0,0-.28-.53A.36.36,0,0,0,42.17,27.18ZM28.35,46.35a2.27,2.27,0,0,1-2.45-2.08v-.05A2.31,2.31,0,0,1,28,41.74h0a2.37,2.37,0,0,1,2.48,2.16,2.31,2.31,0,0,1-2.15,2.45Z"/>
<path d="M48.08,3.54H8.61A5,5,0,0,0,3.54,8.36v2.27H53.15V8.36A5,5,0,0,0,48.08,3.54Z"/>
<rect x="3.65" y="13.75" width="49.43" height="2.48"/>
</symbol>
</defs>
</svg>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Label="SharedProjectFile_SccProperties">
<SharedProjectFile_ProjectGuid>{5915b31c-bc61-422e-ae50-8f337bf0b998}</SharedProjectFile_ProjectGuid>
<SharedProjectFile_SccProjectName>SAK</SharedProjectFile_SccProjectName>
<SharedProjectFile_SccAuxPath>SAK</SharedProjectFile_SccAuxPath>
<SharedProjectFile_SccLocalPath>SAK</SharedProjectFile_SccLocalPath>
<SharedProjectFile_SccProvider>SAK</SharedProjectFile_SccProvider>
</PropertyGroup>
<PropertyGroup>
<MSBuildAllProjects Condition="'$(MSBuildVersion)' == '' Or '$(MSBuildVersion)' &lt; '16.0'">$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
<HasSharedItems>true</HasSharedItems>
<SharedGUID>c3d52a04-2461-4f35-8edf-de7226add677</SharedGUID>
</PropertyGroup>
<PropertyGroup Label="Configuration">
<Import_RootNamespace>M42F4SDUUXWorkspace</Import_RootNamespace>
</PropertyGroup>
<ItemGroup>
<None Include="$(MSBuildThisFileDirectory)F4SD.js">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="$(MSBuildThisFileDirectory)F4SDIcons.svg">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="$(MSBuildThisFileDirectory)F4SD - M42.zip">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<Content Include="$(MSBuildThisFileDirectory)workspace.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>

View File

@@ -0,0 +1,10 @@
""
{
"FILE_VERSION" = "9237"
"ENLISTMENT_CHOICE" = "NEVER"
"PROJECT_FILE_RELATIVE_PATH" = ""
"NUMBER_OF_EXCLUDED_FILES" = "0"
"ORIGINAL_PROJECT_FILE_PATH" = ""
"NUMBER_OF_NESTED_PROJECTS" = "0"
"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"
}

View File

@@ -0,0 +1,7 @@
{
"description": "C4IT - F4SD - M42 ESM Integration",
"version": "1.0.0",
"resources": [
"F4SD.min.js"
]
}