Projekte hinzugefügt:

- BeWoLauncher.csproj
- SharedLauncher.csproj
- LauncherHost.csproj
This commit is contained in:
rene
2021-11-22 15:50:34 +01:00
parent 8b1c6e1838
commit 4fb9c98ee1
193 changed files with 5853 additions and 0 deletions

6
.gitignore vendored
View File

@@ -565,3 +565,9 @@ obj
/BeWoAllReports.sln.BASE.sln
/BeWoAllReports.sln.LOCAL.sln
/BeWoAllReports.sln.REMOTE.sln
/LauncherHost/bin
/LauncherHost/obj
/SharedLauncher/bin
/SharedLauncher/obj
/BeWoLauncher/bin
/BeWoLauncher/obj

46
BeWoLauncher/App.config Normal file
View File

@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BeWoBasicEndpoint" closeTimeout="00:05:00" openTimeout="00:05:00" receiveTimeout="00:10:00" sendTimeout="00:05:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true" messageEncoding="Text">
<readerQuotas maxDepth="32" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None" />
<!-- mode="Transport" für echten Server und "None" sonst-->
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWoLauncher.ServiceProxy.ILauncherService" name="LauncherServiceEndpoint" />
</client>
<behaviors>
<endpointBehaviors>
<behavior name="BeWoServiceBehavior">
<dataContractSerializer maxItemsInObjectGraph="2147483647" />
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
<appSettings>
<add key="AutoLogin" value="true" />
<add key="ShowUpdateDelay" value="true" />
<add key="ForceUpdate" value="true" />
<add key="UseUpdater" value="true"/>
<add key="ClientSettingsProvider.ServiceUri" value="" />
</appSettings>
<system.web>
<membership defaultProvider="ClientAuthenticationMembershipProvider">
<providers>
<add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" />
</providers>
</membership>
<roleManager defaultProvider="ClientRoleProvider" enabled="true">
<providers>
<add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" />
</providers>
</roleManager>
</system.web>
</configuration>

View File

