aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Azure/Tango.AzureUtils.UI/Views/EnvironmentCreationView.xaml
blob: 54fe2f7be23c89132a1cad77544ae4010456a6d2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<UserControl x:Class="Tango.AzureUtils.UI.Views.EnvironmentCreationView"
             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:vm="clr-namespace:Tango.AzureUtils.UI.ViewModels"
             xmlns:helpers="clr-namespace:Tango.SharedUI.Helpers;assembly=Tango.SharedUI"
             xmlns:global="clr-namespace:Tango.AzureUtils.UI"
             xmlns:local="clr-namespace:Tango.AzureUtils.UI.Views"
             xmlns:localControls="clr-namespace:Tango.AzureUtils.UI.Controls"
             mc:Ignorable="d" 
             d:DesignHeight="700" 
             d:DesignWidth="1100" 
             d:DataContext="{d:DesignInstance Type=vm:EnvironmentCreationViewVM, IsDesignTimeCreatable=False}" 
             DataContext="{x:Static global:ViewModelLocator.EnvironmentCreationViewVM}" 
             Background="{StaticResource PrimaryBackgroundBrush}" 
             Foreground="{StaticResource PrimaryForegroundBrush}">
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="50*"/>
            <ColumnDefinition Width="60*"/>
        </Grid.ColumnDefinitions>

        <GroupBox Header="Source Deployment Slot" Padding="5" Margin="10">
            <DockPanel>
                <ComboBox DockPanel.Dock="Top" ItemsSource="{Binding DeploymentSlots}" SelectedItem="{Binding SelectedDeploymentSlot}" DisplayMemberPath="Name"></ComboBox>

                <localControls:WebAppPropertiesControl VerticalAlignment="Top" Margin="0 20 0 0" DataContext="{Binding SelectedDeploymentSlot}" />
            </DockPanel>
        </GroupBox>

        <Grid Grid.Column="1">
            <DockPanel>
                <GroupBox DockPanel.Dock="Top" HorizontalAlignment="Left" Margin="50 10 10 10" Header="Environment Configuration" Padding="10 10 100 10">
                    <StackPanel>
                        <CheckBox  IsChecked="{Binding Config.IgnoreExistingSlot}" >Ignore Existing Deployment Slot</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.CreateEnvironmentGroup}" >Create Environment Group</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.AddEnvironmentGroupAdminUser}" >Add Creation User To Environment Group</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.CreateDeploymentSlot}" >Create Deployment Slot</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.CreateDatabase}" >Create Database</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.AddDatabasePermissionsForEnvironmentGroup}" >Add Database Permissions for Environment Group</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.CreateDatabaseBackupUser}" >Create Database Backup User</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.CreateDatabaseTangoWebApplicationUser}" >Create Database Tango WebApp User</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.SynchronizeDatabaseSchema}">Synchronize Database Schema</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.SynchronizeDatabaseData}">Synchronize Database Static Collections</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.CreateStorageContainers}">Create MS and PPC Storage Containers</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.CopyStorageBlobs}">Copy Machine Studio and PPC Latest Version Blobs</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.ConfigureMachineServiceLogging}">Configure Machine Service Logging</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.ConfigureCloudBackup}">Configure Cloud Backup</CheckBox>
                        <CheckBox  Margin="0 5 0 0" IsChecked="{Binding Config.CopyMachineServiceFiles}">Copy Machine Service Website Files</CheckBox>
                    </StackPanel>
                </GroupBox>

                <StackPanel>
                    <GroupBox HorizontalAlignment="Left" Margin="50 10 10 10" Header="Environment Name" Padding="10 10 90 10">
                        <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center" MinWidth="300">
                            <TextBlock FontSize="10">Environment Name (e.g DEV)</TextBlock>
                            <TextBox Margin="0 2 0 0" Text="{Binding SlotName}"></TextBox>
                        </StackPanel>
                    </GroupBox>

                    <Button HorizontalAlignment="Left" Width="410" Margin="50 20 0 0" Padding="20" Command="{Binding CreateEnvironmentCommand}">CREATE ENVIRONMENT</Button>
                </StackPanel>
            </DockPanel>
        </Grid>
    </Grid>
