From 508e1bc1c45001e1384ec0a6edd23ba08387e126 Mon Sep 17 00:00:00 2001 From: allen Date: Tue, 19 Sep 2000 23:52:49 +0000 Subject: Changing headers etc. git-svn-id: http://svn.cactuscode.org/arrangements/CactusConnect/HTTPDExtra/trunk@7 61ea717e-8e0c-4c3c-b38e-e9c67f54f1f1 --- src/Groups.c | 195 ++++++++++++++++------------------------------------------- src/IO.c | 50 +++++++-------- 2 files changed, 75 insertions(+), 170 deletions(-) diff --git a/src/Groups.c b/src/Groups.c index 05ebbfc..ccb3a9b 100644 --- a/src/Groups.c +++ b/src/Groups.c @@ -9,12 +9,14 @@ @@*/ #include +#include #include "cctk.h" #include "util_String.h" #include "DevThorns/httpd/src/http_Request.h" +#include "DevThorns/httpd/src/http_Content.h" static char *rcsid = "$Header$"; @@ -30,7 +32,6 @@ static char memo[4098]; ********************* Local Routine Prototypes ********************* ********************************************************************/ -static int GroupsPage(cGH *cctkGH, httpRequest *request, void *data); static int MessagesPage(cGH *cctkGH, httpRequest *request, void *data); /******************************************************************** @@ -61,133 +62,20 @@ static int MessagesPage(cGH *cctkGH, httpRequest *request, void *data); @@*/ int HTTPUTILS_RegisterPages(void) { - /* Register the group info page. */ - HTTP_RegisterPage("/Groups", GroupsPage, NULL); - /* Register the message board page. */ HTTP_RegisterPage("/Messages", MessagesPage, NULL); + + HTTP_ContentLink("/Messages/index.html", "Message Board", + "Collaborative simulation notepad", + HTTP_QUICKLINK); + + return 0; } /******************************************************************** ********************* Local Routines ************************* ********************************************************************/ - -/****************************************************************************** - ***************************** Groups Page ************************************** - ******************************************************************************/ - -static const char *cactus_header = " \ -\n \ -\n \ -
\ - \ -
\ -\n"; - -static const char *cactus_footer = \ -"
" \ -"\n \ -
\n \ -
\n \ -\n \ -Cactus Home Page
\n\ -Cactus Web Interface by The Cactus Team
\n\ -
\n"; - - /*@@ - @routine GroupsPage - @date Thu Sep 14 23:47:43 2000 - @author Gabrielle Allen - @desc - Displays the group description page. - @enddesc - @calls - @calledby -@@*/ -static int GroupsPage(cGH *cctkGH, httpRequest *request, void *data) -{ - int retval; - char message[4098]; - - /* Status message */ - strcpy(message,"HTTP/1.0 200 OK\r\n"); - - HTTP_Write(request, message, strlen(message)); - - /* Content-Type */ - strcpy(message,"Content-Type: text/html\r\n\r\n"); - - HTTP_Write(request, message, strlen(message)); - - - /* Start the page */ - strcpy(message,"Cactus Simulation Group Information\n"); - - HTTP_Write(request, message, strlen(message)); - - /* HTTP_Write out the header part. */ - - retval = HTTP_Write(request, cactus_header, strlen(cactus_header)); - - { - int i,j; - int ngroups,nvars; - - ngroups = CCTK_NumGroups(); - - strcpy(message, "

Groups and Variables:

" - "

This list describes the grid variables and their groups " - "active in this simulation. Red indicates" - " that storage is active for this group (at the time of the query).

" - "
"); - - - for(i=0; i < ngroups; i++) - { - strcat(message, "
"); - if (CCTK_QueryGroupStorageI(cctkGH,i)) - { - sprintf(message,"%s %d. %s\n", message, i, CCTK_GroupName(i)); - } - else - { - sprintf(message,"%s %d) %s\n", message, i, CCTK_GroupName(i)); - } - nvars = CCTK_NumVarsInGroupI(i); - strcat(message,"
"); - for(j=CCTK_FirstVarIndexI(i); j < CCTK_FirstVarIndexI(i)+nvars; j++) - { - strcat(message, "
"); - sprintf(message,"%s %d. %s\n", message, j, CCTK_VarName(j) ); - - } - strcat(message,"
"); - } - strcat(message, "
"); - - } - - HTTP_Write(request, message, strlen(message)); - - - /* Finish table started by blurb */ - strcpy(message, ""); - - HTTP_Write(request, message, strlen(message)); - - /* Write out the footer part. */ - - retval = HTTP_Write(request, cactus_footer, strlen(cactus_footer)); - - /* retval = HTTP_Write(request, base_page, strlen(base_page)); */ - - return retval; -} - - - /*@@ @routine MessagesPage @date Sat Sep 16 @@ -202,20 +90,20 @@ static int MessagesPage(cGH *cctkGH, httpRequest *request, void *data) { int retval; char message[4098]; - const httpArg *argument; + char currtime[100]; + char currdate[100]; if (request->n_arguments > 0) - { - argument = HTTP_ArgumentWalk(request, 1); - if (argument) - { - sprintf(memo,"%s\n\n