@@ -0,0 +1,374 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{E3BA193A-A64F-4CE6-91BE-F54E551797BE}</ProjectGuid>
<OutputType>WinExe</OutputType>
<RootNamespace>BeWoLauncher</RootNamespace>
<AssemblyName>BeWoLauncher</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<WarningLevel>4</WarningLevel>
<Deterministic>true</Deterministic>
<IsWebBootstrapper>false</IsWebBootstrapper>
<PublishUrl>D:\Test\Launcher\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<AutorunEnabled>true</AutorunEnabled>
<ApplicationRevision>1</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<UseApplicationTrust>false</UseApplicationTrust>
<PublishWizardCompleted>true</PublishWizardCompleted>
<BootstrapperEnabled>true</BootstrapperEnabled>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>BeWoPlaner.ico</ApplicationIcon>
</PropertyGroup>
<PropertyGroup>
<ManifestCertificateThumbprint>2D5EB59FDFA60FDB4F2EDC2A5454F9B663BFDD32</ManifestCertificateThumbprint>
</PropertyGroup>
<PropertyGroup>
<ManifestKeyFile>BeWoLauncher_TemporaryKey.pfx</ManifestKeyFile>
</PropertyGroup>
<PropertyGroup>
<GenerateManifests>true</GenerateManifests>
</PropertyGroup>
<PropertyGroup>
<SignManifests>true</SignManifests>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Configuration.Install" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xaml">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
<Reference Include="WindowsBase" />
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
</ItemGroup>
<ItemGroup>
<ApplicationDefinition Include="LauncherApp.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</ApplicationDefinition>
<Compile Include="Components\PasswortAenderungsView.xaml.cs">
<DependentUpon>PasswortAenderungsView.xaml</DependentUpon>
</Compile>
<Compile Include="ConnectionProfile.cs" />
<Compile Include="PageImp\02 UpdatePage.xaml.cs">
<DependentUpon>02 UpdatePage.xaml</DependentUpon>
</Compile>
<Compile Include="WindowImp\PopUpWindow.xaml.cs">
<DependentUpon>PopUpWindow.xaml</DependentUpon>
</Compile>
<Page Include="Components\EnterTenantDialog.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Components\ProfileEditView.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Components\ExceptionMessageBox.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Components\PasswortAenderungsView.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="PageImp\01 LoginPage.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Components\ProxyLoginView.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Components\PwVergessenView.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Components\WaitLayer2.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="OrangeBlack.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="WindowImp\MainWindow.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Compile Include="LauncherApp.xaml.cs">
<DependentUpon>LauncherApp.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Compile Include="LauncherUtils.cs" />
<Compile Include="Components\EnterTenantDialog.xaml.cs">
<DependentUpon>EnterTenantDialog.xaml</DependentUpon>
</Compile>
<Compile Include="Components\ProfileEditView.xaml.cs">
<DependentUpon>ProfileEditView.xaml</DependentUpon>
</Compile>
<Compile Include="Multitenancy\MultitenancyEndpointBehavior.cs" />
<Compile Include="Multitenancy\MultitenancyHeader.cs" />
<Compile Include="Multitenancy\MultitenancyInterceptor.cs" />
<Compile Include="Security\LauncherSecurityHeader.cs" />
<Compile Include="Security\LauncherSecurityHeaderEndpointBehavior.cs" />
<Compile Include="Security\LauncherSecurityHeaderInterceptor.cs" />
<Compile Include="ServiceProxy\LauncherGenerated.cs" />
<Compile Include="ServiceProxy\LauncherServiceFacade.cs" />
<Compile Include="Components\ExceptionMessageBox.xaml.cs">
<DependentUpon>ExceptionMessageBox.xaml</DependentUpon>
</Compile>
<Compile Include="PageImp\01 LoginPage.xaml.cs">
<DependentUpon>01 LoginPage.xaml</DependentUpon>
</Compile>
<Compile Include="Components\ProxyLoginView.xaml.cs">
<DependentUpon>ProxyLoginView.xaml</DependentUpon>
</Compile>
<Compile Include="Components\PwVergessenView.xaml.cs">
<DependentUpon>PwVergessenView.xaml</DependentUpon>
</Compile>
<Compile Include="Components\WaitLayer2.xaml.cs">
<DependentUpon>WaitLayer2.xaml</DependentUpon>
</Compile>
<Compile Include="WindowImp\MainWindow.xaml.cs">
<DependentUpon>MainWindow.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Page Include="PageImp\02 UpdatePage.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="WindowImp\PopUpWindow.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
</ItemGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<EmbeddedResource Include="Properties\licenses.licx" />
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
</EmbeddedResource>
<None Include="BeWoLauncher_TemporaryKey.pfx" />
<None Include="LauncherServiceReferences.bat" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
</ItemGroup>
<ItemGroup>
<None Include="App.config">
<SubType>Designer</SubType>
</None>
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\16_bulleted_list.png" />
<Resource Include="Icons\16_employee.png" />
<Resource Include="Icons\16_euro.png" />
<Resource Include="Icons\16_female.png" />
<Resource Include="Icons\16_male.png" />
<Resource Include="Icons\16_report.png" />
<Resource Include="Icons\Add24.png" />
<Resource Include="Icons\adobe-pdf-icon.png" />
<Resource Include="Icons\Alarm.png" />
<Resource Include="Icons\AlertsDisabled.png" />
<Resource Include="Icons\AnonymousUserDisabled.png" />
<Resource Include="Icons\Archiv.png" />
<Resource Include="Icons\ArrowLeft.png" />
<Resource Include="Icons\ArrowRight.png" />
<Resource Include="Icons\bewologo_big.gif" />
<Resource Include="Icons\bewoplaner_logo_big.png" />
<Resource Include="Icons\bewoplaner_logo_small.png" />
<Resource Include="Icons\bslogo.gif" />
<Resource Include="Icons\Calendar 1.png" />
<Resource Include="Icons\Calendar1Day24.png" />
<Resource Include="Icons\Calendar31Day24.png" />
<Resource Include="Icons\Calendar5Day24.png" />
<Resource Include="Icons\Calendar7Day24.png" />
<Resource Include="Icons\CalendarDisabled.png" />
<Resource Include="Icons\CashStackDisabled.png" />
<Resource Include="Icons\ChartBarDisabled.png" />
<Resource Include="Icons\ChartLineDisabled.png" />
<Resource Include="Icons\ClipboardDisabled.png" />
<Resource Include="Icons\CoinsDisabled.png" />
<Resource Include="Icons\ConfigurationDisabled.png" />
<Resource Include="Icons\ConfigurationToolsDisabled.png" />
<Resource Include="Icons\ContactCardDisabled.png" />
<Resource Include="Icons\ContactCardWebDisabled.png" />
<Resource Include="Icons\Copy.png" />
<Resource Include="Icons\Cut.png" />
<Resource Include="Icons\delete.png" />
<Resource Include="Icons\Delete24.png" />
<Resource Include="Icons\Document48.png" />
<Resource Include="Icons\DocumentWithAdd.png" />
<Resource Include="Icons\DocumentWithAdd2.png" />
<Resource Include="Icons\edit.png" />
<Resource Include="Icons\Email.png" />
<Resource Include="Icons\excel.png" />
<Resource Include="Icons\Favorites16.png" />
<Resource Include="Icons\Favorites32.png" />
<Resource Include="Icons\FavoritesDisabled32.png" />
<Resource Include="Icons\Folder.png" />
<Resource Include="Icons\glucklicher.png" />
<Resource Include="Icons\Haeckchen.png" />
<Resource Include="Icons\Help.png" />
<Resource Include="Icons\HelpDisabled.png" />
<Resource Include="Icons\History24.png" />
<Resource Include="Icons\HistoryDisabled - Kopie.png" />
<Resource Include="Icons\HistoryDisabled.png" />
<Resource Include="Icons\Home.png" />
<Resource Include="Icons\HomeDisabled - Kopie.png" />
<Resource Include="Icons\HomeDisabled.png" />
<Resource Include="Icons\IDBadgeDisabled - Kopie.png" />
<Resource Include="Icons\IDBadgeDisabled.png" />
<Resource Include="Icons\InternetDisabled - Kopie.png" />
<Resource Include="Icons\InternetDisabled.png" />
<Resource Include="Icons\Keywords.png" />
<Resource Include="Icons\KeywordsDisabled.png" />
<Resource Include="Icons\klient-avatar.png" />
<Resource Include="Icons\Light Bulb.png" />
<Resource Include="Icons\Logout - Kopie.png" />
<Resource Include="Icons\Logout.png" />
<Resource Include="Icons\LogoutDisabled.png" />
<Resource Include="Icons\ManufacturingDisabled - Kopie.png" />
<Resource Include="Icons\ManufacturingDisabled.png" />
<Resource Include="Icons\massnahme.png" />
<Resource Include="Icons\MenuDisabled.png" />
<Resource Include="Icons\mitarbeiter-avatar.png" />
<Resource Include="Icons\mitarbeiter-team-avatar.png" />
<Resource Include="Icons\new.png" />
<Resource Include="Icons\Newspaper.png" />
<Resource Include="Icons\ObjectsDisabled.png" />
<Resource Include="Icons\OfficeBulidingBlackDisabled.png" />
<Resource Include="Icons\Paste.png" />
<Resource Include="Icons\Paste24.png" />
<Resource Include="Icons\Redo - Kopie.png" />
<Resource Include="Icons\Redo.png" />
<Resource Include="Icons\Rename24 - Kopie.png" />
<Resource Include="Icons\Rename24.png" />
<Resource Include="Icons\RSS Newsfeed - Kopie.png" />
<Resource Include="Icons\RSS Newsfeed.png" />
<Resource Include="Icons\Save - Kopie.png" />
<Resource Include="Icons\Save.png" />
<Resource Include="Icons\Search - Kopie.png" />
<Resource Include="Icons\Search.png" />
<Resource Include="Icons\SMS24_2.png" />
<Resource Include="Icons\sortiert.png" />
<Resource Include="Icons\Symbol Delete.png" />
<Resource Include="Icons\Symbol Edit.png" />
<Resource Include="Icons\Symbol Help.png" />
<Resource Include="Icons\SymbolRefresh32.png" />
<Resource Include="Icons\SymbolRefresh32Disabled - Kopie.png" />
<Resource Include="Icons\SymbolRefresh32Disabled.png" />
<Resource Include="Icons\TechSupportWhiteDisabled.png" />
<Resource Include="Icons\trauriges-smiley.png" />
<Resource Include="Icons\Undo - Kopie.png" />
<Resource Include="Icons\Undo.png" />
<Resource Include="Icons\unsortiert.png" />
<Resource Include="Icons\User Business Male.png" />
<Resource Include="Icons\User Home Boy.png" />
<Resource Include="Icons\User Home Girl.png" />
<Resource Include="Icons\UserBusinessMaleDisabled - Kopie.png" />
<Resource Include="Icons\UserBusinessMaleDisabled.png" />
<Resource Include="Icons\UserGroupBusinessDisabled - Kopie.png" />
<Resource Include="Icons\UserGroupBusinessDisabled.png" />
<Resource Include="Icons\UserGroupDisabled - Kopie.png" />
<Resource Include="Icons\UserGroupDisabled.png" />
<Resource Include="Icons\UserGroupHome24bw.png" />
<Resource Include="Icons\UserHomeBoyDisabled.png" />
<Resource Include="Icons\UserHomeMaleDisabled.png" />
<Resource Include="Icons\UserHomeMaleDisabled32.png" />
<Resource Include="Icons\UserMaleBlackDisabled.png" />
<Resource Include="Icons\warning-16x16.png" />
<Resource Include="Icons\WeitereNachrichtLaden.png" />
<Resource Include="Icons\word.png" />
<Resource Include="Icons\ziel.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="BeWoPlaner.ico" />
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<WCFMetadata Include="Connected Services\" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\BeWo\BeWo.csproj">
<Project>{3febb560-9275-413a-9767-bb68c44eebc3}</Project>
<Name>BeWo</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\SharedLauncher\SharedLauncher.csproj">
<Project>{efe05c79-e0dd-4311-8b90-a8da7ebdf36f}</Project>
<Name>SharedLauncher</Name>
<Private>True</Private>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

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>
<PublishUrlHistory>D:\Test\Launcher\|publish\</PublishUrlHistory>
<InstallUrlHistory />
<SupportUrlHistory />
<UpdateUrlHistory />
<BootstrapperUrlHistory />
<ErrorReportUrlHistory />
<FallbackCulture>de-DE</FallbackCulture>
<VerifyUploadedFiles>false</VerifyUploadedFiles>
<ProjectView>ProjectFiles</ProjectView>
</PropertyGroup>
<PropertyGroup>
<EnableSecurityDebugging>false</EnableSecurityDebugging>
</PropertyGroup>
</Project>