</UserControl>
ing.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
::-moz-selection {
    background: #cc0000;
    text-shadow: none;
}

::selection {
    background: #cc0000;
    text-shadow: none;
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    border: 0;
    /*font: inherit;*/
    
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    text-rendering: optimizeLegibility;
}

article, aside, details, figcaption, figure, footer, hgroup, menu, nav, section {
    display: block;
}


form {
    background: #111;
    border: 1px solid #191919;
    border-radius: .4em;
    bottom: 0;
    box-shadow: 0 5px 10px 5px rgba(0,0,0,0.2);
    height: 280px;
    left: 0;
    margin: auto;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    width: 300px;
}

    form:after {
        background: linear-gradient(to right, #111111, #444444, #b6b6b8, #444444, #2F2F2F, #272727);
        content: "";
        display: block;
        height: 1px;
        left: 50px;
        position: absolute;
        top: 0;
        width: 150px;
    }

    form:before {
        border-radius: 50%;
        box-shadow: 0 0 6px 4px #fff;
        content: "";
        display: block;
        height: 5px;
        left: 34%;
        position: absolute;
        top: -7px;
        width: 8px;
    }

.inset {
    border-top: 1px solid #19191a;
    padding: 20px;
}

form h1 {
    font-family: 'Audiowide';
    border-bottom: 1px solid #000;
    font-size: 18px;
    padding: 15px 0;
    position: relative;
    text-align: center;
    text-shadow: 0 1px 0 #000;
}

form h1 {
    color: #00CEFF;
    font-family: Audiowide;
    font-weight: normal;
}

    form h1.poweron {
        color: #ffffff;
        transition: all 0.5s;
        animation: flicker 1s ease-in-out 1 alternate, neon 1.5s ease-in-out infinite alternate;
        animation-delay: 0s, 1s;
    }

    form h1:after {
        position: absolute;
        width: 250px;
        height: 180px;
        content: "";
        display: block;
        pointer-events: none;
        top: 0;
        margin-left: 138px;
        transform-style: flat;
        transform: skew(20deg);
        background: -moz-linear-gradient(top, hsla(0,0%,100%,0.1) 0%, hsla(0,0%,100%,0) 100%);
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,hsla(0,0%,100%,0.2)), color-stop(100%,hsla(0,0%,100%,0)));
        background: -webkit-linear-gradient(top, hsla(0,0%,100%,0.1) 0%,hsla(0,0%,100%,0) 100%);
        background: -o-linear-gradient(top, hsla(0,0%,100%,0.1) 0%,hsla(0,0%,100%,0) 100%);
        background: -ms-linear-gradient(top, hsla(0,0%,100%,0.1) 0%,hsla(0,0%,100%,0) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#42ffffff', endColorstr='#00ffffff',GradientType=0 );
        background: linear-gradient(to bottom, hsla(0,0%,100%,0.1) 0%,hsla(0,0%,100%,0) 100%);
    }

input[type=text], input[type=password] {
    background: linear-gradient(#1f2124,#27292c);
    border: 1px solid #222;
    border-radius: .3em;
    box-shadow: 0 1px 0 rgba(255,255,255,0.1);
    color: #FFF;
    font-size: 13px;
    margin-bottom: 20px;
    padding: 8px 5px;
    width: 100%;
}

    input[type=text]:disabled, input[type=password]:disabled {
        color: #999;
    }

label[for=remember] {
    color: #bbb;
    display: inline-block;
    height: 20px;
    line-height: 20px;
    vertical-align: top;
    padding: 0 0 0 5px;
}

.p-container {
    padding: 0 20px 20px;
}

    .p-container:after {
        clear: both;
        content: "";
        display: table;
    }

    .p-container span {
        color: #0d93ff;
        display: block;
        float: left;
        padding-top: 8px;
    }

input[type=submit] {
    background: #00CEFF;
    border: 1px solid rgba(0,0,0,0.4);
    border-radius: .3em;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.3), inset 0 10px 10px rgba(255,255,255,0.1);
    color: Black;
    cursor: pointer;
    font-size: 13px;
    font-weight: bold;
    height: 40px;
    padding: 5px 20px;
    width: 100%;
}

