License Header change: Removed the LICENSE_END before beta
[scilab.git] / scilab / modules / atoms / macros / atomsSaveConfig.sci
1 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
2 // Copyright (C) 2012 - DIGITEO - Simon GARESTE <simon.gareste@scilab.org>
3 //
4 // Copyright (C) 2012 - 2016 - Scilab Enterprises
5 //
6 // This file is hereby licensed under the terms of the GNU GPL v2.0,
7 // pursuant to article 5.3.4 of the CeCILL v.2.1.
8 // This file was originally licensed under the terms of the CeCILL v2.1,
9 // and continues to be available under such terms.
10 // For more information, see the COPYING file which you should have received
11 // along with this program.
12
13 // Save the config file in a config.bak file, so that we don't lose information while testing
14
15 function atomsSaveConfig(force)
16
17     rhs = argn(2);
18
19     if rhs > 1 then
20         error(msprintf(gettext("%s: Wrong number of input arguments: %d to %d expected.\n"),"atomsSaveConfig",0,1));
21     end
22
23     load("SCI/modules/atoms/macros/atoms_internals/lib");
24
25     if rhs == 0 then
26         force = %F;
27     end
28
29     pathsystemuser = atomsPath("system", "user");
30
31     proxy_attrs = ["enabled", "host", "port", "user", "password"];
32     setPreferencesValue("//web/body/previous-proxy", [proxy_attrs ; getPreferencesValue("//web/body/proxy", proxy_attrs)]);
33
34     if isfile(pathsystemuser + "config.bak") then
35         if ~force then
36             error(msprintf("The file config.bak already exists, aborting.\n"));
37         elseif isfile(pathsystemuser + "config") then
38             copyfile(pathsystemuser + "config", pathsystemuser + "config.bak");
39             msprintf(gettext("config file saved to %s"), pathsystemuser + "config.bak");
40         else
41             error(msprintf("No config available, aborting.\n"));
42         end
43     elseif isfile(pathsystemuser + "config") then
44         copyfile(pathsystemuser + "config", pathsystemuser + "config.bak");
45         msprintf(gettext("config file saved to %s"), pathsystemuser + "config.bak");
46     elseif ~isdir(pathsystemuser) then
47         mkdir(pathsystemuser)
48         mputl("", pathsystemuser + "config");
49         mputl("", pathsystemuser + "config.bak");
50     else
51         mputl("", pathsystemuser + "config");
52         mputl("", pathsystemuser + "config.bak");
53     end
54
55 endfunction