Binary file not shown.

BIN
BeWoLauncher/BeWoPlaner.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

View File

@@ -0,0 +1,48 @@
<Window x:Class="BeWoLauncher.Components.EnterTenantDialog"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:BeWoLauncher.Components"
mc:Ignorable="d"
Title="BeWoPlaner" Height="240" Width="320" WindowStartupLocation="CenterScreen" WindowStyle="ToolWindow">
<Grid Background="{x:Null}" Margin="0,0,0,0">
<Border BorderThickness="0" Padding="5,5,5,5" Background="{DynamicResource LoginBackgroundColor}">
<Grid Opacity="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="80" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Image Grid.Row="0" HorizontalAlignment="Left" VerticalAlignment="Top" Source="pack://application:,,,/Icons/bewoplaner_logo_big.png" Height="45" Margin="7,7,0,0"/>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" ></RowDefinition>
<RowDefinition Height="Auto" ></RowDefinition>
<RowDefinition Height="Auto" ></RowDefinition>
<RowDefinition Height="Auto" ></RowDefinition>
</Grid.RowDefinitions>
<TextBlock Grid.ColumnSpan="3" TextWrapping="Wrap" Margin="3">Bitte geben Sie Ihre 10-stellige Kundennummer ein:</TextBlock>
<TextBox x:Name="txtTenant" Grid.ColumnSpan="3" Grid.Row="1" Margin="3"></TextBox>
<Button Grid.Row="2" Grid.Column ="1" Width="100" Margin="3" IsDefault="True" Click="ButtonBase_OnClick">OK</Button>
<Button Grid.Row="2" Grid.Column ="2" Width="100" Margin="3" IsCancel="True" >Abbrechen</Button>
<CheckBox Grid.ColumnSpan="3" Grid.Row="3" Margin="3" Checked="ToggleButton_OnChecked" Unchecked="ToggleButton_OnUnchecked">Demo Zugang nutzen</CheckBox>
</Grid>
</Grid>
</Border>
<Line Grid.ColumnSpan="4" Stroke="#FFADADAD" X1="14" Y1="70" X2="585" Y2="70" StrokeThickness="1"></Line>
<Line x:Name="linkLine" Stroke="#FFADADAD" X1="14" Y1="340" X2="585" Y2="340" StrokeThickness="1" Margin="0,30,0,-30"></Line>
</Grid>
</Window>

View File