.denied {
    color: white !important;
    text-shadow: 0 0 1px black;
    background: #EE0000 !important;
}

input[type=submit]:hover, input[type=submit]:focus {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.3), inset 0 -10px 10px rgba(255,255,255,0.1);
}

input[type=text]:hover:not([disabled]),
input[type=text]:focus,
input[type=password]:hover:not([disabled]),
input[type=password]:focus,
label:hover ~ input[type=text],
label:hover ~ input[type=password] {
    background: #27292c;
}

input[type="checkbox"] {
    opacity: 0;
    background: red;
    position: absolute;
    cursor: pointer;
    z-index: 1;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
}

.checkboxouter {
    height: 20px;
    width: 20px;
    border-radius: 3px;
    background-color: #000;
    position: relative;
    display: inline-block;
    border: 2px solid #555;
}

.checkbox {
    position: absolute;
    border-bottom: 2px solid #333;
    border-right: 2px solid #333;
    background-color: transparent;
    height: 10px;
    width: 5px;
    margin: auto;
    left: 50%;
    transform: rotate(45deg);
    transform-origin: -35% 30%;
    transition: all 0.2s;
}

input[type="checkbox"]:checked ~ .checkbox {
    transition: all 0.3s;
    border-bottom: 2px solid #00CEFF;
    border-right: 2px solid #00CEFF;
}

@keyframes neon {
    from {
        text-shadow: 0 0 2.5px #fff, 0 0 5px #fff, 0 0 7.5px #fff, 0 0 10px #B6FF00, 0 0 17.5px #B6FF00, 0 0 20px #B6FF00, 0 0 25px #B6FF00, 0 0 37.5px #B6FF00;
    }

    to {
        text-shadow: 0 0 3px #fff, 0 0 7px #fff, 0 0 13px #fff, 0 0 17px #B6FF00, 0 0 33px #B6FF00, 0 0 38px #B6FF00, 0 0 48px #B6FF00, 0 0 63px #B6FF00;
    }
}

@keyframes flicker {
    0% {
        text-shadow: 0 0 2.5px #fff, 0 0 5px #fff, 0 0 7.5px #fff, 0 0 10px #B6FF00, 0 0 17.5px #B6FF00, 0 0 20px #B6FF00, 0 0 25px #B6FF00, 0 0 37.5px #B6FF00;
    }

    2% {
        text-shadow: none;
    }

    8% {
        text-shadow: 0 0 2.5px #fff, 0 0 5px #fff, 0 0 7.5px #fff, 0 0 10px #B6FF00, 0 0 17.5px #B6FF00, 0 0 20px #B6FF00, 0 0 25px #B6FF00, 0 0 37.5px #B6FF00;
    }

    10% {
        text-shadow: none;
    }

    20% {
        text-shadow: 0 0 2.5px #fff, 0 0 5px #fff, 0 0 7.5px #fff, 0 0 10px #B6FF00, 0 0 17.5px #B6FF00, 0 0 20px #B6FF00, 0 0 25px #B6FF00, 0 0 37.5px #B6FF00;
    }

    22% {
        text-shadow: none;
    }

    24% {
        text-shadow: 0 0 2.5px #fff, 0 0 5px #fff, 0 0 7.5px #fff, 0 0 10px #B6FF00, 0 0 17.5px #B6FF00, 0 0 20px #B6FF00, 0 0 25px #B6FF00, 0 0 37.5px #B6FF00;
    }

    28% {
        text-shadow: none;
    }

    32% {
        text-shadow: 0 0 2.5px #fff, 0 0 5px #fff, 0 0 7.5px #fff, 0 0 10px #B6FF00, 0 0 17.5px #B6FF00, 0 0 20px #B6FF00, 0 0 25px #B6FF00, 0 0 37.5px #B6FF00;
    }

    34% {
        text-shadow: none;
    }

    36% {
        text-shadow: none;
    }

    42% {
        text-shadow: none;
    }

    100% {
        text-shadow: 0 0 2.5px #fff, 0 0 5px #fff, 0 0 7.5px #fff, 0 0 10px #B6FF00, 0 0 17.5px #B6FF00, 0 0 20px #B6FF00, 0 0 25px #B6FF00, 0 0 37.5px #B6FF00;
    }
}