$()

in src/VstsDemoBuilder/Scripts/AppScripts/FileUpload.js [79:173]


    $('body').on('click', '#btnURLUpload, #btnGitHubUpload', function () {
        var isUrlValid = false;
        var URL = '';
        if ($('#GitHubUrl').val() !== '') {
            URL = $('#GitHubUrl').val().trim();
        } else if ($('#FileURL').val() !== '') {
            URL = $('#FileURL').val().trim();
        }
        if (URL === '') {
            $("#urlerror").empty().append('URL should not be empty');
            return false;
        }
        var controlID = this.id;

        var GitHubtoken = $('#GitHubToken').val().trim();
        var userId = $('#UserId').val().trim();
        var password = $('#Password').val().trim();
        $("#urlerror").empty();
        var fileurlSplit = URL.split('/');
        var filename = fileurlSplit[fileurlSplit.length - 1];

        filename = filename.split('.');
        if (filename.length > 1) {
            if (filename[filename.length - 1].toLowerCase().trim() !== "zip") {
                $("#urlerror").empty().append('Invalid URL, please provide the URL which ends with .zip extension'); isUrlValid = false;
            } else {
                isUrlValid = true;
            }
        }
        else {
            $("#urlerror").empty().append('Invalid URL, please provide the URL which ends with .zip extension'); isUrlValid = false;
        }
        if (controlID === 'btnGitHubUpload') {

            if (fileurlSplit[2].toLowerCase() !== "raw.githubusercontent.com" && fileurlSplit[2].toLowerCase() !== "github.com") {
                $("#urlerror").empty().append('Please provide GitHub URL, which should starts with domain name raw.githubusercontent.com or github.com '); isUrlValid = false;
            }
            else if ($('#privateGitHubRepo').prop("checked") === true && GitHubtoken === '') {
                $("#urlerror").empty().append('Please provide GitHub access token for authentication'); isUrlValid = false;
            }
        }
        else if (controlID === 'btnURLUpload' && $('#privateurl').prop("checked") === true && (userId === '' || password === '')) {
            $("#urlerror").empty().append('Please provide username and password for authentication'); isUrlValid = false;
        }

        if (isUrlValid) {
            var OldprivateTemplate = "";
            var oldTemplate = $('#PrivateTemplatePath', parent.document).val().split("\\");
            if (oldTemplate.length > 0) {
                OldprivateTemplate = oldTemplate[oldTemplate.indexOf('PrivateTemplates') + 1];
            }
            disableButton(controlID);
            $.ajax({
                url: "../Environment/UploadPrivateTemplateFromURL",
                type: "GET",
                data: { TemplateURL: URL, token: GitHubtoken, userId: userId, password: password, OldPrivateTemplate: OldprivateTemplate },
                success: function (Data) {
                    if (Data.privateTemplatePath !== "" && Data.privateTemplatePath !== undefined) {
                        console.log(Data);
                        var msg = '';
                        if (Data.responseMessage === "SUCCESS") {
                            $('#PrivateTemplateName', parent.document).val(Data.privateTemplateName);
                            $('#PrivateTemplatePath', parent.document).val(Data.privateTemplatePath);
                            var NewTemplateName = filename[0];
                            $('#ddlTemplates', parent.document).val(NewTemplateName);
                            $('#selectedTemplateFolder', parent.document).val(NewTemplateName);
                            $(".template-close", parent.document).click();
                            $(".VSTemplateSelection", parent.document).removeClass('d-block').addClass('d-none');
                            $("#lblextensionError", parent.document).removeClass('d-block').addClass('d-none');
                            $("#lblDefaultDescription", parent.document).removeClass('d-block').addClass('d-none');
                            $("#lblDescription", parent.document).removeClass('d-block').addClass('d-none');
                            $("#ddlAcccountName", parent.document).prop('selectedIndex', 0);
                            enableButton(controlID);
                            //$('#gitHubCheckboxDiv', parent.document).addClass('d-none');
                        }
                        else if (Data.responseMessage !== '' && Data.responseMessage !== 'SUCCESS') {
                            $("#urlerror").empty().append(Data.responseMessage);
                            enableButton(controlID);
                            return;
                        }
                    }
                    else {
                        if (Data.responseMessage !== null && Data.responseMessage !== 'SUCCESS') {
                            $("#urlerror").empty().append(Data.responseMessage);
                            enableButton(controlID);
                            return;
                        }
                    }

                }

            });
        }

    });