@@ -0,0 +1,58 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace BeWoLauncher.Components
{
/// <summary>
/// Interaktionslogik für EnterTenantDialog.xaml
/// </summary>
public partial class EnterTenantDialog : Window
{
public EnterTenantDialog()
{
InitializeComponent();
}
private String oldTenant = String.Empty;
public String Tenant
{
get { return txtTenant.Text; }
set
{
txtTenant.Text = value;
txtTenant.Focus();
txtTenant.SelectAll();
}
}
private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
{
DialogResult = true;
}
private void ToggleButton_OnChecked(object sender, RoutedEventArgs e)
{
oldTenant = txtTenant.Text;
txtTenant.Text = "demo";
txtTenant.IsEnabled = false;
}
private void ToggleButton_OnUnchecked(object sender, RoutedEventArgs e)
{
txtTenant.Text = oldTenant;
txtTenant.IsEnabled = true;
}
}
}

View File

@@ -0,0 +1,40 @@
<UserControl xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
x:Class="BeWoLauncher.Components.ExceptionMessageBox"
x:Name="UserControl"
Width="400" Height="300">
<Grid x:Name="LayoutRoot">
<Border BorderBrush="Black" BorderThickness="1" CornerRadius="10">
<Border.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF152043" Offset="0" />
<GradientStop Color="#FF464674" Offset="1" />
<GradientStop Color="White" Offset="0.293" />
</LinearGradientBrush>
</Border.Background>
</Border>
<Border BorderBrush="Black" BorderThickness="1" CornerRadius="2,2,10,10" Margin="3,25,3,3" Background="White">
<Grid Margin="5,5,5,45">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<TextBlock x:Name="lblError" Grid.Row="1" Text="Fehlerdetails:" d:LayoutOverrides="Height" TextDecorations="Underline" />
<ScrollViewer x:Name="contentError" Grid.Row="2" Margin="10" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto">
<TextBox IsReadOnly="True" TextWrapping="Wrap" Name="tb_stack" FontStyle="Italic"></TextBox>
</ScrollViewer>
<TextBlock TextWrapping="Wrap" Name="tb_message" FontWeight="Bold" FontSize="13.333" Margin="0,10" />
</Grid>
</Border>
<Border BorderBrush="Black" BorderThickness="1" CornerRadius="0,0,10,10" Background="#FFEFE8E8" Height="40" VerticalAlignment="Bottom" Margin="3,0,3,3">
<Button HorizontalAlignment="Right" Click="Button_Click" Height="23" Content="OK" VerticalAlignment="Center" Width="100" Margin="0,0,7,0" />
</Border>
<TextBlock Margin="10,5,0,0" VerticalAlignment="Top" Width="332.826666666667" Text="Es ist ein Fehler aufgetreten." Foreground="#FFEFE8E8" HorizontalAlignment="Left" FontSize="13.333" />
</Grid>
</UserControl>

View File

@@ -0,0 +1,49 @@
using System;
using System.Windows;
namespace BeWoLauncher.Components
{
public partial class ExceptionMessageBox
{
public ExceptionMessageBox(string message, Exception ex, bool showDetails) : this(message, ex?.ToString(), showDetails) { }
public ExceptionMessageBox(string message, string submessage, bool showDetails)
{
InitializeComponent();
if (!String.IsNullOrEmpty(message) && !showDetails)
tb_message.Text = message;
else
{
tb_message.Text =
"Es ist leider ein unbekannter Fehler aufgetreten. Prüfen Sie Ihre Internetverbindung oder versuchen Sie es später erneut. Wir sind stets bemüht das Programm zu verbessern, daher freuen wir uns auch, wenn Sie die Fehlerdetails unten in einer Mail an support@bewoplaner.de senden.";
}
if (!showDetails)
{
lblError.Visibility = Visibility.Collapsed;
contentError.Visibility = Visibility.Collapsed;
}
else
{
tb_stack.Text = String.Empty;
if (!String.IsNullOrEmpty(message))
{
tb_stack.Text = message + System.Environment.NewLine + System.Environment.NewLine + tb_stack.Text;
}
tb_stack.Text += submessage ?? string.Empty;
lblError.Visibility = Visibility.Visible;
contentError.Visibility = Visibility.Visible;
}
}
private void Button_Click(object sender, RoutedEventArgs e)
{
if(LauncherApp.Window != null)
{
LauncherApp.Window.CloseCurrentPopUp();
}
}
}
}

View File

@@ -0,0 +1,45 @@
<UserControl x:Class="BeWoLauncher.Components.PasswortAenderungsView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BeWoLauncher.Components"
mc:Ignorable="d"
d:DesignHeight="230" d:DesignWidth="340">
<Grid>
<GroupBox Header="Passwort ändern" x:Name="rootGroupBox" Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}" MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown">
<Grid Background="{DynamicResource ObjectEditBackgroundBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<TextBlock x:Name="textblock_editFailures" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Height="30" Foreground="Red" FontSize="12" TextWrapping="Wrap" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Center" />
<Label Grid.Row="1" Grid.Column="0" Content="Altes Passwort" Margin="3" />
<PasswordBox x:Name="AltesPwBox" Grid.Row="1" Grid.Column="1" Margin="3" VerticalContentAlignment="Center" PasswordChanged="AltesPWgeaendert" />
<Label Grid.Row="2" Grid.Column="0" Content="Neues Passwort" Margin="3" />
<PasswordBox x:Name="NeuesPwBox" Grid.Row="2" Grid.Column="1" Margin="3" VerticalContentAlignment="Center" PasswordChanged="NeuesPwBox_OnPasswordChanged" />
<Label Grid.Row="3" Grid.Column="0" Content="Passwort bestätigen" Margin="3" />
<PasswordBox x:Name="NeuesPwBox2" Grid.Row="3" Grid.Column="1" Margin="3" VerticalContentAlignment="Center" />
<Label Content="Passwort zu kurz" Grid.Row="4" Grid.ColumnSpan="2" Foreground="Red" x:Name="passwortprüfer" Visibility="Hidden" />
<StackPanel Grid.Row="5" Grid.Column="0" Grid.ColumnSpan="2" Orientation="Horizontal" HorizontalAlignment="Right" Margin="0,10,0,0">
<Button Margin="3" Content="OK" Width="100" Click="AendernClick" IsDefault="True" />
<Button Margin="3" x:Name="AbbrechenButton" Content="Abbrechen" Width="100" Command="Close" />
</StackPanel>
</Grid>
</GroupBox>
</Grid>
</UserControl>

