<?php 
require_once $_SERVER['DOCUMENT_ROOT'].'/controller/admin/admin_controller.php';


if(!isset($_POST['acao']) OR empty($_POST['acao'])){
    die_error("Não foi possível concluir esta ação.");
}

if($_POST['acao'] == 'post-adicionar'){
    if(!isset($_POST['post_titulo']) OR empty($_POST['post_titulo']) OR 
        !isset($_POST['post_descricao']) OR empty($_POST['post_descricao']) OR 
        !isset($_POST['post_botao']) OR empty($_POST['post_botao']) OR 
        !isset($_FILES['post_thumbnail']) OR empty($_FILES['post_thumbnail']['tmp_name'])){
        die_error("Preencha todos os campos.");
    }

    $thumbnail = upload_imagem($_FILES['post_thumbnail']);
    $post_botao_link  = isset($_POST['post_botao_link']) && !empty($_POST['post_botao_link']) ? $_POST['post_botao_link'] : NULL;

    if(!post_adicionar(ucwords($_POST['post_titulo']), $_POST['post_descricao'], ucwords($_POST['post_botao']), $thumbnail['name'], $post_botao_link)){
        die_error("Não foi possível adicionar.");
    }

    $post_id = $pdo->lastInsertId();

    @move_uploaded_file($thumbnail['tmp_name'], BASE_IMAGES_PATCH.'post/'.$thumbnail['name']);

    if(isset($_FILES['post_imagem']) && !empty($_FILES['post_imagem']['tmp_name'])){ 
        for($b = 0; $b < count($_FILES['post_imagem']['tmp_name']); $b++){
                
            if($_FILES['post_imagem']['type'][$b] == 'image/png' OR $_FILES['post_imagem']['type'][$b] == 'image/jpg' OR $_FILES['post_imagem']['type'][$b] == 'image/jpeg'){
                $img_up_tmp   = $_FILES['post_imagem']['tmp_name'][$b];
                $img_extensao = $_FILES['post_imagem']['type'][$b] == 'image/png' ? '.png' : '.jpg';  
                $img_up_name  = md5(time().$_FILES['post_imagem']['name'][$b]).$img_extensao;
                move_uploaded_file($img_up_tmp, BASE_IMAGES_PATCH.'/post/'.$img_up_name);
                post_image_add($img_up_name, $post_id);
            }
            

        } 
    }

    die_reload();


}  


if($_POST['acao'] == 'post-editar'){
    if(!isset($_POST['post_titulo']) OR empty($_POST['post_titulo']) OR 
        !isset($_POST['post_descricao']) OR empty($_POST['post_descricao']) OR 
        !isset($_POST['post_botao']) OR empty($_POST['post_botao']) OR 
        !isset($_POST['post_id']) OR !intval($_POST['post_id'])){
        die_error("Preencha todos os campos.");
    }

    $post = !empty(post_get($_POST['post_id'])) ? post_get($_POST['post_id']) : die_error("O post não foi encontrado.");
    $post_thumbnail = $post['post_thumbnail'];
    $post_botao_link  = isset($_POST['post_botao_link']) && !empty($_POST['post_botao_link']) ? $_POST['post_botao_link'] : NULL;

    if(isset($_FILES['post_thumbnail']) && !empty($_FILES['post_thumbnail']['tmp_name'])){
        $thumbnail = upload_imagem($_FILES['post_thumbnail']);
        $post_thumbnail = $thumbnail['name'];
    }

    if(!post_editar(ucwords($_POST['post_titulo']), $_POST['post_descricao'], ucwords($_POST['post_botao']), $post_thumbnail, $post_botao_link, $_POST['post_id'])){
        die_error("Não foi possível editar.");
    }



    if(isset($thumbnail)){
        @move_uploaded_file($thumbnail['tmp_name'], BASE_IMAGES_PATCH.'post/'.$thumbnail['name']);
        if(file_exists(BASE_IMAGES_PATCH.'post/'.$post['post_thumbnail'])){
            @unlink(BASE_IMAGES_PATCH.'post/'.$post['post_thumbnail']);
        }
    }

   

    if(isset($_FILES['post_imagem']) && !empty($_FILES['post_imagem']['tmp_name'])){ 
        for($b = 0; $b < count($_FILES['post_imagem']['tmp_name']); $b++){
                
            if($_FILES['post_imagem']['type'][$b] == 'image/png' OR $_FILES['post_imagem']['type'][$b] == 'image/jpg' OR $_FILES['post_imagem']['type'][$b] == 'image/jpeg'){
                $img_up_tmp   = $_FILES['post_imagem']['tmp_name'][$b];
                $img_extensao = $_FILES['post_imagem']['type'][$b] == 'image/png' ? '.png' : '.jpg';  
                $img_up_name  = md5(time().$_FILES['post_imagem']['name'][$b]).$img_extensao;
                move_uploaded_file($img_up_tmp, BASE_IMAGES_PATCH.'/post/'.$img_up_name);
                post_image_add($img_up_name, $_POST['post_id']);
            }
            

        } 
    }

    die_reload();


}  

