<?php  
set_time_limit(0);
ini_set('max_execution_time', 7200);
ini_set('memory_limit','2G');
ini_set('post_max_size','1G');
ini_set('upload_max_filesize','1G');

include_once "../../conexao/functions.php";

if (isset($_POST['submit'])) {
	$nome   = trim($_POST['nome']);

	if (isset($_FILES['imagem'])) {
		$imagem    = $_FILES['imagem'];
		$tipos 	   = array('jpg', 'png', 'jpeg'); 
		$nome_img  = date("dmyhis");
		$verifica1 = uploadFile($imagem, 'imagens_app/', $tipos, $nome_img);
		if(isset($verifica1['erro'])){
            echo json_encode(array(
                'error' => 0
            ));
		}
	}

	if (isset($_FILES['aplicativo'])) {
		$apk 	   = $_FILES['aplicativo'];
		$tipos     = array('apk', 'exe'); 
		$nome_apk  = date("dmyhis");
		$verifica2 = uploadFile($apk, 'aplicativos/', $tipos, $nome_apk);
		if(isset($verifica2['erro'])){
            echo json_encode(array(
                'error' => 0
            ));
		}
	}

    $app_id = registrarApp($nome, $verifica2['caminho'], $verifica1['caminho']);

	if ($app_id) {
        echo json_encode(array(
            'success' => 1, 
            'app_id'  => $app_id,
            'url' => 'http' . (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 's' : '') . '://' . $_SERVER['SERVER_NAME'] . '/control/actions/' . $verifica2['caminho']
        ));
	}else{
        echo json_encode(array(
            'error' => 0
        ));
	}

	// var_dump($verifica2); die();
    return true;
}
// MODAL
echo '
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Adicionar aplicativo</h5>
<button class="close" type="button" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
</div>
<div class="modal-body">
<form id="appForm" enctype="multipart/form-data">

<div class="form-group">
<label class="col-form-label" for="recipient-name"><b>Nome app:</b></label>
<input class="form-control" type="text" name="nome" required>
</div>

<div class="form-group">
<label class="col-form-label"><b>Imagem app:</b></label>
<input class="form-control" name="imagem" type="file" required>
</div>

<div class="form-group">
<label class="col-form-label"><b>Aplicativo (.apk):</b></label>
<input class="form-control" name="aplicativo" type="file" required>
</div>

<div class="progress" style="display: none;">
    <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"></div>
</div>

<div class="form-group urlAFTV" style="display:none;">
	<label class="col-form-label" for="recipient-name"><b>URL para Download AFTV:</b></label>
	<input class="form-control" type="text" name="url" disabled="true" id="urlDownload" >
</div>
<div class="form-group aftvCode" style="display:none;">
	<label class="col-form-label" for="recipient-name"><b>Código AFTV:</b></label>
	<input class="form-control" type="text" name="code" >
</div>
<input type="hidden" value="1" name="submit" />
<input type="hidden" value="" name="app_id" id="app_id" />
<div class="modal-footer">
        <button class="btn btn-secondary" type="button" data-dismiss="modal">Cancelar</button>
        <button class="btn btn-primary updSubmit" name="submit" type="button" id="submitBtn">Fazer upload do app</button>
    </div>
</form>
</div>
</div>
<script>
    $(document).ready(function () {
      

        $("#submitBtn").on("click", function () {
            var formData = new FormData($("#appForm")[0]);

            $.ajax({
                url: "actions/adicionar_app.php",
                type: "POST",
                data: formData,
                contentType: false,
				timeout: 30000000,
                processData: false,
                xhr: function () {
                    var xhr = new window.XMLHttpRequest();
                    xhr.upload.addEventListener("progress", function (evt) {
                        if (evt.lengthComputable) {
                            var percentComplete = (evt.loaded / evt.total) * 100;
                            $(".progress-bar").width(percentComplete + \'%\');
                        }
                    }, false);
                    return xhr;
                },
                success: function (response) {
                    $(".progress-bar").addClass("bg-success").removeClass("bg-info");
                    $("#submitBtn").remove();
                    $(".aftvCode").fadeIn("slow").show;
                    $(".updSubmit").attr("id","appUpdate");
                    let json = JSON.parse(response);
                    $(".urlAFTV").fadeIn("slow").show;
                    $("#urlDownload").val(json.url);
                    $("#app_id").val(json.app_id);
                    $("input[name=\"imagem\"]").parent("div").remove();
                    $("input[name=\"aplicativo\"]").parent("div").remove();
                    $(".modal-footer").append("<button class=\"btn updSubmit btn-success\" name=\"submit\" type=\"button\" id=\"appUpdate\">Salvar dados</button>");
                    
                    $("#appUpdate").on("click", function () {
                        var formData = new FormData($("#appForm")[0]);
                        
                        $.ajax({
                            url: "actions/editar_app.php",
                            type: "POST",
                            data: formData,
                            contentType: false,
                            timeout: 30000000,
                            processData: false,
                            xhr: function () {
                                var xhr = new window.XMLHttpRequest();
                                xhr.upload.addEventListener("progress", function (evt) {
                                    if (evt.lengthComputable) {
                                        var percentComplete = (evt.loaded / evt.total) * 100;
                                        $(".progress-bar").width(percentComplete + \'%\');
                                    }
                                }, false);
                                return xhr;
                            },
                            success: function (response) {
                                $(".progress-bar").addClass("bg-success").removeClass("bg-info");
                                setTimeout(function(){
                                    window.location.href="/control/home?r=app_adicionado"
                                },1000)
                            },
                            error: function (error) {
                                $(".progress-bar").addClass("bg-danger").removeClass("bg-info");
            
                            }
                        });
            
                        $(".progress").show();
                    });
                },
                error: function (error) {
                    $(".progress-bar").addClass("bg-danger").removeClass("bg-info");

                }
            });

            // Exibir a barra de progresso
            $(".progress").show();
        });

        
    });
</script>
';

?>