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 / inst_license.ycp < prev    next >
Text File  |  2006-11-29  |  1KB  |  72 lines

  1. /**
  2.  * File:    clients/inst_license.ycp
  3.  * Package:    Installation
  4.  * Summary:    Generic License File
  5.  * Authors:    Anas Nashif <nashif@suse.de>
  6.  *
  7.  * $Id: inst_license.ycp 33271 2006-10-09 11:28:31Z locilka $
  8.  *
  9.  */
  10.  
  11. {
  12.  
  13. textdomain "installation";
  14.  
  15. import "Directory";
  16. import "GetInstArgs";
  17. import "Stage";
  18. import "ProductLicense";
  19.  
  20. map display = UI::GetDisplayInfo();
  21. integer space = display["TextMode"]:true ? 1 : 3;
  22.  
  23. // all the arguments
  24. map argmap = GetInstArgs::argmap();
  25.  
  26.  
  27. // Action if license is not accepted
  28. // abort|continue|halt
  29. string action = argmap["action"]:"abort";
  30.  
  31. symbol ask_ret = nil;
  32.  
  33. string text = "";
  34.  
  35. if (Stage::initial ())
  36. {
  37.     ask_ret = ProductLicense::AskFirstStageLicenseAgreement (action);
  38. }
  39. else
  40. {
  41.     list<string> default_patterns = ["info.txt"];
  42.     string directory = argmap["directory"]:"/var/lib/YaST2";
  43.     if (argmap["directory"]:"" != "")
  44.     directory = Directory::custom_workflow_dir + directory;
  45.  
  46.     list<string> patterns = argmap["patterns"]:default_patterns;
  47.     ask_ret = ProductLicense::AskInstalledLicenseAgreement (directory,
  48.     patterns, action);
  49. }
  50.  
  51. if (ask_ret == `nil || ask_ret == `auto)
  52.     return `auto;
  53. else if (ask_ret == `abort || ask_ret == `back)
  54.     return ask_ret;
  55. else if (ask_ret == `halt)
  56. {
  57.     UI::CloseDialog();
  58.     SCR::Execute(.target.bash, "/sbin/halt");
  59. }
  60. else if (ask_ret == `next)
  61.     return `next;
  62. else if (ask_ret == `accepted)
  63.     return `next;
  64. else
  65. {
  66.     y2error ("Unknown return: %1", ask_ret);
  67.     return `next;
  68. }
  69.  
  70. /* EOF */
  71. }
  72.