%s
",memo,argument->value); - } - argument = HTTP_ArgumentWalk(request, 0); - if (argument) - { - sprintf(memo,"%s\n\n%s

",memo,argument->value); - } + { + Util_CurrentTime(100,currtime); + Util_CurrentDate(100,currdate); + + sprintf(memo,"%s\n\n

%s %s %s
", + memo,HTTP_ArgumentValue(request, "name"), + currtime,currdate); + + sprintf(memo,"%s\n\n%s

",memo, + HTTP_ArgumentValue(request, "memo")); } /* Status message */ @@ -234,39 +122,60 @@ static int MessagesPage(cGH *cctkGH, httpRequest *request, void *data) HTTP_Write(request, message, strlen(message)); /* Write out the header part */ - HTTP_Write(request, cactus_header, strlen(cactus_header)); + HTTP_ContentHeader(0,4098,message); + HTTP_Write(request, message, strlen(message)); - strcpy(message,"

Simulation Message Board

\n"); + strcpy(message,"

Message Board

\n" + "

This page can be used to post messages during a simulation. " + "At the moment the messages will disappear when the simulation" + " finishes, but soon there will be an option to save them to a file" + "

" + ""); HTTP_Write(request, message, strlen(message)); sprintf(message, - "\n"); + "\n"); HTTP_Write(request, message, strlen(message)); - sprintf(message,"

Name:
" - "
\n"); + sprintf(message,"

\n"); HTTP_Write(request, message, strlen(message)); - sprintf(message,"Message:
" - "

\n"); + sprintf(message,"
Name:" + "" + "
Message:" + "\n" + "
"); HTTP_Write(request, message, strlen(message)); sprintf(message, - "

\n"); + "\n"); HTTP_Write(request, message, strlen(message)); - sprintf(message,"
%s
",memo); + sprintf(message,"%s","

Messages:

"); + HTTP_Write(request, message, strlen(message)); - HTTP_Write(request, message, strlen(message)); + if (strlen(memo)>0) + { + sprintf(message,"
%s
",memo); + HTTP_Write(request, message, strlen(message)); + } + else + { + strcpy(message,"
No messages yet ... use the form above to add one
"); + HTTP_Write(request, message, strlen(message)); + } + sprintf(message, "
"); + HTTP_Write(request, message, strlen(message)); /* Write out the footer part. */ - retval = HTTP_Write(request, cactus_footer, strlen(cactus_footer)); + HTTP_ContentFooter(0,4098,message); + retval = HTTP_Write(request, message, strlen(message)); return retval; } diff --git a/src/IO.c b/src/IO.c index ba79c63..fc96902 100644 --- a/src/IO.c +++ b/src/IO.c @@ -166,24 +166,6 @@ static int IOFileListener(cGH *GH, const char *filename, return 0; } -static const char *cactus_header = -"\n" -"\n" -"
" -"" -"
" -"\n"; - -static const char *cactus_footer = -"
" -"\n" -"
\n" -"
\n" -"\n" -"Cactus Home Page
\n" -"Cactus Web Interface by The Cactus Team
\n" -"
\n"; /*@@ @routine AdvertisedFilePage @@ -217,20 +199,30 @@ static int AdvertisedFilePage(cGH *cctkGH, httpRequest *request, void *data) /* Start the page */ strcpy(message, "Cactus Downloadable Files\n"); - strcat(message, cactus_header); - strcat(message, "

Downloadable Files

"); + HTTP_Write(request, message, strlen(message)); + + /* HTTP_Write out the header part. */ + + HTTP_ContentHeader(0,4098,message); HTTP_Write(request, message, strlen(message)); - strcpy(message, "
"); + strcpy(message, "

Downloadable Files

"); + HTTP_Write(request, message, strlen(message)); strcpy(message, - "
[This Simulation Homepage]
\n" - "

From this page you can download various output files \n" - "from the simulation. \n" - "" + "

From this page you can download various output files \n" + "from the simulation. Depending on the software available on your" + " local machine, you can change the browser properties to lauch" + " files directly to visualization clients.

\n " + "

Many IO methods have steerable parameters which " + "allow you to e.g. add fields and customise behaviour." + "Depending on your authorisation, you can access the" + " parameter steering page

" + "
" + "
" "\n"); HTTP_Write(request, message, strlen(message)); @@ -239,7 +231,7 @@ static int AdvertisedFilePage(cGH *cctkGH, httpRequest *request, void *data) { sprintf(message, "" - "", + "\n", list->linkname, list->filename, list->data.varname, list->data.description); HTTP_Write(request, message, strlen(message)); @@ -250,7 +242,11 @@ static int AdvertisedFilePage(cGH *cctkGH, httpRequest *request, void *data) /* Write out the footer part. */ - retval = HTTP_Write(request, cactus_footer, strlen(cactus_footer)); + /* HTTP_Write out the footer part. */ + + HTTP_ContentFooter(0,4098,message); + + retval = HTTP_Write(request, message, strlen(message)); return retval; } -- cgit v1.2.3
File NameVariableDescription
%s%s%s
%s%s