diff options
author | Jeffrey Armstrong <jeff@approximatrix.com> | 2021-03-29 08:48:48 -0400 |
---|---|---|
committer | Jeffrey Armstrong <jeff@approximatrix.com> | 2021-03-29 08:48:48 -0400 |
commit | 7614a6244d080b8c0f82da8c34ccf7a4a88fe72a (patch) | |
tree | 3114517c96ae230c5a27f16187135b3a987b9265 /captain/external.f90 | |
parent | c7bf38f440c3e1cafd2ddb35d4505e936d4e3e86 (diff) | |
download | levitating-7614a6244d080b8c0f82da8c34ccf7a4a88fe72a.tar.gz levitating-7614a6244d080b8c0f82da8c34ccf7a4a88fe72a.zip |
Added handling for basic external requests.
Diffstat (limited to 'captain/external.f90')
-rw-r--r-- | captain/external.f90 | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/captain/external.f90 b/captain/external.f90 index d33e13d..86efe94 100644 --- a/captain/external.f90 +++ b/captain/external.f90 @@ -4,12 +4,12 @@ implicit none contains - subroutine external_request_gemini(request) + function external_request_gemini(request) result(renderunit) use page_template implicit none character(*), intent(in)::request - + integer::renderunit character(1024)::template_file type(template)::page @@ -19,25 +19,34 @@ contains if(trim(request) == "/" .or. trim(request) == "/index.gmi") then - - + call page%assign('title', 'Home') + else if(trim(request) == "/releases.gmi") then - + call page%assign('title', 'Releases') else if(trim(request) == "/jobs.gmi") then - + call page%assign('title', 'Jobs') else if(trim(request) == "/players.gmi") then - + call page%assign('title', 'Players') else if(trim(request) == "/about.gmi") then + call page%assign('title', 'About') + + else + + call page%assign('title', 'Not Found') end if + + open(newunit=renderunit, form="formatted", status="scratch", access='stream') + + call page%render(renderunit) - end subroutine external_request_gemini + end function external_request_gemini end module external_handling
\ No newline at end of file |