if($_POST['acao'] == 'post-excluir'){
    
    if(!isset($_POST['post_id']) OR !intval($_POST['post_id']) OR 
       empty(post_get($_POST['post_id']))){
        die_error("O post não existe.");
    }

    $post = post_get($_POST['post_id']);

    if(!post_excluir($_POST['post_id'])){
        die_error("Não foi possível excluir.");
    }

    if(file_exists(BASE_IMAGES_PATCH.'post/'.$post['post_thumbnail'])){
        @unlink(BASE_IMAGES_PATCH.'post/'.$post['post_thumbnail']);
    }

    foreach(post_image_listar($_POST['post_id']) as $img){
        if(file_exists(BASE_IMAGES_PATCH.'post/'.$img['post_image_name'])){
            @unlink(BASE_IMAGES_PATCH.'post/'.$img['post_image_name']);
        }
        post_image_excluir($img['post_image_id']);
    }

    die_reload();
}

if($_POST['acao'] == 'post-excluir-image'){
    if(!isset($_POST['post_image_id']) && !intval($_POST['post_image_id']) OR 
       !isset($_POST['post_image_post_id']) OR !intval($_POST['post_image_post_id'])){
        die_error("A imagem não foi encontrada.");
    }   

    $img = !empty(post_image_get($_POST['post_image_id'], $_POST['post_image_post_id'])) ? post_image_get($_POST['post_image_id'], $_POST['post_image_post_id']) : die_error("A imagem não existe.");

    if(!post_image_excluir($_POST['post_image_id'])){
        die_error("Não foi possível excluir.");
    }

    if(file_exists(BASE_IMAGES_PATCH.'post/'.$img['post_image_name'])){
        @unlink(BASE_IMAGES_PATCH.'post/'.$img['post_image_name']);
    }

    die_reload();
    
}


if($_POST['acao'] == 'post-image-alterar'){

    if(!isset($_POST['post_image_id_alterar']) && !intval($_POST['post_image_id_alterar']) OR 
       !isset($_POST['post_image_post_id_alterar']) OR !intval($_POST['post_image_post_id_alterar']) OR 
       empty(post_image_get($_POST['post_image_id_alterar'], $_POST['post_image_post_id_alterar']))){
        die_error("A imagem não foi encontrada.");
    } 

    if(empty(post_get($_POST['post_image_post_id_alterar']))){
        die_error("O post não existe.");
    }

    if(!isset($_FILES['post_imagem_alterar']) OR empty($_FILES['post_imagem_alterar']['tmp_name'])){
        die_error("Selecione uma imagem");
    }

    $post_image = post_image_get($_POST['post_image_id_alterar'], $_POST['post_image_post_id_alterar']);

    $post_image_new = upload_imagem($_FILES['post_imagem_alterar']);
 

    if(!post_image_editar($post_image_new['name'], $_POST['post_image_post_id_alterar'], $_POST['post_image_id_alterar'])){
        die_error("Não foi possível alterar a imagem.");
    }

    @move_uploaded_file($post_image_new['tmp_name'], BASE_IMAGES_PATCH.'post/'.$post_image_new['name']);

    if(file_exists(BASE_IMAGES_PATCH.'post/'.$post_image['post_image_name'])){
        @unlink(BASE_IMAGES_PATCH.'post/'.$post_image['post_image_name']);
    }

    die_reload();



}