Clone button
authorJamie Cameron <jcameron@webmin.com>
Sun, 13 Dec 2009 20:58:16 +0000 (12:58 -0800)
committerJamie Cameron <jcameron@webmin.com>
Sun, 13 Dec 2009 20:58:16 +0000 (12:58 -0800)
custom/CHANGELOG
custom/edit_cmd.cgi
custom/lang/en
custom/save_cmd.cgi

index bfb831b..3342d3d 100644 (file)
@@ -24,3 +24,5 @@ Added a popup progress tracker to commands with file upload fields.
 All links to commands are via an ID number rather than an index, which makes them easier to link to from other web pages.
 ---- Changes since 1.450 ----
 Added a parameter-level option to make the parameter mandatory.
+---- Changes since 1.500 ----
+Added a button to clone an existing command when editing.
index a762808..3c0764c 100755 (executable)
@@ -8,6 +8,9 @@ require './custom-lib.pl';
 $access{'edit'} || &error($text{'edit_ecannot'});
 if ($in{'new'}) {
        &ui_print_header(undef, $text{'create_title'}, "", "create");
+       if ($in{'clone'}) {
+               $cmd = &get_command($in{'id'}, $in{'idx'});
+               }
        }
 else {
        &ui_print_header(undef, $text{'edit_title'}, "", "edit");
@@ -98,6 +101,7 @@ if ($in{'new'}) {
        }
 else {
        print &ui_form_end([ [ undef, $text{'save'} ],
+                            [ 'clone', $text{'edit_clone'} ],
                             [ 'delete', $text{'delete'} ] ]);
        }
 
index e808c65..f8ad637 100644 (file)
@@ -54,6 +54,7 @@ edit_secs=seconds
 edit_clear=Clear environment variables?
 edit_servers=Run on Webmin servers
 edit_this=this server
+edit_clone=Clone
 
 save_err=Failed to save command
 save_ecannot=You are not allowed to edit commands
index 3bdf38b..93f0a50 100755 (executable)
@@ -10,6 +10,10 @@ if ($in{'delete'}) {
        $cmd = &get_command($in{'id'}, $in{'idx'});
        &delete_command($cmd);
        &webmin_log("delete", "command", $cmd->{'id'}, $cmd);
+       &redirect("");
+       }
+elsif ($in{'clone'}) {
+       &redirect("edit_cmd.cgi?id=$in{'id'}&idx=$in{'idx'}&clone=1&new=1");
        }
 else {
        &error_setup($text{'save_err'});
@@ -69,6 +73,6 @@ else {
                $access{'cmds'} .= " ".$cmd->{'id'};
                &save_module_acl(\%access);
                }
+       &redirect("");
        }
-&redirect("");