
richter at apache
Nov 26, 2002, 3:03 AM
Post #1 of 1
(96 views)
Permalink
|
|
cvs commit: embperl/xsbuilder/maps ep_structure.map
|
|
richter 2002/11/26 02:03:45 Modified: . Changes.pod MANIFEST embperl.h epcfg.h epcgiinit.c epdat2.h epdom.c epinit.c epmain.c epparse.c eppriv.h eputil.c mod_embperl.c test.pl Embperl/Syntax EmbperlBlocks.pm eg/web base.epl config.pl content.epl menuleft.epl messages.pl notfound.htm eg/web/db/news data.epd podsrc Config.spod test testapp.pl test/cmp i18n.htm test/cmp2 i18n.htm test/conf httpd.conf.src test/html/app i18n.htm xsbuilder/maps ep_structure.map Added: eg/web/db index.htm test/cmp xhtml.htm test/html xhtml.htm Log: - website changes - If no name is given for a key, Form::Validate now tries to lookup the correct text via Embperl's gettext method. - Fixed problem with message ids that are Perl keywords. Reported by Jaak. - Added EMBPERL_COOKIE_SECURE option to transfer cookie only over a secure connection. - Added EMBPERL_OUTPUT_MODE that allows to change to XML output, which cause generated tags to contains a closing slash, so they are valid XML/XHTML. Revision Changes Path 1.192 +5 -0 embperl/Changes.pod Index: Changes.pod =================================================================== RCS file: /home/cvs/embperl/Changes.pod,v retrieving revision 1.191 retrieving revision 1.192 diff -u -r1.191 -r1.192 --- Changes.pod 20 Nov 2002 06:56:25 -0000 1.191 +++ Changes.pod 26 Nov 2002 10:03:40 -0000 1.192 @@ -43,6 +43,11 @@ - Fixed segfault when cleanup is called to early. Reported by Neil Gunton. - If no name is given for a key, Form::Validate now tries to lookup the correct text via Embperl's gettext method. + - Fixed problem with message ids that are Perl keywords. Reported by Jaak. + - Added EMBPERL_COOKIE_SECURE option to transfer cookie only over a secure + connection. + - Added EMBPERL_OUTPUT_MODE that allows to change to XML output, which cause + generated tags to contains a closing slash, so they are valid XML/XHTML. =head1 2.0b8 (BETA) 25. Juni 2002 1.76 +3 -0 embperl/MANIFEST Index: MANIFEST =================================================================== RCS file: /home/cvs/embperl/MANIFEST,v retrieving revision 1.75 retrieving revision 1.76 diff -u -r1.75 -r1.76 --- MANIFEST 20 Nov 2002 07:02:45 -0000 1.75 +++ MANIFEST 26 Nov 2002 10:03:40 -0000 1.76 @@ -105,6 +105,7 @@ eg/web/db/news/pod.xsl eg/web/db/pod.xsl eg/web/db/show.epl +eg/web/db/index.htm eg/web/db/login.epl eg/web/db/loginform.epl eg/web/db/list.epl @@ -340,6 +341,7 @@ test/cmp/varepvar.htm test/cmp/varerr.htm test/cmp/varerr.htm56 +test/cmp/xhtml.htm test/cmp2/epobless2.htm test/cmp2/epobless3.htm test/cmp2/epodiv.htm @@ -548,6 +550,7 @@ test/html/xml/pod.xml test/html/xml/pod.xsl test/html/xml/podold.xsl +test/html/xhtml.htm test/html/errormismatch.htm test/html/errormismatchcmd.htm test/testapp.pl 1.31 +10 -1 embperl/embperl.h Index: embperl.h =================================================================== RCS file: /home/cvs/embperl/embperl.h,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- embperl.h 22 Oct 2002 05:29:04 -0000 1.30 +++ embperl.h 26 Nov 2002 10:03:40 -0000 1.31 @@ -92,6 +92,7 @@ rcRefcntNotOne, rcApacheErr, rcTooDeepNested, + rcUnknownOption, rcForbidden = 403, rcNotFound = 404, rcDecline = -1 @@ -184,6 +185,14 @@ escXML = 8, escStd = 7 + } ; + +/* --- output mode --- */ + +enum tOutputMode + { + omodeHtml = 0, + omodeXml = 1, } ; /* --- input escaping --- */ 1.3 +13 -9 embperl/epcfg.h Index: epcfg.h =================================================================== RCS file: /home/cvs/embperl/epcfg.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- epcfg.h 22 Oct 2002 05:29:04 -0000 1.2 +++ epcfg.h 26 Nov 2002 10:03:40 -0000 1.3 @@ -5,14 +5,16 @@ #define SEPARATOR ":;" #endif + + #ifdef EPCFG_COMPONENT /* tComponentConfig */ EPCFG_STR (ComponentConfig, char *, sPackage, PACKAGE) -EPCFG_INT (ComponentConfig, unsigned, bDebug, DEBUG) -EPCFG_INT (ComponentConfig, unsigned, bOptions, OPTIONS) -EPCFG_INT (ComponentConfig, int , nEscMode, ESCMODE) -EPCFG_INT (ComponentConfig, int , nInputEscMode, INPUT_ESCMODE) +EPCFG_INTOPT (ComponentConfig, unsigned, bDebug, DEBUG) +EPCFG_INTOPT (ComponentConfig, unsigned, bOptions, OPTIONS) +EPCFG_INTOPT (ComponentConfig, int , nEscMode, ESCMODE) +EPCFG_INTOPT (ComponentConfig, int , nInputEscMode, INPUT_ESCMODE) EPCFG_STR (ComponentConfig, char *, sInputCharset, INPUT_CHARSET) EPCFG_STR (ComponentConfig, char *, sCacheKey, CACHE_KEY) EPCFG_INT (ComponentConfig, unsigned, bCacheKeyOptions, CACHE_KEY_OPTIONS) @@ -34,9 +36,10 @@ EPCFG_REGEX(ReqConfig, CV *, pUriMatch, URIMATCH) EPCFG_CHAR(ReqConfig, char , cMultFieldSep, MULTFIELDSEP ) EPCFG_AV (ReqConfig, AV *, pPathAV, PATH, SEPARATOR) -EPCFG_INT (ReqConfig, unsigned, bDebug, DEBUG) -EPCFG_INT (ReqConfig, unsigned, bOptions, OPTIONS) -EPCFG_INT (ReqConfig, int , nSessionMode, SESSION_MODE) +EPCFG_INTOPT (ReqConfig, unsigned, bDebug, DEBUG) +EPCFG_INTOPT (ReqConfig, unsigned, bOptions, OPTIONS) +EPCFG_INTOPT (ReqConfig, int , nSessionMode, SESSION_MODE) +EPCFG_INTOPT (ReqConfig, int , nOutputMode, OUTPUT_MODE) #endif @@ -53,9 +56,10 @@ EPCFG_STR(AppConfig, char *, sCookieDomain, COOKIE_DOMAIN) EPCFG_STR(AppConfig, char *, sCookiePath, COOKIE_PATH) EPCFG_STR(AppConfig, char *, sCookieExpires, COOKIE_EXPIRES) +EPCFG_BOOL(AppConfig, bool, bCookieSecure, COOKIE_SECURE) EPCFG_STR(AppConfig, char *, sLog, LOG) -EPCFG_INT(AppConfig, unsigned,bDebug, DEBUG) -EPCFG_INT(AppConfig, bool, bMaildebug, MAILDEBUG) +EPCFG_INTOPT(AppConfig, unsigned,bDebug, DEBUG) +EPCFG_BOOL(AppConfig, bool, bMaildebug, MAILDEBUG) EPCFG_STR(AppConfig, char *, sMailhost, MAILHOST) EPCFG_STR(AppConfig, char *, sMailhelo, MAILHELO) EPCFG_STR(AppConfig, char *, sMailfrom, MAILFROM) 1.3 +20 -1 embperl/epcgiinit.c Index: epcgiinit.c =================================================================== RCS file: /home/cvs/embperl/epcgiinit.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- epcgiinit.c 22 Oct 2002 05:29:04 -0000 1.2 +++ epcgiinit.c 26 Nov 2002 10:03:40 -0000 1.3 @@ -30,6 +30,25 @@ tainted = 0 ; \ } +#define EPCFG_INTOPT(STRUCT,TYPE,NAME,CFGNAME) \ + { \ + char * p ; \ + tainted = 0 ; \ + p = GetHashValueStr (aTHX_ pThread -> pEnvHash, REDIR"EMBPERL_"#CFGNAME, NULL) ; \ + if (p) \ + if (isdigit(*p)) \ + pConfig -> NAME = (TYPE)strtol (p, NULL, 0) ; \ + else \ + { \ + int val ; \ + int rc ; \ + if (rc = embperl_OptionListSearch(Options##CFGNAME,1,#CFGNAME,p,&val)) \ + return rc ; \ + pConfig -> NAME = (TYPE)val ; \ + } \ + tainted = 0 ; \ + } + #undef EPCFG_BOOL #define EPCFG_BOOL(STRUCT,TYPE,NAME,CFGNAME) \ tainted = 0 ; \ 1.3 +3 -1 embperl/epdat2.h Index: epdat2.h =================================================================== RCS file: /home/cvs/embperl/epdat2.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- epdat2.h 22 Oct 2002 05:29:05 -0000 1.2 +++ epdat2.h 26 Nov 2002 10:03:40 -0000 1.3 @@ -106,6 +106,7 @@ CV * pUriMatch ; char cMultFieldSep ; AV * pPathAV ; + int nOutputMode ; unsigned bDebug ; unsigned bOptions ; int nSessionMode ; /**< sets how to pass the session id, see smodeXXX constants */ @@ -140,6 +141,7 @@ char * sCookieDomain ; char * sCookiePath ; char * sCookieExpires ; + bool bCookieSecure ; char * sLog ; unsigned bDebug ; char * sMailhost ; 1.9 +5 -5 embperl/epdom.c Index: epdom.c =================================================================== RCS file: /home/cvs/embperl/epdom.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- epdom.c 20 Nov 2002 06:56:26 -0000 1.8 +++ epdom.c 26 Nov 2002 10:03:40 -0000 1.9 @@ -3356,11 +3356,11 @@ } else { - pNodeStart = "<" ; - pNodeEnd = ">" ; nNodeStartLen = 1 ; - nNodeEndLen = 1 ; + nNodeEndLen = r -> Config.nOutputMode == omodeXml && pNode -> nType == ntypTag?3:1 ; nNodeNameLen = strlen (pNodeName) ; + pNodeStart = "<" ; + pNodeEnd = nNodeEndLen == 3?" />":">" ; } owrite (r, pNodeStart, nNodeStartLen) ; @@ -3471,7 +3471,7 @@ { oputs (r, "</") ; oputs (r, Node_selfNodeName (pNode)) ; - oputc (r, '>') ; + oputc (r, '>') ; } } } 1.4 +120 -1 embperl/epinit.c Index: epinit.c =================================================================== RCS file: /home/cvs/embperl/epinit.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- epinit.c 15 Nov 2002 06:17:41 -0000 1.3 +++ epinit.c 26 Nov 2002 10:03:41 -0000 1.4 @@ -67,6 +67,125 @@ static tReq NullRequest ; /* a request object with all zero, to point for deleted objects */ +/* ------------------------------------------------------------------------- +* +* Options lists for configuration +* +*/ + +#define OPTION(a,b) { #a, a}, { #b, a}, + +tOptionEntry OptionsDEBUG[] = + { + OPTION(dbgStd, std) + OPTION(dbgMem,Mem) + OPTION(dbgEval,Eval) + OPTION(dbgCmd,Cmd) + OPTION(dbgEnv,Env) + OPTION(dbgForm,Form) + OPTION(dbgTab,Tab) + OPTION(dbgInput,Input) + OPTION(dbgFlushOutput,FlushOutput) + OPTION(dbgFlushLog,FlushLog) + OPTION(dbgAllCmds,AllCmds) + OPTION(dbgSource,Source) + OPTION(dbgFunc,Func) + OPTION(dbgLogLink,LogLink) + OPTION(dbgDefEval,DefEval) + OPTION(dbgOutput,Output) + OPTION(dbgDOM,DOM) + OPTION(dbgRun,Run) + OPTION(dbgHeadersIn,HeadersIn) + OPTION(dbgShowCleanup,ShowCleanup) + OPTION(dbgProfile,Profile) + OPTION(dbgSession,Session) + OPTION(dbgImport,Import) + OPTION(dbgBuildToken,BuildToken) + OPTION(dbgParse,Parse) + OPTION(dbgObjectSearch,ObjectSearch) + OPTION(dbgCache,Cache) + OPTION(dbgCompile,Compile) + OPTION(dbgXML,XML) + OPTION(dbgXSLT,XSLT) + OPTION(dbgCheckpoint,Checkpoint) + OPTION(dbgAll,All) + } ; + +#define OPTION_OPT(a) OPTION(opt##a, a) + +tOptionEntry OptionsOPTIONS[] = + { + OPTION_OPT(DisableVarCleanup) + OPTION_OPT(DisableEmbperlErrorPage) + OPTION_OPT(SafeNamespace) + OPTION_OPT(OpcodeMask) + OPTION_OPT(RawInput) + OPTION_OPT(SendHttpHeader) + OPTION_OPT(EarlyHttpHeader) + OPTION_OPT(DisableChdir) + OPTION_OPT(DisableFormData) + OPTION_OPT(DisableHtmlScan) + OPTION_OPT(DisableInputScan) + OPTION_OPT(DisableTableScan) + OPTION_OPT(DisableMetaScan) + OPTION_OPT(AllFormData) + OPTION_OPT(RedirectStdout) + OPTION_OPT(UndefToEmptyValue) + OPTION_OPT(NoHiddenEmptyValue) + OPTION_OPT(AllowZeroFilesize) + OPTION_OPT(ReturnError) + OPTION_OPT(KeepSrcInMemory) + OPTION_OPT(KeepSpaces) + OPTION_OPT(OpenLogEarly) + OPTION_OPT(NoUncloseWarn) + OPTION_OPT(DisableSelectScan) + OPTION_OPT(ShowBacktrace) + OPTION_OPT(EnableChdir) + } ; + + +#define OPTION_ESC(a) OPTION(esc##a, a) + +tOptionEntry OptionsESCMODE[] = + { + OPTION_ESC(None) + OPTION_ESC(Html) + OPTION_ESC(Url) + OPTION_ESC(Escape) + OPTION_ESC(XML) + OPTION_ESC(Std) + } ; + + +#define OPTION_IESC(a) OPTION(iesc##a, a) + +tOptionEntry OptionsINPUT_ESCMODE[] = + { + OPTION_IESC(None) + OPTION_IESC(Html) + OPTION_IESC(Url) + OPTION_IESC(RemoveTags) + } ; + +#define OPTION_OMODE(a) OPTION(omode##a, a) + +tOptionEntry OptionsOUTPUT_MODE[] = + { + OPTION_OMODE(Html) + OPTION_OMODE(Xml) + } ; + +#define OPTION_SMODE(a) OPTION(smode##a, a) + +tOptionEntry OptionsSESSION_MODE[] = + { + OPTION_SMODE(None) + OPTION_SMODE(UDatCookie) + OPTION_SMODE(UDatParam) + OPTION_SMODE(UDatUrl) + OPTION_SMODE(SDatParam) + } ; + /*--------------------------------------------------------------------------- * embperl_SetupThread 1.120 +8 -1 embperl/epmain.c Index: epmain.c =================================================================== RCS file: /home/cvs/embperl/epmain.c,v retrieving revision 1.119 retrieving revision 1.120 diff -u -r1.119 -r1.120 --- epmain.c 22 Oct 2002 05:29:05 -0000 1.119 +++ epmain.c 26 Nov 2002 10:03:41 -0000 1.120 @@ -177,6 +177,7 @@ case rcRefcntNotOne: msg ="[%d]ERR: %d: %s There is still %s reference(s) to the %s object, while there shouldn't be any." ; break ; case rcApacheErr: msg ="[%d]ERR: %d: %s Apache returns Error: %s %s" ; break ; case rcTooDeepNested: msg ="[%d]ERR: %d: %s Source data is too deep nested %s %s" ; break ; + case rcUnknownOption: msg ="[%d]ERR: %d: %s Unkown option '%s' in configuration directive '%s'" ; break ; default: msg ="[%d]ERR: %d: %s Error (no description) %s %s" ; break ; } @@ -497,6 +498,8 @@ pCookie = ep_pstrcat (r -> pPool, pCookie, "; domain=", pCfg -> sCookieDomain, NULL) ; if (pCfg -> sCookiePath) pCookie = ep_pstrcat (r -> pPool, pCookie, "; path=", pCfg -> sCookiePath, NULL) ; + if (pCfg -> bCookieSecure) + pCookie = ep_pstrcat (r -> pPool, pCookie, "; secure", NULL) ; } if (r -> Config.bDebug & dbgSession) @@ -515,6 +518,8 @@ pCookie = ep_pstrcat (r -> pPool, pCookie, "; path=", pCfg -> sCookiePath, NULL) ; if (pCfg -> sCookieExpires) pCookie = ep_pstrcat (r -> pPool, pCookie, "; expires=", pCfg -> sCookieExpires, NULL) ; + if (pCfg -> bCookieSecure) + pCookie = ep_pstrcat (r -> pPool, pCookie, "; secure", NULL) ; if (r -> Config.bDebug & dbgSession) lprintf (r -> pApp, "[%d]SES: Send Cookie -> %s\n", r -> pThread -> nPid, pCookie) ; @@ -522,6 +527,8 @@ else { pCookie = ep_pstrdup (r -> pPool, SvPV(pSVUID, ldummy)) ; + if (r -> Config.bDebug & dbgSession) + lprintf (r -> pApp, "[%d]SES: Add ID to URL type=%c id=%s\n", r -> pThread -> nPid, type, pCookie) ; } } } 1.7 +8 -6 embperl/epparse.c Index: epparse.c =================================================================== RCS file: /home/cvs/embperl/epparse.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- epparse.c 22 Oct 2002 05:29:06 -0000 1.6 +++ epparse.c 26 Nov 2002 10:03:42 -0000 1.7 @@ -756,14 +756,15 @@ if (pEndCurr - pCurr && pToken -> nCDataType && pToken -> nCDataType != ntypCDATA) { /* add text before end of token as node */ char * pEnd = pEndCurr ; + char c; if (pToken -> bRemoveSpaces & 32) - while (pEnd >= pCurrStart && isspace (*pEnd)) + while (pEnd > pCurrStart && isspace (*(pEnd-1))) pEnd-- ; else if (pToken -> bRemoveSpaces & 64) - while (pEnd >= pCurrStart && (*pEnd == ' ' || *pEnd == '\t' || *pEnd == '\r')) + while (pEnd > pCurrStart && ((c = *(pEnd-1)) == ' ' || c == '\t' || c == '\r')) pEnd-- ; - + if (pToken -> bUnescape) { int newlen ; @@ -931,12 +932,13 @@ { int nLine ; char * pEnd = pEndCurr ; + char c; if (pToken -> bRemoveSpaces & 32) - while (pEnd >= pCurrStart && isspace (*pEnd)) + while (pEnd > pCurrStart && isspace (*(pEnd-1))) pEnd-- ; else if (pToken -> bRemoveSpaces & 64) - while (pEnd >= pCurrStart && (*pEnd == ' ' || *pEnd == '\t' || *pEnd == '\r')) + while (pEnd > pCurrStart && ((c = *(pEnd-1)) == ' ' || c == '\t' || c == '\r')) pEnd-- ; if (pToken -> bUnescape) 1.3 +25 -1 embperl/eppriv.h Index: eppriv.h =================================================================== RCS file: /home/cvs/embperl/eppriv.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- eppriv.h 22 Oct 2002 05:29:06 -0000 1.2 +++ eppriv.h 26 Nov 2002 10:03:42 -0000 1.3 @@ -211,6 +211,30 @@ /*out*/ tReqParam * pParam) ; +typedef struct tOptionEntry + { + const char * sOption ; + int nValue ; + } tOptionEntry ; + +extern tOptionEntry OptionsDEBUG[] ; +extern tOptionEntry OptionsOPTIONS[] ; +extern tOptionEntry OptionsESCMODE[] ; +extern tOptionEntry OptionsINPUT_ESCMODE[] ; +extern tOptionEntry OptionsOUTPUT_MODE[] ; +extern tOptionEntry OptionsSESSION_MODE[] ; + + + +int embperl_OptionListSearch (/*in*/ tOptionEntry * pList, + /*in*/ bool bMult, + /*in*/ const char * sCmd, + /*in*/ const char * sOptions, + /*in*/ int * pnValue) ; + + + + /* --- init --- */ #if 0 1.28 +88 -3 embperl/eputil.c Index: eputil.c =================================================================== RCS file: /home/cvs/embperl/eputil.c,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- eputil.c 22 Oct 2002 05:29:06 -0000 1.27 +++ eputil.c 26 Nov 2002 10:03:42 -0000 1.28 @@ -159,9 +159,9 @@ if (nEscMode >= 0) { - if (nEscMode & escXML && !r -> Component.bEscInUrl) + if ((nEscMode & escXML) && !r -> Component.bEscInUrl) pEscTab = Char2XML ; - if (nEscMode & escHtml && !r -> Component.bEscInUrl) + else if ((nEscMode & escHtml) && !r -> Component.bEscInUrl) pEscTab = Char2Html ; else if (nEscMode & escUrl) pEscTab = Char2Url ; @@ -1795,6 +1795,91 @@ return sMsgId ; } + + +/* ------------------------------------------------------------------------ */ +/* */ +/* embperl_OptionListSearch */ +/* */ +/*! +* \_en +* Lookup a number of options from a list and return numeric equivalent +* @param pList Option/Valus pairs +* @param bMult Allow multiple options +* @param sCmd Configurationdirective (for errormessage) +* @param sOptions Option string +* @param pnValue Returns option value +* @return error code +* +* \endif +* +* \_de +* Ermittelt aus einer Liste von Optionen das numerische Equivalent +* @param pList Option/Wertepaare +* @param bMult Mehrfachoptionen erlaubt +* @param sCmd Konfigurationsdirektive (für Fehlermeldung) +* @param sOptions Optionszeichenkette +* @param pnValue Liefert den Optionswert zurück +* @return Fehlercode +* +* \endif +* +* ------------------------------------------------------------------------ */ + + +int embperl_OptionListSearch (/*in*/ tOptionEntry * pList, + /*in*/ bool bMult, + /*in*/ const char * sCmd, + /*in*/ const char * sOptions, + /*in*/ int * pnValue) + { + char * sKeyword ; + char * sOpts = strdup (sOptions) ; + dTHX ; + + *pnValue = 0 ; + + sKeyword = strtok (sOpts, ", \t\n") ; + while (sKeyword) + { + tOptionEntry * pEntry = pList ; + bool found = 0 ; + + while (pEntry -> sOption) + { + if (stricmp (sKeyword, pEntry -> sOption) == 0) + { + *pnValue |= pEntry -> nValue ; + if (!bMult) + { + if (sOpts) + free (sOpts) ; + + return ok ; + } + found = 1 ; + } + } + if (!found) + { + LogErrorParam (NULL, rcUnknownOption, sKeyword, sCmd) ; + if (sOpts) + free (sOpts) ; + + return rcUnknownOption ; + } + + + } + + + if (sOpts) + free (sOpts) ; + + return ok ; + } + + 1.3 +26 -2 embperl/mod_embperl.c Index: mod_embperl.c =================================================================== RCS file: /home/cvs/embperl/mod_embperl.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- mod_embperl.c 22 Oct 2002 05:29:06 -0000 1.2 +++ mod_embperl.c 26 Nov 2002 10:03:42 -0000 1.3 @@ -53,6 +53,7 @@ #define EPCFG_STR EPCFG #define EPCFG_INT EPCFG +#define EPCFG_INTOPT EPCFG #define EPCFG_BOOL EPCFG #define EPCFG_CHAR EPCFG @@ -212,7 +213,7 @@ void embperl_ApacheAddModule (void) { - apr_pool_t * pool ; + /*apr_pool_t * pool ;*/ bApDebug |= ap_exists_config_define("EMBPERL_APDEBUG") ; @@ -447,6 +448,7 @@ #undef EPCFG_STR #undef EPCFG_INT +#undef EPCFG_INTOPT #undef EPCFG_BOOL #undef EPCFG_CHAR #undef EPCFG_CV @@ -456,6 +458,7 @@ #undef EPCFG_REGEX #define EPCFG_INT EPCFG +#define EPCFG_INTOPT EPCFG #define EPCFG_BOOL EPCFG #define EPCFG_CHAR EPCFG @@ -572,6 +575,25 @@ return NULL; \ } +#undef EPCFG_INTOPT +#define EPCFG_INTOPT(STRUCT,TYPE,NAME,CFGNAME) \ +const char * embperl_Apache_Config_##STRUCT##NAME (cmd_parms *cmd, /* tApacheDirConfig */ void * pDirCfg, const char * arg) \ + { \ + if (isdigit(*arg)) \ + ((tApacheDirConfig *)pDirCfg) -> STRUCT.NAME = (TYPE)strtol(arg, NULL, 0) ; \ + else \ + { \ + int val ; \ + if (embperl_OptionListSearch(Options##CFGNAME,1,#CFGNAME,arg,&val)) \ + return "Unknown Option" ; \ + ((tApacheDirConfig *)pDirCfg) -> STRUCT.NAME = (TYPE)val ; \ + } \ + ((tApacheDirConfig *)pDirCfg) -> set_##STRUCT##NAME = 1 ; \ + if (bApDebug) \ + ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Set "#CFGNAME" (type="#TYPE";INT) = %s\n", arg) ; \ + return NULL; \ + } + #undef EPCFG_BOOL #define EPCFG_BOOL(STRUCT,TYPE,NAME,CFGNAME) \ const char * embperl_Apache_Config_##STRUCT##NAME (cmd_parms *cmd, /* tApacheDirConfig */ void * pDirCfg, const char * arg) \ @@ -656,9 +678,11 @@ #undef EPCFG_STR #undef EPCFG_INT +#undef EPCFG_INTOPT #undef EPCFG_BOOL #undef EPCFG_CHAR #define EPCFG_INT EPCFG +#define EPCFG_INTOPT EPCFG #define EPCFG_BOOL EPCFG #define EPCFG_CHAR EPCFG #undef EPCFG 1.120 +5 -1 embperl/test.pl Index: test.pl =================================================================== RCS file: /home/cvs/embperl/test.pl,v retrieving revision 1.119 retrieving revision 1.120 diff -u -r1.119 -r1.120 --- test.pl 22 Oct 2002 05:29:06 -0000 1.119 +++ test.pl 26 Nov 2002 10:03:42 -0000 1.120 @@ -972,6 +972,9 @@ 'version' => 2, 'app_handler_class' => 'Embperl::TEST::App', }, + 'xhtml.htm' => { + 'version' => 2, + }, ) ; for ($i = 0 ; $i < @testdata; $i += 2) @@ -1457,6 +1460,7 @@ } $cookie = $c if (($c =~ /EMBPERL_UID/) && !($cookieaction =~ /nosave/)) ; $cookie = undef if (($c =~ /EMBPERL_UID=;/) && !($cookieaction =~ /nosave/)) ; + $cookie =~ s/;.*$// if ($cookie) ; $sendcookie ||= '' ; print "\nSent: $sendcookie, Got: " , ($c||''), "\n" if ($opt_showcookie) ; 1.3 +4 -2 embperl/Embperl/Syntax/EmbperlBlocks.pm Index: EmbperlBlocks.pm =================================================================== RCS file: /home/cvs/embperl/Embperl/Syntax/EmbperlBlocks.pm,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- EmbperlBlocks.pm 22 Oct 2002 05:39:49 -0000 1.2 +++ EmbperlBlocks.pm 26 Nov 2002 10:03:44 -0000 1.3 @@ -482,11 +482,13 @@ 'text' => '[=', 'end' => '=]', 'unescape' => 1, + removespaces => 72, + 'cdatatype' => ntypAttrValue, 'procinfo' => { embperl => { perlcode => [ - '_ep_rpid(%$x%,scalar(%#0%));', + '_ep_rpid(%$x%,scalar(%&\'<noname>%));', ], removenode => 4, compilechilds => 0, 1.3 +4 -7 embperl/eg/web/base.epl Index: base.epl =================================================================== RCS file: /home/cvs/embperl/eg/web/base.epl,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- base.epl 22 Oct 2002 05:39:50 -0000 1.2 +++ base.epl 26 Nov 2002 10:03:44 -0000 1.3 @@ -24,7 +24,10 @@ .cTabsOn {[+ $base14 +] background: #ddaaaa; } .cTabsOff {[+ $base14 +] background: #DDDDDD; } .cMenu {[+ $base10 +] color: #000000 ; text-align: left ;} + .cMenuInfo {[+ $base10 +] color: #000000 ; text-align: left ; background: #D2E9F5 } .cNews {[+ $base10 +]} + .cContent {[+ $base12 +] border-left: 1px black solid ; border-right: 1px black solid ; padding-left: 7px; padding-right: 7px; } + .cContentNews {[+ $base12 +] border-left: 1px black solid ; margin-left: 7px; padding-left: 7px; } .cPodHeaderNavLink {[+ $base12 +]} .cPodH1ContentLink {[+ $base12 +] font-weight: bold;} @@ -54,13 +57,7 @@ <table width="100%" cellspacing="0" cellpadding="0" border="0"> <tr> <td valign="top">[- Execute ('menuleft.epl') -]</td> - <td valign="top" width="2"> </td> - <td valign="top" height="100%"><img src="[+ $r -> {imageuri} +]frame.jpg" width="1" height="100%"></td> - <td valign="top" width="10"> </td> - <td valign="top" width="90%">[- Execute ('content.epl') -]</td> - <td valign="top" width="2"> </td> - <td valign="top" height="100%"><img src="[+ $r -> {imageuri} +]frame.jpg" width="1" height="100%"></td> - <td valign="top" width="10"> </td> + <td valign="top" width="90%" class="cContent">[- Execute ('content.epl') -]</td> </tr> </table> [- Execute ('footer.htm') -] 1.4 +31 -3 embperl/eg/web/config.pl Index: config.pl =================================================================== RCS file: /home/cvs/embperl/eg/web/config.pl,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- config.pl 20 Nov 2002 06:56:27 -0000 1.3 +++ config.pl 26 Nov 2002 10:03:44 -0000 1.4 @@ -68,11 +68,16 @@ 'Changes' => 'Änderungen', 'Sites using Embperl' => 'Sites mit Embperl', 'Add info about Embperl' => 'Hinzufügen Infos', + 'More infos' => 'Weitere Infos', 'Enter info to add about Embperl' => 'Eingabe von Informationen zu Embperl', 'Show info added about Embperl' => 'Anzeige der gespeicherten Informationen zu Embperl', 'Infos about Embperl' => 'Informationen über Embperl', '1.3.4 documentation' => '1.3.4 Dokumentation', 'Configuration' => 'Konfiguration', + 'Conferences' => 'Konferenzen', + 'Books' => 'Bücher', + 'Articles' => 'Artikel', + 'Modules & Examples' => 'Module & Beispiele', } ) ; @@ -193,9 +198,31 @@ { menu => 'Support', uri => 'pod/doc/Embperl.-page-12-.htm' }, { menu => 'Changes', uri => 'pod/Changes.htm', file => 'Changes.pod' }, #{ menu => 'Sites using Embperl', uri => 'pod/Sites.htm', file => 'Sites.pod' }, - { menu => 'News', uri => 'db/news/news.htm', file => 'eg/web/db/news/data.epd', fdat => { 'category_id' => 1 } }, - { menu => 'Sites using Embperl', uri => 'db/sites/sites.htm', file => 'eg/web/db/data.epd', fdat => { 'category_id' => 2 } }, - { menu => 'Login', uri => 'db/login.epl'}, + { menu => 'More infos', uri => 'db/', sub => + [. + { menu => 'News', uri => 'news/news.htm', file => 'eg/web/db/news/data.epd', fdat => { 'category_id' => 1 }, + desc => { en => 'Full list of all news.', + de => 'Vollständige Liste aller Neuigkeiten.' }}, + { menu => 'Sites using Embperl', uri => 'sites/sites.htm', file => 'eg/web/db/data.epd', fdat => { 'category_id' => 2 }, + desc => { en => 'Descriptions of Websites that use Embperl.', + de => 'Beschreibung von Websites die Embperl einsetzen.' }}, + { menu => 'Books', uri => 'sites/books.htm', file => 'eg/web/db/data.epd', fdat => { 'category_id' => 3 }, + desc => { en => 'Books that contains informations about Embperl.', + de => 'Bücher die Embperl behandeln.' }}, + { menu => 'Articles', uri => 'sites/articles.htm', file => 'eg/web/db/data.epd', fdat => { 'category_id' => 4 }, + desc => { en => 'Articles that covers Embperl.', + de => 'Artikel die Embperl behandeln.' }}, + { menu => 'Modules & Examples', uri => 'sites/examples.htm', file => 'eg/web/db/data.epd', fdat => { 'category_id' => 6 }, + desc => { en => 'Modules and Examples with sourcecode for use/that uses Embperl.', + de => 'Modules und Beispiele incl. Quelltext zur/unter Benutzung von Embperl.' }}, + { menu => 'Editorsupport', uri => 'sites/editors.htm', file => 'eg/web/db/data.epd', fdat => { 'category_id' => 5 }, + desc => { en => 'Syntaxhighligthing and other support for editors.', + de => 'Syntaxhervorhebungen unter Unterstützung für Editoren.' }}, + { menu => 'Conferences', uri => 'sites/conferences.htm', file => 'eg/web/db/data.epd', fdat => { 'category_id' => 7 }, + desc => { en => 'Talks about Embperl.', + de => 'Vorträge über Embperl.' }}, + ], + }, { menu => 'Add info about Embperl', uri => 'db/addsel.epl', same => [. { menu => 'Enter info to add about Embperl', uri => 'db/add.epl' }, @@ -204,6 +231,7 @@ { menu => 'Infos about Embperl', uri => 'db/list.epl' }, ], }, + { menu => 'Login', uri => 'db/login.epl'}, ) ; 1.3 +2 -5 embperl/eg/web/content.epl Index: content.epl =================================================================== RCS file: /home/cvs/embperl/eg/web/content.epl,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- content.epl 22 Oct 2002 05:39:50 -0000 1.2 +++ content.epl 26 Nov 2002 10:03:44 -0000 1.3 @@ -7,11 +7,8 @@ <br> #] <br> - <font size="2" face="Verdana, Arial, Helvetica, sans-serif">[- Execute ({inputfile => '*', syntax => 'Text'}) -]</td> - <td valign="top" width="10"> </td> - <td valign="top" height="100%"><img src="[+ $r -> {imageuri} +]frame.jpg" width="1" height="100%"></td> - <td valign="top" width="2"> </td> - <td valign="top" align="left" width="152"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> + [- Execute ({inputfile => '*', syntax => 'Text'}) -]</td> + <td valign="top" align="left" width="152" class="cContentNews"> [- Execute ('news.epl') -] </td> </tr> 1.3 +20 -28 embperl/eg/web/menuleft.epl Index: menuleft.epl =================================================================== RCS file: /home/cvs/embperl/eg/web/menuleft.epl,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- menuleft.epl 22 Oct 2002 05:39:50 -0000 1.2 +++ menuleft.epl 26 Nov 2002 10:03:44 -0000 1.3 @@ -8,9 +8,13 @@ <td align="left" [$if $tablebg $]background="[+ $r -> {imageuri} +]/hintergrund-nav.gif"[$endif$]> <table width="152" border="0" cellspacing="0" cellpadding="0"> <tr> - <td nowrap align="left" width=[+ $ndx * 15 + 2 +]> </td> + [$ if (defined($ndx)) $] + <td nowrap align="left" width=[+ $ndx * 12 + 2 +]> </td> <td nowrap align="left" width=15><img src="[+ $r -> {imageuri} +]i-sub-[+ $state>1?($state>2?'on':'open'):'off' +].gif" width="11" height="11" vspace="6" hspace="5"></td> - <td nowrap align="left" width=[+ 150 - $ndx * 15 +]><a href="[+ $app -> languri ($r, $url) +]"><div class="cMenu"><b>[+ $r -> gettext ($txt) +]</b></div></a></td> + <td nowrap align="left" width=[+ 125 - $ndx * 12 +]><a href="[+ $app -> languri ($r, $url) +]"><div class="cMenu">[+ $r -> gettext ($txt) +]</div></a></td> + [$else$] + <td nowrap with="152" height=22> [$ if $url $]<a href="[+ $app -> languri ($r, $url) +]">[$endif$]<span class="cMenu">[+ $r -> gettext ($txt) +]</span>[$ if $url $]</a>[$endif$]</td> + [$endif$] </tr> </table> </td> @@ -66,30 +70,18 @@ <tr> <td><img src="[+ $r -> {imageuri} +]h_current-v.gif" width="152" height="19"></td> </tr> - <tr> - <td><font face="Verdana, Arial, Helvetica, sans-serif" size="1"> </font></td> - </tr> - <tr> - <td><img src="[+ $r -> {imageuri} +]linie-nav.gif" width="152" height="1"></td> - </tr> - <tr> - <td bgcolor="#D2E9F5"><font face="Verdana, Arial, Helvetica, sans-serif" size="1"><b> Stable - 1.3.4</b></font></td> - </tr> - <tr> - <td><img src="[+ $r -> {imageuri} +]linie-nav.gif" width="152" height="1"></td> - </tr> - <tr> - <td><img src="[+ $r -> {imageuri} +]transp.gif" width="152" height="5"></td> - </tr> - <tr> - <td><img src="[+ $r -> {imageuri} +]linie-nav.gif" width="152" height="1"></td> - </tr> - <tr> - <td bgcolor="#D2E9F5"><font face="Verdana, Arial, Helvetica, sans-serif" size="1"><b> - Beta 2.0b8</b></font></td> - </tr> - <tr> - <td><img src="[+ $r -> {imageuri} +]linie-nav.gif" width="152" height="1"></td> - </tr> + <tr> + <td> </td> + </tr> + <tr> + <td><img src="[+ $r -> {imageuri} +]linie-nav.gif" width="152" height="1"></td> + </tr> + [- menuitem ('pod/doc/Embperl.-page-13-.htm', 'Stable 1.3.4', 0, 1) -] + <tr> + <td><img src="[+ $r -> {imageuri} +]linie-nav.gif" width="152" height="1"></td> + </tr> + [- menuitem ('pod/doc/Embperl.-page-13-.htm', 'Beta 2.0b8', 0, 1) -] + <tr> + <td><img src="[+ $r -> {imageuri} +]linie-nav.gif" width="152" height="1"></td> + </tr> </table> 1.5 +2 -0 embperl/eg/web/messages.pl Index: messages.pl =================================================================== RCS file: /home/cvs/embperl/eg/web/messages.pl,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- messages.pl 20 Nov 2002 21:29:38 -0000 1.4 +++ messages.pl 26 Nov 2002 10:03:44 -0000 1.5 @@ -75,6 +75,7 @@ 'mail_subj_newpw' => 'Ihr neues Paßwort auf der Embperl Webseite', # Errors + 'err_notfound' => 'Das angeforderte Dokument konnte nicht gefunden werden.', 'err_email_needed' => "Sie müssen eine E-Mail Adresse eingeben.", 'err_access_denied' => 'Zugriff verweigert. Entweder die E-Mail Adresse oder das Kennwort sind falsch.', 'err_user_exists' => 'Benutzer existiert bereits. Vielleicht möchten Sie ein neues Kennwort an diese Adresse senden?', @@ -178,6 +179,7 @@ 'mail_subj_newpw' => 'Your new Embperl Website password', # Errors + 'err_notfound' => 'The document you requested wasn\'t found.', 'err_email_needed' => "You haven't entered an email address. This is mandatory for the requested action.", 'err_access_denied' => 'Access Denied. Either user name (e-mail address) or password were wrong.', 'err_user_exists' => 'User already exists. Perhaps you want a new password sent to this address?', 1.4 +8 -1 embperl/eg/web/notfound.htm Index: notfound.htm =================================================================== RCS file: /home/cvs/embperl/eg/web/notfound.htm,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- notfound.htm 20 Nov 2002 06:56:27 -0000 1.3 +++ notfound.htm 26 Nov 2002 10:03:44 -0000 1.4 @@ -1 +1,8 @@ -The document you requested wasn't found. \ No newline at end of file +<br> +<br> +<br> +<br> +<br> +<center><div class="cHeadline"> +[= err_notfound =] +</div></center> 1.1 embperl/eg/web/db/index.htm Index: index.htm =================================================================== <blockquote> <br> [$ if $_[0] -> param -> language eq 'de' $] Hier finden Sie weitere Informationen und Links zu Embperl. <br><br> Wenn Sie Informationen/Hiweise/Links zu Embperl kennen, dann <a href="addsel.epl">fügen Sie sie einfach hinzu</a> [$else$] Here you find additional informations about Embperl. <br><br> If you know any further informations about Embperl, please <a href="addsel.epl">add</a> them to the site. [$endif$] <br> <br> [- Execute ('menulist.epl') -] </blockquote> 1.3 +1 -1 embperl/eg/web/db/news/data.epd Index: data.epd =================================================================== RCS file: /home/cvs/embperl/eg/web/db/news/data.epd,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- data.epd 22 Oct 2002 05:39:50 -0000 1.2 +++ data.epd 26 Nov 2002 10:03:44 -0000 1.3 @@ -21,5 +21,5 @@ [+ $rec -> {description} +] -[.$if $r -> {user_id} && $r -> {user_id} == $rec -> {user_id} $]L<[Edit]|../add.epl?item_id=[+ $rec -> {item_id} +]&-edit_item=1> [$endif$] +[$ if ($r->{user_id} && $r->{user_id} == $rec->{user_id}) || $r->{user_admin} $]L<Edit|../add.epl?item_id=[+ $rec->{item_id} +]&-edit_item=1&category_id=[+ $rec->{category_id} +]> | Status: [+ $r -> gettext ($r->{item_set}{state} ? 'display' : 'hide') +][$ endif $] [$endwhile$] 1.4 +14 -0 embperl/podsrc/Config.spod Index: Config.spod =================================================================== RCS file: /home/cvs/embperl/podsrc/Config.spod,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- Config.spod 20 Nov 2002 06:56:28 -0000 1.3 +++ Config.spod 26 Nov 2002 10:03:45 -0000 1.4 @@ -369,6 +369,10 @@ Set the expiration date that Embperl uses for the cookie with the session id. You can specify the full date or relativ values. Examples: +30s +10m +1h -1d +3M +10y +=head2 *CFG $application / Embperl_COOKIE_SECURE / cookie_secure / 2.0b9 / no / at the end of the session / Session Handling + +Set the secure flag of cookie that Embperl uses for the session id. If set the +cookie will only be transfered over a secured connection. =head2 *CFG $application / Embperl_LOG / log / / no / Unix: /tmp/embperl.log Windows: /embperl.log @@ -709,6 +713,16 @@ =back + +=head2 *CFG $request / Embperl_Output_Mode / output_mode / yes / 2.0b9 / HTML + +Set the desired output format. 0 for HTML and 1 XML. If set to XML all tags +that are generated by Embperl will contain a closing slash to conform to XML +specs. e.g. + + <input type="text" name="foo" /> + +B<NOTE:> If you set output_mode to XML you should also change L<escmode> to XML escaping. =head2 *CFG $request / Embperl_SESSION_MODE / session_mode / no / 2.0b6 / smodeUDatCookie = 1 1.3 +2 -0 embperl/test/testapp.pl Index: testapp.pl =================================================================== RCS file: /home/cvs/embperl/test/testapp.pl,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- testapp.pl 22 Oct 2002 06:06:47 -0000 1.2 +++ testapp.pl 26 Nov 2002 10:03:45 -0000 1.3 @@ -16,6 +16,7 @@ 'heading' => 'Überschrift', 'url' => 'URL', 'show2' => 'Folgender Eintrag wurde erfolgreich der Datenbank hinzugefügt', + 'last' => 'last zwischen [= =]', }, 'en' => { @@ -28,6 +29,7 @@ 'heading' => 'Heading', 'url' => 'URL', 'show2' => 'The following entry has been sucessfully added to the database', + 'last' => 'last inside of [= =]', }, ) ; 1.3 +57 -1 embperl/test/cmp/i18n.htm Index: i18n.htm =================================================================== RCS file: /home/cvs/embperl/test/cmp/i18n.htm,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- i18n.htm 20 Nov 2002 06:56:28 -0000 1.2 +++ i18n.htm 26 Nov 2002 10:03:45 -0000 1.3 @@ -67,4 +67,60 @@ heading = Überschrift add3 = Add to </form> - + +addsel1 = Klicken Sie auf die Kategorie zu der Sie etwas hinzufügen möchten:<br> + + next<br> + + addsel1 (2) = Klicken Sie auf die Kategorie zu der Sie etwas hinzufügen möchten:<br> + +addsel2 = oder fügen Sie eine neue Kategorie hinzu. Bitte geben Sie die Beschreibung in so vielen Sprachen wie Ihnen möglich ein.<br> + + next<br> + + addsel2 (2) = oder fügen Sie eine neue Kategorie hinzu. Bitte geben Sie die Beschreibung in so vielen Sprachen wie Ihnen möglich ein.<br> + +addsel3 = Falls Sie die Übersetzung nicht wissen, lassen Sie das entsprechende Eingabefeld leer.<br> + + next<br> + + addsel3 (2) = Falls Sie die Übersetzung nicht wissen, lassen Sie das entsprechende Eingabefeld leer.<br> + +addsel4 = Kategorie hinzufügen<br> + + next<br> + + addsel4 (2) = Kategorie hinzufügen<br> + +addsel1 = Klicken Sie auf die Kategorie zu der Sie etwas hinzufügen möchten:<br> + + last: last zwischen [= =]<br> + +addsel2 = oder fügen Sie eine neue Kategorie hinzu. Bitte geben Sie die Beschreibung in so vielen Sprachen wie Ihnen möglich ein.<br> + + last: last zwischen [= =]<br> + +addsel3 = Falls Sie die Übersetzung nicht wissen, lassen Sie das entsprechende Eingabefeld leer.<br> + + last: last zwischen [= =]<br> + +addsel4 = Kategorie hinzufügen<br> + + last: last zwischen [= =]<br> + +addsel1 = Klicken Sie auf die Kategorie zu der Sie etwas hinzufügen möchten:<br> + + last zwischen [= =]<br> + +addsel2 = oder fügen Sie eine neue Kategorie hinzu. Bitte geben Sie die Beschreibung in so vielen Sprachen wie Ihnen möglich ein.<br> + + last zwischen [= =]<br> + +addsel3 = Falls Sie die Übersetzung nicht wissen, lassen Sie das entsprechende Eingabefeld leer.<br> + + last zwischen [= =]<br> + +addsel4 = Kategorie hinzufügen<br> + + last zwischen [= =]<br> + 1.1 embperl/test/cmp/xhtml.htm Index: xhtml.htm =================================================================== <html> <head> <title>Embperl Tests - XHTML output</title> </head> <body> a <br> <table> <tr> <td>1 </td> <td>'2' </td> </tr> <tr> <td>"3" </td> <td>4 </td> </tr> </table> <input type="hidden" name="a" value="1" /><input type="hidden" name="b" value="'2'" /><input type="hidden" name="c" value=""3"" /> <input type="text" name="b" value="'2'" /> <input type="text" name="c" value=""3"" /> </body> </html> 1.2 +57 -1 embperl/test/cmp2/i18n.htm Index: i18n.htm =================================================================== RCS file: /home/cvs/embperl/test/cmp2/i18n.htm,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- i18n.htm 22 Oct 2002 05:45:13 -0000 1.1 +++ i18n.htm 26 Nov 2002 10:03:45 -0000 1.2 @@ -67,4 +67,60 @@ heading = Überschrift add3 = Add to </form> - + +addsel1 = Klicken Sie auf die Kategorie zu der Sie etwas hinzufügen möchten:<br> + + next<br> + + addsel1 (2) = Klicken Sie auf die Kategorie zu der Sie etwas hinzufügen möchten:<br> + +addsel2 = oder fügen Sie eine neue Kategorie hinzu. Bitte geben Sie die Beschreibung in so vielen Sprachen wie Ihnen möglich ein.<br> + + next<br> + + addsel2 (2) = oder fügen Sie eine neue Kategorie hinzu. Bitte geben Sie die Beschreibung in so vielen Sprachen wie Ihnen möglich ein.<br> + +addsel3 = Falls Sie die Übersetzung nicht wissen, lassen Sie das entsprechende Eingabefeld leer.<br> + + next<br> + + addsel3 (2) = Falls Sie die Übersetzung nicht wissen, lassen Sie das entsprechende Eingabefeld leer.<br> + +addsel4 = Kategorie hinzufügen<br> + + next<br> + + addsel4 (2) = Kategorie hinzufügen<br> + +addsel1 = Klicken Sie auf die Kategorie zu der Sie etwas hinzufügen möchten:<br> + + last: last zwischen [= =]<br> + +addsel2 = oder fügen Sie eine neue Kategorie hinzu. Bitte geben Sie die Beschreibung in so vielen Sprachen wie Ihnen möglich ein.<br> + + last: last zwischen [= =]<br> + +addsel3 = Falls Sie die Übersetzung nicht wissen, lassen Sie das entsprechende Eingabefeld leer.<br> + + last: last zwischen [= =]<br> + +addsel4 = Kategorie hinzufügen<br> + + last: last zwischen [= =]<br> + +addsel1 = Klicken Sie auf die Kategorie zu der Sie etwas hinzufügen möchten:<br> + + last zwischen [= =]<br> + +addsel2 = oder fügen Sie eine neue Kategorie hinzu. Bitte geben Sie die Beschreibung in so vielen Sprachen wie Ihnen möglich ein.<br> + + last zwischen [= =]<br> + +addsel3 = Falls Sie die Übersetzung nicht wissen, lassen Sie das entsprechende Eingabefeld leer.<br> + + last zwischen [= =]<br> + +addsel4 = Kategorie hinzufügen<br> + + last zwischen [= =]<br> + 1.49 +3 -1 embperl/test/conf/httpd.conf.src Index: httpd.conf.src =================================================================== RCS file: /home/cvs/embperl/test/conf/httpd.conf.src,v retrieving revision 1.48 retrieving revision 1.49 diff -u -r1.48 -r1.49 --- httpd.conf.src 22 Oct 2002 05:29:10 -0000 1.48 +++ httpd.conf.src 26 Nov 2002 10:03:45 -0000 1.49 @@ -129,6 +129,7 @@ print OFH <<EOD ; +Embperl_Cookie_Path / EMBPERL_ALLOW (asc|\\.xml\$|\\.htm\$) @@ -572,6 +573,7 @@ </Location> <Location /eg/web/conf> +EMBPERL_APPNAME EmbperlConf EMBPERL_RECIPE EmbperlLibXSLT EMBPERL_XSLTSTYLESHEET \"$EPPATH/eg/web/conf/pod.xsl\" EMBPERL_SYNTAX POD 1.1 embperl/test/html/xhtml.htm Index: xhtml.htm =================================================================== [.- $r = shift ; $r -> config -> output_mode (1) ; $escmode = 12 ; -] <html> <head> <title>Embperl Tests - XHTML output</title> </head> <body> [- $a = 1 -] [$if $a$] a <br> [$ endif$] [- @c = ([1,"'2'"],['"3"',4]) ; -] <table> <tr> <td>[+ $c[$row][$col] +] </td> </tr> </table> [.- %fdat = ( a => 1, b => "'2'", c => '"3"') ; @ffld = keys %fdat ; -] [$hidden$] <input type="text" name="b"> <input type="text" name="c"> </body> </html> 1.3 +31 -0 embperl/test/html/app/i18n.htm Index: i18n.htm =================================================================== RCS file: /home/cvs/embperl/test/html/app/i18n.htm,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- i18n.htm 20 Nov 2002 06:56:28 -0000 1.2 +++ i18n.htm 26 Nov 2002 10:03:45 -0000 1.3 @@ -57,4 +57,35 @@ </form> + +[$ foreach $i (1..4) $] + + addsel[+$i +] = [+ $r -> gettext ("addsel$i") +]<br> + + [= next =]<br> + + addsel[+$i +] (2) = [+ $r -> gettext ("addsel$i") +]<br> + +[$endforeach$] + +[$ foreach $i (1..4) $] + + addsel[+$i +] = [+ $r -> gettext ("addsel$i") +]<br> + + last: [= last =]<br> + +[$endforeach$] + + + +[$ foreach $i (1..4) $] + + addsel[+$i +] = [+ $r -> gettext ("addsel$i") +]<br> + + [= last =]<br> + +[$endforeach$] + + + 1.3 +2 -0 embperl/xsbuilder/maps/ep_structure.map Index: ep_structure.map =================================================================== RCS file: /home/cvs/embperl/xsbuilder/maps/ep_structure.map,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- ep_structure.map 22 Oct 2002 05:39:51 -0000 1.2 +++ ep_structure.map 26 Nov 2002 10:03:45 -0000 1.3 @@ -95,6 +95,7 @@ sCookieDomain | cookie_domain sCookiePath | cookie_path sCookieExpires | cookie_expires + bCookieSecure | cookie_secure sLog | log bDebug | debug sMailhost | mailhost @@ -231,6 +232,7 @@ bDebug | debug bOptions | options nSessionMode | session_mode + nOutputMode | output_mode new ! private </tReqConfig> --------------------------------------------------------------------- To unsubscribe, e-mail: embperl-cvs-unsubscribe [at] perl For additional commands, e-mail: embperl-cvs-help [at] perl
|