home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / boot / i386 / root / usr / share / YaST2 / clients / bootloader_auto.ycp < prev    next >
Text File  |  2006-11-29  |  3KB  |  128 lines

  1. /**
  2.  * File:
  3.  *      bootloader_auto.ycp
  4.  *
  5.  * Module:
  6.  *      Bootloader installation and configuration
  7.  *
  8.  * Summary:
  9.  *      Bootloader autoinstallation preparation
  10.  *
  11.  * Authors:
  12.  *      Jiri Srain <jsrain@suse.cz>
  13.  *
  14.  * $Id: bootloader_auto.ycp 24249 2005-07-22 08:18:24Z jsrain $
  15.  *
  16.  */
  17. {
  18.     textdomain "bootloader";
  19.  
  20.     y2milestone("----------------------------------------");
  21.     y2milestone("bootloader auto started");
  22.  
  23.     import "Bootloader";
  24.     import "BootCommon";
  25.     import "Initrd";
  26.     import "Progress";
  27.     import "Mode";
  28.  
  29.     include "bootloader/routines/autoinstall.ycp";
  30.     include "bootloader/routines/wizards.ycp";
  31.  
  32.     boolean progress_orig = Progress::set (false);
  33.  
  34.  
  35.     any ret = nil;
  36.     string func = "";
  37.     map param = $[];
  38.  
  39.     /* Check arguments */
  40.     if(size((list)WFM::Args()) > 0 && is(WFM::Args(0), string)) {
  41.     func = (string)WFM::Args(0);
  42.     if(size((list)WFM::Args()) > 1 && is(WFM::Args(1), map))
  43.         param = (map)WFM::Args(1);
  44.     }
  45.     y2debug("func=%1", func);
  46.     y2debug("param=%1", param);
  47.  
  48.     if(func == "Import")
  49.     {
  50.     ret = Bootloader::Import(AI2Export ((map<string,any>)param));
  51.     }
  52.     /**
  53.       * Create a summary
  54.       * return string
  55.       */
  56.     else if(func == "Summary") {
  57.     ret = "<UL>"
  58.             + mergestring (maplist (string l, Bootloader::Summary(),
  59.         ``("<LI>" + l)),
  60.         "\n")
  61.             + "</UL>";
  62.     }
  63.     /**
  64.       * did configuration changed
  65.       * return boolean
  66.       */
  67.     else if (func == "GetModified") {
  68.     ret =  BootCommon::changed;
  69.     }
  70.     /**
  71.      * set configuration as changed
  72.      * return boolean
  73.      */
  74.     else if (func == "SetModified") {
  75.         BootCommon::changed = true;
  76.         ret = true;
  77.     }
  78.     /**
  79.       * Reset configuration
  80.       * return map or list
  81.       */
  82.     else if (func == "Reset") {
  83.     Bootloader::Reset();
  84.     ret =  ($[]);
  85.     }
  86.     /**
  87.       * Change configuration
  88.       * return symbol (i.e. `finish || `accept || `next || `cancel || `abort)
  89.       */
  90.     else if (func == "Change") {
  91.     ret = BootloaderAutoSequence ();
  92.     return ret;
  93.     }
  94.     /**
  95.       * Return configuration data
  96.       * return map or list
  97.       */
  98.     else if (func == "Export") {
  99.     ret = Export2AI ((map<string,any>)Bootloader::Export());
  100.     }
  101.     /**
  102.       * Write configuration data
  103.       * return boolean
  104.       */
  105.     else if (func == "Write") {
  106.     ret = Bootloader::Write();
  107.     }
  108.     else if (func == "Read") {
  109.     Initrd::Read ();
  110.     ret = Bootloader::Read();
  111.     }
  112.     /* unknown function */
  113.     else {
  114.     y2error("unknown function: %1", func);
  115.     ret =  false;
  116.     }
  117.     Progress::set (progress_orig);
  118.  
  119.     y2debug("ret=%1", ret);
  120.     y2milestone("bootloader_auto finished");
  121.     y2milestone("----------------------------------------");
  122.  
  123.     return ret;
  124.  
  125. /* EOF */
  126.  
  127. }
  128.