View File

@@ -0,0 +1,119 @@
using BeWoLauncher.ServiceProxy;
using BeWoLauncher.WindowImp;
using BS.SharedLauncher;
using BS.SharedLauncher.Information;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Threading;
namespace BeWoLauncher.Components
{
/// <summary>
/// Interaktionslogik für UserControl1.xaml
/// </summary>
public partial class PasswortAenderungsView : UserControl
{
public PopUpWindow PopUp { get; set; }
public PasswortAenderungsView(PopUpWindow pop)
{
InitializeComponent();
PopUp = pop;
}
private void RootGroupBox_OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
try
{
PopUp.DragMove();
}
catch (Exception) { }
}
private void AendernClick(object sender, RoutedEventArgs e)
{
textblock_editFailures.Foreground = new SolidColorBrush(Colors.Red);
//if (ViewModel.CheckOldPassword(AltesPwBox.Password))
//{
// textblock_editFailures.Text = "Das alte Passwort ist nicht korrekt!";
// MessageBox.Show("Das alte Passwort ist nicht korrekt!", "Ändern des Passworts fehlgeschlagen", MessageBoxButton.OK, MessageBoxImage.Information);
// return;
//}
if (string.IsNullOrEmpty(NeuesPwBox.Password))
{
textblock_editFailures.Text = "Bitte geben Sie ein neues Passwort ein!";
MessageBox.Show("Bitte geben Sie ein neues Passwort ein!", "Ändern des Passworts fehlgeschlagen", MessageBoxButton.OK, MessageBoxImage.Information);
return;
}
if (NeuesPwBox.Password != NeuesPwBox2.Password)
{
textblock_editFailures.Text = "Die Passwörter stimmen nicht überein!";
MessageBox.Show("Die Passwörter stimmen nicht überein!", "Ändern des Passworts fehlgeschlagen", MessageBoxButton.OK, MessageBoxImage.Information);
return;
}
var lOld = AltesPwBox.Password;
var lNew = NeuesPwBox.Password;
LauncherServiceFacade.DoLauncherServiceAsync(x => x.CheckPassword2(ConnectionInformation.Username, lOld, lNew),
result => CheckPasswordResult(result, lOld, lNew), true);
}
private void CheckPasswordResult(PasswordValidationResult result, String oldPassword, String newPassword)
{
if (result == PasswordValidationResult.Succesful)
{
LauncherServiceFacade.DoLauncherServiceSync(x => x.ChangePassword(ConnectionInformation.Username, oldPassword, newPassword));
ConnectionInformation.Password = newPassword;
Dispatcher.BeginInvoke(DispatcherPriority.Normal, (Action)PopUp.Close);
}
else
{
var trans = LauncherServiceFacade.DoEnumTranslationServiceSync(x => x.GetTranslation(nameof(PasswordValidationResult), (short)result));
Session.MainWindow.ShowError("Ändern des Passworts fehlgeschlagen", trans, true);
}
}
private void AltesPWgeaendert(object sender, RoutedEventArgs e)
{
//textblock_editFailures.Text = string.Empty;
}
//PasswortSicherheit pwS = new PasswortSicherheit();
private void NeuesPwBox_OnPasswordChanged(object sender, RoutedEventArgs e)
{
//passwortprüfer = pwS.ErmittleUndZeigePasswortStaerke(NeuesPwBox.Password, passwortprüfer);
//var fehlermeldung = string.Empty;
//textblock_editFailures.Foreground = new SolidColorBrush(Color.FromRgb(255, 72, 0));
//if (!(NeuesPwBox.Password.Any(x => sonderzeichen.Contains(x)) && NeuesPwBox.Password.Any(x => zahlen.Contains(x)) && NeuesPwBox.Password.Any(x => grossBuchstaben.Contains(x)) && NeuesPwBox.Password.Any(x => kleinBuchstaben.Contains(x))))
// fehlermeldung = "Das Passwort sollte Sonderzeichen, Zahlen, Groß- und Kleinbuchstaben enthalten";
//if (NeuesPwBox.Password.Length < 8)
// fehlermeldung = "Das Passwort sollte mindestens 8 Zeichen lang sein";
//textblock_editFailures.Text = fehlermeldung;
}
}
}

View File

