diff --git a/bootstrap/web/config.php b/bootstrap/web/config.php
index 9009ee6..431fab6 100644
--- a/bootstrap/web/config.php
+++ b/bootstrap/web/config.php
@@ -8,11 +8,11 @@ return [
'{folders.base}',
'cache'
])),
- 'urls.assets' => DI\string(implode(DIRECTORY_SEPARATOR, [
+ 'urls.assets' => DI\string(implode('/', [
'{urls.base}',
'assets'
])),
- 'urls.styles' => DI\string(implode(DIRECTORY_SEPARATOR, [
+ 'urls.styles' => DI\string(implode('/', [
'{urls.assets}',
'styles'
])),
@@ -20,5 +20,6 @@ return [
'{folders.data}',
'visitas.json'
])),
- 'visits.time' => 12 * 60 * 60
+ 'visits.time' => 12 * 60 * 60,
+ 'urls.indicadores' => 'https://mindicador.cl/api'
];
diff --git a/bootstrap/web/middleware.php b/bootstrap/web/middleware.php
index 92731c3..411c15b 100644
--- a/bootstrap/web/middleware.php
+++ b/bootstrap/web/middleware.php
@@ -1,2 +1,3 @@
add(new ProVM\KI\Common\Middleware\Visits($app->getContainer()->get('file.visits'), $app->getContainer()->get('visits.time')));
+// Global visit counter
+//$app->add(new ProVM\KI\Common\Middleware\Visits($app->getContainer()->get('file.visits'), $app->getContainer()->get('visits.time')));
diff --git a/bootstrap/web/setup.php b/bootstrap/web/setup.php
index 8ea8711..695829a 100644
--- a/bootstrap/web/setup.php
+++ b/bootstrap/web/setup.php
@@ -1,5 +1,6 @@
function(Container $c) {
@@ -8,7 +9,10 @@ return [
'facebook' => '',
'linkedin' => '',
'twitter' => '',
- 'youtube' => ''
+ 'youtube' => '',
+ 'assets' => $c->get('urls.assets'),
+ 'images' => implode('/', [$c->get('urls.assets'), 'images']),
+ 'styles' => $c->get('urls.styles')
];
},
'assets' => function(Container $c) {
@@ -22,7 +26,7 @@ return [
],
'fonts' => [
'text/css' => [
- 'https://fonts.googleapis.com/css2?family=Roboto:wght@300;900&display=swap',
+ 'https://fonts.googleapis.com/css2?family=Roboto&display=swap',
'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',
@@ -32,6 +36,7 @@ return [
]
],
'scripts' => [
+ 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js',
'https://cdnjs.cloudflare.com/ajax/libs/fomantic-ui/2.8.4/semantic.min.js'
]
];
@@ -55,5 +60,8 @@ return [
'assets' => $c->get('assets')
]
);
+ },
+ ProVM\KI\Common\Service\Indicadores::class => function(Container $c) {
+ return new ProVM\KI\Common\Service\Indicadores($c->get('urls.indicadores'));
}
];
diff --git a/common/Controller/Web/Base.php b/common/Controller/Web/Base.php
index 7253dc6..d0a6dd1 100644
--- a/common/Controller/Web/Base.php
+++ b/common/Controller/Web/Base.php
@@ -1,10 +1,10 @@
locale('es')->isoFormat('D MMMM'));
$hora = Carbon::now()->format('H:i a');
$visitas = $container->get('visitas');
- return $view->render($response, 'home', compact('valor_uf', 'fecha', 'hora', 'visitas'));
+ $aviso = true;
+ $filename = implode(DIRECTORY_SEPARATOR, [
+ $container->get('folders.data'),
+ 'avisos.json'
+ ]);
+ $avisos = json_decode(trim(file_get_contents($filename)));
+ $filename = implode(DIRECTORY_SEPARATOR, [
+ $container->get('folders.data'),
+ 'destacados.json'
+ ]);
+ $destacados = json_decode(trim(file_get_contents($filename)));
+ $filename = implode(DIRECTORY_SEPARATOR, [
+ $container->get('folders.data'),
+ 'segmentos.json'
+ ]);
+ $segmentos = json_decode(trim(file_get_contents($filename)));
+ array_walk($segmentos, function(&$item) use ($container) {
+ if (!isset($item->imagen)) {
+ $item->imagen = '
';
+ return;
+ }
+ $item->imagen = '
';
+ });
+ $indicadores = ['uf' => 'UF', 'euro' => 'Euro', 'imacec' => 'IMACEC', 'dolar' => 'USD', 'ipc' => 'IPC', 'utm' => 'UTM', 'bitcoin' => 'BitCoin', 'libra_cobre' => 'Lb. Cu'];
+ return $view->render($response, 'home', compact('valor_uf', 'fecha', 'hora', 'visitas', 'aviso', 'avisos', 'destacados', 'segmentos', 'indicadores'));
}
}
diff --git a/common/Controller/Web/Indicadores.php b/common/Controller/Web/Indicadores.php
new file mode 100644
index 0000000..9f4334c
--- /dev/null
+++ b/common/Controller/Web/Indicadores.php
@@ -0,0 +1,23 @@
+get($indicador, Carbon::today());
+
+ $output = [
+ 'sim' => $indicador,
+ 'valor' => $valor
+ ];
+ $response->getBody()->write(json_encode($output));
+ return $response
+ ->withHeader('Content-Type', 'application/json')
+ ->withStatus(201);
+ }
+}
diff --git a/common/Controller/Web/Proyectos.php b/common/Controller/Web/Proyectos.php
new file mode 100644
index 0000000..cca5083
--- /dev/null
+++ b/common/Controller/Web/Proyectos.php
@@ -0,0 +1,50 @@
+get('folders.data'),
+ 'destacados.json'
+ ]);
+ $destacados = json_decode(trim(file_get_contents($filename)));
+ $max = ceil(count($destacados) / 4);
+ $output = [
+ 'information' => [
+ 'page' => $page
+ ],
+ 'destacados' => []
+ ];
+ for ($i = ($page - 1) * 4; $i < $page * 4; $i ++) {
+ $output['destacados'] []= $destacados[$i];
+ }
+ $response->getBody()->write(json_encode($output));
+ return $response
+ ->withHeader('Content-Type', 'application/json')
+ ->withStatus(201);
+ }
+ public function ficha(Request $request, Response $response, Container $container, View $view, $proyecto): Response {
+ $filename = implode(DIRECTORY_SEPARATOR, [
+ $container->get('folders.data'),
+ 'proyectos.json'
+ ]);
+ $proyectos = json_decode(trim(file_get_contents($filename)));
+ $filename = implode(DIRECTORY_SEPARATOR, [
+ $container->get('folders.data'),
+ 'destacados.json'
+ ]);
+ $destacados = json_decode(trim(file_get_contents($filename)));
+ $destacado = false;
+ if (array_search($proyecto, $destacados) !== false) {
+ $destacado = true;
+ }
+ $proyecto = $proyectos[$proyecto];
+ $proyecto->destacado = $destacado;
+ return $view->render($response, 'home.destacados.ficha', compact('proyecto'));
+ }
+}
diff --git a/common/Middleware/Visits.php b/common/Middleware/Visits.php
index 9f6920a..75aaf46 100644
--- a/common/Middleware/Visits.php
+++ b/common/Middleware/Visits.php
@@ -34,7 +34,7 @@ class Visits {
if ($ipd->ip == $ip and $ipd->fwd == $fwd) {
$t = Carbon::parse($ipd->time);
if ($t->diffInSeconds($login) > $this->time) {
- $file->ips[$i]->time = $t->format('Y-m-d H:i:s');
+ $file->ips[$i]->time = $login->format('Y-m-d H:i:s');
$file->visits ++;
}
$found = true;
diff --git a/common/Service/Indicadores.php b/common/Service/Indicadores.php
new file mode 100644
index 0000000..bc8ea25
--- /dev/null
+++ b/common/Service/Indicadores.php
@@ -0,0 +1,34 @@
+base_uri = $indicadores_url;
+ }
+ public function get(string $indicador, \DateTime $fecha) {
+ $url = implode('/', [
+ $this->base_uri,
+ $indicador,
+ $fecha->format('d-m-Y')
+ ]);
+ if ( ini_get('allow_url_fopen') ) {
+ $json = file_get_contents($url);
+ } else {
+ $curl = curl_init($url);
+ curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
+ $json = curl_exec($curl);
+ curl_close($curl);
+ }
+ $data = json_decode($json);
+ $valor = 0;
+ if (isset($data->serie[0])) {
+ $valor = $data->serie[0]->valor;
+ }
+ return $valor;
+ }
+}
diff --git a/composer.json b/composer.json
index 721e483..497d199 100644
--- a/composer.json
+++ b/composer.json
@@ -8,7 +8,8 @@
"rubellum/slim-blade-view": "^0.1.1",
"nyholm/psr7": "^1.2",
"nyholm/psr7-server": "^0.4.1",
- "nesbot/carbon": "^2.32"
+ "nesbot/carbon": "^2.32",
+ "guzzlehttp/guzzle": "^6.5"
},
"require-dev": {
"phpunit/phpunit": "^8.5",
diff --git a/public/assets/images/banner.jpg b/public/assets/images/banner.jpg
new file mode 100644
index 0000000..328030f
Binary files /dev/null and b/public/assets/images/banner.jpg differ
diff --git a/public/assets/images/desarrollo inmobiliario.jpg b/public/assets/images/desarrollo inmobiliario.jpg
new file mode 100644
index 0000000..bb48232
Binary files /dev/null and b/public/assets/images/desarrollo inmobiliario.jpg differ
diff --git a/public/assets/images/indicadores.jpg b/public/assets/images/indicadores.jpg
new file mode 100644
index 0000000..522ee6d
Binary files /dev/null and b/public/assets/images/indicadores.jpg differ
diff --git a/public/assets/images/industrial.jpg b/public/assets/images/industrial.jpg
new file mode 100644
index 0000000..5489ec0
Binary files /dev/null and b/public/assets/images/industrial.jpg differ
diff --git a/public/assets/images/logo.png b/public/assets/images/logo.png
new file mode 100644
index 0000000..3a207d8
Binary files /dev/null and b/public/assets/images/logo.png differ
diff --git a/public/assets/images/loteos y parcelas.jpg b/public/assets/images/loteos y parcelas.jpg
new file mode 100644
index 0000000..da537eb
Binary files /dev/null and b/public/assets/images/loteos y parcelas.jpg differ
diff --git a/public/assets/images/oficinas.jpg b/public/assets/images/oficinas.jpg
new file mode 100644
index 0000000..425a39d
Binary files /dev/null and b/public/assets/images/oficinas.jpg differ
diff --git a/public/assets/images/optimus.jpg b/public/assets/images/optimus.jpg
new file mode 100644
index 0000000..4a022e6
Binary files /dev/null and b/public/assets/images/optimus.jpg differ
diff --git a/public/assets/images/retail.jpg b/public/assets/images/retail.jpg
new file mode 100644
index 0000000..17da63d
Binary files /dev/null and b/public/assets/images/retail.jpg differ
diff --git a/public/assets/styles/home.css b/public/assets/styles/home.css
new file mode 100644
index 0000000..77c854d
--- /dev/null
+++ b/public/assets/styles/home.css
@@ -0,0 +1,162 @@
+/* line 1, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+.header {
+ color: inherit !important;
+ font-family: inherit !important;
+}
+
+/* line 6, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#banner {
+ padding-top: 12rem;
+ padding-bottom: 12rem;
+ background-color: rgba(0, 0, 0, 0.6);
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: 1920px auto;
+ background-blend-mode: multiply;
+}
+
+/* line 15, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#banner #mensaje {
+ margin-bottom: 2rem;
+ color: white;
+ font-weight: 300;
+ font-size: 1.6rem;
+}
+
+/* line 21, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#banner #mensaje .header {
+ font-weight: 900 !important;
+ font-size: 1.9rem;
+}
+
+/* line 26, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#banner .button {
+ font-family: inherit;
+ font-weight: 900;
+}
+
+/* line 32, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#aviso {
+ color: white;
+ background-color: #429ab7;
+ padding-top: 5rem;
+ padding-bottom: 3rem;
+ font-size: 1.6rem;
+ font-weight: 300;
+}
+
+/* line 40, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#aviso .header {
+ font-weight: 900;
+}
+
+/* line 45, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#destacados {
+ padding-top: 3rem;
+ padding-bottom: 5rem;
+ background-color: #a7a9ab;
+ min-height: 40rem;
+}
+
+/* line 51, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#destacados .header {
+ color: #0d103c !important;
+ font-weight: 600;
+}
+
+/* line 55, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#destacados .titulo {
+ font-size: 1.6rem;
+ font-weight: 900;
+ padding-bottom: 1rem;
+}
+
+/* line 60, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#destacados .ficha {
+ border-radius: 0;
+ border: 0;
+ box-shadow: none !important;
+}
+
+/* line 66, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#destacados .ficha .content .segment {
+ background-color: #e6e6e7 !important;
+ padding-top: 0 !important;
+ padding-bottom: 0 !important;
+ font-weight: 300;
+}
+
+/* line 72, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#destacados .ficha .content .button {
+ font-family: inherit !important;
+ font-weight: 900;
+ padding-top: 0.3rem !important;
+ padding-bottom: 0.3rem !important;
+ background-color: #0d103c !important;
+}
+
+/* line 80, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#destacados .ficha .image {
+ overflow: hidden;
+}
+
+/* line 83, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#destacados .ficha .overlay {
+ background-color: #0d103c;
+ color: white;
+ opacity: 0.8;
+ text-align: center;
+ position: absolute;
+ z-index: 999;
+ top: 1.9rem;
+ right: -2.2rem;
+ width: 10rem;
+ padding-top: .3rem;
+ padding-bottom: .3rem;
+ -webkit-transform: rotate(45deg);
+ -moz-transform: rotate(45deg);
+ -ms-transform: rotate(45deg);
+ -o-transform: rotate(45deg);
+ transform: rotate(45deg);
+}
+
+/* line 102, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#destacados .active {
+ font-weight: 900;
+}
+
+/* line 107, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#segmentos {
+ padding-top: 4rem;
+ padding-bottom: 4rem;
+}
+
+/* line 112, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#resumen {
+ background-position: center;
+ background-position-y: -60rem;
+ background-repeat: no-repeat;
+ background-size: 2600px auto;
+ min-height: 20rem;
+ padding-top: 3rem;
+}
+
+/* line 120, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#resumen .inverted.circular.segment {
+ background-color: rgba(0, 0, 0, 0.8);
+}
+
+/* line 125, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#indicadores {
+ background-color: #bbbdc0;
+}
+
+/* line 128, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/home.scss */
+#indicadores .column {
+ background-color: white;
+ padding: 0;
+ margin: 1rem;
+ width: 8rem !important;
+}
+
+/*# sourceMappingURL=home.css.map */
\ No newline at end of file
diff --git a/public/assets/styles/home.map b/public/assets/styles/home.map
new file mode 100644
index 0000000..0f12674
--- /dev/null
+++ b/public/assets/styles/home.map
@@ -0,0 +1,12 @@
+{
+ "version": 3,
+ "file": "home.css",
+ "sources": [
+ "../../../resources/assets/sass/home.scss"
+ ],
+ "sourcesContent": [
+ ".header {\r\n color: inherit !important;\r\n font-family: inherit !important;\r\n}\r\n\r\n#banner {\r\n padding-top: 12rem;\r\n padding-bottom: 12rem;\r\n background-color: rgba(0, 0, 0, 0.6);\r\n background-position: center;\r\n background-repeat: no-repeat;\r\n background-size: 1920px auto;\r\n background-blend-mode: multiply;\r\n\r\n #mensaje {\r\n margin-bottom: 2rem;\r\n color: white;\r\n font-weight: 300;\r\n font-size: 1.6rem;\r\n\r\n .header {\r\n font-weight: 900 !important;\r\n font-size: 1.9rem;\r\n }\r\n }\r\n .button {\r\n font-family: inherit;\r\n font-weight: 900;\r\n }\r\n}\r\n\r\n#aviso {\r\n color: white;\r\n background-color: #429ab7;\r\n padding-top: 5rem;\r\n padding-bottom: 3rem;\r\n font-size: 1.6rem;\r\n font-weight: 300;\r\n\r\n .header {\r\n font-weight: 900;\r\n }\r\n}\r\n\r\n#destacados {\r\n padding-top: 3rem;\r\n padding-bottom: 5rem;\r\n background-color: #a7a9ab;\r\n min-height: 40rem;\r\n\r\n .header {\r\n color: #0d103c !important;\r\n font-weight: 600;\r\n }\r\n .titulo {\r\n font-size: 1.6rem;\r\n font-weight: 900;\r\n padding-bottom: 1rem;\r\n }\r\n .ficha {\r\n border-radius: 0;\r\n border: 0;\r\n box-shadow: none !important;\r\n\r\n .content {\r\n .segment {\r\n background-color: #e6e6e7 !important;\r\n padding-top: 0 !important;\r\n padding-bottom: 0 !important;\r\n font-weight: 300;\r\n }\r\n .button {\r\n font-family: inherit !important;\r\n font-weight: 900;\r\n padding-top: 0.3rem !important;\r\n padding-bottom: 0.3rem !important;\r\n background-color: #0d103c !important;\r\n }\r\n }\r\n .image {\r\n overflow: hidden;\r\n }\r\n .overlay {\r\n background-color: #0d103c;\r\n color: white;\r\n opacity: 0.8;\r\n text-align: center;\r\n position: absolute;\r\n z-index: 999;\r\n top: 1.9rem;\r\n right: -2.2rem;\r\n width: 10rem;\r\n padding-top: .3rem;\r\n padding-bottom: .3rem;\r\n -webkit-transform: rotate(45deg);\r\n -moz-transform: rotate(45deg);\r\n -ms-transform: rotate(45deg);\r\n -o-transform: rotate(45deg);\r\n transform: rotate(45deg);\r\n }\r\n }\r\n .active {\r\n font-weight: 900;\r\n }\r\n}\r\n\r\n#segmentos {\r\n padding-top: 4rem;\r\n padding-bottom: 4rem;\r\n}\r\n\r\n#resumen {\r\n background-position: center;\r\n background-position-y: -60rem;\r\n background-repeat: no-repeat;\r\n background-size: 2600px auto;\r\n min-height: 20rem;\r\n padding-top: 3rem;\r\n\r\n .inverted.circular.segment {\r\n background-color: rgba(0, 0, 0, 0.8);\r\n }\r\n}\r\n\r\n#indicadores {\r\n background-color: #bbbdc0;\r\n\r\n .column {\r\n background-color: white;\r\n padding: 0;\r\n margin: 1rem;\r\n width: 8rem !important;\r\n }\r\n}\r\n"
+ ],
+ "names": [],
+ "mappings": "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"
+}
\ No newline at end of file
diff --git a/public/assets/styles/main.css b/public/assets/styles/main.css
index 3b88cb9..43601a8 100644
--- a/public/assets/styles/main.css
+++ b/public/assets/styles/main.css
@@ -1,47 +1,93 @@
-/*body {
+/* line 1, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
+body {
font-family: Roboto, sans-serif !important;
-}*/
+}
+/* line 5, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
.brand {
color: #000070 !important;
}
+
+/* line 8, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
.inverted.brand {
background-color: #000070 !important;
color: white !important;
}
+
+/* line 12, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
.button.brand {
box-shadow: none !important;
}
+/* line 16, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
+.title.image {
+ width: 15rem;
+}
+
+/* line 21, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
header #franja {
background-color: #707070;
color: white !important;
}
+
+/* line 25, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
header #franja .menu {
color: inherit !important;
}
+
+/* line 28, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
header #franja .menu .spacer {
width: 3rem;
}
+
+/* line 31, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
header #franja .menu .input {
height: 1.3rem !important;
}
-header #franja a {
- color: inherit;
-}
+
+/* line 36, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
header .menu {
margin-top: 0 !important;
margin-bottom: 0 !important;
}
+
+/* line 40, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
header .menu .logo {
font-size: 2rem;
font-weight: 900;
}
+/* line 47, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
+a {
+ color: inherit !important;
+}
+
+/* line 51, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
.menu {
font-family: inherit !important;
}
+
+/* line 54, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
.item {
font-family: inherit !important;
color: inherit !important;
}
+
+/* line 59, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
+footer {
+ background-color: #429ab7;
+ color: white;
+}
+
+/* line 63, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
+footer .menu {
+ margin: 0 !important;
+}
+
+/* line 66, ../../Workspace/git/provm/capitalinvestments/resources/assets/sass/main.scss */
+footer .menu .label {
+ background-color: white !important;
+ color: #429ab7 !important;
+}
+
+/*# sourceMappingURL=main.css.map */
\ No newline at end of file
diff --git a/public/assets/styles/main.map b/public/assets/styles/main.map
new file mode 100644
index 0000000..1af3ce7
--- /dev/null
+++ b/public/assets/styles/main.map
@@ -0,0 +1,12 @@
+{
+ "version": 3,
+ "file": "main.css",
+ "sources": [
+ "../../../resources/assets/sass/main.scss"
+ ],
+ "sourcesContent": [
+ "body {\r\n font-family: Roboto, sans-serif !important;\r\n}\r\n\r\n.brand {\r\n color: #000070 !important;\r\n}\r\n.inverted.brand {\r\n background-color: #000070 !important;\r\n color: white !important;\r\n}\r\n.button.brand {\r\n box-shadow: none !important;\r\n}\r\n\r\n.title.image {\r\n width: 15rem;\r\n}\r\n\r\nheader {\r\n #franja {\r\n background-color: #707070;\r\n color: white !important;\r\n\r\n .menu {\r\n color: inherit !important;\r\n\r\n .spacer {\r\n width: 3rem;\r\n }\r\n .input {\r\n height: 1.3rem !important;\r\n }\r\n }\r\n }\r\n .menu {\r\n margin-top: 0 !important;\r\n margin-bottom: 0 !important;\r\n\r\n .logo {\r\n font-size: 2rem;\r\n font-weight: 900;\r\n }\r\n }\r\n}\r\n\r\na {\r\n color: inherit !important;\r\n}\r\n\r\n.menu {\r\n font-family: inherit !important;\r\n}\r\n.item {\r\n font-family: inherit !important;\r\n color: inherit !important;\r\n}\r\n\r\nfooter {\r\n background-color: #429ab7;\r\n color: white;\r\n\r\n .menu {\r\n margin: 0 !important;\r\n\r\n .label {\r\n background-color: white !important;\r\n color: #429ab7 !important;\r\n }\r\n }\r\n}\r\n"
+ ],
+ "names": [],
+ "mappings": ";AAAA,AAAA,IAAI,CAAC;EACH,WAAW,EAAE,6BAA6B;CAC3C;;;AAED,AAAA,MAAM,CAAC;EACL,KAAK,EAAE,kBAAkB;CAC1B;;;AACD,AAAA,SAAS,AAAA,MAAM,CAAC;EACd,gBAAgB,EAAE,kBAAkB;EACpC,KAAK,EAAE,gBAAgB;CACxB;;;AACD,AAAA,OAAO,AAAA,MAAM,CAAC;EACZ,UAAU,EAAE,eAAe;CAC5B;;;AAED,AAAA,MAAM,AAAA,MAAM,CAAC;EACX,KAAK,EAAE,KAAK;CACb;;;AAED,AACE,MADI,CACJ,OAAO,CAAC;EACN,gBAAgB,EAAE,OAAO;EACzB,KAAK,EAAE,gBAAgB;CAYxB;;;AAfH,AAKI,MALE,CACJ,OAAO,CAIL,KAAK,CAAC;EACJ,KAAK,EAAE,kBAAkB;CAQ1B;;;AAdL,AAQM,MARA,CACJ,OAAO,CAIL,KAAK,CAGH,OAAO,CAAC;EACN,KAAK,EAAE,IAAI;CACZ;;;AAVP,AAWM,MAXA,CACJ,OAAO,CAIL,KAAK,CAMH,MAAM,CAAC;EACL,MAAM,EAAE,iBAAiB;CAC1B;;;AAbP,AAgBE,MAhBI,CAgBJ,KAAK,CAAC;EACJ,UAAU,EAAE,YAAY;EACxB,aAAa,EAAE,YAAY;CAM5B;;;AAxBH,AAoBI,MApBE,CAgBJ,KAAK,CAIH,KAAK,CAAC;EACJ,SAAS,EAAE,IAAI;EACf,WAAW,EAAE,GAAG;CACjB;;;AAIL,AAAA,CAAC,CAAC;EACA,KAAK,EAAE,kBAAkB;CAC1B;;;AAED,AAAA,KAAK,CAAC;EACJ,WAAW,EAAE,kBAAkB;CAChC;;;AACD,AAAA,KAAK,CAAC;EACJ,WAAW,EAAE,kBAAkB;EAC/B,KAAK,EAAE,kBAAkB;CAC1B;;;AAED,AAAA,MAAM,CAAC;EACL,gBAAgB,EAAE,OAAO;EACzB,KAAK,EAAE,KAAK;CAUb;;;AAZD,AAIE,MAJI,CAIJ,KAAK,CAAC;EACJ,MAAM,EAAE,YAAY;CAMrB;;;AAXH,AAOI,MAPE,CAIJ,KAAK,CAGH,MAAM,CAAC;EACL,gBAAgB,EAAE,gBAAgB;EAClC,KAAK,EAAE,kBAAkB;CAC1B"
+}
\ No newline at end of file
diff --git a/resources/assets/sass/home.scss b/resources/assets/sass/home.scss
new file mode 100644
index 0000000..b806b0a
--- /dev/null
+++ b/resources/assets/sass/home.scss
@@ -0,0 +1,134 @@
+.header {
+ color: inherit !important;
+ font-family: inherit !important;
+}
+
+#banner {
+ padding-top: 12rem;
+ padding-bottom: 12rem;
+ background-color: rgba(0, 0, 0, 0.6);
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: 1920px auto;
+ background-blend-mode: multiply;
+
+ #mensaje {
+ margin-bottom: 2rem;
+ color: white;
+ font-weight: 300;
+ font-size: 1.6rem;
+
+ .header {
+ font-weight: 900 !important;
+ font-size: 1.9rem;
+ }
+ }
+ .button {
+ font-family: inherit;
+ font-weight: 900;
+ }
+}
+
+#aviso {
+ color: white;
+ background-color: #429ab7;
+ padding-top: 5rem;
+ padding-bottom: 3rem;
+ font-size: 1.6rem;
+ font-weight: 300;
+
+ .header {
+ font-weight: 900;
+ }
+}
+
+#destacados {
+ padding-top: 3rem;
+ padding-bottom: 5rem;
+ background-color: #a7a9ab;
+ min-height: 40rem;
+
+ .header {
+ color: #0d103c !important;
+ font-weight: 600;
+ }
+ .titulo {
+ font-size: 1.6rem;
+ font-weight: 900;
+ padding-bottom: 1rem;
+ }
+ .ficha {
+ border-radius: 0;
+ border: 0;
+ box-shadow: none !important;
+
+ .content {
+ .segment {
+ background-color: #e6e6e7 !important;
+ padding-top: 0 !important;
+ padding-bottom: 0 !important;
+ font-weight: 300;
+ }
+ .button {
+ font-family: inherit !important;
+ font-weight: 900;
+ padding-top: 0.3rem !important;
+ padding-bottom: 0.3rem !important;
+ background-color: #0d103c !important;
+ }
+ }
+ .image {
+ overflow: hidden;
+ }
+ .overlay {
+ background-color: #0d103c;
+ color: white;
+ opacity: 0.8;
+ text-align: center;
+ position: absolute;
+ z-index: 999;
+ top: 1.9rem;
+ right: -2.2rem;
+ width: 10rem;
+ padding-top: .3rem;
+ padding-bottom: .3rem;
+ -webkit-transform: rotate(45deg);
+ -moz-transform: rotate(45deg);
+ -ms-transform: rotate(45deg);
+ -o-transform: rotate(45deg);
+ transform: rotate(45deg);
+ }
+ }
+ .active {
+ font-weight: 900;
+ }
+}
+
+#segmentos {
+ padding-top: 4rem;
+ padding-bottom: 4rem;
+}
+
+#resumen {
+ background-position: center;
+ background-position-y: -60rem;
+ background-repeat: no-repeat;
+ background-size: 2600px auto;
+ min-height: 20rem;
+ padding-top: 3rem;
+
+ .inverted.circular.segment {
+ background-color: rgba(0, 0, 0, 0.8);
+ }
+}
+
+#indicadores {
+ background-color: #bbbdc0;
+
+ .column {
+ background-color: white;
+ padding: 0;
+ margin: 1rem;
+ width: 8rem !important;
+ }
+}
diff --git a/resources/assets/sass/main.scss b/resources/assets/sass/main.scss
new file mode 100644
index 0000000..67789d9
--- /dev/null
+++ b/resources/assets/sass/main.scss
@@ -0,0 +1,71 @@
+body {
+ font-family: Roboto, sans-serif !important;
+}
+
+.brand {
+ color: #000070 !important;
+}
+.inverted.brand {
+ background-color: #000070 !important;
+ color: white !important;
+}
+.button.brand {
+ box-shadow: none !important;
+}
+
+.title.image {
+ width: 15rem;
+}
+
+header {
+ #franja {
+ background-color: #707070;
+ color: white !important;
+
+ .menu {
+ color: inherit !important;
+
+ .spacer {
+ width: 3rem;
+ }
+ .input {
+ height: 1.3rem !important;
+ }
+ }
+ }
+ .menu {
+ margin-top: 0 !important;
+ margin-bottom: 0 !important;
+
+ .logo {
+ font-size: 2rem;
+ font-weight: 900;
+ }
+ }
+}
+
+a {
+ color: inherit !important;
+}
+
+.menu {
+ font-family: inherit !important;
+}
+.item {
+ font-family: inherit !important;
+ color: inherit !important;
+}
+
+footer {
+ background-color: #429ab7;
+ color: white;
+
+ .menu {
+ margin: 0 !important;
+
+ .label {
+ background-color: white !important;
+ color: #429ab7 !important;
+ }
+ }
+}
diff --git a/resources/routes/web.php b/resources/routes/web.php
index 192102c..b0769d2 100644
--- a/resources/routes/web.php
+++ b/resources/routes/web.php
@@ -15,4 +15,5 @@ if (file_exists($folder)) {
}
}
-$app->get('/', Base::class);
+$app->get('/', Base::class)
+ ->add(new ProVM\KI\Common\Middleware\Visits($app->getContainer()->get('file.visits'), $app->getContainer()->get('visits.time')));
diff --git a/resources/routes/web/indicadores.php b/resources/routes/web/indicadores.php
new file mode 100644
index 0000000..df74fa9
--- /dev/null
+++ b/resources/routes/web/indicadores.php
@@ -0,0 +1,4 @@
+get('/indicador/{indicador}', [Indicadores::class, 'get']);
diff --git a/resources/routes/web/proyectos.php b/resources/routes/web/proyectos.php
new file mode 100644
index 0000000..046ce7c
--- /dev/null
+++ b/resources/routes/web/proyectos.php
@@ -0,0 +1,9 @@
+group('/proyectos', function($app) {
+ $app->get('/destacados/{page}', [Proyectos::class, 'destacados']);
+});
+$app->group('/proyecto/{proyecto}', function($app) {
+ $app->get('/ficha', [Proyectos::class, 'ficha']);
+});
diff --git a/resources/views/home.blade.php b/resources/views/home.blade.php
index 8773d24..73821f3 100644
--- a/resources/views/home.blade.php
+++ b/resources/views/home.blade.php
@@ -2,9 +2,14 @@
@section('page_content')
@include('home.banner')
- @include('home.segmentos')
+ @include('home.aviso')
@include('home.destacados')
+ @include('home.segmentos')
@include('home.resumen')
@include('home.indicadores')
- @include('home.confianza')
+ @include('home.contacto')
@endsection
+
+@push('styles')
+
+@endpush
diff --git a/resources/views/home/aviso.blade.php b/resources/views/home/aviso.blade.php
new file mode 100644
index 0000000..954b5cb
--- /dev/null
+++ b/resources/views/home/aviso.blade.php
@@ -0,0 +1,57 @@
+@if (isset($aviso) and $aviso)
+
+
+
+
+
+ Bono Pie 10%
+
+
+ @foreach ($avisos as $i => $av)
+
+ @endforeach
+
+
+
+
+@endif
+
+@push('scripts')
+
+@endpush
diff --git a/resources/views/home/banner.blade.php b/resources/views/home/banner.blade.php
index 3765b00..b080a03 100644
--- a/resources/views/home/banner.blade.php
+++ b/resources/views/home/banner.blade.php
@@ -1,16 +1,25 @@
-
+
-
+ "Comienza a Invertir Hoy"
+
+
+@push('styles')
+
+@endpush
diff --git a/resources/views/home/confianza.blade.php b/resources/views/home/contacto.blade.php
similarity index 100%
rename from resources/views/home/confianza.blade.php
rename to resources/views/home/contacto.blade.php
diff --git a/resources/views/home/destacados.blade.php b/resources/views/home/destacados.blade.php
index e69de29..852dabb 100644
--- a/resources/views/home/destacados.blade.php
+++ b/resources/views/home/destacados.blade.php
@@ -0,0 +1,137 @@
+
+
+
+
+ @for ($i = 0; $i < min(4, count($destacados)); $i ++)
+
+ @endfor
+
+ @if (count($destacados) > 4)
+
+
+ @endif
+
+
+
+@push('scripts')
+
+@endpush
diff --git a/resources/views/home/destacados/ficha.blade.php b/resources/views/home/destacados/ficha.blade.php
new file mode 100644
index 0000000..82ff2f3
--- /dev/null
+++ b/resources/views/home/destacados/ficha.blade.php
@@ -0,0 +1,56 @@
+
+
+
+
+ {{$proyecto->segmento}}
+
+
+ {{$proyecto->comuna}}
+
+
+
+ @if ($proyecto->destacado)
+
Destacado
+ @endif
+

