our $confDir = CONFDIR;
our $specDir = SPECDIR;
+my $isHttpReq = $ENV{HTTP_USER_AGENT};
my $q = CGI->new;
-print header;
-print start_html(
--title=>'xmlOperation',
--style=>{'src'=>'../layout/styles.css'}
-);
-
-print div({-class=>"header"},"Debug Output");
-
-
-unless ($q->param()){
- print "usage:",br;
- print escapeHTML("http://[...]/tools/xmlOperation.pl?action=[action]&[parameter]&[parameter]& ..."),br;
- print br,br;
- print "possible actions: save, delete, copyDefaultRegister, createFile, deleteFile, changeAncestor",br,br;
- print "parameter summary:",br;
- print "save a value into a specific field, optional: if you enter a numeric base, value will be saved in the specified format.:",br;
- print escapeHTML("action=save&configFile=[configFile]®ister=[register]&field=[field]&value=[value]&base=[base]"),br,br;
- print "delete a specific field:",br;
- print escapeHTML("action=delete&configFile=[configFile]®ister=[register]&field=[field]"),br,br;
- print "delete a whole register:",br;
- print escapeHTML("action=delete&configFile=[configFile]®ister=[register]"),br,br;
- print "copy a register including default values from the specification to the config file:",br;
- print escapeHTML("action=copyDefaultRegister&configFile=[configFile]®ister=[register]"),br,br;
- print "create a new config file based on the given specification file",br;
- print escapeHTML("action=createFile&configFile=[configFile]&specFile=[specFile]"),br,br;
- print "delete a config file",br;
- print escapeHTML("action=deleteFile&configFile=[configFile]"),br,br;
- print "change the ancestor (include directive) of config file",br;
- print escapeHTML("action=changeAncestor&configFile=[configFile]&newAncestor=[newAncestor]"),br,br;
- print "move/rename config file",br;
- print escapeHTML("action=moveFile&configFile=[configFile]&newFile=[newFile]"),br,br;
- print "copy config file",br;
- print escapeHTML("action=copyFile&configFile=[configFile]&newFile=[newFile]"),br,br;
+print header('text/plain') if $isHttpReq;
+
+# print header;
+# print start_html(
+# -title=>'xmlOperation',
+# -style=>{'src'=>'../layout/styles.css'}
+# );
+
+
+# print div({-class=>"header"},"Debug Output");
+
-}
if ( defined $q->param('action') ) {
}
if ( $q->param('action') eq 'delete' ) {
parseConfigFile( $q->param('configFile') );
- del( $q->param('register'), $q->param('field') );
+ deleteEntry( $q->param('register'), $q->param('field') );
writeConfigFile();
report_param();
exit;
}
if ( $q->param('action') eq 'copyDefaultRegister' ) {
parseConfigAndSpec( $q->param('configFile') );
- del( $q->param('register'), "" ); # delete existing register from setfile
+ deleteEntry( $q->param('register'), "" ); # delete existing register from setfile
copyDefaultRegister( $q->param('register') );
writeConfigFile();
report_param();
}
+} else {
+
+print_usage();
+
}
-print end_html;
+
+# print end_html;
sub report_param {
print "action ".$q->param('action')." executed with following parameters:",br;
print "</table>";
}
+
+sub print_usage{
+
+my $text = q%
+
+usage:
+
+ via CGI/HTTP request:
+ http://[...]/tools/xmlOperation.pl?action=[action]&[parameter]&[parameter]& ...
+
+ via command line:
+ xmlOperation.pl action=[action] [parameter] [parameter] ...
+ (just like the CGI request, just leave out ? and &)
+
+possible actions: save, delete, copyDefaultRegister, createFile, deleteFile, changeAncestor
+
+parameter summary:
+
+ save a value into a specific field, optional: if you enter a numeric base,
+ value will be saved in the specified format.:
+ action=save&configFile=[configFile]®ister=[register]&field=[field]&value=[value]&base=[base]
+
+ delete a specific field:
+ action=delete&configFile=[configFile]®ister=[register]&field=[field]
+
+ delete a whole register:
+ action=delete&configFile=[configFile]®ister=[register]
+
+ copy a register including default values from the specification to the config file:
+ action=copyDefaultRegister&configFile=[configFile]®ister=[register]
+
+ create a new config file based on the given specification file
+ action=createFile&configFile=[configFile]&specFile=[specFile]
+
+ delete a config file
+ action=deleteFile&configFile=[configFile]
+
+ change the ancestor (include directive) of config file
+ action=changeAncestor&configFile=[configFile]&newAncestor=[newAncestor]
+
+ move/rename config file
+ action=moveFile&configFile=[configFile]&newFile=[newFile]
+
+ copy config file
+ action=copyFile&configFile=[configFile]&newFile=[newFile]
+
+%;
+
+
+
+ if ( $isHttpReq ){
+ print "you have called this script via CGI\n";
+ } else {
+ print "you have called this script via command line\n";
+ }
+ print $text;
+ exit;
+
+}
\ No newline at end of file