{"id":316,"date":"2026-01-22T04:12:28","date_gmt":"2026-01-22T04:12:28","guid":{"rendered":"https:\/\/vesna.cl\/?post_type=proyectos&#038;p=316"},"modified":"2026-01-22T04:12:29","modified_gmt":"2026-01-22T04:12:29","slug":"stabilization-of-a-multilingual-legacy-tourist-reservation-system","status":"publish","type":"proyectos","link":"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/","title":{"rendered":"Stabilization of a Multilingual Legacy Tourist Reservation System"},"content":{"rendered":"\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p class=\"wp-block-paragraph\"><strong>Proyecto:<\/strong> Estabilizaci\u00f3n y actualizaci\u00f3n de sistema legacy de reservas<br><strong>Rol:<\/strong> An\u00e1lisis, correcci\u00f3n funcional y actualizaci\u00f3n de entorno<br><strong>Tecnolog\u00edas:<\/strong> PHP 5.4 \u2192 7.4, MySQL (mysqli), hosting compartido<br><strong>\u00c1mbito:<\/strong> Subdominio productivo<br><strong>Sistema:<\/strong> Reservas tur\u00edsticas multiling\u00fces con gesti\u00f3n hist\u00f3rica y flujo reserva \u2192 venta<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Context<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">A subdomain hosting a legacy system for tour reservations and historical management, originally developed in PHP 5.4 and used for the daily operation of activities related to astronomical observation.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"687\" height=\"403\" src=\"https:\/\/vesna.cl\/wp-content\/uploads\/2026\/01\/Screenshot-2026-01-21-at-21.30.50.png\" alt=\"\" class=\"wp-image-261\" style=\"aspect-ratio:1;object-fit:cover;width:576px;height:auto\" srcset=\"https:\/\/vesna.cl\/wp-content\/uploads\/2026\/01\/Screenshot-2026-01-21-at-21.30.50.png 687w, https:\/\/vesna.cl\/wp-content\/uploads\/2026\/01\/Screenshot-2026-01-21-at-21.30.50-300x176.png 300w\" sizes=\"auto, (max-width: 687px) 100vw, 687px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\">The system included multiple business rules, advanced client search functionality, and operational state management, and had been running in production for several years.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Although functional, it presented frequent errors, performance issues, and dependency on an obsolete PHP version, making its use and maintenance increasingly difficult.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Main System Features<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Creation and management of tour reservations in multiple languages<\/li>\n\n\n\n<li>Client association by:\n<ul class=\"wp-block-list\">\n<li>Hotels<\/li>\n\n\n\n<li>Travel agencies<\/li>\n\n\n\n<li>Country of origin<\/li>\n\n\n\n<li>Language<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Management of related entities:\n<ul class=\"wp-block-list\">\n<li>Creation of new travel agencies<\/li>\n\n\n\n<li>Creation of new hotels<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Operational workflow:\n<ul class=\"wp-block-list\">\n<li>Reservations \u2192 sales status once the tour is completed<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Business rules dependent on astronomical context (not modified)<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\">Issues Identified<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Constant visible errors when executing searches or actions<\/li>\n\n\n\n<li>Use of practices tolerated in PHP 5.x that generated warnings and failures in modern versions<\/li>\n\n\n\n<li>Inefficient searches, especially:\n<ul class=\"wp-block-list\">\n<li>Name-based searches returning the entire historical dataset<\/li>\n\n\n\n<li>Excessive result sets causing slowness and system lockups<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Inconsistent results when filtering by hotel, agency, language, or country<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\">Objective<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">To fix functional errors and stabilize the system in a modern PHP environment, improving usability and performance without altering the existing business logic.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\">Work Performed<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>1. Legacy System Analysis<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Review of PHP 5.4 codebase<\/li>\n\n\n\n<li>Identification of recurring errors and critical points<\/li>\n\n\n\n<li>Understanding of the complete reservation and sales workflow<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>2. Environment Upgrade<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Migration of the subdomain from PHP 5.4 to PHP 7.4<\/li>\n\n\n\n<li>Minimal compatibility adjustments required by the new version<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>3. Technical Error Fixes<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Correction of undefined constant usage<\/li>\n\n\n\n<li>Normalization of comparisons and variables<\/li>\n\n\n\n<li>Removal of visible warnings and errors without refactoring the system<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Example:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ C\u00f3digo legacy\nif ($mes == Enero) { ... }\n\n\/\/ Correcci\u00f3n compatible\nif ($mes == 'Enero') { ... }\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>4. Search and Performance Improvements<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Fixes to filters returning incorrect results<\/li>\n\n\n\n<li>Implementation of result pagination<\/li>\n\n\n\n<li>Load reduction by avoiding massive historical record returns<\/li>\n\n\n\n<li>Significant improvement in response times and usability<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>5. Production Deployment<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Full functional validation<\/li>\n\n\n\n<li>System running in PHP 7.4 in production<\/li>\n\n\n\n<li>Post-deployment stability verification<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\">Results<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stable legacy system operating in production<\/li>\n\n\n\n<li>Visible errors eliminated<\/li>\n\n\n\n<li>Functional and efficient search capabilities<\/li>\n\n\n\n<li>Improved performance when handling large historical datasets<\/li>\n\n\n\n<li>Technical foundation prepared for future progressive improvements<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\">Technologies<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>PHP 5.4 \u2192 PHP 7.4<\/li>\n\n\n\n<li>MySQL \/ mysqli<\/li>\n\n\n\n<li>Legacy system without framework<\/li>\n\n\n\n<li>Shared hosting + production subdomain<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\">Status<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">\u2714\ufe0f System stable in production<br>\u23ed\ufe0f Progressive modernization recommended as a future phase<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n","protected":false},"excerpt":{"rendered":"<p>Proyecto: Estabilizaci\u00f3n y actualizaci\u00f3n de sistema legacy de reservasRol: An\u00e1lisis, correcci\u00f3n funcional y actualizaci\u00f3n de entornoTecnolog\u00edas: PHP 5.4 \u2192 7.4, MySQL (mysqli), hosting compartido\u00c1mbito: Subdominio productivoSistema: Reservas tur\u00edsticas multiling\u00fces con gesti\u00f3n hist\u00f3rica y flujo reserva \u2192 venta Context A subdomain hosting a legacy system for tour reservations and historical management, originally developed in PHP 5.4 &#8230; <a title=\"Stabilization of a Multilingual Legacy Tourist Reservation System\" class=\"read-more\" href=\"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/\" aria-label=\"Read more about Stabilization of a Multilingual Legacy Tourist Reservation System\">Read more<\/a><\/p>\n","protected":false},"featured_media":261,"template":"","tipo_proyecto":[34],"class_list":["post-316","proyectos","type-proyectos","status-publish","has-post-thumbnail","hentry","tipo_proyecto-professional-en"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Stabilization of a Multilingual Legacy Tourist Reservation System - Vesna Franelich<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Stabilization of a Multilingual Legacy Tourist Reservation System - Vesna Franelich\" \/>\n<meta property=\"og:description\" content=\"Proyecto: Estabilizaci\u00f3n y actualizaci\u00f3n de sistema legacy de reservasRol: An\u00e1lisis, correcci\u00f3n funcional y actualizaci\u00f3n de entornoTecnolog\u00edas: PHP 5.4 \u2192 7.4, MySQL (mysqli), hosting compartido\u00c1mbito: Subdominio productivoSistema: Reservas tur\u00edsticas multiling\u00fces con gesti\u00f3n hist\u00f3rica y flujo reserva \u2192 venta Context A subdomain hosting a legacy system for tour reservations and historical management, originally developed in PHP 5.4 ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/\" \/>\n<meta property=\"og:site_name\" content=\"Vesna Franelich\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-22T04:12:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vesna.cl\/wp-content\/uploads\/2026\/01\/Screenshot-2026-01-21-at-21.30.50.png\" \/>\n\t<meta property=\"og:image:width\" content=\"687\" \/>\n\t<meta property=\"og:image:height\" content=\"403\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/\",\"url\":\"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/\",\"name\":\"Stabilization of a Multilingual Legacy Tourist Reservation System - Vesna Franelich\",\"isPartOf\":{\"@id\":\"https:\/\/vesna.cl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vesna.cl\/wp-content\/uploads\/2026\/01\/Screenshot-2026-01-21-at-21.30.50.png\",\"datePublished\":\"2026-01-22T04:12:28+00:00\",\"dateModified\":\"2026-01-22T04:12:29+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/#primaryimage\",\"url\":\"https:\/\/vesna.cl\/wp-content\/uploads\/2026\/01\/Screenshot-2026-01-21-at-21.30.50.png\",\"contentUrl\":\"https:\/\/vesna.cl\/wp-content\/uploads\/2026\/01\/Screenshot-2026-01-21-at-21.30.50.png\",\"width\":687,\"height\":403},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/vesna.cl\/index.php\/es\/inicio\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Stabilization of a Multilingual Legacy Tourist Reservation System\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/vesna.cl\/#website\",\"url\":\"https:\/\/vesna.cl\/\",\"name\":\"Vesna Franelich\",\"description\":\"Especialista en Soporte TI y Administraci\u00f3n de Sistemas\",\"alternateName\":\"Vesna Franelich R\u00edos\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/vesna.cl\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Stabilization of a Multilingual Legacy Tourist Reservation System - Vesna Franelich","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/","og_locale":"en_US","og_type":"article","og_title":"Stabilization of a Multilingual Legacy Tourist Reservation System - Vesna Franelich","og_description":"Proyecto: Estabilizaci\u00f3n y actualizaci\u00f3n de sistema legacy de reservasRol: An\u00e1lisis, correcci\u00f3n funcional y actualizaci\u00f3n de entornoTecnolog\u00edas: PHP 5.4 \u2192 7.4, MySQL (mysqli), hosting compartido\u00c1mbito: Subdominio productivoSistema: Reservas tur\u00edsticas multiling\u00fces con gesti\u00f3n hist\u00f3rica y flujo reserva \u2192 venta Context A subdomain hosting a legacy system for tour reservations and historical management, originally developed in PHP 5.4 ... Read more","og_url":"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/","og_site_name":"Vesna Franelich","article_modified_time":"2026-01-22T04:12:29+00:00","og_image":[{"width":687,"height":403,"url":"https:\/\/vesna.cl\/wp-content\/uploads\/2026\/01\/Screenshot-2026-01-21-at-21.30.50.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/","url":"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/","name":"Stabilization of a Multilingual Legacy Tourist Reservation System - Vesna Franelich","isPartOf":{"@id":"https:\/\/vesna.cl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/#primaryimage"},"image":{"@id":"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/#primaryimage"},"thumbnailUrl":"https:\/\/vesna.cl\/wp-content\/uploads\/2026\/01\/Screenshot-2026-01-21-at-21.30.50.png","datePublished":"2026-01-22T04:12:28+00:00","dateModified":"2026-01-22T04:12:29+00:00","breadcrumb":{"@id":"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/#primaryimage","url":"https:\/\/vesna.cl\/wp-content\/uploads\/2026\/01\/Screenshot-2026-01-21-at-21.30.50.png","contentUrl":"https:\/\/vesna.cl\/wp-content\/uploads\/2026\/01\/Screenshot-2026-01-21-at-21.30.50.png","width":687,"height":403},{"@type":"BreadcrumbList","@id":"https:\/\/vesna.cl\/index.php\/proyectos\/stabilization-of-a-multilingual-legacy-tourist-reservation-system\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vesna.cl\/index.php\/es\/inicio\/"},{"@type":"ListItem","position":2,"name":"Stabilization of a Multilingual Legacy Tourist Reservation System"}]},{"@type":"WebSite","@id":"https:\/\/vesna.cl\/#website","url":"https:\/\/vesna.cl\/","name":"Vesna Franelich","description":"Especialista en Soporte TI y Administraci\u00f3n de Sistemas","alternateName":"Vesna Franelich R\u00edos","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vesna.cl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vesna.cl\/index.php\/wp-json\/wp\/v2\/proyectos\/316","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vesna.cl\/index.php\/wp-json\/wp\/v2\/proyectos"}],"about":[{"href":"https:\/\/vesna.cl\/index.php\/wp-json\/wp\/v2\/types\/proyectos"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vesna.cl\/index.php\/wp-json\/wp\/v2\/media\/261"}],"wp:attachment":[{"href":"https:\/\/vesna.cl\/index.php\/wp-json\/wp\/v2\/media?parent=316"}],"wp:term":[{"taxonomy":"tipo_proyecto","embeddable":true,"href":"https:\/\/vesna.cl\/index.php\/wp-json\/wp\/v2\/tipo_proyecto?post=316"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}