| Server IP : 54.233.248.239 / Your IP : 172.28.20.13 Web Server : Apache System : Linux ip-172-28-29-189 6.5.0-1014-aws #14~22.04.1-Ubuntu SMP Thu Feb 15 15:27:06 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.2.34-43+ubuntu22.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/vinumday2_0/app/Modules/Noticia/Views/admin/ |
Upload File : |
@extends($current_template)
@section('content')
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1>
<?php echo (isset($noticia)) ? 'Editar' : 'Criar'; ?>
<small>Informações Noticia</small>
</h1>
<ol class="breadcrumb">
<li><a href="{{ url('/admin') }}"><i class="fa fa-dashboard"></i> Dashboard</a></li>
<li><a href="{{ url('/admin/noticia') }}">Noticia</a></li>
<li class="active"><?php echo (isset($noticia)) ? 'Editar' : 'Criar'; ?></li>
</ol>
</section>
<section class="content">
<div class="row">
<div class="col-lg-12">
<div class="box">
<div class="box-header">
</div>
<!-- /.box-header -->
<div class="box-body">
<ul class="nav nav-pills nav-justified">
<li class="active"><a data-toggle="pill" href="#info-tab">Informações</a></li>
<?php if($modulo->imagem){ ?>
<li><a data-toggle="pill" href="#image-tab">Imagem</a></li>
<li><a data-toggle="pill" href="#image2-tab">Imagem Banner</a></li>
<?php } ?>
<?php /*<li><a data-toggle="pill" href="#image2-tab">Imagem Secundária</a></li><?php */ ?>
<?php if($modulo->galeria){ ?>
<li><a data-toggle="pill" href="#imagens-tab">Galeria</a></li>
<?php } ?>
</ul>
<div class="spacer"></div>
<form id="mainForm" class="form-horizontal" role="form" method="POST" action="{{ url('/admin/noticia/save') }}">
<div class="tab-content">
<div id="info-tab" class="tab-pane fade in active">
{{ csrf_field() }}
<?php if($modulo->imagem){ ?>
<input type="hidden" name="thumbnail_principal" value="<?php echo (isset($noticia)) ? $noticia->thumbnail_principal : ''; ?>">
<input type="hidden" name="thumbnail_secundaria" value="<?php echo (isset($noticia)) ? $noticia->thumbnail_secundaria : ''; ?>">
<?php } ?>
<?php if(isset($noticia)){ ?>
<input type="hidden" name="id" value="<?php echo $noticia->id; ?>"/>
<?php } ?>
<div class="form-group" style="width:100%;">
<label for="publicado" class="col-md-3 control-label">Publicado</label>
<div class="col-md-7">
<input type="checkbox" name="publicado" id="publicado" value="1" <?php echo (isset($noticia) && $noticia->publicado == 1 ? 'checked="checked"' : '')?>>
</div>
</div>
<?php foreach($fields as $field){ ?>
<?php if(get_class($field) == 'App\CampoModulo'){ ?>
<?php $campo = $field->nome; ?>
<div class="form-group" style="width:100%;">
<label for="<?php echo $field->nome; ?>" class="col-md-3 control-label"><?php echo $field->label; ?> <?php echo ($field->required) ? '*' : ''; ?></label>
<?php if($field->tipo_campo == 'INT'){ ?>
<div class="col-md-7">
<input id="<?php echo $field->nome; ?>" <?php echo ($field->required) ? 'required' : ''; ?> type="number" step="1" class="form-control" value="<?php echo (old($campo)) ? old($campo) : ((isset($noticia)) ? $noticia->$campo : $field->valor_padrao); ?>" name="<?php echo $field->nome; ?>" />
</div>
<?php } ?>
<?php if($field->tipo_campo == 'I'){ ?>
<div class="col-md-7">
<input id="<?php echo $field->nome; ?>" <?php echo ($field->required) ? 'required' : ''; ?> type="text" class="form-control" value="<?php echo (old($campo)) ? old($campo) : ((isset($noticia)) ? $noticia->$campo : $field->valor_padrao); ?>" name="<?php echo $field->nome; ?>" />
</div>
<?php } ?>
<?php if($field->tipo_campo == 'N'){ ?>
<div class="col-md-7">
<input id="<?php echo $field->nome; ?>" <?php echo ($field->required) ? 'required' : ''; ?> type="number" class="form-control" value="<?php echo (old($campo)) ? old($campo) : ((isset($noticia)) ? $noticia->$campo : $field->valor_padrao); ?>" name="<?php echo $field->nome; ?>" />
</div>
<?php } ?>
<?php if($field->tipo_campo == 'T'){ ?>
<div class="col-md-7">
<textarea id="<?php echo $field->nome; ?>" <?php echo ($field->required) ? 'required' : ''; ?> class="form-control tinymce" name="<?php echo $field->nome; ?>"><?php echo (old($campo)) ? old($campo) : ((isset($noticia)) ? $noticia->$campo : $field->valor_padrao); ?></textarea>
</div>
<?php } ?>
<?php if($field->tipo_campo == 'D'){ ?>
<div class="col-md-7">
<input id="<?php echo $field->nome; ?>" <?php echo ($field->required) ? 'required' : ''; ?> type="date" class="form-control" value="<?php echo (old($campo)) ? old($campo) : ((isset($noticia)) ? $noticia->$campo : $field->valor_padrao); ?>" name="<?php echo $field->nome; ?>" />
</div>
<?php } ?>
<?php if($field->tipo_campo == 'DT'){ ?>
<div class="col-md-7">
<input id="<?php echo $field->nome; ?>" <?php echo ($field->required) ? 'required' : ''; ?> type="datetime-local" class="form-control" value="<?php echo (old($campo)) ? old($campo) : ((isset($noticia)) ? str_replace(' ','T',$noticia->$campo) : $field->valor_padrao); ?>" name="<?php echo $field->nome; ?>" />
</div>
<?php } ?>
<?php if($field->tipo_campo == 'TIME'){ ?>
<div class="col-md-7">
<input id="<?php echo $field->nome; ?>" <?php echo ($field->required) ? 'required' : ''; ?> type="time" class="form-control" value="<?php echo (old($campo)) ? old($campo) : ((isset($noticia)) ? $noticia->$campo : $field->valor_padrao); ?>" name="<?php echo $field->nome; ?>" />
</div>
<?php } ?>
<?php if($field->tipo_campo == 'S'){ ?>
<div class="col-md-7">
<select id="<?php echo $field->nome; ?>" <?php echo ($field->required) ? 'required' : ''; ?> class="form-control" name="<?php echo $field->nome; ?>">
<option <?php echo (isset($noticia) && $noticia->$campo == 1) ? 'selected' : ''; ?> value="1">Sim</option>
<option <?php echo (isset($noticia) && $noticia->$campo == 0) ? 'selected' : ''; ?> value="0">Não</option>
</select>
</div>
<?php } ?>
<?php if($field->tipo_campo == 'E'){ ?>
<div class="col-md-7">
<select id="<?php echo $field->nome; ?>" <?php echo ($field->required) ? 'required' : ''; ?> class="form-control" name="<?php echo $field->nome; ?>">
<?php foreach ($field->options as $campoOption): ?>
<option <?php echo (isset($noticia) && $noticia->$campo == $campoOption->chave) ? 'selected' : ''; ?> value="<?php echo $campoOption->chave; ?>"><?php echo $campoOption->valor; ?></option>
<?php endforeach; ?>
</select>
</div>
<?php } ?>
<?php if($field->tipo_campo == 'SI'){ ?>
<div class="col-md-5">
<?php $icons = explode(',',file_get_contents('fonts/icons-font-awesome.txt')); ?>
<select id="<?php echo $field->nome; ?>" <?php echo ($field->required) ? 'required' : ''; ?> class="form-control select2 select-icone" name="<?php echo $field->nome; ?>">
<?php foreach ($icons as $icone): ?>
<option <?php echo (isset($noticia) && $icone == $noticia->$campo) ? 'selected' : ''; ?> value="<?php echo $icone; ?>"><?php echo $icone; ?></option>
<?php endforeach; ?>
</select>
</div>
<div class="icone-viewer">
<i class="fa fa-3x"></i>
</div>
<?php } ?>
</div>
<?php }else{ ?>
<?php $campo = $field->nome; ?>
<div class="form-group" style="width:100%;">
<label for="<?php echo $field->nome; ?>" class="col-md-3 control-label"><?php echo $field->label; ?> *</label>
<div class="col-md-7">
<select id="<?php echo $field->nome; ?>" required class="form-control select2" name="<?php echo $field->nome; ?>">
<?php $nomeVariavel = 'array_'.$field->nome; ?>
<?php foreach ($$nomeVariavel as $option): ?>
<?php $campoNome = $field->campoRelacionado->nome; ?>
<option <?php echo (isset($noticia) && $noticia->$campo == $option->id) ? 'selected' : ''; ?> value="<?php echo $option->id; ?>"><?php echo $option->$campoNome; ?></option>
<?php endforeach; ?>
</select>
</div>
</div>
<?php } ?>
<?php } ?>
</div>
<?php /* ?>
<div id="seo-tab" class="tab-pane fade">
<div class="form-group">
<label for="meta_keywords" class="col-md-3 control-label">URL Amigável</label>
<div class="col-md-7">
<input type="text" class="form-control" name="slug" value="<?php echo isset($noticia) ? $noticia->slug : ''; ?>">
</div>
</div>
<div class="form-group">
<label for="meta_keywords" class="col-md-3 control-label">Palavras Chave</label>
<div class="col-md-7">
<div id="meta_keywords"></div>
</div>
</div>
<div class="form-group">
<label for="meta_descricao" class="col-md-3 control-label">Meta Descrição</label>
<div class="col-md-7">
<textarea id="meta_descricao" type="text" class="form-control" name="meta_descricao"><?php echo (isset($noticia)) ? $noticia->meta_descricao : ''; ?></textarea>
</div>
</div>
<script>
new Taggle('meta_keywords', {
<?php if(isset($noticia) && $noticia->meta_keywords != ''){ ?>
tags: [
<?php $tags = explode(',',$noticia->meta_keywords); ?>
<?php foreach($tags as $tag){ ?>
'<?php echo $tag; ?>',
<?php } ?>
],
<?php }else{ ?>
tags: [
'noticia'
],
<?php } ?>
duplicateTagClass: 'bounce',
hiddenInputName: 'meta_keywords[]'
});
</script>
</div>
<?php */ ?>
</form>
<?php if($modulo->imagem){ ?>
<div id="image-tab" class="tab-pane fade">
<script type="text/javascript">
var image_campo = 'thumbnail_principal';
var cropperOptions = {
viewMode: 1,
dragMode: 'move',
aspectRatio: 10 / 8,
cropBoxMovable: true,
cropBoxResizable: true,
toggleDragModeOnDblclick: false
};
</script>
<div class="form-horizontal">
<div class="form-group">
<label for="image" class="col-md-3 control-label">Imagem</label>
<div class="col-md-7">
<form action="{{ url('admin/noticia/upload') }}" method="post" class="form single-dropzone" id="my-dropzone" enctype="multipart/form-data">
<input type="hidden" name="_token" value="{{{ csrf_token() }}}" />
<div id="img-thumb-preview">
<img id="img-thumb" class="user size-lg img-thumbnail img-responsive" src="<?php echo (isset($noticia) && $noticia->thumbnail_principal != '') ? get_file_s3($noticia->thumbnail_principal, 'noticia') : 'http://placehold.it/300x100'; ?>">
</div>
<button type="button" style="display:none;" id="crop-image" class="btn btn-success">Salvar Corte</button>
<button id="upload-submit" class="btn btn-default margin-t-5"><i class="fa fa-upload"></i> Upload Imagem</button>
</form>
<form class="hidden" action="{{ url('admin/noticia/crop') }}" id="cropForm" method="POST">
<input type="hidden" name="_token" value="{{{ csrf_token() }}}" />
<input type="hidden" name="data_crop">
<input type="hidden" name="file_name">
</form>
</div>
</div>
</div>
</div>
<div id="image2-tab" class="tab-pane fade">
<script type="text/javascript">
var image2_campo = 'thumbnail_secundaria';
var cropperOptions2 = {
viewMode: 1,
dragMode: 'move',
aspectRatio: 712 / 270,
cropBoxMovable: true,
cropBoxResizable: true,
toggleDragModeOnDblclick: false
};
</script>
<div class="form-horizontal">
<div class="form-group">
<label for="image" class="col-md-3 control-label">Imagem</label>
<div class="col-md-7">
<form action="{{ url('admin/noticia/upload') }}" method="post" class="form single-dropzone" id="my-dropzone2" enctype="multipart/form-data">
<input type="hidden" name="_token" value="{{{ csrf_token() }}}" />
<div id="img-thumb-preview2">
<img id="img-thumb2" class="user size-lg img-thumbnail img-responsive" src="<?php echo (isset($noticia) && $noticia->thumbnail_secundaria != '') ? get_file_s3($noticia->thumbnail_secundaria, 'noticia') : 'http://placehold.it/300x100'; ?>">
</div>
<button type="button" style="display:none;" id="crop-image2" class="btn btn-success">Salvar Corte</button>
<button id="upload-submit2" class="btn btn-default margin-t-5"><i class="fa fa-upload"></i> Upload Imagem</button>
</form>
<form class="hidden" action="{{ url('admin/noticia/crop') }}" id="cropForm2" method="POST">
<input type="hidden" name="_token" value="{{{ csrf_token() }}}" />
<input type="hidden" name="data_crop">
<input type="hidden" name="file_name">
</form>
</div>
</div>
</div>
</div>
<?php } ?>
<?php if($modulo->galeria){ ?>
<div id="imagens-tab" class="tab-pane fade">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 lista-galeria">
<?php if(isset($noticia) && count($noticia->imagens)){?>
<?php foreach ($noticia->imagens as $image){?>
<div id="item_<?php echo $image->id; ?>" class="item imagem-galeria-<?php echo $image->id; ?>">
<div style="background-repeat: no-repeat; background-image: url(<?php echo get_file_s3($image->thumbnail_principal, 'noticia');?>);" class="thumb"></div>
<span data="<?php echo $image->id; ?>" data-modulo="noticia" class="icon delete-image" aria-hidden="true"><i class="fa fa-trash"></i></span>
<a href="<?php echo get_file_s3($image->thumbnail_principal, 'noticia');?>" target="_blank"><span class="icon pull-right" aria-hidden="true"><i class="fa fa-search"></i></span></a>
</div>
<?php }?>
<?php }?>
</div>
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<form class="dropzone" id="galeria-dropzone" method="POST" action="<?php echo (isset($noticia)) ? url('/admin/noticia/upload_galeria/'.$noticia->id) : url('/admin/noticia/upload_galeria/'.$nextId); ?> " enctype="multipart/form-data">
<input type="hidden" name="_token" value="{{ csrf_token() }}" />
<div class="fallback">
<input name="file" type="file" multiple />
</div>
<form>
</div>
</div>
<?php } ?>
</div>
</div>
<!-- /.box-body -->
<div class="box-footer">
<?php if(isset($noticia) && $current_role->hasAccess($current_module->nome_tabela.'.update') || !isset($noticia) && $current_role->hasAccess($current_module->nome_tabela.'.create')){ ?>
<div class="text-center">
<button type="submit" class="btn btn-primary">
<i class="fa fa-btn fa-pencil-alt"></i> Salvar
</button>
</div>
<?php } ?>
</div>
</div>
<!-- /.box -->
</div>
</div>
</section>
</div>
<script type="text/javascript">
$(document).ready(function(){
tinymce.init({
selector:'.tinymce',
height:800,
entity_encoding: "raw",
menubar:false,
plugins: [
"advlist autolink lists link image charmap print preview anchor",
"searchreplace visualblocks code fullscreen",
"insertdatetime media table contextmenu paste jbimages table textcolor colorpicker"
],
toolbar: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image removeformat | table tabledelete | forecolor backcolor",
relative_urls: false,
content_css : "/css/content.css",
force_br_newlines : true,
force_p_newlines : false,
forced_root_block : '', // Needed for 3.x,
// images_upload_url : '/admin/noticia/upload-tinymce',
automatic_uploads : true,
file_picker_types: 'image',
// images_upload_base_path: '/uploads/tinymce/',
file_picker_callback: function(cb, value, meta) {
var input = document.createElement('input');
input.setAttribute('type', 'file');
input.setAttribute('accept', 'image/*');
input.onchange = function() {
var file = this.files[0];
var reader = new FileReader();
reader.onload = function () {
var id = 'blobid' + (new Date()).getTime();
var blobCache = tinymce.activeEditor.editorUpload.blobCache;
var base64 = reader.result.split(',')[1];
var blobInfo = blobCache.create(id, file, base64);
blobCache.add(blobInfo);
// call the callback and populate the Title field with the file name
cb(blobInfo.blobUri(), { title: file.name });
};
reader.readAsDataURL(file);
};
input.click();
},
images_upload_handler: function (blobInfo, success, failure) {
var xhr, formData;
xhr = new XMLHttpRequest();
xhr.withCredentials = false;
xhr.open('POST', '/admin/noticia/upload-tinymce');
xhr.onload = function() {
var json;
if (xhr.status != 200) {
failure('HTTP Error: ' + xhr.status);
return;
}
json = JSON.parse(xhr.responseText);
if (!json || typeof json.file_path != 'string') {
failure('Invalid JSON: ' + xhr.responseText);
return;
}
success(json.file_path);
};
formData = new FormData();
formData.append('file', blobInfo.blob(), blobInfo.filename());
xhr.send(formData);
}
});
});
</script>
@endsection