Cambios en titulo, en boton fojas, y en indices online

This commit is contained in:
2020-03-31 19:41:26 -03:00
parent 8ef8b0df42
commit 2ae6826ff4
19 changed files with 213 additions and 66 deletions

2
.gitignore vendored
View File

@ -6,7 +6,7 @@ composer.lock
/resources/cache/
# Uploads
/upload/
/public/uploads/
# ENV
.ENV

11
TODO.md Normal file
View File

@ -0,0 +1,11 @@
# TODO
1. Edición de Equipos
5. Titulo Web
- Notaría Patricio Raby Benavente
6. Diseño respuestas
- formulario
- admin
- activacion
- subir archivo
- aviso

View File

@ -8,8 +8,12 @@ return [
'{folders.resources}',
'cache'
])),
'folders.upload' => DI\string(implode(DIRECTORY_SEPARATOR, [
'folders.public' => DI\string(implode(DIRECTORY_SEPARATOR, [
'{folders.base}',
'public'
])),
'folders.upload' => DI\string(implode(DIRECTORY_SEPARATOR, [
'{folders.public}',
'uploads'
])),
'folders.data' => DI\string(implode(DIRECTORY_SEPARATOR, [
@ -38,14 +42,17 @@ return [
'{urls.assets}',
'fonts'
])),
'urls.uploads' => DI\string(implode('', [
'file://',
'{folders.upload}'
'urls.uploads' => DI\string(implode('/', [
'{urls.base}',
'uploads'
])),
'urls.metro.logo' => 'https://img.freepik.com/free-icon/santiago-metro-logo_318-66588.jpg?size=338&ext=jpg',
'urls.notaria.turno' => 'http://www.notariasdeturno.cl',
'urls.fojas' => 'http://fojas.cl/?motv=vista_descarga_web&cons_sel=not_patricrabybenavent',
'urls.atencion' => 'https://zeroq.cl/#/local/notaria-patricio-raby/48',
'urls.atencion.logo' => 'https://zeroq.cl/img/logo-small.png',
'urls.map' => 'https://maps.google.com/maps?hl=es&q=Notaria%20Patricio%20Raby+(Notaria%20Patricio%20Raby)&ie=UTF8&z=16&iwloc=B&output=embed',
'urls.map2' => 'https://www.google.com/maps/embed/v1/place?q=notaria+patricio+raby&key=AIzaSyBFw0Qbyq9zTFTd-tUY6dZWTgaQzuU17R8',
'styles' => [
'https://cdnjs.cloudflare.com/ajax/libs/fomantic-ui/2.8.4/semantic.min.css',
DI\string(implode('/', ['{urls.styles}', 'iconmoon.css'])),
@ -66,6 +73,14 @@ return [
DI\string(implode('/', ['{urls.fonts}', 'iconmoon.eof']))
]
],
'email.recepcion' => 'recepcion@notariaraby.cl',
'email.administrativo' => 'vwielandt@notariaraby.cl',
'email' => [
'host' => 'smtp.notariaraby.cl',
'username' => '',
'password' => '',
'secure' => 'ssl'
],
'scripts' => [
'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js',
'https://cdnjs.cloudflare.com/ajax/libs/fomantic-ui/2.8.4/semantic.min.js',

View File

@ -18,6 +18,7 @@ return [
'scripts' => $container->get('urls.scripts'),
'fonts' => $container->get('urls.fonts')
],
'fojas' => $container->get('urls.fojas'),
'notaria_turno' => $container->get('urls.notaria.turno'),
'atencion' => (object) [
'url' => $container->get('urls.atencion'),
@ -36,5 +37,10 @@ return [
$manager = new ProVM\Common\Service\Filemanager($c->get(Symfony\Component\Filesystem\Filesystem::class), $c->get('folders.upload'));
$manager->addFolder('data', $c->get('folders.data'));
return $manager;
}
},
Nette\Mail\SendmailMailer::class => DI\create(),
Nette\Mail\SmtpMailer::class => function(Container $c) {
return new Nette\Mail\SmtpMailer($c->get('email'));
},
Nette\Mail\Message::class => DI\create()
];

View File

@ -4,6 +4,7 @@ namespace ProVM\NotariaRaby\Common\Controller\Web\Admin;
use Psr\Http\Message\ServerRequestInterface as Request;
use Psr\Http\Message\ResponseInterface as Response;
use Slim\Views\Blade as View;
use Carbon\Carbon;
use ProVM\Common\Service\Filemanager;
class Admin {
@ -17,7 +18,13 @@ class Admin {
'activo' => false
];
}
$months = (object) ['full' => [], 'short' => []];
$m = Carbon::createFromDate(0, 1, 1);
for ($i = 0; $i < 12; $i ++) {
$months->full []= ucwords($m->copy()->addMonths($i)->locale('es_ES')->isoFormat('MMMM'));
$months->short []= ucwords($m->copy()->addMonths($i)->locale('es_ES')->isoFormat('MMM'));
}
$transparencia = $filemanager->folder('data')->load('transparencia.yml')->activo;
return $view->render($response, 'admin.admin', compact('aviso', 'transparencia'));
return $view->render($response, 'admin.admin', compact('aviso', 'transparencia', 'months'));
}
}

View File

@ -14,8 +14,12 @@ class Documentos {
$filename = implode(DIRECTORY_SEPARATOR, [
$container->get('folders.upload'),
$post['filename'] . '.pdf'
$post['filename']
]);
if (isset($post['month'])) {
$filename .= '_' . implode('_', array_reverse(explode(' ', $post['month'])));
}
$filename .= '.pdf';
$file->moveTo($filename);
$status = (file_exists($filename) and filemtime($filename) == time());

View File

@ -1,28 +1,45 @@
<?php
namespace ProVM\NotariaRaby\Common\Controller\Web;
use Psr\Container\ContainerInterface as Container;
use Psr\Http\Message\ServerRequestInterface as Request;
use Psr\Http\Message\ResponseInterface as Response;
use Slim\Views\Blade as View;
use Nette\Mail\SendmailMailer as Mailer;
use Nette\Mail\Message;
class Contacto {
public function __invoke(Request $request, Response $response, View $view): Response {
$google = (object) [
'api' => ''
];
$map = (object) [
'lat' => -33.415938,
'long' => -70.591688
];
$url = 'https://www.google.com/maps/embed/v1/place?q=notaria+patricio+raby&key=AIzaSyBFw0Qbyq9zTFTd-tUY6dZWTgaQzuU17R8';
$url = 'https://maps.google.com/maps?hl=es&amp;q=Notaria%20Patricio%20Raby+(Notaria%20Patricio%20Raby)&amp;ie=UTF8&amp;z=16&amp;iwloc=B&amp;output=embed';
public function __invoke(Request $request, Response $response, View $view, Container $container): Response {
$url = $container->get('urls.map');
return $view->render($response, 'contacto', compact('url'));
}
public function formulario(Request $request, Response $response): Response {
public function formulario(Request $request, Response $response, Mailer $mailer, Container $container): Response {
$post = $request->getParsedBody();
$body = [];
foreach ($post as $key => $val) {
$body []= $key . ': ' . $val;
}
$body = implode(PHP_EOL, $body);
$subject = 'Contacto Web - ' . $post['nombre'];
$message = $container->make(Message::class)
->setFrom($post['email'], $post['nombre'])
->addTo($container->get('email.recepcion'))
->addCc($container->get('email.administrativo'))
->setSubject($subject)
->setBody($body)
->setHTMLBody(nl2br($body));
//$mailer->send($message);
$output = [
'informacion' => $post
'informacion' => $post,
'mail' => [
'to' => $container->get('email.recepcion'),
'cc' => $container->get('email.administrativo'),
'asunto' => $subject,
'mensaje' => $body
]
];
$response->getBody()->write(json_encode($output));
return $response

View File

@ -5,12 +5,13 @@ use Psr\Http\Message\ServerRequestInterface as Request;
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Container\ContainerInterface as Container;
use Slim\Views\Blade as View;
use Carbon\Carbon;
use ProVM\Common\Service\Filemanager;
class Home {
public function __invoke(Request $request, Response $response, View $view, Filemanager $manager, Container $container): Response {
$banner = (object) [
'titulo' => "5° NOTARÍA DE SANTIAGO\nPATRICIO RABY BENAVENTE",
'titulo' => "5° NOTARÍA DE SANTIAGO",
'contenido' => "Gertrudis Echenique 30, of. 32, El Golf\n<i class=\"large icon icon-metro\"></i> Metro Alcantara"
];
@ -23,7 +24,13 @@ class Home {
});
$aviso = $manager->folder('data')->load('aviso.yml');
$transparencia = $manager->folder('data')->load('transparencia.yml')->activo;
return $view->render($response, 'home', compact('banner', 'aviso', 'links', 'transparencia'));
$months = (object) ['full' => [], 'short' => []];
$m = Carbon::createFromDate(0, 1, 1);
for ($i = 0; $i < 12; $i ++) {
$months->full []= ucwords($m->copy()->addMonths($i)->locale('es_ES')->isoFormat('MMMM'));
$months->short []= ucwords($m->copy()->addMonths($i)->locale('es_ES')->isoFormat('MMM'));
}
return $view->render($response, 'home', compact('banner', 'aviso', 'links', 'transparencia', 'months'));
}
}

View File

@ -13,7 +13,9 @@
"symfony/var-dumper": "^5.0",
"symfony/filesystem": "^5.0",
"tuupola/slim-basic-auth": "^3.2",
"mustangostang/spyc": "^0.6.3"
"mustangostang/spyc": "^0.6.3",
"nette/mail": "^3.1",
"nesbot/carbon": "^2.32"
},
"require-dev": {
"phpunit/phpunit": "^8.5",

View File

@ -54,7 +54,7 @@
#numero {
background-position: center;
background-attachment: fixed;
height: 15rem;
min-height: 15rem;
margin: 0 !important;
display: block;
}
@ -123,8 +123,8 @@
max-height: 20rem !important;
}
#indice .contenido {
padding-top: 9rem !important;
padding-bottom: 9rem !important;
padding-top: 5rem !important;
padding-bottom: 5rem !important;
color: rgba(0, 0, 0, 0.9) !important;
}
#indice .contenido .titulo {

View File

@ -10,9 +10,12 @@ html {
}
#page_menu .brand {
font-family: Helvetica, Arial !important;
font-weight: 900 !important;
font-weight: 600 !important;
font-size: 2rem;
}
#page_menu .side {
font-size: 1rem;
}
#page_menu .item:first-child {
padding-left: 0 !important;
}

View File

@ -1,13 +0,0 @@
activo: true
descripcion: "La función del notario Público se encuentra regida por las normas establecidas en el Título XI párrafo 7 artículo 399 al 445 del Código Orgánico de tribunales. Son funciones del Notario, entre otras, las contenidas en el artículo 401 del código señalado y que se expresan a continuación:"
funciones:
- Extender los instrumentos públicos con arreglo a las instrucciones que, de palabra o por escrito, les dieren las partes otorgantes.
- Levantar inventarios solemnes.
- Efectuar protestos de letras de cambio y demás documentos mercantiles.
- "Notificar los traspasos de acciones, constituciones y notificaciones de prendas que se les solicitaren."
- Asistir a las juntas generales de accionistas de sociedades anónimas, para los efectos que la ley o reglamento de ellas lo exigieren.
- En general dar fe de los hechos para que fueren requeridos y que no estuvieren encomendados a otros funcionarios.
- Guardar y conservar en riguroso orden cronológico los documentos que ante ellos se otorguen, en forma de precaver todo extravío y hacer fácil y expedito su examen.
- Otorgar certificados o testimonios de los actos celebrados ante ellos o protocolizados en sus registros.
- Facilitar a cualquiera persona que lo solicite el examen de los instrumentos públicos que ante ellos se otorguen y documentos que se protocolicen.
- Autorizar las firmas que se estampen en documentos privados, sea en su presencia o cuya autenticidad les conste.

View File

@ -4,7 +4,11 @@
{{$descripcion}}
</div>
<div class="column">
<a href="#" data-link="{{$link}}" data-title="{{$descripcion}}" class="form_link">
<a href="#" data-link="{{$link}}" data-title="{{$descripcion}}"
@if (isset($mod))
data-mod="{{$mod}}"
@endif
class="form_link">
@include('admin.uicon')
</a>
</div>

View File

@ -2,7 +2,7 @@
Carga de documentos
</h4>
<div class="ui list">
@include('admin.documento', ['descripcion' => 'Escrituras Públicas', 'link' => 'escrituras_publicas'])
@include('admin.documento', ['descripcion' => 'Índices', 'link' => 'indices', 'mod' => 'fecha'])
@include('admin.documento', ['descripcion' => 'Balances Anuales', 'link' => 'balances_anuales'])
@include('admin.documento', ['descripcion' => 'Interés y Patrimonio', 'link' => 'intereses_y_patrimonio'])
@include('admin.documento', ['descripcion' => 'Informes Fiscalía', 'link' => 'informes_fiscalia'])
@ -18,6 +18,7 @@
<div class="field">
<input type="file" name="archivo" placeholder="Archivo" />
</div>
<div id="mod" class="field"></div>
<button class="ui button">Subir</button>
</form>
</div>
@ -36,9 +37,12 @@
@push('scripts')
<script type="text/javascript">
function formulario(link, title) {
function formulario(link, title, mod) {
$('#doc_form').find('.header').html(title)
$('#doc_form').find('form').find("[name='filename']").val(link)
if (mod == 'fecha') {
fecha()
}
$('#doc_form').modal('show')
$('#doc_form').find('form').submit(function(e) {
e.preventDefault()
@ -62,17 +66,43 @@
return false
})
}
function fecha() {
var fecha = $('<div></div>').attr('class', 'ui calendar').append(
$('<div></div>').attr('class', 'ui input left icon').append(
$('<i></i>').attr('class', 'calendar icon')
).append(
$('<input />').attr('type', 'text').attr('name', 'month').attr('placeholder', 'Mex / Año')
)
)
$('#mod').append(fecha)
$('#mod').find('.ui.calendar').calendar({
type: 'month',
text: {
months: [
'{!!implode("', '", $months->full)!!}'
],
monthsShort: [
'{!!implode("', '", $months->short)!!}'
]
}
})
}
$(document).ready(function() {
$('#transparencia').checkbox()
$('#transparencia').click(function() {
var status = $(this).checkbox('is checked')
$.post('{{$urls->base}}/admin/transparencia', {'activo': status}, function(data) {}, 'json')
})
$('#doc_form').modal()
$('#doc_form').modal({
onHidden: function() {
$('#mod').html('')
}
})
$('.form_link').click(function() {
var link = $(this).attr('data-link')
var title = $(this).attr('data-title')
formulario(link, title)
var mod = $(this).attr('data-mod')
formulario(link, title, mod)
})
})
</script>

View File

@ -1,15 +1,25 @@
<div class="ui container" id="indice">
<div class="ui stackable grid">
<div class="row">
<div class="ten wide column img">
</div>
<div class="five wide column contenido">
<div class="ten wide column img"></div>
<div class="four wide column contenido">
<div class="titulo">
<a href="{{$urls->uploads}}/escrituras_publicas.pdf">
ESCRITURAS P&Uacute;BLICAS
</a>
&Iacute;NDICES EN L&Iacute;NEA
</div>
<br />
<form class="ui form" method="post" action="#" id="form_indices">
<div class="field">
<div class="ui calendar" id="indices_calendar">
<div class="ui input left icon">
<i class="calendar icon"></i>
<input type="text" name="calendar" placeholder="Mes / Año" />
</div>
</div>
</div>
<a href="#" id="indices_descarga">
<button class="ui right floated inverted dark-blue button">DESCARGA</button>
</a>
</form>
</div>
</div>
</div>
@ -22,3 +32,33 @@
}
</style>
@endpush
@push('scripts')
<script type="text/javascript">
$(document).ready(function() {
$('#indices_calendar').calendar({
type: 'month',
text: {
months: [
'{!!implode("', '", $months->full)!!}'
],
monthsShort: [
'{!!implode("', '", $months->short)!!}'
]
},
onChange: function() {
var months = [
'{!!implode("', '", $months->full)!!}'
]
var date = arguments[0]
var url = '{{$urls->uploads}}/indices_' + date.getFullYear() + '_' + months[date.getMonth()] + '.pdf'
$('#indices_descarga').attr('href', url)
}
})
$('#form_indices').submit(function(e) {
e.preventDefault()
return false
})
})
</script>
@endpush

View File

@ -10,7 +10,7 @@
@include('home.links.consultas', ['title' => 'LINKS DE CONSULTA', 'items' => $links->consulta])
</div>
<div class="column"></div>
<div class="center aligned five wide column seguimiento" style="background-image: url('{{$urls->assets->images}}/documentos.jpg')">
<div class="center aligned six wide column seguimiento" style="background-image: url('{{$urls->assets->images}}/documentos.jpg')">
</div>
</div>
</div>

View File

@ -1,15 +1,29 @@
<div id="numero" style="background-image: url('{{$urls->assets->images}}/numero.jpg')">
<div class="ui container">
<div class="ui center aligned stackable grid">
<div class="ui stackable grid">
<div class="row">
<div class="five wide column">
<a href="{{$urls->atencion->url}}">
<button class="ui inverted dark-blue button">
<img src="{{$urls->atencion->logo}}" style="height: 32px;" />
<br />
N&Uacute;MERO DE ATENCI&Oacute;N ONLINE
</button>
</a>
<div class="eight wide column">
<div class="ui center aligned grid">
<div class="eleven wide column">
<a href="{{$urls->atencion->url}}">
<button class="ui inverted dark-blue button">
N&Uacute;MERO DE ATENCI&Oacute;N
<br/> ONLINE
</button>
</a>
</div>
</div>
</div>
<div class="eight wide column">
<div class="ui center aligned grid">
<div class="eleven wide column">
<a href="{{$urls->fojas}}">
<button class="ui inverted dark-blue button">
VERIFICACI&Oacute;N DE DOCUMENTOS ELECTR&Oacute;NICOS
</button>
</a>
</div>
</div>
</div>
</div>
</div>

View File

@ -8,7 +8,7 @@
</p>
</a>
<p>
+56 2 2599 2453
<a href="tel:56225992453">+56 2 2599 2453</a>
<br />
<a href="mailto:administracion@notariaraby.cl">administracion@notariaraby.cl</a>
</p>

View File

@ -1,8 +1,8 @@
<nav class="ui inverted attached massive text stackable menu" id="page_menu">
<a class="left aligned item brand" href="{{$urls->base}}">
NOTAR&Iacute;A RABY
NOTAR&Iacute;A PATRICIO RABY BENAVENTE
</a>
<div class="right menu">
<div class="right menu side">
<a class="item" href="{{$urls->base}}/notaria">
NOTAR&Iacute;A
</a>