<?php
session_start();
require '../../_app/Config.inc.php';
$NivelAcess = LEVEL_WC_TRATAMENTOS;
if (!APP_TRATAMENTOS || empty($_SESSION['userLogin']) || empty($_SESSION['userLogin']['user_level']) || $_SESSION['userLogin']['user_level'] < $NivelAcess) :
$jSON['trigger'] = AjaxErro('<b class="icon-warning">OPPSSS:</b> Você não tem permissão para essa ação ou não está logado como administrador!', E_USER_ERROR);
echo json_encode($jSON);
die;
endif;
usleep(50000);
//DEFINE O CALLBACK E RECUPERA O POST
$jSON = null;
$CallBack = 'Tratamentos';
$PostData = filter_input_array(INPUT_POST, FILTER_DEFAULT);
//VALIDA AÇÃO
if ($PostData && $PostData['callback_action'] && $PostData['callback'] == $CallBack) :
//PREPARA OS DADOS
$Case = $PostData['callback_action'];
unset($PostData['callback'], $PostData['callback_action']);
$Read = new Read;
$Create = new Create;
$Update = new Update;
$Delete = new Delete;
//SELECIONA AÇÃO
switch ($Case):
//DELETE
case 'delete':
$PostData['trat_id'] = $PostData['del_id'];
$Read->FullRead("SELECT trat_cover FROM " . DB_TRATAMENTOS . " WHERE trat_id = :ps", "ps={$PostData['trat_id']}");
if ($Read->getResult() && file_exists("../../uploads/{$Read->getResult()[0]['trat_cover']}") && !is_dir("../../uploads/{$Read->getResult()[0]['trat_cover']}")) :
unlink("../../uploads/{$Read->getResult()[0]['trat_cover']}");
endif;
$Delete->ExeDelete(DB_TRATAMENTOS, "WHERE trat_id = :id", "id={$PostData['trat_id']}");
$jSON['success'] = true;
break;
case 'manager':
$RegId = $PostData['trat_id'];
unset($PostData['trat_id']);
$Read->ExeRead(DB_TRATAMENTOS, "WHERE trat_id = :id", "id={$RegId}");
$ThisPost = $Read->getResult()[0];
$PostData['trat_name'] = (!empty($PostData['trat_name']) ? Check::Name($PostData['trat_name']) : Check::Name($PostData['trat_title']));
$Read->ExeRead(DB_TRATAMENTOS, "WHERE trat_id != :id AND trat_name = :name", "id={$RegId}&name={$PostData['trat_name']}");
if ($Read->getResult()) :
$PostData['trat_name'] = "{$PostData['trat_name']}-{$RegId}";
endif;
$jSON['name'] = $PostData['trat_name'];
if (!empty($_FILES['trat_cover'])) :
$File = $_FILES['trat_cover'];
if ($ThisPost['trat_cover'] && file_exists("../../uploads/{$ThisPost['trat_cover']}") && !is_dir("../../uploads/{$ThisPost['trat_cover']}")) :
unlink("../../uploads/{$ThisPost['trat_cover']}");
endif;
$Upload = new Upload('../../uploads/');
$Upload->Image($File, $PostData['trat_name'] . '-' . time(), IMAGE_W);
if ($Upload->getResult()) :
$PostData['trat_cover'] = $Upload->getResult();
else :
$jSON['trigger'] = AjaxErro("<b class='icon-image'>ERRO AO ENVIAR CAPA:</b> Olá {$_SESSION['userLogin']['user_name']}, selecione uma imagem JPG ou PNG para enviar como capa!", E_USER_WARNING);
echo json_encode($jSON);
return;
endif;
else :
unset($PostData['trat_cover']);
endif;
$PostData['trat_status'] = (!empty($PostData['trat_status']) ? '1' : '0');
$PostData['trat_date'] = (!empty($PostData['trat_date']) ? Check::Data($PostData['trat_date']) : date('Y-m-d H:i:s'));
$PostData['trat_category_parent'] = (!empty($PostData['trat_category_parent']) ? implode(',', $PostData['trat_category_parent']) : null);
$Update->ExeUpdate(DB_TRATAMENTOS, $PostData, "WHERE trat_id = :id", "id={$RegId}");
$jSON['trigger'] = AjaxErro("<b class='icon-checkmark'>TUDO CERTO: </b> O post <b>{$PostData['trat_title']}</b> foi atualizado com sucesso!");
$jSON['view'] = BASE . "/artigo/{$PostData['trat_name']}";
break;
case 'pages_order':
if (is_array($PostData['Data'])) :
foreach ($PostData['Data'] as $RE) :
$UpdateReg = ['trat_order' => $RE[1]];
$Update->ExeUpdate(DB_TRATAMENTOS, $UpdateReg, "WHERE trat_id = :page", "page={$RE[0]}");
endforeach;
$jSON['sucess'] = true;
endif;
break;
endswitch;
//RETORNA O CALLBACK
if ($jSON) :
echo json_encode($jSON);
else :
$jSON['trigger'] = AjaxErro('<b class="icon-warning">OPSS:</b> Desculpe. Mas uma ação do sistema não respondeu corretamente. Ao persistir, contate o desenvolvedor!', E_USER_ERROR);
echo json_encode($jSON);
endif;
else :
//ACESSO DIRETO
die('<br><br><br><center><h1>Acesso Restrito!</h1></center>');
endif;