home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 7: Programming / CDAT7.iso / Share / Java / AppletPasswordWizard11 / setup.exe / %MAINDIR% / joylock.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-04-22  |  6.7 KB  |  479 lines

  1. import java.applet.Applet;
  2. import java.awt.Button;
  3. import java.awt.Color;
  4. import java.awt.Component;
  5. import java.awt.Container;
  6. import java.awt.Event;
  7. import java.awt.Graphics;
  8. import java.awt.Label;
  9. import java.awt.LayoutManager;
  10. import java.awt.TextArea;
  11. import java.awt.TextField;
  12. import java.net.MalformedURLException;
  13. import java.net.URL;
  14. import java.util.StringTokenizer;
  15.  
  16. public class joylock extends Applet {
  17.    Label lUsername;
  18.    Label lPassword;
  19.    TextArea textArea;
  20.    Button loginButton;
  21.    TextField ePassword;
  22.    TextField eUsername;
  23.    int numUsers;
  24.    int numWrongPass;
  25.    String loginText;
  26.    String linkURL;
  27.    String linkFrame;
  28.    String preLoginMessage;
  29.    String reLinkURL;
  30.    String reLinkFrame;
  31.    String[] username;
  32.    String[] password;
  33.    String[] urls;
  34.    String[] frames;
  35.    Color textColor;
  36.    Color bkColor;
  37.    boolean registered = false;
  38.  
  39.    public void init() {
  40.       super.init();
  41.       int var1 = ((Component)this).size().width - 80;
  42.       StringTokenizer var2 = new StringTokenizer(((Applet)this).getParameter("GENERAL"), "|", false);
  43.       this.numUsers = Integer.parseInt(var2.nextToken());
  44.       if (Integer.parseInt(var2.nextToken()) == 11) {
  45.          this.registered = true;
  46.       } else if (((Applet)this).getDocumentBase().toString().startsWith("file")) {
  47.          this.registered = true;
  48.       }
  49.  
  50.       if (this.registered) {
  51.          this.bkColor = new Color(Integer.parseInt(var2.nextToken(), 16));
  52.          this.textColor = new Color(Integer.parseInt(var2.nextToken(), 16));
  53.          this.linkURL = var2.nextToken();
  54.          this.linkURL = this.decript(this.linkURL, true);
  55.          this.linkFrame = var2.nextToken();
  56.          this.loginText = var2.nextToken();
  57.          this.preLoginMessage = var2.nextToken();
  58.          this.reLinkURL = var2.nextToken();
  59.          this.reLinkFrame = var2.nextToken();
  60.          this.username = new String[this.numUsers];
  61.          this.password = new String[this.numUsers];
  62.          this.urls = new String[this.numUsers];
  63.          this.frames = new String[this.numUsers];
  64.  
  65.          for(int var3 = 0; var3 < this.numUsers; ++var3) {
  66.             var2 = new StringTokenizer(((Applet)this).getParameter(Integer.toString(var3)), "|", false);
  67.             if (var2.hasMoreTokens()) {
  68.                this.username[var3] = var2.nextToken();
  69.                this.username[var3] = this.decript(this.username[var3], false);
  70.             } else {
  71.                this.username[var3] = "";
  72.             }
  73.  
  74.             if (var2.hasMoreTokens()) {
  75.                this.password[var3] = var2.nextToken();
  76.                this.password[var3] = this.decript(this.password[var3], false);
  77.             } else {
  78.                this.password[var3] = "";
  79.             }
  80.  
  81.             if (var2.hasMoreTokens()) {
  82.                this.urls[var3] = var2.nextToken();
  83.                this.urls[var3] = this.decript(this.urls[var3], true);
  84.             } else {
  85.                this.urls[var3] = "";
  86.             }
  87.  
  88.             if (var2.hasMoreTokens()) {
  89.                this.frames[var3] = var2.nextToken();
  90.             } else {
  91.                this.frames[var3] = "";
  92.             }
  93.          }
  94.  
  95.          ((Component)this).setBackground(this.bkColor);
  96.          ((Container)this).setLayout((LayoutManager)null);
  97.          this.loginButton = new Button();
  98.          this.loginButton.setLabel("Login");
  99.          this.loginButton.reshape(8, ((Component)this).size().height - 30, ((Component)this).size().width - 16, 24);
  100.          this.loginButton.setBackground(new Color(12632256));
  101.          ((Container)this).add(this.loginButton);
  102.          this.lUsername = new Label("Username:");
  103.          this.lUsername.reshape(8, ((Component)this).size().height - 88, 64, 24);
  104.          this.lUsername.setForeground(this.textColor);
  105.          ((Container)this).add(this.lUsername);
  106.          this.lPassword = new Label("Password:");
  107.          this.lPassword.reshape(8, ((Component)this).size().height - 60, 64, 24);
  108.          this.lPassword.setForeground(this.textColor);
  109.          ((Container)this).add(this.lPassword);
  110.          this.eUsername = new TextField();
  111.          this.eUsername.reshape(72, ((Component)this).size().height - 88, var1, 24);
  112.          this.eUsername.setBackground(new Color(16777215));
  113.          ((Container)this).add(this.eUsername);
  114.          this.ePassword = new TextField();
  115.          this.ePassword.setEchoCharacter('*');
  116.          this.ePassword.reshape(72, ((Component)this).size().height - 60, var1, 24);
  117.          this.ePassword.setBackground(new Color(16777215));
  118.          ((Container)this).add(this.ePassword);
  119.          this.textArea = new TextArea(this.preLoginMessage);
  120.          this.textArea.reshape(8, 6, ((Component)this).size().width - 16, ((Component)this).size().height - 98);
  121.          this.textArea.setBackground(new Color(16777215));
  122.          this.textArea.setEditable(false);
  123.          ((Container)this).add(this.textArea);
  124.       }
  125.  
  126.    }
  127.  
  128.    public void paint(Graphics var1) {
  129.       if (!this.registered) {
  130.          var1.drawString("You have the unregistered", 0, 10);
  131.          var1.drawString("version of this program", 0, 20);
  132.          var1.drawString("You need the registered version", 0, 30);
  133.          var1.drawString("for this Applet to work on the internet", 0, 40);
  134.          var1.drawString("Click HERE for registration instructions", 0, 50);
  135.       }
  136.  
  137.    }
  138.  
  139.    void clickLoginButton(Event var1) {
  140.       for(int var2 = 0; var2 < this.numUsers; ++var2) {
  141.          if (this.username[var2].equalsIgnoreCase(this.eUsername.getText()) && this.password[var2].equalsIgnoreCase(this.ePassword.getText())) {
  142.             try {
  143.                URL var7;
  144.                if (!this.urls[var2].equalsIgnoreCase("")) {
  145.                   var7 = new URL(((Applet)this).getDocumentBase(), this.urls[var2]);
  146.                } else {
  147.                   var7 = new URL(((Applet)this).getDocumentBase(), this.linkURL);
  148.                }
  149.  
  150.                String var4;
  151.                if (!this.frames[var2].equalsIgnoreCase("")) {
  152.                   var4 = this.frames[var2];
  153.                } else {
  154.                   var4 = this.linkFrame;
  155.                }
  156.  
  157.                if (this.linkFrame != null && !this.linkFrame.equalsIgnoreCase(" ")) {
  158.                   ((Applet)this).getAppletContext().showDocument(var7, var4);
  159.                } else {
  160.                   ((Applet)this).getAppletContext().showDocument(var7);
  161.                }
  162.             } catch (MalformedURLException var5) {
  163.             }
  164.  
  165.             this.textArea.setText(this.loginText);
  166.             return;
  167.          }
  168.  
  169.          if (var2 == this.numUsers - 1) {
  170.             this.eUsername.setText("");
  171.             this.ePassword.setText("");
  172.             this.textArea.setText("Incorrect Username or Password.");
  173.             if (this.reLinkURL != null && !this.reLinkURL.equalsIgnoreCase(" ") && this.numWrongPass == 2) {
  174.                this.numWrongPass = 0;
  175.  
  176.                try {
  177.                   URL var3 = new URL(((Applet)this).getDocumentBase(), this.reLinkURL);
  178.                   if (this.reLinkFrame != null && !this.reLinkFrame.equalsIgnoreCase(" ")) {
  179.                      ((Applet)this).getAppletContext().showDocument(var3, this.reLinkFrame);
  180.                   } else {
  181.                      ((Applet)this).getAppletContext().showDocument(var3);
  182.                   }
  183.                } catch (MalformedURLException var6) {
  184.                }
  185.             } else {
  186.                ++this.numWrongPass;
  187.             }
  188.          }
  189.       }
  190.  
  191.    }
  192.  
  193.    public boolean handleEvent(Event var1) {
  194.       if (var1.target == this.loginButton && var1.id == 1001) {
  195.          this.clickLoginButton(var1);
  196.          return true;
  197.       } else {
  198.          return super.handleEvent(var1);
  199.       }
  200.    }
  201.  
  202.    public boolean mouseUp(Event var1, int var2, int var3) {
  203.       if (!this.registered) {
  204.          try {
  205.             URL var4 = new URL(((Applet)this).getDocumentBase(), "http://www.coffeecup.com/");
  206.             ((Applet)this).getAppletContext().showDocument(var4);
  207.          } catch (MalformedURLException var5) {
  208.          }
  209.       }
  210.  
  211.       return true;
  212.    }
  213.  
  214.    String decript(String var1, boolean var2) {
  215.       String var3 = "";
  216.       StringBuffer var4 = new StringBuffer(var1);
  217.  
  218.       for(int var5 = 0; var5 < var4.length(); ++var5) {
  219.          switch (var4.charAt(var5)) {
  220.             case '0':
  221.                var3 = var3 + '3';
  222.                break;
  223.             case '1':
  224.                var3 = var3 + '2';
  225.                break;
  226.             case '2':
  227.                var3 = var3 + '4';
  228.                break;
  229.             case '3':
  230.                var3 = var3 + '5';
  231.                break;
  232.             case '4':
  233.                var3 = var3 + '1';
  234.                break;
  235.             case '5':
  236.                var3 = var3 + '6';
  237.                break;
  238.             case '6':
  239.                var3 = var3 + '9';
  240.                break;
  241.             case '7':
  242.                var3 = var3 + '8';
  243.                break;
  244.             case '8':
  245.                var3 = var3 + '7';
  246.                break;
  247.             case '9':
  248.                var3 = var3 + '0';
  249.                break;
  250.             case ':':
  251.             case ';':
  252.             case '<':
  253.             case '=':
  254.             case '>':
  255.             case '?':
  256.             case '@':
  257.             case '[':
  258.             case '\\':
  259.             case ']':
  260.             case '^':
  261.             case '_':
  262.             case '`':
  263.             default:
  264.                var3 = var3 + var4.charAt(var5);
  265.                break;
  266.             case 'A':
  267.                if (var2) {
  268.                   var3 = var3 + 'G';
  269.                }
  270.                break;
  271.             case 'B':
  272.                if (var2) {
  273.                   var3 = var3 + 'M';
  274.                }
  275.                break;
  276.             case 'C':
  277.                if (var2) {
  278.                   var3 = var3 + 'I';
  279.                }
  280.                break;
  281.             case 'D':
  282.                if (var2) {
  283.                   var3 = var3 + 'T';
  284.                }
  285.                break;
  286.             case 'E':
  287.                if (var2) {
  288.                   var3 = var3 + 'B';
  289.                }
  290.                break;
  291.             case 'F':
  292.                if (var2) {
  293.                   var3 = var3 + 'J';
  294.                }
  295.                break;
  296.             case 'G':
  297.                if (var2) {
  298.                   var3 = var3 + 'Z';
  299.                }
  300.                break;
  301.             case 'H':
  302.                if (var2) {
  303.                   var3 = var3 + 'R';
  304.                }
  305.                break;
  306.             case 'I':
  307.                if (var2) {
  308.                   var3 = var3 + 'N';
  309.                }
  310.                break;
  311.             case 'J':
  312.                if (var2) {
  313.                   var3 = var3 + 'O';
  314.                }
  315.                break;
  316.             case 'K':
  317.                if (var2) {
  318.                   var3 = var3 + 'C';
  319.                }
  320.                break;
  321.             case 'L':
  322.                if (var2) {
  323.                   var3 = var3 + 'V';
  324.                }
  325.                break;
  326.             case 'M':
  327.                if (var2) {
  328.                   var3 = var3 + 'D';
  329.                }
  330.                break;
  331.             case 'N':
  332.                if (var2) {
  333.                   var3 = var3 + 'E';
  334.                }
  335.                break;
  336.             case 'O':
  337.                if (var2) {
  338.                   var3 = var3 + 'H';
  339.                }
  340.                break;
  341.             case 'P':
  342.                if (var2) {
  343.                   var3 = var3 + 'S';
  344.                }
  345.                break;
  346.             case 'Q':
  347.                if (var2) {
  348.                   var3 = var3 + 'Y';
  349.                }
  350.                break;
  351.             case 'R':
  352.                if (var2) {
  353.                   var3 = var3 + 'F';
  354.                }
  355.                break;
  356.             case 'S':
  357.                if (var2) {
  358.                   var3 = var3 + 'K';
  359.                }
  360.                break;
  361.             case 'T':
  362.                if (var2) {
  363.                   var3 = var3 + 'X';
  364.                }
  365.                break;
  366.             case 'U':
  367.                if (var2) {
  368.                   var3 = var3 + 'W';
  369.                }
  370.                break;
  371.             case 'V':
  372.                if (var2) {
  373.                   var3 = var3 + 'P';
  374.                }
  375.                break;
  376.             case 'W':
  377.                if (var2) {
  378.                   var3 = var3 + 'Q';
  379.                }
  380.                break;
  381.             case 'X':
  382.                if (var2) {
  383.                   var3 = var3 + 'U';
  384.                }
  385.                break;
  386.             case 'Y':
  387.                if (var2) {
  388.                   var3 = var3 + 'L';
  389.                }
  390.                break;
  391.             case 'Z':
  392.                if (var2) {
  393.                   var3 = var3 + 'A';
  394.                }
  395.                break;
  396.             case 'a':
  397.                var3 = var3 + 'g';
  398.                break;
  399.             case 'b':
  400.                var3 = var3 + 'm';
  401.                break;
  402.             case 'c':
  403.                var3 = var3 + 'i';
  404.                break;
  405.             case 'd':
  406.                var3 = var3 + 't';
  407.                break;
  408.             case 'e':
  409.                var3 = var3 + 'b';
  410.                break;
  411.             case 'f':
  412.                var3 = var3 + 'j';
  413.                break;
  414.             case 'g':
  415.                var3 = var3 + 'z';
  416.                break;
  417.             case 'h':
  418.                var3 = var3 + 'r';
  419.                break;
  420.             case 'i':
  421.                var3 = var3 + 'n';
  422.                break;
  423.             case 'j':
  424.                var3 = var3 + 'o';
  425.                break;
  426.             case 'k':
  427.                var3 = var3 + 'c';
  428.                break;
  429.             case 'l':
  430.                var3 = var3 + 'v';
  431.                break;
  432.             case 'm':
  433.                var3 = var3 + 'd';
  434.                break;
  435.             case 'n':
  436.                var3 = var3 + 'e';
  437.                break;
  438.             case 'o':
  439.                var3 = var3 + 'h';
  440.                break;
  441.             case 'p':
  442.                var3 = var3 + 's';
  443.                break;
  444.             case 'q':
  445.                var3 = var3 + 'y';
  446.                break;
  447.             case 'r':
  448.                var3 = var3 + 'f';
  449.                break;
  450.             case 's':
  451.                var3 = var3 + 'k';
  452.                break;
  453.             case 't':
  454.                var3 = var3 + 'x';
  455.                break;
  456.             case 'u':
  457.                var3 = var3 + 'w';
  458.                break;
  459.             case 'v':
  460.                var3 = var3 + 'p';
  461.                break;
  462.             case 'w':
  463.                var3 = var3 + 'q';
  464.                break;
  465.             case 'x':
  466.                var3 = var3 + 'u';
  467.                break;
  468.             case 'y':
  469.                var3 = var3 + 'l';
  470.                break;
  471.             case 'z':
  472.                var3 = var3 + 'a';
  473.          }
  474.       }
  475.  
  476.       return var3;
  477.    }
  478. }
  479.