Files
KI/bootstrap/web/setup.php

125 lines
4.5 KiB
PHP
Raw Normal View History

2020-04-30 08:26:51 -04:00
<?php
use Psr\Container\ContainerInterface as Container;
use Carbon\Carbon;
2020-04-30 08:26:51 -04:00
return [
'urls' => function(Container $c) {
return (object) [
'base' => $c->get('base_url'),
'facebook' => '',
'linkedin' => '',
'twitter' => '',
'youtube' => '',
'assets' => $c->get('urls.assets'),
'images' => implode('/', [$c->get('urls.assets'), 'images']),
2020-05-12 19:12:54 -04:00
'styles' => $c->get('urls.styles'),
2020-05-26 23:04:49 -04:00
'scripts' => $c->get('urls.scripts'),
'admin' => implode('/', [$c->get('urls.base'), 'admin'])
2020-04-30 08:26:51 -04:00
];
},
'assets' => function(Container $c) {
return (object) [
'styles' => [
'https://cdnjs.cloudflare.com/ajax/libs/fomantic-ui/2.8.4/semantic.min.css',
implode(DIRECTORY_SEPARATOR, [
$c->get('urls.styles'),
'main.css'
])
],
'fonts' => [
'text/css' => [
'https://fonts.googleapis.com/css2?family=Roboto&display=swap',
2020-04-30 08:26:51 -04:00
'https://cdnjs.cloudflare.com/ajax/libs/fomantic-ui/2.8.4/themes/default/assets/fonts/brand-icons.woff',
'https://cdnjs.cloudflare.com/ajax/libs/fomantic-ui/2.8.4/themes/default/assets/fonts/brand-icons.woff2',
'https://cdnjs.cloudflare.com/ajax/libs/fomantic-ui/2.8.4/themes/default/assets/fonts/icons.woff',
'https://cdnjs.cloudflare.com/ajax/libs/fomantic-ui/2.8.4/themes/default/assets/fonts/icons.woff2',
'https://cdnjs.cloudflare.com/ajax/libs/fomantic-ui/2.8.4/themes/default/assets/fonts/outline-icons.woff',
'https://cdnjs.cloudflare.com/ajax/libs/fomantic-ui/2.8.4/themes/default/assets/fonts/outline-icons.woff2'
]
],
'scripts' => [
'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js',
2020-05-27 17:20:15 -04:00
'https://cdnjs.cloudflare.com/ajax/libs/fomantic-ui/2.8.4/semantic.min.js',
2020-05-27 17:36:23 -04:00
'https://cdn.jsdelivr.net/npm/jquery.marquee@1.5.0/jquery.marquee.min.js'
2020-04-30 08:26:51 -04:00
]
];
},
'visitas' => function(Container $c) {
$filename = implode(DIRECTORY_SEPARATOR, [
$c->get('folders.data'),
'visitas.json'
]);
$file = json_decode(trim(file_get_contents($filename)));
return $file->visits;
},
'segmentos' => function(Container $c) {
$filename = implode(DIRECTORY_SEPARATOR, [
$c->get('folders.data'),
'segmentos.json'
]);
$segmentos = json_decode(trim(file_get_contents($filename)));
return $segmentos;
},
2020-06-09 18:06:36 -04:00
'email' => function(Container $c) {
$filename = implode(DIRECTORY_SEPARATOR, [
$c->get('folders.data'),
'emails.json'
]);
$emails = json_decode(trim(file_get_contents($filename)));
return $emails->settings;
},
'emails' => function(Container $c) {
$filename = implode(DIRECTORY_SEPARATOR, [
$c->get('folders.data'),
'emails.json'
]);
$emails = json_decode(trim(file_get_contents($filename)));
return $emails->emails;
},
ProVM\KI\Common\Alias\View::class => function(Container $c) {
return new ProVM\KI\Common\Implementation\View(
2020-04-30 08:26:51 -04:00
$c->get('folders.templates'),
$c->get('folders.cache'),
null,
[
'page_language' => $c->get('language'),
'urls' => $c->get('urls'),
2020-05-19 01:04:23 -04:00
'assets' => $c->get('assets'),
'header' => (object) [
'fecha' => ucwords(Carbon::today()->locale('es')->isoFormat('D MMMM YYYY')),
'hora' => Carbon::now()->format('H:i a'),
'uf' => $c->get('ProVM\KI\Common\Service\Indicadores')->get('uf', Carbon::today())->valor,
'menu' => (object) [
'segmentos' => $c->get('segmentos')
]
2020-05-19 01:04:23 -04:00
],
'footer' => (object) [
'visitas' => $c->get('visitas')
]
2020-04-30 08:26:51 -04:00
]
);
},
ProVM\KI\Common\Service\Indicadores::class => function(Container $c) {
return new ProVM\KI\Common\Service\Indicadores($c->get('urls.indicadores'));
2020-05-29 18:36:56 -04:00
},
ProVM\Common\Factory\Model::class => function(Container $c) {
return new ProVM\Common\Factory\Model(
$c->get('folders.data'),
2020-05-29 20:25:08 -04:00
$c->get('folders.public')
2020-05-29 18:36:56 -04:00
);
2020-06-09 18:06:36 -04:00
},
ProVM\KI\Common\Alias\Message::class => function(Container $c) {
return new ProVM\KI\Common\Implementation\Message();
},
ProVM\KI\Common\Alias\Mailer::class => function(Container $c) {
return new ProVM\KI\Common\Implementation\Mailer([
'host' => $c->get('email')->host->name,
'username' => $c->get('email')->user->name,
'password' => $c->get('email')->user->password
]);
2020-06-10 22:50:04 -04:00
},
Psr\Log\LoggerInterface::class => function(Container $c) {
return new ProVM\Common\Implementation\Logger(implode(DIRECTORY_SEPARATOR, [$c->get('folders.base'), 'admin.log']));
2020-04-30 08:26:51 -04:00
}
];