return;
}
- if(debug) debuga("%s",text[53]);
+ if(debug) debuga(_("Making index.html\n"));
// convert any old report hierarchy
- dirp = opendir(outdir);
+ if ((dirp = opendir(outdir)) == NULL) {
+ debuga(_("Failed to open directory %s - %s\n"),outdir,strerror(errno));
+ exit(EXIT_FAILURE);
+ }
while ((direntp = readdir( dirp )) != NULL) {
if(isdigit(direntp->d_name[0]) && isdigit(direntp->d_name[1])) {
if(IndexTree == INDEX_TREE_DATE)
char monthnum[10];
char dayindex[MAXLEN];
char daynum[10];
+ char title[80];
int yearsort[150];
int nyears;
int year;
sprintf(yearindex,"%sindex.html",outdir);
nyears=0;
- dirp = opendir(outdir);
+ if ((dirp = opendir(outdir)) == NULL) {
+ debuga(_("Failed to open directory %s - %s\n"),outdir,strerror(errno));
+ exit(EXIT_FAILURE);
+ }
while ((direntp = readdir( dirp )) != NULL) {
if(strlen(direntp->d_name) > 4 || !isdigit(direntp->d_name[0]) || !isdigit(direntp->d_name[1]) ||
!isdigit(direntp->d_name[2]) || !isdigit(direntp->d_name[3])) continue;
nyears++;
}
}
- (void)closedir( dirp );
+ closedir( dirp );
order=(strcmp(IndexSortOrder,"A") == 0) ? 1 : -1;
if((fp_ou=fopen(yearindex,"w"))==NULL) {
- fprintf(stderr, "SARG: (index) %s: %s - %s\n",text[45],yearindex,strerror(errno));
- exit(1);
+ debuga(_("(index) Cannot open file %s - %s\n"),yearindex,strerror(errno));
+ exit(EXIT_FAILURE);
}
- write_html_header(fp_ou, ".");
- fprintf(fp_ou,"<tr><th class=\"header_l\">%s</th><th class=\"header_l\">%s</th></tr>\n",text[130],text[132]);
+ write_html_header(fp_ou,0,ngettext("SARG report","SARG reports",nyears));
+ close_html_header(fp_ou);
+ fputs("<div class=\"index\"><table cellpadding=\"1\" cellspacing=\"2\">\n<tr><td></td><td></td></tr>\n",fp_ou);
+ fprintf(fp_ou,"<tr><th class=\"header_l\">%s</th><th class=\"header_l\">%s</th></tr>\n",_("YEAR"),_("SIZE"));
for (y=0 ; y<nyears ; y++) {
if (order>0)
year=yearsort[y];
sprintf(yeardir,"%s%s",outdir,yearnum);
// Year dir
nmonths=0;
- dirp2 = opendir(yeardir);
+ if ((dirp2 = opendir(yeardir)) == NULL) {
+ debuga(_("Failed to open directory %s - %s\n"),yeardir,strerror(errno));
+ exit(EXIT_FAILURE);
+ }
while ((direntp2 = readdir( dirp2 )) != NULL) {
if(!isdigit(direntp2->d_name[0]) || !isdigit(direntp2->d_name[1])) continue;
i=-1;
m2=0;
}
if (nmonths>=sizeof(monthsort)/sizeof(monthsort[0])) {
- fprintf(stderr,"SARG: Too many month directories in %s\nSupernumerary entries are ignored\n",yeardir);
+ debuga(_("Too many month directories in %s\nSupernumerary entries are ignored\n"),yeardir);
break;
}
month=m1*16+m2;
monthsort[i]=month;
nmonths++;
}
- (void)closedir(dirp2);
+ closedir(dirp2);
sprintf(monthindex,"%s/index.html",yeardir);
if((fp_ou2=fopen(monthindex,"w"))==NULL) {
- fprintf(stderr, "SARG: (index) %s: %s - %s\n",text[45],monthindex,strerror(errno));
- exit(1);
+ debuga(_("(index) Cannot open file %s - %s\n"),monthindex,strerror(errno));
+ exit(EXIT_FAILURE);
}
- write_html_header(fp_ou2,"..");
- fprintf(fp_ou2,"<tr><th class=\"header_l\">%s/%s</th></tr>\n",text[130],text[131]);
+ snprintf(title,sizeof(title),ngettext("SARG: report for %04d","SARG: reports for %04d",nmonths),year);
+ write_html_header(fp_ou2,1,title);
+ close_html_header(fp_ou2);
+ fputs("<div class=\"index\"><table cellpadding=\"1\" cellspacing=\"2\">\n<tr><td></td><td></td></tr>\n",fp_ou2);
+ fprintf(fp_ou2,"<tr><th class=\"header_l\">%s/%s</th></tr>\n",_("YEAR"),_("MONTH"));
for (m=0 ; m<nmonths ; m++) {
if (order>0)
month=monthsort[m];
sprintf(monthdir,"%s/%s",yeardir,monthnum);
// month dir
ndays=0;
- dirp3 = opendir(monthdir);
+ if ((dirp3 = opendir(monthdir)) == NULL) {
+ debuga(_("Failed to open directory %s - %s\n"),monthdir,strerror(errno));
+ exit(EXIT_FAILURE);
+ }
while ((direntp3 = readdir( dirp3 )) != NULL) {
if(!isdigit(direntp3->d_name[0]) && !isdigit(direntp3->d_name[1])) continue;
i=-1;
d2=0;
}
if (ndays>=sizeof(daysort)/sizeof(daysort[0])) {
- fprintf(stderr,"SARG: Too many day directories in %s\nSupernumerary entries are ignored\n",monthdir);
+ debuga(_("Too many day directories in %s\nSupernumerary entries are ignored\n"),monthdir);
break;
}
day=d1*32+d2;
daysort[i]=day;
ndays++;
}
- (void)closedir(dirp3);
+ closedir(dirp3);
sprintf(dayindex,"%s/index.html",monthdir);
if((fp_ou3=fopen(dayindex,"w"))==NULL) {
- fprintf(stderr, "SARG: (index) %s: %s - %s\n",text[45],dayindex,strerror(errno));
- exit(1);
+ debuga(_("(index) Cannot open file %s - %s\n"),dayindex,strerror(errno));
+ exit(EXIT_FAILURE);
}
- write_html_header(fp_ou3,"../..");
- fprintf(fp_ou3,"<tr><th class=\"header_l\">%s/%s/%s</th></tr>\n",text[130],text[131],text[127]);
+ snprintf(title,sizeof(title),ngettext("SARG: report for %04d/%02d","SARG: reports for %04d/%02d",ndays),year,month);
+ write_html_header(fp_ou3,2,title);
+ close_html_header(fp_ou3);
+ fputs("<div class=\"index\"><table cellpadding=\"1\" cellspacing=\"2\">\n<tr><td></td><td></td></tr>\n",fp_ou3);
+ fprintf(fp_ou3,"<tr><th class=\"header_l\">%s/%s/%s</th></tr>\n",_("YEAR"),_("MONTH"),_("DAYS"));
for (d=0 ; d<ndays ; d++) {
if (order>0)
day=daysort[d];
}
fprintf(fp_ou3,"<tr><td class=\"data2\"><a href=\"%s/index.html\">%s %s %s</a></td></tr>\n",daynum,yearnum,nmonth,daynum);
}
- write_html_trailer(fp_ou3);
- fclose(fp_ou3);
+ fputs("</table></div>\n",fp_ou3);
+ if (write_html_trailer(fp_ou3)<0)
+ debuga(_("Write error in the index %s\n"),dayindex);
+ if (fclose(fp_ou3)==EOF)
+ debuga(_("Failed to close the index file %s - %s\n"),dayindex,strerror(errno));
}
- write_html_trailer(fp_ou2);
- fclose(fp_ou2);
+ fputs("</table></div>\n",fp_ou2);
+ if (write_html_trailer(fp_ou2)<0)
+ debuga(_("Write error in the index %s\n"),monthindex);
+ if (fclose(fp_ou2)==EOF)
+ debuga(_("Failed to close the index file %s - %s\n"),monthindex,strerror(errno));
}
- write_html_trailer(fp_ou);
- fclose(fp_ou);
+ fputs("</table></div>\n",fp_ou);
+ if (write_html_trailer(fp_ou)<0)
+ debuga(_("Write error in the index %s\n"),yearindex);
+ if (fclose(fp_ou)==EOF)
+ debuga(_("Failed to close the index file %s - %s\n"),yearindex,strerror(errno));
}
static void make_file_index(void)
DIR *dirp;
struct dirent *direntp;
char wdir[MAXLEN];
- char month[4];
char data[80];
- char tuser[20];
char tbytes[20];
char media[20];
char ftime[128];
int nallocated;
int order;
int i;
- int cmp;
+ int tuser;
struct getwordstruct gwarea;
struct sortstruct
{
- char sortname[9];
+ int year, month, day, sortnum;
char creationdate[MAX_CREATION_DATE];
char dirname[MAX_DIR_NAME];
char date[60];
order=(strcmp(IndexSortOrder,"A") == 0) ? 1 : -1;
- dirp = opendir(outdir);
+ if ((dirp = opendir(outdir)) == NULL) {
+ debuga(_("Failed to open directory %s - %s\n"),outdir,strerror(errno));
+ exit(EXIT_FAILURE);
+ }
nsort=0;
nallocated=0;
if (strlen(direntp->d_name)>MAX_DIR_NAME) continue;
item=malloc(sizeof(*item));
if (!item) {
- fprintf(stderr,"SARG: not enough memory to sort the index\n");
- exit(1);
+ debuga(_("not enough memory to sort the index\n"));
+ exit(EXIT_FAILURE);
}
if(strcmp(df,"u") == 0) {
- strncpy(item->sortname,direntp->d_name,4);
- strncpy(month,direntp->d_name+4,3);
+ item->year=atoi(direntp->d_name);
+ item->month=conv_month(direntp->d_name+4);
+ item->day=atoi(direntp->d_name+7);
} else {
- strncpy(item->sortname,direntp->d_name+5,4);
- strncpy(month,direntp->d_name+2,3);
+ item->year=atoi(direntp->d_name+5);
+ item->month=conv_month(direntp->d_name+2);
+ item->day=atoi(direntp->d_name);
}
- item->sortname[4]='\0';
- month[3]='\0';
- conv_month(month);
- strcat(item->sortname,month);
- if(strcmp(df,"u") == 0) strncat(item->sortname,direntp->d_name+7,2);
- else strncat(item->sortname,direntp->d_name,2);
+ item->sortnum=(item->year*16+item->month)*32+item->day;
obtdate(outdir,direntp->d_name,data);
if (sscanf(data,"%d-%d-%d %d:%d:%d %d",&iyear,&imonth,&iday,&ihour,&iminute,&isecond,&idst)==7) {
formatdate(data,sizeof(data),iyear,imonth,iday,ihour,iminute,isecond,idst);
*/
getword_start(&gwarea,data);
if (getword_skip(16,&gwarea,' ')<0) {
- printf("SARG: Maybe you have a broken week day in your %s%s/sarg-date file.\n",outdir,direntp->d_name);
- exit(1);
+ debuga(_("Maybe you have a broken week day in your %s%s/sarg-date file\n"),outdir,direntp->d_name);
+ exit(EXIT_FAILURE);
}
if (getword_multisep(mon,sizeof(mon),&gwarea,' ')<0) {
- printf("SARG: Maybe you have a broken month in your %s%s/sarg-date file.\n",outdir,direntp->d_name);
- exit(1);
+ debuga(_("Maybe you have a broken month in your %s%s/sarg-date file\n"),outdir,direntp->d_name);
+ exit(EXIT_FAILURE);
}
if (getword_multisep(day,sizeof(day),&gwarea,' ')<0) {
- printf("SARG: Maybe you have a broken day in your %s%s/sarg-date file.\n",outdir,direntp->d_name);
- exit(1);
+ debuga(_("Maybe you have a broken day in your %s%s/sarg-date file\n"),outdir,direntp->d_name);
+ exit(EXIT_FAILURE);
}
if (getword_multisep(hour,sizeof(hour),&gwarea,' ')<0) {
- printf("SARG: Maybe you have a broken time in your %s%s/sarg-date file.\n",outdir,direntp->d_name);
- exit(1);
+ debuga(_("Maybe you have a broken time in your %s%s/sarg-date file\n"),outdir,direntp->d_name);
+ exit(EXIT_FAILURE);
}
do {
if (getword_multisep(year,sizeof(year),&gwarea,' ')<0) {
- printf("SARG: Maybe you have a broken year in your %s%s/sarg-date file.\n",outdir,direntp->d_name);
- exit(1);
+ debuga(_("Maybe you have a broken year in your %s%s/sarg-date file\n"),outdir,direntp->d_name);
+ exit(EXIT_FAILURE);
}
} while (year[0] && !isdigit(year[0])); //skip time zone information with spaces until the year is found
if (sscanf(hour,"%d:%d:%d",&ihour,&iminute,&isecond)!=3) {
- printf("SARG: Maybe you have a broken time in your %s%s/sarg-date file.\n",outdir,direntp->d_name);
- exit(1);
+ debuga(_("Maybe you have a broken time in your %s%s/sarg-date file\n"),outdir,direntp->d_name);
+ exit(EXIT_FAILURE);
}
buildymd(day,mon,year,ftime);
snprintf(item->creationdate,sizeof(item->creationdate),"%s%02d%02d%02d",ftime, ihour, iminute, isecond);
nallocated+=10;
tempsort=realloc(sortlist,nallocated*sizeof(*item));
if (!tempsort) {
- fprintf(stderr,"SARG: not enough memory to sort the index\n");
- exit(1);
+ debuga(_("not enough memory to sort the index\n"));
+ exit(EXIT_FAILURE);
}
sortlist=tempsort;
}
for (i=nsort ; i>0 ; i--) {
- cmp=strcmp(item->sortname,sortlist[i-1]->sortname);
- if (cmp==0) cmp=strcmp(item->creationdate,sortlist[i-1]->creationdate);
- if (cmp>=0) {
- break;
+ if (item->sortnum>sortlist[i-1]->sortnum) break;
+ if (item->sortnum==sortlist[i-1]->sortnum) {
+ if (strcmp(item->creationdate,sortlist[i-1]->creationdate)>=0) break;
}
sortlist[i]=sortlist[i-1];
}
nsort++;
}
- (void)closedir( dirp );
+ closedir( dirp );
if((fp_ou=fopen(wdir,"w"))==NULL) {
- fprintf(stderr, "SARG: (index) %s: %s\n",text[45],wdir);
- exit(1);
+ debuga(_("(index) Cannot open file %s\n"),wdir);
+ exit(EXIT_FAILURE);
}
- write_html_header(fp_ou,".");
- fprintf(fp_ou,"<tr><th class=\"header_l\">%s</th><th class=\"header_l\">%s</th><th class=\"header_l\">%s</th><th class=\"header_l\">%s</th><th class=\"header_l\">%s</th></tr>\n",text[101],text[102],text[103],text[93],text[96]);
+ write_html_header(fp_ou,0,ngettext("SARG report","SARG reports",nsort));
+ close_html_header(fp_ou);
+ fputs("<div class=\"index\"><table cellpadding=\"1\" cellspacing=\"2\">\n<tr><td></td><td></td></tr>\n",fp_ou);
+ fprintf(fp_ou,"<tr><th class=\"header_l\">%s</th><th class=\"header_l\">%s</th><th class=\"header_l\">%s</th><th class=\"header_l\">%s</th><th class=\"header_l\">%s</th></tr>\n",_("FILE/PERIOD"),_("CREATION DATE"),_("USERS"),_("BYTES"),_("AVERAGE"));
for (i=0 ; i<nsort ; i++) {
if (order>0)
item=sortlist[i];
else
item=sortlist[nsort-i-1];
- obtuser(outdir,item->dirname,tuser);
+ tuser=obtuser(outdir,item->dirname);
obttotal(outdir,item->dirname,tbytes,tuser,media);
- fprintf(fp_ou,"<tr><td class=\"data2\"><a href='%s/%s'>%s</a></td><td class=\"data2\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td></tr>\n",item->dirname,ReplaceIndex,item->dirname,item->date,tuser,tbytes,media);
+ fprintf(fp_ou,"<tr><td class=\"data2\"><a href='%s/%s'>%s</a></td><td class=\"data2\">%s</td><td class=\"data\">%d</td><td class=\"data\">%s</td><td class=\"data\">%s</td></tr>\n",item->dirname,ReplaceIndex,item->dirname,item->date,tuser,tbytes,media);
}
- write_html_trailer(fp_ou);
- fclose(fp_ou);
+ fputs("</table></div>\n",fp_ou);
+ if (write_html_trailer(fp_ou)<0)
+ debuga(_("Write error in the index %s\n"),wdir);
+ if (fclose(fp_ou)==EOF)
+ debuga(_("Failed to close the index file %s - %s\n"),wdir,strerror(errno));
if (sortlist) {
for (i=0 ; i<nsort ; i++)
static void file_index_to_date_index(const char *entry)
{
- int y1, y2, d1, d2;
+ int y1, y2, m1, m2, d1, d2;
int i, j;
int ndirlen;
int monthlen;
- char m1[8], m2[8];
+ char sm1[8], sm2[8];
char olddir[MAXLEN], newdir[MAXLEN];
if(strlen(entry) < 19) return;
y1=0;
y2=0;
- memset(m1,0,sizeof(m1));
- memset(m2,0,sizeof(m2));
+ memset(sm1,0,sizeof(sm1));
+ memset(sm2,0,sizeof(sm2));
d1=0;
d2=0;
i=0;
for (j=0 ; entry[i] && isdigit(entry[i]) ; j++)
y1=y1*10+(entry[i++]-'0');
if (j!=4) return;
- for (j=0 ; j<sizeof(m1)-1 && entry[i] && isalpha(entry[i]) ; j++)
- m1[j]=entry[i++];
+ for (j=0 ; j<sizeof(sm1)-1 && entry[i] && isalpha(entry[i]) ; j++)
+ sm1[j]=entry[i++];
if (j!=3) return;
- m1[j]='\0';
+ sm1[j]='\0';
for (j=0 ; entry[i] && isdigit(entry[i]) ; j++)
d1=d1*10+(entry[i++]-'0');
if (j!=2) return;
for (j=0 ; entry[i] && isdigit(entry[i]) ; j++)
y2=y2*10+(entry[i++]-'0');
if (j!=4) return;
- for (j=0 ; j<sizeof(m2)-1 && entry[i] && isalpha(entry[i]) ; j++)
- m2[j]=entry[i++];
+ for (j=0 ; j<sizeof(sm2)-1 && entry[i] && isalpha(entry[i]) ; j++)
+ sm2[j]=entry[i++];
if (j!=3) return;
- m2[j]='\0';
+ sm2[j]='\0';
for (j=0 ; entry[i] && isdigit(entry[i]) ; j++)
d2=d2*10+(entry[i++]-'0');
if (j!=2) return;
for (j=0 ; entry[i] && isdigit(entry[i]) ; j++)
d1=d1*10+(entry[i++]-'0');
if (j!=2) return;
- for (j=0 ; j<sizeof(m1)-1 && entry[i] && isalpha(entry[i]) ; j++)
- m1[j]=entry[i++];
+ for (j=0 ; j<sizeof(sm1)-1 && entry[i] && isalpha(entry[i]) ; j++)
+ sm1[j]=entry[i++];
if (j!=3) return;
- m1[j]='\0';
+ sm1[j]='\0';
for (j=0 ; entry[i] && isdigit(entry[i]) ; j++)
y1=y1*10+(entry[i++]-'0');
if (j!=4) return;
for (j=0 ; entry[i] && isdigit(entry[i]) ; j++)
d2=d2*10+(entry[i++]-'0');
if (j!=2) return;
- for (j=0 ; j<sizeof(m2)-1 && entry[i] && isalpha(entry[i]) ; j++)
- m2[j]=entry[i++];
+ for (j=0 ; j<sizeof(sm2)-1 && entry[i] && isalpha(entry[i]) ; j++)
+ sm2[j]=entry[i++];
if (j!=3) return;
- m2[j]='\0';
+ sm2[j]='\0';
for (j=0 ; entry[i] && isdigit(entry[i]) ; j++)
y2=y2*10+(entry[i++]-'0');
if (j!=4) return;
} else
return;
- conv_month(m1);
- conv_month(m2);
+ m1=conv_month(sm1);
+ m2=conv_month(sm2);
ndirlen=sprintf(newdir,"%s%04d",outdir,y1);
if(access(newdir, R_OK) != 0) mkdir(newdir,0755);
- if(strcmp(m1,m2) != 0) ndirlen+=sprintf(newdir+ndirlen,"/%s-%s",m1,m2);
- else ndirlen+=sprintf(newdir+ndirlen,"/%s",m1);
+ if(m1 != m2) ndirlen+=sprintf(newdir+ndirlen,"/%02d-%02d",m1,m2);
+ else ndirlen+=sprintf(newdir+ndirlen,"/%02d",m1);
if(access(newdir, R_OK) != 0) mkdir(newdir,0755);
monthlen=ndirlen;
if(d1!=d2) ndirlen+=sprintf(newdir+ndirlen,"/%02d-%02d",d1,d2);
sprintf(olddir,"%s%s",outdir,entry);
if (rename(olddir,newdir)) {
- fprintf(stderr, "SARG: (index) rename error from \"%s\" to \"%s\" - %s\n",olddir,newdir,strerror(errno));
- exit(1);
+ debuga(_("(index) rename error from \"%s\" to \"%s\" - %s\n"),olddir,newdir,strerror(errno));
+ exit(EXIT_FAILURE);
}
strcpy(newdir+monthlen,"/images");
sprintf(linkdir,"%simages",outdir);
if (symlink(linkdir,newdir)) {
- fprintf(stderr, "SARG: failed to create link \"%s\" to \"%s\" - %s\n",linkdir,newdir,strerror(errno));
- exit(1);
+ debuga(_("failed to create link \"%s\" to \"%s\" - %s\n"),linkdir,newdir,strerror(errno));
+ exit(EXIT_FAILURE);
}
#else
char cmd[MAXLEN];
sprintf(cmd,"ln -s \"%simages\" \"%s/images\"",outdir,newdir);
cstatus=system(cmd);
if (!WIFEXITED(cstatus) || WEXITSTATUS(cstatus)) {
- fprintf(stderr, "SARG: command return status %d\n",WEXITSTATUS(cstatus));
- fprintf(stderr, "SARG: command: %s\n",cmd);
- exit(1);
+ debuga(_("command return status %d\n"),WEXITSTATUS(cstatus));
+ debuga(_("command: %s\n"),cmd);
+ exit(EXIT_FAILURE);
}
#endif
}
static void date_index_to_file_index(const char *entry)
{
int y1, next;
- int val1len;
+ int m1, m2;
int d1, d2;
+ int val1len;
int i, j;
char val1[MAXLEN];
- char m1[8], m2[8];
+ const char *sm1, *sm2;
char *str;
char newdir[MAXLEN], olddir[MAXLEN];
DIR *dirp2, *dirp3;
next=-1;
if (sscanf(entry,"%d%n",&y1,&next)!=1 || next<0 || entry[next]) return;
- val1len=sprintf(val1,"%s%s",outdir,entry);
+ val1len=snprintf(val1,sizeof(val1),"%s%s",outdir,entry);
dirp2 = opendir(val1);
if (!dirp2) return;
while ((direntp2 = readdir( dirp2 )) != NULL) {
if(!isdigit(direntp2->d_name[0]) || !isdigit(direntp2->d_name[1])) continue;
i=0;
str=direntp2->d_name;
- for (j=0 ; j<sizeof(m1) && str[i] && isdigit(str[i]) ; j++)
- m1[j]=str[i++];
- if (j>=sizeof(m1)) continue;
- m1[j]='\0';
- conv_month_name(m1);
+ m1=0;
+ for (j=0 ; j<2 && str[i] && isdigit(str[i]) ; j++)
+ m1=(m1*10)+(str[i++]-'0');
+ if (j>=2) continue;
+ sm1=conv_month_name(m1);
if (str[i]=='-') {
i++;
- for (j=0 ; j<sizeof(m2) && str[i] && isdigit(str[i]) ; j++)
- m2[j]=str[i++];
- if (j>=sizeof(m2)) continue;
- m2[j]='\0';
- conv_month_name(m2);
+ m2=0;
+ for (j=0 ; j<2 && str[i] && isdigit(str[i]) ; j++)
+ m2=(m2*10)+(str[i++]-'0');
+ if (j>=2) continue;
+ sm2=conv_month_name(m2);
} else if (!str[i]) {
- strcpy(m2,m1);
+ sm2=sm1;
} else {
continue;
}
continue;
}
- if(strcmp(df,"u") == 0) sprintf(newdir,"%s%04d%s%02d-%04d%s%02d",outdir,y1,m1,d1,y1,m2,d2);
- else if(strcmp(df,"e") == 0) sprintf(newdir,"%s%02d%s%04d-%02d%s%04d",outdir,d1,m1,y1,d2,m2,y1);
+ if(strcmp(df,"u") == 0) sprintf(newdir,"%s%04d%s%02d-%04d%s%02d",outdir,y1,sm1,d1,y1,sm2,d2);
+ else if(strcmp(df,"e") == 0) sprintf(newdir,"%s%02d%s%04d-%02d%s%04d",outdir,d1,sm1,y1,d2,sm2,y1);
else continue;
sprintf(olddir,"%s%04d/%s/%s",outdir,y1,direntp2->d_name,direntp3->d_name);
if(rename(olddir,newdir)) {
- fprintf(stderr, "SARG: (index) rename error from \"%s\" to \"%s\" - %s\n",olddir,newdir,strerror(errno));
- exit(1);
+ debuga(_("(index) rename error from \"%s\" to \"%s\" - %s\n"),olddir,newdir,strerror(errno));
+ exit(EXIT_FAILURE);
}
}
- (void)closedir( dirp3 );
+ closedir( dirp3 );
}
- (void)closedir( dirp2 );
+ closedir( dirp2 );
/*!
\bug The links to the images in the reports are broken after moving the directories