+
+
+
+
+ {{$proyecto->valor}} UF
+
+ Valor depto
+
+
+
+ {{$proyecto->bono}} UF
+
+ Bono Pie
+
+
+
+ {{$proyecto->rentabilidad}}%
+
+ Rentabilidad
+
+
+
+ {{$proyecto->cuota}} UF
+
+ Valor cuota
+
+
+
+ {{$proyecto->entrega}}
+
+ Entrega Estimada
+
+
+
+
+
+
diff --git a/resources/views/home/indicadores.blade.php b/resources/views/home/indicadores.blade.php
index e69de29..ddcd6e2 100644
--- a/resources/views/home/indicadores.blade.php
+++ b/resources/views/home/indicadores.blade.php
@@ -0,0 +1,63 @@
+
+
+@push('scripts')
+
+@endpush
diff --git a/resources/views/home/resumen.blade.php b/resources/views/home/resumen.blade.php
index e69de29..9998db3 100644
--- a/resources/views/home/resumen.blade.php
+++ b/resources/views/home/resumen.blade.php
@@ -0,0 +1,63 @@
+
+
+@push('styles')
+
+@endpush
+
+@push('scripts')
+
+@endpush
diff --git a/resources/views/home/segmentos.blade.php b/resources/views/home/segmentos.blade.php
index 63e834d..5822699 100644
--- a/resources/views/home/segmentos.blade.php
+++ b/resources/views/home/segmentos.blade.php
@@ -2,20 +2,11 @@
-
-
-
-
- Oficinas
+
+ @foreach ($segmentos as $segmento)
+
+ @include('home.segmentos.ficha')
-
-
+ @endforeach
diff --git a/resources/views/home/segmentos/ficha.blade.php b/resources/views/home/segmentos/ficha.blade.php
new file mode 100644
index 0000000..b34caa7
--- /dev/null
+++ b/resources/views/home/segmentos/ficha.blade.php
@@ -0,0 +1,8 @@
+
+
+ {!!$segmento->imagen!!}
+
+
+
diff --git a/resources/views/layout/footer.blade.php b/resources/views/layout/footer.blade.php
index e0eb10a..dab7761 100644
--- a/resources/views/layout/footer.blade.php
+++ b/resources/views/layout/footer.blade.php
@@ -1,4 +1,4 @@
-