Corinth, Κόρινθος

6.4 kilometres in length and 21.4 metres wide at its base.
The Corinth Canal was dug through the Isthmus at sea level and has no locks.

Corinth
ΚΌΡΙΝΘΟΣ

Corinth is a town that is considered the gateway a framework to the Peloponnese Peninsula. it was one of the largest and wealthiest city-states in Greece, with two major ports: the Corinthian Gulf and the Saronic Gulf

Today, the site where Ancient Corinth once stood, has been excavated by archaeologists since 1896,  behind the site rises the hill of Acrocorinth. This government on Corinth allied with Sparta and Corinth participated in the Persian Wars. As a Roman colony in 44 BC, Corinth flourished and became the administrative capital of the Roman province of Achaea.

  • In 1858, the old city, now known as Ancient Corinth “Αρχαία Κόρινθος“, was totally destroyed by a magnitude 6.5 earthquake. New Corinth was built to the north-east of it.
  • In 1928 a magnitude 6.3 earthquake devastated the new city, which was then rebuilt on the same site.
  • In 1933 there was a great fire, and the new city was rebuilt again.

37 56.0’ N・22 56.0’ E

The Corinth Refinery is one of the largest oil refining industrial complexes in Europe. The municipal unit of Corinth had 38,132 inhabitants, of which Corinth itself had 30,176 inhabitants, placing it in third place behind Kalamata and Tripoli among the cities of the Peloponnese Region.

Corinth Canal
ΔΙΏΡΥΓΑ ΤΗΣ ΚΟΡΊΝΘΟΥ

The Corinth Canal separates the mainland of Greece from the Peloponnese Peninsula. Specifically, the Canal links the Gulf of Corinth of the Ionian Sea with the Saronic Gulf of the Aegean Sea. A map of Greece shows not only its thousands of islands but also this peninsula that would be the country’s largest island if it weren’t connected to the mainland by this four-mile-wide strip of land. Technically, the Corinth Canal makes the Peloponnese an island, but since it’s so narrow, most experts still refer to it as a peninsula. The canal was initially proposed in classical times and a failed effort was made to build it in the 1st century AD.
Construction started in 1881 but was hampered by geological and financial problems that bankrupted the original builders. It was completed in 1893 but, due to the canal’s narrowness, navigational problems and periodic closures to repair landslides from its steep walls, it failed to attract the level of traffic expected by its operators.

The canal consists of a single channel 8 metres (26 ft) deep, excavated at sea level (thus requiring no locks), measuring 6,343 metres (20,810 ft) long by 24.6 metres (81 ft) wide at the top and 21.3 metres (70 ft) wide at the bottom. The rock walls, which rise 90 metres (300 ft) above sea level, are at a near-vertical 80° angle. 

Corinth Framework
Πλαίσιο της Κορινθίας

Corinth - Open Channel Code

Trancelantic proudly present Corinth Framework. One of our simplest, smallest and oldest in house team solution. We released our first version in June 1998. Still running, just updated to current version. Many installations followed based on this straight and simple innovation. Corinth Framework is to build simple but effective web applications, web pages or application programming interfaces. Because of policy constraints and restrictions of many companies we decided to use just standards. No frameworks. No libraries. Showstoppers are any kind of license fees. So we just use php for scripting, sql for database storage and queries, html as markup language and css for good locking. No cookies. No JavaScript. That’s it. Keep it simple. Nothing else matters.

Keep it clear

Object orientated programming
Model view controller pattern
Three-tier architecture​

Keep it simple

PHP, SQL, HTML, CSS
No extended libraries
No license fees

Keep it safety

Open Source
No JavaScript
No Cookies

The Design

To keep our framework smart we choose the simple, but strict model view controller pattern (MVC). The user triggers a controller. The controller queries models and generate a view. The view show all needed data provided by the controller or the model.
In Corinth you always open a channel. The channel query data models, put it into the cargo container and create a view. The view show all needed data provided by the channel or the cargo.
Corinth-Design

The Channel

The channel is pretty easy but strict. A model container called result will flow through the whole channel. Result will hold all necessary arguments to execute. You can open a channel with or without a result container. You can prepare your arguments after opening a channel. After checking that all needed arguments are provided you ….
Corinth-Channel

The Flow

Corint-ChannelDetail

Open

Open a channel with or without cargo. The open method will help you to check cargo attributes and Please do not overwrite this function.

Corinth-Accident

The Heritage

A solid but strict base is essential at corinth framework. All objects are derived from a base class. This simplifies the design of the controllers, the handling of the results and the monitoring of coding errors. The diagram shows all necessary objects for a web page or web application. Simply pass the objects and override a few functions.

Corinth-Heritage

The Example

This is the channel. A solid channel build with solid tools into a solid rock. So let the data flow. Please open the description of the objects for detailed information.

A new channel is always opened by main control. The main control defines all arguments that a view control needs. Define static arguments or catch them from url. Any unhandled errors  will be cought by the main exception handler.

Prepare your view and fit it dynamically with data. Your view control will query all needed data using query controls. Use a view layout to build a html page or a xml file or a json string.
This is a simple common web page view layout.

<!DOCTYPE html>
<html>
    <head>
        <title><? $this->ShowTitel(); ?></title>
        <? $this->ShowTemplate("css", $results); ?>
    </head>
    <body>
        <div class="site">
            <? $this->ShowTemplate("header"); ?>
            <? $this->ShowTemplate("titel"); ?>
            <? $this->ShowTemplate("menu"); ?>
            <? $this->ShowTemplate("content"); ?>
            <? $this->ShowTemplate("footer"); ?>
        </div>
    </body>
</html>
A query control holds at least on sql statement. This control will parse the statement and fits the right values to it. Afterwards the statement will be send to a sql server and executed on it. The results will be passed back to the parent controller.

Your sql statements will be checked before executed. All required dynamic arguments in your sql statement will be replaced with the passed arguments from your query control. Pretty easy.

SELECT Id, Name FROM {TablePrefix}User WHERE Id = {Id}

For safety and debugging you can provide an escalation level for every object. Every control can hold an exception handler to catch unhandled exceptions. The worst thing is to show crypted error messages. Be honest. If you do something really wrong just say it. Keep clear that the current way is not a flawless way​. Track all exceptions to improve yourself.

$controller = new JsonViewController();
$controller->ExceptionHandler = new JsonExceptionHandler();
$controller->Execute();

improve yourself

Get in touch with us to create your own channel.