@@ -0,0 +1,101 @@
<UserControl x:Class="BeWoLauncher.Components.ProfileEditView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:view="clr-namespace:BeWoLauncher.Components"
Height="300" Width="500">
<Grid Background="{StaticResource ObjectEditBackgroundBrush}">
<GroupBox Style="{StaticResource PopUpWindowStyle}">
<GroupBox.Header>
<StackPanel Orientation="Horizontal" VerticalAlignment="Center" Margin="0">
<Image Source="pack://application:,,,/Icons/ContactCardWebDisabled.png" RenderTransformOrigin="0.5,0.5" Width="Auto" Height="28" Margin="0,0,0,0">
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
<SkewTransform AngleX="0" AngleY="0" />
<RotateTransform Angle="0" />
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Image.RenderTransform>
</Image>
<TextBox Text="Profile verwalten" Margin="10,4,0,0" Background="{x:Null}" Foreground="{DynamicResource MainGroupBoxForegroundBrush}" FontSize="20" BorderBrush="{x:Null}" VerticalAlignment="Stretch" BorderThickness="0,0,0,0" Padding="0,0,0,0" />
</StackPanel>
</GroupBox.Header>
<Grid Margin="0,3,0,0" Background="{StaticResource ObjectEditBackgroundBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid x:Name="rootGrid" Grid.Row="1" >
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid Grid.Row="0" Margin="5,10,5,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Label Content="Profilname:" Margin="0,3,0,0" />
<TextBox x:Name="profileNameTextBox" Grid.Column="1" Margin="0,3,0,0" />
<Label Content="Kundennummer:" Margin="0,3,0,0" Grid.Row="1" />
<TextBox x:Name="profileTenantBox" Grid.Row="1" Grid.Column="1" Margin="0,3,0,0" />
<Label Content="Server:" Grid.Row="2" Margin="0,3,0,0" />
<TextBox x:Name="profileServerTextBox" Grid.Column="1" Grid.Row="2" Margin="0,3,0,0" />
<Button Margin="0,3,0,0" Grid.Column="1" HorizontalAlignment="Left" Grid.Row="3" Content="Neues Profil hinzufügen" Click="ProfileAddClick" />
</Grid>
<Grid Grid.Row="1">
<ListView x:Name="listView" Margin="10">
<ListView.View>
<GridView>
<GridViewColumn Header="Profilname" Width="120" DisplayMemberBinding="{Binding Name}"/>
<GridViewColumn Header="Kundennummer" Width="120" DisplayMemberBinding="{Binding Tenant}"/>
<GridViewColumn Header="Server" Width="120" DisplayMemberBinding="{Binding Server}"/>
</GridView>
</ListView.View>
</ListView>
</Grid>
<!-- <dxg:GridControl Grid.Row="1" Margin="5" ItemsSource="{Binding Profiles}" x:Name="profileGridControl" >
<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="Notice" Header="" FixedWidth="True" Width="24" ReadOnly="True">
<dxg:GridColumn.CellTemplate>
<DataTemplate>
<Button Content="r" FontFamily="Webdings" Tag="{Binding}" Click="btn_deleteProfileClick" Width="18" Height="18" VerticalAlignment="Center" />
</DataTemplate>
</dxg:GridColumn.CellTemplate>
</dxg:GridColumn>
<dxg:GridColumn FieldName="Name" Header="Profilname" Width="70"/>
<dxg:GridColumn FieldName="Tenant" Header="Kundennummer" Width="50" />
<dxg:GridColumn FieldName="Server" Header="Server" Width="100" />
</dxg:GridControl.Columns>
<dxg:GridControl.View>
<dxg:TableView AutoWidth="true" ShowGroupPanel="False" ShowGroupedColumns="false" ShowTotalSummary="False" NavigationStyle="Cell" />
</dxg:GridControl.View>
</dxg:GridControl> -->
<Border Grid.Row="2" Grid.ColumnSpan="3" Height="40" Margin="0,10,0,0" VerticalAlignment="Stretch" Background="#FF000000">
<Border.OpacityMask>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#19000000" Offset="0" />
<GradientStop Color="#33FFFFFF" Offset="1" />
</LinearGradientBrush>
</Border.OpacityMask>
</Border>
<StackPanel Grid.ColumnSpan="3" Grid.Row="2" Orientation="Horizontal" VerticalAlignment="Center" Height="Auto" Margin="5,10,0,0" HorizontalAlignment="Right">
<Button x:Name="btnSave" Content="Speichern und schließen" Margin="0,0,3,0" Command="ApplicationCommands.Save" Height="25" />
<Button x:Name="btnClose" Content="Abbrechen" Margin="0,0,3,0" Command="ApplicationCommands.Close" Height="25" />
</StackPanel>
</Grid>
</Grid>
</GroupBox>
</Grid>
</UserControl>

View File

@@ -0,0 +1,63 @@
using BS.SharedLauncher;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Windows;
using System.Windows.Controls;
namespace BeWoLauncher.Components
{
/// <summary>
/// Interaktionslogik für ProfileEditView.xaml
/// </summary>
public partial class ProfileEditView : UserControl
{
private ObservableCollection<ConnectionProfile> _Profiles;
public ObservableCollection<ConnectionProfile> Profiles
{
get { return _Profiles; }
set
{
_Profiles = value;
listView.ItemsSource = _Profiles;
}
}
public ProfileEditView()
{
InitializeComponent();
Profiles = new ObservableCollection<ConnectionProfile>();
}
private void ProfileAddClick(object sender, RoutedEventArgs e)
{
//var bp = new BeWoProfile(profileNameTextBox.Text, profileServerTextBox.Text, profileTenantBox.Text);
var bp = new ConnectionProfile("<Neues Profil>", "", "");
if (Profiles.Contains(bp))
return;
Profiles.Add(bp);
//profileNameTextBox.Text = string.Empty;
//profileTenantBox.Text = string.Empty;
//profileServerTextBox.Text = string.Empty;
}
private void btn_deleteProfileClick(object sender, RoutedEventArgs e)
{
//var selectedItem = (BeWoLaProfile)((((Button)sender).Tag as EditGridCellData).RowData.Row);
//if (!Profiles.Contains(selectedItem))
// return;
//if (Profiles.Count == 1)
//{
// MessageBox.Show("Es muss mindestens ein Profil vorhanden sein.\nLöschen nicht möglich",
// "Löschen nicht möglich", MessageBoxButton.OK, MessageBoxImage.Warning);
// return;
//}
//Profiles.Remove(selectedItem);
}
}
}

View File

