KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12
System : Windows NT SERVER-PC 10.0 build 26200 (Windows 11) AMD64
User : ServerPC ( 0)
PHP Version : 8.2.12
Disable Function : NONE
Directory :  C:/Program Files/Bitdefender Agent/27.1.1.23/skin/html/Agent/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : C:/Program Files/Bitdefender Agent/27.1.1.23/skin/html/Agent/progress.html
<html>
<head>
    <style>
        html {
            background-color: transparent;
            overflow: hidden;
        }

        html[lang="th"] * {
            font-family: Tahoma !important; 
        } 

        button {
            background-image: none;
            cursor: pointer;
            margin: 0;
            padding: 0;
        }

        body.simple-window {
            behavior: text-localization sample-data-source drag-window;
            font-family: "Segoe UI", Arial;
            background-color: #fff;
            margin: 0;
            padding: 0;
            width: 960dip;
            height: 640dip;
            color: #404040;
            margin: 15dip;
            box-shadow: 0 0 15dip rgba(0,0,0,.3);
        }

        .header {
            height: 32dip;
            flow: horizontal;
            behavior: drag-window;
            background-color: #f2f2f2;
            background-image: url(../images/b-icon-popup.svg);
            /* background-image: url(d:/cl/ProductAgent/images/b-icon-popup.svg); */
            background-repeat: no-repeat;
            background-size: 20dip;
            background-position: 16dip 50%;
        }

        .page-title {
            font-size: 13dip;
            height: 32dip;
            margin-left: 44dip;
            vertical-align:middle;
            color: #000;
            width: min-intrinsic;
            white-space: nowrap;
        }

        .win-controls {
            height: 32dip;
            white-space: nowrap;
            width: min-intrinsic;
            margin-left: auto;
            width: 100dip;
            text-align: right;

        }



        button.close {
            width: 32dip;
            height: 32dip;
            margin: 0;
            padding: 0;
            foreground-size: 13dip;
            margin-right: 2dip;
            background-image:none;
            foreground-image: url(../images/btn-close.svg);
            /* foreground-image: url(d:/cl/ProductAgent/images/btn-close.svg); */
            foreground-repeat: no-repeat;
            foreground-position: center center; 
            foreground-size: 10dip;
        }

        button.minimize {
            height: 32dip;
            width: 32dip;
            padding: 0;
            margin: 0;
            background-image: none;
            line-height: 0;
            position: relative;
            display: inline-block;
            vertical-align: middle;
        }

        button.minimize .before {
            margin: 0;
            width: 16dip;
            height: 1dip;
            background-color: #9b9b9b;
            position: absolute;
            display: block;
            left: 14dip;
            top: 15dip;
            line-height: 0;
        }

        .main-container {
            height: 100%%;
        }

        .content {
            text-align:center;
            height: 100%%;
            background-position-top: -31dip;
            background-image: url(../images/pattern.png);
            /* background-image: url(d:/cl/ProductAgent/images/pattern.png); */
            background-repeat: no-repeat;
            background-size: 960dip auto;
            overflow: hidden;
        }

        .title, .title-prep {
            font-family: "Segoe UI", Arial, sans-serif;
            font-size: 34dip;
            line-height: 40dip;
            margin-top: 88dip;
            color: #000;
        }
        .title-prep {
            margin-top: 378dip;
            border: 1px solid transparent;
        }

        .status {
            font-size: 15dip;
            margin-top: 29dip;
        }

        .slow-connection {
            color: #d38b04;
            font-size: 16dip;
            margin-left: 8dip;
            padding-left: 30dip;
            background-image: url(../images/icon_warning_slow_connection.svg);
            /* background-image: url(d:/cl/ProductAgent/images/icon_warning_slow_connection.svg); */
            background-size: 20dip 18dip;
            background-position: 0 50%;
            background-repeat : no-repeat;
            width: min-intrinsic;
            white-space:nowrap;
        }

        .slow-connection[hidden] {
            visibility:collapse;
        }

        .logo {
            foreground-image: url(../images/b-icon-popup.svg);
            /* foreground-image: url(d:/cl/ProductAgent/images/b-icon-popup.svg); */
            foreground-repeat: no-repeat;
            foreground-position: 50% 0;
            foreground-size: 41dip;
            width: 60dip;
            height: 60dip;
            margin: 0 auto;
            position: absolute;
            bottom: 46dip;
            background-image: url(../images/logo-shadow.png);
            /* background-image:url(d:/cl/ProductAgent/images/logo-shadow.png); */
            background-repeat: no-repeat;
            background-position: 50% 0;
            background-size: 46dip;
        }

        .logo-big {
            foreground-image: url(../images/b-icon-popup.svg);
            /* foreground-image: url(d:/cl/ProductAgent/images/b-icon-popup.svg); */
            foreground-repeat: no-repeat;
            foreground-position: 50% 0;
            foreground-size: 120dip;
            width: 160dip;
            height: 160dip;
            margin: 0 auto;
            position: absolute;
            top: 187dip;
            background-image: url(../images/logo-shadow.png);
            /* background-image:url(d:/cl/ProductAgent/images/logo-shadow.png); */
            background-repeat: no-repeat;
            background-position: 50% 0;
            background-size: 138dip;
        }

        .round-progress {
            background: none;
            overflow: visible;
            size: 150dip;
            foreground-image: none;
            prototype: RoundProgress;
            list-style-image: none;
            margin: 46dip;
        }

        .round-progress[value="100"] {
            foreground-image: url(../images/check-round-progress.svg);
            /* foreground-image:url(d:/cl/ProductAgent/images/check-round-progress.svg); */
            foreground-size: 46dip 36dip;
            foreground-repeat: no-repeat;
            foreground-position: 50% 50%;
            prototype: none;
            border: 8dip solid #34c749;
            border-radius: 50%;
            size: 120dip; 
        }

        .progress-wrapper {
            border: 1dip solid #f7f7f7;
            width: min-content;
            margin: 32dip auto 48dip auto;
            overflow: visible;
            vertical-align: middle;
            position: relative;
            border: none; 
        }

        .progress-wrapper .anim {
            prototype: Anim;
            position: absolute;
            top: 0;
            left: 0;
            size: 242dip; 
        }

        div[step] {
            display:none;
            height: 100%%;
        }

        body[current_step="1"] div[step="1"],
        body[current_step="2"] div[step="2"],
        body[current_step="3"] div[step="3"] {
            display:block;
        }

        body[current_step="3"] .win-controls {
            display:none;
        }

        .preparing {
            background-position-top: -31dip;
            background-image: url(../images/pattern2.png);
            /* background-image: url(d:/cl/ProductAgent/images/pattern2.png); */
            background-repeat: no-repeat;
            background-size: 960dip auto;

        }
    </style>
    <script type="text/tiscript">
        class RoundProgress : Behavior {
            function attached() {
                this.paintContent = this.paint;
            }
        
            function paint(gfx) {
                /*
                if(this.value == 100) {
                    this.@["value"] = 100;
                    return;
                } else if (this.@["value"] == 100) { //reset value attribute, because "100" image is permanent after value == 100
                    this.@["value"] = 0;
                    return;
                }*/

                var bgrColor = color(0xAD, 0xAF, 0xB2);
                var fgrColor = color(0x46,0x88, 0xd7);
                var txtColor = color(0x28,0x28, 0x28);
                var cropColor = color(0xFF, 0xFF, 0xFF);
                var rap = 22;
        
                if(this.@["bg"]) bgrColor = color(this.@["bg"]);
                if(this.@["crop"]) cropColor = color(this.@["crop"]);
                if(this.@["fg"]) fgrColor = color(this.@["fg"]);
                if(this.@["txt"]) txtColor = color(this.@["txt"]);
                if(this.@["rap"]) rap = this.@["rap"].toInteger();
        
                //var val = this.value;
                var val = this.@["value"].toInteger();
                var circ = Math.PI * 2;
                var quart = Math.PI / 2;
                var (x1, y1, x2, y2) = this.box(#rect, #border, #self);
        
                var w = (x2-x1)/2;
                var h = (y2-y1)/2;
        
                gfx.fillColor(bgrColor);
                gfx.ellipse(w, h, w, h);
                gfx.fillColor(fgrColor);
                gfx.arc(w, h, w, h, -quart, circ * val/100);
                gfx.fillColor(cropColor);
                gfx.ellipse(w, w, w-w/rap, h-w/rap);
        
                if(this.@["no-text"]!="true") {
                    var tx = new Graphics.Text(val.toInteger()+"%");
                    tx.font("Segoe UI Semilight", 54, false);
                    gfx.drawText(tx, w, h, txtColor, 5);
                }
                return true;
            }
        }
        
        class Anim:Behavior {
            var count = 0;
            var step = 0;
            var total_steps = 48.0;
            var duration = 2400ms / total_steps;
            var lines_count = 3;
            //var scaleStart = 0.615;
            var scaleStart = 0.590;
            var scaleEnd = 1;
            var line_start_steps = [];
            var line_steps = [];
            var progress;
            var stop = false;
        
            function attached() {
                progress = this.parent.$(progress);
        
                this.paintContent = this.paint;
                this.timer(duration, seq);
                  
                for (var i = 0; i < lines_count; ++i) {
                    line_start_steps[i] = i * total_steps / lines_count;
                    line_steps[i] = -1;
                }
            }
        
            function seq() {
                if(stop) {
                    return false;
                }
                if (step < total_steps) {
                    ++step;
                }
        
                for (var i = 0; i < lines_count; ++i) {
                    if (line_steps[i] != -1 || (line_steps[i] == -1 && step >= line_start_steps[i])) {
                        ++line_steps[i];
                        if (line_steps[i] > total_steps) {
                            line_steps[i] = 0;
                        }
                    }
                }
                this.refresh();
                return true;
            }
            
            function paint(gfx) {
                var (x1, y1, x2, y2) = this.box(#rect, #border, #self);
                var w = (x2-x1)/2;
                var h = (y2-y1)/2;
        
                for (var i = 0; i < lines_count; ++i) {
                    if (line_steps[i] != -1)  {
                        var scale = scaleStart + (scaleEnd - scaleStart) * line_steps[i] / total_steps;
                        var bgrColor = Graphics.RGBA(0xAD, 0xAF, 0xB2, 1.0 - (line_steps[i] / total_steps));
                        gfx.lineColor(bgrColor).lineWidth(1).noFill().ellipse(w, h, h * scale);
        
                        // stop if progress is 100%
                        if(scale > 0.98 && progress.value == 100) {
                            stop = true;
                        }
                    }
                }
            }
        }
       
    </script>
</head>
<body class="simple-window" current_step="1">
    <div id="download" class="main-container">
        <div class="header">
            <div class="page-title" id="pageTitle" ids="IDS_PRODUCT_NAME">_Bitdefender 2019</div>
            <div class="win-controls">
                <button id="btnSysMinimize" class="minimize"><span class="before"></span></button>
                <button id="btnSysClose" class="close"></button>
            </div>
        </div>
		
		<div class="content">
            <div step="1">
    			<div class="title" id="ctrlTitle" ids="IDS_PROGRESS_TITLE">_Downloading Bitdefender Product</div>
                <div class="status">
                    <span id="ctrlText">174 MB of 600 MB at 772 KB / Sec</span>
                    <span id="slow_connection" class="slow-connection" ids="IDS_PROGRESS_SLOW_NET_CONN" hidden>_Slow internet connection</span>
                </div>
                <div class="progress-wrapper">
                    <div class="anim"></div>
                    <progress id="ctrlProgress" class="round-progress" max="100" value="0" fg="#e42822"/>
                </div>
                <div class="logo"></div>
            </div>

            <div id="preparing" step="2" class="preparing">
                <div class="logo-big"></div>
                <div class="title-prep" id="ctrlPreparingText" ids="IDS_PREPARING_TEXT">_Preparing Bitdefender Product</div>
            </div>
    
            <div id="install" step="3" class="setup-placeholder">
                
            </div>
		</div>
	</div>
</body>
</html>

Anon7 - 2021