<vn-crud-model
    auto-load="true"
    url="Companies"
    data="companiesData"
    order="code">
</vn-crud-model>
<vn-crud-model
    auto-load="true"
    url="Samples/visible"
    data="samplesVisible"
    order="description">
</vn-crud-model>
<vn-watcher
    vn-id="watcher"
    url="ClientSamples"
    data="$ctrl.clientSample"
    insert-mode="true"
    form="form">
</vn-watcher>
<vn-crud-model
    auto-load="true"
    url="Companies"
    data="companiesData"
    order="code">
</vn-crud-model>
<form name="form" ng-submit="$ctrl.onSubmit()" class="vn-w-md">
    <vn-card class="vn-pa-lg">
        <vn-horizontal>
            <vn-autocomplete
                vn-id="sampleType"
                ng-model="$ctrl.clientSample.typeFk"
                model="ClientSample.typeFk"
                data="samplesVisible"
                show-field="description"
                label="Sample"
                required="true">
            </vn-autocomplete>
        </vn-horizontal>
        <vn-horizontal>
            <vn-textfield
                label="Recipient"
                ng-model="$ctrl.clientSample.recipient"
                info="Its only used when sample is sent"
                required="true">
            </vn-textfield>
            <vn-textfield
                label="Reply to"
                ng-model="$ctrl.clientSample.replyTo"
                info="To who should the recipient reply?"
                required="true">
            </vn-textfield>
        </vn-horizontal>
        <vn-horizontal ng-if="sampleType.selection.hasCompany || sampleType.selection.datepickerEnabled">
            <vn-autocomplete
                ng-model="$ctrl.companyId"
                model="ClientSample.companyFk"
                data="companiesData"
                show-field="code"
                label="Company" 
                ng-if="sampleType.selection.hasCompany"
                required="true">
            </vn-autocomplete>
            <vn-date-picker
                vn-one
                label="From"
                ng-model="$ctrl.clientSample.from"
                ng-if="sampleType.selection.datepickerEnabled"
                required="true">
            </vn-date-picker>
        </vn-horizontal>
    </vn-card>
    <vn-button-bar>
        <vn-submit
            disabled="!sampleType.selection"
            label="Send">
        </vn-submit>
        <vn-button
            disabled="!sampleType.selection.hasPreview"
            label="Preview" 
            ng-click="$ctrl.showPreview()">
        </vn-button>
        <vn-button
            class="cancel"
            label="Cancel"
            ui-sref="client.card.sample.index">
        </vn-button>
    </vn-button-bar>
</form>
<vn-dialog
    vn-id="show-preview"
    on-open="$ctrl.onPreviewOpen()">
    <tpl-body class="client-sample-dialog">
        <div class="loading">
            <vn-spinner enable="true"></vn-spinner>
        </div>
    </tpl-body>
</vn-dialog>