/* convert duration string to interger and minutes to seconds */
*durationPtr = atoi(durationStr)*60;
- *durationEntered = TRUE;
-
- /* usage duration is restricted to permitted range */
- if(*durationPtr <= 0){
- *durationEntered = FALSE;
- *durationPtr= atoi(GetConfValue("Duration/Default"));
- }else{
- int durmax=atoi(GetConfValue("Duration/Max"));
- if(*durationPtr > durmax) *durationPtr=durmax;
- }
-
+ if(*durationPtr > 0) *durationEntered = TRUE;
+ else *durationEntered = FALSE;
+
/* encoded address starting as "0-0-0" means no addr info */
/* it indicates needless to get dual stack addresses */
/* and only use getenv("REMOTE_ADDR") address */
break;
}
- /* split id to display short format of userid */
- SplitId(userid, useridshort, extraId);
-
/* if positive value is set in duration, TIME watch mode is selected */
if(durationEntered) pAcceptDoc=GetConfValue("AcceptDocTime");
+ /* split id to display short format of userid */
+ SplitId(userid, useridshort, extraId);
+
/* create path to acceptdoc */
snprintf(acceptDocPath, BUFFMAXLN, "%s%s/%s/%s",GetConfValue("DocumentRoot"),
GetConfValue("OpengateDir"),language,pAcceptDoc);
snprintf(portStr, WORDMAXLN, "%d", port);
/* create duration string (duration=sec, display value=min) */
- snprintf(durationStr, WORDMAXLN, "%d", duration/60);
+ if(duration<60) snprintf(durationStr, WORDMAXLN, "%.2f", duration/60.);
+ else snprintf(durationStr, WORDMAXLN, "%d", duration/60);
/* open acceptdoc */
if((fp=fopen(acceptDocPath, "r"))==NULL){
return TRUE;
}
+/***************************************************/
+/* trim duration value between zero to max in conf */
+/***************************************************/
+int trimDuration(int duration, int durationEntered){
+
+ /* if no entry, set default. if huge value, set upper-limit */
+ if(!durationEntered){
+ duration = atoi(GetConfValue("Duration/Default"));
+ }else{
+ int durmax=atoi(GetConfValue("Duration/Max"));
+ if(duration > durmax) duration=durmax;
+ }
+ return duration;
+}
+
/*******************************/
/*******************************/
void GetClientAddr(char *clientAddr)
if(debug>1) err_msg("DEBUG:%d<=getCookieData(%s,passwd,%s,%d,%d,%s,%s)",ret,userid,clientAddr4,*duration,*durationEntered,language,closeTime);
return ret;
}
+
+int TrimDuration(int duration, int durationEntered){
+ int ret;
+
+ if(debug>1) err_msg("DEBUG:=>trimDuration(%d,%d)",
+ duration,durationEntered);
+ ret=trimDuration(duration,durationEntered);
+ if(debug>1) err_msg("DEBUG:%d<=trimDuration( )",ret);
+ return ret;
+}