Created
December 5, 2015 23:34
-
-
Save valdiney/3275cf70c0af27c63edf to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php require_once dirname(__DIR__).'../../start/app_start.php'; Session::start(); | |
$mapas_model = Container::Mapas(); | |
$upload_model = Container::Upload(); | |
$resaze_imagem_model = Container::Image(); | |
# Realiza o Cadastro da Imagem dos Mapas | |
if (Context::get_context('cadastrar_imagem')) | |
{ | |
$data['cadastrado_por'] = Session::get_session('id_usuario'); | |
# Seta os Valores da Classe de Upload | |
$upload_model->setInputFile($_FILES['imagem_mapa']); | |
$upload_model->sendTo('imgMapas/'); | |
$upload_model->SetMaxFileSize(2); | |
$upload_model->setExtensions(array('jpg','png')); | |
if (empty($_FILES['imagem_mapa']['name'])) | |
{ | |
Session::flash('error', 'Escolha um arquivo de imagem antes de tentar realizar o cadastro.'); | |
return Redirect::to_view('mapas.cadastrar_mapa_imagem'); | |
} | |
if ($upload_model->getErros() == 1) | |
{ | |
Session::flash('error', 'Erro Critico! Entre em contato com o Administrador do Sistema.'); | |
return Redirect::to_view('mapas.cadastrar_mapa_imagem'); | |
} | |
if ($upload_model->getErros() == 3) | |
{ | |
Session::flash('error', 'Essa imagem é muito grande. Escolha uma imagem menor.'); | |
return Redirect::to_view('mapas.cadastrar_mapa_imagem'); | |
} | |
if ($upload_model->getErros() == 4) | |
{ | |
Session::flash('error', 'O Sistema não aceita esse tipo de Arquivo. Por favor, somente <b>(JPG e PNG)</b>'); | |
return Redirect::to_view('mapas.cadastrar_mapa_imagem'); | |
} | |
# Realiza o Upload da Imagem | |
if ($upload_model->move()) | |
{ | |
# Recupera o caminho completo da Imagem | |
$data['imagem_mapa'] = $upload_model->getPath(); | |
# Realiza uma cópia da imagem e envia para pasta Thumb | |
copy($data['imagem_mapa'], 'imgMapas/thumbs/'.$upload_model->getNameOnly()); | |
# Realiza uma modificação no tamanho da imagem width = 300px, height = 200px | |
$resaze_imagem_model->crop = new Image('imgMapas/thumbs/'.$upload_model->getNameOnly()); | |
$resaze_imagem_model->crop->proportionalImageResize(300,200); | |
# Salva a foto com as novas medidas | |
$resaze_imagem_model->crop->save(); | |
} | |
# Realiza o Cadastro da Imagem | |
if ($mapas_model->save($data)) | |
{ | |
# Recupera os arquivos do Mapa que acabou de ser cadastrado via ID de quem fez o Cadastro | |
# O ID desse arquivo será enviado para a página de Cadastro dos outros dados do Mapa | |
$recupera_mapa_id = $mapas_model->last_id(); | |
$mensagem = 'Imagem do Mapa foi cadastrado com Sucesso'; | |
$mensagem .= ' Continue com a segunda parte do Cadastro'; | |
Session::flash('success', $mensagem); | |
return Redirect::to_view('mapas.cadastro_informacaos', "id_mapa_cadastrado={$recupera_mapa_id}"); | |
} | |
} | |
# Cadastro das Informações do Mapa | |
if (Context::get_context('cadastrar_informacoes_mapas')) | |
{ | |
# Form Inicial | |
$data['nome_mapa'] = Request::in_post('nome_mapa'); | |
$data['descricao_mapa'] = Request::in_post('descricao_mapa'); | |
$data['link_google_maps'] = Request::in_post('link_google_maps'); | |
# Form Informações Gerais | |
$data['instituicao_ogirem_mapas'] = Request::in_post('instituicao_ogirem_mapas'); | |
$data['notacao_original_mapas'] = Request::in_post('notacao_original_mapas'); | |
$data['titulo_mapas'] = Request::in_post('titulo_mapas'); | |
$data['autor_mapas'] = Request::in_post('autor_mapas'); | |
$data['seculo_mapas'] = Request::in_post('seculo_mapas'); | |
$data['ano_execucao_mapas'] = Request::in_post('ano_execucao_mapas'); | |
$data['local_execucao_mapas'] = Request::in_post('local_execucao_mapas'); | |
$data['idioma_mapas'] = Request::in_post('idioma_mapas'); | |
$data['assunto_mapas'] = Request::in_post('assunto_mapas'); | |
$data['escola_mapas'] = Request::in_post('escola_mapas'); | |
$data['notas_mapas'] = Request::in_post('notas_mapas'); | |
$data['incricoes_mapas'] = Request::in_post('incricoes_mapas'); | |
# Form Dados Geograficos | |
$data['escala_mapas'] = Request::in_post('escala_mapas'); | |
$data['meridiano_origem_mapas'] = Request::in_post('meridiano_origem_mapas'); | |
$data['rosa_dos_ventos_mapas'] = Request::in_post('rosa_dos_ventos_mapas'); | |
$data['tecnica_representacao_mapas'] = Request::in_post('tecnica_representacao_mapas'); | |
$data['cobertura_geografica_mapas'] = Request::in_post('cobertura_geografica_mapas'); | |
# Form Dados Fisicos | |
$data['categoria_mapas'] = Request::in_post('categoria_mapas'); | |
$data['impressao_mapas'] = Request::in_post('impressao_mapas'); | |
$data['comprimento_mapas'] = Request::in_post('comprimento_mapas'); | |
$data['largura_mapas'] = Request::in_post('largura_mapas'); | |
$data['cor_mapas'] = Request::in_post('cor_mapas'); | |
# Form Comentários Gerais | |
$data['comentarios_observacao'] = Request::in_post('comentarios_observacao'); | |
$data['referencia'] = Request::in_post('referencia'); | |
# Dados Adicionais, Identificação de Cadastro | |
$data['cadastrado_por'] = Session::get_session('id_usuario'); | |
$data['data_cadastro'] = Date::date_now('br'); | |
# Id do Mapa que será Edtado | |
$id_mapa = Request::in_get('id_mapa'); | |
# Verifica se Trata-se de uma requisição de para segunda parte do Cadastro dos Mapas ou uma Edição | |
if (Context::get_context('editar_somente_informacoes_mapas')) | |
{ | |
$data['editado_por'] = $data['cadastrado_por']; | |
$data['data_edicao'] = Date::date_now('br'); | |
# Realiza a Edição dos Mapas | |
if ($mapas_model->update($data, $id_mapa)) | |
{ | |
Session::flash('success', 'Mapa Editado com Sucesso.'); | |
return Redirect::to_view('mapas.editar_somente_informacoes_mapas', "cadastro_completo=true|id_mapa={$id_mapa}"); | |
} | |
} | |
# Realiza uma Edição (Segunda parte do Cadastro dos Mapas) | |
if ($mapas_model->update($data, $id_mapa)) | |
{ | |
Session::flash('success', 'Mapa Cadastrado com Sucesso.'); | |
return Redirect::to_view('admin_home.mapas_cadastrados'); | |
} | |
} | |
# Verifica qual informação vinculada ao Mapa o Usuário deseja Editar | |
if (Context::get_context('opcao_edicao_mapa')) | |
{ | |
$id_mapa = Request::in_get('id_mapa'); | |
$opcao = Request::in_post('opcao'); | |
if (Filter::is_empty($opcao)) | |
{ | |
Session::flash('error', 'Escolha uma das opções antes de Confirmar.'); | |
return Redirect::to_view('mapas.editar_mapas', "id_mapa={$id_mapa}"); | |
} | |
# Verifica qual Opção de Edição foi escolhida pelo Usuário | |
if ($opcao == 'opcao_editar_imagem') | |
{ | |
return Redirect::to_view('mapas.editar_somente_imagem_mapa', "id_mapa={$id_mapa}"); | |
} | |
if ($opcao == 'opcao_editar_informacoes') | |
{ | |
return Redirect::to_view('mapas.editar_somente_informacoes_mapas', "id_mapa={$id_mapa}"); | |
} | |
} | |
# Realiza a Edição da Imagem do Mapa | |
if (Context::get_context('editar_imagem')) | |
{ | |
$data['imagem_mapa'] = $_FILES['imagem_mapa']; | |
$id_mapa = Request::in_get('id_mapa'); | |
if (empty($data['imagem_mapa']['name'])) | |
{ | |
Session::flash('error', 'Escolha um arquivo de imagem antes de tentar realizar o cadastro.'); | |
return Redirect::to_view('mapas.editar_somente_imagem_mapa', "id_mapa={$id_mapa}"); | |
} | |
# Busca os dados do Mapa | |
$data_mapas = $mapas_model->find($id_mapa); | |
# Retorna o caminho, nome e extensão das iimagens de Thumbnails | |
$thumbnail = $mapas_model->extrai_nome_thumbnail($data_mapas['imagem_mapa']); | |
# Verifica se essa Imagem do Mapa existe na pasta | |
if (file_exists($data_mapas['imagem_mapa'])) | |
{ | |
# Deleta a Imagem Atual do Mapa | |
unlink($data_mapas['imagem_mapa']); | |
# Deleta a Imagem de Thumbnail | |
if (file_exists($thumbnail)) { | |
unlink($thumbnail); | |
} | |
# Seta os Valores da Classe de Upload | |
$upload_model->setInputFile($_FILES['imagem_mapa']); | |
$upload_model->sendTo('imgMapas/'); | |
$upload_model->SetMaxFileSize(10); | |
$upload_model->setExtensions(array('jpg','png')); | |
if ($upload_model->getErros() == 1) | |
{ | |
Session::flash('error', 'Erro Critico! Entre em contato com o Administrador do Sistema.'); | |
return Redirect::to_view('mapas.editar_somente_imagem_mapa'); | |
} | |
if ($upload_model->getErros() == 3) | |
{ | |
Session::flash('error', 'Essa imagem é muito grande. Escolha uma imagem menor.'); | |
return Redirect::to_view('mapas.editar_somente_imagem_mapa'); | |
} | |
if ($upload_model->getErros() == 4) | |
{ | |
Session::flash('error', 'O Sistema não aceita esse tipo de Arquivo. Por favor, somente <b>(JPG e PNG)</b>'); | |
return Redirect::to_view('mapas.editar_somente_imagem_mapa'); | |
} | |
# Realiza o Upload da Imagem | |
if ($upload_model->move()) | |
{ | |
# Recupera o caminho completo da Imagem | |
$data['imagem_mapa'] = $upload_model->getPath(); | |
# Realiza uma cópia da imagem e envia para pasta Thumb | |
copy($data['imagem_mapa'], 'imgMapas/thumbs/'.$upload_model->getNameOnly()); | |
# Realiza uma modificação no tamanho da imagem width = 300px, height = 200px | |
$resaze_imagem_model->crop = new Image('imgMapas/thumbs/'.$upload_model->getNameOnly()); | |
$resaze_imagem_model->crop->proportionalImageResize(300,200); | |
# Salva a foto com as novas medidas | |
$resaze_imagem_model->crop->save(); | |
} | |
} | |
else | |
{ | |
# Continua com a mesma Imagem do Mapa que já tinha | |
$data['imagem_mapa'] = $data_mapas['imagem_mapa']; | |
} | |
if ($mapas_model->update($data, $id_mapa)) | |
{ | |
Session::flash('success', 'Imagem do Mapa Editada com Sucesso.'); | |
return Redirect::to_view('mapas.editar_somente_imagem_mapa', "id_mapa={$id_mapa}"); | |
} | |
} | |
# Realiza a Edição da Imagem do Mapa | |
if (Context::get_context('deletar_mapa')) | |
{ | |
$id_mapa = Request::in_get('id_mapa'); | |
# Busca os dados do Mapa | |
$data_mapas = $mapas_model->find($id_mapa); | |
# Retorna o caminho, nome extensão das iimagens de Thumbnails | |
$thumbnail = $mapas_model->extrai_nome_thumbnail($data_mapas['imagem_mapa']); | |
# Verifica se essa Imagem do Mapa existe na pasta | |
if (file_exists($data_mapas['imagem_mapa'])) | |
{ | |
# Deleta a Imagem na Pasta | |
unlink($data_mapas['imagem_mapa']); | |
# Deleta a Imagem de Thumbnail | |
if (file_exists($thumbnail)) { | |
unlink($thumbnail); | |
} | |
} | |
# Realiza a Deleção dos Arquivos do Mapa | |
if ($mapas_model->delete($id_mapa)) | |
{ | |
Session::flash('success', 'Mapa Deletado com Sucesso.'); | |
return Redirect::to_view('admin_home.mapas_cadastrados'); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment