From 7dbecc7f38df28e1ec8f2ea4f0c40e9022661caa Mon Sep 17 00:00:00 2001 From: Jocelyn Fiat Date: Wed, 15 Feb 2017 17:11:07 +0100 Subject: [PATCH] Removed jekyll specific code from the workbook files. --- docs/_layouts/default.html | 2 +- docs/workbook/basics/basics.md | 15 +++++---------- .../simple_html/apache_config/Readme.md | 9 ++------- docs/workbook/deployment/readme.md | 9 ++------- .../generating_response.md | 9 ++------- .../handling_cookies/handling_cookies.md | 9 ++------- docs/workbook/handling_request/form.md | 9 ++------- docs/workbook/handling_request/headers.md | 15 +++++---------- docs/workbook/readme.md | 19 +++++++------------ docs/workbook/workbook.md | 7 +------ docs/workbook/wui/readme.md | 7 +------ 11 files changed, 30 insertions(+), 80 deletions(-) diff --git a/docs/_layouts/default.html b/docs/_layouts/default.html index b620ee13..a7d4880b 100644 --- a/docs/_layouts/default.html +++ b/docs/_layouts/default.html @@ -28,7 +28,7 @@ Community - Documentation + Documentation

EiffelWeb

diff --git a/docs/workbook/basics/basics.md b/docs/workbook/basics/basics.md index d1aeb65e..2fc0e40f 100644 --- a/docs/workbook/basics/basics.md +++ b/docs/workbook/basics/basics.md @@ -1,9 +1,4 @@ ---- -layout: default -title: basics -base_url: ../../../ ---- -Nav: [Workbook](../../workbook) :: [Handling Requests: Form/Query Parameter](../../handling_request/form) +Nav: [Workbook](../workbook.md) :: [Handling Requests: Form/Query Parameter](../handling_request/form.md) ## EWF basic service @@ -97,11 +92,11 @@ The **WSF_RESPONSE** provides features to define the response with information s **APPLICATION** is the root class of our example, it launches the application, using the corresponding connector, Which connector? this depends how do you want to run it `cgi`, `fcgi`, `standalone`. For development is recommended to use a standalone web server written in Eiffel, and run the execution within the EiffelStudio debugger. For production fcgi (or cgi) using Apache or another popular web server. -![Launcher Hierarchy](../Launcher Hierarchy.png "Launcher Hierarchy") +![Launcher Hierarchy](./Launcher Hierarchy.png "Launcher Hierarchy") **WS_LAUNCHABLE_SERVICE** inherit from **WS_SERVICE** class, which is a marker interface in EWF. And also provides a way to launch our application using different kind of connectors. The class **WSF_DEFAULT_SERVICE_I**, inherit from **WS_LAUNCHABLE_SERVICE** and has a formal generic that should conform to **WSF_SERVICE_LAUNCHER [WSF_EXECUTION]**. Below a [BON diagram](http://www.bon-method.com/index_normal.htm) showing one of the possible options. -![Standalone Launcher](../WSF_SERVICE_LAUNCHER_STANDALONE.png "Standalone Hierarchy") +![Standalone Launcher](./WSF_SERVICE_LAUNCHER_STANDALONE.png "Standalone Hierarchy") Other connectors: **WSF_STANDALONE_SERVICE_LAUNCHER** @@ -114,7 +109,7 @@ The **APPLICATION_EXECUTION** class inherits from **WSF_EXECUTION** interface, In the **APPLICATION_EXECUTION** class class you will need to implement the **execute** feature, get data from the request *req* and write the response in *res*. -![Execution Hierarchy](../APPLICATION_EXECUTION.png "Application Execution ") +![Execution Hierarchy](./APPLICATION_EXECUTION.png "Application Execution ") The WSF_EXECUTION instance, in this case ```APPLICATION_EXECUTION``` is created per request, with two main attributes request: ```WSF_REQUEST``` and response: ```WSF_RESPONSE```. @@ -215,5 +210,5 @@ Just double click on the simple_html.ecf file and select the simple_html_standal ```estudio -config simple_html.ecf -target simple_html_standalone``` -Nav: [Workbook](../../workbook) :: [Handling Requests: Form/Query Parameter](../../handling_request/form) +Nav: [Workbook](../workbook.md) :: [Handling Requests: Form/Query Parameter](../handling_request/form.md) diff --git a/docs/workbook/basics/simple_html/apache_config/Readme.md b/docs/workbook/basics/simple_html/apache_config/Readme.md index 9a4a057f..c2fd0777 100644 --- a/docs/workbook/basics/simple_html/apache_config/Readme.md +++ b/docs/workbook/basics/simple_html/apache_config/Readme.md @@ -1,9 +1,4 @@ ---- -layout: default -title: Readme -base_url: ../../../../../ ---- -Nav: [Workbook](../../../../workbook) :: [Basic concepts](../../../../basics/basics) +Nav: [Workbook](../../../workbook.md) :: [Basic concepts](../../../basics/basics.md) ## Run simple_html example on Apache with FCGI on Windows. @@ -63,4 +58,4 @@ Check the application > http://localhost:8888/simple ``` -Nav: [Workbook](../../../../workbook) :: [Basic concepts](../../../../basics/basics) +Nav: [Workbook](../../../workbook.md) :: [Basic concepts](../../../basics/basics.md) diff --git a/docs/workbook/deployment/readme.md b/docs/workbook/deployment/readme.md index a0d25825..8e8afd6a 100644 --- a/docs/workbook/deployment/readme.md +++ b/docs/workbook/deployment/readme.md @@ -1,9 +1,4 @@ ---- -layout: default -title: readme -base_url: ../../../ ---- -Nav: [Workbook](../../workbook) +Nav: [Workbook](../workbook.md) EWF Deployment ============== @@ -200,4 +195,4 @@ http://perishablepress.com/stupid-htaccess-tricks/ Replace $service with the name of your executable $service, for example app_service.exe You will need to create an service.ews file, this file will be located at the same place where you copy your app service executable. -Nav: [Workbook](../../workbook) +Nav: [Workbook](../workbook.md) diff --git a/docs/workbook/generating_response/generating_response.md b/docs/workbook/generating_response/generating_response.md index 5afc0ce1..c6d4fcd4 100644 --- a/docs/workbook/generating_response/generating_response.md +++ b/docs/workbook/generating_response/generating_response.md @@ -1,10 +1,5 @@ ---- -layout: default -title: generating response -base_url: ../../../ ---- -Nav: [Workbook](../../workbook) :: [Handling Requests: Header Fields](../../handling_request/headers) :: [Handling Cookies](../../handling_cookies/handling_cookies) +Nav: [Workbook](../workbook.md) :: [Handling Requests: Header Fields](../handling_request/headers.md) :: [Handling Cookies](../handling_cookies/handling_cookies.md) ## EWF Generating Response @@ -1009,4 +1004,4 @@ There are four categories for response header fields: -Nav: [Workbook](../../workbook) :: [Handling Requests: Header Fields](../../handling_request/headers) :: [Handling Cookies](../../handling_cookies/handling_cookies) +Nav: [Workbook](../workbook.md) :: [Handling Requests: Header Fields](../handling_request/headers.md) :: [Handling Cookies](../handling_cookies/handling_cookies.md) diff --git a/docs/workbook/handling_cookies/handling_cookies.md b/docs/workbook/handling_cookies/handling_cookies.md index bf560ff9..d30ee90f 100644 --- a/docs/workbook/handling_cookies/handling_cookies.md +++ b/docs/workbook/handling_cookies/handling_cookies.md @@ -1,9 +1,4 @@ ---- -layout: default -title: handling cookies -base_url: ../../../ ---- -Nav: [Workbook](../../workbook) :: [Generating Responses](../../generating_response/generating_response) +Nav: [Workbook](../workbook.md) :: [Generating Responses](../generating_response/generating_response.md) # Handling Cookies @@ -296,4 +291,4 @@ end ``` -Nav: [Workbook](../../workbook) :: [Generating Responses](../../generating_response/generating_response) +Nav: [Workbook](../workbook.md) :: [Generating Responses](../generating_response/generating_response.md) diff --git a/docs/workbook/handling_request/form.md b/docs/workbook/handling_request/form.md index 13e88eb7..6cdf2416 100644 --- a/docs/workbook/handling_request/form.md +++ b/docs/workbook/handling_request/form.md @@ -1,9 +1,4 @@ ---- -layout: default -title: form -base_url: ../../../ ---- -Nav: [Workbook](../../workbook) :: [Basic Concepts](../../basics/basics) :: [Handling Requests: Header Fields](../headers) +Nav: [Workbook](../workbook.md) :: [Basic Concepts](../basics/basics.md) :: [Handling Requests: Header Fields](./headers.md) # Handling Requests: Form/Query Data @@ -325,4 +320,4 @@ The GET example is located in the directory $PATH/ewf/doc/workbook/form/get, and >Note: replace and with the corresponding values. -Nav: [Workbook](../../workbook) :: [Basic Concepts](../../basics/basics) :: [Handling Requests: Header Fields](../headers) +Nav: [Workbook](../workbook.md) :: [Basic Concepts](../basics/basics.md) :: [Handling Requests: Header Fields](./headers.md) diff --git a/docs/workbook/handling_request/headers.md b/docs/workbook/handling_request/headers.md index 4d65bff1..416fdbfd 100644 --- a/docs/workbook/handling_request/headers.md +++ b/docs/workbook/handling_request/headers.md @@ -1,9 +1,4 @@ ---- -layout: default -title: headers -base_url: ../../../ ---- -Nav: [Workbook](../../workbook) :: [Handling Requests: Form/Query parameters](../form) :: [Generating Responses](../../generating_response/generating_response) +Nav: [Workbook](../workbook.md) :: [Handling Requests: Form/Query parameters](./form.md) :: [Generating Responses](../generating_response/generating_response.md) # Handling Requests: Headers @@ -192,7 +187,7 @@ included in the Referer header when the browser requests Web page B. #### Building a Table of All Request Headers -The following [EWF service](../headers/header_fields/application.e) code simply uses an ```html_template``` to fill a table (names and values) with all the headers fields it receives. +The following [EWF service](./headers/header_fields/application.e) code simply uses an ```html_template``` to fill a table (names and values) with all the headers fields it receives. The service accomplishes this task by calling ```req.meta_variables``` feature to get an ```ITERABLE [WSF_STRING]```, an structure that can be iterated over using ```across...loop...end```, then it checks if the name has the prefix ```HTTP_``` and if it is true, put the header name and value in a row. (the name in the left cell, the value in the right cell). @@ -307,7 +302,7 @@ To be completed. #### Detecting Browser Types -The User-Agent header identifies the specific browser/client that is sending the request. The following code shows an [EWF service](../headers/browser_name/application.e) that sends browser-specific responses. +The User-Agent header identifies the specific browser/client that is sending the request. The following code shows an [EWF service](./headers/browser_name/application.e) that sends browser-specific responses. The examples uses the ideas based on the [Browser detection using the user agent](https://developer.mozilla.org/en-US/docs/Browser_detection_using_the_user_agent) article. Basically the code check if the header `user_agent` exist and then call the ```browser_name (a_user_agent: READABLE_STRING_8): READABLE_STRING_32``` feature to retrieve the current browser name or Unknown in other case. @@ -451,8 +446,8 @@ As an exercise, try to write a similar service to retrieve the OS family using t * [SERVER_SOFTWARE](https://tools.ietf.org/html/rfc3875#section-4.1.16) **Example** -An [EWF service](../headers/cgi_variables/application.e) that shows the CGI variables, creates a table showing the values of all the CGI variables. +An [EWF service](./headers/cgi_variables/application.e) that shows the CGI variables, creates a table showing the values of all the CGI variables. -Nav: [Workbook](../../workbook) :: [Handling Requests: Form/Query parameters](../form) :: [Generating Responses](../../generating_response/generating_response) +Nav: [Workbook](../workbook.md) :: [Handling Requests: Form/Query parameters](./form.md) :: [Generating Responses](../generating_response/generating_response.md) diff --git a/docs/workbook/readme.md b/docs/workbook/readme.md index cea55a7d..7b3183be 100644 --- a/docs/workbook/readme.md +++ b/docs/workbook/readme.md @@ -1,8 +1,3 @@ ---- -layout: default -title: readme -base_url: ../../ ---- # EWF Workbook ##### Table of Contents @@ -28,34 +23,34 @@ Before reading (or walking throught) the workbook, to get a quick overview of EW ## Introduction -[Basic Concepts](../basics/basics). +[Basic Concepts](./basics/basics.md). ## Handling Requests: Form/Query Parameter -[Handling Requests: Form/Query Parameter](../handling_request/form). +[Handling Requests: Form/Query Parameter](./handling_request/form.md). ## Handling Requests: Header Fields -[Handling Requests: Header Fields](../handling_request/headers). +[Handling Requests: Header Fields](./handling_request/headers.md). ## Generating Response -[Generating Responses](../generating_response/generating_response) +[Generating Responses](./generating_response/generating_response.md) ## Web User Interface -[Web User Interface](../wui/readme) +[Web User Interface](./wui/readme.md) ## Handling Cookies -[Handling Cookies](../handling_cookies/handling_cookies) +[Handling Cookies](./handling_cookies/handling_cookies.md) ## EWF Deployment -[EWF Deployment](../deployment/readme) +[EWF Deployment](./deployment/readme.md) diff --git a/docs/workbook/workbook.md b/docs/workbook/workbook.md index f13d088a..558f2fde 100644 --- a/docs/workbook/workbook.md +++ b/docs/workbook/workbook.md @@ -1,7 +1,2 @@ ---- -layout: default -title: workbook -base_url: ../../ ---- -See [README](../readme) +See [README](./readme.md) diff --git a/docs/workbook/wui/readme.md b/docs/workbook/wui/readme.md index 63ac9bd2..c7e24e0b 100644 --- a/docs/workbook/wui/readme.md +++ b/docs/workbook/wui/readme.md @@ -1,8 +1,3 @@ ---- -layout: default -title: readme -base_url: ../../../ ---- # Web User Interface (WUI) When it comes to web user interface, HTML, CSS and Javascript are part of the solution. @@ -116,7 +111,7 @@ new_login_form: WSF_FORM ## Handling web form data When a form is submitted, the code can access the request data thanks to the `request: WSF_REQUEST` attribute. -See [Handling requests section](../../handling_request/form) +See [Handling requests section](../handling_request/form.md) The `wsf_html` library, thanks to the `WSF_FORM`, provides a more powerful solution. Indeed `WSF_HTML.process (request, .., ..)` analyze the request, fill the form fields, and process various validations, and submissions automatically.