home *** CD-ROM | disk | FTP | other *** search
- import java.applet.Applet;
- import java.awt.Button;
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Event;
- import java.awt.Graphics;
- import java.awt.Label;
- import java.awt.LayoutManager;
- import java.awt.TextArea;
- import java.awt.TextField;
- import java.net.MalformedURLException;
- import java.net.URL;
- import java.util.StringTokenizer;
-
- public class joylock extends Applet {
- Label lUsername;
- Label lPassword;
- TextArea textArea;
- Button loginButton;
- TextField ePassword;
- TextField eUsername;
- int numUsers;
- int numWrongPass;
- String loginText;
- String linkURL;
- String linkFrame;
- String preLoginMessage;
- String reLinkURL;
- String reLinkFrame;
- String[] username;
- String[] password;
- String[] urls;
- String[] frames;
- String alphabet = "abcdefghijklmnopqrstuvwxyz";
- Color textColor;
- Color bkColor;
- boolean registered = false;
-
- public void init() {
- super.init();
- int var1 = ((Component)this).size().width - 80;
- StringTokenizer var2 = new StringTokenizer(((Applet)this).getParameter("GENERAL"), "|", false);
- this.numUsers = Integer.parseInt(var2.nextToken());
- if (Integer.parseInt(var2.nextToken()) == 11) {
- this.registered = true;
- } else if (((Applet)this).getDocumentBase().toString().startsWith("file")) {
- this.registered = true;
- }
-
- if (this.registered) {
- this.bkColor = new Color(Integer.parseInt(var2.nextToken(), 16));
- this.textColor = new Color(Integer.parseInt(var2.nextToken(), 16));
- this.linkURL = var2.nextToken();
- if (!this.linkURL.equalsIgnoreCase(" ")) {
- this.decript(this.linkURL, 0, 0, 0, 0, 0, false);
- }
-
- this.linkFrame = var2.nextToken();
- this.loginText = var2.nextToken();
- this.preLoginMessage = var2.nextToken();
- this.reLinkURL = var2.nextToken();
- this.reLinkFrame = var2.nextToken();
- this.username = new String[this.numUsers];
- this.password = new String[this.numUsers];
- this.urls = new String[this.numUsers];
- this.frames = new String[this.numUsers];
-
- for(int var8 = 0; var8 < this.numUsers; ++var8) {
- var2 = new StringTokenizer(((Applet)this).getParameter(Integer.toString(var8)), "|", false);
- int var3 = Integer.parseInt(var2.nextToken());
- int var4 = Integer.parseInt(var2.nextToken());
- int var5 = Integer.parseInt(var2.nextToken());
- int var6 = Integer.parseInt(var2.nextToken());
- String var7 = var2.nextToken();
- this.decript(var7, var8, var3, var4, var5, var6, true);
- }
-
- ((Component)this).setBackground(this.bkColor);
- ((Container)this).setLayout((LayoutManager)null);
- this.loginButton = new Button();
- this.loginButton.setLabel("Login");
- this.loginButton.reshape(8, ((Component)this).size().height - 30, ((Component)this).size().width - 16, 24);
- this.loginButton.setBackground(new Color(12632256));
- ((Container)this).add(this.loginButton);
- this.lUsername = new Label("Username:");
- this.lUsername.reshape(8, ((Component)this).size().height - 88, 64, 24);
- this.lUsername.setForeground(this.textColor);
- ((Container)this).add(this.lUsername);
- this.lPassword = new Label("Password:");
- this.lPassword.reshape(8, ((Component)this).size().height - 60, 64, 24);
- this.lPassword.setForeground(this.textColor);
- ((Container)this).add(this.lPassword);
- this.eUsername = new TextField();
- this.eUsername.reshape(72, ((Component)this).size().height - 88, var1, 24);
- this.eUsername.setBackground(new Color(16777215));
- ((Container)this).add(this.eUsername);
- this.ePassword = new TextField();
- this.ePassword.setEchoCharacter('*');
- this.ePassword.reshape(72, ((Component)this).size().height - 60, var1, 24);
- this.ePassword.setBackground(new Color(16777215));
- ((Container)this).add(this.ePassword);
- this.textArea = new TextArea(this.preLoginMessage);
- this.textArea.reshape(8, 6, ((Component)this).size().width - 16, ((Component)this).size().height - 98);
- this.textArea.setBackground(new Color(16777215));
- this.textArea.setEditable(false);
- ((Container)this).add(this.textArea);
- }
-
- }
-
- public void paint(Graphics var1) {
- if (!this.registered) {
- var1.drawString("You have the unregistered", 0, 10);
- var1.drawString("version of this program", 0, 20);
- var1.drawString("You need the registered version", 0, 30);
- var1.drawString("for this Applet to work on the internet", 0, 40);
- var1.drawString("Click HERE for registration instructions", 0, 50);
- }
-
- }
-
- void clickLoginButton(Event var1) {
- for(int var2 = 0; var2 < this.numUsers; ++var2) {
- if (this.username[var2].equalsIgnoreCase(this.eUsername.getText()) && this.password[var2].equalsIgnoreCase(this.ePassword.getText())) {
- try {
- URL var7;
- if (!this.urls[var2].equalsIgnoreCase("")) {
- var7 = new URL(((Applet)this).getDocumentBase(), this.urls[var2]);
- } else {
- var7 = new URL(((Applet)this).getDocumentBase(), this.linkURL);
- }
-
- String var4;
- if (!this.frames[var2].equalsIgnoreCase("")) {
- var4 = this.frames[var2];
- } else {
- var4 = this.linkFrame;
- }
-
- if (var4 != null && !var4.equalsIgnoreCase(" ")) {
- ((Applet)this).getAppletContext().showDocument(var7, var4);
- } else {
- ((Applet)this).getAppletContext().showDocument(var7);
- }
- } catch (MalformedURLException var5) {
- }
-
- this.textArea.setText(this.loginText);
- return;
- }
-
- if (var2 == this.numUsers - 1) {
- this.eUsername.setText("");
- this.ePassword.setText("");
- this.textArea.setText("Incorrect Username or Password.");
- if (this.reLinkURL != null && !this.reLinkURL.equalsIgnoreCase(" ") && this.numWrongPass == 2) {
- this.numWrongPass = 0;
-
- try {
- URL var3 = new URL(((Applet)this).getDocumentBase(), this.reLinkURL);
- if (this.reLinkFrame != null && !this.reLinkFrame.equalsIgnoreCase(" ")) {
- ((Applet)this).getAppletContext().showDocument(var3, this.reLinkFrame);
- } else {
- ((Applet)this).getAppletContext().showDocument(var3);
- }
- } catch (MalformedURLException var6) {
- }
- } else {
- ++this.numWrongPass;
- }
- }
- }
-
- }
-
- public boolean handleEvent(Event var1) {
- if (var1.key != 10 && (var1.target != this.loginButton || var1.id != 1001)) {
- return super.handleEvent(var1);
- } else {
- this.clickLoginButton(var1);
- return true;
- }
- }
-
- public boolean mouseUp(Event var1, int var2, int var3) {
- if (!this.registered) {
- try {
- URL var4 = new URL(((Applet)this).getDocumentBase(), "http://www.coffeecup.com/");
- ((Applet)this).getAppletContext().showDocument(var4);
- } catch (MalformedURLException var5) {
- }
- }
-
- return true;
- }
-
- final void decript(String var1, int var2, int var3, int var4, int var5, int var6, boolean var7) {
- String var9 = "";
- String var10 = var1.substring(0, 26);
- String var11 = var1.substring(26, var1.length());
- String[] var8 = new String[52];
-
- for(int var12 = 0; var12 < 52; ++var12) {
- var8[var12] = "";
- }
-
- var8[0] = var8[0] + var10.charAt(this.alphabet.indexOf("a"));
- var8[1] = var8[1] + var10.charAt(this.alphabet.indexOf("b"));
- var8[2] = var8[2] + var10.charAt(this.alphabet.indexOf("c"));
- var8[3] = var8[3] + var10.charAt(this.alphabet.indexOf("d"));
- var8[4] = var8[4] + var10.charAt(this.alphabet.indexOf("e"));
- var8[5] = var8[5] + var10.charAt(this.alphabet.indexOf("f"));
- var8[6] = var8[6] + var10.charAt(this.alphabet.indexOf("g"));
- var8[7] = var8[7] + var10.charAt(this.alphabet.indexOf("h"));
- var8[8] = var8[8] + var10.charAt(this.alphabet.indexOf("i"));
- var8[9] = var8[9] + var10.charAt(this.alphabet.indexOf("j"));
- var8[10] = var8[10] + var10.charAt(this.alphabet.indexOf("k"));
- var8[11] = var8[11] + var10.charAt(this.alphabet.indexOf("l"));
- var8[12] = var8[12] + var10.charAt(this.alphabet.indexOf("m"));
- var8[13] = var8[13] + var10.charAt(this.alphabet.indexOf("n"));
- var8[14] = var8[14] + var10.charAt(this.alphabet.indexOf("o"));
- var8[15] = var8[15] + var10.charAt(this.alphabet.indexOf("p"));
- var8[16] = var8[16] + var10.charAt(this.alphabet.indexOf("q"));
- var8[17] = var8[17] + var10.charAt(this.alphabet.indexOf("r"));
- var8[18] = var8[18] + var10.charAt(this.alphabet.indexOf("s"));
- var8[19] = var8[19] + var10.charAt(this.alphabet.indexOf("t"));
- var8[20] = var8[20] + var10.charAt(this.alphabet.indexOf("u"));
- var8[21] = var8[21] + var10.charAt(this.alphabet.indexOf("v"));
- var8[22] = var8[22] + var10.charAt(this.alphabet.indexOf("w"));
- var8[23] = var8[23] + var10.charAt(this.alphabet.indexOf("x"));
- var8[24] = var8[24] + var10.charAt(this.alphabet.indexOf("y"));
- var8[25] = var8[25] + var10.charAt(this.alphabet.indexOf("z"));
- var8[26] = var8[26] + var10.charAt(this.alphabet.indexOf("a"));
- var8[27] = var8[27] + var10.charAt(this.alphabet.indexOf("b"));
- var8[28] = var8[28] + var10.charAt(this.alphabet.indexOf("c"));
- var8[29] = var8[29] + var10.charAt(this.alphabet.indexOf("d"));
- var8[30] = var8[30] + var10.charAt(this.alphabet.indexOf("e"));
- var8[31] = var8[31] + var10.charAt(this.alphabet.indexOf("f"));
- var8[32] = var8[32] + var10.charAt(this.alphabet.indexOf("g"));
- var8[33] = var8[33] + var10.charAt(this.alphabet.indexOf("h"));
- var8[34] = var8[34] + var10.charAt(this.alphabet.indexOf("i"));
- var8[35] = var8[35] + var10.charAt(this.alphabet.indexOf("j"));
- var8[36] = var8[36] + var10.charAt(this.alphabet.indexOf("k"));
- var8[37] = var8[37] + var10.charAt(this.alphabet.indexOf("l"));
- var8[38] = var8[38] + var10.charAt(this.alphabet.indexOf("m"));
- var8[39] = var8[39] + var10.charAt(this.alphabet.indexOf("n"));
- var8[40] = var8[40] + var10.charAt(this.alphabet.indexOf("o"));
- var8[41] = var8[41] + var10.charAt(this.alphabet.indexOf("p"));
- var8[42] = var8[42] + var10.charAt(this.alphabet.indexOf("q"));
- var8[43] = var8[43] + var10.charAt(this.alphabet.indexOf("r"));
- var8[44] = var8[44] + var10.charAt(this.alphabet.indexOf("s"));
- var8[45] = var8[45] + var10.charAt(this.alphabet.indexOf("t"));
- var8[46] = var8[46] + var10.charAt(this.alphabet.indexOf("u"));
- var8[47] = var8[47] + var10.charAt(this.alphabet.indexOf("v"));
- var8[48] = var8[48] + var10.charAt(this.alphabet.indexOf("w"));
- var8[49] = var8[49] + var10.charAt(this.alphabet.indexOf("x"));
- var8[50] = var8[50] + var10.charAt(this.alphabet.indexOf("y"));
- var8[51] = var8[51] + var10.charAt(this.alphabet.indexOf("z"));
-
- for(int var13 = 26; var13 < 51; ++var13) {
- var8[var13] = var8[var13].toUpperCase();
- }
-
- for(int var14 = 0; var14 < var11.length(); ++var14) {
- switch (var11.charAt(var14)) {
- case 'A':
- var9 = var9 + var8[26];
- break;
- case 'B':
- var9 = var9 + var8[27];
- break;
- case 'C':
- var9 = var9 + var8[28];
- break;
- case 'D':
- var9 = var9 + var8[29];
- break;
- case 'E':
- var9 = var9 + var8[30];
- break;
- case 'F':
- var9 = var9 + var8[31];
- break;
- case 'G':
- var9 = var9 + var8[32];
- break;
- case 'H':
- var9 = var9 + var8[33];
- break;
- case 'I':
- var9 = var9 + var8[34];
- break;
- case 'J':
- var9 = var9 + var8[35];
- break;
- case 'K':
- var9 = var9 + var8[36];
- break;
- case 'L':
- var9 = var9 + var8[37];
- break;
- case 'M':
- var9 = var9 + var8[38];
- break;
- case 'N':
- var9 = var9 + var8[39];
- break;
- case 'O':
- var9 = var9 + var8[40];
- break;
- case 'P':
- var9 = var9 + var8[41];
- break;
- case 'Q':
- var9 = var9 + var8[42];
- break;
- case 'R':
- var9 = var9 + var8[43];
- break;
- case 'S':
- var9 = var9 + var8[44];
- break;
- case 'T':
- var9 = var9 + var8[45];
- break;
- case 'U':
- var9 = var9 + var8[46];
- break;
- case 'V':
- var9 = var9 + var8[47];
- break;
- case 'W':
- var9 = var9 + var8[48];
- break;
- case 'X':
- var9 = var9 + var8[49];
- break;
- case 'Y':
- var9 = var9 + var8[50];
- break;
- case 'Z':
- var9 = var9 + var8[51];
- break;
- case '[':
- case '\\':
- case ']':
- case '^':
- case '_':
- case '`':
- default:
- var9 = var9 + var11.charAt(var14);
- break;
- case 'a':
- var9 = var9 + var8[0];
- break;
- case 'b':
- var9 = var9 + var8[1];
- break;
- case 'c':
- var9 = var9 + var8[2];
- break;
- case 'd':
- var9 = var9 + var8[3];
- break;
- case 'e':
- var9 = var9 + var8[4];
- break;
- case 'f':
- var9 = var9 + var8[5];
- break;
- case 'g':
- var9 = var9 + var8[6];
- break;
- case 'h':
- var9 = var9 + var8[7];
- break;
- case 'i':
- var9 = var9 + var8[8];
- break;
- case 'j':
- var9 = var9 + var8[9];
- break;
- case 'k':
- var9 = var9 + var8[10];
- break;
- case 'l':
- var9 = var9 + var8[11];
- break;
- case 'm':
- var9 = var9 + var8[12];
- break;
- case 'n':
- var9 = var9 + var8[13];
- break;
- case 'o':
- var9 = var9 + var8[14];
- break;
- case 'p':
- var9 = var9 + var8[15];
- break;
- case 'q':
- var9 = var9 + var8[16];
- break;
- case 'r':
- var9 = var9 + var8[17];
- break;
- case 's':
- var9 = var9 + var8[18];
- break;
- case 't':
- var9 = var9 + var8[19];
- break;
- case 'u':
- var9 = var9 + var8[20];
- break;
- case 'v':
- var9 = var9 + var8[21];
- break;
- case 'w':
- var9 = var9 + var8[22];
- break;
- case 'x':
- var9 = var9 + var8[23];
- break;
- case 'y':
- var9 = var9 + var8[24];
- break;
- case 'z':
- var9 = var9 + var8[25];
- }
- }
-
- if (var7) {
- this.username[var2] = var9.substring(0, var3);
- this.password[var2] = var9.substring(var3, var3 + var4);
- this.urls[var2] = var9.substring(var3 + var4, var3 + var4 + var5);
- this.frames[var2] = var9.substring(var3 + var4 + var5, var9.length());
- } else {
- this.linkURL = var9;
- }
- }
- }
-