@@ -0,0 +1,20 @@
<Window x:Class="BeWoLauncher.Components.ProxyLoginView"
x:ClassModifier="internal"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Proxy Einstellungen" Height="200" Width="300">
<Grid>
<Button x:Name="proxyOK" Content="OK" HorizontalAlignment="Left" Margin="75,120,0,0" VerticalAlignment="Top" Width="100" Click="proxyOK_Click"/>
<Button x:Name="proxyAbbr" Content="Abbrechen" HorizontalAlignment="Left" Margin="180,120,0,0" VerticalAlignment="Top" Width="100" Click="proxyAbbr_Click"/>
<Label Content="Proxyname:" HorizontalAlignment="Left" Margin="10,15,0,0" VerticalAlignment="Top" Width="100"/>
<Label Content="Benutzername:" HorizontalAlignment="Left" Margin="10,45,0,0" VerticalAlignment="Top" Width="100"/>
<Label Content="Passwort:" HorizontalAlignment="Left" Margin="10,75,0,0" VerticalAlignment="Top" Width="100"/>
<TextBox x:Name="proxynametxt" HorizontalAlignment="Left" Height="23" Margin="120,15,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="160" SelectionOpacity="0.5" />
<TextBox x:Name="proxybenutzer" HorizontalAlignment="Left" Height="23" Margin="120,45,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="160" SelectionOpacity="0.5"/>
<PasswordBox x:Name="proxypasswort" HorizontalAlignment="Left" Height="23" Margin="120,75,0,0" VerticalAlignment="Top" Width="160" SelectionOpacity="0.5"/>
</Grid>
</Window>

View File

@@ -0,0 +1,119 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Security.Cryptography;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace BeWoLauncher.Components
{
/// <summary>
/// Interaktionslogik für ProxyLoginView.xaml
/// </summary>
internal partial class ProxyLoginView : Window
{
public ProxyLoginView()
{
InitializeComponent();
überprüfe();
}
private void überprüfe() {
if (proxynametxt.Text.Equals("") && proxybenutzer.Text.Equals("") && proxypasswort.Password.Equals("")) {
int counter = 0;
string line;
string[] datai= new string[3];
try
{
var filePath = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + "\\proxy.dat";
if (!File.Exists(filePath))
{
filePath = System.IO.Path.Combine(LauncherUtils.GetAndCreateUserAppDataPath(), "proxy.dat");
}
var file = new System.IO.StreamReader(filePath);
while ((line = file.ReadLine()) != null)
{
byte[] decbuff = Convert.FromBase64String(line);
var x= System.Text.Encoding.UTF8.GetString(decbuff);
datai[counter] = x;
counter++;
}
file.Close();
proxynametxt.Text = datai[0];
proxybenutzer.Text = datai[1];
proxypasswort.Password = datai[2];
}catch(IOException){
//Fehlermeldung
}
}
}
private void proxyOK_Click(object sender, RoutedEventArgs e)
{
string ptname = proxynametxt.Text;
string ptbenutzer = proxybenutzer.Text;
string ptpasswd = proxypasswort.Password;
string[] lines = { ptname, ptbenutzer, ptpasswd };
try
{
var filePath = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + "\\proxy.dat";
if (!File.Exists(filePath))
{
filePath = System.IO.Path.Combine(LauncherUtils.GetAndCreateUserAppDataPath(), "proxy.dat");
}
using (System.IO.StreamWriter file =
new System.IO.StreamWriter(filePath))
{
foreach (string line in lines)
{
byte[] encData_byte = new byte[line.Length];
encData_byte = System.Text.Encoding.UTF8.GetBytes(line);
string encodedData = Convert.ToBase64String(encData_byte);
file.WriteLine(encodedData);
}
}
ptname = "";
ptbenutzer = "";
ptpasswd = "";
this.Close();
}catch(IOException){
//Fehlermeldung
}
}
private void proxyAbbr_Click(object sender, RoutedEventArgs e)
{
this.Close();
}
}
}

View File

@@ -0,0 +1,31 @@
<Window x:Class="BeWoLauncher.Components.PwVergessenView"
x:ClassModifier="internal"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="PwVergessenView" Height="135" Width="322" WindowStartupLocation="CenterScreen" WindowStyle="None"
AllowsTransparency="True"
Background="Transparent"
ResizeMode="NoResize">
<Grid>
<GroupBox Header="Passwort anfordern" Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}" MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown">
<Grid Background="{StaticResource ObjectEditBackgroundBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="2" Height="20" VerticalAlignment="Center" HorizontalAlignment="Center" Foreground="Red" Margin="3,8,3,3"/>
<Label Grid.Row="1" Grid.Column="0" Margin="3" Content="Benutzername" />
<TextBox x:Name="BenutzernamenTextBox" Grid.Row="1" Grid.Column="1" MaxLines="1" Margin="3" />
<StackPanel Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Orientation="Horizontal" HorizontalAlignment="Stretch">
<Button Margin="3" Content="Neues Passwort anfordern" Width="150" Click="AnfordernClick" IsDefault="True" VerticalContentAlignment="Center" />
<Button Margin="3" Content="Abbrechen" Width="150" Command="Close" />
</StackPanel>
</Grid>
</GroupBox>
</Grid>
</Window>

View File

@@ -0,0 +1,49 @@
using System;
using System.Windows;
using System.Windows.Input;
namespace BeWoLauncher.Components
{
internal partial class PwVergessenView
{
private string email = "";
public PwVergessenView()
{
InitializeComponent();
CommandBindings.Add(new CommandBinding(ApplicationCommands.Close, (s, e) => Close()));
}
private void RootGroupBox_OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
try
{
DragMove();
}
catch (Exception) { }
}
private void AnfordernClick(object sender, RoutedEventArgs e)
{
var benutzername = BenutzernamenTextBox.Text;
if (benutzername.Equals(""))
{
MessageBox.Show("Bitte geben Sie einen Benutzernamen an", "Passwort anfordern fehlgeschlagen", MessageBoxButton.OK, MessageBoxImage.Information);
return;
}
//ServiceFacade.DoUserServiceAsync(s => s.GetEmailForUserName(out email, benutzername, ConnectionInformation.CoreServerAddressOrigin), CallBack, true);
}
private void CallBack(bool hatEmail)
{
if(email.Equals("") || !hatEmail)
{
MessageBox.Show("Es konnte kein Benutzer mit diesem Namen gefunden werden oder der Benutzer hat keine E-Mail Adresse hinterlegt\nBitte wenden Sie sich an Ihren Systemadministrator", "Passwort anfordern fehlgeschlagen", MessageBoxButton.OK, MessageBoxImage.Information);
return;
}
MessageBox.Show("Es wurde eine E-Mail an " + email + " gesendet");
this.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Normal, (Action)Close);
}
}
}

View File

@@ -0,0 +1,162 @@
<UserControl x:Class="BeWoLauncher.Components.WaitLayer2"
x:ClassModifier="internal"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Foreground="{DynamicResource BSOrangeBrush}">
<UserControl.Resources>
<Style TargetType="{x:Type Rectangle}">
<Setter Property="Fill" Value="{Binding Path=Foreground, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" />
<Setter Property="Width" Value="12" />
<Setter Property="Height" Value="40" />
</Style>
<Storyboard x:Key="OnLoaded1" RepeatBehavior="Forever">
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.1" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="45" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.2" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="90" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.3" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="135" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.4" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="180" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.5" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="225" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.6" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="270" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.7" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="315" />
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00.8" Storyboard.TargetName="bSLogoControl" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" >
<LinearDoubleKeyFrame KeyTime="0:0:0" Value="360" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</UserControl.Resources>
<UserControl.Triggers>
<EventTrigger RoutedEvent="FrameworkElement.Loaded">
<BeginStoryboard Storyboard="{StaticResource OnLoaded1}" />
</EventTrigger>
</UserControl.Triggers>
<Grid>
<Grid Background="White" Opacity="0.01" />
<Border CornerRadius="5,5,5,5" Opacity="0.92" BorderThickness="1,1,1,1" Padding="5,5,5,5" BorderBrush="#FF606060" VerticalAlignment="Center" Width="250" Height="100" Background="#FFFFFFFF">
<Border.OpacityMask>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#F3FFFFFF" Offset="0.027" />
<GradientStop Color="#D7FFFFFF" Offset="1" />
</LinearGradientBrush>
</Border.OpacityMask>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="2*" />
</Grid.RowDefinitions>
<Label Content="Daten werden übertragen. Bitte warten..." Foreground="#FF000000" FontSize="12" FontFamily="Microsoft Sans Serif" FontWeight="Normal" HorizontalAlignment="Center" VerticalAlignment="Center" />
<Grid Grid.Row="1" HorizontalAlignment="Center" VerticalAlignment="Center" Width="40" Height="40" x:Name="bSLogoControl" RenderTransformOrigin="0.5,0.5" Background="#00000000" >
<Grid.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
<SkewTransform AngleX="0" AngleY="0" />
<RotateTransform Angle="0" />
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Grid.RenderTransform>
<Viewbox StretchDirection="Both" Stretch="Fill"
MaxWidth="{Binding Path=ActualWidth, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
MaxHeight="{Binding Path=ActualHeight, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}">
<Canvas Width="100" Height="100">
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0">
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6"/>
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
<SkewTransform AngleX="0" AngleY="0" />
<RotateTransform Angle="45" />
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.875"/>
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
<SkewTransform AngleX="0" AngleY="0" />
<RotateTransform Angle="90" />
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.75"/>
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
<SkewTransform AngleX="0" AngleY="0" />
<RotateTransform Angle="135" />
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.625"/>
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
<SkewTransform AngleX="0" AngleY="0" />
<RotateTransform Angle="180" />
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.5"/>
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
<SkewTransform AngleX="0" AngleY="0" />
<RotateTransform Angle="225" />
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.375"/>
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
<SkewTransform AngleX="0" AngleY="0" />
<RotateTransform Angle="270" />
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.25"/>
</Canvas>
<Canvas Width="100" Height="100" Canvas.Left="0" Canvas.Top="0" RenderTransformOrigin="0.5,0.5">
<Canvas.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
<SkewTransform AngleX="0" AngleY="0" />
<RotateTransform Angle="315" />
<TranslateTransform X="0" Y="0" />
</TransformGroup>
</Canvas.RenderTransform>
<Rectangle Canvas.Left="44" Canvas.Top="0" RadiusX="6" RadiusY="6" Opacity="0.125"/>
</Canvas>
</Canvas>
</Viewbox>
</Grid>
</Grid>
</Border>
</Grid>
</UserControl>

View File

@@ -0,0 +1,16 @@
using System.Windows;
using System.Windows.Controls;
namespace BeWoLauncher.Components
{
/// <summary>
/// Interaction logic for WaitLayer.xaml
/// </summary>
internal partial class WaitLayer2 : UserControl
{
public WaitLayer2()
{
this.InitializeComponent();
}
}
}

View File

@@ -0,0 +1,47 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BeWoLauncher
{
public class ConnectionProfile
{
public string Name { get; set; }
public string Server { get; set; }
public string Tenant { get; set; }
public ConnectionProfile(string pname, string pserver, string ptenant)
{
Name = pname;
Server = pserver;
Tenant = ptenant;
if (Name == null)
Name = String.Empty;
}
public override string ToString()
{
return Name;
}
public override int GetHashCode()
{
String key = String.Format("{0}_{1}_{2}", Name, Server, Tenant);
return key.GetHashCode();
}
public override bool Equals(object obj)
{
var profile = obj as ConnectionProfile;
if (profile == null)
{
return false;
}
String key1 = String.Format("{0}_{1}_{2}", Name, Server, Tenant);
String key2 = String.Format("{0}_{1}_{2}", profile.Name, profile.Server, profile.Tenant);
return key1.Equals(key2);
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 564 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 722 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 605 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 663 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 741 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 649 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 832 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

BIN
BeWoLauncher/Icons/Copy.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
BeWoLauncher/Icons/Cut.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 814 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 817 B

BIN
BeWoLauncher/Icons/Help.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

BIN
BeWoLauncher/Icons/Home.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

BIN
BeWoLauncher/Icons/Redo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

BIN
BeWoLauncher/Icons/Save.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Some files were not shown because too many files have changed in this diff Show More